2014-02-07 8 views
6

Ist es möglich, einen der bekannten Algorithmen (Dijkstra/Floyd-Warshall usw.) für das APSP-Problem zu erwärmen, um die Zeitkomplexität und möglicherweise die Rechenzeit zu reduzieren?Alle Paare kürzester Weg - Warmstart?

Nehmen wir an, der Graph wird durch eine NxN-Matrix dargestellt. Ich betrachte nur Änderungen in einem oder mehreren Matrixeinträgen (<N1212), d. H. Abstand zwischen den entsprechenden Scheitelpunkten, zwischen irgendwelchen 2 Aufrufen der Algorithmusprozedur. Können wir die Lösung aus dem ersten Aufruf und nur die inkrementellen Änderungen der Matrix verwenden, um die Berechnung beim zweiten Aufruf des Algorithmus zu beschleunigen? Ich schaue hauptsächlich auf dichte Matrizen, aber wenn es Methoden für spärliche Matrizen gibt, können Sie diese gerne teilen. Vielen Dank.

+0

Ich bin eher an Antworten auf diese Frage interessiert, aber ich denke, es ist besser, es auf http://cs.stackexchange.com/ zu veröffentlichen. Vielleicht möchten Sie weitere Details wie, ob Sie die gleiche Quelle suchen und über verschiedene Anrufe sinken (in diesem Fall denke ich, dass es möglich sein könnte, einige Werte wiederverwenden) – yanhan

+0

Danke für den Tipp - ich werde es bei der cs staplexchange auch. Ich interessiere mich mehr für den allgemeinen Fall der Bestimmung der Abstände zwischen allen Paaren von Knoten/Scheitelpunkten bei jedem Aufruf (und wenn möglich auch dem Pfad mit den geringsten Kosten). – user3282279

+1

FYI: Ich bemerkte die folgende Diskussion auf cs staplexchange zu diesem Thema von dynamischen Diagrammen: http://cs.stackexchange.com/q/7250/14479 – user3282279

Antwort

2

Mir ist kein inkrementeller Algorithmus für APSP bekannt. Es gibt jedoch eine inkrementelle Version von A * zur Lösung von TSS, genannt Lifelong Planning A * (auch bekannt als 'LPA *, selten auch' Incremental A * '), was zu sein scheint, was Sie in der Sekunde fragen Absatz.

Here ist ein Link zum Original-Papier. Sie können weitere Informationen darüber in this post über A * Variationen finden.

1

Eine interessante Studie Papier ist: Experimental Analysis of Dynamic All Pairs Shortest Path Algorithms [Demetrescu, Emiliozzi, Italiano]:

Wir präsentieren die Ergebnisse einer umfangreichen Rechen Studie über dynamische Algorithmen für alle Paare kürzesten Weg Probleme. Wir beschreiben unsere Implementierungen der jüngsten dynamischen Algorithmen von King [18] und von Demetrescu und Italiano [7], und vergleichen sie mit dem dynamischen Algorithmus von Ramalingam und Reps [25] und zu statischen Algorithmen auf zufällig, real Welt und harte Instanzen. Unsere experimentellen Daten legen nahe, dass einige der dynamischen Algorithmen und ihre algorithmischen Techniken in vielen Situationen von praktischem Wert sein können.

Ein weiterer interessanter verteilt Algorithmus ist Engineering a New Algorithm for Distributed Shortest Paths on Dynamic Networks [Cicerone, D’Angelo, Di Stefano, Frigioni, Maurizio]:

Wir untersuchen das Problem der dynamisch alle Paare kürzesten Pfade in einem verteilten Netzwerk zu aktualisieren, während Kantenaktualisierungsoperationen zum Netzwerk auftreten . Wir betrachten den praktischen Fall eines dynamischen Netzwerks, in dem eine Kantenaktualisierung auftreten kann, während ein oder mehrere andere Kantenaktualisierungen in Verarbeitung sind.

können Sie mehr Ressourcen für alle Paare Kürzeste Wege auf dynamischen Netzwerken Suche finden.

Verwandte Themen