DEAP:遗传算法 - eval 函数

DEAP: Genetic algorithm - eval function

我是 Python 和 DEAP 的初学者,我正在尝试了解 TSP 的评估函数,来自:https://github.com/DEAP/deap/blob/master/examples/ga/tsp.py

def evalTSP(individual):
    distance = distance_map[individual[-1]][individual[0]]
    for gene1, gene2 in zip(individual[0:-1], individual[1:]):
        distance += distance_map[gene1][gene2]
    return distance,

distance = distance_map[individual[-1]][individual[0]] [individual[-1]][individual[0]] 表示之前和当前个人职位之间的差异?

for gene1, gene2 in zip(individual[0:-1], individual[1:]) 即个体值0:11:

每个 individual 表示为一个 arrayindividual[-1]individual[0] 分别指个体的最后一个和第一个基因(即数组中的元素)。所以 distance_map[individual[-1]][individual[0]] 是存储在 DistanceMatrix 中的这两个基因之间的距离。

individual[0:-1] returns 包含 individual 除了最后一个基因的所有基因的数组。 individual[1:] returns 包含 individual 所有基因的数组,第一个除外。