CN111695668A - 一种基于反向学习的蚁群算法优化方法 - Google Patents
一种基于反向学习的蚁群算法优化方法 Download PDFInfo
- Publication number
- CN111695668A CN111695668A CN202010549642.2A CN202010549642A CN111695668A CN 111695668 A CN111695668 A CN 111695668A CN 202010549642 A CN202010549642 A CN 202010549642A CN 111695668 A CN111695668 A CN 111695668A
- Authority
- CN
- China
- Prior art keywords
- path
- reverse
- pheromone
- node
- ant
- 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
- 238000000034 method Methods 0.000 title claims abstract description 25
- 238000005457 optimization Methods 0.000 title claims abstract description 19
- 239000003016 pheromone Substances 0.000 claims abstract description 49
- 241000257303 Hymenoptera Species 0.000 claims abstract description 15
- 238000012163 sequencing technique Methods 0.000 claims abstract description 3
- 230000007704 transition Effects 0.000 claims description 8
- 230000009191 jumping Effects 0.000 claims description 4
- 238000013461 design Methods 0.000 claims description 3
- 239000005712 elicitor Substances 0.000 claims description 3
- 230000009286 beneficial effect Effects 0.000 abstract description 3
- 238000010276 construction Methods 0.000 abstract description 3
- 238000011161 development Methods 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 2
- 230000002068 genetic effect Effects 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 238000002922 simulated annealing Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000004791 biological behavior Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000019637 foraging behavior Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000002028 premature Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Agricultural Chemicals And Associated Chemicals (AREA)
Abstract
本发明涉及一种基于反向学习的蚁群算法优化方法,用于求解旅行商问题。该算法的改进主要包括以下几点:1,在初始路径求出后,对初始路径中每个城市的序号进行反向,构造反向路径;2,将初始路径和反向路径分别按照长度从小到大排序,取其中的部分路径构成一组新的路径;3,设置一个迭代阈值,如果当前的迭代次数未达到迭代阈值时,对新的一组路径进行信息素更新;否则,则对初始路径进行信息素更新。本发明对基本蚁群算法的信息素更新方面做了改进,在迭代前期,引入反向学习构造反向路径,并参与信息素更新,有利于扩大蚂蚁的搜索范围,避免蚂蚁陷入局部极值,平衡了解空间的探索和开发。
Description
技术领域
本发明属于计算机技术领域,涉及一种基于反向学习的蚁群算法优化方法。
背景技术
随着科学技术的发展,优化方法在人工智能、电子科学、交通运输、公共管理等领域得到了广泛的应用。国内外许多专家学者从自然中得到启发,通过模拟自然现象和生物行为,提出了一系列优化算法,其中包括:人工势场法、模拟退火算法、遗传算法、粒子群算法以及蚁群算法等。其中,人工势场法缺乏全局信息,容易出现局部极值;模拟退火算法的收敛速度较慢,性能对参数较为敏感;遗传算法计算量大,且搜索速度较慢;粒子群算法容易出现早熟收敛,局部寻优能力较差;蚁群算法存在搜索时间过长、易陷入局部最优解等缺陷。
蚁群算法是通过模拟自然界中真实蚂蚁的觅食行为而提出的一种启发式搜索算法。根据研究发现,蚂蚁在寻找食物的过程中,会在其经过的路径上释放信息素。信息素能被其它蚂蚁所感知,并且会影响其它蚂蚁接下来的路径选择。路径越短,释放的信息素就越多。信息素浓度越高,蚂蚁选择该路径的概率就越大,而其他路径上的信息素浓度随着时间的推移而逐渐消减。最终,蚂蚁会找到一条从蚁巢到食物源的最短路径。
蚁群算法包括两个主要步骤:路径构建和信息素更新。在构建解过程中,通过随机比例规则,逐步建立优化问题的解;在信息素更新过程中,依据蚂蚁所构造的解,修改空间内的信息素浓度。凭借其具有较强的鲁棒性、分布式并行计算、易与其他算法相结合等优点,蚁群算法已经成功应用于旅行商问题、车辆路径规划问题、背包问题、连续函数寻优等多个领域。旅行商问题是一个经典的组合优化问题,简单描述为:求旅行商遍历完所有城市且每个城市只经过一次的最短路径。
发明内容
本发明的目的是提供一种基于反向学习的蚁群算法优化方法,用于求解旅行商问题。该算法通过引入反向学习算法构造反向路径,在信息素更新阶段,选择反向路径中部分效果较好的路径参与信息素更新,增加算法对解空间的探索,有利于算法跳出局部极值。
本发明采用的技术方案是:一种基于反向学习的蚁群算法优化方法,包括如下步骤:
S1:初始化蚁群算法参数,输入旅行商问题节点坐标;
S2:将每只蚂蚁随机放入任意一个节点中作为起始节点;
S3:每只蚂蚁从起始节点开始,按照状态转移规则选择下一个移动节点,直到遍历完所有节点,得到初始路径;
S4:设定一个迭代阈值R,判断当前迭代次数是否大于阈值R,若是则跳转至S6,否则对初始路径中每个城市的序号进行反向,构造反向路径;
S5:将初始路径和反向路径按照其路径长度进行排序,分别取其中部分路径构成一组新的路径;
S6:按照信息素更新公式,对路径进行信息素更新;
S7:判断是否达到最大迭代次数,若是则停止搜索,输出全局最优路径,否则跳转至S2进行下一次迭代;
进一步地,所述步骤S3的状态转移规则具体为:
蚂蚁在进行路径构建时,主要受信息素浓度和启发信息两个因素的影响。在t时刻,蚂蚁k从当前节点i移动到下一个节点j的状态转移概率为
其中:α和β是决定信息素和启发因子重要性的两个参数;τij表示边(i,j)上的信息素浓度;ηij为启发因子,表示从节点i到节点j的期望程度,通常取两个节点间距离的倒数;Jk(i)表示蚂蚁k下一步可选节点的集合。
进一步地,所述步骤S4中构造反向路径具体为:
首先根据下式,确定一个镜像点M:
进一步地,所述步骤S5中构成新路径的方法为:
当有m只蚂蚁搜索路径,初始路径的数量即为m条,反向路径同样为m条。将初始路径和反向路径分别按照长度从小到大排序,将初始路径中排列在前的m1条路径和反向路径中排列在前的m2条路径组合成新路径。其中,m=m1+m2.
进一步地,所述步骤S6中信息素更新公式具体为:
当蚂蚁遍历完所有节点得到完整路径后,对信息素进行调整。信息素更新公式如下
其中:Q表示信息素增强系数;Lk表示蚂蚁k完成一次周游后的路径长度。
本发明的有益效果是:通过引入反向学习算法构造反向路径,由于蚁群算法初始化方式类似于贪婪算法,因此构造的反向路径一般比初始路径的长度要长。即便如此反向路径中仍含有一些有效信息,在迭代前期,将部分长度较短的反向路径参与信息素更新,使反向路径上的信息素获得额外增量,能够增加蚂蚁对解空间的探索,避免算法陷入局部极值。在迭代后期,算法已经收敛到最优路径或接近最优路径,再使反向路径上的信息素获得额外增量已经没有意义,因此只选择在迭代前期引入反向学习,能够有效减少算法运行时间,提高算法的搜索效率。
附图说明
图1为本发明基于反向学习的蚁群算法优化方法的总体流程图;
图2为本发明实施例中与基本蚁群算法在kroA100算例下的迭代过程对比曲线;
图3为本发明实施例中与基本蚁群算法在pr226算例下的迭代过程对比曲线;
图4为本发明实施例中与基本蚁群算法在vm1084算例下的迭代过程对比曲线;
具体实施方式
为了便于理解下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、详细地描述。所描述的实施例仅是本发明的一部分实施例。
如图1所示,一种基于反向学习的蚁群算法优化方法,主要包括以下步骤:
S1:初始化蚁群算法参数,包括:蚂蚁数、迭代次数、启发因子、挥发系数、初始信息素浓度等;算例选用TSPLIB中的kroA100、pr226、vm1084进行实验测试,利用节点坐标计算出任意两个节点之间的距离;
S2:将每只蚂蚁随机放入任意一个节点中作为起始节点开始遍历;
S3:每只蚂蚁从起始节点开始,按照状态转移规则选择下一个移动节点,直到遍历完所有节点,得到初始路径。蚂蚁在进行路径构建时,主要受信息素浓度和启发信息两个因素的影响。在t时刻,蚂蚁k从当前节点i移动到下一个节点j的状态转移概率为
其中:α和β是决定信息素和启发因子重要性的两个参数;τij表示边(i,j)上的信息素浓度;ηij为启发因子,表示从节点i到节点j的期望程度,通常取两个节点间距离的倒数;Jk(i)表示蚂蚁k下一步可选节点的集合。
S4:设定一个迭代阈值R,判断当前迭代次数是否大于阈值R,若是则跳转至S6,否则对初始路径中每个城市的序号进行反向,构造反向路径,具体为:
首先根据下式,确定一个镜像点M:
S5:当有m只蚂蚁搜索路径,初始路径的数量即为m条,反向路径同样为m条。将初始路径和反向路径分别按照长度从小到大排序,将初始路径中排列在前的m1条路径和反向路径中排列在前的m2条路径组合成新路径。其中,m=m1+m2.
S6:求得路径后,对路径上的信息素进行调整。信息素更新公式如下
其中:Q表示信息素增强系数;Lk表示蚂蚁k完成一次周游后的路径长度。
S7:判断是否达到最大迭代次数,若是则停止搜索,输出全局最优路径,否则跳转至S2进行下一次迭代。
为了验证改进算法的有效性,将本发明提出的改进算法和基本蚁群算法进行比较,程序的编译环境为MATLAB R2016a。实验选取了kroA100、pr226、vm1084三个TSP测试算例对比两种算法在不同阶段的迭代进化曲线。实验结果如图2、图3、图4所示。
从图中可以看出,基本蚁群算法在迭代前期收敛速度优于本发明改进算法,而随着迭代的进行,基本蚁群算法的收敛速度逐渐降低,改进算法的收敛速度逐渐加快。改进算法的平均路径长度在迭代后期低于基本蚁群算法。在迭代前期,通过引入反向路径参与信息素更新对算法的收敛速度带来负面影响,这是因为改进算法在迭代前期主要对解空间进行探索;在迭代后期,改进算法不再对解空间进行探索,侧重于对解空间的开发,因此算法收敛速度加快,得到的解优于基本蚁群算法。实验结果表明,通过引入反向学习,有利于扩大蚂蚁的搜索范围,避免蚂蚁陷入局部极值,收敛速度和收敛结果均优于基本蚁群算法
以上结合附图对本发明的具体实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。
Claims (5)
1.一种基于反向学习的蚁群算法优化方法,其特征在于,包括以下步骤:
S1:初始化蚁群算法参数,输入旅行商问题节点坐标;
S2:将每只蚂蚁随机放入任意一个节点中作为起始节点;
S3:每只蚂蚁从起始节点开始,按照状态转移规则选择下一个移动节点,直到遍历完所有节点,得到初始路径;
S4:设定一个迭代阈值R,判断当前迭代次数是否大于阈值R,若是则跳转至S6,否则对初始路径中每个城市的序号进行反向,构造反向路径;
S5:将初始路径和反向路径按照其路径长度进行排序,分别取其中部分路径构成一组新的路径;
S6:按照信息素更新公式,对路径进行信息素更新;
S7:判断是否达到最大迭代次数,若是则停止搜索,输出全局最优路径,否则跳转至S2进行下一次迭代。
4.根据权利要求1所述的一种基于反向学习的蚁群算法优化方法,其特征在于,所述步骤S5中构成新路径的方法为:
当有m只蚂蚁搜索路径,初始路径的数量即为m条,反向路径同样为m条。将初始路径和反向路径分别按照长度从小到大排序,将初始路径中排列在前的m1条路径和反向路径中排列在前的m2条路径组合成新路径。其中,m=m1+m2。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010549642.2A CN111695668A (zh) | 2020-06-16 | 2020-06-16 | 一种基于反向学习的蚁群算法优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010549642.2A CN111695668A (zh) | 2020-06-16 | 2020-06-16 | 一种基于反向学习的蚁群算法优化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111695668A true CN111695668A (zh) | 2020-09-22 |
Family
ID=72481535
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010549642.2A Pending CN111695668A (zh) | 2020-06-16 | 2020-06-16 | 一种基于反向学习的蚁群算法优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111695668A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112183710A (zh) * | 2020-10-22 | 2021-01-05 | 中国联合网络通信集团有限公司 | 确定路径的方法及装置 |
CN112668542A (zh) * | 2021-01-07 | 2021-04-16 | 上海艾因思萌信息科技有限公司 | 基于蚁群算法的幼儿互动学习编辑方法 |
CN113009821A (zh) * | 2021-02-10 | 2021-06-22 | 上海海事大学 | 一种基于信息素初始分配和动态更新的蚁群算法优化方法 |
CN113253756A (zh) * | 2021-05-18 | 2021-08-13 | 河北科技大学 | 基于改进蚁群算法的无人机冲突解脱方法 |
CN114131932A (zh) * | 2021-11-25 | 2022-03-04 | 江苏科技大学 | 基于栅格化3d打印分区路径规划方法 |
CN117668671A (zh) * | 2024-02-01 | 2024-03-08 | 成都工业学院 | 一种基于机器学习的教育资源治理方法 |
CN114131932B (zh) * | 2021-11-25 | 2024-07-02 | 江苏科技大学 | 基于栅格化3d打印分区路径规划方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103345657A (zh) * | 2013-04-02 | 2013-10-09 | 江苏大学 | 云计算环境下基于遗传和蚁群的任务调度方法 |
CN106413021A (zh) * | 2016-09-18 | 2017-02-15 | 扬州大学 | 基于蚁群算法的无线传感网络路由方法 |
CN109214498A (zh) * | 2018-07-10 | 2019-01-15 | 昆明理工大学 | 基于搜索集中度和动态信息素更新的蚁群算法优化方法 |
CN111008685A (zh) * | 2019-11-26 | 2020-04-14 | 辽宁工程技术大学 | 基于生产者依概率反向再生机制的改进人工生态系统优化算法 |
-
2020
- 2020-06-16 CN CN202010549642.2A patent/CN111695668A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103345657A (zh) * | 2013-04-02 | 2013-10-09 | 江苏大学 | 云计算环境下基于遗传和蚁群的任务调度方法 |
CN106413021A (zh) * | 2016-09-18 | 2017-02-15 | 扬州大学 | 基于蚁群算法的无线传感网络路由方法 |
CN109214498A (zh) * | 2018-07-10 | 2019-01-15 | 昆明理工大学 | 基于搜索集中度和动态信息素更新的蚁群算法优化方法 |
CN111008685A (zh) * | 2019-11-26 | 2020-04-14 | 辽宁工程技术大学 | 基于生产者依概率反向再生机制的改进人工生态系统优化算法 |
Non-Patent Citations (2)
Title |
---|
刘中强;游晓明;刘升;: "一种启发式动态信息素更新策略的蚁群算法" * |
邓小飞;张志刚;: "基于改进蚁群算法的码垛机器人路径规划应用研究" * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112183710A (zh) * | 2020-10-22 | 2021-01-05 | 中国联合网络通信集团有限公司 | 确定路径的方法及装置 |
CN112183710B (zh) * | 2020-10-22 | 2023-11-24 | 中国联合网络通信集团有限公司 | 确定路径的方法及装置 |
CN112668542A (zh) * | 2021-01-07 | 2021-04-16 | 上海艾因思萌信息科技有限公司 | 基于蚁群算法的幼儿互动学习编辑方法 |
CN113009821A (zh) * | 2021-02-10 | 2021-06-22 | 上海海事大学 | 一种基于信息素初始分配和动态更新的蚁群算法优化方法 |
CN113253756A (zh) * | 2021-05-18 | 2021-08-13 | 河北科技大学 | 基于改进蚁群算法的无人机冲突解脱方法 |
CN114131932A (zh) * | 2021-11-25 | 2022-03-04 | 江苏科技大学 | 基于栅格化3d打印分区路径规划方法 |
CN114131932B (zh) * | 2021-11-25 | 2024-07-02 | 江苏科技大学 | 基于栅格化3d打印分区路径规划方法 |
CN117668671A (zh) * | 2024-02-01 | 2024-03-08 | 成都工业学院 | 一种基于机器学习的教育资源治理方法 |
CN117668671B (zh) * | 2024-02-01 | 2024-04-30 | 成都工业学院 | 一种基于机器学习的教育资源治理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111695668A (zh) | 一种基于反向学习的蚁群算法优化方法 | |
CN111310999B (zh) | 一种基于改进蚁群算法的仓库移动机器人路径规划方法 | |
Magzhan et al. | A review and evaluations of shortest path algorithms | |
Brezina Jr et al. | Solving the travelling salesman problem using the ant colony optimization | |
Huang et al. | A discrete shuffled frog-leaping algorithm based on heuristic information for traveling salesman problem | |
CN105426992B (zh) | 移动机器人旅行商优化方法 | |
CN105717926A (zh) | 基于改进蚁群算法的移动机器人旅行商优化方法 | |
CN106228265B (zh) | 基于改进粒子群优化的总拖期运输计划调度方法 | |
Yu et al. | A new design of genetic algorithm for solving TSP | |
CN114611801A (zh) | 一种基于改进的鲸鱼优化算法的旅行商问题求解方法 | |
CN104808661A (zh) | 一种旅游路径规划方法 | |
Saud et al. | Solving travelling salesman problem by using optimization algorithms | |
CN115271273A (zh) | 基于改进鲸鱼优化算法的旅行商问题求解方法及系统 | |
Wickman et al. | A Generic Graph Sparsification Framework using Deep Reinforcement Learning | |
CN113778090A (zh) | 基于蚁群优化和prm算法的移动机器人路径规划方法 | |
CN113219991A (zh) | 一种基于改进acs算法的移动机器人路径规划方法 | |
Acan | An external partial permutations memory for ant colony optimization | |
Abeysundara et al. | A genetic algorithm approach to solve the shortest path problem for road maps | |
Meng et al. | Heterogeneous ant colony optimization based on adaptive interactive learning and non-zero-sum game | |
CN112000105A (zh) | 一种基于交流策略蚁群算法的移动机器人路径规划方法 | |
Gong et al. | An improved ant colony optimization algorithm based on fractional order memory for traveling salesman problems | |
CN113009821B (zh) | 一种基于信息素初始分配和动态更新的蚁群算法优化方法 | |
CN115933669A (zh) | 基于改进蝴蝶优化算法的移动机器人路径规划方法 | |
Nemani et al. | Algorithms and optimization techniques for solving TSP | |
CN114996278A (zh) | 一种基于强化学习的路网最短路径距离计算方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200922 |