L'Algorithme D'Optimisation - La Route La Plus Courte Entre Plusieurs Points

Problème: j'ai une grande collection de points. Chacun de ces points a une liste avec des références à d'autres points de la distance entre eux déjà calculées et stockées. J'ai besoin de déterminer la route la plus courte qui commence à partir d'une origine et passe à travers un certain nombre de points à n'importe quelle destination.

Ex: je suis en vacances et je suis rester dans une ville spécifique. Je suis en train de faire un voyage d'une MANIÈRE de voir TOUT quatre villes, et je veux voyager le moins de distance possible. Je ne peux pas voir la même ville plus d'une fois.

Solution actuelle: maintenant je suis en parcourant toutes les possibilités manuellement et de stocker le chemin le plus court. Cela fonctionne, mais se sent inefficace. Aussi, ce problème finira par être élargi pour inclure la recherche à partir de plusieurs points d'origine à de multiples points de destination, donc je pense que cela pourrait exploser en l'espace de recherche.

Quelle est la meilleure façon de rechercher le chemin le plus court?

Est-ce un directionnelle ou bidirectionnelle graphique? Je ne peux pas dire.
Quelques réponses ici (TSP, de Floyd-Warshall, en Largeur d'Abord, Branch and Bound) sont des dérivés de follement incohérentes et contradictoires, les interprétations de cette question, de sorte que je suis enclin à penser que la question ici n'est pas formulé de manière très bien.
Permettez-moi de reformuler: un exemple en est, je suis en vacances et je vais rester à une seule ville. Je veux voir TOUT QUATRE villes de départ de la mienne, et je veux voyager le moins de distance possible. Je ne peux pas voir la même ville plus d'une fois.
Votre récente édition change complètement la façon dont j'ai interprété votre question.
Oh mon dieu. Qui invalide de Floyd-Warshall à base de solution si dur qu'ils ont même l'air tout à fait ridicule 🙂

OriginalL'auteur Chris Douglass | 2009-10-02