運籌學——線性規划及單純形法求解
1. 線性規划的概念
線性規划是研究在一組線性不等式或等式約束下使得某一線性目標函數取最大(或最小)的極值問題。
2. 線性規划的標准形

特點:目標函數求極大;等式約束;變量非負。
則線性規划標准形的矩陣表達式為:

如何化標准形:
(II)約束條件為不等式
約束條件為“” 不等式,則在約束條件的左端加上一個非負的松弛變量;
約束條件為“” 不等式,則在約束條件的左端減去一個非負的松弛變量。
3. 單純形法求解
(I) 化為標准形(要求),確定初始基
,建立初始單純形表(假設A矩陣中存在單位矩陣);

(III)若在中,存在
,而
,則無最優解,停止。否則轉入下一步;
重復(ⅱ)~(ⅴ)。
4. 單純形法求解例示
|








兩階段法
第一階段,求初始基可行解:在原線性規划問題中加入人工變量,使約束矩陣出現單位子矩陣,然后以這些人工變量之和W求最小為目標函數,構造如下模型:
![]() |
對上述模型求解(單純形法),若W=0,說明問題存在基本可行解,可以進行第二個階段;否則,原問題無可行解,停止運算。
第二階段:在第一階段的最終表中,去掉人工變量,將目標函數的系數換成原問題的目標函數系數,作為第二階段計算的初始表(用單純形法計算)。

例:
第一階段

第二階段

∴最優解為(4 1 9 0 0),目標函數 Z = –2
退化: 即計算出的θ(用於確定換出變量)存在有兩個以上相同的最小比值,會造成下一次迭代中由一個或幾個基變量等於零,這就是退化(會產生退化解)。
雖任意換出變量,目標函數值不變,但此時不同的基卻表示為同一頂點,其特例是永遠達不到最優解。需作如下處理:
⑴. .當中出現兩個以上最大值時,選下標最小的非基變量為換入變量;
⑵.當θ中出現兩個以上最小值時,選下標最小的基變量為換出變量。
參考文獻:
[1] 《運籌學》教材編寫組. 運籌學. 北京: 清華大學出版社.