- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于混合遗传算法的车辆路径问题
摘 要:遗传算法可以很好的解决路径选择问题,但简单的遗传算法存在过早收敛问题。在自然界中远亲交配具有更好的遗传优势,本文据此理论改进车辆路径选择问题中的遗传算法,提高求解性能。
关键词:混合遗传算法;车辆路径选择,远亲交叉策略
中图分类号:U27文献标识码:A
遗传算法简称GA(Genetic Algorithm)是一种模拟自然界中遗传和选择机制的寻找最优解的方法。他的基本原理源自达尔文的生物进化论和盂德尔的基因学说。遗传算法模拟自然界的遗传,变异和进化法则,逐步修订解决问题的方案使之接近完美。
遗传算法的优势在于将搜索过程作用在编码后的字符串上.不直接作用在优化问题的具体变量上,这样可以绕过复杂的数学推演而采用最直接的方式在有限的结果集中搜索更优的结果。遗传算法通过设定一个初始种群,即一个预设的结果。并对这个初始种群进行基因突变和杂交,留下好的基因,改变不好的基因,使种群不停的进化,最后得到一组最优的或趋进于最优的结果,给人更大的选择余地。遗传算法有很好的易修改性和可并行性,在处理大规模复杂问题上更有优势。
但普通的遗传算法存在“早熟”问题,即容易收敛于局部最优解,在自然界中远亲交配具有更好的遗传优势,本文据此理论改进车辆路径选择问题中的遗传算法,并以有车载限制单配中心VRP的求解加以说明。这种交叉策略虽然使遗传算法的收敛速度稍有减缓,但使算法具有很好的求解性能。具体步骤如下:
(1)混合遗传算法的编码规则
应用遗传算法求解的首要问题是对所求问题解的编码。一个解的编码称为一个染色体,组成编码的元素称为基因。混合遗传算法采用路径编码方法。每个染色体由区间「1,m+n-1」中互不相同的自然数序列构成,其中n为客户数目,m为运输车数量,前面1~n为客户编号,n+1~n+m-1表示配送中心。例如,若有3辆运输车和12个客户,则一个染色体为{2,1,3,13,5,4,6,10,14,8,7,9,11,12},其中13,14表示配送中心以区分开3辆车所运输的客户编组。三辆车的配送路径分别为:第一辆车:配送中心→2→1→ 3→配送中心;第二辆车:配送中心→5→4→6→10一配送中心;第三辆车:配送中心→8→ 7→ 9→11→ 12→配送中心。
(2)客户编号
由于车辆行驶路径的迂回将大大增加目标函数式的值,为减少迂回造成行驶路径的增加,混合遗传算法将根据客户的位置对客户按方向编号:首先任意取一个客户并将其编号为1,然后以配送中心为极点、以配送中心和该客户的连线为极轴将所有客户的平面坐标转化成极坐标,最后以各客户的极角大小对客户依次进行编号。基于客户的编号,混合遗传算法将对车辆的行驶方向进行优化,从而尽量使车辆按一定的方向行驶。
(3)构造个体产生初始种群
由于初始种群的多样性将影响遗传算法的求解性能,因此,为了使初始种群具有较好的多样性,混合遗传算法采用以下3种方式依次产生一部分个体来构成初始种群(其中K为种群大小)。它们之间没有任何联系,可以看作是远亲关系。
首先分别以每个客户为起始点,按客户编号顺序即极角顺序遍历一周,在遍历所得的客户序列中,按约束条件把表示配送中心的基因(即n+1,n+m-1)插入到序列中,构成一个个体。这样可以产生n个个体,为子种群一。
然后重复(K-n)/2次以下操作,产生(K-n)/2个个体组成子种群二:随机产生n个区间[[1,n]上互不重复的自然数序列,然后按约束式把n+1,-n+m-1插入到序列中,构成一个个体。若该个体满足所有约束,则该个体为有效个体,否则为无效个体,重新产生该个体。
最后使用贪心算法产生剩下的(K-n)/2个个体,为子种群三。即以配送中心为起点,选择一个距其近、没有车辆提供服务且将其加入路径后约束式能满足的客户加入路径,然后以该客户为起点继续以上操作。若以上客户不存在,且还有未加个体的客户,则插入配送中心,并以配送中心为起点重复以上操作。若所有客户均已加入个体,则一个个体构造完成。
(4)适应度函数。
本文研究的单配送中心VRP问题的目标函数是关于最短路径的,一般来说,若目标函数为最小问题,适应度函数可以建立为:
(1-1)
式中Cmax为f(x)的最大估值。
(5)交叉、选择与变异。
在交叉个体的选择上,简单遗传算法通常直接采用随机选择两个个体进行交叉操作。这种交叉操作很大程度上导致了早熟现象的发生。混合遗传算法基本思想是:在选择交叉个体时,要求两个个体之间有一定的距离以保持种群的多样性,本例中以上述3个子种群相互交叉。选定两个交叉位置将每个个体分成三个部分,首先交换两个个体的中间部分;然后分别在第一
文档评论(0)