上一篇博客 【运筹学】线性规划 人工变量法 ( 人工变量法案例 | 第一次迭代 | 中心元变换 | 检验数计算 | 选择入基变量 | 选择出基变量 ) 中 , 进行了第一次迭代 , 首先进行中心元变换 , 计算该单纯形表检验数 , 进行最优解判定 , 该初始基可行解不是最优解 , 先选择入基变量 , 然后根据入基变量选择出基变量 ; 本篇博客中开始进行第二次迭代计算 ;
一、第二次迭代 : 中心元变换
当前的单纯形表为 :
cj |
cj |
|
3 |
2 |
−1 |
0 |
0 |
−M |
−M |
|
CB 基变量系数 (目标函数) |
XB 基变量 |
常数
b |
x1 |
x2 |
x3 |
x4 |
x5 |
x6 |
x7 |
θi |
−M ( 目标函数
x6 系数
c6 ) |
x6 |
4 |
−4 |
3 |
1 |
−1 |
0 |
1 |
0 |
4 (
θ6) |
0 ( 目标函数
x5 系数
c5) |
x5 |
10 |
1 |
−1 |
2 |
0 |
1 |
0 |
0 |
5 (
θ5 ) |
−M ( 目标函数
x7 系数
c7) |
x7 |
1 |
2 |
−2 |
1 |
0 |
0 |
0 |
1 |
1 (
θ7 ) |
σj ( 检验数 ) |
|
|
3−2M (
σ1) |
2+M (
σ2) |
−1+2M (
σ4) |
−M (
σ3) |
0 |
0 |
0 |
|
第一次迭代 |
– |
– |
– |
– |
– |
– |
– |
– |
– |
– |
−M ( 目标函数
x6 系数
c6 ) |
x6 |
3 |
−6 |
5 |
0 |
−1 |
0 |
1 |
移除 |
53 (
θ6) |
0 ( 目标函数
x5 系数
c5) |
x5 |
8 |
−3 |
3 |
0 |
0 |
1 |
0 |
移除 |
38 (
θ5 ) |
−1 ( 目标函数
x3 系数
c3) |
x3 |
1 |
2 |
−2 |
1 |
0 |
0 |
0 |
移除 |
− (
θ3 ) |
σj ( 检验数 ) |
|
|
5−6M (
σ1) |
5M (
σ2) |
0 |
−M (
σ4) |
0 |
0 |
移除 |
|
中心元 : 其中
x2 是入基变量 ,
x6 是出基变量 , 单纯形表中 ,
x2 变量列与
x6 变量行的交叉点就是中心元 ;
中心元变换 : 以中心元为轴 , 作变换 ;
- 中心元位置变换成
1 ;
- 中心元同列的系数变换成
0 ;
当前约束方程组等式为 :
s.t⎩⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎧−6x1+5x2+0x3−x4+0x5+x6−x7=3−3x1+3x2+0x3+0x4+x5+0x6−2x7=82x1−2x2+x3+0x4+0x5+0x6+x7=1
x6 是出基变量 , 并且是人工添加上去的变量 , 这里直接将
x6,x7 删除即可 ;
方程
1 变换 ( 中心元系数变为
1 ) :
将
−6x1+5x2+0x3−x4+0x5+x6−x7=3 中
x2 的系数变为
1 , 在方程左右两边乘以
51 ; ( 删除了
x6,x7 )
5−6x1+5x2+0x3−x4+0x5=53−56x1+x2+0x3−51x4+0x5=53
方程
2 变换 ( 中心元同列系数变为
0 ) :
将
−3x1+3x2+0x3+0x4+x5+0x6−2x7=8 中
x2 的系数变为
0 , 在方程
1 中
−56x1+x2+0x3−51x4+0x5=53 的等式左右两边乘以
−3 , 与上述方程相加即可 ; ( 删除了
x6,x7 )
(−56x1+x2+0x3−51x4+0x5)×−3+(−3x1+3x2+0x3+0x4+x5)=53×−3+853x1+0x2+0x3+53x4+x5=531
方程
3 变换 ( 中心元同列系数变为
0 ) :
将
2x1−2x2+x3+0x4+0x5+0x6+x7=1 中
x2 的系数变为
0 , 在方程
1 中
−56x1+x2+0x3−51x4+0x5=53 的等式左右两边乘以
2 , 与上述方程相加即可 ; ( 删除了
x6,x7 )
(−56x1+x2+0x3−51x4+0x5)×2+(2x1−2x2+x3+0x4+0x5)=53×2+1−52x1+0x2+x3−52x4+0x5=511
最终约束方程变为 :
s.t⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧−56x1+x2+0x3−51x4+0x5=5353x1+0x2+0x3+53x4+x5=531−52x1+0x2+x3−52x4+0x5=511
二、第二次迭代 : 单纯形表
根据上述中心元变换结果 , 更新单纯形表 :
cj |
cj |
|
3 |
2 |
−1 |
0 |
0 |
−M |
−M |
|
CB 基变量系数 (目标函数) |
XB 基变量 |
常数
b |
x1 |
x2 |
x3 |
x4 |
x5 |
x6 |
x7 |
θi |
−M ( 目标函数
x6 系数
c6 ) |
x6 |
4 |
−4 |
3 |
1 |
−1 |
0 |
1 |
0 |
4 (
θ6) |
0 ( 目标函数
x5 系数
c5) |
x5 |
10 |
1 |
−1 |
2 |
0 |
1 |
0 |
0 |
5 (
θ5 ) |
−M ( 目标函数
x7 系数
c7) |
x7 |
1 |
2 |
−2 |
1 |
0 |
0 |
0 |
1 |
1 (
θ7 ) |
σj ( 检验数 ) |
|
|
3−2M (
σ1) |
2+M (
σ2) |
−1+2M (
σ4) |
−M (
σ3) |
0 |
0 |
0 |
|
第一次迭代 |
– |
– |
– |
– |
– |
– |
– |
– |
– |
– |
−M ( 目标函数
x6 系数
c6 ) |
x6 |
3 |
−6 |
5 |
0 |
−1 |
0 |
1 |
移除 |
53 (
θ6) |
0 ( 目标函数
x5 系数
c5) |
x5 |
8 |
−3 |
3 |
0 |
0 |
1 |
0 |
移除 |
38 (
θ5 ) |
−1 ( 目标函数
x3 系数
c3) |
x3 |
1 |
2 |
−2 |
1 |
0 |
0 |
0 |
移除 |
− (
θ3 ) |
σj ( 检验数 ) |
|
|
5−6M (
σ1) |
5M (
σ2) |
0 |
−M (
σ4) |
0 |
0 |
移除 |
|
第二次迭代 |
– |
– |
– |
– |
– |
– |
– |
– |
– |
– |
2 ( 目标函数
x2 系数
c2 ) |
x2 |
53 |
−56 |
1 |
0 |
−51 |
0 |
移除 |
移除 |
? (
θ2) |
0 ( 目标函数
x5 系数
c5) |
x5 |
531 |
53 |
0 |
0 |
53 |
1 |
移除 |
移除 |
? (
θ5 ) |
−1 ( 目标函数
x3 系数
c3) |
x3 |
511 |
−52 |
0 |
1 |
−52 |
0 |
移除 |
移除 |
? (
θ3 ) |
σj ( 检验数 ) |
|
|
? (
σ1) |
0 |
0 |
? (
σ4) |
0 |
移除 |
移除 |
|
三、第二次迭代 : 计算检验数
1 . 计算非基变量
x1 的检验数
σ1 :
σ1=3−(20−1)×⎝⎜⎜⎜⎜⎜⎜⎜⎜⎛−5653−52⎠⎟⎟⎟⎟⎟⎟⎟⎟⎞=3−(2×−56+0×53+−1×−52)=5
2 . 计算非基变量
x4 的检验数
σ4 :
σ4=0−(20−1)×⎝⎜⎜⎜⎜⎜⎜⎜⎜⎛−5153−52⎠⎟⎟⎟⎟⎟⎟⎟⎟⎞=0−(2×−51+0×53+−1×−52)=0
四、第二次迭代 : 最优解判定
根据上述三个检验数
⎩⎪⎨⎪⎧σ1=5(正数)σ4=0(小于等于0) 的值 , 其中
σ1 检验数大于
0 , 该基可行解不是最优解 ;
只有当检验数都小于等于
0 时 , 该基可行解才是最优解 ;
五、第二次迭代 : 选择入基变量
根据上述三个检验数
⎩⎪⎨⎪⎧σ1=5(正数)σ4=0(小于等于0) 的值 , 选择检验数最大的非基变量作为入基变量 ,
σ1=5 最大 , 这里选择
x1 作为入基变量 ;
六、第二次迭代 : 选择出基变量
出基变量选择 : 常数列
b=⎝⎜⎜⎜⎜⎜⎜⎜⎜⎜⎛53531511⎠⎟⎟⎟⎟⎟⎟⎟⎟⎟⎞ , 分别除以除以入基变量
x1 大于
0 的系数列
⎝⎜⎜⎜⎜⎜⎜⎜⎜⎜⎛−5653−52⎠⎟⎟⎟⎟⎟⎟⎟⎟⎟⎞ , 计算过程如下
⎝⎜⎜⎜⎜⎜⎜⎜⎜⎜⎛系数小于等于0不符合要求53531系数小于等于0不符合要求⎠⎟⎟⎟⎟⎟⎟⎟⎟⎟⎞ , 得出结果是
⎝⎜⎜⎜⎜⎜⎛−331−⎠⎟⎟⎟⎟⎟⎞ , 如果系数小于等于
0 , 该值就是无效值 , 默认为无穷大 , 不进行比较 , 选择
331 对应的基变量作为出基变量 , 查看该最小值对应的变量是
x5 , 选择该
x5 变量作为出基变量 ;
七、第二次迭代 : 更新单纯形表
更新单纯形表 :
cj |
cj |
|
3 |
2 |
−1 |
0 |
0 |
−M |
−M |
|
CB 基变量系数 (目标函数) |
XB 基变量 |
常数
b |
x1 |
x2 |
x3 |
x4 |
x5 |
x6 |
x7 |
θi |
−M ( 目标函数
x6 系数
c6 ) |
x6 |
4 |
−4 |
3 |
1 |
−1 |
0 |
1 |
0 |
4 (
θ6) |
0 ( 目标函数
x5 系数
c5) |
x5 |
10 |
1 |
−1 |
2 |
0 |
1 |
0 |
0 |
5 (
θ5 ) |
−M ( 目标函数
x7 系数
c7) |
x7 |
1 |
2 |
−2 |
1 |
0 |
0 |
0 |
1 |
1 (
θ7 ) |
σj ( 检验数 ) |
|
|
3−2M (
σ1) |
2+M (
σ2) |
−1+2M (
σ4) |
−M (
σ3) |
0 |
0 |
0 |
|
第一次迭代 |
– |
– |
– |
– |
– |
– |
– |
– |
– |
– |
−M ( 目标函数
x6 系数
c6 ) |
x6 |
3 |
−6 |
5 |
0 |
−1 |
0 |
1 |
移除 |
53 (
θ6) |
0 ( 目标函数
x5 系数
c5) |
x5 |
8 |
−3 |
3 |
0 |
0 |
1 |
0 |
移除 |
38 (
θ5 ) |
−1 ( 目标函数
x3 系数
c3) |
x3 |
1 |
2 |
−2 |
1 |
0 |
0 |
0 |
移除 |
− (
θ3 ) |
σj ( 检验数 ) |
|
|
5−6M (
σ1) |
5M (
σ2) |
0 |
−M (
σ4) |
0 |
0 |
移除 |
|
第二次迭代 |
– |
– |
– |
– |
– |
– |
– |
– |
– |
– |
2 ( 目标函数
x2 系数
c2 ) |
x2 |
53 |
−56 |
1 |
0 |
−51 |
0 |
移除 |
移除 |
− (
θ2) |
0 ( 目标函数
x5 系数
c5) |
x5 |
531 |
53 |
0 |
0 |
53 |
1 |
移除 |
移除 |
331 (
θ5 ) |
−1 ( 目标函数
x3 系数
c3) |
x3 |
511 |
−52 |
0 |
1 |
−52 |
0 |
移除 |
移除 |
− (
θ3 ) |
σj ( 检验数 ) |
|
|
5 (
σ1) |
0 |
0 |
0 (
σ4) |
0 |
移除 |
移除 |