首页 > 解决方案 > 线性规划求解器中上限和下限的参数

问题描述

许多科学计算平台提供线性规划求解器。例如,linprog在 MATLAB、Scipy 和 DolphinDB 中有一个函数。linprog在所有这三个平台中,都为不等式约束提供了一个参数,即,A以及有界变量的两个参数,即lbub

如果线性规划问题具有有界变量,我可以将它们放在不等式约束中A,通过添加仅包含一个1-1其余元素为的行0,或者我可以简单地将它们放在lb和/或ub中。

这两种方式有什么区别吗?A或者有什么理由我应该赞成lb/ ub,反之亦然?

标签: matlabscipylinear-programmingdolphindb

解决方案


边界比显式约束更有效。基本上,在单纯形求解器中,边界不会增加基矩阵的大小。这个基矩阵需要被求解和反转(分解)。

高级求解器有一个预求解器,可以将单例约束转换为边界。在这种情况下,没有真正的性能损失。对于那些求解器来说,如何指定绑定约束主要是一个品味问题:作为绑定约束还是作为单例约束。


推荐阅读