CN109901584B - 一种基于自组织的机器人编队方法、可读存储介质及机器人 - Google Patents
一种基于自组织的机器人编队方法、可读存储介质及机器人 Download PDFInfo
- Publication number
- CN109901584B CN109901584B CN201910218296.7A CN201910218296A CN109901584B CN 109901584 B CN109901584 B CN 109901584B CN 201910218296 A CN201910218296 A CN 201910218296A CN 109901584 B CN109901584 B CN 109901584B
- Authority
- CN
- China
- Prior art keywords
- robot
- robots
- head
- self
- global
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Abstract
本发明提出一种基于自组织的多机器人编队方法,利用梯度通信构建整个通信网络,之后,利用初始协作定位,所有机器人运动到区域的左上角,再通过一些简单的聚集规则,使机器人以方阵的队形等间距的集中在左上角,最后,依次经过向右、向下两次分散,所有机器人平均分布在整个区域,实现设定的编队队形。
Description
技术领域
本发明属于自动控制技术领域,涉及一种基于自组织的机器人编队方法。
背景技术
在大自然界中,蚁群、蜂群、鱼群、鸟群等能够自组织地形成一些复杂的形状,这种行为被称为群集或者蜂拥。蚁群在搬运食物中,个体之间总是保持刚性的队形,以便于搬运;鱼群总是围成一个圈游走,能够更容易的躲避天敌或捕食。这种群体行为,是通过个体间的局部感知作用,然后个体遵循简单的规则进行相互合作进而使整体呈现出一致的协调行为。受这种生物群体的启发,Reynolds对多智能体系统(包括多机器人系统)提出了三种启发式规则,即分离、集合、速度匹配。满足Reynolds模型的三条规则后,个体之间将会保持期望距离,个体的速度一致,并且个体运动期间不会发生碰撞。因此,将群体的自组织行为映射到多机器人系统中,也是解决多机器人编队控制问题的一种可行方式。
发明内容
本发明的目的在于提供一种自组织的机器人编队方法,通过局部的交互协作形成期望的编队队形。
本发明提供的基于自组织的机器人编队方法,包括,指定其中一个机器人为全局头领机器人;除全局头领机器人外,计算其余机器人距离全局头领机器人的离散梯度距离,即梯度值,各机器人从其邻居中选择一个邻居作为局部头领,该局部头领为各机器人的全部邻居中梯度值最小的邻居,所述邻居是指该机器人的通信范围内的其他机器人;
其中,li、θi分别表示机器人i的局部头领的位置、机器人与局部头领的相对夹角;dini为大于0的常数,表示预先设定的机器人与局部头领之间需要保持的距离;
除全局头领机器人自身外,其余机器人向全局头领机器人聚集,直至所有机器人排列形成的队形的形状与最终的编队的形状相同;
除全局头领机器人外,其余机器人向外分散移动,直至最外侧的机器人到达指定位置,最外侧以外的其他机器人移动到相邻邻居的中点处。
优选地,梯度值的计算方式为,全局头领机器人的梯度值始终为A(A≥0),除全局头领机器人外,各机器人在其所有邻居中选择具有最小梯度值的邻居,在该邻居的梯度值的基础上加Y(Y>0)。
优选地,当一个机器人的所有邻居中,存在多个梯度值最小的邻居,选择距离该机器人最近的邻居作为局部头领。
优选地,当多个机器人的目标位置相同时,距离目标位置最近的机器人移动至目标位置,其余机器人以该机器人为局部头领,重新计算自己的目标位置。
优选地,沿朝全局头领机器人聚集的方向,判断机器人与其周围的机器人之间的距离是否大于dini,如果大于dini,则该机器人沿朝全局头领机器人聚集的方向移动,直至该机器人与其周围的机器人之间的距离等于dini。
本发明还提供一种可读存储介质,所述可读存储介质中存储有程序,该程序实现权利要求本发明所述的基于自组织的机器人编队方法。
本发明还提供一种机器人,包括处理器及存储器,所述存储器中存储有程序,所述处理器执行程序时实现本发明所述的基于自组织的机器人编队方法。
本发明提供的基于自组织的机器人编队方法,每个机器人一直与邻居保持通信,观察每个邻居的状态,动态更新个人的梯度值和目标位置。本方法中共有四种自组织行为,包括梯度通信、定位、聚集与分散,当机器人的邻居们完成当前的行为时,便进行下一个行为操作,直至实现设定的编队队形。
附图说明
图1a为机器人编队初始分布示意图;
图1b为机器人编队最终分布示意图;
图2-1为机器人i通信范围示意图;
图2-2为梯度通信示意图;
图2-3为机器人i定位示意图;
图2-4为机器人竞争关系示意图;
图2-5为多机器人协作定位示意图;
图2-6a为机器人聚集时的局部调整示意图;
图2-6b为机器人聚集结果示意图;
图2-7a为机器人向右分散示意图;
图2-7b为机器人向下分散示意图。
具体实施方式
本发明提供一种基于自组织的编队方法,大量初始分散的机器人仅通过局部的交互协作便能形成期望的队形。这个算法是由四个简单的行为组成:1)梯度通信,通过梯度通信构建一个通信网络,机器人能够传递信息和选择各自的局部头领;2)定位,每个机器人根据各自的局部头领位置信息动态更新自身的位置;3)聚集,所有的机器人聚集在一起;4)分散,使机器人均匀分布在整个目标区域内。显而易见,多机器人的编队队形与预定义的区域形状有关,如过预定义的目标区域是正方形,则多机器人最终的队形将是方阵队形。本实施例以正方形为例,其它队形的生成与正方形队形相似。图1a表示的是用64个点表示的机器人初始分散在正方形区域内。图1b表示的是机器人均匀分布在整个区域。
本发明的目标是组织一群分散的机器人平均分布在一个期望区域内,进而生成与区域形状一致目标队形。为实现这个目标,本发明设计了由四种简单规则组成的自组织算法。首先,指定一个机器人作为全局头领机器人,控制列队的形成方向。为便于传送信息,在机器人间利用梯度通信构建了一个通信网络拓扑图。然后,除全局头领机器人外,其它机器人均需要在邻居中选择一个机器人作为它的局部头领。在整个运动中,机器人需要与各自的局部头领,保持期望的距离与角度。并且,随着邻居信息的变化,机器人动态更新自己的梯度值与局部头领。下面,本发明将对算法做具体的描述。
1、梯度通信
在向量微积分中,梯度是一个向量,表示的是在某点处沿着该方向(梯度方向)变化最快。将每个机器人在它的通信范围内的其它机器人定义为该机器人的邻居。如图2-1所示,机器人i在通信范围内有三个邻居,但机器人j不是它的邻居,因为他们之间的距离d大于通信半径r。在t时刻,机器人i的邻居可以表示为:
Ni(t)={j|||xi-xj||<r,j≠i} (2.1)
其中,所有机器人的通信半径都为r。
单个机器人发出一个固定值为0的信息,以表明它是梯度的源头,称此机器人为全局头领机器人。在方形区域内,本发明指定最接近区域左上角的机器人为全局头领机器人,这个全局头领机器人能够将梯度值为0的信息传送到它的邻居。然后,当它的邻居接收到这个梯度信息后,邻居的梯度值将会设置为1,然后该邻居将会向它自己的邻居传送它的梯度信息,该邻居的邻居的梯度值将会选择在它所有邻居中最小梯度值的基础上加1。以此类推,直到每个机器人都有各自的梯度值。如图2-2,表示随机初始分散的25个机器人的梯度值。全局头领机器人的梯度值始终保持为0。
通过梯度通信,每个机器人知道自身距全局头领机器人的离散梯度距离。除全局头领机器人外,每个机器人需要选择各自的一个局部头领。机器人能够测量它与邻居的相对距离与角度。每个机器人的局部头领为它所有邻居中,梯度值最小的机器人。如果存在多个梯度值最小的机器人,便选择距离它最小的机器人作为它的局部头领。在图2-2中,用点表示机器人,机器人与邻居的通信用线表示,包括有箭头的线和无箭头的线。从某个点到另一点的有箭头的线,根据箭头指向,箭头尾部的机器人选择箭头头部的机器人作为他的局部头领,例如,右下角处的两个标记为4的点,4表示这两个点的梯度值,最靠近右下角的点选择其左上方的点作为其局部头领。
2、多机器人协作定位
每个机器人能够检测它与邻居的相对距离与角度。除全局头领机器人外,每个机器人都有各自的一个局部头领。机器人将其与局部头领的相对距离与角度作为反馈去确定它的目标位置。xi、li、θi、分别表示机器人i的位置、机器人i的局部头领的位置、机器人i与局部头领的相对夹角、以及机器人i的目标位置,如图2-3所示。因此目标位置为:
式中dini表示机器人与局部头领之间初始给定的距离。需要说明的是,每个机器人都知道区域内机器人的总数n、区域信息、编队信息。区域信息主要指边界的位置信息。编队信息主要包括最终队形的行row与列col。
如图2-5所示,一旦全局头领机器人开始运动,其它机器人也将跟随各自的局部头领运动。机器人一直运动直到到达期望的目标位置。在运动过程中,可能会发生多个机器人竞争同一个目标位置。如图2-4所示,机器人p和机器人g的期望目标位置都是n。机器人p运动中检测到机器人g距目标位置更近,它将重新选择机器人g作为它的局部头领,利用公式2.2重新计算目标位置。机器人停止的条件有两个:第一,是即将离开所定义的区域,它将停在区域的边界位置上;第二,它到达了目标位置,并且它的局部头领也处于静止状态。
在运动过程中,机器人不断更新它的局部头领和梯度值。为避免机器人之间发生碰撞,本发明定义一个最小距离dmin,如果机器人间的距离d小于最小距离dmin,机器人将做出一些调整,例如梯度值小的向后退一步。当机器人与它的邻居们都到达了期望的目标位置后,将会保持静止状态,直至下一个动作的发生。
3、多机器人聚集
经过多机器人的协作定位后,由于机器人的局部头领方位可能位于左边或右边,便会出现如图2-5的松散队形。为解决以上的问题,本发明定义一系列规则,使机器人先后经过上、左、下、右移动后,所有机器人最终集中在左上角。具体的聚集运动规则有:
(1)向上运动。产生的原因是,部分机器人的和它的初始定位已经完成,但是它的局部头领是位于它左侧,如图2-5的机器人m所示,机器人m向上运动从2a的位置一直走到距前面机器人dini处的2b位置。
(2)向左运动。产生的原因是,部分机器人前后距离已经保持了dini,但它与左边机器人的间距超过dini,例如图2-5的机器人n,机器人n经过向上运动后,从3a位置走到3b位置后,进行了向左运动,最终走到3c位置。
(3)向下运动。经历过向上、向左运动后,所有的机器人集中在了区域左上角的位置,如图2-6a所示。虽然机器人前后左右之间的间距相等,但是并不是本发明想要生成的正方形形状。因为每个机器人都知道区域的位置坐标信息,当机器人距区域左边界的距离大于dx将做向下运动。
dx=dini(col-1) (2.3)
其中,col代表机器人编队最终队形的总列数。例如图2-6a机器人i从3a1位置一边向下运动,一边检测与左边邻居的间距,当间距大于dini时,便向左运动,最终走到3b1位置。
(4)向右运动。与向下运动类似。当机器人距区域上边界的距离大于dy将做向右运动。
dy=dini(row-1) (2.4)
其中,row代表机器人编队最终队形的总行数。例如图2-6a机器人j从3a2位置一边向右运动,一边感知与上方邻居的间距,当间距大于dini时,便向上运动,最终走到3b2位置。
经过局部机器人调整后,所有的机器人等间距的集中在区域的左上角,如图2-6b所示。
4、分散
本发明最终的目标是使所有机器人平均分布在整个区域内。经过以上运动调整后,所有的机器人等间距的集中在区域的左上角位置。为实现编队目标,机器人需要先后执行向右、向下分散。具体分散运动如下:
(1)向右分散。最右列的机器人先向右运动,其余机器人运动到左右邻居的中点处,左边界上的机器人保持不动,直至最右列机器人即将走出区域,即到达最右边的边界。如图2-7a所示。
(2)向下分散。机器人本身和它的邻居们都处于稳定状态时,与向右分散类似,不同的是最后一行机器人向下运动,其余机器人朝着上下邻居的中点运动,在此过程中,上边界的机器人保持不动,直至最后一行机器人即将走出区域,即到达最下边的边界。如图2-7b所示。
在自组织算法中,每个机器人一直与邻居保持通信,观察每个邻居的状态,动态更新个人的梯度值和目标位置。正如前面所叙述的,本算法中共有四种自组织行为,包括梯度通信、定位、聚集与分散。当机器人的邻居们完成当前的行为时,便进行下一个行为操作。
本发明所述的机器人既包括在地面、轨道等上行走的机器人,也包括飞行机器人,如无人机等。本实施例所提到的上、下、左、右的运动顺序,仅针对本实施例而言,也可以采用其他顺序,例如,机器人首先聚集于右下角,再进行相应的调整。
Claims (7)
1.一种基于自组织的机器人编队方法,其特征在于:包括,指定其中一个机器人为全局头领机器人;除全局头领机器人外,计算其余机器人距离全局头领机器人的离散梯度距离,即梯度值,各机器人从其邻居中选择一个邻居作为局部头领,该局部头领为各机器人的全部邻居中梯度值最小的邻居,所述邻居是指该机器人的通信范围内的其他机器人;
其中,li、θi分别表示机器人i的局部头领的位置、机器人与局部头领的相对夹角;dini为大于0的常数,表示预先设定的机器人与局部头领之间需要保持的距离;
除全局头领机器人外,其余机器人向全局头领机器人聚集,直至所有机器人排列形成的队形的形状与最终的编队的形状相同;
除全局头领机器人外,其余机器人向外分散移动,直至最外侧的机器人到达指定位置,最外侧以外的其他机器人移动到相邻邻居的中点处。
2.如权利要求1所述的基于自组织的机器人编队方法,其特征在于:梯度值的计算方式为,全局头领机器人的梯度值始终为A,A≥0,除全局头领机器人外,各机器人在其所有邻居中选择具有最小梯度值的邻居,在该邻居的梯度值的基础上加Y,Y>0。
3.如权利要求1所述的基于自组织的机器人编队方法,其特征在于:当一个机器人的所有邻居中,存在多个梯度值最小的邻居,选择距离该机器人最近的邻居作为局部头领。
4.如权利要求1所述的基于自组织的机器人编队方法,其特征在于:当多个机器人的目标位置相同时,距离目标位置最近的机器人移动至目标位置,其余机器人以该机器人为局部头领,重新计算自己的目标位置。
5.如权利要求1所述的基于自组织的机器人编队方法,其特征在于:沿朝全局头领机器人聚集的方向,判断机器人与其周围的机器人之间的距离是否大于dini,如果大于dini,则该机器人沿朝全局头领机器人聚集的方向移动,直至该机器人与其周围的机器人之间的距离等于dini。
6.一种可读存储介质,所述可读存储介质中存储有程序,该程序实现权利要求1-5任一权利要求所述的基于自组织的机器人编队方法。
7.一种机器人,包括处理器及存储器,所述存储器中存储有程序,所述处理器执行程序时实现权利要求1-5任一权利要求所述的基于自组织的机器人编队方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910218296.7A CN109901584B (zh) | 2019-03-21 | 2019-03-21 | 一种基于自组织的机器人编队方法、可读存储介质及机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910218296.7A CN109901584B (zh) | 2019-03-21 | 2019-03-21 | 一种基于自组织的机器人编队方法、可读存储介质及机器人 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109901584A CN109901584A (zh) | 2019-06-18 |
CN109901584B true CN109901584B (zh) | 2020-04-24 |
Family
ID=66953213
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910218296.7A Active CN109901584B (zh) | 2019-03-21 | 2019-03-21 | 一种基于自组织的机器人编队方法、可读存储介质及机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109901584B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101127657A (zh) * | 2007-07-16 | 2008-02-20 | 江南大学 | 自主移动传感器网络动态建模与控制技术 |
CN102331711A (zh) * | 2011-08-12 | 2012-01-25 | 江苏合成物联网科技有限公司 | 一种移动自主机器人的编队控制方法 |
CN103412564A (zh) * | 2013-07-26 | 2013-11-27 | 中国科学院计算技术研究所 | 一种无人系统分布式一致性编队控制方法及其系统 |
CN103901887A (zh) * | 2014-03-04 | 2014-07-02 | 重庆邮电大学 | 一种基于改进粒子群算法的多移动机器人编队控制方法 |
CN106155057A (zh) * | 2016-08-05 | 2016-11-23 | 中南大学 | 一种基于自组织行为的集群机器人图形组建方法 |
CN108830373A (zh) * | 2018-06-08 | 2018-11-16 | 武汉大学 | 仿欧椋鸟群集飞行的大规模智能群体自主协同的建模方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10310518B2 (en) * | 2015-09-09 | 2019-06-04 | Apium Inc. | Swarm autopilot |
CN109472064B (zh) * | 2018-10-22 | 2023-05-26 | 南京航空航天大学 | 一种用于无人设备集群控制的多体队形重构方法 |
CN109407680B (zh) * | 2018-12-28 | 2021-06-08 | 大连海事大学 | 无人船编队重构的分布式目标协同分配方法 |
-
2019
- 2019-03-21 CN CN201910218296.7A patent/CN109901584B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101127657A (zh) * | 2007-07-16 | 2008-02-20 | 江南大学 | 自主移动传感器网络动态建模与控制技术 |
CN102331711A (zh) * | 2011-08-12 | 2012-01-25 | 江苏合成物联网科技有限公司 | 一种移动自主机器人的编队控制方法 |
CN103412564A (zh) * | 2013-07-26 | 2013-11-27 | 中国科学院计算技术研究所 | 一种无人系统分布式一致性编队控制方法及其系统 |
CN103901887A (zh) * | 2014-03-04 | 2014-07-02 | 重庆邮电大学 | 一种基于改进粒子群算法的多移动机器人编队控制方法 |
CN106155057A (zh) * | 2016-08-05 | 2016-11-23 | 中南大学 | 一种基于自组织行为的集群机器人图形组建方法 |
CN108830373A (zh) * | 2018-06-08 | 2018-11-16 | 武汉大学 | 仿欧椋鸟群集飞行的大规模智能群体自主协同的建模方法 |
Non-Patent Citations (1)
Title |
---|
多机器人编队自修复算法设计与实现;居建军;《中国优秀硕士学位论文全文数据库》;20160715(第7期);第34-38页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109901584A (zh) | 2019-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109459026B (zh) | 一种多运动体协同全覆盖路径规划方法 | |
CN113159432A (zh) | 一种基于深度强化学习的多智能体路径规划方法 | |
CN114594794B (zh) | 一种考虑子系统执行能力的多机协同任务规划方法 | |
CN112469050B (zh) | 一种基于改进灰狼优化器的wsn三维覆盖增强方法 | |
Champion et al. | Underwater swarm robotics review | |
CN109901584B (zh) | 一种基于自组织的机器人编队方法、可读存储介质及机器人 | |
CN115248592A (zh) | 基于改进快速探索随机树的多机器人自主探索方法和系统 | |
CN108376282A (zh) | 一种模拟狼群行为的计算智能优化方法 | |
Sun et al. | Cooperative strategy for pursuit-evasion problem with collision avoidance | |
CN112369208B (zh) | 一种类球形果实的采摘顺序动态规划方法 | |
CN112000070B (zh) | 一种异构集群协同运动规划方法 | |
Yogeswaran et al. | Reinforcement learning in swarm-robotics for multi-agent foraging-task domain | |
CN111931384A (zh) | 基于触角模型的群体协同围捕方法和存储介质 | |
CN114200960A (zh) | 基于禁忌表改进麻雀算法的无人机集群搜索控制优化方法 | |
Abramov | Implementation of an Adapted Ant Algorithm in the Presence of Substitute and Complementary Resources. Modeling the Behavior of the Manufacturer | |
Almufti | Lion algorithm: Overview, modifications and applications | |
CN115019185A (zh) | 类脑连续学习协同围捕方法、系统及介质 | |
JP2016095754A (ja) | 行動制御システム、その方法及びプログラム | |
Xin et al. | Formation tracking and transformation control of nonholonomic AUVs based on improved SOM method | |
Ramezan Shirazi et al. | Morphogenetic self-organization of collective movement without directional sensing | |
CN114021914A (zh) | 一种无人机集群飞防调度方法及装置 | |
Rodrigues et al. | Beyond Onboard Sensors in Robotic Swarms-Local Collective Sensing through Situated Communication | |
Kim et al. | An experiment in rule-based crowd behavior for intelligent games | |
Leong | Multiobjective particle swarm optimization: Integration of dynamic population and multiple-swarm concepts and constraint handling | |
Duan et al. | Bio-inspired computation algorithms |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |