蚁群算法解决tsp问题python_用蚁群算法解决TSP问题

本文介绍了蚁群算法解决旅行商问题(TSP)的原理与关键步骤。蚁群通过信息素的交流与挥发,逐步找到最短路径。解的表达形式是路径的排列,信息素的初始值和更新机制对算法效果至关重要。蚁群规模通常限制在节点数以下。
摘要由CSDN通过智能技术生成

用蚁群算法解决

TSP

问题

一、引言

蚁群算法是一种受自然界生物行为启发而产生的“自然”算法,产生于对蚂

蚁行为的研究。蚁群中的蚂蚁以“信息素”为媒介,间接异步的相互联系。

蚂蚁在行动中,会在他们经过的地方留下一些化学物质,称为“信息素”

这些物质能被同一种群众后来的蚂蚁感受到,

并作为一种信号影响后者的行

动,

具体表现在后到的蚂蚁选择有这些物质的路径的可能性比选择没有这些

物质的路径的可能性大的多。后者留下的信息素会对原有的信息素进行加

强,并循环下去。这样,经过蚂蚁多的路径,后到蚂蚁选择这条路径的可能

性就越来越大。由于在一定的时间内,越短的路径会被越多的蚂蚁访问,因

而积累的信息素就越多,在下一个时间内被其他的蚂蚁选中的可能性也越

大。这个过程会持续到所有的蚂蚁都走到最短的那一条路径为止。

二、关键技术

(

1

)

解的表达形式

在应用蚁群优化算法时,只需要建立一个虚拟的始终点,相当于蚁群的

巢穴和食物所在地,这样一个所经过城市的路径的排列就构成了一个解;

(

2

)

信息素的记忆和更新

在算法开始时,由于从来没有蚂蚁去寻找过路径,因此可以认为是没有

任何先验信息,即每条路上的信息相等。客观地将,信息素应该都为

0

,但

是由于在蚁群算法中,信息素决定了蚂蚁选择这条路径的概率,因此可以认

为初始信息素矩阵为:

1/(

*(

1))

0

ij

N

N

p

i

j

i

j

其中

N

为城市数

当算法运行过程中,每次放出

m

支蚂蚁,每只蚂蚁按照信息素选择路径,将

其中路径最短的记录下来,对这条最短路进行信息素的加强;而对于其他路

径,因为信息素的挥发,信息素浓度将会降低,更新后的信息素矩阵为:

1

1

(1

)

/

/

(1

)

/

k

ij

k

ij

k

ij

p

N

p

p

i

j

i

j

经过路径

不经过路径

其中

N

为城市数,

为挥发系数

(

3

)

蚁群的规模

在一般应用中,

蚁群中蚂蚁的个数

m

是固定数,

不超过

TSP

图的节点数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值