การเพิ่มน้ำหนักขอบรวม


9

ฉันสงสัยว่าปัญหาต่อไปนี้มีชื่อหรือผลลัพธ์ใด ๆ ที่เกี่ยวข้อง

ปล่อย G=(V,w) เป็นกราฟถ่วงน้ำหนักที่ไหน w(u,v) หมายถึงน้ำหนักของขอบระหว่าง u และ vและสำหรับทุกคน u,vV, w(u,v)[1,1]. ปัญหาคือการหาส่วนย่อยของจุดยอดที่เพิ่มผลรวมของน้ำหนักของขอบที่อยู่ติดกัน:

maxSV(u,v):uS or vSw(u,v)
โปรดทราบว่าฉันนับขอบทั้งที่อยู่ภายในชุดย่อยและที่อยู่นอกชุดย่อยซึ่งเป็นสิ่งที่แตกต่างปัญหานี้จากการตัดสูงสุด อย่างไรก็ตามแม้ว่าทั้งและอยู่ในฉันต้องการนับขอบเพียงครั้งเดียว (มากกว่าสองครั้ง) ซึ่งเป็นสิ่งที่แยกความแตกต่างของวัตถุประสงค์จากการเป็นผลรวมขององศาเท่านั้นuvS(u,v)

โปรดทราบว่าปัญหาดังกล่าวเป็นเรื่องเล็กน้อยหากน้ำหนักขอบทั้งหมดไม่เป็นลบ - เพียงแค่ใช้กราฟทั้งหมด!


คำจำกัดความของคุณไม่ตรงกับบันทึกย่อของคุณในภายหลังเกี่ยวกับการไม่นับขอบที่ซ้ำกัน คุณกำลังรวมอยู่กับคู่ที่สั่งซื้อหรือชุดย่อย 2 องค์ประกอบหรือไม่? (หลังจะให้คุณสมบัติที่คุณต้องการฉันคิดว่า)
Suresh Venkat

1
อีกหมายเหตุ: น้ำหนักขอบที่ไม่นับรวมอยู่ใน V \ S คุณสนใจในผลการทดสอบความแข็งหรือการประมาณค่าเพราะในกรณีก่อนหน้านี้การลดผลรวมของน้ำหนักขอบภายใน S '= V \ S อาจเป็นปัญหาที่เป็นธรรมชาติมากกว่า .
Suresh Venkat

@Suresh: คำจำกัดความที่เป็นทางการของคำถามนั้นถูกต้องตราบใดที่เกี่ยวข้องกับอัตราส่วนการประมาณ มันแค่ให้สองเท่าของสิ่งที่คาดหวังจากคำว่า
Tsuyoshi Ito

@TsuyoshiIto: โอ้ฉันเข้าใจแล้วเพราะขอบของรอยตัดถูกนับสองครั้งด้วย
Suresh Venkat

1
ปัญหาที่แน่นอนคือ NP-hard เพราะตามที่ Suresh เขียนไว้ในความคิดเห็นของเขาปัญหานั้นเทียบเท่ากับการเขียนโปรแกรมแบบจตุรัส {0,1} แบบ quadratic ที่ไม่ จำกัด ซึ่งเป็น NP-hard
Tsuyoshi Ito

คำตอบ:


3

ไม่ใช่วิธีแก้ปัญหา แต่เป็นข้อสังเกต

นี่เป็นกรณีพิเศษของปัญหาต่อไปนี้: ให้จักรวาล , และกลุ่มชุดและฟังก์ชันน้ำหนักค้นหาชุดซึ่งถูกขยายให้ใหญ่สุด (น้ำหนักของชุดคือน้ำหนักรวมขององค์ประกอบ) ปัญหาของคุณสอดคล้องกับกรณีที่องค์ประกอบของปรากฏในสองชุด (แต่ฉันไม่แน่ใจว่าจะใช้ประโยชน์จากข้อ จำกัด นี้ได้อย่างไรแม้ว่าอาจจะช่วยได้ก็ตาม)U={1,,m}S1,,SnUw:U[1,1]I[n]w(iISi)U

นี่เป็นปัญหาที่ครอบคลุม: คล้ายกับ Max-k-Set-Cover แต่ไม่มีข้อ จำกัด ในการใช้ชุดและด้วยน้ำหนักเชิงลบที่ได้รับอนุญาต ประมาณโลภของ Max-k-Set-ปก (ในแต่ละขั้นตอนการส่งออกชุดที่มีน้ำหนักที่ใหญ่ที่สุดขององค์ประกอบเปิดเพื่อให้ห่างไกล) outputs ลำดับของชุดดังกล่าวว่าเป็นครั้งแรกชุดเป็นประมาณไป เหมาะสม (ดังนั้นนี่คือการประมาณพร้อมกันสำหรับทั้งหมด) น่าเสียดายที่ตามปกติมีปัญหาในการวิเคราะห์เมื่อน้ำหนักอาจเป็นลบ การสังเกตพื้นฐานของการวิเคราะห์อัลกอริทึมโลภคือถ้าเป็นชุดแรกที่เป็นเอาต์พุตดังนั้น (kk1+1/ekS1w(S1)OPTk/kOPTkเป็นน้ำหนักสูงสุดที่ครอบคลุมโดยชุด) เพราะน้อยกว่าผลรวมของน้ำหนักที่ชุดที่ดีที่สุดในการแก้ปัญหาและแต่ละคนมีน้ำหนักน้อยกว่า(s_1) อย่างไรก็ตามด้วยน้ำหนักเชิงลบมันไม่เป็นความจริงอีกต่อไปว่าจะน้อยกว่าผลรวมของน้ำหนักในโซลูชันที่ดีที่สุด โดยทั่วไปแล้วการรวมสหภาพจะไม่เป็นจริงอีกต่อไปkOPTkkw(S1)OPTk


5

FWIW ปัญหาของคุณยากที่จะประมาณค่าภายในปัจจัยคูณของสำหรับใด ๆn1ϵϵ>0

เราแสดงให้เห็นว่าด้านล่างโดยให้การลดการรักษาโดยประมาณจากชุดอิสระซึ่งเป็นที่รู้จักกันดีว่ามีความแข็งประมาณ

ลดจากชุดอิสระ

ให้กราฟที่ไม่ได้บอกทิศทางเป็นตัวอย่างของชุดอิสระ ให้แสดงว่าระดับของจุดสุดยอดในGให้เป็นหมายเลขของจุดในGG=(V,E)dvvGnG

สร้างกราฟถ่วงน้ำหนักขอบจากดังนี้ ให้แต่ละขอบด้วยน้ำหนัก 1 สำหรับแต่ละจุดยอดไม่แยกแต่ละตัวเพิ่มขอบใหม่ซึ่งมีน้ำหนักลงไปที่จุดยอดใหม่สำหรับจุดสุดยอดที่แยกแต่ละแห่งให้เพิ่มขอบน้ำหนักใหม่ 1 อันลงในจุดสุดยอดใหม่G=(V,E)GEvVdv11dv1vV

(หมายเหตุ: จุดสุดยอดใหม่แต่ละอัน (ในแต่ไม่ใช่ ) มีเพื่อนบ้านหนึ่งคนซึ่งอยู่ใน )GGG

บทแทรก มีชุดที่เป็นอิสระจากขนาด IFF (เป็นตัวอย่างของปัญหาของคุณ) มีวิธีการแก้ปัญหาของมูลค่าอย่างน้อยkGkGk

พิสูจน์ ให้เป็นชุดอิสระใด ๆ ในGจากนั้นเนื่องจากจุดยอดในเป็นอิสระในค่าของใน (โดยวัตถุประสงค์ของคุณ) คือ SGSGSG

vSdv(dv1) = |S|.

ตรงกันข้ามให้เป็นวิธีการแก้ปัญหาสำหรับของมูลค่าอย่างน้อยkหากไม่มีการสูญเสียความคิดทั่วไปถือว่าไม่มีจุดยอดใหม่ (จุดสุดยอดใหม่แต่ละอยู่บนขอบเดียวถ้าไม่ได้แยกในดังนั้นน้ำหนักของขอบคือดังนั้นการลบจากเพิ่มค่าของถ้าถูกแยกออกจากนั้นน้ำหนักของขอบคือ 1 ดังนั้นการลบจากและการเพิ่มรักษาค่าของ )SGkSv(v,v)vG1vSSvvSvS

โดยไม่สูญเสียของทั่วไปสมมติว่าเป็นชุดที่เป็นอิสระในG(มิฉะนั้น, ให้เป็นขอบโดยที่และอยู่ในน้ำหนักรวมของขอบของเหตุการณ์ในคือ , ดังนั้นน้ำหนักรวมของขอบของเหตุการณ์ที่ไม่ใช่นั้นมีค่าเป็นศูนย์มากที่สุดดังนั้นการลบจากจะไม่เพิ่มมูลค่าของ )SG(u,v)uvSvGdv(dv1)=1v(u,v)vSS

ตอนนี้โดยการคำนวณเช่นเดียวกับที่จุดเริ่มต้นของการพิสูจน์ค่าของคือ. มันเป็นไปตามนั้น . QEDS|S||S|k

เช่นกันคุณอาจถามแทนการเติมแต่งประมาณของการพูด,หรือเมตร O(n)ϵm

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

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