用半定编程可以解决什么,而用线性编程不能解决?


9

我对线性程序很熟悉,因为它们可以解决线性目标函数和线性约束的问题。但是,半定规划可以解决线性规划不能解决的问题?我已经知道半定程序是线性程序的一般化。

另外,如何识别可以使用半定编程解决的问题?半线性编程无法通过线性编程解决的一个典型问题是什么?

非常感谢您的任何答复。


2
也许您可以使您的问题更精确?毕竟,线性编程是完成。P
Kristoffer Arnsfelt Hansen 2013年

5
@KristofferArnsfeltHansen我永不停止思考为什么人们会在类似的讨论中不断提出这一事实。除非我们正在谈论将P与L或NC分开,否则P的完整性是无关紧要的-如果我们在谈论多项式,则P中的所有内容都是“ P完全的”。要提出OP的答案:一旦解决了问题的线性编码(即,写为优化多面体上的线性泛函),问多义LP / SDP是否可以解决问题就很有意义了。
Sasho Nikolov

Answers:


18

一个典型的问题是MaxCut:在图形中输出一个(大约)最大化裁切边数的裁切。Goemans和Williamson显示,SDP将MaxCut的值近似为至少0.878。最近,Chan,Lee,Raghavendra和Steurer表明,对于MaxCut问题的自然线性编码,所有多项式大小LP的逼近度均不超过0.5。

简而言之,很难说SDP通常会带来哪些问题。构造SDP松弛的系统方法是通过层次结构,其中最强大的是Lasserre层次结构:有关说明,请参阅Rothvoß的调查。到目前为止,有太多的SDP在优化方面取得成功的例子无法列出。此外,Raghavendra指出,如果唯一游戏猜想为真,则一个特定的SDP可以最佳地解决所有MaxCSP问题。

请查阅Gaertner和Matousek的书,以及Willimson 和Shmoys的书洛瓦兹的调查)的第6章和第13章。


12

对于许多组合优化问题(例如Max-Cut),半确定编程比IP公式的LP松弛产生更强的松弛。由于边界质量更好,因此可以设计近似算法和精确算法,这些算法比线性对应算法更有效。可以在Christoph Helmberg的“ 适应能力”论文本次调查以及本课程页面中找到示例 。

使用半定性编程的最近一系列令人瞩目的结果是Razborov的标志代数的应用,以证明有关Turan类型问题的结果(请参阅本调查标志性项目)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.