Advertisement

TSP问题之二边逐次修正法

阅读量:

TSP问题二边逐次修正法解析

  • 算法实施流程
    • 程序实现代码
    • 案例分析1(无向图示例)
    • 案例分析2(有向图示例)

算法步骤解析

在这里插入图片描述

算法代码

原有算法仅适用于无向图结构,而下述代码实现了对无向图与有向图两种类型的支持。

复制代码
    import numpy as np
    
    
    def ebzcxz(D, H):
    # 计算初始H圈权值
    W = 0
    for i, j in zip(H, H[1:] + [H[0]]):
        W += D[i, j]
    print('初始H圈为:', [i + 1 for i in H], '权值和为;', W)
    
    # 计算顶点数
    N = D.shape[0]
    
    # 初始化迭代次数
    k_iter = 1
    
    while 1:
        # 取出H圈中一对相邻点
        for i1, j1 in zip(H, H[1:] + [H[0]]):

全部评论 (0)

还没有任何评论哟~