说明:节约里程法(Saving Algorithm)又称节约算法,是指用来解决运输车辆数目不确定的VRP问题的最有名的启发式算法。是由Clarke和Wright于1964年首次提出的。
背景
为什么写这个程序,因为我在做课设的时候算的过程太复杂了,一个数据出错要重算,当时就想做一个程序出来,但是因为课设只有一周的时间,所以只能作罢。附上我课设论文。虽然它只有74分o(╥﹏╥)o
https://github.com/ishelo/VRP-CW/blob/master/扫描算法介绍及题目.pdf
环境
windows 10 企业版LTSC
python 3.7.2
项目地址
项目核心代码
def savingsAlgorithms(self):
saving = 0
for i in range(1, len(self.q)):
self.Routes.append([i])
for i in range(1, len(self.Routes) + 1): # 使用Sij = Ci0 + C0j - Cij计算节约度
for j in range(1, len(self.Routes) + 1):
if i == j:
pass
else:
saving = (self.distance[i][0] + self.distance[0][j]) - self.distance[i][j]
self.savings.append([i, j, saving]) # 将结果以元组形式存放在列表中
self.savings = sorted(self.savings, key&