一种基于改进遗传算法的多移动机器人路径规划方法与流程

文档序号:11458169阅读:500来源:国知局
一种基于改进遗传算法的多移动机器人路径规划方法与流程

本发明属于机器人技术领域,涉及移动机器人路径规划方向,适用于路径规划的优化并可进一步推广引用到作业车间调度等领域,具体涉及一种基于改进遗传算法的多移动机器人路径规划方法。



背景技术:

路径规划技术作为机器人研究领域的重要组成部分,其发展在一定程度上标志着机器人智能水平的高低,而路径规划方法的优劣直接影响路径规划效果。目前,国内外许多专家学者都在致力于路径规划算法的研究,常用的优化算法主要有人工势场法、免疫算法、蚁群优化算法、神经网络、粒子群优化算法和遗传算法等。其中,由于遗传算法具有并行性、全局搜索能力等优点,被国内外学者广泛应用到求解路径规划问题中。但随着研究的不断深入,应用遗传算法进行机器人路径规划的不足逐渐被发现,例如,局部最优、较慢的收敛速度、优化结果稳定性差等。因此,为了解决基本遗传算法存在的问题,本发明专利对基本遗传算法进行改进。



技术实现要素:

根据以上现有技术的不足,本发明所要解决的技术问题是提出一种基于改进遗传算法的多移动机器人路径规划方法,解决基本遗传算法求解机器人路径规划问题在技术上存在的不足,针对移动机器人路径规划问题,本发明以路径最短为优化目标,提出了人工势场法的种群初始化方法和种群多样性程度的自适应选择方法来改进遗传算法中的种群初始化步骤和自适应选择步骤。

为了解决上述技术问题,本发明采用的技术方案为:一种基于改进遗传算法的多移动机器人路径规划方法,该方法具体步骤包括如下:

step1:初始化算法的相关参数,包括种群规模m,终止进化代数t与调节参数k;

step2:初始化种群p(t),并设置迭代进化计数器t=1;

step3:计算出每个个体的适应度值;

step4:判断计数器t是否满足终止条件,若满足,算法结束,将当代种群中最优个体作为问题最优解输出;否则,转至step5;

step5:利用自适应选择方法和预选择机制方法在种群p(t)中选出继续进行进化的个体;

step6:生成一个在(0,1)之间的随机数r1,判断r1是否满足交叉概率pc,若满足,转至step7;否则,转至step8;

step7:根据设计的交叉操作方法对个体进行交叉操作,生成新的个体。

step8:生成一个在(0,1)之间的随机数r2,判断r2是否满足变异概率pm,若满足,转至(9);否则,转至step10;

step9:根据设计的变异操作方法对个体进行变异操作,生成新的个体;

step10:生成新一代的种群p(t+1),t=t+1,转至step4。

上述方法中,在所述step2中,初始化种群过程中利用人工势场法对种群进行初始化,具体过程为:

step①:初始化相关参数,机器人置于起始位置;

step②:机器人放置在栅格环境下,确定机器人下一步与当前栅格相邻的可选栅格集合v;

step③:利用势场法,计算出机器人在虚拟势场中受到的合力ftot,然后求出ftot与v中各栅格方向的夹角θ(0≤θ≤180),若ftot为0,则规定θ也为0;

step④:依次求出可选栅格集合v中各栅格被选作为下一栅格的概率pij,并根据轮盘赌法进行选择栅格;

step⑤:已选择的栅格标记为障碍物栅格,同时更改为当前栅格;

step⑥:如果可选栅格集合v=φ,则取消生成该个体,直接转至step①,重新选择生成下一个体,否则,判断是否到达目标点,如果未到达,则转至step②;如果到达目标点,则保存当前个体;

step⑦:当个体数目达到种群规模m时结束。

在所述step5中的自适应选择方法是利用种群多样性程度改进后的自适应选择方法。所述step7中的交叉操作中设有自适应调节的交叉概率计算公式,其计算方法为:

式中pc(t)表示交叉概率,pc_max、pc_min分别表示交叉概率的上限和下限,k为调节参数,ω(t)表示当前种群的多样性程度。所述step9中的变异操作中设有自适应调节的变异概率计算公式,其计算方法为:

式中pm_max、pm_min分别表示变异概率的上限和下限,k为调节参数,ω(t)表示当前种群的多样性程度。

本发明有益效果是:

1)改善了获得较高质量的初始种群;

2)有利于增加种群多样性,避免算法过早收敛于局部最优;

3)提高了路径规划求解的质量和效率。

附图说明

下面对本说明书附图所表达的内容及图中的标记作简要说明:

图1是本发明的具体实施方式的改进遗传算法的多移动机器人路径规划方法的流程示意图。

图2是基本遗传算法的寻优路线。

图3是基本遗传算法收敛曲线。

图4是本发明的具体实施方式的改进遗传算法寻优路线。

图5是本发明的具体实施方式的改进遗传算法收敛曲线。

具体实施方式

下面对照附图,通过对实施例的描述,本发明的具体实施方式如所涉及的各构件的形状、构造、各部分之间的相互位置及连接关系、各部分的作用及工作原理、制造工艺及操作使用方法等,作进一步详细的说明,以帮助本领域技术人员对本发明的发明构思、技术方案有更完整、准确和深入的理解。

一种基于改进遗传算法的多移动机器人路径规划方法,用于获得最优或近优的路径规划,实现移动机器人的全局优化,该方法具体步骤包括如下:

step1:初始化算法的相关参数,如种群规模m,终止进化代数t与调节参数k等。

step2:初始化种群p(t),并设置迭代进化计数器t=1。

step3:根据适应度公式计算出每个个体的适应度值。

step4:判断计数器t是否满足终止条件t=gmax(gmax为最大进化代数),若满足,算法结束,将当代种群中最优个体作为问题最优解输出;否则,转至step5。

step5:利用自适应选择方法和预选择机制方法在种群p(t)中选出继续进行进化的个体。在step5中,本申请使用的自适应选择方法是利用种群多样性程度改进后的自适应选择方法,有效解决早熟收敛和算法后期趋于随机搜索的问题,其具体方法如下:设p(t)=(xt,1,xt,2,xt,3,…,xt,m)为第t代种群,其中xt,m为第t代种群第m个个体,种群规模为m,根据个体的不同类型将种群划分为n类,ni(t)为第i类中所含的个体数量,则第t代种群熵e(t)定义为:

种群熵反映了种群中不同类型个体的分布情况,通过种群熵e(t)与种群最大熵e(max)的比较,可以衡量出当前种群的多样性程度ω(t),令ω(t)=e(t)/emax,ω越大,种群中不同个体的数目越多,种群的多样性越好,反之,多样性越差。对于种群中任意个体xt,k,其适应度f(xt,k),在自适应选择方法下其被选择的概率p(xt,k)为:其中ω(t)∈(0,1)。所以当ω(t)→0时,λ→+∞,如果f(xt,k)<fmax,其中fmax为第t代个体的最大适应度值,p(xt,k)=0;如果f(xt,k)=fmax,p(xt,k)=1/m(m为第t代种群中最佳个体的数目)。当ω→1时,λ→0,此时p(xt,k)=1/m,选择方式为按均匀分布的随机选择。由此可知,在进化初期,选择压力较小,从而使得较差个体也有一定的生存机会,避免出现早熟收敛;在进化中期,随着种群性状的变化,种群中任意个体xt,k的选择概率能根据种群多样性程度的变化自适应改变,从而根据种群性状动态调整选择压力,这样能够平衡算法的全局搜索能力和局部搜索能力;在进化后期,种群平均适应度与最优适应度趋于相等,选择压力很大,算法会快速收敛到全局最优解。

step6:生成一个在(0,1)之间的随机数r1,判断r1是否满足交叉概率pc,若满足,转至step7;否则,转至step8。

step7:根据设计的交叉操作方法对个体进行交叉操作,生成新的个体。

step8:生成一个在(0,1)之间的随机数r2,判断r2是否满足变异概率pm,若满足,转至(9);否则,转至step10。

step9:根据设计的变异操作方法对个体进行变异操作,生成新的个体。提出了自适应交叉概率、变异概率计算公式。在基本的遗传算法中,交叉概率pc(t)和变异概率pm(t)在整个进化过程中是固定不变的。然而研究表明,pc和pm对算法的收敛性有着直接的影响,采用固定的pc和pm很容易导致算法的过早收敛。为进一步考虑种群多样性程度对于交叉、变异概率取值的影响,提出一种基于种群多样性程度的自适应调节的交叉和变异概率计算公式,其计算方法分别为:

其中,pc_max、pc_min分别表示交叉概率的上限和下限,pm_max、pm_min分别表示变异概率的上限和下限;k为调节参数。由交叉概率和变异概率的计算公式可知,在进化过程,pc、pm能够根据多样性程度取值的不同动态的自适应调整:在进化前期,种群多样性较好,pc、pm取值较小,能够使种群朝着较优个体方向进行收敛;随着种群不断的进化,其多样性逐渐减弱,pc、pm取值则逐渐增大,有利于增加种群多样性,避免算法过早收敛于局部最优。

step10:生成新一代的种群p(t+1),t=t+1,转至step4。

step2中,在遗传算法中,提高初始种群的质量可以提高算法的起点,进而对提高算法的求解效率和求解质量具有十分重要的意义,然而目前多数文献中初始种群都是随机生成的,这种虽然方法简单,但是产生的路径质量不高,影响收敛速度,因此,高效地获得较高质量的初始种群,对提高算法的性能具有重要意义。针对随机初始化种群所带来的问题,本文提出一种基于人工势场法的种群初始化方法,利用人工势场法对本文中的种群进行初始化,人工势场法的种群初始化过程为:

step①:初始化相关参数,机器人置于起始位置。

step②:确定机器人下一步与当前栅格相邻的可选栅格集合v。

step③:利用势场法,计算出机器人在虚拟势场中受到的合力ftot,然后求出ftot与v中各栅格方向的夹角θ(0≤θ≤180),若ftot为0,则规定θ也为0。

step④:依次求出v中各栅格被选作为下一栅格的概率pij,并根据轮盘赌法进行选择栅格。

为了提高路径搜索效率,结合蚁群算法的相关机理,概率pij定义为:

其中,θij表示合力ftot与栅格j方向的夹角;dij表示栅格i与栅格j之间的距离;djg表示栅格j和终点之间的距离;θiv表示合力ftot与栅格v方向的夹角;div表示栅格i与栅格v之间的距离;dvg表示栅格v和终点之间的距离。

step⑤:已选择的栅格标记为障碍物栅格,同时更改为当前栅格。

step⑥:如果v=φ,则取消生成该个体,直接转至step①,重新选择生成下一个体,否则,判断是否到达目标点,如果未到达,则转至step②;如果到达目标点,则保存当前个体。

step⑦:当个体数目达到种群规模m时结束。

为验证本方法的正确性和合理性,运用matlab软件在10×10的栅格环境模型下对该算法进行仿真,并与基本遗传算法进行比较。在基本遗传算法中,初始种群随机生成,选择算子采用轮盘赌法,算法的主要参数:种群规模m为80,交叉概率pc为0.6,变异概率pm为0.1,最大进化代数t为50;在改进的算法中的主要控制参数设置如表下:种群规模m为80,交叉概率pc_max为0.9,交叉概率pc_min为0.4,变异概率pm_max为0.1,变异概率pm_min为0.01,调节参数k为5,最大进化代数t为50。实验结果如图2-图5所示,其中s和g分别表示起点和终点,从中可以看出,该算法相比于基本遗传算法能够搜索到更短的路径。

遗传算法和改进遗传算法的最优解收敛曲线分别如图3和图5所示。从两图对比中可以看出,基本遗传算法在进化17代便陷入了局部最优解,最终搜索结果为13.899,没有达到理想的搜索结果。改进遗传算法收敛速度很快,进化了7代后就趋于稳定,搜索到全局最优解为13.313,该解即为机器人的最优路径值。

以上仅为独立运行一次仿真结果的对比,为消除随机性等各种偶然因素对算法的影响,对两种算法均独立运行20次,其统计结果记录于表1(两种算法独立运行20次的结果比较)。通过对比可以得出结论:使用改进遗传算法的路径规划效率明显优于基本遗传算法,从路径长度的变化上来看,改进遗传算法所获得的路径长度基本上是固定的,变化幅度很小,这说明了改进算法在路径优化方面的鲁棒性强、可重复性高。

表1两种算法独立运行20次的结果比较

上面结合附图对本发明进行了示例性描述,显然本发明具体实现并不受上述方式的限制,只要采用了本发明的方法构思和技术方案进行的各种非实质性的改进,或未经改进将本发明的构思和技术方案直接应用于其它场合的,均在本发明的保护范围之内。本发明的保护范围应该以权利要求书所限定的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1