[发明专利]基于区块链的多机器人协作多目标点负载均衡搜索方法及系统有效
申请号: | 202010213359.2 | 申请日: | 2020-03-24 |
公开(公告)号: | CN111475287B | 公开(公告)日: | 2023-05-02 |
发明(设计)人: | 陈建海;陆天驰;沈睿;何钦铭;纪守领 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06Q20/06 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 郑海峰 |
地址: | 310058 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 区块 机器人 协作 多目标 负载 均衡 搜索 方法 系统 | ||
1.一种基于区块链的多机器人协作多目标点负载均衡搜索方法,其特征在于,包括如下步骤:
(1)构建基于多机器人点对点网络的私有区块链,所有机器人进行私有链状态的初始化,所有机器人获取周围的地图信息,并将自身的私有地图信息传递给所有其他机器人;
(2)机器人收到来自别的机器人的地图信息后进行拜占庭共识,将完成共识的地图信息打包进入下一区块并上链;
(3)负载均衡任务分配:各个机器人根据负载参数、搜索重心以及与目标点距离分配各个目标点;
所述负载均衡任务分配包括如下步骤:
每一个机器人在区块中储存当前已被分配给自己的目标点数量即负载参数,以及搜索重心的位置,初始的目标点数量为0,搜索重心位置为机器人初始位置;
设某一个机器人当前的负载参数为λ,当前搜索重心位置为α,某一目标点的位置为β,则比较每一个机器人到目标点的相对距离D:
将该目标点分配给相对距离D最小的那个机器人;
完成目标点分配后,更新负载参数的值以及搜索重心的位置;并将更新完的负载参数和搜索重心位置加入下一个区块;
(4)在完成了所有目标点分配之后,每一个机器人根据自身所分配到的目标点的位置执行搜索算法,完成对分配的目标点的搜索。
2.根据权利要求1所述的基于区块链的多机器人协作多目标点负载均衡搜索方法,其特征在于所述步骤(1)中,为每一个机器人节点分配公钥和私钥,并且每一个机器人节点负责维护自己的私有链。
3.根据权利要求1所述的基于区块链的多机器人协作多目标点负载均衡搜索方法,其特征在于所述步骤(1)中,机器人通过自身的传感器或摄像机获取周围的地图信息,并通过区块链点对点消息队列将自身的私有地图传递给所有其他机器人。
4.根据权利要求1所述的基于区块链的多机器人协作多目标点负载均衡搜索方法,其特征在于所述拜占庭共识包括如下步骤:
某一个机器人向全网广播自己的信息,每一个机器人维护一个消息队列用于接收从所有其他机器人发来的信息;
若某一个机器人收到的所有来自其他机器人的区块中和自己的区块内容相同的区块占了最大比重,则将该完成共识的内容打包进入自己的区块链;
若收到的区块中和自己相同的区块没有占到最大比重,则将自己的区块信息修改为和占了最大比重的区块的信息相同;
若有出现了比重相同的情况,则领导节点进行仲裁,每一个节点都将领导节点发布的区块作为自己的下一个区块打包入链。
5.根据权利要求4所述的基于区块链的多机器人协作多目标点负载均衡搜索方法,其特征在于,若在某一轮共识中领导节点发布的内容和占最大比重的区块的内容不符,则认为领导节点出现了问题,此时重新随机选举领导节点,并且当前领导节点的错误信息和下一个领导节点的信息都会被打包进入下一个区块的相应字段中。
6.根据权利要求4所述的基于区块链的多机器人协作多目标点负载均衡搜索方法,其特征在于,在每一轮拜占庭共识中,所有节点都对自己区块和收到的其他区块内的各项信息进行核对,若核对存在错误,分辨出信息错误的机器人。
7.根据权利要求4所述的基于区块链的多机器人协作多目标点负载均衡搜索方法,其特征在于,每一个机器人会根据当前已经完成了共识的信息进行搜索路径的规划,同时每一个机器人也保存着其他机器人的信息。
8.根据权利要求1所述的基于区块链的多机器人协作多目标点负载均衡搜索方法,其特征在于,将所有的已分配给某一个机器人的目标点位置连接起来构成一个图,这一个图的重心就是这一个机器人的搜索重心。
9.一种基于区块链的多机器人协作多目标点负载均衡搜索系统,其特征在于,包括:
多机器人节点,每个机器人均作为一个独立的搜索节点,根据分配到的搜索任务进行搜索,并维护自己的私有链;
控制区块链模块,构建基于多机器人点对点网络的私有区块链;将所有的地图搜索信息、任务分配信息以及领导节点变更信息都记录在区块链中;
PBFT共识机制模块,在机器人收到所有来自别的机器人的地图信息后,进行实用拜占庭共识;
负载均衡搜索模块,根据目标距离、机器人的负载参数和搜索重心,对目标任务点进行负载均衡任务分配;
所述负载均衡任务分配包括如下步骤:
每一个机器人在区块中储存当前已被分配给自己的目标点数量即负载参数,以及搜索重心的位置,初始的目标点数量为0,搜索重心位置为机器人初始位置;
设某一个机器人当前的负载参数为λ,当前搜索重心位置为α,某一目标点的位置为β,则比较每一个机器人到目标点的相对距离D:
将该目标点分配给相对距离D最小的那个机器人;
完成目标点分配后,更新负载参数的值以及搜索重心的位置;并将更新完的负载参数和搜索重心位置加入下一个区块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010213359.2/1.html,转载请声明来源钻瓜专利网。