Trovare una corrispondenza la cui contrazione minimizza il numero di archi in un grafico


10

Dato un grafico misto con i bordi e gli archi , trova una corrispondenza in che minimizza il numero di archi in , dove si ottiene da contraendo vertici abbinati e rimuovendo archi paralleli.G=(V,E,A)EAEG/MG/MG

(La versione decisionale di) questo problema NP è completo? È stato studiato in letteratura?


2
Importa se hai gli archi o no?
Suresh Venkat,

@Suresh: In realtà no, potrebbe non essere indirizzato. Il punto è che una serie di bordi definisce quali vertici possono essere abbinati e la corrispondenza minimizza il numero di bordi dopo la contrazione nell'altra serie di bordi. A
Marcus Ritt,

2
Ah ok. quindi davvero la domanda potrebbe essere semplificata per avere solo un grafico non orientato G, senza due set E e A.
Suresh Venkat

Non ne sono sicuro. Quando i bordi non sono diretti, possiamo ridurre il problema al caso diretto sostituendo ogni bordo con due diretti; ma nel caso diretto, il numero di archi dopo la contrazione dipende dalla loro direzione, poiché due archi tra gli stessi vertici non devono essere paralleli. Quindi semplicemente ignorando la direzione degli archi, la corrispondenza ottimale può essere diversa.
Marcus Ritt,

Risposte:


8

Non so se il tuo intento è quello di consentire che i bordi non orientati in E e gli archi in A siano paralleli o meno, ma alla fine non importa. In questa risposta, assumiamo che non si consentano che bordi e archi siano paralleli.

Si consideri un caso speciale in cui per ogni arco in A , A contiene anche l'arco nella direzione opposta. In questo caso, possiamo ignorare l'orientamento degli archi e considerarli non indirizzati. Chiamiamo bordi in E bordi neri e bordi in A bordi rossi .

Anche con queste due restrizioni, il problema è NP-completo con una riduzione da Max-2SAT. Sia φ una formula 2CNF in n variabili con clausole m . Costruisci un grafico G con 3 n vertici come segue. G ha 2 n bordi neri: e per i = 1,…, n . G ha bordi rossi. Innanzitutto, collega e perx1,,xnv1,,vn,x1,,xn,x¯1,,x¯n(vi,xi)(vi,x¯i)5(n2)mvivjij da un bordo rosso. Quindi, per ogni variabile distinta e , considera quattro coppie di letterali . Connect letterali e da un bordo rosso se e solo se la clausola non appare in φ .xixj(l,l)=(xi,xj),(xi,x¯j),(x¯i,xj),(x¯i,x¯j)ll(l¯l¯)

È chiaro che dobbiamo solo considerare gli abbinamenti massimi nei bordi neri per minimizzare il numero di bordi rossi dopo la contrazione. È anche chiaro che ogni corrispondenza massima M nei bordi neri è composta da n bordi che collegano a per i = 1, ..., n . Identifica questa corrispondenza M massima con l'assegnazione della verità . È facile verificare che dopo aver contratto M e rimosso i bordi paralleli, il grafico abbia esattamente bordi rossi, dove kvili{xi,x¯i}{l1,,ln}4(n2)kè il numero di clausole soddisfatte da questa assegnazione di verità. Pertanto, ridurre al minimo il numero di bordi rossi dopo aver contratto una corrispondenza nei bordi neri equivale a massimizzare il numero di clausole soddisfatte.


Grazie! (Errore di battitura: la clausola dovrebbe essere .)(l¯l¯)
Marcus Ritt

@Marcus: Prego, e grazie per aver segnalato l'errore di battitura.
Tsuyoshi Ito,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.