Travelling Verkäufer in scipy

Wie löse ich ein Travelling Salesman-Problem in Python? Ich habe keine Bibliothek gefunden, es sollte eine Möglichkeit geben, scipy-Funktionen für die Optimierung oder andere Bibliotheken zu verwenden.

Meine Hacky-Extremelly-Lazy-Pythonic-Bruteforcing-Lösung ist:

tsp_solution = min( (sum( Dist[i] for i in izip(per, per[1:])), n, per) for n, per in enumerate(i for i in permutations(xrange(Dist.shape[0]), Dist.shape[0])) )[2]

where Dist (numpy.array) ist die Distanzmatrix. Wenn Dist zu groß ist, wird dies ewig dauern.

Vorschläge

Antworten auf die Frage(1)

Ihre Antwort auf die Frage