运筹优化(二)--线性规划概念及应用模型
一、解決問(wèn)題
???? 線性規(guī)劃問(wèn)題是在一組線性約束下,求線性目標(biāo)函數(shù)的最大最小值的問(wèn)題。
二、數(shù)學(xué)模型
1、一般數(shù)學(xué)模型
2、矩陣表示
其中c,x都是列向量,A,Aeq是一個(gè)合適的矩陣,b,beq是合適的列向量。然后lb和ub是下限和上限(但是請(qǐng)注意lb是一個(gè)變量的名字)。
注意:這里針對(duì)變量類型約束增加上下限的約束,其目的在于減少主要約束Ax=b中的行數(shù),從而簡(jiǎn)化計(jì)算。本質(zhì)上,跟標(biāo)準(zhǔn)的非負(fù)類型約束一致。
實(shí)際碰到各種線性規(guī)劃問(wèn)題的數(shù)學(xué)模型都應(yīng)變換為標(biāo)準(zhǔn)型式后求解。
以下討論如何變換為標(biāo)準(zhǔn)型的問(wèn)題。
(1 ) 若要求目標(biāo)函數(shù)實(shí)現(xiàn)最小化, 即 min z = CX。這時(shí)只需將目標(biāo)函數(shù)最小化變換求目標(biāo)函數(shù)最大化 , 即令z′= -z , 于是得到max z′= -CX。 這就同標(biāo)準(zhǔn)型的目標(biāo)函數(shù)的形式一致了。
(2) 約束方程為不等式。這里有兩種情況: 一種是約束方程為“≤”不等式, 則可在 “≤”不等式的左端加入非負(fù)松弛變量, 把原“≤”不等式變?yōu)榈仁? 另一種是約束方程為 “ ≥ ”不等式 , 則可在“ ≥ ”不等式的左端減去一個(gè)非負(fù)剩余變量 (也可稱松弛變量), 把不等式約束條件變?yōu)榈仁郊s束條件。
(3) 若存在取值無(wú)約束的變量xk ,可令xk = x′k - x′′k ,其中 x′k , x′′k ≥0。
線性規(guī)劃問(wèn)題的解的概念
在討論線性規(guī)劃問(wèn)題的求解前, 先要了解線性規(guī)劃問(wèn)題的解的概念。我們針對(duì)線性規(guī)劃的一般數(shù)學(xué)模型來(lái)說(shuō)明:
1. 可行解
滿足約束條件的解X=(x1 ,x2 ,?,xn)T ,稱為線性規(guī)劃問(wèn)題的可行解 , 其中使目標(biāo)函數(shù)達(dá)到最大值的可行解稱為最優(yōu)解。
2. 基
設(shè) A是約束方程組的 m×n維系數(shù)矩陣,其秩為 m。B是矩陣 A中 m×m階非奇異子矩陣( | B| =?0) ,則稱B是線性規(guī)劃問(wèn)題的一個(gè)基。這就是說(shuō), 矩陣B是由 m個(gè)線性獨(dú)立的列向量組成。為不失一般性 , 可設(shè):
稱 Pj (j=1,2,?,m)為基向量,與基向量 Pj 相應(yīng)的變量 xj (j=1,2,?,m)為基變量,否則稱為非基變量 , 為了進(jìn)一步討論線性規(guī)劃問(wèn)題的 解, 下面研究約束方程組(1-5 ) 的 求 解 問(wèn)題。假設(shè)該方程組系數(shù)矩陣 A 的秩為 m , 因 m < n, 故它有無(wú)窮多個(gè)解。假設(shè)前 m 個(gè)變 量的系數(shù)列向量是線性獨(dú)立的。這時(shí)(1 -5)式可寫成:
設(shè) XB 是對(duì)應(yīng)于這個(gè)基的基變量:XB =(x1,x2,?,xm)T?,
現(xiàn)若令上式的非基變量 xm + 1 = xm + 2 = ? = xn = 0, 這時(shí)變量的個(gè)數(shù)等于線性方程的個(gè)數(shù)。用高斯消去法 , 求出一個(gè)解:
X=(x1 ,x2 ,?,xm ,0,?,0)T
該解的非零分量的數(shù)目不大于方程個(gè)數(shù) m, 稱 X 為基解。由此可見 , 有一個(gè)基 , 就可以求出一個(gè)基解。
3. 基可行解
同時(shí)滿足非負(fù)條件的可行解和基解的解,稱為基可行解。
4. 可行基
對(duì)應(yīng)于基可行解的基 , 稱為可行基。約束方程組(1-5)具有基解的數(shù)目最多是 Cnm (組合)個(gè)。一般基可行解的數(shù)目要小于基解的數(shù)目。以上提到 的幾種解的概念, 它們之間的關(guān)系可用下圖表明。另外還要說(shuō)明一點(diǎn) , 基解中的非零分量的個(gè)數(shù)小于m 個(gè)時(shí), 該基解是退化解。在以下討論 時(shí) , 假設(shè)不出現(xiàn)退化的 情況。以上給出了線性規(guī)劃問(wèn)題的解的概念和定義 , 它們將有助于用來(lái)分析線性規(guī)劃問(wèn)題的求解過(guò)程。
三、相關(guān)方程解法
1、圖解法,畫出可行域,這個(gè)可以進(jìn)行編程進(jìn)行實(shí)現(xiàn)、
2、直接使用MATLAB的相關(guān)方法進(jìn)行解題、
[x,fval]=linprog(c,A,b,Aeq,beq,LB,UB,Xo,OPTIONS)???? 其中fval返回的是目標(biāo)函數(shù)的值,然后x則是返回取到fval時(shí)x的對(duì)應(yīng)的值,然后LB和UB是對(duì)應(yīng)x的上界和下界(可以省略),x0是x的初始值(暫時(shí)可以忽略)
OPTIONS是控制參數(shù)。
其他還有專門的線性規(guī)劃求解算法,后面單獨(dú)介紹。
四、一些其他問(wèn)題轉(zhuǎn)換成線性規(guī)劃
1、絕對(duì)值之和最小
在這里我們就可以令,就可以滿足,這樣子這個(gè)問(wèn)題就變成了
2、兩個(gè)數(shù)的差的絕對(duì)值,在xi固定時(shí),取得max,之后在去定yi
我們?nèi)?#xff0c;就可以轉(zhuǎn)換問(wèn)題了
五、一些線性規(guī)劃可以解決的實(shí)際問(wèn)題
1、生產(chǎn)力有限,要求取得最大收益,更一般性的說(shuō)法,是資源分配模型,用來(lái)解決在資源有限的情況下,如何將資源分配給彼此競(jìng)爭(zhēng)的需求,從而實(shí)現(xiàn)資源的優(yōu)化配置。
2、運(yùn)輸問(wèn)題(產(chǎn)銷問(wèn)題)
????? 要求運(yùn)輸費(fèi)用最小
????????? 在這里需要記得有一個(gè)很重要的等式,就是所有產(chǎn)地送出去的等于所有銷售地收到的
3、指派問(wèn)題
???? 要求花費(fèi)的工作時(shí)間要最短
?????????????
(2)求解指派問(wèn)題的匈牙利算法、
???? 首先我們要知道對(duì)與系數(shù)矩陣C由這樣的性質(zhì),同時(shí)對(duì)每一行(列)加上或者減去同樣的一個(gè)數(shù),得到的新矩陣和原矩陣的指派問(wèn)題具有相同的最優(yōu)指派。
一般步驟是:
a、每行每列消除最小的數(shù)字,使得出現(xiàn)能夠出現(xiàn)N(與矩陣大小相同)個(gè)位于不同行不同列的零元素,選定就是最優(yōu)解。
b、如果上一步驟沒辦法直接完成,則、
4、對(duì)偶理論(與反函數(shù)相比較)
最重要的是掌握其性質(zhì),可以用來(lái)檢驗(yàn)是不是最優(yōu)解、、
5、投資的收益和風(fēng)險(xiǎn)(主要多目標(biāo)函數(shù)如何并成一個(gè)目標(biāo)函數(shù))
????? 下一步主要是設(shè)立變量(這是數(shù)學(xué)建模中一步很關(guān)鍵的地方,你指標(biāo)選的好,方程就好列好解,否則。。。。)
????? 之后就是加入限定,一些理想化的假設(shè)
????? 然后寫出方程
???? 其中第一個(gè)目標(biāo)函數(shù)為收益,第二個(gè)為風(fēng)險(xiǎn)。
???? 下一步就是化簡(jiǎn)目標(biāo)函數(shù)
(1)固定風(fēng)險(xiǎn)水平,優(yōu)化收益
(2)固定盈利水平,極小化風(fēng)險(xiǎn)
(3)同時(shí)考慮兩個(gè),這樣的話需要加入一個(gè)權(quán)重s。
6.混料模型
資源分配模型是將各種資源分配給不同的需求,混料模型是把零散的資源整合起來(lái),簡(jiǎn)而言之,混料模型解決的是決策各種成分的組合以最好的滿足生產(chǎn)的需要。
7.運(yùn)營(yíng)規(guī)劃模型
用以決策生產(chǎn)工作的安排以有效的使用可用資源。
8.排班和人員規(guī)劃模型
在工作量給定的前提下,我們需要規(guī)劃完成這些工作的資源投入,特別的,我們必須決定不同類型的員工人數(shù)和排班數(shù)量,以保證完成所有的工作量。
9.多階段模型
用來(lái)建模動(dòng)態(tài)的,隨時(shí)間變化的,或者多個(gè)時(shí)間段執(zhí)行的。
總結(jié)
以上是生活随笔為你收集整理的运筹优化(二)--线性规划概念及应用模型的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: CDA二期学习笔记
- 下一篇: 论文阅读笔记:ProjectionNet