改进单纯形法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
T
非基变量 X N1 = ( x1 , x5 ) ;
T
价值系数 C = CB1 , C N1 = ( (0, 0,3), (2, 0) )
(
)
计算非基变量的检验数,确定换入变量: 计算非基变量的检验数,确定换入变量:
σ N = CN − CB B1−1 N1 (注意:N1 = ( P , P5 )) 1
主元素
⇒ ξ2
1 B2−1 = E2 B1−1 = −4 0
1 = −4 ⇒ E2 0 0 0 1 1 0 0 0 1 0
1 0 = −4 1 0 0 0 −1/ 2 1 0 0 1/ 4
(5)计算非基变量的系数矩阵 )
−1/ 2 1 1 −1/ 2 1 1 N1 = 4 ⇒ B1−1 N1 = 1 0 4 = 4 0 1 1/ 4 1 1/ 4
(6)计算 )计算RHS
−1/ 2 8 2 1 −1 B1 b = 1 0 16 = 16 1/ 4 12 3
步计算结束后的结果: 第1步计算结束后的结果 步计算结束后的结果
基 B1 = ( P , P4 , P2 ) ; 3 基变量 X B1 = ( x3 , x4 , x2 ) ;
改进单纯形法
求解线性规划问题的关键是计算B 求解线性规划问题的关键是计算 -1 。 以下介绍一种比较简便的计算B-1的方法。 以下介绍一种比较简便的计算 的方法。
系数矩阵为A,求其逆矩阵时,可先从第1列开始 列开始。 设m×n系数矩阵为 ,求其逆矩阵时,可先从第 列开始。 × 系数矩阵为
a11 a12 L a1m a21 a22 L a2m A= M M M a a L a mm m1 m2
换入变量
(3) 确定换出变量
表示选择>0的元素
( B0−1b ) i 8 16 12 −1 θ = min −1 B0 P2 > 0 = min , , = 3 ⇒ 对应x5 ( B0 P2 ) i 2 0 4
(4)基变换计算 ) 将新的基 ( P3 , P4 , P2 ) ⇒ 单位矩阵。计算: 单位矩阵。计算:
若以X 为基变量,并标记成X 可将系数矩阵(A, 若以 s 为基变量 , 并标记成 B , 可将系数矩阵 , I) 两块。 是基变量的系数矩阵 是基变量的系数矩阵, 是非基变量 分为 (B,N) 两块。B是基变量的系数矩阵,N是非基变量 , 的系数矩阵。并同时将决策变量也分为两部分: 的系数矩阵。并同时将决策变量也分为两部分:
单纯形法的矩阵描述
设线性规划问题可以用如下矩阵形式表示: 设线性规划问题可以用如下矩阵形式表示: 目标函数 max z=CX 约束条件 AX≤b 非负条件 X≥0
将该线性规划问题的约束条件加入松弛变 量后,得到标准型: 量后,得到标准型:
max z=CX+0Xs AX+IXs=b X,X s≥0 其中, 单位矩阵。 其中,I 是m×m单位矩阵。 × 单位矩阵
1 1 1
1 0 −1/ 2 1 0 = ( 2, 0 ) − (0, 0,3) 0 1 0 4 0 0 0 1/ 4 0 1 = ( 2, −3 / 4 ) ⇒对应 ( x1 , x5 )
换入变量
确定换出变量: 确定换出变量:
而后以第2列的 为主元素,进行变换: 而后以第 列的 a22 为主元素,进行变换
(1) (1) − a12 / a22 (1) 1/ a22 P2(1) ⇒ ξ 2 = M (1) (1) − am 2 / a22
(1)
来自百度文库
(2)
然后构造含有( ) 而其他列都是单位列的矩阵: 然后构造含有(2)列,而其他列都是单位列的矩阵
将(2-2)式移项及整理后得到: )式移项及整理后得到:
BX B = b − N1 X N1 − S 2 X S2 ; X B = B b − B N1 X N1 − B S2 X s2 ; 目标函数: z = CB B −1b + (CN1 − CB B −1 N1 ) X N1 + (CS2 − CB B −1 I ) X S
(1) (1) 1 − a12 / a22 L 0 (1) 0 1/ a22 L 0 E2 = M M M 0 − a (1) / a (1) L 1 m2 22
可得到: 可得到
1 0 E2 E1 A = M 0
(2) 0 a13 L a1(2) m (2) (2) 1 a23 L a2 m M M M (2) (2) 0 am 3 L amm
−1/ 2 2 −1/ 2 1 P2 = 0 ⇒ ξ1 = 0 ;构造E1 = 1 0 4 1/ 4 1/ 4 主元素
−1/ 2 1 −1/ 2 1 1 B1−1 = E1 B0−1 = 1 0 1 = 1 0 1/ 4 1 1/ 4
(3)单纯形表与矩阵表示的关系 )单纯形表与矩阵表示的关系:
0 1 B N1 1 0 CN − CB B −1 N1 B b = (2 − 7) −1 −CB B b
−1
−1
−z X −1 B B −1 X −CB B N1 X N2
−1 −1 −1
令非基变量=0,由上式得到: 令非基变量 ,由上式得到:
B −1b (1) 基可行解: X = ; 0 −1 目标函数的值: z = CB B b
(1)非基变量的系数表示为: )非基变量的系数表示为:
(CN1 - CB B N1 ) 对应已用的检验数符号 : c j - z j ( j = 1, 2, ⋅⋅⋅, n) 检验数也可表示为: C - CB B A与 - CB B
线性规划问题可表示为: 线性规划问题可表示为:
目标函数: max z = CB X B + CN X N = CB X B + CN1 X N1 + CS2 X S2 约束条件: BX B + NX N = BX B + N1 X N1 + S 2 X S2 = b 非负条件: XB, XN ≥ 0 (2 − 3) (2 − 1) (2 − 2)
重复以上的步骤,直到获得 重复以上的步骤,直到获得:
1 E m L E 2 E1 A =
可见, 可见,En…E2E1=A-1。
1 O
= A −1 1
用这方法可以求得单纯形法的基矩阵B的逆矩阵 用这方法可以求得单纯形法的基矩阵 的逆矩阵B-1 的逆矩阵
( B1−1b ) i 2 16 3 −1 θ = min −1 B1 P > 0 = min , , = 2 ⇒ 对应x1 1 ( B1 P ) i 1 4 0 1
由此得到新的基: 由此得到新的基:
B2 = ( P , P4 , P2 ) 1 1 P = 4 1 0
基变量 X B1 XB = 可包含原基变量和松弛变量 XS 1 X N1 非基变量:X N = ; XS 2
相应有: 相应有
N1 B 系数矩阵A = ; 其中N = ; N S2 X S1 基变量 松弛变量:X S = → X S 非基变量 2
0 L 0 1/ a11 −a21 / a11 1 E1 = M O −a / a 1 m1 11
可得到: 可得到:
a21 a21 − a11 a11
a21 a22 − a12 a11
(1) 1 1 a12 L a1(1) m (1) (1) 0 ; E A = 0 a22 L a2 m E1 P = 1 1 M M M M 0 0 a (1) L a (1) m2 mm
-1 -1
-1
(2)θ规则表示为: ) 规则表示为: RHS值 值 表示选用>0的分量 表示选用 的分量
( B −1b)i ( B −1b)i θ = min −1 ( B −1 Pj )i > 0 = −1 ( B Pj )i ( B Pj )i
换入变量的系数向量
单纯形表中的数据: 单纯形表中的数据
基变量
非基变量
等式右边
XB
系数矩阵 检验数
XN BN 1
−1 −1
Xs B
−1 −1
RH S Bb −CBB b
−1 −1
B B =1 0
−1
CN1 −CBB N −CBB 1
小结
1)掌握矩阵的运算; )掌握矩阵的运算; 2)理解基矩阵的作用; )理解基矩阵的作用; 3)了解矩阵运算与单纯表的关系。 )了解矩阵运算与单纯表的关系。
0 0 1 1 0 −1/ 2 = −4 1 2 0 0 1/ 4
计算RHS 计算
1 0 −1/ 2 8 2 −1 B2 b = −4 1 2 16 = 8 0 0 1/ 4 12 3
第1步:确定初始基,初始基变量;确定换入,换出变量 步 确定初始基,初始基变量 确定换入, 确定换入 (1)确定初始基和初始基变量: )确定初始基和初始基变量:
1 x3 B0 = ( P3 , P4 , P5 ) = 1 ; X B0 = x4 x 1 5
XB X = XN
相应地可将目标函数系数C分为两部分: 相应地可将目标函数系数 分为两部分:CB和 CN, 分 分为两部分 别对应于基变量X 和非基变量X 并且记作: 别对应于基变量 B和非基变量 N,并且记作 C=(CB, CN) (
若经过迭代运算后,可表示为: 若经过迭代运算后,可表示为:
(2)计算非基变量的检验数,确定换入变量。 )计算非基变量的检验数,确定换入变量。
σ N = CN − CB B0−1 N 0 (注意:N 0 = ( P , P2 )) 1
0 0 0
1 0 0 1 2 = ( 2, 3) − (0, 0, 0) 0 1 0 4 0 = ( 2, 3) ⇒对应 ( x1 , x2 ) 0 0 1 0 4
以例1为例进行计算。 以例 为例进行计算。 为例进行计算
max z = 2 x1 + 3 x2 + 0 x3 + 0 x4 + 0 x5 x1 + 2 x2 + x3 = 8 4 x + x = 16 1 4 s.t. 4 x2 + x5 = 12 x j ≥ 0, j = 1, 2,3, 4,5
为主元素, 进行变换: 以a11为主元素 进行变换:
a11 a21 P= 1 M a m1
主元素
1/ a11 −a / a 21 11 ⇒ ξ1 = M −am1 / a11
(1)
然后构造含有( ) 然后构造含有(1)列,而其他列都是单位列的矩阵
相关文档
最新文档