为什么单纯形算法可用于求解线性规划

时间:2013-06-23 11:37:00

标签: algorithm

我们知道单纯形是一种非常着名的算法,用于解决线性规划问题,我知道如何使用它,但令我困惑的是,为什么单纯形总是假设多面体的一个顶点是最优解?

3 个答案:

答案 0 :(得分:1)

简而言之,沿着增加利润的方向走进多面体内部,你将最终进入一个顶点。很像这样的观察结果:如果你在其中一个角上放一个盒子,让一个大理石从顶部滚动,它就会在这个角落里结束。

当您在与增加的利润线垂直的一侧停止行走时,需要考虑一个案例,那么这一方的所有要点都是最佳解决方案。因此,您可以选择此方的任何顶点。

答案 1 :(得分:1)

给定线性目标函数 f 和多面体 P ,您可以如下推理。

  1. P 内部的任何 p 点都不能是严格的局部最大值。通过 p 划一条 L 行,并将 f 限制为 L 。将 L 参数化为 p + t(q - p)某些点 q t 实数。然后 f 的限制在 t 中是线性的,并且存在一个包含0的区间(a,b), t 在其中有效。在 t 的系数上,向一个方向或另一个方向增加 f 。如果 t 的系数为0,则尽量沿一个方向走。
  2. P 面部内部的任何一点都具有相同的属性,您可以限制该线条保留在该面上。
  3. 按尺寸标注尺寸,沿着边界单面走下去。你最终到了一个顶点;局部最大值位于顶点。
  4. 这并不意味着您选择了正确的线条;单纯形算法的复杂性在于如何走正确的方向。

答案 2 :(得分:1)

我认为你可以参考几何,尤其是解析几何。单纯形算法实际上意味着最优结果始终保留在顶点而不是直线或面部,这非常直观。