Finden einer Übereinstimmung, deren Kontraktion die Anzahl der Bögen in einem Diagramm minimiert


10

Wenn ein gemischter Graph mit den Kanten und den Bögen , finden Sie in eine Übereinstimmung , die die Anzahl der Bögen in minimiert , wobei aus indem übereinstimmende Eckpunkte zusammengezogen und entfernt werden parallele Bögen.E A E G / M G / M G.G=(V,E,A)EAEG/MG/MG

Ist (die Entscheidungsversion von) dieses Problem NP-vollständig? Wurde es in der Literatur studiert?


2
Ist es wichtig, ob Sie Bögen haben oder nicht?
Suresh Venkat

@Suresh: Eigentlich nicht, könnte ungerichtet sein. Der Punkt ist, dass ein Satz von Kanten definiert, welche Eckpunkte angepasst werden können, und der Abgleich die Anzahl der Kanten nach der Kontraktion in dem anderen Satz von Kanten minimiert. A
Marcus Ritt

2
ah ok. Die Frage könnte also wirklich vereinfacht werden, um nur einen ungerichteten Graphen G ohne zwei Sätze E und A zu haben.
Suresh Venkat

Ich bin mir nicht sicher. Wenn die Kanten ungerichtet sind, können wir das Problem auf den gerichteten Fall reduzieren, indem wir jede Kante durch zwei gerichtete ersetzen. Im gerichteten Fall hängt die Anzahl der Bögen nach der Kontraktion jedoch von ihrer Richtung ab, da zwei Bögen zwischen denselben Eckpunkten nicht parallel sein müssen. Wenn Sie also einfach die Richtung der Bögen außer Acht lassen, kann die optimale Anpassung unterschiedlich sein.
Marcus Ritt

Antworten:


8

Ich weiß nicht, ob Sie beabsichtigen, ungerichtete Kanten in E und Bögen in A parallel zu lassen oder nicht, aber es spielt am Ende keine Rolle. In dieser Antwort wird davon ausgegangen, dass Sie nicht zulassen, dass Kanten und Bögen parallel sind.

Betrachten wir einen speziellen Fall , in dem für jeden Bogen in A , A auch die Bogenrichtung in der entgegengesetzten enthält. In diesem Fall können wir die Ausrichtung von Bögen ignorieren und sie als ungerichtet betrachten. Wir nennen Kanten in E schwarze Kanten und Kanten in A roten Kanten .

Selbst unter diesen beiden Einschränkungen ist das Problem durch eine Reduzierung von Max-2SAT NP-vollständig. Sei φ eine 2CNF-Formel in n Variablen nx1,,xn mit m Klauseln. Konstruieren Sie einen Graphen G mit 3 n Eckpunkten wie folgt. G hat 2v1,,vn,x1,,xn,x¯1,,x¯n schwarze Kanten: und ( v i , ˉ x i ) für i = 1,…, n . G hat rote Ränder. Verbinden Sie zuerst und für ij durch eine rote Kante. Als nächstes betrachten für jede unterschiedliche Variable und vier Literalpaare . Literale verbinden(vi,xi)(vi,x¯i)vivjxixj(l,l')=(xi,xj),(xi, ˉ x j),( ˉ x i,xj),( ˉ x i, ˉ x j)ll'( ˉ l5(n2)mvivjxixj(l,l)=(xi,xj),(xi,x¯j),(x¯i,xj),(x¯i,x¯j)lund durch eine rote Kante, wenn und nur wenn Klausel nicht in φ erscheint .l(l¯l¯)

Es ist klar, dass wir nur maximale Übereinstimmungen in schwarzen Rändern berücksichtigen müssen, um die Anzahl der roten Ränder nach der Kontraktion zu minimieren. Es ist auch klar, dass jedes maximal übereinstimmende M in schwarzen Kanten aus n Kanten besteht, die mit für i = 1,…, n verbinden . Identifizieren Sie diese maximal übereinstimmende M mit der Wahrheitszuweisung . Es ist leicht zu überprüfen, ob der Graph nach dem Zusammenziehen von M und dem Entfernen paralleler Kanten genau rote Kanten hat, wobei kl i{ x i , ˉ x i } { l 1 , , l n } 4 ( nvili{xi,x¯i}{l1,,ln}4(n2)kist die Anzahl der Klauseln, die durch diese Wahrheitszuweisung erfüllt werden. Das Minimieren der Anzahl roter Kanten nach dem Zusammenziehen einer Übereinstimmung mit schwarzen Kanten entspricht daher dem Maximieren der Anzahl erfüllter Klauseln.


Vielen Dank! (Tippfehler: Die Klausel sollte lauten .)(l¯l¯)
Marcus Ritt

@Marcus: Gern geschehen und danke, dass Sie auf den Tippfehler hingewiesen haben.
Tsuyoshi Ito
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.