群集机器人系统由数量众多的自治机器人组成,其显著特点是个体能力有限,仅通过与周围邻居的局部自组织交互即可在宏观层面上涌现出群体智能,协调一致地完成复杂任务[1]。该系统以其成本低廉、灵活性好、可扩展性高、鲁棒性强等特点,已成为机器人领域新的研究方向,并逐步在未知环境的协同探测、灾难现场的快速救援以及无人战场的联合作战等方面得到了日益广泛的应用[2]。
从机器人群集形成和演化的角度来看,其运动行为包含组群(融合)和分群(分裂)2种基本形式[3]。其中,组群关注机器人个体的空间聚集和运动有序性,是群集运动的基础;而分群强调群集中个体运动行为的有序分化,具体表征为机器人群集在外部刺激下部分个体分裂而出形成独立子群的现象,如分群避障、分群追踪等,这对提高机器人群集的任务执行效率,增强其生存概率具有重要意义。
目前针对机器人群集行为的研究多从组群角度展开,且多以“分离/组队/聚合”规则为基本框架,不能同时表征群集中“一致”与“分歧”并存的特点,当群集中少数个体受到外部刺激偏离母群运动时,受组群作用的约束母群不能随之实施有效的分群运动。此外,由于机器人个体能力有限,对群集整体的分裂与融合运动缺乏明确的感知,仅能根据有限的局部信息决定自身运动行为,因此这种分群行为的实质是外部刺激下个体仅通过局部交互而在群体层面上涌现出的一种自组织分裂现象。在相同的外部刺激条件下,机器人群集是否具备分群能力,完全取决于其所采用的交互规则[4]。
近来,文献[4, 5]对群集系统的分群问题进行了初步的理论探讨,提出了一种基于邻域跟随的分群方法,实现了群集系统的自组织分群运动。在此基础上,从信息融合的角度出发,提出了一种基于信息耦合度的分群控制方法[6]。但受实验条件限制,作者仅给出了数字仿真结果。此外,文献[7]利用几何方法构建机器人个体交互规则,并通过对多个目标的跟踪实现了群集的自发分裂。文献[8]利用“巴西果效应(Brazil nut effect)”实现了3种不同尺寸机器人的分离运动。该方法的核心在于机器人结构大小的差异,因此不能对个体无差别的群集机器人系统的分群行为进行有效表征。
本文针对群集机器人的分群控制问题,以E-puck机器人群集系统为研究平台,提出了一种基于自组织结对行为的群集机器人分群方法。该方法引入结对行为实现刺激信息在群集中的定向传播,从而使得机器人在有限的感知信息下,不依赖于显式的目标选择或指派、协商等智能操作以及更高一级的中心控制机制,仅通过机器人间的局部交互作用,在外部刺激下能自发分裂成若干子群。同时,分裂出的子群能以编队的形式有序运动而不发生无组织的分裂现象。
1 E-puck机器人平台本文采用由E-puck机器人构成的群集机器人系统进行分群行为的研究,该机器人是洛桑联邦理工学院(cole polytechnique fédérale de Lausanne,EPFL)研发的一款小型机器人,如图 1a)所示。机器人直径7.5 cm,高5 cm,重200 g,采用步进电机双轮差分驱动,内置dsPIC30F6014A微处理器,并配备红外距离传感器、3D加速度传感器、摄像头和蓝牙通信系统[9]。
1.1 E-puck机器人建模对于图 1a)中的E-puck机器人,其几何模型可由图 1b)进行表示。机器人全局坐标系为XOY,自身坐标系为xoy,vL和vR分别为机器人左右轮速度,rw为轮子半径,两轮之间的距离为l,其运动学方程可由(1)式表示:
式中:(xi,yi)T为机器人i的位置,θi为其航向,vi和ωi分别为其线速度和角速度,在此作为控制输入。定义机器人i感知范围内所有个体为其邻居,即Ni={j:dij≤R,j≠i,j=1,2,…,Ni},其中Ni为机器人i的邻居数量,为两机器人之间的相对距离,R为机器人的感知半径。
1.2 E-puck机器人距离方位测量对周围邻居信息的有效感知与测量是实现机器人群集运动的基础。E-puck机器人通过距离方位板上安装的12对红外发射/接收模块实现对邻居距离和方位的测量,每个模块由一个红外发射二极管,一个红外调制接收器和一个红外光电二极管组成,以30°间隔均匀分布在距离方位板圆周上[10]。
E-puck机器人距离方位测量原理如图 2所示:发射端为信号发射源(即被量测机器人j上某一红外发射二极管),接收端k为机器人i上的第k个接收端(即机器人i上的第k个红外调制接收器)。在实际中选取信号最强的2个接收端接收到的信息进行方位和距离的解算。发射源方位可表示为[11]:
式中:ξ为发射源相对于机器人i正方向的方位角,Φmax1和Φmax2分别为接收信号最强的2个接收端的方向角,max1和max2分别为接收信号最强的2个接收端接收到的信号强度。
由于机器人仅能感知局部信息,个体间缺乏统一的参考坐标系,(2)式获取的方位信息并非两机器人间的相对航向。在此,以两机器人中心点连线为参考轴,采用图 3的方法对两机器人间的相对方位进行计算,图中:φi和φj分别为两机器人相对于参考轴的方位角,ξj=φj为机器人i测量到的机器人j信号发射源的方位。
根据上述关系,机器人j相对于机器人i的方位为[10]:
此外,根据图 2所示的几何关系,发射源到机器人中心的距离λmax可由(4)式解算:
式中:r是机器人半径,ρ为接收端到发射源的距离,由接收到的信号强度转化而来。
对max1和max2取均值,可得发射源到机器人中心的估计距离:
考虑机器人半径,两机器人中心距离为:
接收端在收到邻居机器人的信息后,距离方位板上的内置微处理器用上述方法独立完成距离方位的解算,并通过I2C总线传送给E-puck主控制器。
2 E-puck群集机器人分群控制方法分群运动的实质是群集在外部刺激下由于个体信息冲突而导致的一种运动行为分化现象[5]。研究表明:当群集中个体间信息冲突过大时,群集将会打破聚合状态,自发产生分裂行为[12]。本节从刺激信息在群集内自发传播的角度出发,研究群集机器人的分群控制方法。
2.1 刺激信息在机器人群集内的定向传播通常,群集系统在收到外部刺激时,个体运动状态的变化程度间接反映了其所受刺激信息的强度。同时,群集个体往往具有对周围邻居的特定运动行为更为敏感的特性。在此利用分群过程中个体对邻居运动方向变化较为敏感的特点,选取单位时间内机器人航向变化作为其所受外部刺激作用强度的指标:
式中:θtj 和θt-Δtj 分别为机器人j在当前时刻和前一时刻的航向,Δt为机器人测量时间间隔。
为实现外部刺激信息在群集内传播的最大化,在式(7)的基础上,引入结对行为对个体运动状态进行调节,即令机器人与其周围邻居中航向变化最大个体形成结对行为,从而实现外部刺激信息在群集内的定向传播。结对邻居li的选取规则为:
式中:c*是结对行为发生的阈值。当且仅当个体的应激反应到达一定程度时才发生结对现象,而当cj
综上可知,机器人通过与其邻域内最大航向变化的机器人形成临时结对行为可以实现对其运动行为的有效引导,使外部刺激信息以隐含的方式在群集内部定向传播,从而为群集机器人分群运动的实施奠定基础。
2.2 基于自组织结对行为的分群控制方法在上节所提出的结对行为的基础上,引入带冲突的外部刺激信息作为分群行为的触发条件,并结合传统的“分离/组队/聚合”规则,设计如下分群控制向量:
式中:hi为航向协调项,pi为位置协调项,di是结对项,si为分群触发项,α、β、γ、η分别为各项的权重系数,‖·‖为向量的范数操作。下面分别对各项进行具体说明:
1) hi使机器人i与其周围邻居的航向趋于一致:
2) pi用于调节机器人间的相互距离,使机器人聚集并避免发生碰撞,具体形式为:
式中:θj为机器人j相对于机器人i的航向,fij为机器人j施加在i上的作用力,具有短距排斥长距吸引功能
式中:kfij>0为作用力强度系数,r为机器人半径,σ为平衡距离调节参数,当dij=2σ+2r时,引力与斥力相平衡。特别的,当dij=2r时,fij(dij)→∞,该性质防止机器人间发生碰撞。
3) di通过结对行为对机器人的运动进行动态引导,使得机器人向着刺激信息最大的方向运动:
式中:ali是其邻域内应激反应强度最大个体li的运动控制向量,aic为其当前运动控制向量。
4) si是外部刺激信号,可视为机器人群集产生分群行为的触发项,包含使个体运动产生歧离的冲突信息:
式中:aei为外部刺激施加在机器人上的作用向量。受感知能力所限,通常只有位于群集边缘的机器人能直接感知外部刺激信息。在此引入gi表示机器人是否能感知到外部刺激信号,当gi=1时机器人能感知外部刺激信息并做出应激机动行为;反之,gi=0,机器人不能感知外部刺激信息,仅根据周围邻居行为对自身运动进行调节。
根据上面所设计的分群控制向量ai,机器人i的控制输入可写为:
式中:vmax为机器人最大线速度,“·”为向量点乘操作,kωi>0为增益系数。
对于E-puck机器人,其运动控制最终是通过左右轮的差分驱动实现的,其左右轮的转速可利用(15)式、(16)式通过以下方式计算:
基于上述分群控制算法,通过选取适当的权重系数,当分布在群集边缘的机器人感受到外部刺激而向不同方向机动运行时,可使得群集中的其余机器人能自发的形成促进刺激信息最大化传播的结对行为,从而实现对个体向外部刺激方向运动的有效引导,最终使群集涌现出自组织分裂现象。
3 实验验证为验证本文所提分群控制方法的可行性,利用10台E-puck机器人组成的群集机器人实验系统进行分群实验研究。
3.1 实验设置初始状态下,机器人随机分布在0.5×0.5 m2范围内,初始速度均为0,初始航向随机分布在[0,2π]内。控制参数选取为:α=2,β=5,γ=10,η=50,σ=0.01 m,kfij=4,kωi=5,Δt=0.064 s。另外,E-puck的相关参数如表 1所示。
参数 | 符号 | 取值 |
机器人轮间距/m | l | 0.037 5 |
机器人半径/m | r | 0.018 5 |
左右轮半径/m | rw | 0.020 5 |
有效感知半径/m | R | 0.4 |
最大线速度/(m·s-1) | vmax | 0.01 |
最大角速度/(rad·s-1) | ωmax | 6.28 |
在实验中,先不引入外部刺激信息,使机器人在组群作用下聚集并做编队运行。在t=40 s时,外部刺激si施加在群集边缘的2个机器人上(不失一般性,将其定义为机器人1与机器人2,即g1=g2=1),刺激信息持续到t=60 s时消失。其中,施加在机器人1与机器人2上的外部刺激信息的具体形式为:
3.2 实验结果及分析根据所设置的实验场景及实验参数,在E-puck群集机器人系统上展开分群实验研究,整个实验持120 s,结果如图 4至图 6所示。
从图 4可以看出,机器人在无外部刺激时从初始位置聚集并形成稳定运行的编队,表明了本方法良好的组群能力;当群集边缘2个机器人感受外部刺激并向2个不同的方向运动时,群集在临时结对行为的作用下从一个紧致的母群自发分裂成2个独立运动的子群;当分群完成后,子群仍能保持编队状态独立运行。
从图 5可以看出,机器人在组群阶段(t<40 s)航向从随机分布状态逐渐趋于一致;当外部刺激出现后(t=40 s),机器人在临时结对行为作用下运动出现分化,向2个不同方向运动;当外部刺激消失后(t>60 s),子群保持分群后的航向独立运行。
对于双轮差分驱动的E-puck机器人而言,其运动转向是通过对角速度的调节实现的。图 6给出了分群运动中机器人的角速度变化曲线,从中可以看出:实验开始后机器人通过调节角速度转向实现运动方向的一致。但当外部刺激出现后,机器人分别朝相反的方向运动,角速度出现分化现象。最后,当分群行为完成后,机器人不再进行转向动作,角速度逐渐下降到0,从而保持直线运动。
从上述仿真结果可以看出,本文所设计的基于自组织结对行为的群集机器人分群控制方法不仅能实现机器人群集在外部刺激下的自发分群运动,同时又不丧失其固有的组群能力,使得群集能根据外部刺激信息的变化自发的执行组群与分群运动,从而具备更强的环境适应能力。
4 结 论本文针对群集机器人的分群控制问题,以E-puck机器人群集系统为研究平台,提出了一种基于自组织结对行为的分群控制方法。该方法通过结对行为实现刺激信息在群集内部的定向传播,并结合“分离/组队/聚合”规则使得机器人群集在多元外部刺激下仅依靠局部交互即可自发产生分裂行为,且分出的子群能以有序的状态稳定运行。本文所提方法兼顾了群集机器人的组群与分群运动特性,从而提高了群集的任务执行效率和环境适应能力。
[1] | 刘明雍,雷小康,杨盼盼,等.群集运动的理论建模与实证分析[J].科学通报, 2014, 59(25):2464-2483 Liu Mingyong, Lei Xiaokang, Yang Panpan, et al. Progress of Theoretical Modeling and Empirical Studies on Collective Motion[J]. Chinese Science Bulletin, 2014, 59(25):2464-2483(in Chinese) |
Cited By in Cnki (1) | |
[2] | Brambilla M, Ferrante E, Birattari M, et al. Swarm Robotics:A Review from the Swarm Engineering Perspective[J]. Swarm Intelligence, 2013, 7(1):1-41 |
Click to display the text | |
[3] | Couzin I D, Laidre M E. Fission-Fusion Populations[J]. Current Biology, 2009, 19(15):R633-R635 |
Click to display the text | |
[4] | 雷小康,刘明雍,杨盼盼.基于邻域跟随的群集系统分群控制算法[J].控制与决策, 2013, 28(5):741-745 Lei Xiaokang, Liu Mingyong, Yang Panpan. Fission Control Algorithm for Swarm Based on Local Following Interaction[J]. Control and Decision, 2013, 28(5):741-745(in Chinese) |
Cited By in Cnki (5) | Click to display the text | |
[5] | 刘明雍,雷小康,彭星光.融合邻域自适应跟随的群集系统分群控制方法研究[J].西北工业大学学报, 2013, 31(2):250-254 Liu Mingyong, Lei Xiaokang, Peng Xingguang. A Control Algorithm for Flock Fission Based on Adaptive Local Following Interaction[J]. Journal of Northwestern Polytechnical University, 2013, 31(2):250-254(in Chinese) |
Cited By in Cnki (5) | Click to display the text | |
[6] | 刘明雍,杨盼盼,雷小康,等.基于信息耦合度的群集式AUV分群控制算法[J].西北工业大学学报, 2014, 32(4):581-585 Liu Mingyong, Yang Panpan, Lei Xiaokang, et al. ICD(Information Coupling Degree) Based Control Algorithm for Breaking up of Swarm of AUVs(Autonomous Underwater Vehicles) into Subswarms[J]. Journal of Northwestern Polytechnical University, 2014, 32(4):581-585(in Chinese) |
Cited By in Cnki (1) | Click to display the text | |
[7] | Lee G, Chong N Y, Christensen H. Tracking Multiple Moving Targets with Swarms of Mobile Robots[J]. Intelligent Service Robotics, 2010, 3(2):61-72 |
Click to display the text | |
[8] | Chen J, Gauci M, Price M J, et al. Segregation in Swarms of E-puck Robots Based on the Brazil Nut Effect[C]//Proceedings of the 11th International Conference on Autonomous Agents and Multiagent Systems, 2012:163-170 |
Click to display the text | |
[9] | Mondada F, Bonani M, Raemy X, et al. The E-puck, A Robot Designed for Education in Engineering[C]//Proceedings of the 9th Conference on Autonomous Robot Systems and Competitions, 2009:59-65 |
Click to display the text | |
[10] | Gutiérrez Á, Campo A, Dorigo M, et al. Open E-puck Range & Bearing Miniaturized Board for Local Communication in Swarm Robotics[C]//IEEE International Conference on Robotics and Automation, 2009:3111-3116 |
Click to display the text | |
[11] | Gutiérrez Á, Campo A, Dorigo M, et al. An Open Localization and Local Communication Embodied Sensor[J]. Sensors, 2008, 8(11):7545-7563 |
Click to display the text | |
[12] | Couzin I D, Krause J, Franks N R, et al. Effective Leadership and Decision-Making in Animal Groups on the Move[J]. Nature, 2005, 433(7025):513-516 |
Click to display the text |