📜  双单纯形求解器 (1)

📅  最后修改于: 2023-12-03 15:22:51.705000             🧑  作者: Mango

双单纯形求解器

什么是双单纯形法

双单纯形法是一种解决线性规划问题的数值方法,它与单纯形法相比有更高的求解效率,尤其是对于大规模线性规划问题有很好的优化效果。

单纯形法和双单纯形法的区别在于,单纯形法是在顶点之间进行移动,而双单纯形法则是在由典型集和非基变量所构成的多面体上进行移动。因此,在处理大型线性规划问题时,双单纯形法通常比单纯形法更具优势。

双单纯形求解器的实现

在实现一个双单纯形求解器时,需要涉及到以下几个方面的内容:

1. 线性规划问题的建模

首先,需要将线性规划问题转化为标准型或松弛型。标准型或松弛型可以用矩阵和向量表示。

2. 确定基变量和非基变量

通过对转化后的矩阵进行初等变换,可以得到每个基变量所构成的矩阵和每个非基变量的矩阵。

3. 计算目标函数值

将目标函数用基变量和非基变量表示,并计算目标函数值。如果该值小于等于0,则已找到最优解,否则继续执行下一步。

4. 确定进入变量

利用非基变量求解最小比值q,并确定q所对应的非基变量为进入变量。

5. 确定离开变量

通过对目标函数进行初等变换,可以得到离开变量所对应的基变量。

6. 更新基变量和非基变量

通过对转化后的矩阵进行初等变换,可以得到更新后的基变量和非基变量。

7. 重复执行步骤3到步骤6

重复执行步骤3到步骤6,直到找到最优解为止。

参考链接