Bestimmen Sie die Eindeutigkeit des min-cut
Disclaimer: diese war ein Hausaufgaben problem. Die Frist ist nun vergangen, so dass die Diskussionen fortsetzen können, ohne zu befürchten, dass.
Das problem das ich mit zu kämpfen ist, um zu bestimmen, ob ein bestimmtes minimum s-t Schnitt in einem Graphen G = (V, E) ist einzigartig. Es ist einfach genug zu finden einige min-Schnitt mittels eines max-flow-Algorithmus als pro dieses Beispiel, aber wie würden Sie es die min-cut?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ok, da Sie nicht wollen, dass die ganze Antwort sofort, ich werde Ihnen ein paar Tipps. Lesen Sie so viele wie Sie fühlen, sind für Sie notwendig, und geben, wenn Sie sich - gehen Sie vor und Lesen Sie Sie alle.
1:
Der Schnitt ist einzigartig iff-es gibt keine anderen min-cut.
2:
Wenn Sie erfolgreich bei der Suche nach einer anderen min-cut, dann die erste min-cut ist nicht einzigartig.
3:
Dein link gab uns ein min-cut", die alle erreichbar Eckpunkte von s in der residual-graph. Können Sie denken Sie an einen Weg, um einen anderen Schnitt, nicht unbedingt die gleichen?
4:
Warum haben wir diese Eckpunkte erreichbar von s insbesondere?
5:
Vielleicht können wir etwas tun, Analog von t?
6:
Blick auf die gleiche residual-Graphen, beginnend bei t. Blick auf die Gruppe von vertices erreichbar von t in der reverse Richtung der Pfeile (also alle vertices die Reichweite t).
7:
Diese Gruppe ist auch ein min-cut (oder eigentlich S \, die Gruppe, um genau zu sein).
8 (Letzte Antwort):
Wenn das der Schnitt ist identisch zu Ihren original-Schnitt, dann gibt es nur einen. Andernfalls werden Sie nur gefunden, 2 Schnitte, so dass das original kann möglicherweise nicht eindeutig sein.
Gliederung:
Gegeben ein minimum S-T cut, (U,V) mit Schnitt-Kanten E', machen wir eine einfache Beobachtung: Wenn dieses minimum cut ist nicht eindeutig, dann gibt es einige andere minimale Schnitt mit einem Satz von Schnitt-Kanten E", so dass E" != E'.
Wenn dem so ist, können wir die Iteration über jede Kante in E', hinzu, um dessen Kapazität, eine Neuberechnung der max flow, und prüfen Sie, ob es erhöht.
Als Ergebnis der Beobachtung über, es existiert eine Kante E', die, wenn erhöht, der maximale Durchfluss nicht erhöhen iff der original-Schnitt ist nicht eindeutig.
Ich lasse Sie in den details füllen und zu beweisen, dass dies ein poly-time-Aufgabe.
Gegeben, das max flow/min cut-problem ist wirklich eine Lineare Programmierung problem(primal/dual bzw. ist), denke ich, dass jede Methode zu überprüfen Einzigartigkeit der LP-Lösung und der Suche nach alternativen die optimale Lösung, wenn Ihr nicht eindeutig verwendet werden können, in diesem Zusammenhang.
Habe ich gegoogelt, um zu finden, die dieses Papier :Auf die Einzigartigkeit der Lösungen von Linearen Programmen
EDIT 1: Basierend auf Vorschlag von dzhuang, für diejenigen, die nicht bewusst, dass das maxflow-mincut-theorem ist ein Sonderfall der starken Dualität theorem in linearer Programmierung, hier ist der link zur Erklärung dieser nuance: https://en.wikipedia.org/wiki/Max-flow_min-cut_theorem#Linear_program_formulation