Il seguente problema NP è difficile?


15

Considera una raccolta di insiemi F = { F 1 , F 2 , , F n } su un insieme di base U = { e 1 , e 2 , , e n } dove | F i | « N ed e iF i , e sia k un intero positivo.F={F1,F2,,Fn}U={e1,e2,,en}|Fi| neiFik

L'obiettivo è quello di trovare un altro insieme di insiemi C = { C 1 , C 2 , ... , C m } sopra U tale che ogni F i può essere scritta come unione di al massimo k ( k < < | C | ) reciprocamente disgiunte imposta in C e vogliamo anche m 1 | C j | essere minimo (cioè il numero aggregato di elementi in tutti gli insiemi di CC={C1,C2,,Cm}UFik (k<<|C|) Cm1|Cj|C dovrebbe essere il più piccolo possibile).

Nota che F ha le stesse dimensioni con U , ma la dimensione di C è incerta.FUC

Qualcuno può dire se il problema sopra è NP-difficile? (set copertura? imballo? copertura perfetta)

Grazie per il tuo tempo.


Non capisco quale sia il "problema". A cosa vuoi rispondere?
Ankur,

4
Perché questo problema non è banale impostando C = {U}?
Tsuyoshi Ito,

6
Oltre al significato preciso di "molto più piccolo", ho ancora difficoltà a comprendere il problema. Come indicato nella revisione 11, mi sembra che la soluzione ottimale sia sempre C = ∅ o C = {∅}. Se aggiungiamo un vincolo che C contiene almeno un set non vuoto come elemento, allora C = {{e}} per alcuni elementi e∈U sarà l'ottimale.
Tsuyoshi Ito,

1
Si prega di leggere attentamente la propria domanda. Non hai mai detto che C deve essere scelto in modo che F_i possa essere scritto come unione di set da C.
Tsuyoshi Ito

1
Posso visualizzare il problema NORMAL SET BASIS come sottoproblema di quello originale?
Rhein,

Risposte:


2

Lemma. Il problema è NP-difficile.

Schizzo di prova. Ignoriamo i vincoli | F i | n = | U | nel problema pubblicato, perché, per qualsiasi istanza ( F , U , k ) del problema, l'istanza ( F = F n , U = U n , k ) ottenuta ottenendo l'unione di n copie indipendenti di ( F , U , k ) (dove l' i|Fi|n=|U|(F,U,k)(F=Fn,U=Un,k)n(F,U,k)ith copia F utilizza i esima copia di U come insieme di base) è equivalente, e soddisfa il vincolo (ha | F ' i |n « n 2 = | U ' | ).FiU|Fi|nn2=|U|

Diamo una riduzione da 3-SAT. Per la presentazione, nella prima fase della riduzione, ignoriamo i vincoli e iF i nel problema pubblicato. Nella seconda fase descriviamo come soddisfare tali vincoli mantenendo la correttezza della riduzione.eiFi

Primo stadio. Correggi qualsiasi formula 3-SAT ϕ . Supponiamo che in WLOG ogni clausola abbia esattamente tre letterali (ognuno con una variabile diversa). Produrre la seguente istanza ( F , U , k ) del problema pubblicato, con k = 3 .ϕ(F,U,k)k=3

Sia n il numero di variabili in ϕ . Ci sono 3 n + 1 elementi in U : un elemento t (per "vero") e, per ogni variabile x i in ϕ , tre elementi x i , ¯ x i ed f i (per "falso").nϕ3n+1Utxiϕxix¯¯¯ifi

Per ogni elemento in U è un insieme singoletto contenente solo tale elemento F . Qualsiasi soluzione C include pertanto ciascuna di tali insiemi, che contribuiscono loro dimensione totale 3 n + 1 al costo di C .UFC3n+1C

Inoltre, per ogni variabile x i in φ c'è un set "variabile" { x i , ¯ x i , f i , t } in F . Per ciascuna clausola φ c'è un set "clausola" in F composto dai letterali nella clausola, e t . Ad esempio, la clausola x 1¯ x 2x 3 restituisce il set { x 1 , ¯ x 2 , xxiϕ{xi,x¯¯¯i,fi,t}FϕFtx1x¯¯¯2x33 , t } in F .{x1,x¯¯¯2,x3,t}F

Rivendicazione 1. La riduzione è corretta: ϕ è soddisfacente se una soluzione C ha un costo j | C j | = 5 n + 1 .ϕCj|Cj|=5n+1

(solo se) Supponiamo che ϕ sia soddisfacente. Costruire una soluzione C costituito dalle 3 n + 1 insiemi singoletto, inclusa, per ogni variabile x i , la coppia costituita dal vero letterale e t . (Ad esempio, { ¯ x i , t } se x i è falso.) Il costo di C è quindi 5 n + 1 . ϕC3n+1xit{x¯¯¯i,t}xiC5n+1

Ogni set di variabili { x i , ¯ x i , f i , t } è l'unione di tre insiemi: la coppia costituita dal vero valore letterale t , più due insiemi singleton, uno per ciascuno degli altri due elementi. (Ad esempio, { ¯ x i , t } , { x i } , { f i } .){xi,x¯¯¯i,fi,t}t{x¯¯¯i,t},{xi},{fi}

Ciascun set clausola (ad esempio { x 1 , ¯ x 2 , x 3 , t } ) è l'unione di tre serie: una coppia costituita da t e un vero letterale, più due insiemi singoletto, uno per ciascuno degli altri due letterali. (Ad esempio, { x 1 , t } , { ¯ x 2 } , { x 3 } .){x1,x¯¯¯2,x3,t}t{x1,t},{x¯¯¯2},{x3}

(se) Supponiamo che esista una soluzione C di dimensioni 5 n + 1 . La soluzione deve contenere i set singleton 3 n + 1 , oltre ad altri set di dimensioni totali 2 n .C5n+13n+12n

Considera innanzitutto i n set di "variabili", ciascuno dei moduli { x i , ¯ x i , f i , t } . Il set è l'unione disgiunta di al massimo tre set in C . Senza perdita di generalità, è l'unione disgiunta di due singoli e una coppia (altrimenti, dividere i set in C raggiunge questo obiettivo senza aumentare il costo). Indica la coppia P i . Le coppie P i e P j per diverse variabili x i e x j sono distinte, perchén{xi,x¯¯¯i,fi,t}CCPiPiPjxixjP i contiene x i , ¯ x i o f i ma P j no. Quindi, la somma delle dimensioni di queste coppie è di 2 n . Quindi queste coppie sono gli unici insiemi non singleton nella soluzione. Pixix¯¯¯ifiPj2n

Quindi prendere in considerazione le serie di "clausole", ad esempio { x i , ¯ x j , x k , t } . Ciascuno di questi insiemi deve essere l'unione di al massimo tre insiemi in C , ovvero fino a due insiemi singleton e almeno una coppia P i , P j o P k . Ispezionando le coppie e il set di clausole, deve essere l'unione di due singleton e una coppia e quella coppia deve essere nella forma { x i , t } o { ¯ x j , t }{xi,x¯¯¯j,xk,t}CPiPjPk{xi,t}{x¯¯¯j,t}(letterale e t ).t

Quindi, la seguente assegnazione soddisfa ϕ : assegnare true a ciascuna variabile x i tale che P i = { x i , t } , assegnare false a ciascuna variabile x i tale che P i = { ¯ x i , t } e assegnare il variabili rimanenti arbitrariamente.ϕxiPi={xi,t}xiPi={x¯¯¯i,t}

Fase 2. L'istanza ( F , U , k = 3 ) prodotta in precedenza non soddisfa il vincolo e iF i indicato nella descrizione del problema. Correggere tale difetto come segue. Ordinare gli insiemi F i e gli elementi e i in U in modo che ciascun insieme singleton corrisponda al suo elemento e i . Sia m il numero di clausole in ϕ , quindi | F | = 1 + 4 n +(F,U,k=3)eiFiFieiUeimϕm e | U | = 1 + 3 n .|F|=1+4n+m|U|=1+3n

Let ( F , U , k = 4 ) indica l'istanza ottenuta come segue. Lasciate Un un insieme di 2 n + 2 m nuovi elementi artificiali, due per ogni insieme non singoletto in F . Let U ' = U A . Lascia che F contenga i set singleton di F , più, per ogni set non singleton F i in F , due set F i{ a(F,U,k=4)A2n+2mi , un ' i } e { un io , un ' i } , dove un io e un ' io sono due elementi A scelti unicamente per F i . Adesso | F | = | U | = 1 + 5 n + 2 m e (con il corretto ordinamento di F e U ) il vincolo eIFi è soddisfatto per ogni setFi .

Per finire, nota che ( F , U , k = 4 ) ha una soluzione di costo | A | + 5 n + 1 iff l'istanza originale ( F , U , k = 3 ) ha una soluzione del costo 5 n + 1 .

(if) Data una soluzione C di costo 5 n + 1 per ( F , U , k = 3 ) , aggiungendo gli insiemi n + m { a i , a i } (uno per ogni F i non singleton , quindi questi la partizione da A ) a C fornisce una soluzione a ( F , U , k = 4 ) del costo| A | + c o s t ( C ) = | A | + 5 n + 1 .

(solo se) Considera qualsiasi soluzione C per ( F , U , k = 4 ) del costo | A | + 5 n + 1 . Considera qualsiasi coppia di insiemi non singleton F i{ a i , a i } e { a i , a i } in F . Ognuno è l'unione disgiunta di al massimo 4 set in C . Da un argomento locale di scambio, uno di tali gruppi è { un i , un ' i } e il resto non contengono un io o un ' i --- altrimenti questa struttura può essere ottenuto mediante una modifica locale agli insiemi, senza aumentare il costo ... (la mancanza di dettagli qui è il motivo per cui lo chiamo unoschizzo diprova). Quindi la rimozione deiset { a i , a i } da C fornisce una soluzione C per ( F , U ,k = 3 ) del costo 5 n + 1 .

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.