此次使用python实现蚁群算法是仿照蚁群优化算法的JAVA实现中的蚁群算法实现方法,使用的也是其中的数据(此处为上传数据),如需更深一步了解蚁群算法原理和具体实现过程,请参考蚁群优化算法的JAVA实现和蚁群算法java实现以及TSP问题蚁群算法求解。
# ants 类
import numpy as np
import random
import math
class ant:
Tour = 0
unvisitedcity = 0
tourlength = 0
citys = 0
count = 0
def RandomSelectCity(self,citycount):
ant.citys = citycount
ant.tourlength = 0
ant.Tour = np.zeros((citycount+1),int)
ant.unvisitedcity = np.ones((citycount))
for i in np.arange(citycount):
ant.Tour[i] = -1
firstcity = random.randint(0,citycount-1)
ant.unvisitedcity[firstcity] = 0 #0表示已经访问过
ant.Tour[0] = firstcity #起始城市
def SelectNextCity(self,index,tao,distance):
p = np.zeros((ant.citys)) #citys
x = 0
alph