มีอัลกอริทึมที่มีประสิทธิภาพสำหรับปัญหาการครอบรอบจุดสุดยอดนี้หรือไม่?


23

ฉันพยายามค้นหาอัลกอริธึมเพื่อหาจุดสุดยอดวงรอบสูงสุดของกราฟกำกับ - นั่นคือชุดของวงรอบที่แยกจากกันซึ่งมีจุดยอดทั้งหมดในกับรอบที่มากที่สุดเท่าที่จะเป็นไปได้ (เราไม่พิจารณา จุดยอดบุคคลรอบที่นี่) ฉันรู้ว่าปัญหาในการค้นหาจุดสุดยอดวงรอบขั้นต่ำเช่นเดียวกับการค้นหาจุดสุดยอดวงรอบที่มีรอบคือ NP-complete แต่กรณีสูงสุดคืออะไร?G kGGk

ในขณะที่ฉันจะหาคำตอบสำหรับสิ่งที่น่าสนใจนี้โดยทั่วไปกราฟที่ฉันต้องการใช้สำหรับสิ่งนี้ถูก จำกัด โดยการก่อสร้างของพวกเขาดังนั้นแม้ว่าปัญหานั้นจะเกิดจากปัญหา NP-complete อาจจะมีคำตอบพหุนามสำหรับอินสแตนซ์เหล่านี้

เรามีรายการจำนวนเต็ม , องค์ประกอบและเราจะใช้ , องค์ประกอบเพื่ออ้างถึงหลังจากเรียงลำดับแล้ว ตัวอย่างเช่น:ลิตรฉัน S s ฉัน LLliSsiL

L=(1,3,2,5,0,7,4,2,6,0,8,1)S=(0,0,1,1,2,2,3,4,5,6,7,8)

จุดยอดของกราฟจะถูกระบุด้วยคู่เช่นว่าและn กราฟมีขอบกำกับและถ้าหากn (วัฏจักรในกราฟนี้สอดคล้องกับชุดของค่าที่สามารถเปลี่ยนรูปแบบแบบวนรอบซึ่งจะสิ้นสุดในตำแหน่งที่เรียงลำดับ)l i = n s in ( n , i ) ( m , j ) s j = n(n,i)li=nsin(n,i)(m,j)sj=n

ตัวอย่างข้างต้นจะให้กราฟต่อไปนี้ (โดยใช้ดัชนีที่อิง 1):

ป้อนคำอธิบายรูปภาพที่นี่

สิ่งหนึ่งที่ไม่ได้ผลคือวิธีโลภในการลบรอบที่เล็กที่สุดซ้ำแล้วซ้ำอีก (ดังตัวอย่างนี้แสดง)

โปรดทราบว่าปัญหานี้คือ (ถ้าฉันไม่ได้ทำผิดพลาดใด ๆ ) เทียบเท่ากับการถามจำนวนแลกเปลี่ยนที่คุณต้องการเรียงลำดับรายการที่กำหนด (สิ่งที่เป็นแรงบันดาลใจให้มองปัญหานี้ตั้งแต่แรก)

|C|1|C|1.) นั่นคือน้ำหนักขึ้นอยู่กับขนาดของรอบไม่ใช่ขอบโดยเฉพาะ แต่นี่อาจทำให้คนอื่นคิดว่าจะลดปัญหาได้อย่างไร

นอกจากนี้ยังปรากฏว่าการจำกัด ขนาดของรอบทำให้เกิดปัญหา APX-hard สำหรับกราฟทั่วไป สิ่งนี้ไม่ได้หมายความว่าสิ่งนั้นจะเป็นจริงสำหรับงานของการเพิ่มจำนวนรอบสูงสุดหรือสำหรับกราฟที่เฉพาะเจาะจงภายใต้การพิจารณาที่นี่ แต่ดูเหมือนว่าจะเกี่ยวข้องอย่างใกล้ชิดพอที่จะมีความสำคัญ

โดยสรุป: สามารถพบความครอบคลุมสูงสุดของจุดยอดรอบสำหรับกราฟที่สร้างจากกระบวนการข้างต้นได้หรือไม่

ในฐานะที่เป็นผู้ช่วยสองคนฉันยังสนใจด้วยว่าจุดยอดสูงสุดของวงรอบ disjoint cycle นั้นมีวิธีแก้ปัญหาที่มีประสิทธิภาพสำหรับกราฟตามอำเภอใจที่ยอมรับอย่างน้อยหนึ่งรอบวงรอบ (ซึ่งอาจจะเป็นคำตอบสำหรับคำถามหลัก) เพียงแค่กำหนดจำนวนรอบในการครอบคลุมสูงสุด (ตรงข้ามกับขอบจริงที่มีอยู่ในแต่ละ) ทำให้ปัญหาง่ายขึ้น ฉันยินดีที่จะโพสต์คำถามเหล่านี้แยกต่างหากหากผู้คนคิดว่าพวกเขาสมควรได้รับคำตอบแบบเต็มเปี่ยมด้วยตนเอง


คุณเคยดูวรรณกรรมของ CS เกี่ยวกับการแลกเปลี่ยนไตหรือไม่? ดูเหมือนว่าปัญหาจะเกิดขึ้นดังนั้นฉันจึงสงสัยว่ามีวิธีใดที่สามารถนำไปใช้กับวิธีนี้ได้ นี่อาจเป็นจุดจบ แต่ ...
DW

@DW ฉันไม่ได้ (ฉันไม่รู้ว่าเป็นเรื่อง) ฉันจะเห็นสิ่งที่ฉันสามารถหาได้ขอบคุณ
Martin Ender

ปัญหานี้คล้ายกับการแลกเปลี่ยนไตที่ศึกษาจาก POV ทางทฤษฎีเช่นบทความนี้โดยRoughgardenอธิบายว่าวงจรขนาดเล็กเป็นที่ต้องการด้วยเหตุผลที่เห็นได้ชัดเกือบ (p3); ขนาดรอบบ่งบอกถึง "การดำเนินงานพร้อมกัน" & คนที่มีขนาดเล็กลดความเสี่ยงของการดึงการดำเนินการทั้งหมดที่มีภาวะแทรกซ้อนหรือผู้บริจาคเปลี่ยนใจ ฯลฯ
vzn

@AustinMohr ฉันเชื่อว่ากราฟที่ได้จากการสร้างที่ฉันอธิบายจะถูกแยกออกเป็นรอบเสมอ (และยิ่งไปกว่านั้นไม่ว่าคุณจะลบรอบใดไป หากคุณต้องการพูดถึงกราฟทั่วไปเช่นกันสมมติว่ามีปกที่สมบูรณ์อย่างน้อยหนึ่งรายการ
Martin Ender

@ MartinBüttnerในกรณีเฉพาะของคุณหากองค์ประกอบของรายการทั้งหมดแตกต่างกันปัญหาของคุณจะเทียบเท่ากับการค้นหาการย่อยสลายวงจร (ที่ไม่ซ้ำกัน) ของการเปลี่ยนแปลงหรือไม่
mhum

คำตอบ:


4

Gkk=2k=3 kk

GG((3/5)ϵ)ϵ>0

สำหรับรายละเอียดและหลักฐานการอ้างสิทธิ์ข้างต้นโปรดดู [1]


[1] Bläser, Markus และ Bodo Manthey "อัลกอริธึมการประมาณสองแบบสำหรับการครอบคลุม 3 รอบ" อัลกอริธึมการประมาณค่าเพื่อการหาค่าเหมาะที่สุดแบบ Combinatorial Springer Berlin Heidelberg, 2002. 40-50.


น่าสนใจฉันจะพยายามติดตามการอ้างอิงจากบทความนั้น ขอบคุณ (ฉันต้องอ่านอะไรผิด ๆ เมื่อฉันคิดว่าผ้าคลุม k-cycle นั้นถูกคลุมด้วย k k อย่างแน่นอนหรืออาจเป็นคำนิยามอื่นที่ใช้ในที่อื่น)
Martin Ender

2
@ MartinBüttnerโดยวิธีการที่คุณอาจจะต้องการที่จะได้ดูวิทยานิพนธ์ปริญญาเอกของ Blaser ที่นี่ (เป็นภาษาเยอรมัน แต่คุณอาจไม่มีปัญหากับ :-)) ควรครอบคลุมรายละเอียดเกี่ยวกับการคำนวณน้ำหนักสูงสุด 2 รอบแบบครอบคลุม
Juho

|V|nn

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