感觉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)的
太累了明天继续写
Physics Engine V0.4
New Feature Self-Collision
Fully Cloth-Softbody Interaction

体积网格生成算法,支持Multi Resolution,前3张图分别是3个Resolution层次从细-〉粗,最后一张是切面图。




摘要: 现在把柔体改为基于tetrahedron的Volmue preserve的模拟方法了,效果不错,碰撞检测目前支持tetra-conve,node-convex(刚-柔)tetra- Node,Face-Node(柔-柔),只是目前需要一种从表面网格生成为Tetrahedron Mesh的工具,试了几种都不好用,Tetgen,Netgen这2种都只适合工程计算,而且也不够强壮,最终决定自己写一个生成...
阅读全文
摘要: Feature:Collision Detection 碰撞检测(Narrow Phase:凸包Vs凸包,凸包Vs组合体,Concave Mesh Vs凸包,Box-Box etc ,Broad Phase:静态AABBtree,Sweep And Prun,动态AABB tree,Space Sparse Hash)Rigid Body Simulation 刚体模拟Fluid Simulati...
阅读全文
摘要: http://class.htu.cn/nla/chat5/sect5_1.htm最速下降http://class.htu.cn/nla/chat5/sect5_2.htm共轭梯度介绍和证明都很详细易懂,先收藏了,没时间仔细看粗略看了下。 最速下降法,是从一个正定对称阵构造出一个2次型多项式,求解多项式的最小值出的X值,来得到方程解,所谓最速下降就是给定X0,从该点寻找一个满足一定条件的下降方向和...
阅读全文