ในความซับซ้อนของวงจรเรามีการแยกระหว่างพลังของแบบจำลองวงจรต่างๆ
ในความซับซ้อนของการพิสูจน์เรามีการแบ่งแยกระหว่างอำนาจของระบบการพิสูจน์ที่หลากหลาย
แต่ในขั้นตอนที่เรายังคงมีเพียงไม่กี่แยกระหว่างอำนาจของกระบวนทัศน์อัลกอริทึม
คำถามของฉันด้านล่างมุ่งหวังที่จะสัมผัสปัญหาหลังนี้สำหรับกระบวนทัศน์สองประการ: โลภและการเขียนโปรแกรมแบบไดนามิก
เรามีชุดองค์ประกอบพื้นฐานและชุดย่อยบางชุดได้รับการประกาศว่าเป็นโซลูชันที่เป็นไปได้ เราคิดว่าตระกูลนี้ปิดตัวลง: ชุดย่อยของโซลูชันที่เป็นไปได้จะเป็นไปได้ เมื่อพิจารณาการกำหนดน้ำหนักที่ไม่ติดลบให้กับองค์ประกอบพื้นดินปัญหาคือการคำนวณน้ำหนักรวมสูงสุดของวิธีแก้ปัญหาที่เป็นไปได้
อัลกอริทึมโลภเริ่มต้นด้วยการแก้ปัญหาบางส่วนที่ว่างเปล่าและในแต่ละขั้นตอนมันเพิ่มองค์ประกอบที่ยังไม่ได้รับการรักษาที่มีน้ำหนักมากที่สุดถ้ามันเป็นไปได้เช่นถ้าทางออกที่ขยายยังคงเป็นไปได้ ทฤษฎีบท Rado-Edmonds ที่รู้จักกันดีระบุว่าอัลกอริทึมนี้จะหาทางออกที่ดีที่สุดสำหรับการป้อนน้ำหนักทั้งหมดถ้าครอบครัวของการแก้ปัญหาที่เป็นไปได้คือ matroid
โดยทั่วไปแล้วขั้นตอนวิธี DP นั้นง่ายมากหากใช้เพียงการดำเนินการ Max และ Sum (หรือ Min และ Sum) เท่านั้น เพื่อให้มีความเฉพาะเจาะจงมากขึ้น (ตามที่โจชัวแนะนำ) โดยอัลกอริธึมDP อย่างง่ายฉันจะหมายถึงวงจร (max, +) ที่มี fanin-2 Max และ Sum Sum อินพุตคือตัวแปร -th ซึ่งสอดคล้องกับน้ำหนักที่กำหนดให้กับองค์ประกอบ -th เช่นวงจรสามารถแก้ปัญหาใดปัญหาดังกล่าวโดยเพียงแค่การคำนวณน้ำหนักรวมสูงสุดของการแก้ปัญหาที่เป็นไปได้ แต่นี่อาจเป็นเรื่องที่มากเกินไปหากเรามีวิธีแก้ปัญหาดังกล่าวจำนวนมากแทน (เช่นเกือบทุกกรณี)ฉัน
คำถามที่ 1: มี matroids ซึ่งอัลกอริทึม DP ง่าย ๆ ใดจะต้องมีจำนวนการดำเนินการพหุนามในการแก้ปัญหาการขยายสูงสุดที่สอดคล้องกัน?
แสดงความคิดเห็น (เพิ่ม 2015/12/24): คำถามนี้เป็นคำถามคำตอบอยู่แล้ว (ดูด้านล่าง): มีอยู่ matroids ดังกล่าวแม้จะอยู่ในการครอบงำส่วนใหญ่
คำถามต่อไปขอให้แยกโลภและ DP ง่าย ๆ สำหรับปัญหาการประมาณ ในปัญหาการจับคู่ Max-Weightกลุ่มโซลูชันที่เป็นไปได้ประกอบด้วยการจับคู่ทั้งหมดในกราฟ bipartiteสมบูรณ์ สำหรับการกำหนดน้ำหนักให้กับขอบที่กำหนดเป้าหมายคือการคำนวณน้ำหนักสูงสุดของการจับคู่ (ซึ่งจะเป็นการจับคู่ที่สมบูรณ์แบบเสมอเนื่องจากน้ำหนักไม่ใช่ค่าลบ)
อัลกอริทึมโลภแบบง่ายสามารถประมาณปัญหานี้ได้ภายในปัจจัยที่ 2: เพียงนำขอบรอยแยกที่ยังไม่ได้เห็นของน้ำหนักสูงสุดเสมอ น้ำหนักที่ได้รับจะเป็นอย่างน้อยครึ่งหนึ่งของน้ำหนักที่เหมาะสม
คำถามที่ 2: อัลกอริทึม DP ง่าย ๆ สามารถประมาณปัญหาการจับคู่น้ำหนักสูงสุดภายในปัจจัย 2 ได้โดยใช้การดำเนินการ Max และ Sum จำนวนมากที่เป็นพหุนาม
แน่นอนว่าอัลกอริทึม DP เล็กน้อยซึ่งเอาท์พุทครั้งน้ำหนักสูงสุดของขอบใกล้เคียงกับปัญหานี้ภายในปัจจัยnแต่เราต้องการปัจจัยที่เล็กกว่ามาก ฉันเดาว่าแม้จะมีปัจจัยไม่สามารถทำได้ แต่อีกครั้ง: วิธีการพิสูจน์นี้? n n / log n
ที่เกี่ยวข้อง: ลูกพี่ลูกน้องของการจับคู่น้ำหนักสูงสุดคือปัญหาการกำหนด : ค้นหาน้ำหนักขั้นต่ำของการจับคู่ที่สมบูรณ์แบบ ปัญหานี้สามารถแก้ไขได้ (อย่างแน่นอน) โดยการเขียนโปรแกรมเชิงเส้น (เรียกว่าอัลกอริทึมฮังการี) โดยใช้การดำเนินงานเท่านั้น แต่ขอบเขตล่างของ Razborov กับขนาดของวงจรบูลีนแบบโมโนโทนที่คำนวณฟังก์ชันแบบถาวรหมายถึง (ไม่ใช่โดยตรง) ว่าวงจรใด ๆ (นาที, +) ที่ใกล้เคียงกับปัญหานี้ภายในปัจจัย จำกัด (!) ใด ๆ ต้องใช้การดำเนินงาน ดังนั้นสำหรับปัญหาการย่อขนาดอัลกอริธึม DP อย่างง่ายอาจอ่อนกว่าการเขียนโปรแกรมเชิงเส้น คำถามข้างต้นของฉันมีจุดมุ่งหมายเพื่อแสดงให้เห็นว่าอัลกอริทึม DP ดังกล่าวอาจอ่อนกว่าโลภ n Ω ( บันทึกn )
มีใครบางคนเห็นคำถามที่คล้ายกันซึ่งถูกพิจารณาโดยใครบางคน?
เพิ่ม (เมื่อวันที่ 24.12.2015): คำถามที่ 2 มีวัตถุประสงค์เพื่อแสดงให้เห็นว่าปัญหาการขยายใหญ่สุดหนึ่งปัญหา (ปัญหาการจับคู่น้ำหนักสูงสุด) ซึ่งสามารถประมาณได้โดยอัลกอริทึมโลภที่มีปัจจัยไม่สามารถประมาณได้ด้วยโพลีขนาดง่าย DP กับเดียวกันปัจจัยRในขณะเดียวกันฉันได้รับการแยกที่อ่อนแอระหว่างโลภและ DP ง่าย ๆ : สำหรับทุกมีปัญหาการขยายใหญ่สุดที่ชัดเจนซึ่งสามารถประมาณได้โดยอัลกอริทึมโลภกับปัจจัยแต่ไม่มีโพลีขนาดง่าย อัลกอริทึม DP สามารถประมาณปัญหานี้ด้วยปัจจัยที่เล็กกว่า (ดูที่นี่r = o ( n / log n ) rสำหรับภาพร่าง) ยังคงคำถามที่ 2 ตัวเอง (ไม่จำเป็นสำหรับปัญหาน้ำหนักสูงสุดนี้โดยเฉพาะ) ยังคงเกิดขึ้นจริง: มันน่าสนใจที่จะกำหนดเป้าหมายปัจจัยเดียวกันโดยอัลกอริทึมทั้งสอง