Minimaler Überspannen-Baum

In Anbetracht eines verbundenen, ungeleiteten Graphen ist ein Überspannen-Baum dieses Graphen ein Subgraph, der ein Baum ist und alle Scheitelpunkte zusammen verbindet. Ein einzelner Graph kann viele verschiedene Überspannen-Bäume haben. Wir können auch ein Gewicht jedem Rand zuteilen, der ein Zahl-Darstellen ist, wie ungünstig es ist, und verwenden Sie das, um ein Gewicht einem Überspannen-Baum zuzuteilen, indem Sie die Summe der Gewichte der Ränder in diesem Überspannen-Baum schätzen. Ein minimaler Überspannen-Baum (MST) oder minimaler Gewicht-Überspannen-Baum sind dann ein Überspannen-Baum mit dem Gewicht weniger als oder gleich dem Gewicht jedes anderen Überspannen-Baums. Mehr allgemein hat jeder ungeleitete Graph (nicht notwendigerweise verbunden) einen minimalen Überspannen-Wald, der eine Vereinigung von minimalen Überspannen-Bäumen für seine verbundenen Bestandteile ist.

Ein Beispiel würde eine Kabelfernsehen-Gesellschaft sein, die Kabel zu einer neuen Nachbarschaft legt. Wenn es beschränkt wird, das Kabel nur entlang bestimmten Pfaden zu begraben, dann würde es ein Graph-Darstellen geben, welche Punkte durch jene Pfade verbunden werden. Einige jener Pfade könnten teurer sein, weil sie länger sind, oder verlangen, dass das Kabel tiefer begraben wird; diese Pfade würden durch Ränder mit größeren Gewichten vertreten. Ein Überspannen-Baum für diesen Graphen würde eine Teilmenge jener Pfade sein, die keine Zyklen hat, aber noch zu jedem Haus in Verbindung steht. Es könnte mehrere mögliche Überspannen-Bäume geben. Ein minimaler Überspannen-Baum würde ein mit den niedrigsten Gesamtkosten sein.

Eigenschaften

Mögliche Vielfältigkeit

Es kann mehrere minimale Überspannen-Bäume desselben Gewichts geben, das eine minimale Zahl von Rändern hat; insbesondere wenn alle Rand-Gewichte eines gegebenen Graphen dasselbe sind, dann ist jeder Überspannen-Baum dieses Graphen minimal.

Wenn es n Scheitelpunkte im Graphen gibt, dann hat jeder Baum n-1 Ränder.

Einzigartigkeit

Wenn jeder Rand ein verschiedenes Gewicht dann hat, wird es nur einen, einzigartigen minimalen Überspannen-Baum geben. Das kann durch die Induktion oder den Widerspruch bewiesen werden. Das ist in vielen realistischen Situationen wie das Kabelfernsehen-Firmenbeispiel oben wahr, wo es unwahrscheinlich ist, dass irgendwelche zwei Pfade genau dieselben Kosten haben. Das verallgemeinert zum Überspannen von Wäldern ebenso.

Ein Beweis der Einzigartigkeit durch den Widerspruch ist wie folgt.

  1. Sagen Sie, dass wir einen Algorithmus haben, der einen MST findet (den wir A nennen werden) gestützt auf der Struktur des Graphen und der Ordnung der Ränder, wenn bestellt, durch das Gewicht. (Solche Algorithmen bestehen wirklich, sehen unten.)
  2. Nehmen Sie an, dass MST A nicht einzigartig ist.
  3. Es gibt einen anderen Überspannen-Baum mit dem gleichen Gewicht, sagen Sie MST B.
  4. Lassen Sie e1 ein Rand sein, der in A, aber nicht in B ist.
  5. Da B ein MST ist, {e1} muss B einen Zyklus C enthalten.
  6. Dann sollte B mindestens einen Rand e2 einschließen, der nicht in A ist und auf C liegt.
  7. Nehmen Sie an, dass das Gewicht von e1 weniger ist als dieser von e2.
  8. Ersetzen Sie e2 durch e1 in B-Erträgen der Überspannen-Baum {e1} B - {e2}, der ein kleineres Gewicht im Vergleich zu B hat.
  9. Widerspruch. Da wir angenommen haben, dass B ein MST ist, aber es ist nicht.

Wenn das Gewicht von e1 größer ist als dieser von e2, ein ähnliches Argument, das einschließt

Baum {e2} - {e1} führt auch zu einem Widerspruch. So beschließen wir, dass die Annahme, dass es einen zweiten MST geben kann, falsch war.

Subgraph des Minimum-gekosteten

Wenn die Gewichte positiv sind, dann ist ein minimaler Überspannen-Baum tatsächlich der Subgraph des Minimum-gekosteten, der alle Scheitelpunkte verbindet, da Subgraphen, die Zyklen notwendigerweise enthalten, mehr Gesamtgewicht haben.

Zyklus-Eigentum

Für jeden Zyklus C im Graphen, wenn das Gewicht eines Randes e C größer ist als die Gewichte anderer Ränder von C, dann kann dieser Rand nicht einem MST gehören. Das Annehmen des Gegenteiles, d. h. dass e einem MST T1 gehört, dann e löschend, wird T1 in zwei Subbäume mit den zwei Enden von e in verschiedenen Subbäumen brechen. Der Rest von C verbindet die Subbäume wieder, folglich gibt es einen Rand f C mit Enden in verschiedenen Subbäumen, d. h. es verbindet die Subbäume in einen Baum T2 mit dem Gewicht weniger wieder als dieser von T1, weil das Gewicht von f weniger ist als das Gewicht von e.

Kürzungseigentum

Für jede Kürzung C im Graphen, wenn das Gewicht eines Randes e C kleiner ist als die Gewichte aller anderen Ränder von C, dann gehört dieser Rand dem ganzen MSTs des Graphen. Nehmen Sie tatsächlich das Gegenteil zum Beispiel an, Rand v. Chr. (hat 6 beschwert) gehört dem MST T statt des Randes e (hat 4 beschwert) in der linken Zahl. Dann wird das Hinzufügen e zu T einen Zyklus erzeugen, während das Ersetzen v. Chr. durch e MST des kleineren Gewichts erzeugen würde.

Rand des Minimum-gekosteten

Wenn der Rand eines Graphen mit dem Minimum-Kostene einzigartig ist, dann wird dieser Rand in jeden MST eingeschlossen. Tatsächlich, wenn e nicht war

eingeschlossen in den MST, einigen (größere Kosten) Ränder im Zyklus entfernend, der nach dem Hinzufügen e zum MST gebildet ist, würde einen nachgeben

das Überspannen des Baums des kleineren Gewichts.

Algorithmen

Der erste Algorithmus, für einen minimalen Überspannen-Baum zu finden, wurde vom tschechischen Wissenschaftler Otakar Borůvka 1926 entwickelt (sieh Borůvka's Algorithmus). Sein Zweck war ein effizienter elektrischer Einschluss Mährens. Es gibt jetzt zwei Algorithmen allgemein verwendet, den Algorithmus von Prim und den Algorithmus von Kruskal. Alle drei sind gierige Algorithmen, die in der polynomischen Zeit laufen, so ist das Problem, solche Bäume zu finden, in FP, und verwandte Entscheidungsprobleme wie Bestimmung, ob ein besonderer Rand im MST oder der Bestimmung ist, wenn das minimale Gesamtgewicht einen bestimmten Wert überschreitet, in P sind. Ein anderer gieriger Algorithmus, ist nicht wie allgemein verwendet, die Rückseite - löschen Algorithmus, der die Rückseite des Algorithmus von Kruskal ist.

Wenn die Rand-Gewichte ganze Zahlen sind, dann sind deterministische Algorithmen bekannt, die das Problem in O (M + n) Operationen der ganzen Zahl beheben. In einem Vergleich-Modell, in dem die einzigen erlaubten Operationen auf Rand-Gewichten pairwise Vergleiche sind, hat gefunden, dass eine geradlinige Zeit randomized Algorithmus, der auf einer Kombination des Borůvka's Algorithmus und der Rückseite gestützt ist - Algorithmus löscht. Ob das Problem deterministisch in der geradlinigen Zeit durch einen Vergleich-basierten Algorithmus behoben werden kann, bleibt eine geöffnete Frage jedoch. Der schnellste non-randomized Vergleich-basierte Algorithmus mit der bekannten Kompliziertheit, durch

Bernard Chazelle, basiert auf dem weichen Haufen,

eine ungefähre Vorzugswarteschlange.

Seine Laufzeit ist O (M α (M, n)), wo M die Zahl von Rändern ist, ist n die Zahl von Scheitelpunkten, und α ist das klassische funktionelle Gegenteil der Funktion von Ackermann. Die Funktion α wächst äußerst langsam, so dass zu allen praktischen Zwecken es als eine Konstante betrachtet werden kann, die nicht größer ist als 4; so nimmt der Algorithmus von Chazelle sehr in der Nähe von der geradlinigen Zeit. Seth Pettie und Vijaya Ramachandran haben einen nachweisbar optimalen deterministischen Vergleich-basierten minimalen Überspannen-Baumalgorithmus gefunden, dessen rechenbetonte Kompliziertheit unbekannt ist.

Forschung hat auch parallele Algorithmen für das minimale Überspannen-Baumproblem gedacht.

Mit einer geradlinigen Zahl von Verarbeitern ist es möglich, das Problem rechtzeitig zu beheben.

demonstrieren Sie einen Algorithmus, der MSTs 5mal schneller auf 8 Verarbeitern schätzen kann als ein optimierter folgender Algorithmus. Später schlagen Nobari. darin einen neuartigen, ersteigbaren, parallelen Algorithmus von Minimum Spanning Forest (MSF) für ungeleitete belastete Graphen vor. Dieser Algorithmus-Einfluss-Algorithmus von Prim auf eine parallele Mode, gleichzeitig mehrere Teilmengen des geschätzten MSF ausbreitend. PMA minimiert die Kommunikation unter verschiedenen Verarbeitern, indem er das lokale Wachstum eines geschätzten Subbaums eines Verarbeiters nicht beschränkt wird. Tatsächlich erreicht PMA eine Skalierbarkeit, an der vorherige Annäherungen Mangel gehabt haben. PMA überbietet in der Praxis den vorherigen modernsten GPU-basierten MSF Algorithmus, mehrere Größenordnung schneller seiend, als folgende Zentraleinheitsbasierte Algorithmen.

Andere Spezialalgorithmen sind für minimale Rechenüberspannen-Bäume eines so großen Graphen entworfen worden, dass der grösste Teil davon auf der Platte zu jeder Zeit versorgt werden muss. Diese Außenlagerungsalgorithmen, zum Beispiel wie beschrieben, in der "Technik ein Außenspeicherminimum das Überspannen des Baumalgorithmus" durch Roman Dementiev u. a., kann durch die Ansprüche von Autoren nur 2 bis 5mal langsamer funktionieren als ein traditioneller Algorithmus im Gedächtnis. Sie verlassen sich auf effiziente Außenlagerungssortieren-Algorithmen und auf Graph-Zusammenziehungstechniken, für die Größe des Graphen effizient zu reduzieren.

Dem Problem kann auch auf eine verteilte Weise genähert werden. Wenn jeder Knoten als ein Computer betrachtet wird und kein Knoten irgendetwas außer seinen eigenen verbundenen Verbindungen weiß, kann man noch den verteilten minimalen Überspannen-Baum berechnen.

MST auf ganzen Graphen

Alan M. Frieze hat gezeigt, dass gegeben ein ganzer Graph auf n Scheitelpunkten, mit Rand-Gewichten, die unabhängige identisch verteilte zufällige Variablen mit der Vertriebsfunktionszufriedenheit, dann als n Annäherungen +  das erwartete Gewicht der MST-Annäherungen sind, wo der Riemann zeta Funktion ist.

Unter der zusätzlichen Annahme der begrenzten Abweichung hat Alan M. Frieze auch Konvergenz in der Wahrscheinlichkeit bewiesen. Nachher hat J. Michael Steele gezeigt, dass die Abweichungsannahme fallen gelassen sein konnte.

In der späteren Arbeit hat Svante Janson einen Hauptgrenzwertsatz für das Gewicht des MST bewiesen.

Für gleichförmige zufällige Gewichte in ist die genaue erwartete Größe des minimalen Überspannen-Baums für kleine ganze Graphen geschätzt worden.

Zusammenhängende Probleme

Ein zusammenhängendes Problem ist der K-Minimum-Überspannen-Baum (k-MST), der der Baum ist, der eine Teilmenge von k Scheitelpunkten im Graphen mit dem minimalen Gewicht abmisst.

Die eine Reihe des K-Smallest-Überspannens von Bäumen ist eine Teilmenge von k das Überspannen von Bäumen (aus allen möglichen Überspannen-Bäumen) solch, dass kein Überspannen-Baum außerhalb der Teilmenge kleineres Gewicht hat. (Bemerken Sie, dass dieses Problem zum K-Minimum-Überspannen-Baum ohne Beziehung ist.)

Der Euklidische minimale Überspannen-Baum ist ein Überspannen-Baum eines Graphen mit Rand-Gewichten entsprechend der Euklidischen Entfernung zwischen Scheitelpunkten, die Punkte im Flugzeug (oder Raum) sind.

Der geradlinige minimale Überspannen-Baum ist ein Überspannen-Baum eines Graphen mit Rand-Gewichten entsprechend der geradlinigen Entfernung zwischen Scheitelpunkten, die Punkte im Flugzeug (oder Raum) sind.

Im verteilten Modell, wo jeder Knoten als ein Computer und kein Knoten betrachtet wird, weiß irgendetwas außer seinen eigenen verbundenen Verbindungen, man kann verteilten minimalen Überspannen-Baum denken. Die mathematische Definition des Problems ist dasselbe, aber hat verschiedene Annäherungen für die Lösung.

Der capacitated minimale Überspannen-Baum ist ein Baum, der einen gekennzeichneten Knoten hat (Ursprung oder Wurzel) und jeder der dem Knoten beigefügten Subbäume nicht mehr als c Knoten enthält. c wird eine Baumkapazität genannt. Lösen-CMST verlangt optimal Exponentialzeit, aber gute Heuristik wie Esau-Williams und Sharma erzeugt Lösungen in der Nähe vom optimalen in der polynomischen Zeit.

Der Grad hat minimun beschränkt das Überspannen des Baums ist ein minimun, mit dem das Überspannen des Baums in mit jedem Scheitelpunkt nicht mehr als d andere Scheitelpunkte für eine gegebene Nummer d verbunden wird. Der Fall d = 2 ist ein spezieller Fall des Handelsreisender-Problems, so ist beschränkter minimaler Überspannen-Baum des Grads NP-hard im Allgemeinen.

Für geleitete Graphen wird das minimale Überspannen-Baumproblem das Problem von Arborescence genannt und kann in der quadratischen Zeit mit dem Algorithmus von Chu-Liu/Edmonds behoben werden.

Ein maximaler Überspannen-Baum ist ein Überspannen-Baum mit dem Gewicht größer oder gleich dem Gewicht jedes anderen Überspannen-Baums.

Solch ein Baum kann mit Algorithmen wie Prim oder Kruskal nach dem Multiplizieren der Rand-Gewichte durch-1 und das Lösen gefunden werden

das MST Problem auf dem neuen Graphen. Ein Pfad im maximalen Überspannen-Baum ist der breiteste Pfad im Graphen zwischen seinen zwei Endpunkten: Unter allen möglichen Pfaden maximiert es das Gewicht des Randes des minimalen Gewichts.

Das dynamische MST Problem betrifft die Aktualisierung eines vorher geschätzten MST nach einer Rand-Gewicht-Änderung im ursprünglichen Graphen oder der Einfügung/Auswischen eines Scheitelpunkts.

Minimaler Engpass-Überspannen-Baum

Ein Engpass-Rand ist der höchste belastete Rand in einem Überspannen-Baum.

Ein Überspannen-Baum ist ein minimaler Engpass-Überspannen-Baum (oder MBST), wenn der Graph keinen Überspannen-Baum mit einem kleineren Engpass-Rand-Gewicht enthält.

Ein MST ist notwendigerweise ein MBST (nachweisbar durch das Kürzungseigentum), aber ein MBST ist nicht notwendigerweise ein MST.

Siehe auch

Das zusätzliche Lesen

.

Links


Zeitcodezweideutigkeit / Gleichzeitig sendende Zeitabteilung
Impressum & Datenschutz