单纯形法之两阶段法
单纯形法基本步骤
两阶段法具体思路
- 构造合适目标函数找出一组可行基
- 构造 Z = − x n + 1 − x n + 2 Z=-x_{n+1}-x_{n+2} Z=−xn+1−xn+2;也能换出人工变量
-
Z
Z
Z达到最大值
0
,
x
n
+
1
,
x
n
+
2
0,x_{n+1},x_{n+2}
0,xn+1,xn+2为0,有两种可能:
a、 x n + 1 , x n + 2 x_{n+1},x_{n+2} xn+1,xn+2成为非基变量。得到不包含人工变量的初始可行基。进入下一阶段。
b、 x n + 1 或 x n + 2 x_{n+1}或x_{n+2} xn+1或xn+2是基变量,但为0。退化。
4. Z Z Z达到最大但不是0,说明起码不可能将人工变量完全换出,问题无解。
解的判别
- 无界解
目标函数为最大,如果换入变量 x k x_k xk所在系数均小于等于0,即 a i k ′ ≤ 0 ( i = 1 , 2 , 3...... m ) a_{ik}^{'}≤0(i=1,2,3......m) aik′≤0(i=1,2,3......m),则利用最小规则无法得到一个换出变量。 - 无穷多解
非基变量检验数等于0,表示换入换出一样,所以有无穷多解。 - 退化解
一般情况,基可行解中非0分量个数等于约束方程的个数m。如果某一基可行解中非0分量个数小于m,即一些基变量值等于0,该基解为退化解。
按 θ \theta θ规则确定换出变量时,同时存在两个以上相同的最小比值,在下一次迭代中就有一个或几个基变量等于零,这就出现了退化解,继续迭代,目标值不变,造成死循环。
判别:当 b i b_i bi中有一个以上为0时,就称为退化。
避免:摄动法,词典序法,“勃兰特”法