อัลกอริทึมที่แน่นอนสำหรับการเขียนโปรแกรมสมการกำลังสองไม่ใช่แบบนูน


13

คำถามนี้เกี่ยวกับปัญหาการเขียนโปรแกรมสมการกำลังสองที่มีข้อ จำกัด ของกล่อง (box-QP) เช่นปัญหาการเพิ่มประสิทธิภาพของแบบฟอร์ม

  • ย่อขนาดภายใต้ .x[ 0 , 1 ] nf(x)=xTAx+cTxx[0,1]n

ถ้าเป็นแบบกึ่งบวกแน่นอนทุกอย่างจะดีและนูนและง่ายและเราสามารถแก้ปัญหาได้ในเวลาพหุนามA

ในทางกลับกันถ้าเรามีข้อ จำกัด ของการรวมเราสามารถแก้ปัญหาได้อย่างง่ายดายในเวลาด้วยกำลังดุร้าย สำหรับวัตถุประสงค์ของคำถามนี้มีความรวดเร็วพอสมควร O ( 2 np o l y ( n ) )x{0,1}nO(2npoly(n))

แต่สิ่งที่เกี่ยวกับกรณีไม่ต่อเนื่องนูน? อัลกอริทึมที่รู้จักกันเร็วที่สุดสำหรับ box-QP ทั่วไปคืออะไร

ตัวอย่างเช่นเราสามารถแก้ปัญหาเหล่านี้ได้ในเวลาที่อธิบายอย่างพอสมควรเช่นหรือมีความซับซ้อนที่สุดของอัลกอริทึมที่รู้จักกันดีที่สุดO(3npoly(n))


พื้นหลัง:ฉันมีบางกล่อง QPS ค่อนข้างเล็กที่ฉันอยากจะจริงเหมือนที่จะแก้ปัญหาและฉันเป็นบิตแปลกใจที่เห็นว่าไม่ดีบางแพคเกจซอฟต์แวร์เชิงพาณิชย์ดำเนินการแม้สำหรับค่าขนาดเล็กมากของnฉันเริ่มสงสัยว่ามีคำอธิบาย TCS สำหรับการสังเกตนี้หรือไม่n


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

ข้อเสียคือ "ฐาน" ของเลขชี้กำลังจะเป็นอะไรเช่นแต่บางทีวิศวกรรมกริดที่ฉลาดสามารถช่วยให้ "เล็ก"n1/ϵn
Suresh Venkat

@ChandraChekuri: ประการเป็นอย่างดีดีถ้าคุณจะประสบความสำเร็จเช่น9} อย่างไรก็ตามการบังคับใช้เดรัจฉานเหนือกริดดังกล่าวนั้นไม่สามารถทำได้ ϵ=109
Jukka Suomela

โดยการกำจัดปริมาณในสนามปิดจริงมันเป็นไปได้เสมอที่จะแก้ปัญหาระบบเหล่านี้อย่างแน่นอน

2
หากอนุญาตให้คุณสามารถปรับฟังก์ชั่นในแต่ละหน้าของคิวบ์ได้เพียงแค่เขียนเกณฑ์การปรับให้เหมาะสมอันดับแรก O(3n)
Yoshio Okamoto

คำตอบ:


12

ทางออกที่ดีที่สุดอยู่ที่ใบหน้า ดังนั้นเราสามารถผ่านใบหน้าทั้งหมดของคิวบ์และค้นหาจุดนิ่งทั้งหมดบนแต่ละใบหน้า

นี่คือขั้นตอนที่เป็นรูปธรรมมากขึ้น ใบหน้าของลูกบาศก์ที่สามารถโดดเด่นด้วยสองชุดดัชนีเคลื่อนและฉัน 1 สำหรับฉันฉัน0เราแก้ไขx ฉัน = 0และสำหรับฉันฉัน1แก้ไขเราx ฉัน = 1 Let ~ xประกอบด้วยรายการที่ไม่เจาะจงที่เหลืออยู่ของx การแก้ไขนี้จะเปลี่ยนฟังก์ชั่นวัตถุประสงค์เป็นแบบฟอร์มต่อไปนี้:I0I1iI0xi=0iI1xi=1x~x

x~A~x~+c~x~+d,

ที่มีความเหมาะสมและ~ และคงบางdและเราต้องการที่จะหาจุดหยุดนิ่งของฟังก์ชั่นนี้อยู่ภายใต้เงื่อนไขที่ว่า0 < ~ x < 1A~c~d0<x~<1

ด้วยเหตุนี้เราจึงนำความแตกต่างของฟังก์ชันวัตถุประสงค์มาใช้

12A~x~+c~=0.

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

O(3npoly(n))n3nn


1
f

@ โคดี้: นั่นเป็นเพราะโพลีท็อปทุกอันเป็นส่วนที่แยกออกจากกัน
โยชิโอะโอคาโมโตะ

f

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