人工蚁群算法的实现与性能分析(19页).doc
《人工蚁群算法的实现与性能分析(19页).doc》由会员分享,可在线阅读,更多相关《人工蚁群算法的实现与性能分析(19页).doc(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-人工蚁群算法的实现与性能分析-第 15 页目 录I摘 要VAbstractVI第一章 引言11.1 非对称TSP问题(ATSP)及其求解方法概述11.2 人工蚁群算法的主要思想和特点11.3 主要工作2第二章 ATSP问题分析32.1 ATSP问题的数学模型32.2 ATSP问题与TSP问题的比较3第三章 求解ATSP问题的人工蚁群算法43.1 ATSP问题的蚁群算法表示43.2 人工蚁群算法的实现43.2.1 人工蚁群算法的流程图53.2.2 蚁群的规模、算法终止条件63.2.3 路径选择方法和信息素的更新方法7第四章 实验和分析104.1 测试环境104.2 测试用例104.3 实验结果
2、及参数分析101012131314第五章 总 结16致 谢17参考文献17摘 要旅行商问题(TSP问题)是组合优化的著名难题。它具有广泛的应用背景,如计算机、网络、 电气布线、 加工排序、 通信调度等。已经证明TSP问题是NP难题,鉴于其重要的工程与理论价值,TSP常作为算法性能研究的典型算例。TSP的最简单形象描述是:给定n个城市,有一个旅行商从某一城市出发,访问各城市一次且仅有一次后再回到原出发城市,要求找出一条最短的巡回路径。TSP分为对称TSP和非对称TSP两大类,若两城市往返距离相同,则为对称TSP,否则为非对称TSP 。本文研究的是对称的ATSP。实质上,ATSP问题是在TSP问题
3、上发展而来的,它们的区别就在于两座城市之间的往返距离是否相同。例如,有A,B两个城市,在TSP问题中,从A到B的距离是等于从B到A得距离的,是一个单向选择的连通问题。而在ATSP问题中,从A到B的距离就不一定等于从B到A的距离,所以这是双向选择的联通问题。本文主要阐述了用人工蚁群算法的原理和一些与其相关联的知识结构点。通过对算法原理的理解,及在函数优化问题上的应用,与优化组合问题的研究来了解ATSP问题以及人工蚁群算法解决实际问题上的应用与研究。关键词:ATSP ; 组合优化 ; 人工蚁群算法 ;TSP Abstract Traveling salesman problem (TSP) is
4、the Famous combination of the optimization problem. It has broad applications, such as computer, network, electrical wiring, processing, sort and communication scheduling,and etc.Has already proved TSP is a difficult NP problem, givening its important engineering and theoretical valued, TSP is often
5、 used as the typical example of algorithm performance study.The most simple image description of TSP is: given n city, a traveling salesman start from one city, Visit other cities once and only once again return to the start city , asked to identify a shortest path of the tour.TSP can be classificat
6、ed symmetric TSP and asymmetric TSP two big kinds.If two cities from the same distance,that is symmetric TSP, or for the asymmetric TSP.This paper studies the ATSP problem. In essence, ATSP problem is based on the TSP problem.The difference lies in two cities round trip distance between the same or
7、different.For example,there are two cities,A and B , in TSP problem,from A to B is equal to the distance from B to have A distance,it s a one-way choice the connected problems.But in ATSP problem,from A to B doesnt necessarily equal to the distance from the distance B to A, so this is the two-way ch
8、oice connectivity problem. This paper mainly expounds the employing workers group of the principle and some associated knowledge structure of the points.Through the understanding of the principle of the algorithm,and in the application of the function optimization problems,And the optimized combinat
9、ion problems research to understand ATSP problems and one worker ants group algorithm of solving practical problems with the application of research.Keywords:ATSP ; Combinatorial optimization ; People ants group of algorithm ; TSP第一章 引言1.1 非对称TSP问题(ATSP)及其求解方法概述非对称旅行商问题是一个NP 完全问题,目前求解 ATSP 问题的主要方法有模
10、拟退火算法、遗传算法、蚁群算法等。ATSP是指给定n个城市和各城市间的距离,要求确定一条经过各个城市当且仅当一次的最短路线,并且这N个城市之间两两城市的往返距离不一定相等。它是一种典型的组合优化问题。基于人工蚁群算法求解ATSP问题,是近年来刚刚兴起的热门课题。 然而在科学管理与经济决策的许多应用领域中,现实世界存在着大量的多目标优化问题。对于非对称旅行商问题,实际中经常要同时考虑多个目标,如路程最短、时间最短、费用最省、风险最小等多方面的因素。目标之间往往存在冲突性。如何在多个目标中寻找一个公平、合理的解是比较复杂的问题。1.2 人工蚁群算法的主要思想和特点蚁群算法是受到真实蚁群集体行为的启
11、发而得到的新型优化算法,人工蚂蚁和真实蚂蚁存在异同。人工蚂蚁和真蚂蚁的蚂蚁一样,是一群相互合作的个体并且他们有着共同的任务,他们都是通过使用信息素进行间接通讯,而且人工蚂蚁利用了真实蚂蚁觅食行为中的自催化机制。但人工蚁群也存在真蚂蚁所不具有的一些特性,蚁群这种记忆并非存储于蚂蚁个体,而是分布在路径上。人工蚂蚁实质上是由一个离散状态到另一个离散状态的跃迁。信息素的释放时间是根据不同情况而改变的。为了提高系统总体上的性能。蚁群被赋予了其他的功能,如局部优化、原路返回等。蚁群算法是对自然界蚂蚁的寻径方式进行模似而得出的一种仿生算法。蚂蚁在运动过程中,能够在它所经过的路径上留下一种称之为外激素(phe
12、romone)的物质进行信息传递,而且蚂蚁在运动过程中能够感知这种物质,并以此指导自己的运动方向,因此由大量蚂蚁组成的蚁群集体行为便表现出一种信息正反馈现象:某一路径上走过的蚂蚁越多,则后来者选择该路径的概率就越大。人工蚁群有一定的记忆能力,能够记忆已经访问过的节点。同时,人工蚁群在选择下一条路径的时候是按一定算法规律有意识地寻找最短路径,而不是盲目的。例如 在TSP问题中,可以预先知道当前城市到下一个目的地的距离;每只蚂蚁也可以记录自己走过的节点和路径。1.3 主要工作蚁群算法最初是应用在对称的旅行商问题,下面对求解旅行商问题进行简单的说明。旅行商问题就是指给定 n个城市,并给出两两城市间的
13、距离。要求确定一条经过各城市最短的路径。蚂蚁根据城市的距离和连接边上信息素浓度为变量的概率函数选择下一城市。为了满足问题的约束条件,在完成一次循环前,不允许蚂蚁选择已经访问过的城市,需要由禁忌表控制。完成循环后,路径上都会留下浓度不同的信息素。我们可以通过对信息素浓度的强度,从而选择出最短路径 。 第二章 ATSP问题分析2.1 ATSP问题的数学模型ATSP问题 ( dijdji, v i , j = 1, 2, 3, , n),非对称旅行商问题较难求解,我们一般是探讨对称旅行商问题的求解。若对于城市 V = v1 , v2 , v3 , , vn 的一个访问顺序为 T= t 1 , t 2
14、 , t 3 , , ti, , t n ,其中 tiV ( i = 1, 2, 3, , n) ,且记 t n+1 = t 1 , 则旅行商问题的数学模型为:min L = ni =1dti, ti+1。ATSP问题表示为一个N个城市的有向图G=(N,A),其中N=1,2,.,n,A=(i,j)|i,jN城市之间距离为 ,目标函数为 ,其中 为城市1, 2, ,n的一个排列, 2.2 ATSP问题与TSP问题的比较 实质上,ATSP问题是在TSP问题上发展而来的,它们的区别就在于两座城市之间的往返距离是否相同。例如,有A,B两个城市,在TSP问题中,从A到B的距离是等于从B到A得距离的,是一
15、个单向选择的连通问题。而在ATSP问题中,从A到B的距离就不一定等于从B到A的距离,所以这是双向选择的联通问题。TSP较ATSP问题简单点,在算法实现上也容易点,但实际上可以看作是ATSP问题是TSP问题的发展,在此基础上多了路径往返的问题。旅行商问题(Traveling Salesman Problem, 简称TSP) 即给定n个城市和两两城市之间的距离,要求确定一条经过各城市当且仅当一次的最短路线。其图论描述为:给定图G =(V, A ) ,其中V 为顶点集, A 为各顶点相互连接组成的边集,设D = ( dij ) 是由顶点i和顶点j之间的距离所组成的距离矩阵,要求确定一条长度最短的Ha
16、milton回路,即遍历所有顶点当且仅当一次的最短距离。旅行商问题可分为如下两类:1) 对称旅行商问题( dij = dji , P i, j = 1, 2, 3, , n) ;2) 非对称旅行商问题( dij dji , v i, j = 1, 2, 3, , n) 。非对称旅行商问题较难求解,我们一般是探讨对称旅行商问题的求解。若对于城市V = v1 , v2 , v3 , , vn 的一个访问顺序为T= t1 , t2 , t3 , , ti , , tn ,其中ti V ( i = 1, 2, 3, , n) , 且记tn+1 = t1 , 则旅行商问题的数学模型为1 :min L =
17、ni =1dti, ti+1。ATSP是一个典型的组合优化问题,并且是一个NP完全难题,是诸多领域内出现的多种复杂问题的集中概括和简化形式,并且已成为各种启发式的搜索、优化算法的间接比较标准。因此,快速、有效地解决TSP有着重要的理论价值和极高的实际应用价值。第三章 求解ATSP问题的人工蚁群算法3.1 ATSP问题的蚁群算法表示 ATSP问题的人工蚁群算法中,假设m只蚂蚁在图的相邻节点间移动,从而协作异步地得到问题的解。每只蚂蚁的一步转移概率由图中的每条边上的两类参数决定:1、从一个点到另一个点得信息素值,也称信息素痕迹。2、相邻节点的可见度,即先验值。 信息素的更新方式有2种,使信息素挥发
18、:也就是所有路径上的信息素以一定的比率进行减少,模拟自然蚁群的信息素随时间挥发的过程;使信息素增强,给评价值“好”(有蚂蚁走过)的边增加信息素。 蚂蚁向相邻节点的运动通过一个随机原则来实现:根据当前所在节点存储的信息,计算出下一步可达节点的概率,并按此概率实现一步移动,逐此往复,越来越接近最优解。蚂蚁在寻找解的过程中,或者找到一个解后,都可以评估该解或解的一部分的优化程度,并把评价信息保存在相关连接的信息素中。3.2 人工蚁群算法的实现 基本的蚁群算法是基于图的蚁群算法,graph-based ant system,简称为GBAS,是由Gutjahr W J在2000年的Future Gene
19、ration Computing Systems提出的,算法步骤如下:STEP 0 对n个城市的TSP问题, ,城市间的距离矩阵为 ,给TSP图中的每一条弧 ,赋信息素初值 假设m只蚂蚁在工作,所有蚂蚁都从同一城市 出发。当前最好解是 STEP 1 (外循环)如果满足算法的停止规则,则停止计算并输出计算得到的最好解。否则使蚂蚁s从起点 出发,用L(s)表示蚂蚁s行走的城市集合,初始L(s)为空集,STEP 2 (内循环) 按蚂蚁 的顺序分别计算。当蚂蚁在城市i,若是存在 完成第s只蚂蚁的计算。否则,若是存在有 ,则以概率 ,到达j, ;若则到达 重复STEP 2。STEP 3 对 ,若 ,按L
20、(s)中城市的顺序计算路径长度;若L(s)N,路径长度置为一个无穷大值(即不到达)。比较m只蚂蚁中的路径长度,记走最短路径的蚂蚁为t。若 ,则 。用如下公式对W路径上的信息素痕迹加强,对其他路径上的信息素进行挥发。得到新的 ,重复步骤STEP 1。在STEP 3中,挥发因子 对于一个固定的 ,满足 ,并且 ,使得经过K次挥发,非最优路径的信息素逐渐减少,甚至消失。以上算法中,在蚂蚁的搜寻过程中,以信息素的概率分布来决定从城市i到城市j的转移。算法中包括信息素更新的过程如下:(1)信息素挥发(evaporation) 信息素痕迹的挥发过程是每个连接上的信息素痕迹的浓度自动逐渐减弱的过程,由 表示
21、,这个挥发过程主要用于避免算法过快地向局部最优区域集中,有助于搜索区域的扩展。(2)信息素增强(reinforcement)增强过程是蚁群优化算法中可选的部分,称为离线更新方式(还有在线更新方式)。这种方式可以实现由单个蚂蚁无法实现的集中行动。也就是说,增强过程体现在观察蚁群(m只蚂蚁)中每只蚂蚁所找到的路径,并选择其中最优路径上的弧进行信息素的增强,挥发过程是所有弧都进行的,不于蚂蚁数量相关。这种增强过程中进行的信息素更新称为离线的信息素更新。在STEP 3中,蚁群永远记忆到目前为止的最优解。3.2.1 人工蚁群算法的流程图初始化随机放置蚂蚁每只蚂蚁选择下一个城市返回到初始化城市还有城市可选
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 人工 算法 实现 性能 分析 19
限制150内