Saya memiliki tugas pekerjaan rumah yang selama ini saya anggap bertentangan, dan saya akan menghargai setiap petunjuk. Ini adalah tentang memilih masalah yang diketahui, NP-kelengkapan yang terbukti, dan membangun pengurangan dari masalah itu ke masalah berikut saya akan memanggil DGD (diagnosis grafik diarahkan).
Masalah
Sebuah contoh dari DGD terdiri dari simpul V = I . ∪ O . ∪ B , tepi terarah E dan bilangan bulat positif k . Ada tiga jenis simpul: simpul dengan hanya tepi masuk saya , simpul dengan hanya keluar tepi O dan simpul dengan baik masuk dan tepi keluar B . Mari lanjut D = O × aku .
Sekarang, masalahnya adalah apakah kita dapat menutup semua node dengan paling banyak elemen D , yaitu
di mana berarti ada jalur yang diarahkan dari a ke b .
Saya berpikir bahwa masalah Dominating Set adalah salah satu yang harus saya kurangi, karena ini juga khawatir tentang menutupi subset node dengan subset lain. Saya mencoba membuat instance DGD dengan terlebih dahulu membuat dua node untuk setiap elemen set yang mendominasi, menyalin semua tepi, dan kemudian menetapkan dari instance DGD sama dengan instance DS.
Misalkan DS-instance sederhana dengan node , 2 dan 3 dan edge ( 1 , 2 ) dan ( 1 , 3 ) . Ini adalah contoh-ya dengan k = 1 ; set yang mendominasi dalam hal ini hanya terdiri dari simpul 1 . Mengurangi dengan metode yang baru saja dijelaskan, ini akan mengarah ke instance DGD dengan dua jalur ( 1 → 2 → 1 ′ ) dan ( 1 → 3 → 1 ′ ); untuk menutup semua node, cukup satu pasangan sudah cukup. Ini akan bekerja dengan sempurna, jika bukan karena set dominasi DS-instance tentu saja tidak dapat ditentukan dalam waktu polinomial, yang merupakan persyaratan di sini.
Saya telah menemukan bahwa ada banyak cara yang bagus untuk mengubah tepi dan simpul ketika mengurangi, tetapi masalah saya entah bagaimana mengekspresikan DGD dalam hal k DS . Dominating Set sepertinya merupakan masalah yang pas untuk dikurangi, tetapi karena ini saya pikir mungkin saya harus mencoba mengurangi dari masalah yang tidak memiliki k ?