(数学建模之求解TSP问题的遗传算法.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(数学建模之求解TSP问题的遗传算法

求解TSP问题的遗传算法实现邱文(湖北工业大学机械学院,湖北,武汉,120131055)摘要:本文应用遗传算法(GA)解决TSP(travel salesman problem)问题,在此采用基于对各个城市访问顺序的编码方案,同时在探讨影响GA性能的遗传算子的基础上,介绍了可以改善解的质量的倒位算子。最后通过在VC++6.0上运行该算法的程序得到问题的最优解。关键词:遗传算法(GA)TSP问题 倒位算子 最优解Genetic Algorithm for Solving TSP Problems Qiu Wen(School of Science, Hubei University of Technology, Hubei, Wuhan,120131055)Abstract:This paper apply genetic algorithm to solve TSP(travel salesman problems) problem .The encoding scheme based on sequence of each city .During the same time , on the studying of the performance of genetic algorithm which based on the genetic operators , we introduce an inversion operator to improve the quality of solution .Keywords:genetic algorithm (GA); TSP problem; inversion optimal solution1引言TSP问题(Traveling Salesman Problems 可描述为:已知n个城市之间的相互距离,现有一推销员必须遍历这n个城市,并且每个城市只能访问一次,最后又必须返回出发城市。如何安排他对这些城市的访问次序,可使其旅行路线的总长度最短。用图论的术语来说,假设有一个图G=(V,E),其中V是顶点集,E是边集,设D=(dij)是由顶点i和顶点j之间的距离所组成的距离矩阵,旅行商问题就是求出一条通过所有顶点且每个顶点只能通过一次的具有最短距离的回路。若对于城市V={v1,V2,V3,…,vn}的一个访问顺序为T=(t1, t2, t3, …, ti,, …, tn),且记tn+1=t1,则TSP问题的数学模型为:Min L=dti,ti+1TSP问题是一个典型的组合优化问题,并且是一个NP难题,其可能的路径数与城市数目n是成指数型增长的,所以一般很难精确的求出自由解因而寻找出其他有效的近似求解算法就具有重要的理论意义,另一方面,很多实际应用问题,比如印制电路板的钻孔路线方案、连锁店的货物配送路线等,经过简化处理后,均可以建模为TSP问题,因而对TSP问题的求解具有重要的应用价值,同时研究TSP问题对促进遗传算法也有重大意义。遗传算法(GA)是模拟生物在自然环境中的遗传和进化过程而形成的一种自适应全局优化概率搜索算法。它包括对表示可行解的个体编码,再对这些编码进行选择、交叉和变异等遗传操作。与传统的优化算法相比,遗传算法的优越性主要表现在:它在搜索过程中不易陷入局部最优,即使在所定义的适应函数是不连续的、非规则的或有噪声的情况下,它也能以最大的概率找到群体最优解;由于它固有的并行性,遗传算法非常适合大规模并行计算机。2初始群体设定由于遗传操作是对众多个体同时进行的,这众多的个体组成了群体,在遗传算法中考虑到初始群体的多样性,群体中的个体是随机产生的,先随机生成一定数目的个体,然后从中挑出最好的个体加到初始群体中。这种过程不断迭代,直到初始群体中个体数达到了预先确定的规模。/*群体初始化*/void initpop(){unsigned char j1;unsigned int j, k, j2,j3,j4,p5[maxstring];j=0;for(k=0;klchrom;k++)oldpop[j].chrom[k]=k;for(k=0;klchrom;k++)p5[k]=oldpop[j].chrom[k];srand((unsigned)time(NULL));for(j=0;jpopsize;j++){j2=rand()%(lchrom);for(k=0;kj2+20;k++){j3=rand()%(lchrom);j4=rand()%(lchrom);j1=p5[j3];p5[j3]=p5[j4];p5[j4]=j1;}for(k=0;klchrom;k++)oldpop[j].chrom[k]=p5[k];}for(k=0;klchrom;k++)for(j

文档评论(0)

shit0605 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档