近年来,随着机器人学的快速发展,多机器人系统理论也因其广泛的应用前景成为了智能系统理论中的研究热点。人们通过多个机器人的合作完成单个机器人所无法完成的任务,或是通过多个机器人的协作提高工作的效率,因此这个过程中多机器人协作和协调又成为了多机器人系统研究的热点和难点。
在过去的10多年里,研究者们对多机器人协调控制中的载荷分配、运动分解、避碰轨迹规划、操作柔性体或大型物体等问题进行了大量的研究“。由于多机器人(主要是多机器人臂)操作物体时形成的闭链系统,存在受限运动以及冗余度控制问题,因此多机器人协调控制问题十分复杂;多机器人系统的另一个重要问题是多机器人协作,即组织多个机器*基金项目:本文得到中国科学院沈阳自动化所机器人学重点实验室基金资助(项目编号:RL200106)。
3.1行为控制行为控制的算法设计中,基本行为和融合机制目标点9在对各子目标点位置进行优化分配的基MbUshft基于势场丨法的思想的。将障碍物看作是产生斥力2.1任务描述围捕的物理环境:在一个执行围捕任务的工作区中,有几个我方的合作机器人(称之为围捕机器人),一个进入规定区域为达到某种目的进行动作的敌方机器人(称之为目标机器人)。围捕机器人要通过一定的合作策略,将目标机器人围住,并根据当前状态判定下一步任务是进行驱逐还是押送,驱逐是将目标机器人赶出规定区域,而押送则是将目标机器人逼送到规定区域内的某个特定位置。
设工作环境为分布有静态障碍物的封闭区域,有同构的围捕机器人n个,各机器人初始位置随机分布,目标机器人正以其预先设定的搜索策略对环境进行探测n个围捕机器人根据当前变化的整体信息情况做出正确的决策,分别去协作执行目标搜索,围猎,驱逐或押送任务。
各围捕机器人的控制采用分层结构。划分成任务层和行为层。任务层根据当前的形势和整体行为,利用任务级规划方法确定机器人个体当前该执行的任务,行为层通过行为级的规划执行任务层的决策,进行目标追踪,同时根据自身传感器的信息进行避碰2.2任务级的规划任务级规划的目标是根据当前环境信息,确定围捕机器人的整体任务,并把当前的整体任务分解为可独立执行的多个子任务,且对子任务进行分配,使得多个机器人协作完成当前的整体任务。首先是进行目标搜索,看是否有目标机器人进入规定区域,若发现目标机器人,则先将其围住,然后根据目标的信息确定下一步的任务:进行驱逐或者押送。
2.2.1目标搜索因为本作业是对环境进行在线搜索,实时性的要求很高,故现有的基于可知度函数的搜索方法/3/因其巨大的计算量不宜使用。本文采用了一种由基于静态图像搜索中的收缩算法747改进而成的“伸缩算法”,可以通过设定伸展半径和收缩半径来达到较好的搜索效果。而且,通过仿真实验证实了这种搜索算法是优于随机搜索的。
我们设定首先发现目标机器人的围捕机器人Rk自动成为当前者。者执行跟踪任务,并同时计算其余子目标点位置作为其他围捕机器人的追踪上,将每个围捕机器人相应的子目标点放于黑板系统中。另外的各个围捕机器人在接到围猎命令后即到黑板中查询自己的子目标,作为当前要达到的目标,来执行目标追踪行为,从而完成多机器人整体上的围猎行为。
2.2.3驱逐和押送围猎队形形成后,通过队形的变换产生对目标机器人运动方式的影响,使其朝向驱逐目标点或押送目标点运动。驱逐时,目标点为规定区域外的近的点,押送时,目标点为规定区域内的特定位置。
2.3行为级规划围捕机器人行为层功能的目标是有效地执行任务层的决策在避碰的同时实现对目标机器人的围捕,其实现的主要是一种编队行为。在目前的研究中,编队方法有很多种,本文中采用的是行为融合的方法。定义机器人的基本行为为:基于传感信息的避碰行为和基于通信信息的目标追踪行为,通过计算各基本行为对机器人运动状态的控制分量,并按照一定的策略进行融合,产生一个综合性的控制命令作用于机器人。
2.3.1基于传感信息的避碰对于围捕机器人其障碍物包括:静态障碍物、我方的其他合作机器人、目标机器人和工作区边界。
障碍物的信息经过传感器信息的融合后可用三元组表示(d/num(3)*dT/(R-R)1)else rd为障碍物的危险区半径,r.s为障碍物的安全区半径。在安全区中,不用考虑障碍物的影响,避碰区内,则根据障碍物的信息进行速度和运动方向的调整,一旦进入了危险区,则要以大的速度和尽量远离障碍物的运动方向远离障碍物。我们设计的控制策略为其中,v1和MW分别为由第k个障碍物确定的机器人速度大小和运动方向的变化值,Ad1))/(r*s-rd)(9)即wi的确定利用势场法的思想,根据近的障碍物距离和与目标之间的距离的相对关系确定避碰的重要性值,由归一化可得W2,即追踪的重要性值。
对两种基本行为产生的控制按照W1和W2求加权和,得到的就是综合控制,并终作用于机器人的动作机构。
3.2目标搜索目标搜索是基于静态图像的目标搜索算法――收缩算法改进的,称之为“伸缩式”搜索方法,区别在于各机器人到达预定的收缩半径后,执行与收缩算法中相反的行为确定方式,进行扩散式搜索,直到达到扩散半径。
其搜索路径的确定方法如下Fx,i(m),Fy,i(m)为各机器人间的位置差异对机器人x,y方向上的影响。k是伸缩系数,它的取值大小控制着伸缩过程的快慢,一般取为0.3左右。m为伸缩运算的次数,i=1,2……,n(n为追捕机器人个数)为机器人标号。
本(收缩时取加,扩散时取减)由于采用这种方法进行搜索时,机器人总是趋于均匀分布,减小了路径冲突的可能,从而提高了搜索的效率。
每个机器人根据整体信息分布式地规划自己的搜索子目标信息(xi+1(m+ 1)),并将其传送给行为规划层,做出相应的动作控制。
3.3围猎时任务的分解和分配目标机器人为中心的正n边形。n为追捕并参与编队的机器人数量,我们设计的任务分解和分配方法如下:各追踪机器人都设定自己是虚拟者,分别基于自身状态做出对任务的分解和分配策略Si,并计算各自本地优策略下的预计小总消耗,由当前者7通过黑板系统进行比较,选出n种方案下的小总消耗策略Sk,将权转让给制定这个这样可以在局部优化的基础上进行全局优化,得到全局优的分配策略。
(以7个追踪机器人中,2号机器人为例):Step1:R2在自身于目标机器人联线上确定自己的子目标T0,并基于T0和目标机器人确定另外Step2.建立以目标机器人Rt为极点,矢量RTR2为极轴的极坐标系。计算该坐标系下其余机器人的极角ft值。
Step3:用排序法对Q进行由小到大排序。如图情况得到排列后的集合R=R6,R4,R5,R1,R7,Step4进行子任务分配,将T和R两个集合中的元素按序匹配,即可实现本地的优策略。
Step5:将本地优策略放到黑板系统中,由当前人选取下一循环周期的人及相应策略,选取策略为总消耗小原则。
3.4押送和驱逐任务的分解和分配在围猎的基础上位于目标机器人正前方左右侧的两个机器人根据目标机器人当前的运动方向与期望方向的差异,选择出一个“影响”机器人Ra.该机器人向目标逼近,设其原定子目标位置为(xa,O,ya,o),当前目标机器人的位置为(xr,yr),改变当前子目标位置为((xa,O+策略的机器下一循环周期的c者ublis4直到到方向丨差值达到一定的允愚/bookmark7由3.1中避碰行为产生控制的方式可知,在其他条件不变的情况下,一侧的障碍物距离变短,则决策结果是作远离该机器人的调整,以趋于更安全的位置。这样就很好地利用了目标机器人的避碰功能,在机器人间没有辅助作用的情况下,达到对目标机器人运动方式的影响。迫使其调整运动方向接近期望方以下为仿真试验中得到的图像,其中,每个圆形代表一个机器人,中空的代表目标机器人,另外的为围捕机器人,每个圆形中的黑线代表机器人的运动方向。(a)为采用“伸缩式”方法进行目标搜索,各围捕机器人正进行扩散搜索。(b)为围捕机器人在障碍物稀疏区完成对目标机器人的围猎,多边形为静态障碍物。(c)是围捕机器人将目标机器人押送至目的地,图中的实心圆形为押送目的地。
(a)伸缩式目标搜索本文在建立仿真平台的基础上,对上述方法作了仿真试验验证。实验证明,机器人可以较快地发现目标,能够避开静态和动态障碍物,并在障碍物稀疏区将目标围住,将其驱逐或押送至目的地,体现了很好的整体智能性。
算法中任务的分解和分配策略,引入了者和虚拟者的角色,每个虚拟者制定本地优策略,核心是对(n- 1)个元素进行极角排序,然后求n个元素中的小值,其计算时间复杂度为O(n2),而在无者和虚拟者的情况下,要进行n!次组合、求和跟比较,计算时间复杂度为O(n!),可见该算法大大降低了计算复杂度,且比较矩阵选择的方法67,改善了后元素所可能导致的突发性不良后果。