有效地求解所有系数均等于1的严格线性不等式的系统,而无需使用一般的LP解算器?


9

除了使用通用的LP解算器,每个标题都提供一种解决变量不等式系统的方法 xi,,xk 不等式的形式 iIxi<jJxj?那么关于不等式的特殊情况呢?不等式构成了一个幂集成员的总和{xi,,xk}


4
@Ankur:整数还是实数都没有关系。如果这些是严格的不等式,则可以将它们四舍五入为有理数,然后将它们乘以最小公分母得到整数解。
彼得·索尔

6
我不知道您可以在30分钟内用什么语言(用哪种语言?)编写代码。如果这是“简单”的标准,那么这真的是理论计算机科学中的一个问题吗?
伊藤刚(Tsuyoshi Ito)

1
彼得·索尔(Peter Shor)好点。琼德里,我把我的发言还给我。我当时在想,满足这些严格不等式的组合问题和找到圆锥的内点的凸分析问题在质上是截然不同的。我错了。
Ankur 2012年

1
@Tsuyoshi:不必太琐碎,但是我很好奇是否可以在不使用完整LP解算器的所有额外功能的情况下,从第一原理中做到这一点,特别是对于我们需要订购的特殊情况所有子集和的总和(在这种情况下,请注意,多项式时间的变量数是指数的)。
琼德里2012年

3
然后,我认为“如果不使用线性规划的通用算法,是否可以有效解决这个问题?” 是更好地提出问题的好方法。
伊藤刚(Tsuyoshi Ito)

Answers:


9

对于第一个问题,如果没有总顺序,那么问题的答案就是它与线性编程一样困难。这是证明的概要。

首先,让我们建立一个变量 x1>0,我们称之为 ϵ。现在,让我们选择另一个变量xi,我们将其称为 1。我们要确保

ϵ1.
为此,请考虑不平等
x1<x2,
x1+x2<x3,
x2+x3<x4,
等等。有了足够长的链,这将告诉我们Nx1<xi, 要么 ϵ<1/N,对于一些非常大的 NN 是斐波那契数,所以在 i)。

我们现在可以制造一个具有整数系数的线性程序。如果我们想要3的系数xt,我们加上不等式

xt<xt<xt<xt+ϵ
并让代表3。如果您想要更大的系数,则可以通过用二进制表示法表示系数,并使不等式确保,等来获得它们。为了获得右侧,我们对变量进行了同样的操作。这种技术将使我们使用OP形式的线性程序来近似检查具有整数系数的任意线性程序的可行性,这一任务本质上与线性编程一样困难。xt+xt+xtxtxu2xtxv2xuxi=1

我不知道如何分析第二个问题,询问所有子集都具有总顺序的情况。

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.