CN103412490B - 用于多机器人动态路径规划的多克隆人工免疫网络算法 - Google Patents

用于多机器人动态路径规划的多克隆人工免疫网络算法 Download PDF

Info

Publication number
CN103412490B
CN103412490B CN201310352276.1A CN201310352276A CN103412490B CN 103412490 B CN103412490 B CN 103412490B CN 201310352276 A CN201310352276 A CN 201310352276A CN 103412490 B CN103412490 B CN 103412490B
Authority
CN
China
Prior art keywords
antibody
robot
antigen
mnemon
concentration
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.)
Expired - Fee Related
Application number
CN201310352276.1A
Other languages
English (en)
Other versions
CN103412490A (zh
Inventor
马昕
邓立霞
李贻斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong University
Original Assignee
Shandong University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shandong University filed Critical Shandong University
Priority to CN201310352276.1A priority Critical patent/CN103412490B/zh
Publication of CN103412490A publication Critical patent/CN103412490A/zh
Application granted granted Critical
Publication of CN103412490B publication Critical patent/CN103412490B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)
  • Feedback Control In General (AREA)

Abstract

本发明提供一种用于多机器人动态路径规划的多克隆人工免疫网络算法,是一种改进的人工免疫网络算法,该算法将多克隆人工免疫网络应用于多移动机器人动态路径规划问题,考虑机器人之间的相互影响以及移动障碍物对机器人的影响,定义了抗体浓度的计算公式,通过克隆算子、交叉算子、变异算子和选择算子,增加了抗体的多样性,解决了传统人工免疫网络的早熟收敛问题;并通过引入记忆单元,不仅保存了特定环境抗原对应的特异性抗体,而且增加了特异性抗体的初始浓度,减少了响应时间,有效地实现了未知环境下多移动机器人动态路径规划。

Description

用于多机器人动态路径规划的多克隆人工免疫网络算法
技术领域
本发明涉及一种应用于多移动机器人动态路径规划的多克隆人工免疫网络算法,属于人工智能技术领域。
背景技术
路径规划问题是移动机器人研究中的关键技术之一,路径规划是指移动机器人按照某一性能指标,搜索一条从起始位置到目标位置的最优或次优的无碰路径。
根据机器人是否能够事先获得全部环境信息,移动机器人的路径规划分为环境信息已知的全局路径规划和基于传感器信息的局部路径规划,传统的全局路径规划大多基于图论,在环境的几何模型上搜索满足某一性能指标的最优或次优的避碰路径。而基于传感器信息的局部路径规划又根据机器人所处环境是否动态变化,可以将移动机器人局部路径规划分为静态路径规划和动态路径规划。静态路径规划是指环境中的障碍物是静止的,机器人的目标点位置也是不变的,而动态路径规划是指环境中存在移动的障碍物和目标点,环境信息动态变化。动态路径规划的难点在于环境信息的高度不可预知性。未知环境下的动态路径规划是机器人研究领域的热点问题。
近年来,随着人工智能的深入研究,研究者们将人工势场法、模糊逻辑、遗传算法、强化学习、人工免疫网络等应用于路径规划,提出了多种智能路径规划算法。
人工势场法计算简单,便于底层的实时控制,但其也存在如下一些缺陷:局部极小点问题;目标不可达问题。模糊逻辑算法不需精确的系统模型,可以根据模糊信息,针对环境知识总结出规则,但当环境复杂时,难以建立全面的规则库,规则库的建立和修改需要花费大量时间,且缺乏泛化能力。遗传算法基于自然选择和基因遗传的搜索算法,通过机器人对环境的逐渐适应,学会相应的避碰行为,但实时性差,且较难构造合适的适应度函数。强化学习具有简单且完整的理论,因此被广泛应用在机器人学中,但是多数应用在静态环境中,在动态环境中由于其有无穷的状态而使问题变得复杂。
人工免疫网络算法从信息处理的角度出发,把实际的机器人控制问题进行状态转化来定义抗原和抗体。该模型将机器人所探测到的周围物体的位置、方向以及内部的状态能量作为抗原,将针对当前机器人内部的各个基本动作作为抗体。基于人工免疫网络理论的自主路径发现与规划算法能够通过学习获取规则,具有很强的空间搜索能力和规则的发展与再学习能力,能够较快的从机器人的环境空间到命令空间做出满意的规划解集,具有较高的智能性。许多研究者应用人工免疫网络算法获取未知环境下移动机器人控制策略,实现复杂环境下移动机器人的路径规划。
2007年《Journal of Systemics,Cybernetics and Informatics》(系统学,控制论和信息学报)在5(2):43-50发表的《Dynamic Mobile Robot Navigation Using Potential Field BasedImmune Network》(基于势场免疫网络的移动机器人动态导航)提出一种基于势场免疫网络的算法用于存在移动障碍物和移动/固定目标点的未知环境下的移动机器人导航,实验结果验证了在存在单个、多个移动障碍物的未知环境中算法的可行性。2007年《电子与信息学报》在29(8):1987-1991发表的《基于免疫进化非选择机制的移动机器人路径规划算法研究》通过非选择操作来避免进化过程中糟糕个体的产生,使得较优个体能较早的生成,加快算法的收敛速度;同时算法引入基因重组操作以维持群体的多样性,防止“早熟收敛”,这种算法在障碍物完全已知的静态环境和部分已知的动态环境中均优于传统进化算法。2008年《AppliedSoft Computing》(应用软件计算机)在8(1):30-45发表的《An immunological approach to mobilerobot reactive navigation》(一种用于移动机器人导航的反应式免疫学方法)提出一种反应式免疫网络用于未知环境下的移动机器人导航,虚拟目标点法用于解决导航过程中的局部极小问题,在U形环境和一些易陷入局部极小点的环境中验证了算法的可行性。2008年《Proceedingsof the IEEE International Conference on Robotics,Automation and Mechatronics》(IEEE机器人、自动化和机电一体化国际会议论文集)在193-198发表的《Immune Network Algorithm Based onImproved APF for On-Line Dynamic Planning》(基于改进的人工势场免疫网络的在线动态规划算法)提出利用人工势场免疫网络算法解决未知环境下的在线路径规划,适应性的人工势场法用来初始化免疫网络算法,实验验证了环境中存在静止、移动的障碍物的在线路径规划的可行性。2008年《北京工业大学学报》在34(10):1116-1120发表的《基于人工免疫势场法的移动机器人路径规划》针对人工势场法和基本的遗传算法在解决移动机器人的路径规划问题时,容易产生目标不可达和局部极小值的问题,提出一种基于人工免疫势场法的移动机器人路径规划算法,将初始抗体群动态分配为记忆保留单元和临时抗体单元,通过交叉、变异和遗忘等算子进行进化操作,使较优抗体较早生成。2010年《Journal of Intelligent&RoboticSystems》(智能机器人系统学报)在60(1):111-131发表的《A novel immune network strategyfor robot path planning in complicated environments》(一种用于复杂环境下移动机器人路径规划的免疫网络策略)提出一种新的基于人工势场的免疫网络策略,它提高了免疫网络的收敛特性,并且利用马尔科夫链分析了算法的可行性。通过与其他算法之间的比较说明其在复杂环境下的路径规划中具有较高的收敛速率与较短的路径。2010年《Proceedings of the49th IEEEConference on Decision and Control》(第49届IEEE决策和控制国际会议论文集)在7178-7183发表的《Immuno-inspired heterogeneous mobile robotic systems》(启发式免疫异构移动机器人系统)提出利用免疫网络在布满障碍物的环境下进行搜索和救援,实验表明,搜索机器人可以有效地游走、避障、目标搜索和进行机器人之间的通信;救援机器人可以有效地避障并且到达目标点。2010年《International Journal of Robotics and Automation》(机器人和自动化国际学报)在1(1):1-25发表的《Navigation Control and Path Mapping of a Mobile Robot usingArtificial Immune Systems》(基于人工免疫系统的移动机器人导航控制和路径规划)利用抗体-抗体交互算法与负选择算法结合改进人工免疫系统控制器,在三种不同的实际环境中验证了控制器的可实现性。2010年《山东大学学报(理学版)》在45(7):122-126发表的《基于人工免疫网络的机器人局部路径规划》建立了人工免疫网络与机器人局部路径规划问题的映射关系。2011年《Procedia Computer Science》(Procedia计算机科学)在6:317-322发表的《Implementation of An Artificial Immune System on a Mobile Robot》(人工免疫系统在移动机器人中的实现)利用独特型人工免疫算法进行移动机器人导航,根据抗体和抗原之间的亲和度选择最终的抗体。2012《Procedia Engineering》(Procedia工程)在38:2663-2671发表的《Innate Immune based Path Planner of an Autonomous Mobile Robot》(基于固有免疫的自主移动机器人路径规划)提出基于固有免疫网络的机器人路径规划方法,引入了一个称为学习率的新参数,将机器人的传感器信息与预先定义的动作联系起来。CN101887271A公开了《一种移动机器人的路径规划方法》、CN101916312A公开了一种《基于人工免疫和蚁群算法结合的船舶航线智能生成方法》、CN103077425A公开了《一种用于AUV实时路径规划的免疫遗传算法》。人工免疫网络算法已被应用于移动机器人的路径规划问题。但是人工免疫网络算法存在抗体浓度解空间中部分或所有个体趋于同一极值的早熟收敛问题并且抗体的多样性降低,此时机器人会过早收敛于局部最优解。
2004年《电子学报》在32(11):1880-1884发表的《一种免疫单克隆策略算法》系统阐述了基于细胞克隆选择学说的单克隆算子,并将其用于进化策略,提出一种免疫单克隆策略算法,实现了全局优化与局部优化计算机制的有机结合;通过抗体与抗原之间的亲和度计算,促进和抑制抗体的产生,自适应地调节抗体群的克隆规模。2004年《计算机研究与发展》在41(4):571-576发表的《免疫多克隆策略》在免疫单克隆的基础上系统阐述了多克隆算子,基于Markov链的有关性质证明了免疫多克隆算法的收敛性,理论分析和仿真实验证明免疫多克隆算法可以有效克服传统人工免疫网络算法的早熟问题。
本发明将多克隆人工免疫网络应用于多移动机器人动态路径规划问题,考虑机器人之间的相互影响以及移动障碍物对机器人的影响,定义了抗体浓度的计算公式;通过克隆算子、交叉算子、变异算子和选择算子,增加了抗体的多样性,解决了传统人工免疫网络的早熟收敛问题;并通过引入记忆单元,不仅保存了特定环境抗原对应的特异性抗体,而且增加了特异性抗体的初始浓度,减少了响应时间,有效地实现了未知环境下多移动机器人动态路径规划。
发明内容
本发明针对传统人工免疫网络算法在未知环境下移动机器人路径规划应用中存在的早熟收敛问题,提出一种可以解决早熟收敛问题的用于多机器人动态路径规划的多克隆人工免疫网络算法,该方法将多克隆人工免疫网络应用于多移动机器人动态路径规划问题,考虑机器人之间的相互影响以及移动障碍物对机器人的影响,定义了抗体浓度的计算公式,通过克隆算子、交叉算子、变异算子和选择算子,增加了抗体的多样性,解决了传统人工免疫网络的早熟收敛问题;并通过引入记忆单元,不仅保存了特定环境抗原对应的特异性抗体,而且增加了特异性抗体的初始浓度,减少了响应时间,有效地实现了未知环境下多移动机器人动态路径规划。
本发明提出的用于多机器人动态路径规划的多克隆人工免疫网络算法,是一种改进的人工免疫网络算法,具体包括以下步骤:
(1)抗原表示:
机器人上配置的外传感器(如声纳传感器),感知周围环境信息,根据当前环境信息确定抗原,抗原表示机器人周围的环境信息,以利用外传感器获得的障碍物或目标点的方位信息(相对于机器人的运动方向)作为抗原,抗原决定簇表示机器人上配置的外传感器检测到的数据集,该数据集包括:在二维平面内,从机器人所在位置到障碍物所在位置的向量与机器人运动方向之间的夹角,以及从机器人所在位置到目标点所在位置的向量与机器人运动方向之间的夹角;抗原由八位二进制数表示,前四位表示从机器人所在位置到目标点所在位置的向量与机器人运动方向之间的夹角θrrg,后四位表示从机器人所在位置到障碍物所在位置的向量与机器人运动方向之间的夹角θrro,即Ag=(θrrgrro);
(2)人工免疫网络算法:
假设多移动机器人系统中有Nr个机器人,机器人的抗体Abi≡θi,i=1,2,...,NAb表示该机器人下一步可能的运动方向,将[0,2π]均匀离散化为NAb个区间,这样,每个机器人下一步的运动方向有NAb个选择,也就是,NAb是抗体数量;NAb越大,[0,2π]分得越细,机器人下一步可能运动方向的选择越多(有NAb个选择,分别为 θ i = 2 π N Ab ( i - 1 ) , i = 1,2 , . . . , N Ab );
设在某一时刻,机器人通过自身配置的外传感器(声纳传感器)得到环境信息,受到抗原刺激;同一机器人不同抗体之间存在相互刺激和抑制作用;不同机器人的抗体之间也存在相互刺激和抑制作用(通过通讯,机器人之间互相传递各自所有抗体的浓度),由于抗原刺激、相同机器人不同抗体之间以及不同机器人的抗体之间的相互刺激和抑制作用,引起抗体的浓度发生变化,其计算公式如下:
dA ri ( t ) dt = ( m ri - k ri ) a ri ( t ) + ( Σ l = 1 N r Σ j = 1 N Ab cos ( θ ri - θ lj ) a lj ) a ri ( t ) ,
a ri ( t ) = 1 1 + exp ( 0.5 - A ri ( t ) ) ,
其离散化形式为:
A ri ( n ) = A ri ( n - 1 ) + ( m ri - k ri ) a ri ( n - 1 ) + ( Σ l = 1 N r Σ j = 1 N Ab cos ( θ ri - θ lj ) a lj ) a ri ( n - 1 ) ,
a ri ( n ) = 1 1 + exp ( 0.5 - A ri ( n ) ) ,
其中,表示第r个机器人的第i个抗体θri的浓度变化率,i=1,2,...,NAb;ari表示第r个机器人的第i个抗体θri的浓度,NAb是抗体数量,θlj和alj分别表示前一时刻第l个机器人的第j个抗体θlj(第l个机器人的第j个可能运动方向)和其浓度(通过机器人之间的通讯得到);mri表示第r个机器人的第i个抗体θi与抗原Ag之间的亲和力,kri表示第r个机器人的第i个抗体θri的自然死亡系数,n为迭代次数,各抗体浓度初始化为 a ri ( 0 ) = 1 N Ab , i=1,2,...,NAb
第一个公式由三项组成,第一项表示来自抗原的刺激;第二项表示自然死亡率;第三项表示抗体之间相互的刺激和抑制作用,其中包括机器人自身抗体之间相互的刺激和抑制作用和不同机器人抗体之间相互的刺激和抑制作用,这符合抗体在机体内不是独立存在的生物原理;第二个公式保证抗体浓度的稳定性;通过多次迭代运算,各抗体的浓度逐渐收敛,抗体的浓度水平决定对给定的抗原选择哪个抗体,也就是,机器人识别抗原(环境信息),选择浓度最高的抗体对应的方向作为机器人下一步运动方向。
(3)多克隆算子:
当步骤(2)中人工免疫网络算法,求解得到的抗体浓度解空间中部分或全部个体趋于同一极值时(也就是步骤(2)中传统的人工免疫网络算法求得的某一机器人对应于部分或所有可能运动方向的抗体的浓度趋于一致时),对抗体浓度解空间进行多克隆操作;
多克隆算子模拟生物免疫系统的多克隆机理,不仅采用变异来实现抗体间的信息交换,而且还充分利用抗体在变化过程中已经获得的对抗原反应的特异性,进一步增加克隆的多样性;假设步骤(2)中人工免疫网络算法得到的该机器人浓度趋于同一极值的抗体有p个
θ r 1 * , · · · , θ rp * = arg θ ri max i ∈ { 1 , · · · N Ab } a ri ( t ) ,
首先将这p个抗体进行分裂,即抗体解空间中的一个点分裂成qc个相同的点每个抗体分裂的个数qc取决于该抗体与抗原之间的亲和力大小;然后,经过克隆交叉、克隆变异和克隆选择之后获得新的抗体种群;经过多克隆操作之后,抗体的多样性会增加,能够有效避免早熟收敛问题,这样,选择浓度最高的抗体作为最终的抗体,确定机器人的下一步的运动方向;
(4)记忆单元:
记忆单元根据生物中的二次免疫应答存储特异性抗体,并重新计算每一个抗体的初始浓度,记忆单元的引入不仅保存了特定环境抗原对应的特异性抗体,而且增加了特异性抗体的初始浓度,从而减少了响应时间;
记忆单元存储的是抗原以及与此抗原相对应的特异性抗体,对于多移动机器人动态路径规划问题,记忆单元存储的是机器人遇到的环境信息以及经多克隆免疫网络算法得到的与此环境信息相对应的机器人的下一步的运动方向;
在每一个记忆单元中,前八位二进制数表示为抗原Ag=(θrrgrro),后面的NAb位对应于NAb个抗体,机器人在外传感器获得环境信息建立了抗原Ag=(θrrgrro)后,首先判断记忆单元中是否存储有这一抗原,也就是以前是否遇到过这种环境,如果记忆单元中没有这种抗原Ag=(θrrgrro),则判断机器人第一次遇到这种环境,将这种环境对应的抗原Ag=(θrrgrro)存储到一个新的记忆单元中的前八位,该记忆单元后面的NAb位都初始化为0;并将各抗体浓度初始化为i=1,2,...,NAb,通过步骤(2)的人工免疫网络算法和步骤(3)的多克隆算子多次迭代得到了下一步的运动方向后(即浓度最高的抗体θrf(t)相对应的运动方向),则该记忆单元中后面的NAb位的第f位置为1,也就是,该记忆单元存储了与此抗原Ag=(θrrgrro)相对应的特异性抗体;
记忆单元中存储的数据格式为:
机器人在外传感器(声纳传感器)获得环境信息建立了抗原Ag=(θrrgrro)后,如果判断记忆单元中存储有这一抗原Ag=(θrrgrro),也就是以前遇到过这种环境,那么机器人将根据该记忆单元中这一抗原所对应的特异性抗体的情况计算各抗体初始浓度,对于i=1,2,...,NAb
其中MC是一个与记忆单元有关的常数,MC=0.01,这样,增加了以前遇到过得抗原Ag=(θrrgrro)的特异性抗体的初始浓度,减少非特异性抗体的初始浓度;接着,通过步骤(2)的人工免疫网络算法和步骤(3)的多克隆算子多次迭代得到了下一步的运动方向后(即浓度最高的抗体θrf(t)相对应的运动方向),则该记忆单元中后面的NAb位的第f位置为1(如果此前该记忆单元的相应位为0的话,则置1;如果此前该记忆单元的相应位为1,则仍为1)(也就是,记忆单元中后面的NAb位可能多个位为1,表示记忆单元中存储的与某抗原Ag=(θrrgrro)相对应的特异性抗体可能有多个);
(5)选择浓度最高的抗体对应的运动方向作为机器人下一步的运动方向前进一步:
选择浓度最高的抗体作为最终的抗体,并将该抗体对应的运动方向作为机器人下一步的运动方向,前进一步,前进一步后,若机器人与目标点之间的距离小于10cm(预设值,若小于此预设值,说明机器人已经达到了目标点),结束;否则,机器人继续通过自身配置的外传感器获取新的环境信息,继续步骤(1)。
本发明将多克隆人工免疫网络算法应用于多移动机器人动态路径规划,考虑机器人之间的相互影响以及移动障碍物对机器人运动方向的影响,定义了抗体浓度的计算公式;多克隆算子增加了抗体的多样性,解决了传统人工免疫网络中的早熟收敛问题;通过引入记忆单元,不仅保存了特定环境下的特异性抗体,而且增加了特异性抗体的初始浓度,从而减少了响应时间。仿真实验表明,与传统的人工免疫网络算法相比,多克隆人工免疫网络算法,特别是引入了记忆单元的多克隆人工免疫网络算法能够使得多移动机器人在存在动态移动障碍物和目标点的未知环境中,以较短的时间、较少的移动步数达到目标点,有效实现多移动机器人的动态路径规划。
附图说明
图1是基于本发明的多克隆人工免疫网络算法进行多机器人动态路径规划的原理图。
图2是机器人上配置声纳传感器的分布示意图。
图3是本发明中的抗原表示示意图。
图4是出现早熟收敛问题时基于传统的人工免疫网络算法和基于多克隆人工免疫网络算法的路径规划示意图。(a)基于传统的人工免疫网络算法的路径规划,(b)基于多克隆人工免疫网络算法的路径规划。
图5是单个机器人在动态环境下基于传统的人工免疫网络算法、多克隆人工免疫网络算法、基于引入记忆单元的多克隆人工免疫网络算法的路径规划示意图。(a)基于传统的人工免疫网络算法的路径规划,(b)基于多克隆人工免疫网络算法的路径规划,(c)基于引入记忆单元的多克隆人工免疫网络算法的路径规划。
图6是单个机器人在动态环境下基于传统的人工免疫网络算法、基于多克隆人工免疫网络算法、基于引入记忆单元的多克隆人工免疫网络算法的路径规划的路径长度比较示意图。
图7是多移动机器人在动态环境下基于传统的人工免疫网络算法、多克隆人工免疫网络算法、引入记忆单元的多克隆人工免疫网络算法的路径规划示意图。(a)基于传统的人工免疫网络算法的路径规划,(b)基于多克隆人工免疫网络算法的路径规划,(c)基于引入记忆单元的多克隆人工免疫网络算法的路径规划。
图8是记忆单元的功能示意图。(a)机器人两次遇到同样的环境时,基于引入记忆单元的多克隆人工免疫网络算法所得到的路径,(b)初始响应和二次响应的抗体初始浓度比较。
具体实施方式
本发明是用于多移动机器人动态路径规划的多克隆人工免疫网络算法,该算法基于人工免疫网络原理定义抗原和抗体,抗原表示机器人当前的周围环境信息,抗原决定簇表示从机器人自身配置的声纳传感器数据中获得的周围障碍物和目标点的方位角相对于机器人运动方向的角度,抗体表示机器人下一步的运动方向。针对多移动机器人动态路径规划问题,考虑机器人之间的相互影响以及移动障碍物对机器人方向选择的影响,在动态离散免疫网络模型基础上,定义了用于多移动机器人动态路径规划的多克隆人工免疫网络算法中抗体浓度的计算公式;另外,通过引入记忆单元不仅保存特定环境抗原对应的抗体,而且增加了特异性抗体的初始浓度,记忆功能改变每一个抗体的初始浓度,增加特异性抗体的浓度,从而减少了再次遇到同样抗原(也就是以前见过的类似环境)时的响应时间。本发明所提出的多克隆人工免疫网络算法,特别是引入记忆单元的多克隆人工免疫网络算法,能够使得多移动机器人在存在动态移动障碍物和目标点的未知环境中,以较短的时间、较少的移动步数达到目标点,有效地实现了未知环境下多移动机器人动态路径规划。
图1给出了本发明提出的基于多克隆人工免疫网络算法的路径规划的原理图。
1.抗原抗体表示
假设在机器人上均匀配置了NS个声纳传感器,如图2所示。声纳传感器可以感知机器人周围的环境信息,根据当前的环境信息进一步确定抗原,抗原表示机器人周围的环境信息,抗原决定簇表示从机器人自身配置的声纳传感器数据中获得的周围障碍物和目标点的方位角相对于机器人运动方向的角度,也就是:在二维平面内,从机器人所在位置到障碍物所在位置的向量与机器人运动方向之间的夹角,以及从机器人所在位置到目标所在位置的向量与机器人运动方向之间的夹角。抗原的表示如图3所示。θrrg表示从机器人所在位置到目标点所在位置的向量与机器人运动方向之间的夹角,θrro表示从机器人所在位置到障碍物所在位置的向量与机器人运动方向之间的夹角;θg表示目标点的方位角,0≤θrrgrrog≤2π。抗原由八位二进制数表示,前四位表示θrrg,后四位表示θrro,即Ag={θrrgrro}。θrrg的二进制表示如表1所示,θrro的二进制表示与θrrg的二进制表示类似。
表1θrrg的二进制表示
机器人的抗体Abi≡θi,i=1,2,...,NAb表示该机器人下一步可能的运动方向,将[0,2π]均匀离散化为NAb个区间,这样,每个机器人下一步的运动方向有NAb个选择,也就是,0≤θi≤2π,NAb是抗体数量。NAb越大,[0,2π]分得越细,机器人下一步可能运动方向的选择越多(有NAb个选择,分别为)。机器人选择浓度最高的抗体所对应的运动方向作为下一步的运动方向,执行运动。
2.人工免疫网络算法
本发明主要用于解决多移动机器人动态环境下的路径规划问题,在路径规划的过程中机器人将系统中的其余机器人视为移动的障碍物,每一个移动机器人的动作策略,即移动方向的选择策略,采用多克隆人工免疫网络算法进行计算。
设在某一时刻,机器人通过自身配置的声纳传感器得到环境信息,受到抗原刺激;同一机器人不同抗体之间存在相互刺激和抑制作用;不同机器人的抗体之间也存在相互刺激和抑制作用(通过通讯,机器人之间互相传递各自所有抗体的浓度)。由于抗原刺激、相同机器人不同抗体之间、不同机器人的抗体之间的相互刺激和抑制作用,引起抗体的浓度发生变化,其计算公式如下:
dA ri ( t ) dt = ( m ri - k ri ) a ri ( t ) + ( Σ l = 1 N r Σ j = 1 N Ab cos ( θ ri - θ lj ) a lj ) a ri ( t ) ,
a ri ( t ) = 1 1 + exp ( 0.5 - A ri ( t ) ) ,
其离散化形式为:
A ri ( n ) = A ri ( n - 1 ) + ( m ri - k ri ) a ri ( n - 1 ) + ( Σ l = 1 N r Σ j = 1 N Ab cos ( θ ri - θ lj ) a lj ) a ri ( n - 1 ) ,
a ri ( n ) = 1 1 + exp ( 0.5 - A ri ( n ) ) ,
其中,表示第r个机器人的第i个抗体θri的浓度变化率,i=1,2,...,NAb;ari表示第r个机器人的第i个抗体θri的浓度,NAb是抗体数量,θlj和alj分别表示前一时刻第l个机器人的第j个抗体θlj(第l个机器人的第j个可能运动方向)和其浓度(通过机器人之间的通讯得到);mri表示第r个机器人的第i个抗体θi与抗原Ag之间的亲和力,kri表示第r个机器人的第i个抗体θri的自然死亡系数,n为迭代次数,各抗体浓度初始化为 a ri ( 0 ) = 1 N Ab , i=1,2,...,NAb
第一个公式由三项组成,第一项表示来自抗原的刺激;第二项表示自然死亡率;第三项表示抗体之间相互的刺激和抑制作用,其中包括机器人自身抗体之间相互的刺激和抑制作用和不同机器人抗体之间相互的刺激和抑制作用,这符合抗体在机体内不是独立存在的生物原理;第二个公式保证抗体浓度的稳定性。通过多次迭代计算,各抗体的浓度逐渐收敛,抗体的浓度水平决定对给定的抗原选择哪个抗体,也就是,机器人识别抗原(环境信息),选择浓度最高的抗体对应的方向作为机器人下一步运动方向。
在计算第r个机器人的第i个抗体θi与抗原Ag之间的亲和力mri时,该机器人将其他机器人视为移动的障碍物,计算公式如下所示:
m ri = ω 1 F goal ri + ω 2 F obs ri + ω 3 F rr ri
其中,表示第r个机器人的第i个抗体θri(第i个可能的运动方向选择)受到的来自目标点的引力,表示第r个机器人的第i个抗体θri(第i个可能的运动方向选择)受到的来自障碍物的斥力,表示第r个机器人的第i个抗体θri(第i个可能的运动方向选择)受到的来自其他机器人之间的斥力,ω123为权重值,0≤ω123≤1,ω123=1,ω123的大小反映了对于mri的影响大小,也就是,在计算第r个机器人的抗原与抗体θri之间亲和力mri的过程中需要综合考虑来自目标点的引力、来自障碍物的斥力以及来自其他机器人的斥力的影响。
第r个机器人的θri受到的来自目标点的引力计算公式如下所示:
F goal ri = 1.0 + cos ( θ ri - θ rg ) 2.0 ,
其中,θrg表示目标点相对于第r个机器人所在位置的方位角,当θrirg时,即第r个机器人的第i个可能的运动方向与目标点方向一致时,目标点对于机器人的吸引力最大,等于1;当θrirg=π时,即第r个机器人的第i个可能的运动方向与目标点方向相反时,目标点对于机器人的吸引力最小,等于零。
机器人上均匀配置了NS个声纳传感器,每个声纳传感器可以感知到其有效感知范围内的障碍物,从声纳数据中,可以获得机器人周围所有障碍物、其他机器人的方位角信息和距离信息。
第r个机器人的θri受到的来自障碍物的斥力需要考虑所有NS个声纳传感器所探测到的障碍物,的计算公式如下所示:
F obs ri = Σ j = 1 N S α ij d ‾ rj
其中,αij=exp(-NS×(1.0-δij)),
δ ij = ( 1.0 + cos ( θ ri - θ S rj ) ) / 2.0 .
表示第j个传感器相对于第r个机器人正前方的方位角,αij表示第r个机器人的第i个可能的运动方向θri与第j个传感器相对于第r个机器人正前方的方位角之间的关系系数,δij表示第r个机器人第j个传感器相对于第r个机器人正前方的方位角对第r个机器人第i个可能的运动方向θri的影响程度,当时,δij=1.0,αij=1.0;当时,δij=0,αij=exp(-NS)。也就是,当第j个传感器所检测到的障碍物的方位越接近机器人可能的移动方向时,δij越大,该障碍物对机器人的影响程度越大,δij越小表明越接近机器人的移动方向的传感器得到的障碍物对机器人的影响程度越小。表示第r个机器人第j个传感器与其所探测到的障碍物之间的规范化距离,采用模糊集理论计算,建立三个模糊规则,
if d rj is S , then y = 0.25 if d rj is M , then y = 0.5 if d rj is D , then y = 1.0
drj表示第r个机器人第j个传感器与其所探测到的障碍物之间的距离,为模糊输入;y为输出。模糊集S,M,D分别表示安全、中等、危险,drj在三个模糊集S,M,D的隶属函数分别定义为:
&mu; S = 0 , d rj &le; d mean d rj - d mean d max - d mean , d mean < d rj &le; d max 1 , d rj > d max ,
&mu; M = 0 , d rj &le; d min d rj - d min a mean - d min , d min < d rj &le; d mean d max - d rj d max - d mean , d mean < d rj &le; d max 0 , d rj > d max ,
&mu; D = 1 , d rj &le; d min d mean - d rj d mean - d min , d min < d rj &le; d mean 0 , d rj > d mean .
其中,dmin表示声纳传感器检测到障碍物的危险临界距离,若drj≤dmin,则μD(drj)=1;dmax表示声纳传感器检测到障碍物的最远距离,在仿真实验中,dmin=0.3m,dmax=3.0m,dmean=(dmin+dmax)/2=1.65m。
这样,drj所对应的规范化距离的计算公式如下:
d &OverBar; rj = &mu; S ( d rj ) &times; 0.25 + &mu; M ( d rj ) &times; 0.5 + &mu; D ( d rj ) &times; 1.0 &mu; S ( d rj ) + &mu; M ( d rj ) + &mu; D ( d rj ) .
显然,drj≤dmin时,drj所对应的的规范化距离最大,
第r个机器人的θri受到的来自周围其他机器人的力需要考虑所有NS个声纳传感器所探测到的机器人对该机器人的斥力影响,
F rri = &Sigma; j = 1 N S F rri j .
针对多移动机器人动态路径规划问题,根据第r个机器人以及第r个机器人的第j个传感器探测到的机器人到目标点的距离,定义了以下三种情况:
其中,drg为第r个机器人到目标点的距离,drjg为第r个机器人的第j个传感器探测到的机器人到目标点的距离,△为一预设值,△=0.1m。上述公式表示,如果第r个机器人的第j个传感器探测到的机器人已经达到目标点,那么第r个机器人不受第r个机器人的第j个传感器探测到的机器人斥力的影响;或者,如果第r个机器人已处于距离目标点较近的区域(drg<dr,dr=1m),且,第r个机器人距离目标点比第r个机器人的第j个传感器探测到的机器人距离目标点近,那么,第r个机器人不受第r个机器人的第j个传感器探测到的机器人斥力的影响;其他情况,第r个机器人都要受到第r个机器人的第j个传感器探测到的机器人斥力的影响,其计算公式中的αij与前面计算障碍物的斥力的情况同样。
这样,在某一时刻,每一个机器人根据自身所配置的声纳传感器所获得的数据以及通讯数据,计算表示当前周围环境信息的抗原(包括周围障碍物、其他机器人以及目标点的信息),根据传统的人工免疫网络算法,计算NAb个抗体(即NAb个可能的运动方向)的当前浓度值,选择浓度值最大的抗体所代表的运动方向作为机器人下一步的运动方向。
3.多克隆算子
本发明提出,如果按照前面步骤(2)中传统的人工免疫网络算法求解得到的抗体浓度解空间中的部分或所有个体趋于同一极值或出现局部极小点的情况时(也就是,传统的人工免疫网络求得的机器人的多个或所有可能运动方向对应的抗体的浓度值趋于同一极值时),对抗体解空间进行多克隆操作。
多克隆算子模拟生物免疫系统的多克隆机理,不仅采用变异来实现抗体间的信息交换,而且还充分利用抗体在变化过程中已经获得的对抗原反应的特异性,进一步增加克隆的多样性。假设前面步骤(2)中传统的人工免疫网络算法得到的该机器人浓度趋于同一极值的抗体有p个
&theta; r 1 * , . . . , &theta; rp * = arg &theta; ri max i &Element; { 1 , . . . N Ab } a ri ( t )
首先将这抗体p个进行分裂,即抗体解空间中的一个点分裂成qc个相同的点每个抗体分裂的个数qc取决于该抗体与抗原之间的亲和力mri大小;然后,经过克隆交叉、克隆变异和克隆选择之后获得新的抗体种群。经过多克隆操作之后,抗体的多样性会增加,能够有效避免早熟收敛问题,这样,选择浓度最高的抗体作为最终的抗体,确定机器人的下一步的运动方向。
为了方便实现克隆交叉、克隆变异,种群中的抗体(转化为0~1之间的小数,并表示为16位二进制数)。多克隆算子将抗体解空间中的一个点分裂成qc个相同的点经过克隆交叉、克隆变异和克隆选择之后获得新的抗体种群。抗体群的状态转移情况可以表示成如下的随机过程:
设抗体群为抗体的p元组,p表示初始抗体种群的规模,A(0)表示进行多克隆操作之前的抗体群,A(1)表示进行多克隆操作之后的抗体群。
①克隆算子:将抗体解空间中的一个点分裂成qc个相同的点
q c = Int ( N &times; m c &Sigma; j = 1 p m j ) , c = 1,2 , . . . , p ,
其中N>p是与克隆规模有关的设定值,本发明中N=320,p表示初始抗体种群的规模,qc为抗体的克隆规模。Int为取整函数。mc表示抗体与抗原之间的亲和力。克隆过后,种群变为:
B(0)={A,A'1,A'2,...,A'p},
其中,
A c &prime; = { &theta; rc 1 * , &theta; rc 2 * , . . . , &theta; rcq c - 1 * } ,
&theta; rcj * = &theta; rc * , j=1,2,...,qc-1,
②克隆交叉算子克隆交叉为了保留原始种群的信息,并不作用到A。以交叉概率Pc=0.8,在抗体种群B(0)中选择抗体对于随机选择交叉点,即对于 &theta; ri * = { x 1 , x 2 , . . . , x m } , &theta; rj * { y 1 , y 2 , . . . , y m } , m=16,
T r c ( &theta; ri * , &theta; rj * ) = { x 1 , . . . , x j , y 1 , . . . , y k } , j + k = m .
这样,得到抗体种群C(0),交叉可以保证解空间的搜索不会因高适应度个体而过早收敛,使搜索更加强壮。
③克隆变异算子克隆变异为了保留原始种群的信息,也不作用于A。以变异概率Pm=0.03,对抗体种群C所选抗体的每一位产生[0,1]之间的一个随机数Rand(0,1),若Rand(0,1)<Pm,则该位取反。这样,得到抗体种群D(0)={A,D'1,D'2,...,D'p},其中, D c &prime; = { d c 1 , d c 2 , . . . , d cq c - 1 } , c=1,…,p。
④克隆选择算子 若存在变异后的抗体 b = arg d cj max { m ( d cj ) | j = 1,2 , . . . , q c - 1 } , 使得
m ( &theta; rc * ) < m ( b ) , &theta; rc * &Element; A
则用b取代原抗体种群A中抗体从而更新抗体群,获得多克隆操作之后的抗体群A(1),实现信息交换。
多克隆算法的实质是在一代进化中,在侯选解附近,根据亲合度的大小产生一个新的子群体,扩大了搜索范围;免疫多克隆算子还实现了子群之间的信息交换,提高了克隆的多样性。进一步可以认为,克隆是将一个低维空间(p维)的问题转化到更高维(N维)的空间中解决,然后将结果投影到低维(p维)空间中。因此,多克隆算子增加了抗体的多样性,这也就是其可以用于解决早熟收敛问题和局部极小点问题的原因所在。
4.记忆单元
生物体识别入侵的抗原主要通过两种相关的免疫系统:先天性免疫系统和获得性免疫系统(特异性免疫系统)。获得性免疫系统又可以分为两类:初次免疫应答和二次免疫应答。
初次免疫应答发生在免疫系统遭遇某种病原体第一次入侵时。此时免疫系统对感染产生大量抗体,帮助消除体内抗体。初次应答学习过程很慢,发生在初次感染的前几天,通常要用几周时间清除感染。
在初次免疫应答后,免疫系统首次遭遇异体物质且该物质已经被清除体外,但免疫系统中仍保留一定数量的B细胞,作为免疫记忆细胞。这使得免疫系统能够在再次遭遇异物后仍能快速反应并反击抗原,这个过程称为二次免疫应答。二次应答更迅速,无需重新学习。二次免疫应答对引起初始免疫反应及造成免疫系统B细胞和抗体数量迅速增加的抗原是特异性的。这种二次免疫应答要归功于免疫系统内存留的B细胞,这样当抗原或类似抗原再次入侵时,不在重新生成抗体,应为已经有抗体存在了,这意味着身体准备抗击一切再感染。二次免疫反应具有以下特点:①产生抗体所用时间短;②抗体数量多;③抗体维持时间长。
记忆单元根据生物中的二次免疫应答存储特异性抗体并重新计算每一个抗体的初始浓度,记忆单元的引入不仅保存了特定环境抗原对应的特异性抗体,而且增加了特异性抗体的初始浓度,从而,减少了响应时间。
记忆单元存储的是抗原以及与此抗原相对应的特异性抗体,本发明中,对于多移动机器人动态路径规划问题,记忆单元存储的是机器人遇到的环境信息以及经多克隆免疫网络算法得到的与此环境信息相对应的机器人的下一步的运动方向。
在每一个记忆单元中,前八位二进制数表示为抗原Ag=(θrrgrro),后面的NAb位对应于NAb个抗体。机器人在声纳传感器获得环境信息建立了抗原Ag=(θrrgrro)后,首先判断记忆单元中是否存储有这一抗原,也就是以前是否遇到过这种环境,如果记忆单元中没有这种抗原Ag=(θrrgrro),可以判断机器人第一次遇到这种环境,将这种环境对应的抗原Ag=(θrrgrro)存储到一个新的记忆单元中的前八位,该记忆单元后面的NAb位都初始化为0;并将各抗体浓度初始化为i=1,2,...,NAb,通过多克隆免疫网络算法(包括步骤(2)和步骤(3))多次迭代得到了下一步的运动方向后(即浓度最高的抗体θrf(t)相对应的运动方向),则该记忆单元中后面的NAb位的第f位置为1。也就是,该记忆单元存储了与此抗原Ag=(θrrgrro)相对应的特异性抗体。
记忆单元中存储的数据格式为:
机器人在声纳传感器获得环境信息建立了抗原Ag=(θrrgrro)后,如果判断记忆单元中存储有这一抗原Ag=(θrrgrro),也就是以前遇到过这种环境,那么机器人将根据该记忆单元中这一抗原所对应的特异性抗体的情况计算各抗体初始浓度,对于i=1,2,...,NAb
其中MC是一个与记忆单元有关的常数,MC=0.01。这样,增加了以前遇到过得抗原Ag=(θrrgrro)的特异性抗体的初始浓度,减少非特异性抗体的初始浓度。接着,通过多克隆免疫网络算法(包括步骤(2)和步骤(3))多次迭代得到了下一步的运动方向后(即浓度最高的抗体θrf(t)相对应的运动方向),则该记忆单元中后面的NAb位的第f位置为1(如果此前该记忆单元的相应位为0的话,则置1;如果此前该记忆单元的相应位为1,则仍为1)。也就是,记忆单元中后面的NAb位可能多个位为1,表示记忆单元中存储的与某抗原Ag=(θrrgrro)相对应的特异性抗体可能有多个。
5.基于引入记忆单元的多克隆人工免疫网络算法的多移动机器人动态路径规划
5.1基于引入记忆单元的多克隆人工免疫网络算法的多移动机器人动态路径规划的步骤
步骤1:初始化,包括环境定义、障碍物设定、机器人初始位置设定、目标点设定、各参数设定;
步骤2:外传感器检测机器人周围的环境信息;
步骤3:判断是否检测到障碍物,若检测到障碍物计算抗原表示,若抗原为第一次出现转到步骤4,否则转到步骤5,若没有检测到障碍物转到步骤4;
步骤4:机器人各抗体的初始浓度定义为相同值机器人通过自身配置的声纳传感器得到环境信息,受到抗原刺激;同一机器人不同抗体之间存在相互刺激和抑制作用;不同机器人的抗体之间也存在相互刺激和抑制作用(通过通讯,机器人之间互相传递各自所有抗体的浓度)。由于抗原刺激、相同机器人不同抗体之间、不同机器人的抗体之间的相互刺激和抑制作用,引起抗体的浓度发生变化,根据传统人工免疫网络算法迭代计算每一个机器人每一个抗体的浓度,若抗体浓度解空间中的部分或所有个体趋于同一个极值,跳转到步骤6,进行多克隆操作;若解空间中存在浓度最高的抗体,根据选择的抗体(可能运动方向的选择)计算下一时刻的位置,若下一时刻的位置使得机器人陷入局部极小点,转到步骤6,否则转到步骤7;
步骤5:抗原不是第一次出现时,根据记忆单元中这一抗原所对应的特异性抗体的情况计算各抗体初始浓度,增加特异性抗体的初始浓度,降低其余抗体的初始浓度,根据传统人工免疫网络算法迭代计算每一个机器人每一个抗体的浓度,若抗体浓度解空间中的部分或所有个体趋于同一个极值,跳转到步骤6,进行多克隆操作;若解空间中存在浓度最高的抗体,根据选择的抗体(可能运动方向的选择)计算下一时刻的位置,若下一时刻的位置使得机器人陷入局部极小点,转到步骤6,否则转到步骤7;
步骤6:当传统人工免疫网络算法迭代计算的抗体浓度解空间中的部分或所有个体趋于同一个极值,对人工免疫网络的解空间进行多克隆操作,通过克隆、克隆交叉、克隆变异和克隆选择保持了原始种群的特性,并在此基础上增加了抗体的多样性,经过多克隆操作后选择浓度最大的抗体作为最终的抗体,转到步骤7;
步骤7:如果记忆单元中没有这种抗原,可以判断机器人第一次遇到这种环境,将这种环境对应的抗原Ag=(θrrgrro)存储到一个新的记忆单元中的前八位,通过多克隆免疫网络算法(步骤(4)、步骤(5)、步骤(6))多次迭代得到了下一步的运动方向后,则该记忆单元中后面的NAb位的相应位置为1。从而,该记忆单元存储了与此抗原Ag=(θrrgrro)相对应的特异性抗体。根据计算得到的浓度最大的抗体确定机器人下一步的运动方向,机器人前进一步;
步骤8:判断机器人与目标点之间的距离,若机器人与目标点之间的距离小于10cm(预设值,若机器人与目标点之间的距离小于此值说明已经机器人达到了目标点),结束;否则,转到步骤2。
5.2仿真实验和结果分析
在基于MATLAB GUI建立的路径规划仿真界面上进行仿真实验。其中机器人起始位置表示为黑色三角,目标点表示为黑色的五星,障碍物表示为黑色方块,白色区域表示没有障碍物的区域,障碍物分布和运动对于移动机器人来说是未知的。
设定了四组实验进行比较说明。
第一组实验是关于早熟收敛问题,将基于传统人工免疫网络算法的路径和基于多克隆人工免疫网络算法的路径进行比较。如图4(a)所示,传统人工免疫网络算法遇到了早熟收敛问题,解空间中各个抗体的浓度相等,机器人向各个方向运动概率是相等的,此时机器人随机选择其中的一个方向作为下一步的运动方向,很有可能出现误动作,如图4(a)中圆圈处所示。图4(b)在相同环境下用多克隆人工免疫网络算法对移动机器人进行路径规划,其中的多克隆操作可以增加抗体的多样性,进而克服早熟收敛问题,此时机器人选择浓度最大的抗体(方向角)作为下一步的运动方向,可以成功实现路径规划。
第二组实验为动态环境下单个机器人基于传统的人工免疫网络算法、基于多克隆人工免疫网络算法、基于引入记忆单元的多克隆人工免疫网络算法的路径规划性能的比较。图5(a)为基于传统的人工免疫网络算法的移动机器人路径规划,图5(b)为基于多克隆人工免疫网络算法的移动机器人路径规划,图5(c)为基于引入记忆单元的多克隆人工免疫网络算法的移动机器人路径规划。三种算法在相同环境下进行路径规划的路径长度比较如图6所示。由图6可以看出,基于引入记忆单元的多克隆人工免疫网络算法的路径规划的路径长度比基于多克隆人工免疫网络算法的路径规划和基于传统人工免疫网络算法的路径规划的路径长度要短。
在基于三种算法的路径规划过程中,机器人从起始位置到目标位置的时间比较如表2所示。引入记忆单元的多克隆人工免疫网络算法的路径规划时间要比传统人工免疫网络算法和多克隆人工免疫网络算法的路径规划时间短。由此可见,在动态路径规划过程中,引入记忆单元的多克隆人工免疫网络算法不仅导航路径较优,而且所需路径规划时间也较短。
表2三种算法单个机器人动态路径规划时间的比较
第三组实验为多移动机器人在动态环境下基于传统的人工免疫网络算法、基于多克隆人工免疫网络算法、基于引入记忆单元的多克隆人工免疫网络算法的路径规划性能的比较。图7(a)为基于传统的人工免疫网络算法的多移动机器人路径规划,图7(b)为基于多克隆人工免疫网络算法的多移动机器人路径规划,图7(c)为基于引入记忆单元的多克隆人工免疫网络算法的多移动机器人路径规划。表三为三种算法实现多移动机器人动态路径规划所需时间的比较,基于引入记忆单元的多克隆人工免疫网络算法的路径规划时间比传统的人工免疫网络算法和多克隆人工免疫网络算法的路径规划时间短。
表3三种算法多机器人动态路径规划时间的比较
第四组实验用于验证本发明提出的引入记忆单元的多克隆人工免疫网络算法的优势。图8(a)中的机器人在A、B点处遇到的抗原相同,在这两点处的初始浓度如图8(b)所示,可以看出,再次遇到相同抗原时,特异性抗体的初始浓度大于第一次遇到抗原时的抗体初始浓度,也大于遇到相同抗原时的非特异性抗体的初始浓度。在A、B两点,机器人的运动方向如图8(a)所示,初次免疫应答和二次免疫应答的初始浓度和响应时间比较分别如图8(b)和表4所示。由表4可以看出,二次免疫应答(再次遇到相同抗原)的响应时间比一次免疫应答(首次遇到抗原)的响应时间短。
表4免疫应答响应时间比较
免疫应答 初次免疫应答 二次免疫应答
免疫响应时间(s) 0.028 0.018
由此可见,本发明提出的引入记忆单元的多克隆人工免疫网络算法可以成功实现未知复杂动态环境下多移动机器人的路径规划,以较短的路径规划时间获得较优的无碰路径。

Claims (1)

1.一种用于多机器人动态路径规划的多克隆人工免疫网络算法,其特征是,包括以下步骤:
(1)抗原表示:
机器人上配置的外传感器,感知周围环境信息,根据当前环境信息确定抗原,抗原表示机器人周围的环境信息,以利用外传感器获得的障碍物或目标点的方位信息作为抗原,抗原决定簇表示机器人上配置的外传感器检测到的数据集,该数据集包括:在二维平面内,从机器人所在位置到障碍物所在位置的向量与机器人运动方向之间的夹角,以及从机器人所在位置到目标点所在位置的向量与机器人运动方向之间的夹角;抗原由八位二进制数表示,前四位表示从机器人所在位置到目标点所在位置的向量与机器人运动方向之间的夹角θrrg,后四位表示从机器人所在位置到障碍物所在位置的向量与机器人运动方向之间的夹角θrro,即Ag=(θrrgrro);
(2)人工免疫网络算法:
假设多移动机器人系统中有Nr个机器人,机器人的抗体Abi≡θi,i=1,2,...,NAb表示该机器人下一步可能的运动方向,将[0,2π]均匀离散化为NAb个区间,这样,每个机器人下一步的运动方向有NAb个选择,也就是,NAb是抗体数量;NAb越大,[0,2π]分得越细,机器人下一步可能运动方向的选择越多,有NAb个选择,分别为 &theta; i = 2 &pi; N A b ( i - 1 ) , i = 1 , 2 , ... , N A b ;
设在某一时刻,机器人通过自身配置的外传感器得到环境信息,受到抗原刺激;同一机器人不同抗体之间存在相互刺激和抑制作用;不同机器人的抗体之间也存在相互刺激和抑制作用,由于抗原刺激、相同机器人不同抗体之间以及不同机器人的抗体之间的相互刺激和抑制作用,引起抗体的浓度发生变化,其计算公式如下:
dA r i ( t ) d t = ( m r i - k r i ) a r i ( t ) + ( &Sigma; l = 1 N r &Sigma; j = 1 N A b cos ( &theta; r i - &theta; l j ) a l j ) a r i ( t ) ,
a r i ( t ) = 1 1 + exp ( 0.5 - A r i ( t ) ) ,
其离散化形式为:
A r i ( n ) = A r i ( n - 1 ) + ( m r i - k r i ) a r i ( n - 1 ) + ( &Sigma; l = 1 N r &Sigma; j = 1 N A b cos ( &theta; r i - &theta; l j ) a l j ) a r i ( n - 1 ) ,
a r i ( n ) = 1 1 + exp ( 0.5 - A r i ( n ) ) ,
其中,表示第r个机器人的第i个抗体θri的浓度变化率,i=1,2,...,NAb;ari表示第r个机器人的第i个抗体θri的浓度,NAb是抗体数量,θlj和alj分别表示前一时刻第l个机器人的第j个抗体θlj和其浓度;mri表示第r个机器人的第i个抗体θri与抗原Ag之间的亲和力,kri表示第r个机器人的第i个抗体θri的自然死亡系数,n为迭代次数,各抗体浓度初始化为 a r i ( 0 ) = 1 N A b , i = 1 , 2 , ... , N A b ;
第一个公式 dA r i ( t ) d t = ( m r i - k r i ) a r i ( t ) + ( &Sigma; l = 1 N r &Sigma; j = 1 N A b cos ( &theta; r i - &theta; l j ) a l j ) a r i ( t ) 由三项组成,第一项mriari(t)表示来自抗原的刺激;第二项kriari(t)表示自然死亡率;第三项表示抗体之间相互的刺激和抑制作用,其中包括机器人自身抗体之间相互的刺激和抑制作用和不同机器人抗体之间相互的刺激和抑制作用,这符合抗体在机体内不是独立存在的生物原理;第二个公式保证抗体浓度的稳定性;通过多次迭代运算,各抗体的浓度逐渐收敛,抗体的浓度水平决定对给定的抗原选择哪个抗体,也就是,机器人识别抗原,选择浓度最高的抗体对应的方向作为机器人下一步运动方向;
(3)多克隆算子:
当步骤(2)中人工免疫网络算法,求解得到的抗体浓度解空间中部分或全部个体趋于同一极值时,对抗体浓度解空间进行多克隆操作;
多克隆算子模拟生物免疫系统的多克隆机理,不仅采用变异来实现抗体间的信息交换,而且还充分利用抗体在变化过程中已经获得的对抗原反应的特异性,进一步增加克隆的多样性;假设步骤(2)中人工免疫网络算法得到的该机器人浓度趋于同一极值的抗体有p个
&theta; r 1 * , ... , &theta; r p * = arg &theta; r i m a x i &Element; { 1 , ... N A b } a r i ( t ) ,
首先将这p个抗体进行分裂,即抗体解空间中的一个点分裂成qc个相同的点每个抗体分裂的个数qc取决于该抗体与抗原之间的亲和力大小;然后,经过克隆交叉、克隆变异和克隆选择之后获得新的抗体种群;经过多克隆操作之后,抗体的多样性会增加,能够有效避免早熟收敛问题,这样,选择浓度最高的抗体作为最终的抗体,确定机器人的下一步的运动方向;
(4)记忆单元:
记忆单元根据生物中的二次免疫应答存储特异性抗体,并重新计算每一个抗体的初始浓度,记忆单元的引入不仅保存了特定环境抗原对应的特异性抗体,而且增加了特异性抗体的初始浓度,从而减少了响应时间;
记忆单元存储的是抗原以及与此抗原相对应的特异性抗体,对于多移动机器人动态路径规划问题,记忆单元存储的是机器人遇到的环境信息以及经多克隆免疫网络算法得到的与此环境信息相对应的机器人的下一步的运动方向;
在每一个记忆单元中,前八位二进制数表示为抗原Ag=(θrrgrro),后面的NAb位对应于NAb个抗体,机器人在外传感器获得环境信息建立了抗原Ag=(θrrgrro)后,首先判断记忆单元中是否存储有这一抗原,也就是以前是否遇到过这种环境,如果记忆单元中没有这种抗原Ag=(θrrgrro),则判断机器人第一次遇到这种环境,将这种环境对应的抗原Ag=(θrrgrro)存储到一个新的记忆单元中的前八位,该记忆单元后面的NAb位都初始化为0;并将各抗体浓度初始化为通过步骤(2)的人工免疫网络算法和步骤(3)的多克隆算子多次迭代得到了下一步的运动方向后,则该记忆单元中后面的NAb位的第f位置为1,也就是,该记忆单元存储了与此抗原Ag=(θrrgrro)相对应的特异性抗体;
记忆单元中存储的数据格式为:
机器人在外传感器获得环境信息建立了抗原Ag=(θrrgrro)后,如果判断记忆单元中存储有这一抗原Ag=(θrrgrro),也就是以前遇到过这种环境,那么机器人将根据该记忆单元中这一抗原所对应的特异性抗体的情况计算各抗体初始浓度,对于i=1,2,...,NAb
其中MC是一个与记忆单元有关的常数,MC=0.01,这样,增加了以前遇到过得抗原Ag=(θrrgrro)的特异性抗体的初始浓度,减少非特异性抗体的初始浓度;接着,通过步骤(2)的人工免疫网络算法和步骤(3)的多克隆算子多次迭代得到了下一步的运动方向后,则该记忆单元中后面的NAb位的第f位置为1;
(5)选择浓度最高的抗体对应的运动方向作为机器人下一步的运动方向前进一步:
选择浓度最高的抗体作为最终的抗体,并将该抗体对应的运动方向作为机器人下一步的运动方向,前进一步,前进一步后,若机器人与目标点之间的距离小于10cm,结束;否则,机器人继续通过自身配置的外传感器获取新的环境信息,继续步骤(1)-(5)。
CN201310352276.1A 2013-08-14 2013-08-14 用于多机器人动态路径规划的多克隆人工免疫网络算法 Expired - Fee Related CN103412490B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310352276.1A CN103412490B (zh) 2013-08-14 2013-08-14 用于多机器人动态路径规划的多克隆人工免疫网络算法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310352276.1A CN103412490B (zh) 2013-08-14 2013-08-14 用于多机器人动态路径规划的多克隆人工免疫网络算法

Publications (2)

Publication Number Publication Date
CN103412490A CN103412490A (zh) 2013-11-27
CN103412490B true CN103412490B (zh) 2015-09-16

Family

ID=49605515

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310352276.1A Expired - Fee Related CN103412490B (zh) 2013-08-14 2013-08-14 用于多机器人动态路径规划的多克隆人工免疫网络算法

Country Status (1)

Country Link
CN (1) CN103412490B (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104407616B (zh) * 2014-12-03 2017-04-26 沈阳工业大学 基于免疫网络算法的移动机器人动态路径规划方法
CN105550779B (zh) * 2015-12-25 2019-06-25 武汉理工大学 一种基于免疫算法的大型缆机gps诱导路径优化方法
CN105578472B (zh) * 2016-01-19 2018-11-02 南京微传物联网科技有限公司 一种基于免疫原理的无线传感网络性能在线优化规划方法
CN108227691A (zh) * 2016-12-22 2018-06-29 深圳光启合众科技有限公司 机器人的控制方法、系统和装置及机器人
CN106873590B (zh) * 2017-02-21 2020-04-14 广州大学 一种运送机器人定位与任务管理方法及装置
CN108733043B (zh) * 2017-09-01 2021-12-14 北京猎户星空科技有限公司 机器人移动控制方法和装置
CN110618607B (zh) * 2018-06-20 2022-03-01 陕西师范大学 一种基于行为的多uuv自组织协调控制方法
CN110196588A (zh) * 2019-03-28 2019-09-03 陕西理工大学 基于网络撕裂法的移动机器人路径规划方法
CN110703752B (zh) * 2019-10-15 2023-01-03 哈尔滨工程大学 免疫遗传-人工势场法的无人艇双层路径规划方法
CN110737263B (zh) * 2019-11-21 2023-04-07 中科探海(苏州)海洋科技有限责任公司 一种基于人工免疫的多机器人队形控制方法
CN110986981B (zh) * 2019-12-02 2021-12-07 浙江工业大学 面向多机器人路径规划的增设路径障碍方法
CN111337042B (zh) * 2020-03-13 2021-11-02 湖北大学 一种车辆路径规划方法及系统
CN111674795B (zh) * 2020-05-27 2021-08-24 浙江工业大学 一种跨层跨巷道穿梭车仓储系统的任务调度方法
CN111781922B (zh) * 2020-06-15 2021-10-26 中山大学 一种基于深度强化学习的多机器人协同导航方法
CN113050420B (zh) * 2021-03-04 2022-02-18 山东大学 基于s面控制和td3的auv路径跟踪方法及系统
CN112612289B (zh) * 2021-03-08 2021-09-14 浙江大华技术股份有限公司 轨迹跟踪控制方法、移动机器人、控制设备及存储介质
CN113110101B (zh) * 2021-04-20 2022-06-21 济南大学 一种生产线移动机器人聚集式回收入库仿真方法及系统
CN114527766A (zh) * 2022-03-03 2022-05-24 湖南工学院 一种基于最小处理单元的移动机器人路径规划方法
CN114861776B (zh) * 2022-04-21 2024-04-09 武汉大学 一种基于人工免疫技术的动态自适应网络异常检测方法
CN115576332B (zh) * 2022-12-07 2023-03-24 广东省科学院智能制造研究所 一种任务级多机器人协同运动规划系统与方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5643572A (en) * 1990-07-06 1997-07-01 Allergene, Inc. Methods and compositions for the modulation of host immune response to an allergen
JP2006134267A (ja) * 2004-11-09 2006-05-25 Central Res Inst Of Electric Power Ind ポリシ検索システムおよび方法およびポリシ検索用プログラム
CN101859328A (zh) * 2010-06-21 2010-10-13 哈尔滨工程大学 基于人工免疫网络的遥感影像关联规则挖掘方法
CN101887271A (zh) * 2010-07-19 2010-11-17 东莞职业技术学院 一种移动机器人的路径规划方法
CN102819264A (zh) * 2012-07-30 2012-12-12 山东大学 移动机器人路径规划q学习初始化方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0808846A3 (en) * 1996-05-22 1998-08-26 Diapharm Limited Peptides which react with antiboby representing the prognostic marker for HIV disease progression

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5643572A (en) * 1990-07-06 1997-07-01 Allergene, Inc. Methods and compositions for the modulation of host immune response to an allergen
JP2006134267A (ja) * 2004-11-09 2006-05-25 Central Res Inst Of Electric Power Ind ポリシ検索システムおよび方法およびポリシ検索用プログラム
CN101859328A (zh) * 2010-06-21 2010-10-13 哈尔滨工程大学 基于人工免疫网络的遥感影像关联规则挖掘方法
CN101887271A (zh) * 2010-07-19 2010-11-17 东莞职业技术学院 一种移动机器人的路径规划方法
CN102819264A (zh) * 2012-07-30 2012-12-12 山东大学 移动机器人路径规划q学习初始化方法

Also Published As

Publication number Publication date
CN103412490A (zh) 2013-11-27

Similar Documents

Publication Publication Date Title
CN103412490B (zh) 用于多机器人动态路径规划的多克隆人工免疫网络算法
Das et al. A hybridization of an improved particle swarm optimization and gravitational search algorithm for multi-robot path planning
Kala et al. Fusion of probabilistic A* algorithm and fuzzy inference system for robotic path planning
Yuan et al. A novel GRU-RNN network model for dynamic path planning of mobile robot
Zhang et al. A niching PSO-based multi-robot cooperation method for localizing odor sources
CN108444489A (zh) 一种改进rrt算法的路径规划方法
Shiltagh et al. Optimal path planning for intelligent mobile robot navigation using modified particle swarm optimization
Hao et al. Dynamic path planning of a three-dimensional underwater AUV based on an adaptive genetic algorithm
Guo et al. Research progress of path planning methods for autonomous underwater vehicle
Shiltagh et al. Path planning of intelligent mobile robot using modified genetic algorithm
Hassanzadeh et al. Mobile robot path planning based on shuffled frog leaping optimization algorithm
Chandrasekhar Rao et al. Cooperative navigation planning of multiple mobile robots using improved krill herd
Tian Research on robot optimal path planning method based on improved ant colony algorithm
Ni et al. An improved shuffled frog leaping algorithm for robot path planning
Parhi et al. Navigation of multiple humanoid robots using hybrid adaptive swarm‐adaptive ant colony optimisation technique
Lou et al. Path planning in an unknown environment based on deep reinforcement learning with prior knowledge
Wang et al. Hybrid bidirectional rapidly exploring random tree path planning algorithm with reinforcement learning
Wang et al. A novel hybrid map based global path planning method
Zhao et al. A fast robot path planning algorithm based on bidirectional associative learning
He et al. Uuv path planning for collision avoidance based on ant colony algorithm
Chen et al. A multirobot cooperative area coverage search algorithm based on bioinspired neural network in unknown environments
Chen et al. Mobile robot wall-following control by improved artificial bee colony algorithm to design a compensatory fuzzy logic controller
Mohanty et al. A new real time path planning for mobile robot navigation using invasive weed optimization algorithm
Abed et al. Multi Objective Optimization Algorithms for Mobile Robot Path Planning: A Survey.
Ni et al. A memetic algorithm with variable length chromosome for robot path planning under dynamic environments

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150916

Termination date: 20180814

CF01 Termination of patent right due to non-payment of annual fee