สิ่งที่เป็นที่รู้จักเกี่ยวกับการแก้ปัญหาการเขียนโปรแกรมเชิงเส้นจำนวนเต็มกระจัดกระจาย?


23

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

ยิ่งเป็นรูปธรรมโปรแกรมก็เป็นเหมือน

ลดที
  อาจมีการ
สำหรับฉันทุก x_i เป็นจำนวนเต็มบวก
x1 + x2 + x3 - T <0
x1 + + x4 x5 - T <0
...
x3 + x6 - เสื้อ≥ 0
x1 + x2 + x7 - เสื้อ≥ 0
...

หากต้องการคำถามที่เป็นรูปธรรมแล้วเป็นกรณีที่โซลูชันขั้นต่ำเชื่อฟัง t <= O (สูงสุด {# ของตัวแปร, # ของข้อ จำกัด }) โดยมีค่าคงที่ใน O () ขึ้นอยู่กับความเบาบางหรือไม่ แต่แม้ว่าคำตอบคือไม่ฉันก็สนใจที่จะรู้ว่าตำราหรือกระดาษชนิดใดที่จะศึกษาเพื่อการอภิปรายในประเด็นดังกล่าวและถ้ามีพื้นที่การศึกษาที่ทุ่มเทให้กับสิ่งนี้ แต่ฉันไม่รู้ เงื่อนไขการค้นหา ขอขอบคุณ.

อัปเดต:ด้วยการไตร่ตรองเพิ่มเติม (และการคิดผ่านการลดลงอย่างง่ายของ 3SAT เป็น ILP ซึ่งใช้ข้อ จำกัด กับตัวแปรสามตัว) ฉันตระหนักว่าปัญหาของสัมประสิทธิ์มีความสำคัญ (หากมีอัลกอริธึมที่มีประสิทธิภาพ) แม่นยำยิ่งขึ้นตัวแปร x_i ทั้งหมดมี 0 หรือ 1 สัมประสิทธิ์ (โดยมากที่สุด 1 สัมประสิทธิ์ในข้อ จำกัด ใด ๆ ) และตัวแปร t ทั้งหมดมี -1 สัมประสิทธิ์และการเปรียบเทียบทั้งหมดมีตัวแปรทางซ้ายและ 0 ทางด้านขวา ฉันอัปเดตตัวอย่างด้านบนเพื่อชี้แจง


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

ใช่ t คือตัวแปรที่มีสัมประสิทธิ์เป็นลบหากตัวแปรทั้งหมดจำเป็นต้องอยู่ทางด้านซ้าย หรือหากคุณต้องการสัมประสิทธิ์ทั้งหมดคือ {0,1} แต่ x_i ทั้งหมดปรากฏทางด้านซ้ายและ t ปรากฏทางด้านขวาของข้อ จำกัด แต่ละข้อ
Dave Doty

คุณมีข้อ จำกัด x_i ≥ 1 สำหรับทุกคน แต่คุณต้องการ t ≥ 1 ด้วยหรือไม่
Anand Kulkarni

ไม่ชัดเจน แต่เนื่องจากมีข้อ จำกัด ของรูปแบบ x_i + ... <t จึงเป็นกรณีที่ t> = 1 จะถูกบังคับใช้
Dave Doty

1
คุณอาจต้องการที่จะตรวจสอบกระดาษโดย D. Chakrabarty และตัวฉันเองdx.doi.org/10.1007/s00453-010-9431-z (มันยังอยู่ใน arXiv) ที่เราสำรวจและปรับปรุงผลลัพธ์เกี่ยวกับการประมาณจำนวนเต็มของการเขียนโปรแกรมแบบเบาบาง ซึ่งได้รับการปรับปรุงโดย N. Bansal et al ( springerlink.com/content/e705157852700g23หรือ arXiv)
daveagp

คำตอบ:


12

คำตอบสำหรับคำถามนี้ (อย่างน้อยสำหรับคำถามที่เป็นรูปธรรมเกี่ยวกับการแก้ปัญหาขอบเขตเชิงเส้น) ไม่มี นี้เป็นส่วนหนึ่งของกระดาษต่อไปนี้: http://arxiv.org/abs/1011.3493 ทฤษฎีบท 5.1 เป็นแรงจูงใจสำหรับคำถามนี้

ตัวอย่างของตัวอย่างนี้คือ:

กรณีฐาน:

a_1 '+ b_1' - t ≥ 0
a_1 '' + b_1 '' - t ≥ 0
a_1 + b_1 '- t ≤ -1
a_1 '+ b_1' '- t ≤ -1

กรณีซ้ำ:

a_n '+ b_n' + a_ {n-1} - t ≥ 0
a_n '' + b_n '' + a_ {n-1} - t ≥ 0
a_n + b_n '+ a_ {n-1}' '- t ≤ -1
a_n '+ b_n' + a_ {n-1} '' - t ≤ -1

พร้อมกับกำหนดให้พวกเขาทั้งหมดเป็นสิ่งที่ไม่ต้องการ

คุณสามารถพิสูจน์ได้โดยอุปนัยว่าโซลูชันที่แท้จริงใด ๆ จะต้องตอบสนอง a_n ''> = a_n + 2 ^ n เราเปลี่ยน "<0" -inequalities เป็น "≤ -1" เพราะวิธีการแก้ปัญหาจำนวนเต็มใด ๆ ที่ตรงกับ "≤ -1" ถ้าหากมันเป็นไปตาม "<0" เท่านั้น

ดังนั้นคุณธรรมคือ n ความไม่เท่าเทียมกันของแบบฟอร์มนี้สามารถมีคุณสมบัติที่โซลูชันจำนวนเต็มทั้งหมดมีเลขจำนวนเต็มอย่างน้อยหนึ่งค่าอย่างน้อยเป็นเลขชี้กำลังอย่างน้อยใน n แน่นอนไม่ จำกัด ขอบเขตเชิงเส้นอย่างที่เราสงสัย


9

หากค่าสัมประสิทธิ์เมทริกซ์เป็นunimodular โดยสิ้นเชิงแสดงว่ามีวิธีแก้ปัญหาที่มีประสิทธิภาพผ่านการเขียนโปรแกรมเชิงเส้นธรรมดา สิ่งนี้มีไว้สำหรับ ILP ใด ๆ ไม่เพียง แต่กระจัดกระจาย - แม้ว่าคุณมีแนวโน้มที่จะสามารถใช้ประโยชน์จากคุณสมบัตินี้สำหรับ ILP แบบกระจัดกระจายเช่นคุณ

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

โดยเฉพาะอย่างยิ่งปัญหาของคุณมีโครงสร้างค่อนข้างน้อย (ฉันอยากรู้อยากเห็นมันมาจากไหน) ดังนั้นฉันจึงมั่นใจว่าเราจะแม่นยำกว่านี้มากถ้าเราพูดคุยกันต่อไป

ตอนนี้สำหรับคำถามทั่วไปเพิ่มเติมเกี่ยวกับการค้นหาข้อมูลในหัวข้อนี้ นี่คือการเรียงลำดับของปัญหาที่สืบเนื่องกันมาในทฤษฎีของการเขียนโปรแกรมเชิงเส้นและจำนวนเต็มส่วนย่อยของการเขียนโปรแกรมทางคณิตศาสตร์

มันค่อนข้างเป็นพื้นที่ของการวิจัย แต่งานส่วนใหญ่เกิดขึ้นในแผนกวิจัยการดำเนินงานภายใต้หัวข้อของ "การเพิ่มประสิทธิภาพ" และ "การเขียนโปรแกรมทางคณิตศาสตร์" แทนวิทยาศาสตร์คอมพิวเตอร์ มีหนังสือเรียนมากมายครอบคลุมหัวข้อนี้ คุณอาจพิจารณาโดยWolseyซึ่งเราใช้ที่ Berkeley นี่คือรายการของตำนานและตัวอย่างที่ไม่ได้ใช้โดย Greenberg รวมถึงการเขียนโปรแกรมจำนวนเต็มและเชิงเส้นซึ่งอาจทำให้คุณเข้าใจถึงสิ่งที่ผู้คนพิจารณาในการวิเคราะห์ปัญหาดังกล่าว Wolsey มีความหนาแน่นสูง แต่เป็นจุดเริ่มต้นที่ดีพอสมควรมีเทคนิคมากมายสำหรับการวิเคราะห์ ILP และปรับปรุงสูตรของปัญหาจนถึงจุดที่มีประสิทธิภาพ

ให้ฉันเพิ่มว่าถ้าคุณทำตามแนวทางไร้เดียงสาที่ฉันแนะนำโดยการวิเคราะห์เรขาคณิตของโพลีท็อปคำที่ใช้ค้นหาจะเกี่ยวข้องกับการ จำกัด ขนาดของพิกัดของจุดยอดของโพลีท็อป คำศัพท์เหล่านี้เกิดขึ้นบ่อยครั้งในวรรณกรรมทางคณิตศาสตร์เกี่ยวกับ polytopes


2
@Dave Doty: มีเว็บไซต์ stackexchange สำหรับการดำเนินงานวิจัยor-exchange.com
M. Alaggan

3

คุณอาจพบบัญชีที่น่าสนใจนี้:

http://en.wikipedia.org/wiki/Polyhedral_combinatorics

และโดยเฉพาะบทความโดย G. Ziegler:

บรรยายเรื่อง polytopes 0-1

ใน:

Kalai, Gil; Ziegler, Günter M. (2000), Polytopes: Combinatorics and Computing, สัมมนา DMV, 29, Birkhäuser, ISBN 9783764363512


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