เหตุใดความเกียจคร้านเสริมจึงสำคัญ?


10

Compackary Slackness (CS) เป็นวิธีการสอนโดยทั่วไปเมื่อพูดถึงความเป็นคู่ มันสร้างความสัมพันธ์ที่ดีระหว่างข้อ จำกัด แรกและตัวแปร / คู่จากมุมมองทางคณิตศาสตร์

เหตุผลหลักสองประการสำหรับการใช้ CS (ตามที่สอนในหลักสูตรระดับบัณฑิตศึกษาและตำราเรียน):

  1. เพื่อตรวจสอบ optimality ของ LP
  2. เพื่อช่วยแก้ปัญหาทั้งคู่

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


2
ไม่ใช่ความเชี่ยวชาญของฉัน แต่ดูเหมือนว่าคุณกำลังถามว่าทำไมเราถึงสอนคุณสมบัติของ X แม้ว่าการตัดสินใจ X นั้นง่ายในการคำนวณ ยกตัวอย่างเช่นทำไมเราถึงสอนว่า "ไม่มีวงจรแปลก = bipartite" ลักษณะของ bipartiteness แม้ว่าเราจะมีอัลกอริธึมเวลาพหุนามสำหรับตรวจสอบ bipartiteness นั่นคือสิ่งที่คุณถามในแง่หนึ่ง?
Robin Kothari

ไม่แน่นอน ฉันเข้าใจ "ทำไม" คุณสอน ฉันต้องการทราบจากมุมมองเชิงปฏิบัติที่ใช้ในการแก้ LPs และ / หรือการออกแบบอัลกอริทึมการประมาณ อะไรคือความเข้าใจที่เราได้รับนอกเหนือจากความสัมพันธ์ทางคณิตศาสตร์ระหว่างตัวแปรและข้อ จำกัด
ปริญญาเอก

ฉันคิดว่ามันสามารถช่วยในการหาคำตอบ "วิเคราะห์" ... ซึ่งอาจยากกว่าในการใช้คอมพิวเตอร์
usul

1
ฉันไม่ได้ "รับ" คำถาม เพียงเพราะเราใช้เครื่องคิดเลขและคอมพิวเตอร์เพื่อเพิ่มและทวีคูณตัวเลขเรายังจำเป็นต้องรู้คุณสมบัติของตัวเลขหรือไม่
จันทรา Chekuri

@ChandraChekuri - ฉันไม่ได้หมายความอย่างนั้น ฉันแค่พยายามหาว่าอะไรที่ยอดเยี่ยมเกี่ยวกับทฤษฎีบทนี้และสิ่งที่ทำให้มันสำคัญ ฉันไม่ต้องการที่จะยอมรับว่าเป็น "มันเป็นอย่างไร" แต่ต้องการที่จะมีความเข้าใจที่ลึกซึ้งยิ่งขึ้นเกี่ยวกับความสำคัญของความเป็นคู่ LP LP
PhD

คำตอบ:


14

ความหย่อนสมบูรณ์เป็นกุญแจสำคัญในการออกแบบอัลกอริธึมแบบสองชั้น แนวคิดพื้นฐานคือ:

  1. เริ่มต้นด้วยการที่เป็นไปได้วิธีการแก้ปัญหาคู่YY
  2. พยายามค้นหาเป็นไปได้เบื้องต้นซึ่งตามความเฉื่อยชาสมบูรณ์x(x,Y)
  3. หากขั้นตอนที่ 2 สำเร็จเราจะทำ มิฉะนั้นสิ่งกีดขวางในการค้นหาให้วิธีแก้ไขเพื่อให้ค่าฟังก์ชันวัตถุประสงค์คู่เพิ่มขึ้น ทำซ้ำxY

ตัวอย่างคลาสสิกคืออัลกอริทึมฮังการี อัลกอรึทึมของฟอร์ด - ฟุลเกอร์สันสามารถมองได้ว่าเป็นอีกตัวอย่างหนึ่ง โปรดทราบว่าขั้นตอนที่ 2 เป็นปัญหาความเป็นไปได้ซึ่งมักจะง่ายกว่าปัญหาการเพิ่มประสิทธิภาพดั้งเดิมและมักจะสามารถแก้ไขได้แบบ combinatorially นี่คือพลังของความเฉื่อยชาเสริม ตัวอย่างเช่นในกรณีของการจับคู่สองฝ่ายต้นทุนต่ำสุดขั้นตอนที่ 2 จะตรวจสอบว่ามีการจับคู่ที่สมบูรณ์แบบโดยใช้ขอบแคบ ๆ เท่านั้น ในกรณีที่สูงสุด -ไหลขั้นตอนที่ 2 จำนวนเงินที่จะตรวจสอบว่าขอบอิ่มตัวแยกและเสื้อsเสื้อsเสื้อ

อัลกอริธึมแบบ Primal-dual นั้นดีด้วยเหตุผลหลายประการ ในเชิงปรัชญาพวกเขาให้ข้อมูลเชิงลึกมากกว่าอัลกอริทึมทั่วไป พวกมันมักให้อัลกอริธึมเวลาพหุนามอย่างมากในขณะที่เรายังไม่มีตัวแก้พหุนาม LP อย่างยิ่ง พวกมันมักจะมีประโยชน์มากกว่าอัลกอริธึมทั่วไป นี่เป็นเรื่องจริงโดยเฉพาะอย่างยิ่งถ้าเราไม่สามารถเขียน LP อย่างชัดเจนและทางเลือกอื่น ๆ ของเราคืออัลกอริธึมทรงรีซึ่งเป็นกรณีที่มีการจับคู่ที่ไม่ใช่แบบสองฝ่ายและอัลกอริธึมแบบสองเท่าของเอ็ดมันด์

Primal-dual ยังเป็นเฟรมเวิร์กที่มีประโยชน์มากสำหรับอัลกอริทึมการประมาณโดยใช้เวอร์ชันที่ผ่อนคลายของความหย่อน สิ่งนี้มีประโยชน์ในการออกแบบอัลกอริทึมการประมาณสำหรับปัญหา NP-hard (ดูบทที่ 7 ของหนังสือWilliamson-Shmoys ) และในการออกแบบอัลกอริทึมออนไลน์ที่มีอัตราส่วนการแข่งขันที่ดี (ดูหนังสือโดย Buchbinder และ Naor ) จุดนี่คือขั้นตอนวิธีการรักษาวิธีการแก้ปัญหาไปที่สองของการผ่อนคลายแผ่นเสียงของปัญหาอย่างหนักและในแต่ละขั้นตอนทั้งพบหนึ่งที่เป็นไปได้ปฐมดังกล่าวว่าประมาณความสะเพร่าเสริมเป็นที่พอใจหรือปรับปรุงวิธีการแก้ปัญหาคู่YxY. ความเกียจคร้านเสริมโดยประมาณเป็นเงื่อนไขของแบบฟอร์มต่อไปนี้: ถ้าแล้วที่สอดคล้อง จำกัด คู่แน่นและถ้าที่สอดคล้อง จำกัด ครั้งแรกจะแน่นถ้ามีการปรับสัดส่วนโดย\นี้จะช่วยให้เป็นปัจจัยประมาณ\มันอธิบายได้ดีมากในสองแหล่งข้างต้นxผม>0YJ>0xαα

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