本发明涉及边缘计算技术领域,尤其是自组织移动边缘计算平台和方法。
背景技术:
随着物联网技术的发展,物联网节点越来越多,越来越密集,这些物联网节点通常由电池供电,因此它们的计算能力往往有限,而且由于受到电池寿命的限制,这些物联网节点并不适合单独承担较为复杂的基于机器学习模型的人工智能计算任务,例如基于人工神经网络的人工智能环境监测模型的计算任务。因此,现有技术人员为了避免在物联网节点本地处理这些计算任务,常常将物联网节点采集的数据发送到云端进行处理,这样会带来大量通信延时,并且需要为物联网节点配备专门的网关或蜂窝数据通信模块,因而提高了硬件成本,同时物联网节点的计算能力没有得到充分利用。
技术实现要素:
本发明的目的在于提供一种自组织移动边缘计算平台和方法,充分利用物联网节点的算力,在边缘端完成人工智能计算任务。
为了解决以上提出的问题,本发明采用的一种技术方案为:一种自组织移动边缘计算平台和方法,包括区块链网络,所述区块链网络包括多个经由自组织网络通信的多个物联网节点;其中所述物联网节点包括:
存储模块,包括至少一个人工神经网络模型和区块链区块;
计算模块,用于完成人工神经网络模型的至少一部分计算任务获得计算结果;
资源请求模块,用于根据所述人工神经网络模型向所述自组织网络的其他物联网节点广播请求包,所述请求包包含关于人工神经网络模型的计算需求信息,并接收其他物联网节点发送的响应于所述请求包的答复包,所述答复包包括发送答复包的物联网节点的节点信息,所述节点信息包括节点算力信息和报价信息;
任务分配模块,根据答复包中的节点信息和路径信息产生人工神经网络模型的计算任务的关联信息计算任务的关联信息,所述计算任务的关联信息计算任务的关联信息包括计算任务信息、相应的物联网节点信息和下一物联网节点信息;
智能合约模块,用于根据所述计算任务的关联信息计算任务的关联信息和节点信息与对应的物联网节点签订区块链网络上的智能合约,智能合约包括分配信息和计算任务的代币报酬信息。
进一步地,所述物联网节点还包括上传模块,用于向区块链网络发送计算结果。
进一步地,所述区块链网络收到来自物联网节点的计算结果以后触发智能合约,根据代币报酬信息向上传计算结果的物联网节点发放代币。
本发明采用的另一种技术方案为:一种自组织移动边缘计算方法,用于上述任一种自组织移动边缘计算平台,所述方法包括:
根据一个人工神经网络模型向所述自组织网络的其他物联网节点广播请求包,所述请求包包含关于人工神经网络模型的计算需求信息;
接收其他物联网节点发送的响应于所述请求包的答复包,所述答复包包括发送答复包的物联网节点的节点信息,所述节点信息包括节点算力信息和报价信息;
根据答复包中的节点信息和路径信息产生人工神经网络模型的计算任务的关联信息,所述计算任务的关联信息包括计算任务信息、相应的物联网节点信息和下一物联网节点信息;
根据所述计算任务的关联信息和节点信息与对应的物联网节点签订区块链网络上的智能合约,智能合约包括分配信息和计算任务的代币报酬信息。
进一步的,所述方法还包括:接收来自物联网节点的计算结果,并触发智能合约,根据代币报酬信息向上传计算结果的物联网节点发放代币。
进一步地,所述根据答复包中的节点信息和路径信息产生人工神经网络模型的计算任务的关联信息,包括:
根据答复包建立物联网节点之间的路由表;
根据路由表创建物联网节点与人工神经网络模型的计算任务的关联信息。
进一步地,所述方法还包括,利用蚁群算法对物联网节点与人工神经网络模型的计算任务的关联信息进行优化的步骤。
与现有技术相比,本发明的有益效果在于:本发明根据一个人工神经网络模型向所述自组织网络的其他物联网节点广播请求包,并接收其他物联网节点发送的响应于所述请求包的答复包,所述答复包包括发送答复包的物联网节点的节点信息,根据答复包中的节点信息和路径信息产生人工神经网络模型的计算任务的关联信息,根据所述计算任务的关联信息和节点信息与对应的物联网节点签订区块链网络上的智能合约,由此可以充分利用物联网节点的算力,提高了人工智能计算任务的处理速度,避免了在云端完成人工智能计算模型的计算任务的各种弊端。当物联网节点完成并上传相应的计算结果时,触发智能合约,得到相应的代币报酬,由此可以鼓励物联网节点加入计算平台,有利于平台的推广。
附图说明
图1是本发明实施例提供的一种自组织移动边缘计算平台的结构示意图;
图2是图1中的物联网节点的结构示意图;
图3是本发明实施例提供的一种自组织移动边缘计算方法的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
以下结合具体实施例对本发明的实现进行详细描述:
同时参考图1-2,自组织移动边缘计算平台包括区块链网络,所述区块链网络包括多个经由自组织网络通信的多个物联网节点;其中所述物联网节点包括:存储模块,包括至少一个人工神经网络模型和区块链区块;计算模块,用于完成人工神经网络模型的至少一部分计算任务获得计算结果;资源请求模块,用于根据所述人工神经网络模型向所述自组织网络的其他物联网节点广播请求包,所述请求包包含关于人工神经网络模型的计算需求信息,并接收其他物联网节点发送的响应于所述请求包的答复包,所述答复包包括发送答复包的物联网节点的节点信息,所述节点信息包括节点算力信息和报价信息;任务分配模块,根据答复包中的节点信息和路径信息产生人工神经网络模型的计算任务的关联信息,所述计算任务的关联信息包括计算任务信息、相应的物联网节点信息和下一物联网节点信息;智能合约模块,用于根据所述计算任务的关联信息和节点信息与对应的物联网节点签订区块链网络上的智能合约,智能合约包括分配信息和计算任务的代币报酬信息。
具体来说,在本实施例中,人工神经网络模型可以为基于人工神经网络的环境监测模型,通过物联网节点采集到的监测数据识别环境状态,例如火灾、天气等等。不同人工神经网络模型需要的监测数据不尽相同。例如火灾监测模型中的输入监测数据常常包括温度、可燃气体浓度、红外线强度等数据,当物联网节点采集到的温度监测数据超过正常值时,可以选择火灾监测模型作为即将处理的人工神经网络模型,根据人工神经网络模型和监测数据计算识别环境状态即计算任务。人工神经网络模型的计算任务可以根据神经元划分为若干个子任务,这些子任务可以分配给不同的物联网节点进行计算。
在一些实施例中,所述物联网节点还包括上传模块,用于向区块链网络发送计算任务的计算结果。具体来说,所述上传模块通过p2p连接将计算结果发送到区块链网络中的其他节点。
在一些实施例中,所述区块链网络收到来自物联网节点的计算结果以后触发智能合约,根据代币报酬信息向上传计算结果的物联网节点发放代币。从而使得完成计算任务的物联网节点获得代币报酬。
本实施例根据所述人工神经网络模型向所述自组织网络的其他物联网节点广播请求包,并接收其他物联网节点发送的响应于所述请求包的答复包,所述答复包包括发送答复包的物联网节点的节点信息,根据答复包中的节点信息和路径信息产生人工神经网络模型的计算任务的关联信息,所述计算任务的关联信息包括计算任务信息、相应的物联网节点信息和下一物联网节点信息,根据所述计算任务的关联信息和节点信息与对应的物联网节点签订区块链网络上的智能合约,由此可以充分利用物联网节点的算力,提高了人工智能计算任务的处理速度,避免了在云端完成人工智能计算模型的计算任务的各种弊端。当物联网节点完成并上传相应的计算结果时,触发智能合约,向相应物联网发放相应的代币报酬,由此可以鼓励物联网节点加入计算平台,有利于平台的推广。
图3是本发明实施例提供的一种自组织移动边缘计算方法的流程图。如图3所示,自组织移动边缘计算方法,用于上述任一种自组织移动边缘计算平台,所述方法包括:
s1、根据一个人工神经网络模型向所述自组织网络的其他物联网节点广播请求包,所述请求包包含关于人工神经网络模型的计算需求信息;
s2、接收其他物联网节点发送的响应于所述请求包的答复包,所述答复包包括发送答复包的物联网节点的节点信息,所述节点信息包括节点算力信息和报价信息;
s3、根据答复包中的节点信息和路径信息产生人工神经网络模型的计算任务的关联信息,所述计算任务的关联信息包括计算任务信息、相应的物联网节点信息和下一物联网节点信息;
s4、根据所述计算任务的关联信息和节点信息与对应的物联网节点签订区块链网络上的智能合约,智能合约包括分配信息和计算任务的代币报酬信息。
具体来说,在本实施例中,人工神经网络模型可以为基于人工神经网络的环境监测模型,通过物联网节点采集到的监测数据识别环境状态,例如火灾、天气等等。不同人工神经网络模型需要的监测数据不尽相同。例如火灾监测模型中的输入监测数据常常包括温度、可燃气体浓度、红外线强度等数据,当物联网节点采集到的温度监测数据超过正常值时,可以选择火灾监测模型作为即将处理的人工神经网络模型,根据人工神经网络模型和监测数据计算识别环境状态即人工智能计算任务。
在一些实施例中,所述方法还包括:
s5、接收来自物联网节点的计算结果,并触发智能合约,根据代币报酬信息向上传计算结果的物联网节点发放代币。
在一些实施例中,所述根据答复包中的节点信息和路径信息产生人工神经网络模型的计算任务的关联信息,包括:
根据答复包建立物联网节点之间的路由表;
根据路由表创建物联网节点与人工神经网络模型的计算任务的关联信息。
在本实施例中,所述根据答复包建立物联网节点之间的路由表,包括:根据答复包中的节点信息和人工神经网络模型将对应的物联网节点指定为与人工神经网络模型的输入神经元对应的输入节点。例如人工神经网络模型是火灾监测模型,则可以将温度传感器、湿度传感器、有毒气体传感器、红外线传感器等物联网节点指定为输入节点。每个输入节点与人工神经网络模型的输入神经元对应一一对应。可以由输入节点完成对应的输入神经元的计算任务。
在本实施例中,所述根据答复包建立物联网节点之间的路由表,包括:根据路径信息和人工神经网络模型讲对应的物联网节点指定为与人工神经网络模型的隐藏神经元对应的中间节点。具体的,可以根据路径信息中物联网节点之间的连接路由,选择与输入节点通信的其他物联网节点作为中间节点,并记录中间节点和输入节点的连接路由。执行计算任务的物联网节点依据连接路由,将计算结果传输给执行下一层神经元的计算任务的物联网节点。在一些实施例中,所述物联网节点在接收到的来自其他物联网节点的答复包中加入自身的标识,以形成路径信息。
在本实施例中,所述根据答复包建立物联网节点之间的路由表,包括:根据路径信息和人工神经网络模型讲对应的物联网节点指定为与人工神经网络模型的输出神经元对应的输出节点,根据路径信息确定输入节点、输出节点和中间节点之间的连接路由以形成路由表。具体的,可以根据路径信息中物联网节点之间的连接路由,选择与中间节点通信的其他物联网节点作为输出节点,并记录中间节点与输出节点之间的连接路由。从而,中间节点、输入节点、输出节点之间的连接路由形成路由表,中间节点、输入节点、输出节点根据路由表将计算中间结果转发到下一个节点进行计算。
在本实施例中,根据路由表创建物联网节点与人工神经网络模型的计算任务的关联信息,具体的可以将人工神经网络模型每个神经元的计算作为一个计算任务,根据路由表创建物联网节点与人工神经网络模型的计算任务的关联信息即建立物联网节点与神经元的计算任务的对应关系。物联网节点根据对应关系运行相应的函数完成分配的计算任务。
在一些实施例中,所述方法还包括,利用蚁群算法对物联网节点与人工神经网络模型的计算任务的关联信息进行优化的步骤。
在本实施例中,所述方法还包括利用蚁群算法对物联网节点与人工神经网络模型的计算任务的关联信息进行优化的步骤。具体的,首先,对物联网节点与人工神经网络模型的计算任务的关联信息进行建模,将问题转化为,求一种最优的任务分配策略,能够将人工神经网络模型分解为n个计算任务,并将这n个计算任务按照某一种策略分配给m个处理能力不同的物联网节点,并且n个任务总的任务处理时间最短。将计算任务的完成时间作为衡量分配策略优良的指标。每一种任务分配策略都是这个问题的一个可行解。那么具有最小完成时间的分配策略就是这个问题的最优解。将神经元的计算作为一个独立的计算任务分配给一个物联网节点。蚁群算法一共要进行多次迭代,每次迭代中,所有蚂蚁都需要按照某种策略完成所有任务的分配,例如可以将计算任务随机分配给某一物联网节点,或按信息素浓度分配,也就是将任务分配给信息素浓度最高的物联网节点处理。每次所有蚂蚁完成任务的分配称为一次迭代,每完成一次迭代后,计算并记录所有蚂蚁的任务处理时间,并更新信息素矩阵。每次迭代完成以后都会挑选出一个当前最优方案,并提升该方案的信息素,经过多次迭代,就可以找到全局最优解,即使得任务处理时间最短的计算任务分配方案,从而提高人工智能计算任务的执行效率。
综上所述,本发明根据一个人工神经网络模型向所述自组织网络的其他物联网节点广播请求包,并接收其他物联网节点发送的响应于所述请求包的答复包,所述答复包包括发送答复包的物联网节点的节点信息,根据答复包中的节点信息和路径信息产生人工神经网络模型的计算任务的关联信息计算任务的关联信息,根据所述计算任务的关联信息计算任务的关联信息和节点信息与对应的物联网节点签订区块链网络上的智能合约,由此可以充分利用物联网节点的算力,提高了人工智能计算任务的处理速度,避免了在云端完成人工智能计算模型的计算任务的各种弊端。当物联网节点完成并上传相应的计算结果时,触发智能合约,得到相应的代币报酬,由此可以鼓励物联网节点加入计算平台,有利于平台的推广。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
1.一种自组织移动边缘计算平台,其特征在于,包括区块链网络,所述区块链网络包括多个经由自组织网络通信的多个物联网节点;其中所述物联网节点包括:
存储模块,包括至少一个人工神经网络模型和区块链区块;
计算模块,用于完成人工神经网络模型的至少一部分计算任务获得计算结果;
资源请求模块,用于根据所述人工神经网络模型向所述自组织网络的其他物联网节点广播请求包,所述请求包包含关于人工神经网络模型的计算需求信息,并接收其他物联网节点发送的响应于所述请求包的答复包,所述答复包包括发送答复包的物联网节点的节点信息,所述节点信息包括节点算力信息和报价信息;
任务分配模块,根据答复包中的节点信息和路径信息产生人工神经网络模型的计算任务的关联信息计算任务的关联信息,所述计算任务的关联信息计算任务的关联信息包括计算任务信息、相应的物联网节点信息和下一物联网节点信息;
智能合约模块,用于根据所述计算任务的关联信息计算任务的关联信息和节点信息与对应的物联网节点签订区块链网络上的智能合约,智能合约包括分配信息和计算任务的代币报酬信息。
2.根据权利要求1所述的自组织移动边缘计算平台,其特征在于,所述物联网节点还包括上传模块,用于向区块链网络发送计算结果。
3.根据权利要求1所述的自组织移动边缘计算平台,其特征在于,所述区块链网络收到来自物联网节点的计算结果以后触发智能合约,根据代币报酬信息向上传计算结果的物联网节点发放代币。
4.一种自组织移动边缘计算方法,其特征在于,包括:
根据一个人工神经网络模型向所述自组织网络的其他物联网节点广播请求包,所述请求包包含关于人工神经网络模型的计算需求信息;
接收其他物联网节点发送的响应于所述请求包的答复包,所述答复包包括发送答复包的物联网节点的节点信息,所述节点信息包括节点算力信息和报价信息;
根据答复包中的节点信息和路径信息产生人工神经网络模型的计算任务的关联信息计算任务的关联信息,所述计算任务的关联信息计算任务的关联信息包括计算任务信息、相应的物联网节点信息和下一物联网节点信息;
根据所述计算任务的关联信息计算任务的关联信息和节点信息与对应的物联网节点签订区块链网络上的智能合约,智能合约包括分配信息和计算任务的代币报酬信息。
5.根据权利要求4所述的自组织移动边缘计算方法,其特征在于,还包括:接收来自物联网节点的计算结果,并触发智能合约,根据代币报酬信息向上传计算结果的物联网节点发放代币。
6.根据权利要求5所述的自组织移动边缘计算方法,其特征在于,所述根据答复包中的节点信息和路径信息产生人工神经网络模型的计算任务的关联信息计算任务的关联信息,包括:
根据答复包建立物联网节点之间的路由表;
根据路由表创建物联网节点与人工神经网络模型的计算任务的关联信息。
7.根据权利要求5所述的自组织移动边缘计算方法,其特征在于,还包括利用蚁群算法对物联网节点与人工神经网络模型的计算任务的关联信息计算任务的关联信息进行优化的步骤。
技术总结