Hamiltonicity ของกราฟ k-regular


24

เป็นที่ทราบกันดีว่ามันเป็นปัญหาที่สมบูรณ์เพื่อทดสอบว่ามีวัฏจักรของแฮมิลตันอยู่ในกราฟ 3 รูปแบบแม้ว่ามันจะเป็นระนาบ (Garey, Johnson และ Tarjan, SIAM J. Comput. 1976) หรือ bipartite (Akiyama, Nishizeki, และ Saito, J. . แจ้ง Proc. 1980) หรือเพื่อทดสอบว่ามีวงจร Hamiltonian อยู่ในกราฟ 4 แบบปกติหรือไม่แม้ว่าจะเป็นกราฟที่เกิดจากการจัดเรียงของเส้นโค้งของจอร์แดน (Iwamoto and Toussaint, IPL 1994)

K ตัวไหนที่เป็นที่รู้กันว่า NP-complete ในการทดสอบ Hamiltonicity ของ k-regular graphs?

กรณีเฉพาะที่ฉันสนใจคือกราฟ 6 รอบพร้อมเงื่อนไขเพิ่มเติมที่กราฟมีจำนวนจุดยอดคี่ ถ้ากรณีนี้อาจจะแสดงให้เห็นว่า NP-ฉบับสมบูรณ์ (หรือพหุนาม) มันจะมีผลกระทบในกราฟปัญหาการวาดภาพที่อธิบายไว้ในhttp://arxiv.org/abs/1009.0579 เงื่อนไข "จำนวนจุดยอดคี่" เป็นเพราะสิ่งที่ฉันต้องการทราบจริง ๆ สำหรับกราฟ 6- แบบปกติไม่ว่ากราฟจะมีวัฏจักรของแฮมิลตันหรือไบโพเทตต์ 2 แต่การมีจำนวนจุดยอดคี่ช่วยกำจัดความเป็นไปได้ของสองฝ่ายที่เหลือเพียงความเป็นไปได้ของวัฏจักรมิลโตเนียน

คำตอบ:


15

ขั้นแรกให้สมมติว่ากราฟมีจำนวนจุดยอด ในขั้นตอนที่สองเราจะขยายการก่อสร้างเพื่อที่ว่าถ้า k เท่ากันเราจะแสดงวิธีเปลี่ยนกราฟให้เป็นจุดยอดคี่

การแก้ปัญหาคือการปรับแต่งความคิดที่เสนอในคำตอบอื่น ๆ

ส่วนที่หนึ่ง

การอ้างสิทธิ์: จากกราฟสม่ำเสมอG ที่มีจำนวนจุดยอดเท่ากันเราสามารถคำนวณกราฟHซึ่งก็คือ( k + 1 ) - ไม่สม่ำเสมอและHคือ Hamiltonian iff Gคือ HamiltoniankGH(k+1)HG

kGG1G2vV(G)v1v2k+2vvv 1 v v 2 v C ( v ) vvv1vv2v. Letแสดงส่วนนี้สำหรับวีC(v)v

ทำซ้ำสำหรับจุดยอดทั้งหมดของและปล่อยให้แทนกราฟผลลัพธ์HGH

เห็นได้ชัดว่ากราฟคือปกติ เราอ้างว่าคือ Hamiltonian ถ้าหากเป็น Hamiltoniank + 1 H GHk+1HG

ทิศทางเดียวชัดเจน ได้รับรอบ Hambiltonian ในเราสามารถแปลเป็นวงจรในHอันที่จริงเมื่อใดก็ตามที่ผู้เข้าชมรอบจุดสุดยอดเราตีความว่ามันเป็นที่ย้ายมาจากเพื่อ (หรือกลับกัน) ในขณะที่ไปจุดทั้งหมดที่อยู่ใน(V) เป็นเช่นนี้ผลในรอบแฮมิลตันในH(โปรดทราบว่านี่คือจุดที่เรากำลังใช้งานความจริงที่ว่าจำนวนจุดยอดเดิมถึงแม้ว่า - หากวงจรเป็นเลขคี่สิ่งนี้จะพังลง)H v v 1 v 2 C ( v ) HGHvv1v2C(v)H

สำหรับทิศทางอื่น ๆ ให้พิจารณาวงจรมิลโตในHจะต้องเป็นว่าเข้าชมโดยส่วนหนึ่งของวงจรที่เริ่มต้นในเยี่ยมชมทุกจุดยอดของและออกจาก (หรือตัวเลือกแบบสมมาตร) อันที่จริงวงจรมิลโตเนียนไม่สามารถเข้าและออกจากเดียวกันได้ เช่นวงจรมิลโตในเป็นความหมายธรรมชาติเป็นวงจรมิลโตในGQEDC ( v ) v 1 C ( v ) v 2 v ฉัน H GHC(v)v1C(v)v2viHG

ส่วนที่สอง

ตามที่ระบุไว้ด้านล่างโดย Tsuyoshi กราฟ 3 ตัวใด ๆ ก็ตามมีจำนวนจุดยอดคู่ ดังนั้นปัญหาจึงยากสำหรับกราฟมีจำนวนจุดยอดคู่ กล่าวคือการลดข้างต้นแสดงให้เห็นว่าปัญหาเป็นเรื่องยากสำหรับกราฟใด ๆแม้ว่ากราฟที่ได้จะมีจำนวนจุดยอดคู่k3k

เราสังเกตว่าสิ่งนี้บ่งบอกว่าปัญหาต่อไปนี้คือ NP-hard

ปัญหา A: การตัดสินใจว่ากราฟ k-regularมีจำนวนจุดยอดคู่มีวัฏจักร Hamiltonian ผ่านขอบหรือไม่อีGe

อย่างไรก็ตามหากได้รับอินสแตนซ์แล้วเราสามารถลดปัญหาดังกล่าวเป็นปัญหาที่ต้องการได้ ที่จริงแล้วเราแทนที่ edgeด้วย clique ของจุดยอดเหมือนก่อนที่จะลบ edge หนึ่งใน clique และเชื่อมจุดสองจุดนั้นกับจุดปลายของและลบออกจากกราฟ เห็นได้ชัดว่าสำหรับกราฟใหม่ :( G , e ) e k + 1 e e Hk(G,e)ek+1eeH

  • kHคือผิดปกติk
  • G eHคือมิล IFFคือแฮมิลตันที่มีรอบการใช้อีเมล์Ge
  • | V ( G ) | + k + 1 HHมีจุดยอด =>มีจำนวนจุดยอดคี่|V(G)|+k+1H

โปรดสังเกตว่ากราฟ -regular สำหรับคี่ต้องมีจำนวนจุดยอดคู่ (เพียงนับจำนวนขอบ) เช่นนี้ไม่มีกราฟมีจำนวนจุดยอดคี่ด้วยเป็นคี่k k kkkkk


ผล

มันเป็นปัญหาที่ยากที่จะตัดสินใจว่ากราฟมีวัฏจักรของแฮมิลตันสำหรับหรือไม่ ปัญหายังคงอยู่ที่ NP-Hard แม้ว่ากราฟจะมีจำนวนจุดยอดคี่k 3kk3


แน่นอนว่าเป็นไปได้เสมอที่ฉันทำผิดพลาดโง่ ๆ ...


การออกกำลังกาย

หากเราต้องการเปลี่ยนจากกราฟที่มี -regular ไปเป็นกราฟที่บอกว่า -regular กราฟที่เกิดจากการใช้การลดลงข้างต้นซ้ำ ๆ จะส่งผลให้เกิดกราฟที่มีขนาดขึ้นอยู่กับแทน แสดง, ที่ได้รับกราฟสม่ำเสมอ , และ , เราสามารถสร้างกราฟนั่นคือสม่ำเสมอและขนาดของมันคือพหุนามในและ , โดยที่คือจำนวนจุดยอด ของGยิ่งกว่านั้นคือมิลโตเนียนหากและเฉพาะถ้าคือมิลโตเนียน2 k k k G ฉัน> 2 H ( k + ฉัน) k , ฉันn n G G Hk2kkkGi>2H(k+i)k,innGGH

(ฉันโพสต์สิ่งนี้เป็นแบบฝึกหัดไม่ใช่คำถามเนื่องจากฉันรู้วิธีแก้ปัญหานี้)


1
ที่ดี! ฉันคิดว่าคำตอบนี้จริง ๆ แล้วตั้งคำถามแรก“ เป็นที่รู้จักกันในชื่อ k อื่น ๆ หรือไม่ที่จะทดสอบแฮมิลตันซิตี้ของกราฟ k- ปกติ?” เพราะกราฟ 3 ตัวมีจำนวนจุดยอดและกราฟ H ที่เกิดจากการแปลงนี้ยังมีจุดยอดคู่จำนวนมากถ้า G มีจำนวนจุดยอดคู่
Tsuyoshi Ito

แต่ถ้าฉันเข้าใจผิดตัวนับตัวอย่างเดียวกันกับข้อพิสูจน์ของโรบินคือตัวอย่างเคาน์เตอร์ของข้อพิสูจน์นี้ ให้ G เป็นเส้นทางบน 2 จุดยอด จากนั้นขั้นตอนนี้จะสร้าง H ซึ่งก็คือ 9 รอบซึ่งก็คือ Hamiltonian
Emil

ดังที่ฉันได้กล่าวไปแล้วเกี่ยวกับคำตอบของโรบินปัญหาคือเมื่อคุณพยายาม "ฉาย" วัฏจักรแฮมิลตันจาก H ไปยัง G รอบการหมุนอาจจบลงด้วยการไม่เป็นวัฏจักร
Emil

@Emil: ฉันคิดว่าเส้นทางของ 2 vertices เป็นกรณีพิเศษจริง ๆ เพราะมีวงจร Hamiltonian ถ้าเราอนุญาตให้ใช้ edge เดียวกันมากกว่าหนึ่งครั้ง
Tsuyoshi Ito

1
@Sariel Har-Peled: ในกราฟทุกกราฟจำนวนจุดยอดแปลก (เช่นจุดยอดที่มีระดับคี่) เป็นเลขคู่ ดังนั้นกราฟ 3 แบบปกติทั้งหมดจึงมีจำนวนจุดยอดคู่ ฉันได้เขียนข้อโต้แย้งที่ซับซ้อนเกินความจำเป็นโดยไม่ได้ตระหนักถึงสิ่งนี้ในความคิดเห็นรุ่นแรก (ซึ่งฉันแก้ไขในเวลาไม่ถึง 5 นาที) ดังนั้นฉันขอร้องถ้าคุณอ่านความคิดเห็นเก่าและสับสน
Tsuyoshi Ito

1

แก้ไข: หลักฐานนี้ไม่ถูกต้องตามที่ระบุไว้ในความคิดเห็น (ฉันควรลบโพสต์หรือไม่)

มันรู้สึกอย่างสังหรณ์ใจว่า Hamiltonicity เป็น NP-hard สำหรับกราฟ k-regular ดังนั้นมันควรจะเป็น NP-hard สำหรับกราฟที่ผิดปกติ (k + 1) นี่คือการลดด้านหลังซองจดหมายซึ่งดูดีสำหรับฉัน แต่แน่นอนว่าอาจมีข้อผิดพลาด

ให้ G เป็นกราฟปกติ k ให้ G 'เป็นผลิตภัณฑ์คาร์ทีเซียนกราฟของ G และขอบ กล่าวอีกนัยหนึ่ง G 'คือกราฟที่มี G สองชุดและจุดสุดยอดทุกอันเชื่อมต่อกับสำเนา ตอนนี้ G 'เป็นปกติ (k + 1) เนื่องจากจุดสุดยอดแต่ละอันมีขอบพิเศษ 1 อัน

การอ้างสิทธิ์: G มีวัฏจักรมิลโตเนียนถ้าหาก G 'มีวัฏจักรมิลโตเนียนเท่านั้น

พิสูจน์: ถ้า G มีวัฏจักร Hamiltonian เป็นเรื่องง่ายที่จะเห็นว่า G 'มีหนึ่งรอบด้วย Say (u, v) เป็นขอบในวงจร Hamiltonian สำรวจวัฏจักรจาก u ไปยัง v โดยไม่ใช้ edge นั้นและตอนนี้แทนที่จะใช้ edge ให้ไปที่ v 'จาก v โดยที่ v' คือจุดยอดที่สอดคล้องกับ v ในสำเนาของ G ในกราฟนี้ซึ่งจะนำเรากลับไปที่ u ' ตอนนี้ไปจาก u 'ถึง u ซึ่งครบวงจร

หาก G 'มีวัฏจักร Hamiltonian เริ่มต้นจากจุดยอด u ให้พิจารณาลำดับของการสำรวจเส้นทางแบบเดียวกันใน G ทุกครั้งที่มีการเคลื่อนย้ายไปยังจุดสุดยอดที่อยู่ติดกันในกราฟเดียวกันเราจะทำการเคลื่อนที่แบบเดียวกันใน G ทุกครั้งที่ทำการย้าย จุดยอดที่สอดคล้องกันในกราฟอื่น ๆ เราไม่ได้ทำอะไรเลย เนื่องจากทุกการเคลื่อนไหวใช้ได้กับกราฟ G และรอบสิ้นสุดบนจุดยอด u นี่คือวัฏจักร Hamiltonian


1
ฉันไม่เห็นวิธีการพิสูจน์วรรคสอง หากเราทิ้งเงื่อนไขที่ G เป็น k-regular การปล่อยให้ G เป็นเส้นทางให้ตัวอย่างกับการอ้างสิทธิ์ว่าถ้า G ′เป็น Hamiltonian G ก็เป็น Hamiltonian เช่นกัน
Tsuyoshi Ito

1
ฉันกังวลเล็กน้อยเกี่ยวกับย่อหน้าสุดท้ายที่นี่ เมื่อรอบแฮมิลตันสำหรับ G 'คือ "ฉาย" (ถ้านั่นคือคำที่ถูกต้อง!) ไปยัง G เราอาจมีสถานการณ์ที่วงจรหมุนกลับขั้นตอน
Emil

@Tsuyoshi: คุณมีตัวอย่างเคาน์เตอร์: แค่ใช้เส้นทางปกติ - เส้นทางที่มีสองจุดยอด
Emil

@Tsuyoshi: ถูกต้อง การพิสูจน์นั้นผิด ฉันควรลบคำตอบหรือไม่ เรามีนโยบายเกี่ยวกับเรื่องนี้หรือไม่?
Robin Kothari

@ Robin ฉันคิดว่าโพสต์ของคุณควรจะถูกทิ้งไว้ตอนนี้ซึ่งได้สร้างการสนทนา มันแสดงให้เห็นอย่างแน่นอนว่านี่เป็นปัญหาที่น่าอึดอัดใจ
Emil
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.