線性規劃算法原理介紹
阿新 • • 發佈:2017-06-20
算法 線性規劃
線性規劃定義:
求滿足約束的最優目標,目標是變量的線性函數,約束是變量的相等或不等表達式。
單純形算法
1 松弛變量 為將不等式轉化為等式添加的非負變量
比如 將f(xi) >0 變成 xj= f(xi) ,那麽xj就是松弛變量
主元操作(pivot)
1 任意在目標函數中系數為正的基本變量xi, 計算對其約束最緊的松弛變量yj
2 將yj= f(x) 轉換成 xi = f(x,yj)
3 將上式代入其余約束和目標函數 ,從而生成新的線性方程組
單純形算法(simplex)
1 將標準型轉化為基本解可行的松弛型
2 如果目標函數裏還有正系數,就執行主元操作
3 按照基本解,求基本變量和目標值,即位最優解
單純形算法證明:
求證: 如果線性規劃有最優解,那麽單純形算法得到的解一定是最優解;如果線性規劃沒有最優解,那麽單純形算法一定會返回無解
已知:
1 松弛變量>0
2 第一步轉化好松弛型,其基本解可行
證明:
如果線性規劃沒有最優解,那麽單純形算法一定會返回無解
證明: 因為基本解可行,所以一定有解
如果線性規劃有最優解,那麽單純形算法得到的解一定是最優解
證明:
1 目標函數都是等價變換的,不會影響其值
2 最後目標函數系數都是負的,而基本變量和松弛變量都是非負數
本文出自 “12033555” 博客,請務必保留此出處http://12043555.blog.51cto.com/12033555/1940287
線性規劃算法原理介紹