我一直在尝试运行一个代码A,我会遇到此类错误。我不知道该如何处理,因为我是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()
如果您"找到"此代码(很可能在Internet上?),那么发布此代码的人在其机器中有一个libs
文件夹,其中包含GeneticAlgorhythm.py
模块,所以您要么要么查找此遗传学模块,否则您将无法成功运行此代码。
当您看到Python from baz.bar import Foo
中时,Python将在baz
文件夹中查找bar
模块,并从中导入Foo
。因此,您需要在PC上使用baz
模块,否则该错误将出现
它来自此存储库:https://github.com/reconndev/genetic-algorithm-tsp。为了使其运行,只需克隆或下载存储库即可。然后,在主(根)文件夹中,运行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