1
การเขียนโปรแกรมแบบไดนามิกไม่เคยอ่อนแอกว่าโลภหรือไม่?
ในความซับซ้อนของวงจรเรามีการแยกระหว่างพลังของแบบจำลองวงจรต่างๆ ในความซับซ้อนของการพิสูจน์เรามีการแบ่งแยกระหว่างอำนาจของระบบการพิสูจน์ที่หลากหลาย แต่ในขั้นตอนที่เรายังคงมีเพียงไม่กี่แยกระหว่างอำนาจของกระบวนทัศน์อัลกอริทึม คำถามของฉันด้านล่างมุ่งหวังที่จะสัมผัสปัญหาหลังนี้สำหรับกระบวนทัศน์สองประการ: โลภและการเขียนโปรแกรมแบบไดนามิก เรามีชุดองค์ประกอบพื้นฐานและชุดย่อยบางชุดได้รับการประกาศว่าเป็นโซลูชันที่เป็นไปได้ เราคิดว่าตระกูลนี้ปิดตัวลง: ชุดย่อยของโซลูชันที่เป็นไปได้จะเป็นไปได้ เมื่อพิจารณาการกำหนดน้ำหนักที่ไม่ติดลบให้กับองค์ประกอบพื้นดินปัญหาคือการคำนวณน้ำหนักรวมสูงสุดของวิธีแก้ปัญหาที่เป็นไปได้ อัลกอริทึมโลภเริ่มต้นด้วยการแก้ปัญหาบางส่วนที่ว่างเปล่าและในแต่ละขั้นตอนมันเพิ่มองค์ประกอบที่ยังไม่ได้รับการรักษาที่มีน้ำหนักมากที่สุดถ้ามันเป็นไปได้เช่นถ้าทางออกที่ขยายยังคงเป็นไปได้ ทฤษฎีบท Rado-Edmonds ที่รู้จักกันดีระบุว่าอัลกอริทึมนี้จะหาทางออกที่ดีที่สุดสำหรับการป้อนน้ำหนักทั้งหมดถ้าครอบครัวของการแก้ปัญหาที่เป็นไปได้คือ matroid โดยทั่วไปแล้วขั้นตอนวิธี DP นั้นง่ายมากหากใช้เพียงการดำเนินการ Max และ Sum (หรือ Min และ Sum) เท่านั้น เพื่อให้มีความเฉพาะเจาะจงมากขึ้น (ตามที่โจชัวแนะนำ) โดยอัลกอริธึมDP อย่างง่ายฉันจะหมายถึงวงจร (max, +) ที่มี fanin-2 Max และ Sum Sum อินพุตคือตัวแปร -th ซึ่งสอดคล้องกับน้ำหนักที่กำหนดให้กับองค์ประกอบ -th เช่นวงจรสามารถแก้ปัญหาใดปัญหาดังกล่าวโดยเพียงแค่การคำนวณน้ำหนักรวมสูงสุดของการแก้ปัญหาที่เป็นไปได้ แต่นี่อาจเป็นเรื่องที่มากเกินไปหากเรามีวิธีแก้ปัญหาดังกล่าวจำนวนมากแทน (เช่นเกือบทุกกรณี)ฉันiiiiii คำถามที่ 1: มี matroids ซึ่งอัลกอริทึม DP …