Zum Inhalt springen

Min-Plus-Matrixmultiplikations-Algorithmus

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 5. August 2013 um 22:11 Uhr durch Wdvorak (Diskussion | Beiträge) (+ Abschnitt Zusammenhang mit Kürzesten Pfaden). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Der Min-Plus-Matrixmultiplikations-Algorithmus ist ein Algorithmus der Graphentheorie, der die kürzesten Pfade eines Graphen berechnet. Er läuft mit einer speziellen Matrizenoperation und hat zudem den Vorteil, dass bei jedem Berechnungsschritt automatisch alle Informationen über erreichbare Wege innerhalb der bisher angegebenen Anzahl der Berechnungsschritte verfügbar sind. Er ist allerdings sehr rechenintensiv und daher langsam.

Definitionen

Gegeben seien ein gerichteter Graph und eine Matrix mit Gewichten , wobei die Indizes und über die Menge laufen.

Bewertungsmatrix

Die Kostenmatrix oder Bewertungsmatrix ist dann wie folgt definiert:

Entfernungsmatrix

Die Entfernungsmatrix ist wie folgt definiert

Matrizenoperation ⊕

seien zwei -Matrizen. Die Matrix berechnet sich wie folgt:

wobei gelten soll .

ist also die Multiplikation von Matrizen über einem Halbring mit .

Statt schreiben wir kurz .

Zusammenhang mit Kürzesten Pfaden

Für einen gerichteten Graph mit positiven Kantengewichten (oder mit konservativer Gewichtsfunktion) gilt:

  • Die Matrix gibt die Länge der kürzesten Pfade mit maximal Kanten an. Der Eintrag gibt dabei die Länges des kürzesten Pfad (mit maximal Kanten) von Knoten zu Knoten an.
  • Wenn die Anzahl der Knoten ist dann gibt die Länge der kürzesten Pfade an. Der Eintrag gibt dabei die Länges des kürzesten Pfad von Knoten zu Knoten an.
  • Wenn die Anzahl der Knoten ist dann gilt für alle .

Algorithmus

1. sei die Kostenmatrix des Netzwerkes N

2. Berechne gilt irgendwann , so ist

oder

2. Berechne gilt irgendwann , so ist

Siehe auch

Quellen