有关Lemek's algo中,除了Initial Ray外Second Ray是不可能出现(W0,W1,W2,。。。Z0均严格>0)的证明
感觉Murty的书里讲的不清楚,我自己整理了遍自己的证明
1。首先当Ax=b(A mxn)不是Degenerate的情况下(即b不可能由任意<m个的列向量表示出来的情况下)使用Lemke Law是不会出Basis Cycling的情况的。
证明:如果一个出现了Cycling的情况意味,对于某个Basis它可以由3个不同的Basis分别通过Enter一个Variable来达到,例如对于W0,Z0,W1,Z1,W2,Z2,W3,Z3,
假设它的某个Almost Complementary Feasible Basis:(Y0,Y1,Y2,Z0)可以由
1.(Y0,Y2,Y3,Z0)-> (Y1 Enter,Y3 Leave)
2.(Y1,Y2,Y3,Z0)-> (Y0 Enter,Y3 Leave)
3.(Y0,Y1,Y3,Z0)-> (Y2 Enter,Y3 Leave)
这3种情况到达,那么显然3种情况下Y3都是Drop Variable而Y3 = (W3,Z3)其中的一个。显然上述式子中至少有2个的Y3是相同的,也就是至少有2个Y3都等于Z3或者都等于W3
以W3为例,假设:
1.(Y0,Y2,W3,Z0)-> (Y1 Enter,Y3 Leave)
2.(Y1,Y2,W3,Z0)-> (Y0 Enter,Y3 Leave)
显而易见(Y0,Y1,Y2,Z0)也可以通过
1.(Y0,Y1,Y2,Z0)-> (W3 Enter,Y3 Leave) 到达 (Y0,Y2,W3,Z0)
2.(Y0,Y1,Y2,Z0)-> (W3 Enter,Y0 Leave) 到达 (Y1,Y2,W3,Z0)
也就是说W3进入后,Basis(Y0,Y1,Y2,Z0)即可以选择Y3作为Drop Variable
又可以选择Y0做为Drop Variable来变为林外一个 Almost Complementary Feasible Basis
这意味着什么?意味着W3所对应的列向量中的第0 和第3行 的Minimum Ration是相同的,也就是
b0/a03 = b3/a33。这就意味着从Y0,Y1,Y2,Z0 到 Y0,Y2,W3,Z0或者Y1,Y2,W3,Z0的Pivot步骤被执行后
要么Y0对应的Basic Variable = 0 要么Y3对应的Basic Variable = 0 这就和非Degenerate的情况产生矛盾!
因此:结论1
Ax=b(A mxn)不是Degenerate的情况下(即b不可能由任意<m个的列向量表示出来的情况下)使用Lemke Law是不会出Basis Cycling
结论2
使用 Lexico Minimum ration来选择Drop Variable的情况下出现的Second Ray 是不会等于Initial Ray的,守先Murty书中说了当Ax=b是Degenerate的情况下可以通过给向量b一个扰动一就是存在一个足够小的数e0,对于任何e<e0 令E = (e,e^2,e^3...e^m) Ax=b+E是非Degenerate的,然后只要按照使用 Lexico Minimum ration来选择Drop Variable那么得出的Basis一定是Lexico feasible的(也就是一定存在足够小的e0 对任意e<e0 E = (e,e^2,e^3...e^m) ,Ax=b+E是Feasible的)。综合上面两条可得一定存在足够小的e0,对于任意e<e0 E = (e,e^2,e^3...e^m) ,我们对原系统Ax=b使用Lemke方法的时候系统:
1.Ax=b+E是非Degenerate的
2.Ax=b+E也进行着同样序列的Basis转换并且每次转换的Basis都是Feasible的(对应的变量均>=0)
接下来证明对于一个非Degenerate的系统Ax=b
因为它的初始BASIS是(w0,w1,w2,Wi-1,z0,Wi...Wm)
那么在使用Lemke的过程中他的Basis是不会变为(W0,W1,W2...Wj-1,z0,Wj...Wm)(i 不等于j)的
太累了明天继续写
fish.shadow song 若愚.影歌
posted on 2010-08-05 22:57 fish.shadow song(若愚.影歌) 阅读(561) 评论(4) 编辑 收藏 举报