两者在函数构造上的差异性
操作步骤 | GA | ALNS | 备注 |
---|---|---|---|
Node() | 完全相同 | ||
Sol() | 完全相同 | ||
Model() | 类似 | ||
1. 读取文件,并打造属性卡片 | 类似 | ||
2. 初始化参数:计算距离矩阵时间矩阵及初始信息素 | 完全相同 | ||
3. 计算路径费用 | 完全相同 | ||
4. 根据Pred提取路径 | 完全相同 | ||
5. 根据序列分割路径 | 完全相同 | ||
6. 构造初始解 | 完全相同 | ||
A1: 计算目标函数 | |||
B1-1:计算路径的成本 | |||
B1-2:计算种群适应度 | |||
A2-1:随机破坏 | |||
A2-2:最值破坏 | |||
B2: 交叉 | |||
A3-1:随机修复 | |||
A3-2:贪婪修复 | |||
B3:突变 |
下面是属于各自的思想方法所定义的函数,没有比较的意义了.暂停.所以对于同一个问题来说. 由于解空间相同–解的分割方法相同.只是解的提升优化的方法不同罢了.
参考链接:
相关文章:
3. 《[基因遗传算法]原理思想和python代码的结合理解之(一) :单变量》
4. 《[基因遗传算法]进阶之二:最优规划问题–多种编码方式+多变量》
5. 《[基因遗传算法]进阶之三:sko.GA的实践TSP》
6. 《[基因遗传算法]进阶之四:实践CVRP》
7. 《[基因遗传算法]进阶之五:实践VRPTW》
8. 《[基因遗传算法]进阶之六:VRP的进阶经典问题的解码如何写》