路劲规划遗传算法

Genetic Algorithm Based Approach for Autonomous Mobile Robot Path Planning

遗传算法:

遗传算法(GAs)最初是由约翰·霍兰德在1960年的[8]公司开发的。GAs是一种受自然启发的算法,它基于达尔文进化的概念,包括初始化方法、评估每个染色体的适应度函数、自然选择、交叉和突变算子[9][10]。GAs首先随机生成一个初始种群,它代表了要优化的[11]问题的可能解决方案(染色体)。然后通过一个适应函数评估,以确定每个潜在解决方案[12]的质量。然后,利用遗传操作子创建新的后代;根据其适应值[13],选择将进行繁殖的亲本。通过重组前一步骤[14]中选择的双亲的数据,将后续交叉应用于新后代。突变是通过改变一些个体的遗传结构来保证种群的多样性。这个进化循环被重复,直到满足停止标准,这可以是之前固定的代数,或者当种群涉及得不够快时,算法可以停止。在算法1中详细介绍了标准GAs[16]的执行步骤。

 

一个遗传算法执行以下五个组成部分:

一个适合于个体(染色体)的遗传表征。

•这是一种生成初始种群的方法。

•这是一个适应度函数来评估每个潜在的解决方案的质量。

•基因操作符,修改父母的基因组成,以产生一个新的后代。

•不同遗传参数(群体大小率、杂交率、突变率、停止标准等)。

个体或者染色体的表示方法:路径规划问题的潜在解决方案是连接两个已知位置(起点和一个目标点)的路径(位置集),我们通过一系列有序位置P(x、y)来建模每个潜在的解,从第一个位置(X1、Y1)开始,到目标位置(X2、Y2)结束,其中x和y是二维环境中每个位置的坐标。

初始群体:

存在的不同方法得到初始群体,获得随机、关键单元、随机间隙路线图方法(CBRM)、随机游走、势场和贪婪方法[18][21][22][23]等初始路径集。群体总体的大小是在遗传算法的执行过程中通常是固定的一个参数。

适应度函数:一旦创建了初始种群,遗传算法必须通过使用一个自适应函数来确定每个个体的性能,该函数为每个可能的解决方案分配一个反映其质量的适应度值。FF必须考虑几个标准,如距离、安全、平滑度等。合适的适应度函数的定义是一项至关重要的任务,因为遗传算法利用该函数生成的信息来选择进行繁殖、突变的个体,并在遗传算法过程结束时,根据其适应度值[28]来选择最终种群中的最佳解。在建议的适应度功能中需要考虑四个标准:路径长度、安全一级(SFL)、安全二级(SSL)和能量。基于以下函数计算具有N个位置的路径P:

:路径长度,该值是用欧几里得距离计算出来的

:安全一级(SFL),该值计算为

:安全二级(SSL),该值计算为

 

 

e : 能量,能量消耗的惩罚,如果机器人转弯,则接受惩罚(+1),如果机器人继续前进,则接受惩罚((0))。

选择操作:选择是一种基因操作符,用来选择将存活下来以产生下一代的父母。适合度值最高的父母更有可能被选中进行交配。可以使用不同的选择方法:精英选择、比赛选择(TOS)、轮盘赌轮选择(RWS)、随机通用抽样(SUS)、线性排名选择(LRS)、指数排名选择(ERS)和截断选择(TRS)。选择操作符的主要目标是促进具有高适应性的个体为下一代进行选择。选择压力(可以理解为个体适应度的阈值)是一个非常重要的准则,它强烈地影响着遗传算法的性能。我们使用采用Elitist和(TRS)来控制压力的选择。具有高压选择的Elitist被用来让整代人保持最适合的解决方案,TRS用于给从上一代中选择弱染色体进行当前一代繁殖的机会,并避免最佳个体的优势。

交叉算子:在这个经典的方案中,除了起始节点和终止节点外,选择的两个进行交叉的染色体应该至少有一个共同的基因(节点)。假设有两条染色体:P=(v0,v1,...,vi,...,vL)、P=(v0,v1,...,vj,...,vK),SP交叉机制包含两个交叉操作子:一点交叉和两点交叉。一点交叉可以描述如下。如果P和P有共同节点(如果没有共同节点,我们就不做),那么我们随机选择一个,比如vi=vj,并在vi和vj之后交换所有节点(见图。 2).对于上面第2.1节的例子,1号和2号染色体将在节点7处交叉。与单点交叉不同,双点交叉操作符应该找到两个相同的基因,并在这两个点之间交换基因片段。将两个选定的染色体(亲本)的遗传信息(基因)混合,产生新的染色体(后代/孩子),以保持种群的异质性,并提高候选解决方案的适应度值。一般从两个任意选取的亲本(P1,P2)中找到相同的两个节点(N1,N2),选取N1之前、N1和N2之间、N2之后中较长的序列进行交叉。这篇论文使用an improved Same adjacency crossover operator (ISA)。大体上采用论文:A new crossover mechanism for genetic algorithms with variable-length chromosomes for path optimization problems 的思想。在生成子代时,并不是随机在交叉列表中选取节点,而且对所有交叉链表的节点生成子代,然后从子代中选取适应度最好的两个子代。

A new crossover mechanism for genetic algorithms with variable-length chromosomes for path optimization problems

交叉算子:

 

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值