[发明专利]一种基于蚁群算法与Lin-Kernighan算法解决旅行商问题的杂交算法在审
申请号: | 201810522528.3 | 申请日: | 2018-05-28 |
公开(公告)号: | CN108764570A | 公开(公告)日: | 2018-11-06 |
发明(设计)人: | 高峰;赵富豪;刘厂;赵玉新;何忠杰 | 申请(专利权)人: | 哈尔滨工程大学 |
主分类号: | G06Q10/04 | 分类号: | G06Q10/04;G06N3/00 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 150001 黑龙江省哈尔滨市南岗区*** | 国省代码: | 黑龙江;23 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供一种基于蚁群算法与Lin‑Kernighan算法解决旅行商问题的杂交算法,将蚁群算法的优点和Lin‑kernighan算法的优点相结合并搜索到最优路径。蚁群算法和Lin‑kernighan算法的杂交过程如下:首先利用蚁群算法在每迭代一次蚁群算法之后,执行Lin‑kernighan算法得到最短路径,然后将蚁群算法得到的路径和Lin‑kernighan算法得到的路径用于更新信息素,然后重复执行此过程直到满足终止条件,输出最优路径。 | ||
搜索关键词: | 蚁群算法 算法 旅行商问题 最优路径 杂交 更新信息 杂交过程 终止条件 重复执行 最短路径 迭代 搜索 输出 | ||
【主权项】:
1.一种基于蚁群算法与Lin‑Kernighan算法解决旅行商问题的杂交算法,其特征在于:步骤如下:步骤1、旅行商问题分析采用TSPLIB库中数据集rand100进行试验,因此旅行商问题的成本矩阵中每个元素为二维欧几里得距离;步骤2、初始化蚂蚁和信息素首先定义如下符号:n为城市数量;bi(t)为在t时刻位于城市i的蚂蚁数量;m为蚁群中蚂蚁数量;tabuk(k=1,2,...,m)为蚂蚁k已经走过的城市;C={c1,c2,...,cn}为n个城市集合;α为信息启发因子;β为期望启发因子;allowedk={C‑tabuk}为蚂蚁k下一步能选择的城市;dij为两个城市间的距离;τij为城市i与城市j之间路径上的信息素强度;为启发函数,即蚂蚁从城市i到城市j的期望程度;ρ为信息素挥发系数,为1‑ρ表示信息素残留系数;为时刻t蚂蚁k由城市i到城市j的状态转移概率,且步骤3、每只蚂蚁根据信息素规划路径3.1.根据蚂蚁k的allowedk表通过轮盘原则选择蚂蚁k的下一个城市,并添加到禁忌表tabuk中;3.2.重复执行步骤3.1直至蚂蚁k的禁忌表tabuk包含n个城市;3.3重复执行步骤3.1和步骤3.2直至m个蚂蚁的禁忌表全部包含n个城市;步骤4、执行Lin‑Kernighan算法得到路径记T为当前路径,基本路径为任意两个端点间路径,在每一次迭代过程,Lin‑Kernighan算法找到两组链路集合,X={x1,x2,...,xr}和Y={y1,y2,...,yr},在保证得到为闭环路径的前提下使得从当前路径T删除X的链路然后添加为Y的链路,获得更短的路径长度;两组集合X和Y分别是由基本路径组成;在迭代开始之前,链路集合X和Y都为空;4.1:输入初始路径T;4.2:设置i=1,随机选择t1;4.3:选择任意基本路径x1=(t1,t2)∈T;4.4:选择使得G1>0;如果不存在,执行步骤4.12;4.5:(i+1)→i;4.6:选择xi=(t2i‑1,t2i)∈T时,如果满足t2i与t1相连且对于所有s<i,xi≠ys,得到路径T′,如果路径T′的长度小于路径T的长度,则T=T′,执行步骤4.2;4.7:选择时,必须满足Gi>0且对于所有s≤i,ys≠xi且存在xi+1条件,如果此时存在yi,执行步骤4.5;4.8:如果存在y2新的选择,那么令i=2,执行步骤4.7;4.9:如果存在x2新的选择,那么令i=2,执行步骤4.6;4.10:如果存在y1新的选择,那么令i=1,执行步骤4.4;4.11:如果存在x1新的选择,那么令i=1,执行步骤4.3;4.12:如果存在t1新的选择,那么执行步骤4.2;4.13:输出Lin‑Kernighan算法的路径;步骤5、根据步骤3和步骤4的路径更新信息素采用Ant‑Cycle模型进行信息素更新,将步骤3得到的m条路径和步骤4得到的路径,根据以下公式计算城市i和城市j之间的信息素,将所有城市之间的信息素进行更新;步骤6、反复执行步骤3、4和5直至满足终止条件。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工程大学,未经哈尔滨工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201810522528.3/,转载请声明来源钻瓜专利网。
- 同类专利
- 专利分类
G06 计算;推算;计数
G06Q 专门适用于行政、商业、金融、管理、监督或预测目的的数据处理系统或方法;其他类目不包含的专门适用于行政、商业、金融、管理、监督或预测目的的处理系统或方法
G06Q10-00 行政;管理
G06Q10-02 .预定,例如用于门票、服务或事件的
G06Q10-04 .预测或优化,例如线性规划、“旅行商问题”或“下料问题”
G06Q10-06 .资源、工作流、人员或项目管理,例如组织、规划、调度或分配时间、人员或机器资源;企业规划;组织模型
G06Q10-08 .物流,例如仓储、装货、配送或运输;存货或库存管理,例如订货、采购或平衡订单
G06Q10-10 .办公自动化,例如电子邮件或群件的计算机辅助管理
G06Q 专门适用于行政、商业、金融、管理、监督或预测目的的数据处理系统或方法;其他类目不包含的专门适用于行政、商业、金融、管理、监督或预测目的的处理系统或方法
G06Q10-00 行政;管理
G06Q10-02 .预定,例如用于门票、服务或事件的
G06Q10-04 .预测或优化,例如线性规划、“旅行商问题”或“下料问题”
G06Q10-06 .资源、工作流、人员或项目管理,例如组织、规划、调度或分配时间、人员或机器资源;企业规划;组织模型
G06Q10-08 .物流,例如仓储、装货、配送或运输;存货或库存管理,例如订货、采购或平衡订单
G06Q10-10 .办公自动化,例如电子邮件或群件的计算机辅助管理