CN101118609A - 一种解决大规模tsp的云模型小生境自适应蚁群优化方法 - Google Patents
一种解决大规模tsp的云模型小生境自适应蚁群优化方法 Download PDFInfo
- Publication number
- CN101118609A CN101118609A CNA2007101217735A CN200710121773A CN101118609A CN 101118609 A CN101118609 A CN 101118609A CN A2007101217735 A CNA2007101217735 A CN A2007101217735A CN 200710121773 A CN200710121773 A CN 200710121773A CN 101118609 A CN101118609 A CN 101118609A
- Authority
- CN
- China
- Prior art keywords
- pheromone
- ant
- path
- ants
- city
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种解决大规模TSP的云模型小生境自适应蚁群优化方法。它包括如下步骤:参数初始化,并利用小生境构建蚂蚁在大规模TSP中的移动范围;每两只蚂蚁作为一个派对共同选择一个城市作为起点;根据状态转移概率计算的概率选择城市前进,若当前路径长度大于本次m只蚂蚁相遇循环的最短路径,则终止此次相遇循环;然后修改禁忌表指针,并自适应调节信息素残留系数;计算本次m只成对的蚂蚁所循环路径长度的平均值;按照升半正态云模型定性关联控制规则选定信息素的残留系数和信息素强度;更新每条路径上的信息素,并将各条寻优路径上的残留信息素数量限制在某一范围;重复上述过程,直至满足算法结束条件,最后输出最优解。
Description
(一)技术领域
旅行商问题(Traveling Salesman Problem,TSP)作为组合优化难题的传统描述是:给定n个城市及它们两两之间的旅行代价(如时间或距离等),寻求一条连接所有城市的哈密顿回路(每个城市只访问一次,最终回到出发城市),使得该回路的路径代价最小。TSP是一个被证明了的NP-C问题,如果TSP能得到解决,则其他类似的NP-C问题都能得到解决。
蚁群算法是新兴的人工智能算法,应用蚁群算法已经很好的解决的许多NP类问题。针对大规模TSP求解难的问题,我们发明了一种基于云模型小生境的自适应蚁群优化方法,使其能在较大搜索空间条件下避开局部最优解,从而在大规模TSP全局优化的实现过程中能够比较迅速地找到全局最优解。本发明是解决大规模TSP的有效技术途径,同时,该方法也可应用于解决其它组合优化问题。
(二)背景技术
目前,对于TSP的研究有两个方向:完全算法能保证得到最优解,但是运行时间是呈指数复杂度的,因而难以适应大规模计算的要求;近似算法则只要求近似解,可在多项式时间内结束。
在TSP上的近似算法分为两类:构造算法和环路改进算法。前者从某个非法解开始,通过某种增广策略逐步改变该解,直到得到一个合法解为止。这类算法包括最邻近算法、贪心算法、Clarkc-Wright算法、Christofidcs算法等。环路改进算法则在给定初始的合法解之后,使用某种策略来改进初始解,这些策略包括局部搜索、模拟退火、遗传算法、微粒群算法等,其中最为简单和有效的力一法为局部搜索,如2-OPT、3-OPT、LK(Lin-Kcrnighan)、LKH(Lin-Kcrnighan-Hcslgaun)等。通常这两类算法结合起来使用,用环路构造算法来构造初始解,而用环路改进算法改进这个初始解。Arora对欧氏空间的旅行商问题提出了多项式时间的近似策略,这也是近年来在近似算法的研究中所取得的一项重要进展。Hclsgun则提出了目前精度最高的近似算法LKH算法。
目前存在的问题主要是随着生产的发展,实际问题的规模越来越大,规模往往在百万以上。现有的算法在规模超过十万时表现都不是很好,要么耗时太长,要么精确度太差。因此,大规模TSP是TSP领域中的一个关键性难题。
蚁群算法寻优过程中所体现出的并行性、协同性、自组织性、动态性、强鲁棒性等特点非常适合于求解大规模TSP。本发明提出了一种基于小生境和基于云模型的自适应蚁群优化方法,通过将所有的城市分为若干个组、限定蚂蚁每次移动范围达到剔除劣质解、缩小搜索范围的目的;而云模型中的升半正态云多规则生成器可使随机过程和信息素强度、信息素残留系数的优化设置有机地结合在一起,多规则生成器的规则倾向性保证了蚁群算法的快速搜索能力和全局收敛性能,同时云模型所蕴含的随机过程保证了蚁群算法在总体上能获得最佳效果。
(三)发明内容
蚁群算法是一种最新发展的仿生智能优化算法,该算法模拟了自然界蚂蚁的群体觅食行为。自然界中,蚂蚁通过相互协调完成相对其本身来说比较艰巨的任务,科学家发现蚂蚁总能在较短的时间寻找到其巢穴与食物源之间最短的路径。蚁群算法最早用来成功地解决了著名的TSP。目前人们对蚁群算法的研究已经由当初单一的旅行商问题领域渗透到了多个应用领域,由解决一维静态优化问题发展到解决多维动态组合优化问题,由离散域范围内的研究逐渐拓展到了连续域范围内的研究,而且在蚁群算法的硬件实现上也取得了很多突破性进展,从而使这种新兴的仿生优化算法展现出勃勃生机和广阔的发展前景。
蚁群算法的主要特点是:正反馈、并行性及分布式计算。正反馈过程使得该方法能较快地发现问题的较好解;分布式易于并行实现,与启发式算法相结合,使得该方法易于发现更好的解。
经过生物学家研究,发现蚂蚁之间是通过一种称为信息激素的化学物质来互相通信,并互相影响,真实的蚂蚁外出觅食的时候会不断地在经过的路径上分泌信息素,记录自己经过的路线,路径上的信息素浓度将影响后续蚂蚁的行进路线。对于较短的路径,在单位时间内经过的蚂蚁数量较多,路径上的信息素浓度较高,吸引着较多的蚂蚁沿该路径搜索;对于距离较长的路径,由于单位时间内经过的蚂蚁数量较少,路径上的信息素浓度较低;而且信息素会随着时间而挥发,从而较长的路径的信息素浓度弱化就会比较明显,而对于较短路径则由于经过的蚂蚁数量较多,信息素浓度的衰减作用就显得次要,主要体现为信息素浓度被经过的蚂蚁增强,从而形成了一种正反馈。这种正反馈机制为蚁群寻找最优路径提供了可行性。蚂蚁走过的路径越短,信息激素浓度越高,而信息激素浓度越高,吸引的蚂蚁越多,最后所有的蚂蚁都集中到信息激素浓度最高的一条路径上,这条路径就是从巢穴到食物源的最短路径。图1为真实蚂蚁的觅食过程。
蚁群算法实际上是一类智能多主体系统,其自组织机制使得蚁群算法不需要对所求问题的每一方面都有详尽的认识。自组织本质上是蚁群算法机制在没有外界作用下使系统熵增加的动态过程,体现了从无序到有序的动态演化,其逻辑结构如图2所示。
蚁群算法的数学模型为:设bi(t)表示t时刻位于元素i的蚂蚁数目,τij(t)为t时刻路径(i,j)上的信息量,n表示TSP规模,m为蚁群中蚂蚁的总数目,则 ;Γ={τij(t)|ci,cjC}是t时刻集合C中元素(城市)两两连接lij上残留信息重的集合。在初始时刻各条路径上信息量相等,并设τij(0)=const,基本蚁群算法的寻优是通过有向图g=(C,L,Γ)实现的。
蚂蚁k(k=1,2,…,m)在运动过程中,根据各条路径上的信息量决定其转移方向。这里用禁忌表tabuk(k=1,2,…,m)来记录蚂蚁k当前所走过的城市,集合随着tabuk进化过程作动态调整。在搜索过程中,蚂蚁根据各条路径上的信息量及路径的启发信息来计算状态转移概率。pij k(t)表示在t时刻蚂蚁k由元素(城市)i转移到元素(城市)j的状态转移概率
式中,allowedk={C-tabuk}表示蚂蚁k下一步允许选择的城市。α为信息启发式因子,表示轨迹的相对重要性,反映了蚂蚁在运动过程中所积累的信息在蚂蚁运动时所起的作用,其值越大,则该蚂蚁越倾向于选择其它蚂蚁经过的路径,蚂蚁之间协作性越强;β为期望启发式因子,表示能见度的相对重要性,反映了蚂蚁在运动过程中启发信息在蚂蚁选择路径中的受重视程度,其值越大,则该状态转移概率越接近于贪心规则。ηij(t)为启发函数,其表达式如下
式中,dij表示相邻两个城市之间的距离。对蚂蚁k而言,dij越小,则ηij(t)越大,pij k(t)也就越大。显然,该启发函数表示蚂蚁从元素(城市)i转移到元素(城市)j的期望程度。
为了避免残留信息素过多引起残留信息淹没启发信息,在每只蚂蚁走完一步或者完成对所有n个城市的遍历(也即一个循环结束)后,要对残留信息进行更新处理。这种更新策略模仿了人类大脑记忆的特点,在新信息不断存入大脑的同时,存贮在大脑中的旧信息随着时间的推移逐渐淡化,甚至忘记。由此,t+n时刻在路径(i,j)上的信息量可按如下规则进行调整
τij(t+n)=(1-ρ)·τij(t)+Δτij(t)(3)
式中,ρ表示信息素挥发系数,则1-ρ表示信息素残留因子,为了防止信息的无限积累,ρ的取值范围为:ρ[0,1);Δτij(t)表示本次循环中路径(i,j)上的信息素增量,初始时刻Δτij(0)=0,Δτij k(t)表示第k只蚂蚁在本次循环中留在路径(i,j)上的信息量。
根据信息素更新策略的不同,目前有三种不同的基本蚁群算法模型,分别称之为Ant-Cycle模型、Ant-Quantity模型及Ant-Density模型,其差别在于Δτij k(t)求法的不同。由于Ant-Quantity模型及Ant-Density模型均是对信息素的局部更新,而Ant-Cycle模型是整体更信息素,在求解TSP问题时效果良好,所以用Ant-Cycle模型作为基本蚁群算法的信息素更新方式。在Ant-Cycle模型中
式中,Q表示信息素强度,它在一定程度上影响算法的收敛速度;Lk表示第k只蚂蚁在本次循环中所走路径的总长度。
定义1(云):设U是一个用普通集合表示的论域,即U={u},关于论域U中的模糊集合,是指对于任意元素u都存在一个有稳定倾向的随机数称为u对的隶属度。如果论域中的元素是简单有序的,则U可以看作是基础变量,隶属度在U上的分布叫做云;如果论域中的元素不是简单有序的,而根据某个法则f,可将U映射到另一个有序的论域U′上,而在U′中有且仅有一个u′与u对应,则U′为基础变量,隶属度在U′上的分布也称为云。
云是用语言值表示的某个定性概念与定量表示之间的不确定性转换模型,云模型每次产生的云滴具有不确定性,某一个云滴也许无足轻重,但云的整体反映了一个定性概念,对应的数值域作为自变量。
云的数字特征用期望值Ex(Expected Value)、熵En(Entropy)和超熵He(Hyper Entropy)三个数值来表征,它们将模糊性和随机性完全有机地集成到一起,构成了定性和定量的相互映射,并以此作为知识表示的基础。不同熵和超熵的云模型及其数字特征如图3所示。
期望Ex:在数域空间内最能够代表这个定性概念的点,它反映了相应定性概念的信息中心值。
熵En:熵一方面反映了在数域空间可被语言值接受的范围;另一方面还反映了在数域空间的点能够代表这个语言值的概率,表示定性概念的云滴出现的随机性。熵揭示了模糊性和随机性之间的本质关联性。
超熵He:超熵是熵的不确定度量,即熵的熵,反映了在数域空间代表该语言值的所有点不确定度的凝聚性,其大小间接地反映了云的厚度,即云滴的凝聚度。
按云的产生机理和计算方向分,有正向云和逆向云,而正向云又分为基本云、U条件云和V条件云。
正向云发生器是根据已知正态云的数字特征期望值Ex、熵En和超熵He,产生满足上述正态云分布规律的二维云Drop(x,μ),称为云滴。正向云通过输入三个数字特征形成合乎条件的云滴,云发生器生成的若干云滴构成整个云,从而将定性概念通过不确定性转换云模型定量地表示出来。
逆向云发生器是已知云中相当数量的云滴分布Drop(x,μ),确定正态云的三个数字特征值望值Ex、熵En和超熵He。
云模型的定性关联规则分为两大类:单条定性关联规则和多条定性关联规则。
通常单条定性关联规则的形式化描述为:
If A then B(6)
其中A和B为语言值表示的对象。对照语言原子与云的关系,便可运用云模型对象构造定性关联规则。根据上述各类云模型对象的概念,以带U条件和V条件的云模型对象构造定性关联规则,单条定性规则的构造原理如图4所示。
图4中,CGA表示对应输入平面语言值A的带U条件的云模型对象,CGB表示对应输出平面语言值B的带V条件的云模型对象。由于对应一个固定的输入值,输出空间中的μi具有不确定性,因此这一推理系统的实现对不确定性具有良好的继承性和传递性。
多条定性关联规则的形式化描述为:
其中Ai和Bi(i=1,2,...,n)为语言值表示的对象。多条定性关联规则的构造思路类似于单条定性关联规则云。
小生境(Niche)是指各种生物所占据、适应和利用的特定生态环境,其起源于自然界中的自然现象:物种形成和物种分化。整个生态环境可被分成不同的小环境,形成了所谓的小生境,即所谓的“物以类聚,人以群分”。每个物种都以某种方式适合于它特有的小生境,并根据不同的气候、食物供应以及与其它生物的竞争等情况,从自己的小生境扩展到它力所能及的范围。用基本蚁群算法求解TSP等离散域问题时,随着问题维数(城市数目)的增大,其解空间急剧放大,同时,蚁群算法比较注重开辟新的搜索空间,这样就破坏了群体的小生境特性,易导致未成熟收敛,使得在有限时间内很难找到满意的结果。
实际上,TSP解空间中绝大部分是劣质解,而且劣质解严重干扰着对优质解的寻找。在一个N个城市规模的TSP中,任何一个城市都有N-1个从该城市出发的路径,而在这N-1条路径中,只有最短的几条路径才可能是组成最优解的路径之一,而其它较长的路径不可能是最优解中的一条路径。因此,受生物学中小生境现象的启发,可通过将所有的城市分为若干个组,限定蚂蚁每次移动范围,来达到剔除劣质解的目的。从空间复杂度考虑,这种改进策略能有效缩小搜索空间,从而可显著提高蚁群算法的寻优速度,同时也在很大程度上避免了过早收敛,提高了蚁群算法的全局寻优性能。
本发明一种解决大规模TSP的云模型小生境自适应蚁群优化方法,该方法具体如下:
(1)更改转移概率
为了在一定程度上减小算法陷入局部最优解的概率,这里采用了一种修正的蚁群算法,对转移概率公式(1)进行了修订,让第k只蚂蚁按公式(8)概率从元素(城市)i转移到元素(城市):
上式中,q0为挥发约束系数,且q0(0,1)。为了使算法在寻优的初始阶段能较快地找到可接受的解,针对转移概率公式(1)和(8)采用强化学习策略,可以有效地提高蚁群算法的收敛速度。
(2)自适应控制信息素残留系数
在集合C元素很多或者蚂蚁数目很多的情况下,若信息素残留系数ρ越大,搜索循环次数NC越大,算法的收敛速度会变慢;若ρ太小,虽然收敛速度加快,但是计算结果易于陷入局部最优状态,因此,可以对ρ值采取自适应控制策略,即将ρ改为阈值函数
式中,ξ为挥发约束系数,且ξ(0,1),ρmin为信息素残留系数下界。
(3)小生境构建蚂蚁移动范围
在蚁群算法中为每个城市建一个数组ci[i′],其中i′表示数组中的个体数目,其大小的选择上是依据问题的维数而定的,TSP包含的城市数目越多,则该数组中的个体量越大。蚂蚁每次移动就从ci[i′]和allowedk={C-tabuk}的交集中选择移动的城市,即:
allowedk′=ci[i′]∩allowedk
=ci[i′]∩{C-tabuk}(10)
然后再根据转移概率公式,移动到下一个城市。若交集为空,则只在allowedk={C-tabuk}中选择。
(5)相遇搜索
蚂蚁数量m越大,蚁群算法的全局搜索能力越强,但这会使算法的全局收敛速度变慢。
改进后蚁群算法相遇搜索策略的基本思路是当蚂蚁数量m很大时,对集合C元素(城市)的搜索机制由一只蚂蚁改为两只蚂蚁从两头寻找,两只蚂蚁共用一个禁忌表tabuk(k=1,2,…,m),在路径中间碰头合成一次周游路径,这种并行处理策略可以进一步减短计算时间,因此可有效地提高算法的全局收敛速度。
(6)保留精灵蚂蚁
设集合
d(t)min=min{D[1],D[2],…,D[m]}(11)
式中,d(t)min为第t个搜索周期得到的最短路径长度,d(t)aver为第t个搜索周期m只蚂蚁周游路径长度的平均值。只有当d(t)min<d(t-1)min且D[k]<d(t)aver的时候,蚂蚁k才按照公式(5)计算Δτij k(t)。
(7)信息素的MAX-MIN界定
蚁群算法应用过程中易出现的停滞和扩散问题不容忽视,将各条寻优路径上可能的残留信息素数量限制在[τmin,τmax],τmin可以有效地避免算法停滞,τmax可以避免某条路径上的信息量远大于其它路径,使所有的蚂蚁都集中到同一条路径上面,从而限制了算法的扩散。每次循环结束后保留最优路径,一个循环中只有路径最短的蚂蚁才有权修改τij(t)。修改策略在公式(3)的基础上,再加上下述公式进行阈值判断选择:
(8)云模型选定信息素残留系数和信息素强度
由于信息素强度Q是表征蚂蚁所留轨迹数量的一个常数,它影响算法的全局收敛速度。其值过大,会使算法收敛于局部最小值;过小,会使全局收敛速度减慢。
蚁群算法中的云模型规则采用升半正态云规则控制,信息素的残留系数ρ和信息素强度Q用云模型理论进行调整的四条定性关联规则为:
[规则1]:Ifρ>ρmin and t≤T′then选取较小的ρ和较小的Q;
[规则2]:Ifρ≤ρmin and t≤T′then选取较大的ρ和较小的Q;
[规则3]:Ifρ>ρmin and t>T′then选取较小的ρ和较大的Q;
[规则4]:Ifρ≤ρmin and t>T′then选取较大的ρ和较大的Q。
上述关联规则可以用云模型的多规则生成器完成,这里以调整前的信息素的残留系数和时间或能表征它们变化趋势的指标作为输入参数来实现多规则生成器的U条件云,而以信息素强度云和调整后的信息素的残留系数云来实现多规则生成器的V条件云。从而这种云多规则生成器使随机过程和信息素强度、残留系数的优化设置有机地结合在一起。云模型多规则生成器的规则倾向性保证了蚁群算法的快速搜索能力和全局收敛性能;同时,云模型所蕴含的随机过程保证了改进后的蚁群算法能在总体上获得最佳求解效果。
综上所述,本发明所提出的解决大规模TSP的云模型小生境自适应蚁群优化方法的具体实现步骤如下:
第一步:参数初始化;
第二步:蚂蚁的禁忌表索引号k=1;
第三步:蚂蚁数目k←k+2;
第四步:每两只蚂蚁作为一个派对共同选择一个元素(城市)作为起点;
第五步:蚂蚁甲根据状态转移概率公式(1)和(8)计算的概率选择元素(城市)j1并前进,j1∈{ci[i′]∩{C-tabuk}};蚂蚁乙也根据状态转移概率公式(1)和(8)计算的概率选择元素(城市)j2并前进,j2∈{ci[i′]∩{C-tabuk-j1}};
第六步:当前路径长度大于本次m只蚂蚁相遇循环的最短路径,则终止此次相遇循环;
第七步:修改禁忌表指针,即选择好之后将蚂蚁移动到新的元素(城市),并把该元素(城市)移动到该蚂蚁个体的禁忌表中;
第八步:若集合C中元素(城市)未遍历完,即k<m,则跳转到第三步,否则继续到下一步第九步;
第九步:按照公式(9)自适应调节信息素残留系数ρ;
第十步:按照公式(11)计算本次m只成对的蚂蚁所循环最短路径的长度d(t)min,记录当前最优解;
第十一步:按照公式(12)计算本次m只成对的蚂蚁所循环路径长度的平均值d(t)aver;
第十二步:只有当d(t)min<d(t-1)min且D[k]<d(t)aver的时候,蚂蚁k才按照公式(5)计算Δτij k(t),同时按照升半正态云模型定性关联控制规则选定信息素的残留系数ρ和信息素强度Q;
第十三步:根据公式(3)和(4)更新每条路径上的信息素,并根据公式(13)将各条寻优路径上的残留信息素数量限制在[τmin,τmax];
第十四步:若满足结束条件,即如果循环次数NC≥NCmax,则循环结束并输出最优解,否则清空禁忌表并跳转到第二步。
本发明涉及一种解决大规模TSP的云模型小生境自适应蚁群优化方法,其优点及所达成的功效是:计算时间快,全局优化性能好,并具有较强的鲁棒性。
本发明是解决大规模TSP问题的有效技术途径,同时,该方法也可应用于解决其它组合优化问题。
(四)附图说明
图1现实中蚁群寻找食物的过程
图2基本蚁群算法的逻辑结构
图3云模型及其数字特征
图4单条定性关联规则构造原理
图5基本蚁群算法求解CH150TSP的进化过程
图6改进蚁群算法求解CH150TSP的进化过程
表1仿真计算结果比较
图中标号及符号说明如下:
CGA——对应输入平面语言值A的带U条件的云模型对象
CGB——对应输出平面语言值B的带V条件的云模型对象
Ex——特征期望值
En——熵
He——超熵
Drop(x,μ)—正态云分布规律的二维云滴
(五)具体实施方式
用上述基于云模型小生境的自适应蚁群算法和未改进的蚁群算法在同样初始化参数下对TSPLIB中的CH150TSP(即由150座城市组成的旅行商问题)进行了仿真实验,实验采用Matlab 6.5作为编程工具,在CPU为Pentium III、内存为256M、操作系统为Windows 2000的计算机上进行求解。云模型规则采用按照升半正态云模型定性关联控制规则选定信息素的残留系数ρ和信息素强度Q。
本发明所提出的解决大规模TSP的云模型小生境自适应蚁群优化方法的具体实现步骤如下:
Step1:参数初始化:云滴数为500个云滴,最优期望值Ex=0.5,熵En=0.2,超熵He=0.08;设置小生境参数中每个城市数组ci[i′]的规模为30,即i′=30;设置算法的参数α=1,β=4,ρmin=0.3,q0=0.35,Δτij(0)=0,NC=0,NCmax=500,m=90,n=150,ξ=0.95,T′=5,τmax=τij(0),τmin=τmax/300;
Step2:蚂蚁的禁忌表索引号k=1;
Step3:蚂蚁数目k←k+2;
Step4:每两只蚂蚁作为一个派对共同选择一个元素(城市)作为起点;
Step5:蚂蚁甲根据状态转移概率公式(1)和(8)计算的概率选择元素(城市)j1并前进,j1∈{ci[i′]∩{C-tabuk}};蚂蚁乙也根据状态转移概率公式(1)和(8)计算的概率选择元素(城市)j2并前进,j2∈{ci[i′]∩{C-tabuk-j1}}:
Step6:当前路径长度大于本次90只蚂蚁相遇循环的最短路径,则终止此次相遇循环;
Step7:修改禁忌表指针,即选择好之后将蚂蚁移动到新的元素(城市),并把该元素(城市)移动到该蚂蚁个体的禁忌表中;
Step8:若集合C中元素(城市)未遍历完,即k<90,则跳转到Step3,否则继续到下一步Step9;
Step9:按照公式(9)自适应调节信息素残留系数ρ:
Step10:按照公式(11)计算本次90只成对的蚂蚁所循环最短路径的长度d(t)min,记录当前最优解:
d(t)min=min{D[1],D[2],…,D[90]}
Step11:按照公式(12)计算本次90只成对的蚂蚁所循环路径长度的平均值d(t)aver:
Step12:只有当d(t)min<d(t-1)min且D[k]<d(t)aver的时候,蚂蚁k才按照公式(5)计算Δτij k(t),同时按照升半正态云模型定性关联控制规则选定信息素的残留系数ρ和信息素强度Q:
[规则1]:Ifρ>0.3 and t≤5 then选取较小的ρ和较小的Q;
[规则2]:Ifρ≤0.3 and t≤5 then选取较大的ρ和较小的Q;
[规则3]:Ifρ>0.3 and t>5 then选取较小的ρ和较大的Q;
[规则4]:Ifρ≤0.3 and t>5 then选取较大的ρ和较大的Q。
Step13:根据公式(3)和(4)更新每条路径上的信息素,并根据公式(13)将各条寻优路径上的残留信息素数量限制在[τmin,τmax]:
τij(t+150)=(1-ρ)·τij(t)+Δτij(t)
Step14:若满足结束条件,即如果循环次数NC≥500,则循环结束并输出最优解,否则清空禁忌表并跳转到Step2。
对基本蚁群算法和改进蚁群算法各进行20次数字仿真,并计算了蚁群算法的性能评价指标,仿真和计算结果如下列表1所示:
表1
性能指标 | 基本蚁群算法 | 改进蚁群算法 |
实际最优值 | 6258.0000 | 6258.0000 |
运算时间(s) | 247 | 115 |
最优计算值 | 6405.1057 | 6279.3508 |
计算平均值 | 6481.5179 | 6298.4001 |
循环次数 | 277 | 126 |
最佳性能(%) | 2.3507 | 0.3412 |
时间性能(%) | 5.5481 | 2.1149 |
鲁棒性能(%) | 3.5717 | 0.6456 |
组合性能(%) | 3.6762 | 0.9646 |
用未改进蚁群算法求解CH150TSP的进化过程如图5所示。用基于云模型小生境的自适应蚁群算法求解CH150TSP的进化过程如图6所示。
由实验结果可知,本发明提出的改进蚁群算法与未改进的基本蚁群算法相比较,搜索到全局最优解的时间少了将近一半,算法的鲁棒性大大增强,全局搜索速度和优化性能均得到了明显改善,改进后蚁群算法的组合性能较未改进蚁群算法提高了近3倍。
Claims (1)
1.一种解决大规模TSP的云模型小生境自适应蚁群优化方法,其特征在于:该方法的具体步骤如下:
第一步:参数初始化;
第二步:蚂蚁的禁忌表索引号k=1;
第三步:蚂蚁数目k←k+2;
第四步:每两只蚂蚁作为一个派对共同选择一个元素(城市)作为起点;
第五步:蚂蚁甲根据下列状态转移概率公式(1)和(8),即
式中,allowedk={C-tabuk}表示蚂蚁k下一步允许选择的城市,α为信息启发式因子
和
上式中,q0为挥发约束系数,且q0(0,1);
根据上列公式(1)和(8)计算的概率选择元素(城市)j1并前进,j1∈{ci[i′]∩{C-tabuk}};蚂蚁乙也根据上列状态转移概率公式计算的概率选择元素(城市)j2并前进,j2∈{ci[i′]∩{C-tabuk-j1}};
第六步:当前路径长度大于本次m只蚂蚁相遇循环的最短路径,则终止此次相遇循环;
第七步:修改禁忌表指针,即选择好之后将蚂蚁移动到新的元素(城市),并把该元素(城市)移动到该蚂蚁个体的禁忌表中;
第八步:若集合C中元素(城市)未遍历完,即k<m,则跳转到第三步,否则继续到下一步第九步;
第九步:按照下列公式(9)自适应调节信息素残留系数ρ;
式中,ξ为挥发约束系数,且ξ(0,1),ρmin为信息素残留系数下界;
第十步:按照公式
设集合
d(t)min=min{D[1],D[2],…,D[m]}
计算本次m只成对的蚂蚁所循环最短路径的长度d(t)min,记录当前最优解;
第十一步:按照下列公式
计算本次m只成对的蚂蚁所循环路径长度的平均值d(t)aver;
第十二步:只有当d(t)min<d(t-1)min且D[k]<d(t)aver的时候,蚂蚁k才按照下列公式(5)计算Δτij k(t),同时按照升半正态云模型定性关联控制规则选定信息素的残留系数ρ和信息素强度Q;
式中,Q表示信息素强度,Lk表示第k只蚂蚁在本次循环中所走路径的总长度;
第十三步:根据下列公式
τij(t+n)=(1-ρ)·τij(t)+Δτij(t) (3)
式中,ρ表示信息素挥发系数,则1-ρ表示信息素残留因子,为了防止信息的无限积累,ρ的取值范围为:ρ[0,1);Δτij(t)表示本次循环中路径(i,j)上的信息素增量,初始时刻Δτij(0)=0,Δτij k(t)表示第k只蚂蚁在本次循环中留在路径(i,j)上的信息量;
根据上列公式(3)和(4)更新每条路径上的信息素,并根据公式(13)将各条寻优路径上的残留信息素数量限制在[τmin,τmax];
第十四步:若满足结束条件,即如果循环次数NC≥NCmax,则循环结束并输出最优解,否则清空禁忌表并跳转到第二步。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007101217735A CN101118609A (zh) | 2007-09-13 | 2007-09-13 | 一种解决大规模tsp的云模型小生境自适应蚁群优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007101217735A CN101118609A (zh) | 2007-09-13 | 2007-09-13 | 一种解决大规模tsp的云模型小生境自适应蚁群优化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101118609A true CN101118609A (zh) | 2008-02-06 |
Family
ID=39054714
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007101217735A Pending CN101118609A (zh) | 2007-09-13 | 2007-09-13 | 一种解决大规模tsp的云模型小生境自适应蚁群优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101118609A (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101846978A (zh) * | 2010-05-20 | 2010-09-29 | 北京航空航天大学 | 一种基于gspn可靠性模型的可靠度分析方法 |
CN101872355A (zh) * | 2010-05-21 | 2010-10-27 | 杭州电子科技大学 | 一种基于征税机制的蚁群优化方法 |
CN101576968B (zh) * | 2009-06-19 | 2011-09-21 | 西安电子科技大学 | 基于云模型推理的目标威胁排序方法 |
CN102831316A (zh) * | 2012-08-24 | 2012-12-19 | 安徽农业大学 | 一种基于云本体的茶树虫害智能诊断原型系统 |
CN102932422A (zh) * | 2012-09-29 | 2013-02-13 | 南京邮电大学 | 基于改进蚁群算法的云环境任务调度方法 |
CN103530866A (zh) * | 2012-12-31 | 2014-01-22 | 刘玉超 | 一种基于高斯云变换的图像处理方法及装置 |
CN105067956A (zh) * | 2015-08-26 | 2015-11-18 | 云南电网有限责任公司电力科学研究院 | 一种基于蚁群算法配网故障定位的方法 |
CN107067091A (zh) * | 2016-10-11 | 2017-08-18 | 河南大学 | 一种基于蚁群优化算法的城市生态用地空间规划模型 |
CN107748499A (zh) * | 2017-10-27 | 2018-03-02 | 合肥工业大学 | 固定翼无人机多区域探测任务规划的优化方法及装置 |
CN108156643A (zh) * | 2017-12-26 | 2018-06-12 | 中国联合网络通信集团有限公司 | 一种路由选择方法及系统 |
CN110047289A (zh) * | 2019-04-28 | 2019-07-23 | 浙江工业大学 | 一种短时交通流量预测方法 |
CN112699611A (zh) * | 2020-12-31 | 2021-04-23 | 哈尔滨工业大学 | 一种基于人工蚁群算法的排水管网模型参数寻优方法 |
CN113850423A (zh) * | 2021-09-15 | 2021-12-28 | 河南工业大学 | 基于改进蚁群算法的最短路径规划方法 |
CN114844823A (zh) * | 2022-04-07 | 2022-08-02 | 桂林电子科技大学 | 一种改进aco算法的必经点有向带环最短链路生成方法 |
-
2007
- 2007-09-13 CN CNA2007101217735A patent/CN101118609A/zh active Pending
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101576968B (zh) * | 2009-06-19 | 2011-09-21 | 西安电子科技大学 | 基于云模型推理的目标威胁排序方法 |
CN101846978A (zh) * | 2010-05-20 | 2010-09-29 | 北京航空航天大学 | 一种基于gspn可靠性模型的可靠度分析方法 |
CN101872355A (zh) * | 2010-05-21 | 2010-10-27 | 杭州电子科技大学 | 一种基于征税机制的蚁群优化方法 |
CN102831316A (zh) * | 2012-08-24 | 2012-12-19 | 安徽农业大学 | 一种基于云本体的茶树虫害智能诊断原型系统 |
CN102831316B (zh) * | 2012-08-24 | 2015-02-11 | 安徽农业大学 | 一种基于云本体的茶树虫害智能诊断原型系统 |
CN102932422A (zh) * | 2012-09-29 | 2013-02-13 | 南京邮电大学 | 基于改进蚁群算法的云环境任务调度方法 |
CN102932422B (zh) * | 2012-09-29 | 2014-12-10 | 南京邮电大学 | 基于改进蚁群算法的云环境任务调度方法 |
CN103530866A (zh) * | 2012-12-31 | 2014-01-22 | 刘玉超 | 一种基于高斯云变换的图像处理方法及装置 |
CN103530866B (zh) * | 2012-12-31 | 2016-08-31 | 刘玉超 | 一种基于高斯云变换的图像处理方法及装置 |
CN105067956A (zh) * | 2015-08-26 | 2015-11-18 | 云南电网有限责任公司电力科学研究院 | 一种基于蚁群算法配网故障定位的方法 |
CN107067091A (zh) * | 2016-10-11 | 2017-08-18 | 河南大学 | 一种基于蚁群优化算法的城市生态用地空间规划模型 |
CN107748499A (zh) * | 2017-10-27 | 2018-03-02 | 合肥工业大学 | 固定翼无人机多区域探测任务规划的优化方法及装置 |
CN107748499B (zh) * | 2017-10-27 | 2020-09-01 | 合肥工业大学 | 固定翼无人机多区域探测任务规划的优化方法及装置 |
CN108156643A (zh) * | 2017-12-26 | 2018-06-12 | 中国联合网络通信集团有限公司 | 一种路由选择方法及系统 |
CN108156643B (zh) * | 2017-12-26 | 2020-06-02 | 中国联合网络通信集团有限公司 | 一种路由选择方法及系统 |
CN110047289A (zh) * | 2019-04-28 | 2019-07-23 | 浙江工业大学 | 一种短时交通流量预测方法 |
CN112699611A (zh) * | 2020-12-31 | 2021-04-23 | 哈尔滨工业大学 | 一种基于人工蚁群算法的排水管网模型参数寻优方法 |
CN113850423A (zh) * | 2021-09-15 | 2021-12-28 | 河南工业大学 | 基于改进蚁群算法的最短路径规划方法 |
CN114844823A (zh) * | 2022-04-07 | 2022-08-02 | 桂林电子科技大学 | 一种改进aco算法的必经点有向带环最短链路生成方法 |
CN114844823B (zh) * | 2022-04-07 | 2024-03-05 | 桂林电子科技大学 | 一种改进aco算法的必经点有向带环最短链路生成方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101118609A (zh) | 一种解决大规模tsp的云模型小生境自适应蚁群优化方法 | |
Chatzilygeroudis et al. | Quality-diversity optimization: a novel branch of stochastic optimization | |
Goldanloo et al. | A hybrid OBL-based firefly algorithm with symbiotic organisms search algorithm for solving continuous optimization problems | |
Bloembergen et al. | Evolutionary dynamics of multi-agent learning: A survey | |
Mavrovouniotis et al. | A memetic ant colony optimization algorithm for the dynamic travelling salesman problem | |
Gálvez et al. | New memetic self-adaptive firefly algorithm for continuous optimisation | |
Li et al. | A survey on firefly algorithms | |
CN112596515B (zh) | 一种多物流机器人移动控制方法及装置 | |
Perrin et al. | Mean field games flock! the reinforcement learning way | |
CN107330902B (zh) | 基于Arnold变换的混沌遗传BP神经网络图像分割方法 | |
Casillas et al. | Learning cooperative linguistic fuzzy rules using the best–worst ant system algorithm | |
Tang et al. | A hybrid whale optimization algorithm with artificial bee colony | |
Chakri et al. | Bat algorithm and directional bat algorithm with case studies | |
Pu et al. | Attention enhanced reinforcement learning for multi agent cooperation | |
Kulathunga | A reinforcement learning based path planning approach in 3D environment | |
Xiong et al. | Multi-feature fusion and selection method for an improved particle swarm optimization | |
Zhang et al. | A review of soft computing based on deep learning | |
Showalter et al. | Neuromodulated multiobjective evolutionary neurocontrollers without speciation | |
Liu et al. | Interactive reference region based multi-objective evolutionary algorithm through decomposition | |
Alipour et al. | A new multiagent reinforcement learning algorithm to solve the symmetric traveling salesman problem | |
Çam et al. | Learning parameter optimization of multi-layer perceptron using artificial bee colony, genetic algorithm and particle swarm optimization | |
Chen et al. | A novel marine predators algorithm with adaptive update strategy | |
Yang | FMFO: Floating flame moth-flame optimization algorithm for training multi-layer perceptron classifier | |
Kyriakis et al. | Pareto policy adaptation | |
Zhang et al. | Three-dimensional continuous picking path planning based on ant colony optimization algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |