给定约束系统gydF4y2Ba
⎩gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎨gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎧gydF4y2Ba2gydF4y2BaxgydF4y2Ba+gydF4y2Ba3.gydF4y2BaygydF4y2Ba3.gydF4y2BaxgydF4y2Ba+gydF4y2Ba2gydF4y2BaygydF4y2BaxgydF4y2BaygydF4y2Ba≤gydF4y2Ba9gydF4y2Ba0gydF4y2Ba≤gydF4y2Ba1gydF4y2Ba2gydF4y2Ba0gydF4y2Ba≥gydF4y2Ba0gydF4y2Ba≥gydF4y2Ba0gydF4y2Ba,gydF4y2Ba
最大化目标函数gydF4y2Ba
fgydF4y2Ba(gydF4y2BaxgydF4y2Ba,gydF4y2BaygydF4y2Ba)gydF4y2Ba=gydF4y2Ba7gydF4y2BaxgydF4y2Ba+gydF4y2Ba5gydF4y2BaygydF4y2Ba.gydF4y2Ba
单纯形算法首先将约束和目标函数转换为方程组。这是通过引入名为gydF4y2Ba松弛变量gydF4y2Ba.松弛变量表示正差异,或gydF4y2Ba松弛gydF4y2Ba不等式的左边和右边之间。gydF4y2Ba
的不平等gydF4y2Ba
2gydF4y2BaxgydF4y2Ba+gydF4y2Ba3.gydF4y2BaygydF4y2Ba≤gydF4y2Ba9gydF4y2Ba0gydF4y2Ba
就变成了gydF4y2Ba
2gydF4y2BaxgydF4y2Ba+gydF4y2Ba3.gydF4y2BaygydF4y2Ba+gydF4y2Ba年代gydF4y2Ba1gydF4y2Ba=gydF4y2Ba9gydF4y2Ba0gydF4y2Ba.gydF4y2Ba
同样,不等式gydF4y2Ba
3.gydF4y2BaxgydF4y2Ba+gydF4y2Ba2gydF4y2BaygydF4y2Ba≤gydF4y2Ba1gydF4y2Ba2gydF4y2Ba0gydF4y2Ba
就变成了gydF4y2Ba
3.gydF4y2BaxgydF4y2Ba+gydF4y2Ba2gydF4y2BaygydF4y2Ba+gydF4y2Ba年代gydF4y2Ba2gydF4y2Ba=gydF4y2Ba1gydF4y2Ba2gydF4y2Ba0gydF4y2Ba.gydF4y2Ba
除了松弛变量,还有一个变量gydF4y2Ba
zgydF4y2Ba用于表示目标函数的值。这就给出了方程gydF4y2Ba
zgydF4y2Ba−gydF4y2Ba7gydF4y2BaxgydF4y2Ba−gydF4y2Ba5gydF4y2BaygydF4y2Ba=gydF4y2Ba0gydF4y2Ba.gydF4y2Ba
这些方程给出了方程组gydF4y2Ba
⎩gydF4y2Ba⎨gydF4y2Ba⎧gydF4y2BazgydF4y2Ba−gydF4y2Ba7gydF4y2BaxgydF4y2Ba2gydF4y2BaxgydF4y2Ba3.gydF4y2BaxgydF4y2Ba−gydF4y2Ba+gydF4y2Ba+gydF4y2Ba5gydF4y2BaygydF4y2Ba3.gydF4y2BaygydF4y2Ba2gydF4y2BaygydF4y2Ba+gydF4y2Ba年代gydF4y2Ba1gydF4y2Ba+gydF4y2Ba年代gydF4y2Ba2gydF4y2Ba=gydF4y2Ba=gydF4y2Ba=gydF4y2Ba0gydF4y2Ba9gydF4y2Ba0gydF4y2Ba1gydF4y2Ba2gydF4y2Ba0gydF4y2Ba.gydF4y2Ba(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba
增广矩阵的形式是gydF4y2Ba
⎣gydF4y2Ba⎡gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba−gydF4y2Ba7gydF4y2Ba2gydF4y2Ba3.gydF4y2Ba−gydF4y2Ba5gydF4y2Ba3.gydF4y2Ba2gydF4y2Ba0gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba1gydF4y2Ba0gydF4y2Ba9gydF4y2Ba0gydF4y2Ba1gydF4y2Ba2gydF4y2Ba0gydF4y2Ba⎦gydF4y2Ba⎤gydF4y2Ba.gydF4y2Ba(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba
这意味着在这个系统中的所有变量(包括gydF4y2Ba
年代gydF4y2Ba1gydF4y2Ba,gydF4y2Ba
年代gydF4y2Ba2gydF4y2Ba,gydF4y2Ba而且gydF4y2Ba
zgydF4y2Ba)均大于或等于0。的变量gydF4y2Ba
年代gydF4y2Ba1gydF4y2Ba而且gydF4y2Ba
年代gydF4y2Ba2gydF4y2Ba连续系数为零gydF4y2Ba
(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba被称为gydF4y2Ba基本变量gydF4y2Ba.的变量gydF4y2Ba
xgydF4y2Ba而且gydF4y2Ba
ygydF4y2Ba有非零系数gydF4y2Ba
(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba被称为gydF4y2Ba非基本变量gydF4y2Ba.在这个过程中的任何一点gydF4y2Ba基本的解决方案gydF4y2Ba是通过将非基本变量设为0得到的。目前,基本的解决方案是gydF4y2Ba
xgydF4y2Ba=gydF4y2Ba0gydF4y2Ba,gydF4y2BaygydF4y2Ba=gydF4y2Ba0gydF4y2Ba,gydF4y2Ba年代gydF4y2Ba1gydF4y2Ba=gydF4y2Ba9gydF4y2Ba0gydF4y2Ba,gydF4y2Ba年代gydF4y2Ba2gydF4y2Ba=gydF4y2Ba1gydF4y2Ba2gydF4y2Ba0gydF4y2Ba,gydF4y2BazgydF4y2Ba=gydF4y2Ba0gydF4y2Ba.gydF4y2Ba
考虑增加非基本变量的值会对的值产生什么影响gydF4y2Ba
zgydF4y2Ba.gydF4y2Ba要么增加gydF4y2Ba
xgydF4y2Ba或gydF4y2Ba
ygydF4y2Ba会导致gydF4y2Ba
zgydF4y2Ba要也增加,因为gydF4y2Ba
xgydF4y2Ba而且gydF4y2Ba
ygydF4y2Ba有负的系数吗gydF4y2Ba
(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba.gydF4y2Ba因此,这不是最优解。gydF4y2Ba
单纯形算法的迭代是通过矩阵行运算来交换基本变量和非基本变量。在过程的每一步中,row中的一个非基本变量gydF4y2Ba
(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba被消除,导致另一个基本变量取代它作为一个非基本变量。这叫做gydF4y2Ba主gydF4y2Ba.gydF4y2Ba
假设gydF4y2Ba
xgydF4y2Ba会被连续淘汰吗gydF4y2Ba
(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba.gydF4y2Ba这可以用任意一行来完成gydF4y2Ba
(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba或行gydF4y2Ba
(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba.gydF4y2Ba
案例1。gydF4y2Ba消除gydF4y2Ba
xgydF4y2Ba在一行gydF4y2Ba
(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba与行gydF4y2Ba
(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba,gydF4y2Ba
⎣gydF4y2Ba⎡gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba2gydF4y2Ba3.gydF4y2Ba2gydF4y2Ba2gydF4y2Ba1gydF4y2Ba3.gydF4y2Ba2gydF4y2Ba2gydF4y2Ba7gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba1gydF4y2Ba3.gydF4y2Ba1gydF4y2Ba5gydF4y2Ba9gydF4y2Ba0gydF4y2Ba1gydF4y2Ba2gydF4y2Ba0gydF4y2Ba⎦gydF4y2Ba⎤gydF4y2Ba.gydF4y2Ba(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba
在这个主元过程中,变量gydF4y2Ba
xgydF4y2Ba进入gydF4y2Ba作为一个基本变量,和变量gydF4y2Ba
年代gydF4y2Ba1gydF4y2Ba左gydF4y2Ba变成一个非基本变量。现在取消gydF4y2Ba
xgydF4y2Ba在一行gydF4y2Ba
(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba:gydF4y2Ba
⎣gydF4y2Ba⎡gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba2gydF4y2Ba0gydF4y2Ba2gydF4y2Ba2gydF4y2Ba1gydF4y2Ba3.gydF4y2Ba−gydF4y2Ba2gydF4y2Ba5gydF4y2Ba2gydF4y2Ba7gydF4y2Ba1gydF4y2Ba−gydF4y2Ba2gydF4y2Ba3.gydF4y2Ba0gydF4y2Ba0gydF4y2Ba1gydF4y2Ba3.gydF4y2Ba1gydF4y2Ba5gydF4y2Ba9gydF4y2Ba0gydF4y2Ba−gydF4y2Ba1gydF4y2Ba5gydF4y2Ba⎦gydF4y2Ba⎤gydF4y2Ba.gydF4y2Ba(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba
这就给出了基本的解决方案gydF4y2Ba
xgydF4y2Ba=gydF4y2Ba4gydF4y2Ba5gydF4y2Ba,gydF4y2BaygydF4y2Ba=gydF4y2Ba0gydF4y2Ba,gydF4y2Ba年代gydF4y2Ba1gydF4y2Ba=gydF4y2Ba0gydF4y2Ba,gydF4y2Ba年代gydF4y2Ba2gydF4y2Ba=gydF4y2Ba−gydF4y2Ba1gydF4y2Ba5gydF4y2Ba,gydF4y2BazgydF4y2Ba=gydF4y2Ba3.gydF4y2Ba1gydF4y2Ba5gydF4y2Ba.gydF4y2Ba
这个解是不可能的,因为它导致其中一个变量为负。gydF4y2Ba
例2。gydF4y2Ba消除gydF4y2Ba
xgydF4y2Ba在一行gydF4y2Ba
(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba与行gydF4y2Ba
(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba,gydF4y2Ba
⎣gydF4y2Ba⎡gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba2gydF4y2Ba3.gydF4y2Ba−gydF4y2Ba3.gydF4y2Ba1gydF4y2Ba3.gydF4y2Ba2gydF4y2Ba0gydF4y2Ba1gydF4y2Ba0gydF4y2Ba3.gydF4y2Ba7gydF4y2Ba0gydF4y2Ba1gydF4y2Ba2gydF4y2Ba8gydF4y2Ba0gydF4y2Ba9gydF4y2Ba0gydF4y2Ba1gydF4y2Ba2gydF4y2Ba0gydF4y2Ba⎦gydF4y2Ba⎤gydF4y2Ba.gydF4y2Ba(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba
在这个主元过程中,变量gydF4y2Ba
xgydF4y2Ba进入gydF4y2Ba作为一个基本变量,和变量gydF4y2Ba
年代gydF4y2Ba2gydF4y2Ba左gydF4y2Ba变成一个非基本变量。现在取消gydF4y2Ba
xgydF4y2Ba在一行gydF4y2Ba
(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba:gydF4y2Ba
⎣gydF4y2Ba⎡gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba3.gydF4y2Ba−gydF4y2Ba3.gydF4y2Ba1gydF4y2Ba3.gydF4y2Ba5gydF4y2Ba2gydF4y2Ba0gydF4y2Ba1gydF4y2Ba0gydF4y2Ba3.gydF4y2Ba7gydF4y2Ba−gydF4y2Ba3.gydF4y2Ba2gydF4y2Ba1gydF4y2Ba2gydF4y2Ba8gydF4y2Ba0gydF4y2Ba1gydF4y2Ba0gydF4y2Ba1gydF4y2Ba2gydF4y2Ba0gydF4y2Ba⎦gydF4y2Ba⎤gydF4y2Ba.gydF4y2Ba(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba
这就给出了基本的解决方案gydF4y2Ba
xgydF4y2Ba=gydF4y2Ba4gydF4y2Ba0gydF4y2Ba,gydF4y2BaygydF4y2Ba=gydF4y2Ba0gydF4y2Ba,gydF4y2Ba年代gydF4y2Ba1gydF4y2Ba=gydF4y2Ba1gydF4y2Ba0gydF4y2Ba,gydF4y2Ba年代gydF4y2Ba2gydF4y2Ba=gydF4y2Ba0gydF4y2Ba,gydF4y2BazgydF4y2Ba=gydF4y2Ba2gydF4y2Ba8gydF4y2Ba0gydF4y2Ba.gydF4y2Ba
这个解是可能的,但不是最优的,因为这一行有一个负的系数gydF4y2Ba
(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba.gydF4y2Ba这意味着gydF4y2Ba
zgydF4y2Ba可以通过增加来进一步增加吗gydF4y2Ba
ygydF4y2Ba.gydF4y2Ba另一个支点将需要找到最优解。gydF4y2Ba
这是一个相当多的工作来执行枢轴,只发现它给出了一个不可行的解决方案。幸运的是,我们可以通过观察增宽矩阵右边部分的元素与进入变量系数的比值来预测哪个枢轴将导致可行解。考虑gydF4y2Ba
ygydF4y2Ba作为输入变量,计算这些比值:gydF4y2Ba
⎣gydF4y2Ba⎡gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba3.gydF4y2Ba−gydF4y2Ba3.gydF4y2Ba1gydF4y2Ba3.gydF4y2Ba5gydF4y2Ba2gydF4y2Ba0gydF4y2Ba1gydF4y2Ba0gydF4y2Ba3.gydF4y2Ba7gydF4y2Ba−gydF4y2Ba3.gydF4y2Ba2gydF4y2Ba1gydF4y2Ba2gydF4y2Ba8gydF4y2Ba0gydF4y2Ba1gydF4y2Ba0gydF4y2Ba1gydF4y2Ba2gydF4y2Ba0gydF4y2Ba⎦gydF4y2Ba⎤gydF4y2Ba.gydF4y2Ba(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba
对于输入变量gydF4y2Ba
ygydF4y2Ba,gydF4y2Ba这个比值是gydF4y2Ba
1gydF4y2Ba0gydF4y2Ba÷gydF4y2Ba3.gydF4y2Ba5gydF4y2Ba=gydF4y2Ba6gydF4y2Ba对行gydF4y2Ba
(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba而且gydF4y2Ba
2gydF4y2Ba1gydF4y2Ba2gydF4y2Ba0gydF4y2Ba=gydF4y2Ba6gydF4y2Ba0gydF4y2Ba对行gydF4y2Ba
(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba.gydF4y2Ba选择以下行gydF4y2Ba最小化gydF4y2Ba这个比例将确保枢轴得到一个可行的解。因此,行gydF4y2Ba
(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba应该被选为主行。gydF4y2Ba
消除gydF4y2Ba
ygydF4y2Ba在一行gydF4y2Ba
(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba与行gydF4y2Ba
(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba,gydF4y2Ba
⎣gydF4y2Ba⎡gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba3.gydF4y2Ba0gydF4y2Ba3.gydF4y2Ba5gydF4y2Ba2gydF4y2Ba5gydF4y2Ba1gydF4y2Ba1gydF4y2Ba0gydF4y2Ba5gydF4y2Ba1gydF4y2Ba1gydF4y2Ba−gydF4y2Ba3.gydF4y2Ba2gydF4y2Ba1gydF4y2Ba2gydF4y2Ba8gydF4y2Ba2gydF4y2Ba1gydF4y2Ba0gydF4y2Ba1gydF4y2Ba2gydF4y2Ba0gydF4y2Ba⎦gydF4y2Ba⎤gydF4y2Ba.gydF4y2Ba(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba
然后消除gydF4y2Ba
ygydF4y2Ba在一行gydF4y2Ba
(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba,gydF4y2Ba
⎣gydF4y2Ba⎡gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba3.gydF4y2Ba0gydF4y2Ba3.gydF4y2Ba5gydF4y2Ba0gydF4y2Ba5gydF4y2Ba1gydF4y2Ba1gydF4y2Ba−gydF4y2Ba5gydF4y2Ba6gydF4y2Ba5gydF4y2Ba1gydF4y2Ba1gydF4y2Ba−gydF4y2Ba3.gydF4y2Ba2gydF4y2Ba5gydF4y2Ba9gydF4y2Ba2gydF4y2Ba8gydF4y2Ba2gydF4y2Ba1gydF4y2Ba0gydF4y2Ba1gydF4y2Ba0gydF4y2Ba8gydF4y2Ba⎦gydF4y2Ba⎤gydF4y2Ba.gydF4y2Ba(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba
这就给出了基本的解决方案gydF4y2Ba
xgydF4y2Ba=gydF4y2Ba3.gydF4y2Ba6gydF4y2Ba,gydF4y2BaygydF4y2Ba=gydF4y2Ba6gydF4y2Ba,gydF4y2Ba年代gydF4y2Ba1gydF4y2Ba=gydF4y2Ba0gydF4y2Ba,gydF4y2Ba年代gydF4y2Ba2gydF4y2Ba=gydF4y2Ba0gydF4y2Ba,gydF4y2BazgydF4y2Ba=gydF4y2Ba2gydF4y2Ba8gydF4y2Ba2gydF4y2Ba.gydF4y2Ba
这个解决方案gydF4y2Ba必须gydF4y2Ba是最优的,因为任何非基本变量的增加gydF4y2Ba
年代gydF4y2Ba1gydF4y2Ba而且gydF4y2Ba
年代gydF4y2Ba2gydF4y2Ba会不会造成减少gydF4y2Ba
zgydF4y2Ba.gydF4y2Ba因此,目标函数的最大值为gydF4y2Ba
fgydF4y2Ba(gydF4y2Ba3.gydF4y2Ba6gydF4y2Ba,gydF4y2Ba6gydF4y2Ba)gydF4y2Ba=gydF4y2Ba2gydF4y2Ba8gydF4y2Ba2gydF4y2Ba.gydF4y2Ba□gydF4y2Ba
给定约束系统gydF4y2Ba
⎩gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎨gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎧gydF4y2Ba4gydF4y2BaxgydF4y2Ba+gydF4y2Ba3.gydF4y2BaygydF4y2Ba+gydF4y2Ba5gydF4y2BazgydF4y2BaxgydF4y2Ba+gydF4y2Ba3.gydF4y2BaygydF4y2Ba+gydF4y2Ba2gydF4y2BazgydF4y2Ba2gydF4y2BaxgydF4y2Ba+gydF4y2Ba3.gydF4y2BaygydF4y2Ba+gydF4y2Ba4gydF4y2BazgydF4y2BaxgydF4y2Ba,gydF4y2BaygydF4y2Ba,gydF4y2BazgydF4y2Ba≥gydF4y2Ba6gydF4y2Ba5gydF4y2Ba≥gydF4y2Ba3.gydF4y2Ba8gydF4y2Ba≥gydF4y2Ba5gydF4y2Ba2gydF4y2Ba≥gydF4y2Ba0gydF4y2Ba,gydF4y2Ba
最小化函数gydF4y2Ba
fgydF4y2Ba(gydF4y2BaxgydF4y2Ba,gydF4y2BaygydF4y2Ba,gydF4y2BazgydF4y2Ba)gydF4y2Ba=gydF4y2Ba1gydF4y2Ba2gydF4y2BaxgydF4y2Ba+gydF4y2Ba3.gydF4y2BaygydF4y2Ba+gydF4y2Ba1gydF4y2Ba0gydF4y2BazgydF4y2Ba.gydF4y2Ba
这个问题可以用上面最大化示例中所示的形式来表达,但是在找到第一个基本解决方案时就会出现问题:设置gydF4y2Ba
xgydF4y2Ba,gydF4y2Ba
ygydF4y2Ba,gydF4y2Ba而且gydF4y2Ba
zgydF4y2Ba,gydF4y2Ba变量gydF4y2Ba
0gydF4y2Ba会给出一个不可行的解决方案,松弛变量为负值。单纯形算法需要从一个可行解开始,所以这行不通。Big-M方法为这个问题提供了一个变通方法,但是对于这个问题还有一个更简单的方法。gydF4y2Ba
这个问题的“对偶”可以写成系数的转置。将约束的系数放入增广矩阵中。将目标函数的系数放入最下面一行,右边为0:gydF4y2Ba
⎣gydF4y2Ba⎢gydF4y2Ba⎢gydF4y2Ba⎡gydF4y2Ba4gydF4y2Ba1gydF4y2Ba2gydF4y2Ba1gydF4y2Ba2gydF4y2Ba3.gydF4y2Ba3.gydF4y2Ba3.gydF4y2Ba3.gydF4y2Ba5gydF4y2Ba2gydF4y2Ba4gydF4y2Ba1gydF4y2Ba0gydF4y2Ba6gydF4y2Ba5gydF4y2Ba3.gydF4y2Ba8gydF4y2Ba5gydF4y2Ba2gydF4y2Ba0gydF4y2Ba⎦gydF4y2Ba⎥gydF4y2Ba⎥gydF4y2Ba⎤gydF4y2Ba.gydF4y2Ba
转置矩阵的元素:gydF4y2Ba
⎣gydF4y2Ba⎢gydF4y2Ba⎢gydF4y2Ba⎡gydF4y2Ba4gydF4y2Ba3.gydF4y2Ba5gydF4y2Ba6gydF4y2Ba5gydF4y2Ba1gydF4y2Ba3.gydF4y2Ba2gydF4y2Ba3.gydF4y2Ba8gydF4y2Ba2gydF4y2Ba3.gydF4y2Ba4gydF4y2Ba5gydF4y2Ba2gydF4y2Ba1gydF4y2Ba2gydF4y2Ba3.gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba⎦gydF4y2Ba⎥gydF4y2Ba⎥gydF4y2Ba⎤gydF4y2Ba.gydF4y2Ba
注意:gydF4y2Ba我们很容易把这个矩阵的第二行中的3分出来,但是这会破坏回到原始问题所需要的对称性。gydF4y2Ba
这给出了一个新的约束系统和目标函数gydF4y2Ba最大化:gydF4y2Ba给定约束系统gydF4y2Ba
⎩gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎨gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎪gydF4y2Ba⎧gydF4y2Ba4gydF4y2BaugydF4y2Ba+gydF4y2BavgydF4y2Ba+gydF4y2Ba2gydF4y2BawgydF4y2Ba3.gydF4y2BaugydF4y2Ba+gydF4y2Ba3.gydF4y2BavgydF4y2Ba+gydF4y2Ba3.gydF4y2BawgydF4y2Ba2gydF4y2BaugydF4y2Ba+gydF4y2Ba3.gydF4y2BavgydF4y2Ba+gydF4y2Ba4gydF4y2BawgydF4y2BaugydF4y2Ba,gydF4y2BavgydF4y2Ba,gydF4y2BawgydF4y2Ba≤gydF4y2Ba1gydF4y2Ba2gydF4y2Ba≤gydF4y2Ba3.gydF4y2Ba≤gydF4y2Ba5gydF4y2Ba2gydF4y2Ba≥gydF4y2Ba0gydF4y2Ba,gydF4y2Ba
功能最大化gydF4y2Ba
ggydF4y2Ba(gydF4y2BaugydF4y2Ba,gydF4y2BavgydF4y2Ba,gydF4y2BawgydF4y2Ba)gydF4y2Ba=gydF4y2Ba6gydF4y2Ba5gydF4y2BaugydF4y2Ba+gydF4y2Ba3.gydF4y2Ba8gydF4y2BavgydF4y2Ba+gydF4y2Ba5gydF4y2Ba2gydF4y2BawgydF4y2Ba.gydF4y2Ba
现在可以用单纯形算法求最优解gydF4y2Ba
⎣gydF4y2Ba⎢gydF4y2Ba⎢gydF4y2Ba⎡gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba−gydF4y2Ba6gydF4y2Ba5gydF4y2Ba4gydF4y2Ba3.gydF4y2Ba2gydF4y2Ba−gydF4y2Ba3.gydF4y2Ba8gydF4y2Ba1gydF4y2Ba3.gydF4y2Ba3.gydF4y2Ba−gydF4y2Ba5gydF4y2Ba2gydF4y2Ba2gydF4y2Ba3.gydF4y2Ba4gydF4y2Ba0gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba1gydF4y2Ba0gydF4y2Ba1gydF4y2Ba2gydF4y2Ba3.gydF4y2Ba5gydF4y2Ba2gydF4y2Ba⎦gydF4y2Ba⎥gydF4y2Ba⎥gydF4y2Ba⎤gydF4y2Ba.gydF4y2Ba(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba(gydF4y2Ba3.gydF4y2Ba)gydF4y2Ba
输入gydF4y2Ba
ugydF4y2Ba与行gydF4y2Ba
(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba:gydF4y2Ba
⎣gydF4y2Ba⎢gydF4y2Ba⎢gydF4y2Ba⎡gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba1gydF4y2Ba0gydF4y2Ba2gydF4y2Ba7gydF4y2Ba−gydF4y2Ba3.gydF4y2Ba1gydF4y2Ba1gydF4y2Ba1gydF4y2Ba3.gydF4y2Ba−gydF4y2Ba2gydF4y2Ba1gydF4y2Ba2gydF4y2Ba0gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba3.gydF4y2Ba6gydF4y2Ba5gydF4y2Ba−gydF4y2Ba4gydF4y2Ba3.gydF4y2Ba1gydF4y2Ba−gydF4y2Ba2gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba1gydF4y2Ba6gydF4y2Ba5gydF4y2Ba8gydF4y2Ba1gydF4y2Ba5gydF4y2Ba0gydF4y2Ba⎦gydF4y2Ba⎥gydF4y2Ba⎥gydF4y2Ba⎤gydF4y2Ba.gydF4y2Ba(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba(gydF4y2Ba3.gydF4y2Ba)gydF4y2Ba
行中的所有系数gydF4y2Ba
(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba都是正的,所以这就是最优解。矩阵右上角的最大值,gydF4y2Ba
6gydF4y2Ba5gydF4y2Ba,gydF4y2Ba与原问题的最小值相同。然而,变量gydF4y2Ba
ugydF4y2Ba,gydF4y2Ba
vgydF4y2Ba,gydF4y2Ba而且gydF4y2Ba
wgydF4y2Ba和原来问题中的变量不一样。幸运的是,使原始问题最小化的变量值对应于行中松弛变量的系数gydF4y2Ba
(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba.gydF4y2Ba
⎣gydF4y2Ba⎢gydF4y2Ba⎢gydF4y2Ba⎡gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba1gydF4y2Ba0gydF4y2Ba2gydF4y2Ba7gydF4y2Ba−gydF4y2Ba3.gydF4y2Ba1gydF4y2Ba1gydF4y2Ba1gydF4y2Ba3.gydF4y2Ba−gydF4y2Ba2gydF4y2Ba1gydF4y2Ba2gydF4y2Ba0gydF4y2Ba1gydF4y2Ba0gydF4y2Ba0gydF4y2Ba3.gydF4y2Ba6gydF4y2Ba5gydF4y2Ba−gydF4y2Ba4gydF4y2Ba3.gydF4y2Ba1gydF4y2Ba−gydF4y2Ba2gydF4y2Ba0gydF4y2Ba0gydF4y2Ba0gydF4y2Ba1gydF4y2Ba6gydF4y2Ba5gydF4y2Ba8gydF4y2Ba1gydF4y2Ba5gydF4y2Ba0gydF4y2Ba⎦gydF4y2Ba⎥gydF4y2Ba⎥gydF4y2Ba⎤gydF4y2Ba.gydF4y2Ba(gydF4y2Ba0gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba(gydF4y2Ba1gydF4y2Ba)gydF4y2Ba(gydF4y2Ba2gydF4y2Ba)gydF4y2Ba2gydF4y2Ba1gydF4y2Ba(gydF4y2Ba3.gydF4y2Ba)gydF4y2Ba
因此,原问题最小化目标函数的值为gydF4y2Ba
xgydF4y2Ba=gydF4y2Ba0gydF4y2Ba,gydF4y2BaygydF4y2Ba=gydF4y2Ba3.gydF4y2Ba6gydF4y2Ba5gydF4y2Ba,gydF4y2BazgydF4y2Ba=gydF4y2Ba0gydF4y2Ba.gydF4y2Ba□gydF4y2Ba