2. 重庆邮电大学 自动化学院,重庆 400065
2. School of Automation, Chongqing University of Posts and Telecommunications, Chongqing 400065, China
大肠杆菌(Escherichia coli, E.coli)是人体肠道内的一种常见微生物,目前已经被国内外学者广泛研究[1-4]。大肠杆菌在进行觅食活动时,会涌现出一种重要的行为——趋化行为。早在1974年,Bremermann[5]就指出了细菌趋化行为的重要性及其潜在的应用价值;2002年,S.D.Muller等[6]在Bremermann的基础上提出了一种细菌趋化算法(chemotaxis algorithm, BCA);同年,K.M.Passino[2-3]受趋化行为启发并借鉴遗传算法思想,提出了一种新兴的仿生进化算法——细菌觅食优化算法。目前,细菌觅食行为思想已经在机器人领域取得了一定的研究进展[7-10]:Dhariwal等受细菌趋化行为启发,提出了一种利用梯度测量及简单的随机运动策略实现机器人监控环境的方法;Coelho等利用细菌群体的社会行为思想,提出了一种变速度菌群算法优化移动机器人路径的新方法;Sierakowski等将细菌群体觅食搜索思想应用到移动机器人路径优化领域,获得了比遗传算法更好的规划路径。
总之,上述学者取得的成果都是在细菌的趋化性基础上实现的,因此趋化行为非常重要。虽然Coelho和Sierakowski等利用菌群觅食优化思想获得了一些较短的机器人运动路径, 但是这些路径仅是几个较优路径节点的简单线段连接,缺乏实时性和灵活性,降低了机器人对路径安全性和平滑性的要求。然而在实际应用中,机器人往往需要按照人类的寻优经验,更加注重机器人运动的趋向性和安全性[11]。因此,本文在这种思想的指导下,通过模拟大肠杆菌的趋化行为,建立了相关的环境模型和机器人运动策略,一方面实现了机器人的路径规划任务,另一方面与Sierakowski的方法在相同规模大小环境下进行了比较,结果表明本文方法获取的路径具有更好的安全性、实时性和平滑性。
1 细菌趋化行为大肠杆菌的趋化行为指的是细菌在觅食环境中趋向有利于自身生存的区域,避开不利于自身生长区域的现象。这种趋利避害的行为具体表现为游动(swim)和翻转(tumble)2种运动形式,分别如图 1(a)和1(b)所示。这2种运动主要是依靠遍布在细菌表面的鞭毛的摆动来实现[2-4]:当大肠杆菌的所有鞭毛都朝逆时针方向摆动时,它便以一定的平均速度向前游动一段时间;当大肠杆菌的所有鞭毛都朝顺时针方向摆动时,它便在原地翻转一段时间后随机选择一个新方向作为下一次的游动方向。游动和翻转的目的是为了更好地寻找食物源,并避开有害物质。大肠杆菌的整个生命周期都是在翻转和游动之间不停地进行交替变换,从而避开不利生长的物质,趋向营养物质。
在细菌的整个生命周期,细菌的趋化行为都是受到食物源浓度的影响,以此来决定细菌是继续朝着原先的方向进行觅食,还是改变方向觅食。具体表现为[2]:1)如果细菌处于一个中性环境或环境浓度没有梯度,则细菌交替表现为游动和翻转。2)如果细菌探测到营养梯度,那么它会花更多的时间来进行游动,更短的时间来进行翻转,从而使细菌运动方向偏向正梯度方向。图 1(c)表示了这一过程,图中食物的浓度从左到右由小变大,呈现正梯度趋势,细菌便不停地随机翻转并搜寻食物。3)如果细菌发现负梯度或有毒物质,那么它便会游到一个更好的环境,从而远离危险。
设细菌i的趋化单位游动步长为C(i),当前位置为θit ,那么经过一次趋化后,细菌将到达一个新的位置,此时细菌i的位置θit+1为
式中:Δ(i)∈Rp,表示细菌翻转过程中生成的一个随机向量。
为使细菌能够更好地评价自身的生存状态,达到优化问题的目的,设细菌执行一次趋化后的适应度值更新如下:
式中:J(t)表示细菌个体趋化前的适应度值,Jcc表示细菌群体间“吸引-排斥”传递信号的影响值。前者继承了细菌个体上一时刻的生存状态,后者综合考虑了群体的社会性影响。
最后,按照一定的评价方式(比如求和、求最大或最小等方式)来评价细菌在不同位置处的适应度值,从而驱使细菌执行游动或翻转动作,使细菌趋向有利自身生存的环境,避开不利环境,最终找到一系列较好的并适合细菌生存的位置。类似地,将此思想用在移动机器人领域,便是求取了一条较好的机器人移动路径。
2 移动机器人路径规划 2.1 高斯势场环境建模由前面分析可知,大肠杆菌的趋化过程与机器人的路径规划过程有很大的相似性:细菌在趋向食物源的运动过程中,可以把它看作是一个微型移动机器人,细菌要觅食的营养物质看作是机器人要到达的(子)目标点,把细菌要避开的有毒物质看作是机器人要躲避的障碍物。由此一来,便可以通过研究细菌的趋化行为来研究移动机器人的路径规划。因此,参照细菌的觅食环境,可以为机器人建立类似的障碍物轮廓和目标轮廓模型。
假设障碍物均为圆形障碍物,其半径已经按照机器人半径尺寸进行膨胀,这样移动机器人便可以视为一个质点。定义目标点的高斯轮廓信息为
障碍物的高斯轮廓信息为
式中:kg>0,ko>0分别表示目标轮廓信息的吸引强度调节因子和障碍物轮廓信息的排斥强度调节因子;r>0表示目标的作用范围,δ>0表示障碍物在工作空间的作用半径;X=(x, y)表示机器人的当前坐标位置;Xg=(xg, yg)表示目标的中心位置坐标;Xo=(xo, yo)表示障碍物的中心位置坐标。
2.2 移动机器人感知及运动策略移动机器人在模拟细菌执行路径规划任务时,可以使用“前进”和“转向”2种行为来与细菌的“游动”和“翻转”行为相对应。在前面介绍的细菌趋化行为中,细菌翻转的方向是随机方向,这样不仅不利于细菌的优化觅食,而且将这种运动策略用于移动机器人路径规划,往往还会导致机器人盲目运动,降低路径规划性能。因此,如果将机器人的转向方向细分为以机器人为中心的几个可能方向(如图 2所示),利用机器人自身传感器来感知和评价这些方向的环境势场信息,那么机器人在转向时将更有方向性,从而避免了因随机选择方向不佳而带来的不灵活性。
综上所述,构建了如图 3所示的机器人感知模型[12],图中R表示Robot的感知半径,λ表示Robot的运动步长,θ表示机器人t时刻的移动方向角。图 3将机器人看成一个质点,机器人利用均匀遍布在自身四周的传感器S1, S2, ..., Sn,可以获取环境中目标和障碍物的合势场轮廓信息,通过计算机器人在当前各个传感器方向的适应度值大小,从而选择出一个最适宜的方向作为机器人的下一步前进方向。假设机器人在原地转向时,不发生位移变化,那么机器人每执行一次趋向性运动后的位置更新如下:
为了使移动机器人在运动过程中按照人类的寻优经验搜索路径,移动机器人在执行路径规划任务时,不仅要尽量趋向目标位置运动(即趋向性), 还要保障机器人自身在行驶过程中的安全(即安全性)。因此,在保障了趋向性Fg和安全性Fo的条件下,结合2.1节的高斯势场环境模型,按照加权求和法的思想,构建移动机器人的路径适应度函数为
(1) |
式中:Fg=(xg-x)2+(yg-y)2
(2) |
ω1、ω2分别表示趋向和避障的控制权重,本文将机器人路径规划的安全性看得更为重要,因此在选取相应权值时,ω2一般会比ω1大很多;Fg表示机器人当前路径点距目标点的欧式距离的平方,它保障了机器人的趋向性运动;Fo表示K个障碍物对机器人当前位置的排斥势场之和,它保障了机器人的安全性;(x, y)和(xoi, y oi)分别表示机器人当前坐标位置和第i个障碍物的中心坐标;δi表示第i个障碍物的作用半径。
通过建立式(1)的路径适应度函数,便可以利用机器人的感知模型来评价机器人在Sn个传感器方向的适应度值。这里,选取的是适应度值最小的方向,因此机器人在决定下一步前进方向时,需要寻找到一个子目标点(xi*, yi*),并满足式(2),从而驱使机器人转向,且
(3) |
按照前面的分析,基于细菌趋化行为的移动机器人路径规划方法执行步骤如下[12]:
1)初始化。①初始化机器人的各类参数:起始点坐标(xo, yo)、目标点坐标(xg, yg)、机器人感知半径R、机器人移动步长λ、最大趋化步数Nmax、机器人四周传感器总个数Sn、避障权重ω1和趋向目标权重ω2;②初始化环境信息:工作空间界限(xmin, xmax)和(ymin, ymax),各个障碍物的中心位置(xoi, yoi),以及它们的作用范围δ;③初始化机器人起始点处的适应度值F=0,并设置N=1。
2)适应度函数值更新。按照式(1),计算机器人当前位置(x, y)处以R为半径的感知区域上第i个传感器方向处的适应度函数F(xi, yi), i=1, 2, …, Sn。
3)极小值点探索。按照式(2),寻找一个子目标点(xi*, yi*),使得F(xi*, yi*)≤F(xi, yi)。
4)机器人位置更新。如果机器人的下一个前进方向St+1处的适应度值小于当前方向St的适应度值,那么机器人按照式(3)进行方向调整;反之,机器人则继续以原来方向移动一个趋化步长,此时机器人位置按照式(4)更新。
(4) |
5)判断结束条件。如果机器人当前趋化步数已经达到了最大预设步数Nmax,则机器人停止;否则趋化步数N=N+1,转到步骤2)。
图 4给出了该方法的实现流程图。
3 仿真结果与分析利用MATLAB7.1软件,首先进行了基于细菌趋化行为的移动机器人路径规划实验,然后利用该方法在相同规模和大小的环境中与文献[9]中的规划结果进行了比较。相关参数设置如下:R=1 cm,Sn=16,λ=0.1 cm,Nmax=1 500,ω1=0.999 9,ω2=0.000 1。
3.1 基于细菌趋化行为的机器人路径规划现假设实验环境是一个30 cm×30 cm的二维矩形区域,机器人的搜索范围都在(0, 30)内,机器人的起始位置为(0, 0),目标位置为(25, 25)。图 5给出了基于细菌趋化行为的移动机器人路径规划结果。由图 5分析可知:移动机器人从起始位置出发,成功地避开了途中遇到的各种障碍物,并最终安全地到达了目标位置。在整个路径规划过程中,机器人行走的路径比较平滑,且趋向性很好,机器人与障碍物之间也保持了良好的安全性。因此,这样的规划结果展现了该方法的有效性及可行性。
3.2 路径规划比较现假设实验环境是一个100 cm×100 cm的二维矩形区域,机器人的搜索范围都在(0, 100)内,机器人的起始位置为(0, 0),目标位置为(100, 100)。
3.2.1 4个障碍物环境下的对比实验表 1给出了4个圆形障碍物的中心位置坐标(xo, yo)和作用半径δ。在这样的环境下,通过10次仿真实验,利用本文方法得到了图 6(a)中的结果。图 6(b)、图 6(c)和图 6(d)分别是文献[9]中GA算法、PSO算法和BFO算法的规划结果。通过比较分析图 6中的各种规划结果,不难发现:本文方法和其余3种方法都成功地规划出了一条机器人可行路径。
从表 2中的路径性能分析可知:虽然本文方法获取的路径在长度上比其他3种方法要长,但是在路径的安全性上却要比其他3种方法都要好。这是由于本文方法更加注重机器人行走的安全性,而另外3种方法却注重的是路径长度。本文方法正是因为牺牲了路径长度,才赢得了路径的相对安全。因此,当把路径安全性作为路径规划的第一要素时,本文的方法会有很大优势。
3.3.2 12个障碍物环境下的对比实验
增加环境中的障碍物至12个,并改变障碍物的半径和位置(如表 3所示),同样运用本文方法,再次进行10次仿真实验,得到了图 7(a)中的结果。图 7(b)、图 7(c)和图 7(d)同理对应文献[9]中的GA算法、PSO算法和BFO算法的规划结果。
障碍物编号 | 障碍半径δ/cm | 障碍中心位置(xo, yo)/cm |
1 | 10 | (13, 25) |
2 | 8 | (10, 76) |
3 | 5 | (76, 9) |
4 | 14 | (45, 45) |
5 | 9 | (12, 55) |
6 | 15 | (80, 30) |
7 | 13 | (66, 77) |
8 | 8 | (32, 15) |
9 | 7 | (75, 55) |
10 | 6 | (87, 70) |
11 | 8 | (35, 66) |
12 | 5 | (45, 90) |
通过分析比较图 7和表 4的规划结果,同样可以发现:当环境中的障碍物增多时,这4种方法还是能成功地规划出了一条机器人可行路径。在路径长度方面,本文方法规划的路径比PSO和BFO都要长,但是比GA要短,此时GA算法已经明显失去了路径规划的优势。另外,在路径的趋向性和安全性方面,本文的方法还是凸显了它应有的优势,比其他3种方法都要好,而且路径也相对较平滑。
从表 4的数据还可以看出,虽然文献[9]中的方法在规划的路径长度上占有一定的优势,但是这是在理想直线距离下得到的,当环境中障碍物增多时,GA算法的路径长度还要变长。
4 结束语本文针对移动机器人路径规划问题,结合机器人路径规划与细菌觅食趋化过程的相似性,提出了一种类似细菌趋化行为的移动机器人路径规划方法。通过实验结果与分析可知,本文方法成功地实现了移动机器人在高斯势场模型的障碍物环境下的路径规划任务,并在相同规模和大小的障碍物环境下,本文方法规划的路径在实时性、安全性和平滑性方面有了一定改进。另外,该方法只要知道机器人的目标点和自身的位置,通过设定一定的趋向和避障权重,便可以结合智能机器人的自身传感器技术,在简单甚至复杂的环境下实现实时导航任务。
[1] | TSUJI T, SUZUKI M, TAKIGUCHI M, et al. Biomimetic control based on a model of chemotaxis in escherichia coli[J]. Artificial Life , 2010, 16 (2) : 155-177 DOI:10.1162/artl.2010.16.2.16203 |
[2] | PASSINO K M. Biomimicry of bacterial foraging for distributed optimization and control[J]. IEEE Control System Magazine , 2002, 22 (3) : 52-67 DOI:10.1109/MCS.2002.1004010 |
[3] | PASSINO K M. Bacterial foraging optimization[J]. International Journal of Swarm Intelligence Research , 2010, 1 (1) : 1-16 |
[4] | 周雅兰. 细菌觅食优化算法的研究与应用[J]. 计算机工程与应用 , 2010, 46 (20) : 16-21 ZHOU Yalan. Research and application on bacterial foraging optimization algorithm[J]. Computer Engineering and Applications , 2010, 46 (20) : 16-21 |
[5] | BREMERMANN H J. Chemotaxis and optimization[J]. Journal of The Franklin Institute , 1974, 297 (5) : 397-404 DOI:10.1016/0016-0032(74)90041-6 |
[6] | MULLER S D, AIRAGHI J, MARCHETTO S, et al. Optimization based on bacterial chemotaxis[J]. IEEE Transactions on Evolutionary Computation , 2002, 6 (1) : 16-29 DOI:10.1109/4235.985689 |
[7] | DHARIWAL A, SUKHATME G, REQUICHA A G. Bacterium-inspired robots for environmental monitorng[C]//Proceedings of the 2006 IEEE International Conference on Robotics and Automation. New Orleans, USA, 2004: 1436-1443. |
[8] | COELHO L D S, SIERAKOWSKI C A. Bacteria colony approaches with variable velocity applied to path optimization of mobile robots[C]//ABCM Symposium Series in Mechatronics. Rio de Janeiro, Brazil: ABCM, 2006, 2: 297-304. |
[9] | SIERAKOWSKI C A, COELHO L S. Study of two swarm intelligence techniques for path planning of mobile robots[C]//Proceedings of the 16th IFAC World Congress. Prague, Czech Republic, 2005: 1-6. |
[10] | SIERAKOWSKI C A, COELHO L S. Path planning optimization for mobile robots based on bacteria colony approach[J]. Advances in Soft Computing , 2006, 34 : 187-198 |
[11] | 蒲兴成, 张军, 张毅. 基于时变适应度函数的改进粒子群算法及其在移动机器人路径规划中的应用[J]. 计算机应用研究 , 2010, 27 (12) : 4454-4456, 4463 PU Xingcheng, ZHANG Jun, ZHANG Yi. Path planning method for mobile robot based on particle swarm optimization with time-varying fitness function[J]. Application Research of Computers , 2010, 27 (12) : 4454-4456, 4463 |
[12] | 蒲兴成, 赵红全, 张毅. 基于改进细菌趋化步长的移动机器人路径规划方法研究[J]. 山东科技大学学报:自然科学版 , 2012, 31 (4) : 56-62 PU Xingcheng, ZHAO Hongquan, ZHANG Yi. Mobile robot path planning based on bacterial chemotaxis step[J]. Journal of Shandong University of Science and Technology: Natural Science , 2012, 31 (4) : 56-62 |