4

我已将我的问题(表格布局算法)简化为以下问题:

想象一下,我有 N 个变量 X 1 , X 2 , ..., X N。我也有一些(未确定的)不等式,例如:

X 1 >= 2
x 2 + X 3 >= 13
等等。

每个不等式都是一个或多个变量的总和,并且始终使用 >= 运算符将其与常数进行比较。我不能提前说我每次会有多少不等式,但所有变量都必须是非负的,所以每个变量已经是一个。

如何解决这个系统,使变量的值尽可能小?

补充:阅读维基百科文章并意识到我忘了提到变量必须是整数。猜猜这会让它变得 NP 难,对吧?

4

4 回答 4

7

最小化 x1 + x2 + ... 其中 xi 满足线性约束称为线性规划。它在Wikipedia中有详细介绍

于 2009-09-16T12:21:04.353 回答
6

你有一个非常基本的线性规划问题。你想最大化方程X_1 + ... + X_n服从

X_1 >= 2
X_2 + X_3 >= 13
etc.

有许多算法可以解决这类问题。最著名的是Simplex 算法,它可以在平均情况下非常有效地求解您的方程(有一些注意事项),尽管存在 LP 问题,Simplex 算法需要以指数方式求解(在问题规模上)。

存在各种 LP 求解器的实现。例如LP_Solve应该满足您的大部分要求

于 2009-09-16T12:22:53.543 回答
2

您也可以将您的线性模型直接发布到 NEOS 平台 ( http://neos.mcs.anl.gov/neos/solvers/index.html )。您首先要做的就是用 AMPL 等代数语言编写模型。然后 NEOS 将求解模型并通过电子邮件返回结果。

于 2009-09-21T12:38:20.853 回答
1

线性规划

于 2009-09-16T12:23:39.457 回答