Partisi grafik menjadi siklus simpul-terpisah

15

Masalah terkait: Teorema Veblen menyatakan bahwa "Sebuah grafik mengakui dekomposisi siklus jika dan hanya jika itu genap". Siklusnya adalah edge disjoint, tetapi tidak harus simpul disjoint. Dengan kata lain, "Kumpulan tepi grafik dapat dipartisi menjadi siklus jika dan hanya jika setiap titik memiliki derajat genap."

Masalah saya: Saya bertanya-tanya apakah ada yang mempelajari partisi grafik ke dalam siklus simpul-terpisah. Yaitu, partisi simpul dari grafik G menjadi V 1 , V 2 , , V k , dan setiap subgraf yang diinduksi oleh V i adalah Hamilton.VGV1,V2,,VkVsaya

Apakah NP-keras atau mudah?

Masalah yang lebih terkait: Partisi ke dalam segitiga adalah NP-complete. (Halaman 68 dari "Komputer dan sifat tidak praktis")

Terima kasih atas saran Anda sebelumnya. ^^

Peng Zhang
sumber
8
Ada pengurangan yang mudah untuk pencocokan. Latihan yang terkenal dalam algoritma.
Chandra Chekuri
1
Apakah ini masalah Anda: en.wikipedia.org/wiki/Vertex_cycle_cover ?
Thomas Ahle
@ThomasAhle Terima kasih, saya tidak mengetahui halaman wiki itu. Ini disebut 'disjoint cycle cover' yang disebutkan di halaman wiki itu.
Peng Zhang

Jawaban:

20

Partisi ke dalam siklus vertex-disjoint adalah hal yang sama dengan subgraph 2-reguler, lebih dikenal sebagai 2-faktor. Itu dapat ditemukan (jika ada) dalam waktu polinomial oleh suatu algoritma berdasarkan pencocokan. Misalnya lihat tautan ini .

ETA Nov 2013: Tampaknya dari komentar di bawah ini bahwa pengurangan dari sumber yang ditautkan di atas salah. Namun, pernyataan bahwa masalah dapat dikurangi menjadi pencocokan sempurna tetap benar. Pengurangan yang benar adalah dalam WT Tutte (1954), "Sebuah bukti singkat dari teorema faktor untuk grafik berhingga", Canadian J. Math. 6: 347–352 .

Ganti setiap simpul dengan derajat d dengan grafik bipartit lengkap G v = K d ,vd , dan mewakili setiap tepiuvdari grafik asli dengan tepi dari satu titik dari G u ke salah satu simpul dari G v (di sisi bipartisi dengandsimpul) sedemikian rupa bahwa setiap simpul dari G v di sisi bipartisi itu persis memiliki satu insiden tepi seperti itu.Gv=Kd,d2uvGuGvdGv

Kemudian matching sempurna dalam grafik dimodifikasi harus sesuai dengan simpul di pihak mereka dari bipartisi dari G v dengan d - 2 keluar dari d simpul di sisi lain, meninggalkan tepat dua simpul gratis yang perlu dicocokkan dengan tetangga mereka di subgraphs lainnya G u . Dengan cara ini, pencocokan sempurna dari grafik yang dimodifikasi sesuai 1-untuk-1 dengan penutup siklus dari grafik asli.d2Gvd2dGu

David Eppstein
sumber
Saya tidak mengerti. Semua sebutan yang saya temukan, dari algoritma ini, mulai dengan menghitung tur euler. Namun ada banyak grafik yang dapat dilalui siklus tanpa memiliki tur euler. Apakah itu juga dalam P jika kita tidak membutuhkan semua sisi untuk digunakan?
Thomas Ahle
Apakah Anda membaca artikel yang saya tautkan? Saya melihat tidak disebutkan tur Euler di sana.
David Eppstein
Agak sulit dimengerti. Ketika Anda membangun dengan mengubah setiap sisi ( i , j ) ke tepi dari V ke V ( ( i , j ) ) bagaimana Anda tahu ujung mana yang dimasukkan ke dalam V dan yang akan dimasukkan ke dalam V ? Makalah ini tampaknya "ambil yang kedua", tapi itu bukan grafik yang diarahkan ..E(i,j)VV(i,j)VV
Thomas Ahle
1
Maksud saya, saya juga bisa mengubah setiap tepi yang tidak terarah menjadi tepi yang diarahkan pada setiap arah, tetapi kemudian pencocokan itu hanya akan memberi saya banyak siklus "panjang 2", bukan?
Thomas Ahle
1
@ThomasAhle rupanya campur aduk istilah; apa yang saya maksudkan adalah -regular spanning grafik, alias k -faktorkk
Manfred Weis