Ist das folgende Problem NP schwer?


15

Betrachten wir eine Sammlung von Sätzen F = { F 1 , F 2 , ... , F n }F={F1,F2,,Fn} über einen Basissatz wo und , und sei eine positive ganze Zahl.U = { e 1 , e 2 , , e n } U={e1,e2,,en}| F i | |Fi| n ne iF ieiFi kk

Das Ziel ist ein weitere Sammlung von Sätzen zu finden C = { C 1 , C 2 , ... , C m }C={C1,C2,,Cm} über UU , so dass jedes F iFi kann höchstens als eine Vereinigung von geschrieben werden k k ( k < < | C | )(k<<|C|) disjunktem setzt in CC und wir wollen auch m 1 | C j | m1|Cj|minimal sein (dh die Gesamtzahl der Elemente in allen Sätzen von CC sollte so klein wie möglich sein).

Beachten Sie, dass FF dieselbe Größe wie UU hat, die Größe von CC jedoch ungewiss ist.

Kann jemand sagen, ob das oben genannte Problem NP-schwer ist? (set abdeckung, verpackung, perfekte abdeckung,

Vielen Dank für Ihre Zeit.


Ich verstehe nicht, was das "Problem" ist. Was möchten Sie beantworten?
Ankur

4
Warum ist dieses Problem nicht einfach, wenn Sie C = {U} setzen?
Tsuyoshi Ito

6
Neben der genauen Bedeutung von „viel kleiner“ habe ich immer noch Probleme, das Problem zu verstehen. Wie in Revision 11 ausgeführt, scheint mir die optimale Lösung immer C = ∅ oder C = {∅} zu sein. Wenn wir eine Bedingung hinzufügen, dass C mindestens eine nicht leere Menge als Element enthält, ist C = {{e}} für ein Element e∈U das Optimum.
Tsuyoshi Ito

1
Bitte lesen Sie Ihre Frage sorgfältig durch. Sie haben nie gesagt, dass C gewählt werden muss, damit F_i als Vereinigung von Mengen von C.
Tsuyoshi Ito

1
Kann ich das NORMAL SET BASIS-Problem als Unterproblem des ursprünglichen Problems anzeigen?
Rhein

Antworten:


2

Lemma. Das Problem ist NP-schwer.

Proof-Skizze. Wir ignorieren die Einschränkungen | F i | n = | U | in dem gesendeten Problem, weil für jede Instanz ( F , U , k ) des Problems die Instanz ( F ' = F n , U ' = U n , k ) erhalten wird, indem die Vereinigung von n unabhängigen Kopien von ( F , U , k ) (wo das i|Fi|n=|U|(F,U,k)(F=Fn,U=Un,k)n(F,U,k)iDie i - te Kopie von F, die die i- te Kopie von U als Basismenge verwendet, ist äquivalent und erfüllt die Bedingung (sie hat | F ' i |n n 2 = | U ' | ).FiU|Fi|nn2=|U|

Wir geben eine Ermäßigung von 3-SAT. Für die Darstellung werden in der ersten Stufe der Reduktion die Einschränkungen e iF i in dem gestellten Problem ignoriert . In der zweiten Stufe beschreiben wir, wie diese Einschränkungen erfüllt werden können, während die Korrektheit der Reduktion erhalten bleibt.eiFi

Erste Stufe. Fixiere eine beliebige 3-SAT-Formel ϕ . Angenommen, WLOG hat für jede Klausel genau drei Literale (wobei jeder eine andere Variable verwendet). Erstellen Sie die folgende Instanz ( F , U , k ) des angegebenen Problems mit k = 3 .ϕ(F,U,k)k=3

Sei n die Anzahl der Variablen in ϕ . Es gibt 3 n + 1 Elemente in U : ein Element t (für "true"), und für jede Variable x i in φ , drei Elemente x i , ¯ x i und f i (für "false").nϕ3n+1Utxiϕxix¯¯¯ifi

Für jedes Element in U gibt es eine Singleton-Menge, die nur dieses Element in F enthält . Jede Lösung C enthält daher jede dieser Mengen, die ihre Gesamtgröße 3 n + 1 zu den Kosten von C beitragen .UFC3n+1C

Zusätzlich gibt es für jede Variable x i in ϕ eine "Variable", die in F { x i , ¯ x i , f i , t } gesetzt ist . Für jede Klausel in ϕ gibt es eine "Klausel" in F, die aus den Literalen in der Klausel besteht, und t . Zum Beispiel kann die Klausel x 1¯ x 2x 3 liefert die eingestellte { x 1 , ¯ x 2 , xxiϕ{xi,x¯¯¯i,fi,t}FϕFtx1x¯¯¯2x33 , t } in F .{x1,x¯¯¯2,x3,t}F

Behauptung 1. Die Reduktion ist richtig: ϕ ist erfüllbar, wenn eine Lösung C j | kostet C j | = 5 n + 1 .ϕCj|Cj|=5n+1

(nur wenn) Angenommen, ϕ ist erfüllbar. Konstruieren Sie eine Lösung C, die aus den 3 n + 1 Singleton-Mengen und für jede Variable x i aus dem wahren Literal und t besteht . (ZB { ¯ x i , t }, wenn x i falsch ist.) Die Kosten für C betragen dann 5 n + 1 . ϕC3n+1xit{x¯¯¯i,t}xiC5n+1

Jede Variablenmenge { x i , ¯ x i , f i , t } ist die Vereinigung von drei Mengen: das Paar, bestehend aus dem wahren Literal und t , plus zwei Singleton-Mengen, eine für jedes der beiden anderen Elemente. (ZB { ¯ x i , t } , { x i } , { f i } .){xi,x¯¯¯i,fi,t}t{x¯¯¯i,t},{xi},{fi}

Jede Klauselmenge (zB { x 1 , ¯ x 2 , x 3 , t } ) ist die Vereinigung von drei Mengen: Ein Paar bestehend aus t und einem wahren Literal plus zwei Singleton-Mengen, eine für jede der beiden anderen Literale. (ZB { x 1 , t } , { ¯ x 2 } , { x 3 } .){x1,x¯¯¯2,x3,t}t{x1,t},{x¯¯¯2},{x3}

(if) Angenommen, es gibt eine Lösung C der Größe 5 n + 1 . Die Lösung muss die Singleton-Mengen 3 n + 1 sowie weitere Mengen mit einer Gesamtgröße von 2 n enthalten .C5n+13n+12n

Betrachten wir zunächst die n "variable" Sätze, die jeweils der Form { x i , ¯ x i , f i , t } . Das Set ist die disjunkte Vereinigung von höchstens drei Sätzen in C . Ohne Verlust der Allgemeinheit handelt es sich um die disjunkte Vereinigung von zwei Singuletten und einem Paar (andernfalls wird dies durch Aufteilen von Mengen in C erreicht, ohne die Kosten zu erhöhen). Bezeichne das Paar P i . Die Paare P i und P j für verschiedene Variablen x i und x j sind unterschiedlich, weiln{xi,x¯¯¯i,fi,t}CCPiPiPjxixjPiPi contains xixi, ¯xix¯¯¯i, or fifi but PjPj does not. Hence, the sum of the sizes of these pairs is 2n2n. So these pairs are the only non-singleton sets in the solution.

Next consider the "clause" sets, e.g, {xi,¯xj,xk,t}{xi,x¯¯¯j,xk,t}. Each such set must be the union of at most three sets in CC, that is, up to two singleton sets and at least one pair Pi, Pj, or Pk. By inspection of the pairs and the clause set, it must be the union of two singletons and one pair, and that pair must be of the form {xi,t} or {¯xj,t} (a literal and t).

Hence, the following assignment satisfies ϕ: assign true to each variable xi such that Pi={xi,t}, assign false to each variable xi such that Pi={¯xi,t}, and assign the remaining variables arbitrarily.

Stage 2. The instance (F,U,k=3) produced above does not satisfy the constraint eiFi stated in the problem description. Fix that shortcoming as follows. Order the sets Fi and elements ei in U so that each singleton set corresponds to its element ei. Let m be the number of clauses in ϕ, so |F|=1+4n+m and |U|=1+3n.

Let (F,U,k=4) denote the instance obtained as follows. Let A be a set of 2n+2m new artificial elements, two for each non-singleton set in F. Let U=UA. Let F contain the singleton sets from F, plus, for each non-singleton set Fi in F, two sets Fi{ai,ai} and {ai,ai}, where ai and ai are two elements in A chosen uniquely for Fi. Now |F|=|U|=1+5n+2m and (with the proper ordering of F and U) the constraint eiFi is met for each set Fi.

To finish, note that (F,U,k=4) has a solution of cost |A|+5n+1 iff the original instance (F,U,k=3) has a solution of cost 5n+1.

(if) Given any solution C of cost 5n+1 for (F,U,k=3), adding the n+m sets {ai,ai} (one for each non-singleton Fi, so these partition A) to C gives a solution to (F,U,k=4) of cost |A|+cost(C)=|A|+5n+1.

(only if) Consider any solution C for (F,U,k=4) of cost |A|+5n+1. Consider any pair of non-singleton sets Fi{ai,ai} and {ai,ai} in F. Each is the disjoint union of at most 4 sets in C. By a local-exchange argument, one of these sets is {ai,ai} and the rest don't contain ai or ai --- otherwise this property can be achieved by a local modification to the sets, without increasing the cost... (lack of detail here is why I'm calling this a proof sketch). So removing the {ai,ai} sets from C gives a solution C for (F,U,k=3) of cost 5n+1.

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.