在 Scilab 中使用 Karmarkar 方法

Using the Karmarkar method in Scilab

我是 Scilab 的新手,我打算用它来做线性规划。我用谷歌搜索并找到了这段代码:

Aeq = [
2 0 6
0 3 5
];
beq = [8;15;30];
c = [30;50];
[xopt]=karmarkar(Aeq,beq,c);

但是karmarkar好像有问题。谁能告诉我如何解决我的问题?我尝试使用 help karmarkar 因为我认为它可能与 Matlab 相同但它没有用。

参数Aeqbeq表示线性等式约束。 Aeq的每一行都有一个方程的系数,beq对应的行是右边。因此,Aeqbeq 中的行数必须相同。

此外,c 的行数必须等于您拥有的变量数,在本例中为三个。

总结一下:当你有 m 个约束条件和 n 个变量时,矩阵的大小如下:

  • Aeq 是 m 乘以 n
  • beq 是米乘以 1
  • c 是 n 乘以 1

工作示例:

Aeq = [
2 0 6
0 3 5
]
beq = [8;15]
c = [30;50;70]
[xopt]=karmarkar(Aeq,beq,c)