Diberi graf sederhana yang tidak terarah , temukan subset A ≠ ices dari simpul, sedemikian rupa sehingga
untuk setiap titik setidaknya setengah dari tetangga x juga dalam A , dan
ukuran adalah minimum.
Yaitu, kami sedang mencari sebuah cluster, di mana setidaknya setengah dari lingkungan setiap vertex internal tetap internal. Keberadaan kluster semacam itu sudah jelas, karena seluruh himpunan simpul selalu memiliki properti 1. Tetapi seberapa sulitkah untuk menemukan kluster terkecil (yang tidak kosong)?
Apakah ada nama standar untuk masalah ini? Apa yang diketahui tentang kerumitannya?
graph-theory
graph-algorithms
np-hardness
Andras Farago
sumber
sumber
Jawaban:
Ini adalah pengurangan dari Klik untuk masalah Anda.
Kita mulai dengan sebuah contoh dari Clique: grafik dan sebuah integer k , biarkan V = { v 1 , v 2 , . . . , v n } .G k V={v1,v2,...,vn}
Klik tetap menjadi NPC bahkan di bawah batasan bahwa (sketsa bukti: jika m a x ( d e g ( v i ) > 2 ( k - 1 ) kemudian tambahkan K t di mana t = 2 ( k - 1 ) - m a xmax(deg(vi))≤2(k−1) max(deg(vi)>2(k−1) Kt k + t dalam grafik baru). dan hubungkan ke semua node G dan minta klik ukuran k ′ =t=2(k−1)−max(deg(vi)) G k′=k+t
Jadi kita mengasumsikan bahwa dalam , m a x ( d e g ( v i ) ) ≤ 2 ( k - 1 ) . Untuk setiap simpul v i yang d e g ( v i ) < 2 ( k - 1 ) kita buat klik "eksternal" C i dari ukuran 2 ( k + 1 ) + 1 (setiap simpul CG max(deg(vi))≤2(k−1) vi deg(vi)<2(k−1) Ci 2(k+1)+1 clique memiliki setidaknya 2Ci tetangga).2(k+1)
Jika adalah derajat dari v i , kita menghubungkan v i ke 2 ( k - 1 ) - d e g ( v i ) node C i .deg(vi) vi vi 2(k−1)−deg(vi) Ci
Dalam dihasilkan , setiap v i memiliki derajat 2 ( k - 1 ) ; jadi | A | ≥ k karena setidaknya satu simpul harus dipilih.G′ vi 2(k−1) |A|≥k
Jelas bahwa jika salah satu dari simpul termasuk dalam A maka setidaknya 2 ( k + 1 ) / 2 = k + 1 node juga harus dimasukkan di dalamnya. Perhatikan bahwa jika node asli memiliki d e g ( v i ) < k - 1 maka setidaknya satu simpul dari terkait C i harus disertakan, yang mengarah ke | A | > k .Ci A 2(k+1)/2=k+1 deg(vi)<k−1 Ci |A|>k
Jadi kita bisa membangun satu set dari ukuran minimum | A | = k jika dan hanya jika GA |A|=k G berisi klik ukuran .k
Contoh pengurangan di mana kita bertanya apakah grafik diwakili oleh simpul kuning dan tepi tebal berisi klik ukuran k = 3 (a segitiga).G k=3
Node biru (dikelompokkan untuk keterbacaan yang lebih baik) adalah , tepi merah adalah hubungan antara node G dengan d e g ( v i ) < 2 ( k - 1 ) .K9 G deg(vi)<2(k−1)
sumber