Pertimbangkan kumpulan set F = { F 1 , F 2 , ... , F n } diF={F1,F2,…,Fn} atas set dasar U = { e 1 , e 2 , ... , e n } diU={e1,e2,…,en} mana | F i | |Fi| ≪ ≪ nn dan e i ∈ F iei∈Fi , dan biarkan kk menjadi bilangan bulat positif.
Tujuannya adalah untuk menemukan koleksi lain dari set C = { C 1 , C 2 , ... , C m }C={C1,C2,…,Cm} lebih UU sehingga setiap F iFi dapat ditulis sebagai kesatuan paling k k ( k < < | C | )(k<<|C|) saling disjoint set dalam CC dan juga kita inginkan ∑ m 1 | C j | ∑m1|Cj|menjadi minimal (yaitu jumlah elemen agregat di semua set CC harus sekecil mungkin).
Perhatikan bahwa FF memiliki ukuran yang sama dengan UU , tetapi ukuran CC tidak pasti.
Adakah yang tahu apakah masalah di atas adalah NP-hard? (set penutup? pengepakan? penutup sempurna)
Terima kasih atas waktunya.
Jawaban:
Kata pengantar singkat. Masalahnya adalah NP-hard.
Sketsa bukti. Kami mengabaikan kendala | F i | ≪ n = | U | dalam masalah yang diposting, karena, untuk setiap instance ( F , U , k ) dari masalah, instance ( F ′ = F n , U ′ = U n , k ) diperoleh dengan mengambil gabungan dari n salinan independen dari ( F , U , k ) (di mana i|Fi|≪n=|U| (F,U,k) (F′=Fn,U′=Un,k) n (F,U,k) i salinan F menggunakan iF i th menyalin dari U sebagai set basis) adalah setara, dan memenuhi kendala (memiliki | F ' i | ≤ n « n 2 = | U ' | ).U |F′i|≤n≪n2=|U′|
Kami memberikan pengurangan dari 3-SAT. Untuk presentasi, pada tahap pertama reduksi, kami mengabaikan kendala e i ∈ F i dalam masalah yang diposting. Pada tahap kedua kami menjelaskan bagaimana memenuhi kendala tersebut sambil mempertahankan kebenaran reduksi.ei∈Fi
Tahap pertama. Perbaiki formula 3-SAT ϕ . Asumsikan WLOG bahwa setiap klausa memiliki tepat tiga literal (masing-masing menggunakan variabel yang berbeda). Hasilkan contoh berikut ( F , U , k ) dari masalah yang diposting, dengan k = 3 .ϕ (F,U,k) k=3
Biarkan n menjadi jumlah variabel dalam ϕ . Ada 3 n + 1 elemen dalam U : satu elemen t (untuk "benar"), dan, untuk setiap variabel x i di φ , tiga elemen x i , ¯ x i , dan f i (untuk "false").n ϕ 3n+1 U t xi ϕ xi x¯¯¯i fi
For each element in UU there is a singleton set containing just that element in FF . Any solution CC therefore includes each of these sets, which contribute their total size 3n+13n+1 to the cost of CC .
In addition, for each variable xixi in ϕϕ there is a "variable" set {xi,¯xi,fi,t}{xi,x¯¯¯i,fi,t} in FF . For each clause in ϕϕ there is a "clause" set in FF consisting of the literals in the clause, and tt . For example, the clause x1∧¯x2∧x3x1∧x¯¯¯2∧x3 yields the set {x1,¯x2,x3,t}{x1,x¯¯¯2,x3,t} in FF .
Claim 1. The reduction is correct: ϕϕ is satisfiable iff some solution CC has cost ∑j|Cj|=5n+1∑j|Cj|=5n+1 .
(only if) Suppose ϕϕ is satisfiable. Construct a solution CC consisting of the 3n+13n+1 singleton sets, plus, for each variable xixi , the pair consisting of the true literal and tt . (E.g., {¯xi,t}{x¯¯¯i,t} if xixi is false.) The cost of CC is then 5n+15n+1 .
Each variable set {xi,¯xi,fi,t}{xi,x¯¯¯i,fi,t} is the union of three sets: the pair consisting of the true literal and tt , plus two singleton sets, one for each of the other two elements. (E.g., {¯xi,t},{xi},{fi}{x¯¯¯i,t},{xi},{fi} .)
Each clause set (e.g. {x1,¯x2,x3,t}{x1,x¯¯¯2,x3,t} ) is the union of three sets: a pair consisting of tt and a true literal, plus two singleton sets, one for each of the other two literals. (E.g., {x1,t},{¯x2},{x3}{x1,t},{x¯¯¯2},{x3} .)
(if) Suppose there is a solution CC of size 5n+15n+1 . The solution must contain the 3n+13n+1 singleton sets, plus other sets of total size 2n2n .
Consider first the nn "variable" sets, each of the form {xi,¯xi,fi,t}{xi,x¯¯¯i,fi,t} . The set is the disjoint union of at most three sets in CC . Without loss of generality, it is the disjoint union of two singletons and a pair (otherwise, splitting sets in CC achieves this without increasing the cost). Denote the pair PiPi . The pairs PiPi and PjPj for different variables xixi and xjxj are distinct, because PiPi 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 PiPi , PjPj , or PkPk . 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}{xi,t} or {¯xj,t}{x¯¯¯j,t} (a literal and tt ).
Hence, the following assignment satisfies ϕϕ : assign true to each variable xixi such that Pi={xi,t}Pi={xi,t} , assign false to each variable xixi such that Pi={¯xi,t}Pi={x¯¯¯i,t} , and assign the remaining variables arbitrarily.
Stage 2. The instance (F,U,k=3)(F,U,k=3) produced above does not satisfy the constraint ei∈Fi 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′=U∪A. Let F′ contain the singleton sets from F, plus, for each non-singleton set Fi in F, two sets Fi∪{ai,a′i} and {ai,a′i}, where ai and a′i 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 e′i∈F′i is met for each set F′i.
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,a′i} (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,a′i} and {ai,a′i} 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,a′i} and the rest don't contain ai or a′i --- 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,a′i} sets from C′ gives a solution C for (F,U,k=3) of cost 5n+1. ⋄
sumber