杨志娟,杨阳
(长春理工大学 电子信息工程学院,长春 130022)
基于信标的多Agent系统,与现有的多Agent系统相比,该系统的特性是Agent之间仅通过对无线信标检测的方式来进行信息交互,Agent间通过发射、接收吸引和排斥两种类型的信标使系统能够实现多个Agent共同合作、完成同一任务的功能[1]。其中吸引信标用于资源分配(吸引Agent向指定的位置移动,如目标物位置),而排斥信标用来控制Agent的分布和密度,避免Agent模块在移动过程中发生碰撞[2]。
但当Agent接收到两种类型的信标时,其位置的变化情况与Agent的原始位置之间的具体关系还需进一步的研究,本文通过仿真得出相应的波形图并分别进行分析,并得出相应的结论。
该系统的运行过程是:开始时,多个Agent在规定区域内按各自的轨迹移动,且模块上的传感器实时地对周围环境进行目标检测,系统运行过程中,每个Agent都一直发射排斥信标(防止与其他Agent发生碰撞),当其中一个Agent发现目标物后,将再发射吸引信标(此时,两种信标交替发射)来告知其他Agent已检测到目标物,并让其他Agent向检测到的目标物位置移动,其他Agent接收到吸引信标后,将不再按照各自的轨迹移动,而直接向目标物的方向移动。Agent始终遵循其移动规则运行,具体规则是利用Agent两侧离目标物的距离不同,则Agent两侧接收的信标强度值也不同,将Agent两侧接收到的信标强度值进行差运算,Agent向数值较小的一侧转弯,与以上方式类似,并以一定频率不断地进行差运算,根据运算结果判定Agent的移动方向,使Agent向目标物靠拢。但同时Agent还受到排斥信标的影响,当接收到的排斥信标不小于临界值时,控制模块将优先处理排斥信标,方式与处理吸引信标的方式类似,也是将Agent两侧接收到的信标强度值进行差运算,但Agent将向数值较大的一侧转弯。以上两侧接收到的信标是分别通过Agent两侧的无线节点接收的。整个系统在两种信标的作用下运行时,Agent在确保各自不发生碰撞的前提下,向目标物的方向移动,并对目标物进行必要的包围、拦截等任务。
当Agent向目标物的方向移动时,可受到两种类型的信标,由于无线节点是根据接收到的信标强度值计算出与发射吸引信标源点的距离,接收到的信标强度值的变化可反映出本身与源点距离的变化情况。当接收到的信标强度值保持一定时,则表示自身离源点的距离保持不变,此时可视为Agent在区域内处于静止状态。
仿真时按Agent的初始位置不同,主要分三种情况进行讨论,第一种是Agent完全处于发射吸引信标源点的排斥范围以外的情况;第二种是Agent只有一侧处于发射吸引信标源点的排斥范围以外的情况;最后一种是Agent的两侧完全处于发射吸引信标源点的排斥范围以内的情况[3]。下面对这三种情况分别进行仿真研究,并将三种情况下得出的结果进行对比、分析及总结。
首先设置仿真的参数,设定当Agent接收到的排斥信标强度值不小于5时,表示Agent处于排斥范围以内,此时接收到的吸引信标强度值不小于4设定Agent接收到的同一源点发射的排斥信标的强度比吸引信标的强度大,仿真时得出的排斥信标强度与吸引信标强度不等,有利于将仿真图中的两种类型的信标强度及相关内容进行对比分析。为了更好的模拟Agent的移动状态,当判定Agent向左转弯移动时,设定Agent的左侧信标强度变化量为0.2,右侧信标强度变化量为0.1。当判定Agent向右转弯移动时,设定Agent的右侧信标强度变化量为0.2,左侧信标强度变化量为0.1。当判定Agent直行时,设定Agent的左、右侧信标强度变化量为0.15,但因为在Agent的移动规则中只有在接收到的信号强度值为0时,才执行直行移动,因此判定直行的发生概率几乎为0。且由于Agent两侧的距离较近,设置两侧接收到的信标强度差值不大于0.2。
先对Agent完全处于发射吸引信标源点的排斥范围以外的情况进行讨论,主要分Agent在初始位置接收的左侧信标强度大于右侧信标强度和左侧信标强度不大于右侧信标两种状态[4]。当接收的左侧信标强度大于右侧信标强度时,设置Agent在起始位置接收到的左、右初始位置排斥信标强度值分别为3.2和3.1,接收到的左、右吸引信标强度值分别为2.2和2.1,按照Agent的移动规则,对Agent接收到的前50次信标强度进行了仿真。仿真结果如图1(a)所示,从左图中可看出前13次的信标强度成递增趋势,表明Agent在向发射吸引信标的Agent位置靠近,但当接收到的排斥信标强度值为5,表明Agent刚处于发射吸引信标的Agent的排斥范围,此时吸引信标强度为4,从后37次的信标强度值得出排斥信标强度值总是以5为边缘值,吸引信标强度总是以4为边缘值,尽管会呈现出小范围的波动。且根据前50次的Agent接收信标强度值变化情况,可类推Agent接收到的信标强度值将形成一个稳定的动态。则Agent在区域内,将处于动态的稳定位置,且Agent左侧相对于右侧离源点的距离一般较近些。当Agent处于发射吸引信标源点的排斥范围以外的情况下且Agent在初始位置上接收的左侧信标强度不大于右侧信标强度时,设置Agent在初始位置接收到的左、右排斥信标强度值分别为3.1和3.2,左、右吸引信标强度值分别为2.1和2.2,按照Agent的移动规则,对Agent接收到的50次信标强度进行了仿真。仿真结果如图1(b)所示,信标强度的变化与左图相似,前13次表明Agent在向发射吸引信标的Agent位置靠近,后37次的信标强度值得出,后37次的排斥信标强度值总是以5为边缘值,吸引信标强度总是以4为边缘值,都呈现出小范围的波动。且根据前50次的Agent接收信标强度值变化,可类推Agent接收到的信标强度值将形成一个稳定的动态。则Agent在区域内,将处于动态的稳定位置。再将图1中两图作对比分析两种情况下的Agent最终都趋于一个稳定的动态。
图1 Agent完全处于源点的排斥范围以外的信标强度变化图
当Agent只有一侧处于发射吸引信标源点的排斥范围以外的情况下,且Agent在初始位置上接收的左侧信标强度大于右侧信标强度时,设置Agent在初始位置接收到的左、右排斥信标强度值分别为5.1和4.9,接收到的左、右吸引信标强度值分别为4.1和3.9,遵循Agent的移动规则,对Agent接收到的前50次信标强度进行了仿真。仿真结果如图2(a)所示,Agent在起始位置时已处于发射吸引信标的Agent的排斥范围附近,Agent经过一次信标强度变化后,总是处于排斥范围边缘,呈现出小范围的波动。且根据对前50次的Agent接收信标强度变化情况可得出Agent将处于动态的稳定位置。当Agent在初始位置上接收的左侧信标强度不大于右侧信标强度时,设置Agent在初始位置接收到的左、右排斥信标强度值分别为4.9和5.1,接收到的左、右吸引信标强度值分别为3.9和4.1,遵循Agent的移动规则,对Agent接收到的前50次信标强度进行了仿真。仿真结果如图2(b)所示,Agent在起始位置已处于发射吸引信标的Agent的排斥范围附近,Agent呈现出小范围的波动。且可得出Agent将处于动态的稳定位置。再将图2中的两图进行对比分析,当Agent左侧信标强度大于右侧信标强度时,处于动态稳定时左侧距离源点的距离不大于右侧,而当Agent的右侧信标强度大于左侧信标强度时,处于动态稳定时右侧距离源点的距离不大于左侧。表现出的是当左侧在排斥范围内时,Agent移动时左侧将偏向于源点方向;当右侧在排斥范围内时,Agent移动时右侧将偏向于源点方向,但总体都处于一个稳定的动态。
图2 Agent只有一侧处于发射吸引信标源点的排斥范围以外的信标强度变化图
当Agent的两侧完全处于发射吸引信标源点的排斥范围以内的情况下,且Agent在初始位置上接收的左侧信标强度大于右侧信标强度时,设置Agent在初始位置接收到的左、右排斥信标强度值分别为6.6和6.4,接收到的左、右吸引信标强度值分别为5.6和5.4,按照Agent的移动规则,对Agent接收到的前50次信标强度进行了仿真。仿真结果如图3(a)所示,前10次的信标强度成递减趋势,表明Agent在远离发射吸引信标的Agent,但当接收到的排斥信标强度值为5,表明Agent处于发射吸引信标的Agent的排斥周围,此时吸引信标强度为4,这些现象可从后40次的信标强度值得出,排斥信标强度值总是以5为边缘值,吸引信标强度总是以4为边缘值,都呈现出小范围的波动。且根据前50次的Agent接收信标强度值变化,可类推Agent接收到的信标强度值将形成一个稳定的动态,Agent在区域内,将处于动态的稳定位置。当Agent在初始位置上接收的左侧信标强度不大于右侧信标强度时,设置Agent在初始位置接收到的左、右排斥信标强度值分别为6.4和6.6,接收到的左、右吸引信标强度值分别为5.4和5.6,按照Agent的移动规则,对Agent接收到的50次信标强度进行了仿真。仿真结果如图3(b)所示,前10次的信标强度成递减趋势,表明Agent在远离发射吸引信标的Agent,但当接收到的排斥信标强度值为5,表明Agent处于发射吸引信标的Agent的排斥周围,此时吸引信标强度为4,这些现象可从后40次的信标强度值得出,排斥信标强度值总是以5为边缘值,吸引信标强度总是以4为边缘值,都呈现出小范围的波动。且根据前50次的Agent接收信标强度值变化,可类推Agent接收到的信标强度值将形成一个稳定的动态,Agent在区域内,将处于动态的稳定位置。再将图3中的两图进行对比分析,当Agent左侧信标强度大于右侧信标强度时,处于动态稳定时左侧距离源点的距离不大于右侧,Agent移动时左侧将偏向于源点方向;而当Agent的右侧信标强度大于左侧信标强度时,处于动态稳定时右侧距离源点的距离不大于左侧,Agent移动时右侧将偏向于源点方向,但总体都趋于稳定动态。
以上是对单个Agent的移动轨迹进行了分析,从上面的情况可总结出Agent从起始位置移动后,最终以发射吸引信标的Agent的排斥距离的位置为中心,形成一个稳定的震荡。但其他未发射吸引信标的Agent之间仅受排斥信标影响,之间的距离将不小于最短的安全距离。在运行过程中,由于是多个Agent共同执行这一移动规则,将以发射吸引信标的Agent为中心形成一个封闭区域,其密度由排斥临界值ρ确定,如图5中的虚线描述。在运行过程中,Agent在其他Agent排斥范围内,将向远离的方向移动,当不在排斥范围内时,将向发射吸引信标位置移动,最终将形成一个稳定的震荡,即Agent在排斥范围附近移动且始终保持在同一个区域内。如图4所示,在临界位置处,以Agent n为参考位置,则另一个Agent的将会在距离Agent n不小于ρ且在临界区域内出现,如出现在Agent n1、Agent n2或Agent n3位置。
图3 Agent处于发射吸引信标源点的排斥范围以内的信标强度变化图
图4 Agent间的防碰撞的最小区域图
随着Agent的数量增多,Agent的位置将会靠近,当数量增到一定时,在运行过程中,每个Agent按照上述的移动规则,以一定的频率执行这一移动规则,从而向发射吸引信标的Agent靠拢。由于是多个Agent共同执行这一移动规则。将以发射吸引信标的Agent为中心形成一个封闭区域,其密度由排斥临界值确定,由图5中的虚线描述。在运行过程中,Agent在其他Agent排斥范围内,将向分离的方向移动,当不在排斥范围内时,将向发射吸引信标位置移动,最终将形成一个稳定的震荡,即Agent在排斥范围附近移动,始终保持在同一个区域内。形成一个长度约为临界值ρ的六边形网格形状,如图5所示的多个Agent达到平衡的位置。Agent之间处于最短的安全距离,此时Agent受到的信标的吸引力和与其他Agent之间的排斥力将达到平衡状态。
图5 多个Agent的平衡位置
现有的多Agent系统,模块间通信采用的是数字通信方式。相对而言硬件电路较复杂,且可靠性不高。基于以上原因,本文提出一种新型的多Agent系统,模块间仅通过信标检测的方式进行信息交互。对系统的运行原理进行了详细的描述。并对Agent模块的移动规则进行主要的分析及研究,且通过仿真来进一步进行了验证。而且现如今无线网络的发展已趋于成熟化,将这一技术应用到多Agent系统中,进行了多方向的融合,应用领域广泛,具有很好的研究价值。
通过研究,初步了解在接收到吸引信标和排斥信标的情况下,Agent的运行的最终状态。但还需进一步设计出实物并对该系统进行验证,最终能够设计出功能全面的系统,并研究出的系统进行系统性能的验证。
[1]金士尧,黄红兵,范高俊.面向涌现的多Agent系统研究及其进展[J].计算机学报,2008,31(6):881-894.
[2]蔡自兴,徐光佑.人工智能及其应用[M].北京:清华大学出版社,2004.
[3]谢学科.多Agent交互协作研究及系统模拟[D].西安:西北工业大学,2005.
[4]石纯一,张伟.基于Agent的计算[M].北京:清华大学出版社,2007.