Kompleksitas penghitungan pencocokan dalam grafik bipartit


8

Saya mungkin kehilangan sesuatu yang jelas tetapi saya tidak dapat menemukan referensi tentang kompleksitas penghitungan pencocokan (bukan pencocokan sempurna) dalam grafik bipartit. Inilah masalah formal:

  • Input: grafik bipartit denganG=(U,V,E)EU×V
  • Output: jumlah matchings dari , di mana matchings adalah bagian sehingga tidak ada yang terjadi di dua tepi .F E v U V FGFEvUVF

Apa kompleksitas masalah ini? Apakah itu # P-keras?

Sudah diketahui bahwa menghitung kecocokan sempurna pada grafik bipartit adalah # P-hard, dan diketahui bahwa menghitung kecocokan grafik sewenang - wenang (atau bahkan grafik 3-reguler planar) adalah # P-keras oleh makalah ini , tetapi saya tidak t menemukan sesuatu tentang penghitungan kecocokan tidak sempurna pada grafik bipartit.


Tampaknya ada masalah dalam algoritme ini. Ada beberapa kasus dalam hasil di mana tidak semua node dari sisi kiri atau kanan dimasukkan dalam solusi 2sat sehingga algoritma penghitungan yang tepat tidak berfungsi. Apakah ada yang tahu algoritma untuk solusi pencocokan bipartit maksimum tunggal yang diturunkan menggunakan pengurangan menjadi 2sat?
user3700810

Jawaban:


13

Masalah penghitungan kecocokan "tidak sempurna" dalam grafik bipartit adalah # P-complete.
Ini telah dibuktikan oleh Les Valiant sendiri, di halaman 415 makalah ini

Leslie G. Valiant
Kompleksitas Masalah Enumerasi dan Keandalan
SIAM J. Comput., 8 (3), 410-421


Terlihat bagus, terima kasih! Saya tidak tahu mengapa fakta sederhana ini tidak dinyatakan dengan jelas di halaman Wikipedia (atau di mana pun di Web apparenty). Saya memperbaiki Wikipedia sesuai dengan itu: en.wikipedia.org/w/... Terima kasih lagi!
a3nm

0

Satu minggu di kelas teori kompleksitas saya di perguruan tinggi, masalah pekerjaan rumah kami satu-satunya adalah untuk membuktikan bahwa # 2-SAT adalah # P-lengkap, dengan mengurangi dari #BIPARTITE PERFECT MATCHING. Tidak ada yang bisa menyelesaikannya, bahkan ketika kita semua akhirnya bersatu untuk mengerjakannya.

Kelas berikutnya, profesor terkejut melihat betapa sulitnya kita semua menemukannya dan memberikan buktinya. Itu salah. Untungnya, satu cookie pintar mampu memberikan pengurangan yang benar, yang benar-benar gila dan rumit menjijikkan. Ngomong-ngomong, profesor memiliki Penghargaan Turing :)

Ngomong-ngomong, sementara saya dan teman-teman sekelas saya tidak bisa menyelesaikan masalah itu, kami dapat memecahkan masalah yang lebih mudah yaitu dari #BIPARTITE MATCHING menjadi # 2-SAT, jadi inilah bukti yang saya buat beberapa tahun yang lalu.

Dalil. #BIPARTITE MENCOCOK # 2-SAT.p

Bukti . Biarkan menjadi turunan dari #BIPARTITE MATCHING. Biarkan set partisi menjadi (jadi dan ) .A = { a ii [ n ] } ,G=(V,E)| A | = n | B | = m

A={aii[n]},B={bii[m]}
|A|=n|B|=m

Sekarang kita mengurangi menjadi rumus 2SAT , sehingga setiap penugasan yang memuaskan adalah kecocokan , dan sebaliknya. Untuk memulai, untuk setiap sisi membuat variabel . Idenya adalah bahwa menyetel variabel ke TRUE sesuai dengan edge berada dalam pencocokan. Untuk setiap simpul , buat ekspresi 2SAT Agar dipenuhi, semua kecuali satu dari harus salah. Untuk melihat ini, asumsikan keduanyaGφφGaibjExijxijaibji

Ai=j<k(¬xij¬xik),Bi:=j<k(¬xji¬xki)
Aixijxijdan benar. Maka salah, dan begitu juga . Hal yang sama berlaku untuk . Membiarkan kita memiliki yang puas jika dan hanya jika setiap simpul dalam adalah insiden paling banyak satu sisi yang kita pilih, dan dengan demikian ujung-ujungnya membentuk pencocokan.xik(¬xij¬xik)AiBi
C=i=1nAii=1mBi
CG

Saya pikir saya pasti kehilangan sesuatu di sini. Tampaknya ini menunjukkan bahwa turunan #BIPARTITE_MATCHING yang sewenang-wenang dapat disandikan sebagai turunan dari # 2-SAT. Tapi, saya berharap Anda akan mencoba untuk menunjukkan bahwa turunan # 2-SAT yang sewenang-wenang dapat dikodekan sebagai turunan dari #BIPARTITE_MATCHING, bukan?
mhum

Aduh, kau benar. Ini diambil dari masalah pekerjaan rumah lama dan saya tidak benar-benar memiliki pertanyaan yang ditulis, hanya jawaban saya. Masalahnya pasti menunjukkan bahwa # 2-SAT adalah # P-Complete, mengetahui bahwa # BIPARTITE-PERFECT-MATCHING adalah # P-complete. Saya akan mengeditnya.
Gardenhead

1
@ardenarden: Terima kasih atas jawaban Anda! Ini menarik tetapi saya tidak berpikir ini sangat terkait dengan pertanyaan saya, bukan? Ini hanya menunjukkan bahwa # BIPARTITE-MATCHING ada di #P, yang tidak terlalu mengejutkan.
a3nm

Pengurangan jawaban ini tampaknya benar, meskipun tampaknya tidak ada hubungannya dengan pertanyaan. Namun, saya tidak mengerti komentar @3nm, saya juga tidak mengikuti cerita di kata pengantar dari jawaban (yang agak membingungkan tiga pengurangan berbeda).
András Salamon

Saya menemukan cara mengurangi # MONO-2SAT menjadi #BIPARTITE PERFECT MATCHING, tapi buktinya tidak sesederhana itu: P.
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.