5.1.1. 线性规划建模

线性规划(Linear programming,LP)问题可以用以下数学形式表示:

mincf+cTxs.t.lrAxur,lcxuc,
其中
  • xRn 是决策变量,

  • lcRnucRn 分别为 x 的下界和上界,

  • cfR 是目标函数中的常量,

  • cRn 是目标函数中的系数,

  • ARm×n 是约束矩阵,

  • lrRmurRm 分别为是约束的下界和上界。

使用 MindOpt 的步骤为:

  1. 创建优化模型;

  2. 输入优化问题并设置算法参数;

  3. 求解优化问题并获取解。

Note

MindOpt 仅存储约束矩阵 A 中的 非零元;因此,在建模时只需要输入 非零元 在约束矩阵中的 行列位置 (row/column index) 以及对应的 非零数值 (nonzero value)

5.1.1.1. 线性规划问题示例

在下文中,我们将考虑下列线性规划问题:

min1x0+2x1+1x2+1x3s.t.1x0+1x1+2x2+3x311x01x2+6x3=1
0x0100x10x20x3

我们将分别给出不同编程语言下的示例,来展示如何使用 MindOpt 建模和求解这个优化问题。