计算智能大作业--蚁群算法解决TSP问题.doc

计算智能大作业--蚁群算法解决TSP问题.doc

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算智能大作业--蚁群算法解决TSP问题

(计算智能大作业) 应用蚁群算法求解TSP问题 目录 蚁群算法求解TSP问题 3 摘 要: 3 关键词: 3 一 、引言 3 二、蚁群算法原理 4 三、蚁群算法解决TSP问题 7 四、解决n个城市的TSP问题的算法步骤 9 五、程序实现 11 六、蚁群算法优缺点分析及展望 18 七、总结 18 采用蚁群算法解决TSP问题 摘 要关键词 TSP(Travelling Salesman Problem)又称货郎担或巡回售货员问题。TSP问题可以描述为:有N个城市,一售货员从起始城市出发,访问所有的城市一次,最后回到起始城市,求最短路径。TSP问题除了具有明显的实际意义外,有许多问题都可以归结为TSP问题。目前针对这一问题已有许多解法,如穷举搜索法(Exhaustive Search Method), 贪心法(Greedy Method), 动态规划法(Dynamic Programming Method)分支界定法(Branch-And-Bound),遗传算法(Genetic Agorithm)模拟退火法(simulated annealing),禁忌搜索。本文介绍了一种求解TSP问题的算法—蚁群算法,并通过matlab仿真求解50个城市之间的最短距离,经过仿真试验,证明是一种解决TSP问题有效的方法。 20世纪90年代,意大利学者M.Dorigo等人在新型算法研究的过程中,通过模拟自然界蚂蚁的觅食过程:即通过信息素(pheromone)的相互交流从而找到由蚁巢至食物的最短路径,提出了一种基于信息正反馈原理的新型模拟进化算法——蚁群算法(Ant Colony algorithm)。 蚁群算法是继遗传算法、人工神经网络等算法之后的又一种启发式算法,它的基本原理借鉴了这样一个客观事实:蚂蚁由自组织的合作能力所产生的群体智能来寻找路径,它被认为是用于解决组合优化问题的又一种新方法。蚁群算法是一种适应性好、鲁棒性强,具有正反馈结构的并行算法。这些初步研究已显示出蚁群算法在求解复杂优化问题(特别是离散优化问题)方面的一些优越性,证明它是一种很有发展前景的方法。蚂蚁算法在各个领域的应用,说明该算法有着广泛的适应性,但由于该算法出现的较晚,对其研究还处于起步阶段,远不如遗传算法、人工神经网络和模拟退火算法那样成熟。 二、蚁群算法原理 蚁群算法的基本原理来源于自然界蚂蚁觅食的最短路径原理,根据昆虫学家的观察,发现自然界的蚂蚁虽然视觉不发达,但它可以在没有任何提示的情况下找到从食物源到巢穴的最短路径,并且能在环境发生变化(如原有路径上有了障碍物)后,自适应地搜索新的最佳路径。蚂蚁是如何做到这一点的呢? 原来,单个的蚂蚁为了避免自己迷路,它在爬行时,同时也会释放一种特殊的分泌物——信息素(Pheromone),而且它也能觉察到一定范围内的其它蚂蚁所分泌的信息素,并由此影响它自己的行为。当一条路上的信息素越来越多(当然,随着时间的推移会逐渐减弱),后来的蚂蚁选择这条路径的概率也就越来越大,从而进一步增加了该路径的信息素浓度,这种选择过程称为蚂蚁的自催化过程,其原理是一种正反馈机制。 这里我们可以用一个图来说明蚂蚁觅食的最短路径选择原理,如图2-1所示。 图2-1 蚁群觅食原理 如图2-1(a)所示,我们假设A点是食物,而E点是蚂蚁的巢穴,当A、E两点间没有任何障碍物阻挡时,蚂蚁不存在路径选择的问题,这种情况最简单:由于两点间直线距离最短,蚂蚁们搬运食物时,会以直线的形式往返爬行。 但在图2-1(b)中的情形有所变化,若某时刻忽然有一个障碍物出现在蚂蚁经过的路径中,原有的路径被切断,那么从A点到E点的蚂蚁就必须在B点决定应该往左还是往右走,而从E点到A点的蚂蚁也必须在D点决定选择走哪条路径;这种决定会受到各条路径上以往蚂蚁留下的信息素浓度(即残留信息素浓度)的影响。如果往右走的路径上的信息素浓度比较大,那么右边的路径被蚂蚁选中的可能性也就大一些;但是对障碍出现后第一个到达B点或D点的蚂蚁而言,因为没有信息素的影响,所以它们选择向左或者向右的可能性是一样的,(b)图所表示的正是此时的情况。 若以从A点到E点的蚂蚁为例进行说明(对于从E点到A点的蚂蚁而言,过程也基本是一样的),由于路径BCD比路径BHD要短,因此选择BCD路径的第一只蚂蚁要比选择BHD的第一只蚂蚁早到达D点;此时,从D点向B点看,路径DCB上的信息素浓度要比路径DHB上的信息素浓度大。因此从下一时刻开始,从E点经D点到A点的蚂蚁,它们选择DCB路径的可能性要比选择DHB路径的可能性大得多,从而使路径BCD(或DCB)上信息素浓度与路径BHD(或DHB)上信息素浓度的差变

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档