一种解决大规模tsp的云模型小生境自适应蚁群优化方法

文档序号:6610304阅读:275来源:国知局
专利名称:一种解决大规模tsp的云模型小生境自适应蚁群优化方法
技术领域
本发明涉及一种解决大规模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)计算Δτijk(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 用未改进蚁群算法求解CH150TSP的进化过程如图5所示。用基于云模型小生境的自适应蚁群算法求解CH150TSP的进化过程如图6所示。
由实验结果可知,本发明提出的改进蚁群算法与未改进的基本蚁群算法相比较,搜索到全局最优解的时间少了将近一半,算法的鲁棒性大大增强,全局搜索速度和优化性能均得到了明显改善,改进后蚁群算法的组合性能较未改进蚁群算法提高了近3倍。
权利要求
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)计算Δτijk(t),同时按照升半正态云模型定性关联控制规则选定信息素的残留系数ρ和信息素强度Q;
式中,Q表示信息素强度,Lk表示第k只蚂蚁在本次循环中所走路径的总长度;
第十三步根据下列公式
τij(t+n)=(1-ρ)·τij(t)+Δτij(t)(3)
式中,ρ表示信息素挥发系数,则1-ρ表示信息素残留因子,为了防止信息的无限积累,ρ的取值范围为ρ

第十四步若满足结束条件,即如果循环次数NC≥NCmax,则循环结束并输出最优解,否则清空禁忌表并跳转到第二步。
全文摘要
本发明提供了一种解决大规模TSP的云模型小生境自适应蚁群优化方法。它包括如下步骤参数初始化,并利用小生境构建蚂蚁在大规模TSP中的移动范围;每两只蚂蚁作为一个派对共同选择一个城市作为起点;根据状态转移概率计算的概率选择城市前进,若当前路径长度大于本次m只蚂蚁相遇循环的最短路径,则终止此次相遇循环;然后修改禁忌表指针,并自适应调节信息素残留系数;计算本次m只成对的蚂蚁所循环路径长度的平均值;按照升半正态云模型定性关联控制规则选定信息素的残留系数和信息素强度;更新每条路径上的信息素,并将各条寻优路径上的残留信息素数量限制在某一范围;重复上述过程,直至满足算法结束条件,最后输出最优解。
文档编号G06Q10/00GK101118609SQ20071012177
公开日2008年2月6日 申请日期2007年9月13日 优先权日2007年9月13日
发明者段海滨, 于秀芬, 王道波 申请人:北京航空航天大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1