我一直试图运行一个代码找到,我得到这种错误。我不知道如何处理这个因为我是python的新手,并试图理解TSP问题的概念。任何帮助将不胜感激下面的代码
from libs.GeneticAlgorithm import GeneticAlgorithm
def main():
poland = Country()
poland.add([
City('Gorlice', (49.655299, 21.159769)),
City('Sosnowiec', (50.286263, 19.104078)),
City('Łódź', (51.760229, 19.457209)),
City('Wrocław', (51.108314, 17.037802)),
City('Poznań', (52.406376, 16.925167)),
City('Toruń', (53.013790, 18.598444)),
City('Zielona Góra', (51.935619, 15.506186)),
City('Szczecin', (53.428543, 14.552812)),
City('Rzeszów', (50.041187, 21.999121)),
City('Kraków', (50.049683, 19.944544)),
City('Olsztyn', (53.770226, 20.490189)),
City('Lublin', (51.245376, 22.568278))
])
print('Cities:', end=' ')
print(*(city for city in poland.cities), sep=', ')
ga = GeneticAlgorithm(100, mutation_rate=0.5, ptype=Route, args=(poland.cities,))
ga.run(seconds=10)
fittest = ga.alltime_best
best_fitness = fittest.fitness
print('Best route:', fittest)
print('Best fitness:', best_fitness)
print('Generations:', ga.generation)
if __name__ == '__main__':
main()
如果你“找到”了这段代码(很可能是在互联网上?)那么发布这个代码的人在他的机器上有一个libs
文件夹,里面有一个GeneticAlgorhythm.py
模块,所以你要么找到这个GeneticAlgorhythm模块,要么你不会能够成功运行此代码。
当你看到,在python from baz.bar import Foo
中,Python将在bar
文件夹中查找baz
模块,并从中导入类Foo
。所以你需要在你的电脑上安装baz
模块,否则会出现错误
它来自这个存储库:https://github.com/reconndev/Genetic-Algorithm-TSP。为了使其运行,只需克隆或下载存储库即可。然后,在main(root)文件夹中,运行python TSP-Text.py
。
python TSP-Text.py
Cities: Gorlice, Sosnowiec, Łódź, Wrocław, Poznań, Toruń, Zielona Góra, Szczecin, Rzeszów, Kraków, Olsztyn, Lublin
Best route: Toruń->Olsztyn->Łódź->Lublin->Rzeszów->Gorlice->Sosnowiec->Kraków->Wrocław->Zielona Góra->Szczecin->Poznań
Best fitness: 0.4219619417258425
Generations: 807