姜啟源編《數(shù)學(xué)建模》第四版 第四章數(shù)學(xué)規(guī)劃模型_第1頁
姜啟源編《數(shù)學(xué)建?!返谒陌?第四章數(shù)學(xué)規(guī)劃模型_第2頁
姜啟源編《數(shù)學(xué)建?!返谒陌?第四章數(shù)學(xué)規(guī)劃模型_第3頁
姜啟源編《數(shù)學(xué)建?!返谒陌?第四章數(shù)學(xué)規(guī)劃模型_第4頁
姜啟源編《數(shù)學(xué)建?!返谒陌?第四章數(shù)學(xué)規(guī)劃模型_第5頁
已閱讀5頁,還剩99頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、第四章 數(shù)學(xué)規(guī)劃模型,4.1 奶制品的生產(chǎn)與銷售 4.2 自來水輸送與貨機(jī)裝運(yùn) 4.3 汽車生產(chǎn)與原油采購 4.4 接力隊選拔和選課策略 4.5 飲料廠的生產(chǎn)與檢修 4.6 鋼管和易拉罐下料,數(shù)學(xué)規(guī)劃模型,實(shí)際問題中 的優(yōu)化模型,x決策變量,f(x)目標(biāo)函數(shù),gi(x)0約束條件,多元函數(shù)條件極值,決策變量個數(shù)n和 約束條件個數(shù)m較大,最優(yōu)解在可行域 的邊界上取得,數(shù)學(xué)規(guī)劃,線性規(guī)劃 非線性規(guī)劃 整數(shù)規(guī)劃,重點(diǎn)在模型的建立和結(jié)果的分析,企業(yè)生產(chǎn)計劃,4.1 奶制品的生產(chǎn)與銷售,空間層次,工廠級:根據(jù)外部需求和內(nèi)部設(shè)備、人力、原料等條件,以最大利潤為目標(biāo)制訂產(chǎn)品生產(chǎn)計劃;,車間級:根據(jù)生產(chǎn)計劃、

2、工藝流程、資源約束及費(fèi)用參數(shù)等,以最小成本為目標(biāo)制訂生產(chǎn)批量計劃.,時間層次,若短時間內(nèi)外部需求和內(nèi)部資源等不隨時間變化,可制訂單階段生產(chǎn)計劃,否則應(yīng)制訂多階段生產(chǎn)計劃.,例1 加工奶制品的生產(chǎn)計劃,50桶牛奶,時間480h,至多加工100kga1,制訂生產(chǎn)計劃,使每天獲利最大,35元可買到1桶牛奶,買嗎?若買,每天最多買多少?,可聘用臨時工人,付出的工資最多是每小時幾元?,a1的獲利增加到 30元/kg,應(yīng)否改變生產(chǎn)計劃?,每天:,問題,x1桶牛奶生產(chǎn)a1,x2桶牛奶生產(chǎn)a2,獲利 243x1,獲利 164 x2,原料供應(yīng),勞動時間,加工能力,決策變量,目標(biāo)函數(shù),每天獲利,約束條件,非負(fù)約束

3、,線性規(guī)劃模型(lp),時間480h,至多加工100kga1,基本模型,模型分析與假設(shè),比例性,可加性,連續(xù)性,xi對目標(biāo)函數(shù)的“貢獻(xiàn)”與xi取值成正比,xi對約束條件的“貢獻(xiàn)”與xi取值成正比,xi對目標(biāo)函數(shù)的“貢獻(xiàn)”與xj取值無關(guān),xi對約束條件的“貢獻(xiàn)”與xj取值無關(guān),xi取值連續(xù),a1,a2每千克的獲利是與各自產(chǎn)量無關(guān)的常數(shù),每桶牛奶加工a1,a2的數(shù)量, 時間是與各自產(chǎn)量無關(guān)的常數(shù),a1,a2每千克的獲利是與相互產(chǎn)量無關(guān)的常數(shù),每桶牛奶加工a1,a2的數(shù)量,時間是與相互產(chǎn)量無關(guān)的常數(shù),加工a1,a2的牛奶桶數(shù)是實(shí)數(shù),線性規(guī)劃模型,模型求解,圖解法,約束條件,目標(biāo)函數(shù),z=c (常數(shù))

4、 等值線,在b(20,30)點(diǎn)得到最優(yōu)解.,目標(biāo)函數(shù)和約束條件是線性函數(shù),可行域為直線段圍成的凸多邊形,目標(biāo)函數(shù)的等值線為直線,最優(yōu)解一定在凸多邊形的某個頂點(diǎn)取得.,模型求解,軟件實(shí)現(xiàn),lingo,model: max = 72*x1+64*x2; milk x1 + x250; time 12*x1+8*x2480; cpct 3*x1100; end,global optimal solution found. objective value: 3360.000 total solver iterations: 2 variable value reduced cost x1 20.000

5、00 0.000000 x2 30.00000 0.000000 row slack or surplus dual price 1 3360.000 1.000000 milk 0.000000 48.00000 time 0.000000 2.000000 cpct 40.00000 0.000000,20桶牛奶生產(chǎn)a1, 30桶生產(chǎn)a2,利潤3360元.,結(jié)果解釋,global optimal solution found. objective value: 3360.000 total solver iterations: 2 variable value reduced cost x

6、1 20.00000 0.000000 x2 30.00000 0.000000 row slack or surplus dual price 1 3360.000 1.000000 milk 0.000000 48.00000 time 0.000000 2.000000 cpct 40.00000 0.000000,model: max = 72*x1+64*x2; milk x1 + x250; time 12*x1+8*x2480; cpct 3*x1100; end,三種資源,“資源” 剩余為零的約束為緊約束(有效約束),結(jié)果解釋,global optimal solution f

7、ound. objective value: 3360.000 total solver iterations: 2 variable value reduced cost x1 20.00000 0.000000 x2 30.00000 0.000000 row slack or surplus dual price 1 3360.000 1.000000 milk 0.000000 48.00000 time 0.000000 2.000000 cpct 40.00000 0.000000,最優(yōu)解下“資源”增加1單位時“效益”的增量,影子價格,35元可買到1桶牛奶,要買嗎?,35 48,

8、應(yīng)該買!,聘用臨時工人付出的工資最多每小時幾元?,2元!,ranges in which the basis is unchanged: objective coefficient ranges current allowable allowable variable coefficient increase decrease x1 72.00000 24.00000 8.000000 x2 64.00000 8.000000 16.00000 righthand side ranges row current allowable allowable rhs increase decrease

9、 milk 50.00000 10.00000 6.666667 time 480.0000 53.33333 80.00000 cpct 100.0000 infinity 40.00000,最優(yōu)解不變時目標(biāo)函數(shù)系數(shù)允許變化范圍,敏感性分析 (“l(fā)ingo|ranges” ),x1系數(shù)范圍(64,96),x2系數(shù)范圍(48,72),a1獲利增加到 30元/kg,應(yīng)否改變生產(chǎn)計劃?,x1系數(shù)由24 3=72增加為303=90,在允許范圍內(nèi),不變!,(約束條件不變),結(jié)果解釋,ranges in which the basis is unchanged: objective coefficien

10、t ranges current allowable allowable variable coefficient increase decrease x1 72.00000 24.00000 8.000000 x2 64.00000 8.000000 16.00000 righthand side ranges row current allowable allowable rhs increase decrease milk 50.00000 10.00000 6.666667 time 480.0000 53.33333 80.00000 cpct 100.0000 infinity 4

11、0.00000,影子價格有意義時約束右端的允許變化范圍,原料最多增加10,時間最多增加53,35元可買到1桶牛奶, 每天最多買多少?,最多買10桶!,(目標(biāo)函數(shù)不變),充分條件 !,例2 奶制品的生產(chǎn)銷售計劃,在例1基礎(chǔ)上深加工,制訂生產(chǎn)計劃,使每天凈利潤最大,30元可增加1桶牛奶,3元可增加1h時間,應(yīng)否投資?現(xiàn)投資150元,可賺回多少?,50桶牛奶, 480h,至多100kga1,b1,b2的獲利經(jīng)常有10%的波動,對計劃有無影響?,每天銷售10kga1的合同必須滿足,對利潤有什么影響?,出售x1 kg a1, x2 kg a2,,x3 kg b1, x4 kg b2,原料供應(yīng),勞動時間,

12、加工能力,決策變量,目標(biāo)函數(shù),利潤,約束條件,非負(fù)約束,x5 kg a1加工b1, x6 kg a2加工b2,附加約束,基本模型,模型求解,軟件實(shí)現(xiàn),lingo,global optimal solution found. objective value: 3460.800 total solver iterations: 2 variable value reduced cost x1 0.000000 1.680000 x2 168.0000 0.000000 x3 19.20000 0.000000 x4 0.000000 0.000000 x5 24.00000 0.000000 x6

13、 0.000000 1.520000 row slack or surplus dual price 1 3460.800 1.000000 milk 0.000000 3.160000 time 0.000000 3.260000 cpct 76.00000 0.000000 5 0.000000 44.00000 6 0.000000 32.00000,global optimal solution found. objective value: 3460.800 total solver iterations: 2 variable value reduced cost x1 0.000

14、000 1.680000 x2 168.0000 0.000000 x3 19.20000 0.000000 x4 0.000000 0.000000 x5 24.00000 0.000000 x6 0.000000 1.520000 row slack or surplus dual price 1 3460.800 1.000000 milk 0.000000 3.160000 time 0.000000 3.260000 cpct 76.00000 0.000000 5 0.000000 44.00000 6 0.000000 32.00000,結(jié)果解釋,每天銷售168 kga2和19.

15、2 kgb1, 利潤3460.8(元),8桶牛奶加工成a1,42桶牛奶加工成a2, 將得到的24kga1全部加工成b1,除加工能力外均為緊約束,結(jié)果解釋,global optimal solution found. objective value: 3460.800 total solver iterations: 2 variable value reduced cost x1 0.000000 1.680000 x2 168.0000 0.000000 x3 19.20000 0.000000 x4 0.000000 0.000000 x5 24.00000 0.000000 x6 0.0

16、00000 1.520000 row slack or surplus dual price 1 3460.800 1.000000 milk 0.000000 3.160000 time 0.000000 3.260000 cpct 76.00000 0.000000 5 0.000000 44.00000 6 0.000000 32.00000,增加1桶牛奶使利潤增長3.1612=37.92,增加1h時間使利潤增長3.26,30元可增加1桶牛奶,3元可增加1h時間,應(yīng)否投資?現(xiàn)投資150元,可賺回多少?,投資150元增加5桶牛奶,可賺回189.6元(大于增加時間的利潤增長).,結(jié)果解釋,b

17、1,b2的獲利有10%的波動,對計劃有無影響,ranges in which the basis is unchanged: objective coefficient ranges current allowable allowable variable coefficient increase decrease x1 24.000000 1.680000 infinity x2 16.000000 8.150000 2.100000 x3 44.000000 19.750002 3.166667 x4 32.000000 2.026667 infinity x5 -3.000000 15.

18、800000 2.533334 x6 -3.000000 1.520000 infinity ,b1獲利下降10%,超出x3 系數(shù)允許范圍,b2獲利上升10%,超出x4 系數(shù)允許范圍,波動對計劃有影響,生產(chǎn)計劃應(yīng)重新制訂:如將x3的系數(shù)改為39.6計算,會發(fā)現(xiàn)結(jié)果有很大變化.,global optimal solution found. objective value: 3460.800 total solver iterations: 2 variable value reduced cost x1 0.000000 1.680000 x2 168.0000 0.000000 x3 19.2

19、0000 0.000000 x4 0.000000 0.000000 x5 24.00000 0.000000 x6 0.000000 1.520000 row slack or surplus dual price 1 3460.800 1.000000 milk 0.000000 3.160000 time 0.000000 3.260000 cpct 76.00000 0.000000 5 0.000000 44.00000 6 0.000000 32.00000,結(jié)果解釋,x1從0開始增加一個單位時,最優(yōu)目標(biāo)函數(shù)值將減少1.68,reduced cost有意義也是有條件的(lingo沒

20、有給出),每天銷售10kga1的合同必須滿足,對利潤有什么影響?,公司利潤減少 1.6810=16.8(元),最優(yōu)利潤為 3460.8 16.8 = 3444,奶制品的生產(chǎn)與銷售,由于產(chǎn)品利潤、加工時間等均為常數(shù),可建立線性規(guī)劃模型.,線性規(guī)劃模型的三要素:決策變量、目標(biāo)函數(shù)、約束條件.,用lingo求解,輸出豐富,利用影子價格和靈敏性分析可對結(jié)果做進(jìn)一步研究.,建模時盡可能利用原始的數(shù)據(jù)信息,把盡量多的計算留給計算機(jī)去做(分析例2的建模).,4.2 自來水輸送與貨機(jī)裝運(yùn),生產(chǎn)、生活物資從若干供應(yīng)點(diǎn)運(yùn)送到一些需求點(diǎn),怎樣安排輸送方案使運(yùn)費(fèi)最小,或利潤最大?,運(yùn)輸問題,各種類型的貨物裝箱,由于受

21、體積、重量等限制,如何搭配裝載,使獲利最高,或裝箱數(shù)量最少?,其他費(fèi)用:450元/ 103t,應(yīng)如何分配水庫供水量,公司才能獲利最多?,若水庫供水量都提高一倍,公司利潤可增加到多少?,例1 自來水輸送,收入:900元/103t,支出,總供水量:160,確定送水方案使利潤最大,問題分析, 總需求量:120+180=300,總收入900160=144000(元),收入:900元/ 103t,其他費(fèi)用:450元/ 103t,支出,引水管理費(fèi),其他支出450160=72000(元),供應(yīng)限制,約束條件,需求限制,線性規(guī)劃模型(lp),目標(biāo)函數(shù),水庫i 向j 區(qū)的日供水量為 xij(x34=0),決策變

22、量,模型建立,確定3個水庫向4個小區(qū)的供水量,模型求解,部分結(jié)果: objective value: 24400.00 variable value reduced cost x11 0.000000 30.000000 x12 50.000000 0.000000 x13 0.000000 50.000000 x14 0.000000 20.000000 x21 0.000000 10.000000 x22 50.000000 0.000000 x23 0.000000 20.000000 x24 10.000000 0.000000 x31 40.000000 0.000000 x32 0

23、.000000 10.000000 x33 10.000000 0.000000,利潤=總收入-其他費(fèi)用-引水管理費(fèi)=144000-72000-24400 = 47600(元),引水管理費(fèi) 24400(元),目標(biāo)函數(shù),總供水量(320) 總需求量(300),每個水庫最大供水量都提高一倍,利潤 = 收入(900) 其他費(fèi)用(450) 引水管理費(fèi),供應(yīng)限制,b, c 類似處理,問題討論,確定送水方案使利潤最大,需求約束可以不變,求解,部分結(jié)果: objective value: 88700.00 variable value reduced cost x11 0.000000 20.000000

24、x12 100.000000 0.000000 x13 0.000000 40.000000 x14 0.000000 20.000000 x21 30.000000 0.000000 x22 40.000000 0.000000 x23 0.000000 10.000000 x24 50.000000 0.000000 x31 50.000000 0.000000 x32 0.000000 20.000000 x33 30.000000 0.000000,運(yùn)輸問題,總利潤 88700(元),供需平衡或不平衡,如何裝運(yùn),使本次飛行獲利最大?,三個貨艙最大載重(t),最大容積(m3),例2 貨機(jī)

25、裝運(yùn),三個貨艙中實(shí)際載重必須與其最大載重成比例.,飛機(jī)平衡,wet=(10,16,8), vol=(6800,8700,5300); w=(18,15,23,12), v=(480,650, 580,390), p=(3100,3800,3500,2850).,已知參數(shù),i=1,2,3,4(貨物) j=1,2,3 (分別代表前、中、后倉) 貨艙j的重量限制wetj 體積限制volj 第i種貨物的重量wi,體積vi,利潤pi,貨機(jī)裝運(yùn),決策變量,xij-第i 種貨物裝入第j 個貨艙的重量(t) i=1,2,3,4, j=1,2,3 (分別代表前、中、后倉),模型假設(shè),每種貨物可以分割到任意??;,

26、貨機(jī)裝運(yùn),每種貨物可以在一個或多個貨艙中任意分布;,多種貨物可以混裝,并保證不留空隙;,所給出的數(shù)據(jù)都是精確的,沒有誤差.,模型建立,貨艙容積,目標(biāo)函數(shù)(利潤),約束條件,貨機(jī)裝運(yùn),模型建立,貨艙重量,xij-第i 種貨物裝入第j 個貨艙的重量,約束條件,平衡要求,貨物供應(yīng),貨機(jī)裝運(yùn),模型建立,xij-第i 種貨物裝入第j 個貨艙的重量,j,k=1,2,3; jk,!定義集合及變量; sets: cang/1.3/:wet,vol; wu/1.4/:w,v,p; link(wu,cang):x; endsets !對已知變量賦值; data: wet=10,16,8; vol=6800,870

27、0,5300; w=18,15,23,12; v=480,650, 580,390; p=3100,3800,3500,2850; enddata max=sum(wu(i):p(i)*sum(cang(j):x(i,j); for(wu(i):sum(cang(j):x(i,j)w(i); for(cang(j):sum(wu(i):x(i,j)wet(j); for(cang(j):sum(wu(i):v(i)*x(i,j)vol(j); for(cang(j): for(cang(k)|k #gt# j:!#gt#是大于等于的含義; sum(wu(i):x(i,j)/wet(j)=sum

28、(wu(i):x(i,k)/wet(k); ); end,貨機(jī)裝運(yùn),lingo程序,global optimal solution found. objective value: 121515.8 total solver iterations: 12 variable value reduced cost x( 1, 1) 0.000000 400.0000 x( 1, 2) 0.000000 57.89474 x( 1, 3) 0.000000 400.0000 x( 2, 1) 7.000000 0.000000 x( 2, 2) 0.000000 239.4737 x( 2, 3) 8

29、.000000 0.000000 x( 3, 1) 3.000000 0.000000 x( 3, 2) 12.94737 0.000000 x( 3, 3) 0.000000 0.000000 x( 4, 1) 0.000000 650.0000 x( 4, 2) 3.052632 0.000000 x( 4, 3) 0.000000 650.0000,貨物2:前倉7,后倉8; 貨物3: 前倉3, 中倉13;貨物4: 中倉3.,貨機(jī)裝運(yùn),模型求解,最大利潤約121516元,貨物供應(yīng)點(diǎn) 貨艙需求點(diǎn),裝載平衡要求,如果生產(chǎn)某一類型汽車,則至少要生產(chǎn)80輛, 那么最優(yōu)的生產(chǎn)計劃應(yīng)作何改變?,例1

30、汽車廠生產(chǎn)計劃,汽車廠生產(chǎn)三種類型的汽車,已知各類型每輛車對鋼材、勞動時間的需求,利潤及工廠每月的現(xiàn)有量.,制訂月生產(chǎn)計劃,使工廠的利潤最大.,4.3 汽車生產(chǎn)與原油采購,設(shè)每月生產(chǎn)小、中、大型汽車的數(shù)量分別為x1, x2, x3,汽車廠生產(chǎn)計劃,模型建立,線性規(guī)劃模型(lp),模型求解,3)模型中增加條件:x1, x2, x3 均為整數(shù),重新求解.,objective value: 632.2581 variable value reduced cost x1 64.516129 0.000000 x2 167.741928 0.000000 x3 0.000000 0.946237 row

31、 slack or surplus dual price 2 0.000000 0.731183 3 0.000000 0.003226,結(jié)果為小數(shù),怎么辦?,1)舍去小數(shù):取x1=64,x2=167,算出目標(biāo)函數(shù)值 z=629,與lp最優(yōu)值632.2581相差不大.,2)試探:如取x1=65,x2=167;x1=64,x2=168等,計算函數(shù)值z,通過比較可能得到更優(yōu)的解.,但必須檢驗它們是否滿足約束條件. 為什么?,ip可用lingo直接求解,整數(shù)規(guī)劃(integer programming,簡記ip),ip 的最優(yōu)解x1=64,x2=168,x3=0,最優(yōu)值z=632,max=2*x1+

32、3*x2+4*x3; 1.5*x1+3*x2+5*x3600; 280*x1+250*x2+400*x3 60000; gin(x1);gin(x2);gin(x3);,global optimal solution found. objective value: 632.0000 extended solver steps: 0 total solver iterations: 3 variable value reduced cost x1 64.00000 -2.000000 x2 168.0000 -3.000000 x3 0.000000 -4.000000,模型求解,ip 結(jié)果輸出

33、,其中3個子模型應(yīng)去掉,然后逐一求解,比較目標(biāo)函數(shù)值,再加上整數(shù)約束,得最優(yōu)解:,方法1:分解為8個lp子模型,汽車廠生產(chǎn)計劃,若生產(chǎn)某類汽車,則至少生產(chǎn)80輛,求生產(chǎn)計劃.,x1,x2, x3=0 或 80,x1=80,x2= 150,x3=0,最優(yōu)值z=610,lingo中對0-1變量的限定: bin(y1); bin(y2); bin(y3);,方法2:引入0-1變量,化為整數(shù)規(guī)劃,m為大的正數(shù),本例可取1000,objective value: 610.0000 variable value reduced cost x1 80.000000 -2.000000 x2 150.0000

34、00 -3.000000 x3 0.000000 -4.000000 y1 1.000000 0.000000 y2 1.000000 0.000000 y3 0.000000 0.000000,若生產(chǎn)某類汽車,則至少生產(chǎn)80輛,求生產(chǎn)計劃.,x1=0 或 80,最優(yōu)解同前,max=2*x1+3*x2+4*x3; 1.5*x1+3*x2+5*x30; x2*(x2-80)0; x3*(x3-80)0; gin(x1);gin(x2);gin(x3);,方法3:化為非線性規(guī)劃,非線性規(guī)劃(non- linear programming,簡記nlp),若生產(chǎn)某類汽車,則至少生產(chǎn)80輛,求生產(chǎn)計劃.

35、,x1=0 或 80,最優(yōu)解同前.,一般地,整數(shù)規(guī)劃和非線性規(guī)劃的求解比線性規(guī)劃困難得多,特別是問題規(guī)模較大或者要求得到全局最優(yōu)解時.,汽車廠生產(chǎn)計劃,決策變量為整數(shù), 建立整數(shù)規(guī)劃模型.,求解整數(shù)規(guī)劃和非線性規(guī)劃比線性規(guī)劃困難得多 (即便用數(shù)學(xué)軟件) .,當(dāng)整數(shù)變量取值很大時, 可作為連續(xù)變量處理, 問題簡化為線性規(guī)劃.,對于類似于“x=0 或 80”這樣的條件,通常引入0-1變量處理,盡量不用非線性規(guī)劃(特別是引入的整數(shù)變量個數(shù)較少時).,應(yīng)如何安排原油的采購和加工 ?,例2 原油采購與加工,市場上可買到不超過1500t的原油a: 購買量不超過500t時的單價為10000元/t; 購買量超

36、過500t但不超過1000t時,超過500t的 部分8000元/t; 購買量超過1000t時,超過1000t的部分6000元/t.,決策變量,目標(biāo)函數(shù),問題分析,利潤:銷售汽油的收入購買原油a的支出. 難點(diǎn):原油a的購價與購買量的關(guān)系較復(fù)雜.,原油a的購買量,原油a, b生產(chǎn)汽油甲,乙的數(shù)量,c(x) 購買原油a的支出,利潤(千元),c(x)如何表述?,原油供應(yīng),約束條件,x 500t單價為10千元/t; 500t x 1000t,超過500t的8千元/t; 1000t x 1500t,超過1000t的6千元/t.,目標(biāo)函數(shù),目標(biāo)函數(shù)中c(x)不是線性函數(shù),是非線性規(guī)劃; 對于用分段函數(shù)定義的

37、c(x),一般的非線性規(guī)劃軟件也難以輸入和求解; 想辦法將模型化簡,用現(xiàn)成的軟件求解.,汽油含原油a的比例限制,約束條件,x1 , x2 , x3 以價格10, 8, 6(千元/t)采購a的噸數(shù),目標(biāo)函數(shù),只有當(dāng)以10千元/t的價格購買x1=500(t)時,才能以8千元/t的價格購買x2,方法1,非線性規(guī)劃模型,可以用lingo求解,模型求解,x= x1+x2+x3, c(x) = 10 x1+8x2+6x3,500t x 1000t,超過500t的8千元/t,x= x1+x2+x3, c(x) = 10 x1+8x2+6x3,類似地有,方法1:lingo求解,model: max= 4.8*

38、x11 + 4.8*x21 + 5.6*x12 + 5.6*x22 - 10*x1 - 8*x2 - 6*x3; x11+x12 0; 2*x12 - 3*x22 0; x=x1+x2+x3; (x1 - 500) * x2=0; (x2 - 500) * x3=0; x1 500; x2 500; x3 500; end,local optimal solution found. objective value: 4800.000 total solver iterations: 14 variable value reduced cost x11 500.0000 0.000000 x21

39、 500.0000 0.000000 x12 0.000000 0.2666667 x22 0.000000 0.000000 x1 0.000000 0.4000000 x2 0.000000 0.000000 x3 0.000000 0.000000 x 0.000000 0.000000,lingo得到的是局部最優(yōu)解,還能得到更好的解嗎?,用庫存的500t原油a、500t原油b生產(chǎn)汽油甲,不購買新的原油a,利潤為4800千元.,方法1:lingo求解,計算全局最優(yōu)解 : 選lingo|options菜單; 在彈出的選項卡中選擇“general solver”; 然后找到選項“use gl

40、obal solver”將其選中; 應(yīng)用或保存;重新求解。,global optimal solution found. objective value: 5000.000 extended solver steps: 1 total solver iterations: 43 variable value reduced cost x11 0.000000 0.000000 x21 0.000000 0.900000 x12 1500.000 0.000000 x22 1000.000 0.000000 x1 500.0000 0.000000 x2 500.0000 0.000000 x3

41、 0.000000 0.000000 x 1000.000 0.000000,還有其他建模和求解方法嗎?,購買1000t原油a,與庫存的500t原油a和1000t原油b一起,共生產(chǎn)2500t汽油乙,利潤為5000千元 .,y1, y2 , y3=1 以價格10, 8, 6(千元/t)采購a,增加約束,方法2,0-1線性規(guī)劃模型, 可用lingo求解.,y1,y2,y3 =0或1,購買1000t原油a,與庫存的500t原油a和1000t原油b一起,生產(chǎn)汽油乙,利潤為5000千元 .,x1 , x2 , x3 以價格10, 8, 6(千元/t)采購a的噸數(shù),與方法1(全局最優(yōu)解)的結(jié)果相同,引入0

42、-1變量,模型求解,b1 b2 b3 b4,方法3,b1 xb2,x= z1b1+z2b2, z1+z2=1,z1, z20, c(x)= z1c(b1)+z2c(b2).,b2 x b3,x= z2b2+z3b3, z2+z3=1,z2, z3 0, c(x)= z2c(b2)+z3c(b3).,b3 x b4,x= z3b3+z4b4, z3+z4=1,z3, z4 0, c(x)= z3c(b3)+z4c(b4).,直接處理處理分段線性函數(shù)c(x),ip模型,lingo求解,得到的結(jié)果與方法2相同.,bkxbk+1yk=1,否則,yk=0,方法3,bkxbk+1 ,x= zkbk+z k

43、+1 bk+1 zk+zk+1 =1,zk, zk+1 0, c(x)= zkc(bk)+zk+1 c(bk+1 ).,對于k=1,2,3,方法3: 直接處理分段線性函數(shù),方法更具一般性.,分段函數(shù)無法直接用非線性規(guī)劃方法或軟件求解.,原油采購與加工,方法1: 增加約束化為非線性規(guī)劃,可以用lingo 求解, 但可能得到的是局部最優(yōu)解.,方法2: 引入0-1變量, 化為線性規(guī)劃模型, 可用lingo求解.,分派問題,4.4 接力隊選拔和選課策略,若干項任務(wù)分給一些候選人來完成,每人的專長不同,完成每項任務(wù)取得的效益或需要的資源不同,如何分派任務(wù)使獲得的總效益最大,或付出的總資源最少?,若干種策

44、略供選擇,不同的策略得到的收益或付出的成本不同,各個策略之間有相互制約關(guān)系,如何在滿足一定條件下作出抉擇,使得收益最大或成本最小?,如何選拔隊員組成4100m混合泳接力隊?,例1 混合泳接力隊的選拔,5名候選人的百米成績,窮舉法:組成接力隊的方案共有5!=120種.,討論:丁的蛙泳成績退步到 ;戊的自由泳成績進(jìn)步到 , 組成接力隊的方案是否應(yīng)該調(diào)整?,目標(biāo)函數(shù),若選擇隊員i參加泳姿j 的比賽,記xij=1, 否則記xij=0,0-1規(guī)劃模型,cij(s)隊員i第j 種泳姿的百米成績,約束條件,每人最多入選泳姿之一,每種泳姿有且只有1人,模型求解,model: sets: person/1.5/

45、; position/1.4/; link(person,position): c, x; endsets data: c= 66.8, 75.6, 87, 58.6, 57.2, 66, 66.4, 53, 78, 67.8, 84.6, 59.4, 70, 74.2, 69.6, 57.2, 67.4, 71, 83.8, 62.4; enddata,輸入lingo求解,min=sum(link: c*x); for(person(i): sum(position(j):x(i,j)=1;); for(position(i): sum(person(j):x(j,i)=1;); for(l

46、ink: bin(x); end,模型求解,最優(yōu)解:x14 = x21 = x32 = x43 = 1, 其他變量為0;,輸入lingo求解,甲 自由泳、乙 蝶泳、丙 仰泳、丁 蛙泳.,成績?yōu)?53.2(s)=,丁蛙泳c43 = 69.675.2 (s),戊自由泳c54= 62.4 57.5 (s), 方案是否調(diào)整?,敏感性分析?,新方案:乙 蝶泳、丙 仰泳、丁 蛙泳、戊 自由泳,ip一般沒有與lp相類似的理論,lingo輸出的敏感性分析結(jié)果通常是沒有意義的.,c43, c54 的新數(shù)據(jù)重新輸入模型,用lingo求解,原分配方案: 甲 自由泳、乙 蝶泳、丙 仰泳、丁 蛙泳.,討論,最優(yōu)解:x2

47、1 = x32 = x43 = x51 = 1, 成績?yōu)?混合泳接力隊的選拔,指派(assignment)問題:有若干項任務(wù), 每項任務(wù)必有且只能有一人承擔(dān),每人只能承擔(dān)一項,不同人員承擔(dān)不同任務(wù)的效益(或成本)不同,怎樣分派各項任務(wù)使總效益最大(或總成本最小)?,人員數(shù)量與任務(wù)數(shù)量相等,人員數(shù)量大于任務(wù)數(shù)量(本例),人員數(shù)量小于任務(wù)數(shù)量 ?,建立0-1規(guī)劃模型是常用方法,為了選修課程門數(shù)最少,應(yīng)學(xué)習(xí)哪些課程 ?,例2 選課策略,要求至少選兩門數(shù)學(xué)課、三門運(yùn)籌學(xué)課和兩門計算機(jī)課,選修課程最少,且學(xué)分盡量多,應(yīng)學(xué)習(xí)哪些課程 ?,0-1規(guī)劃模型,決策變量,目標(biāo)函數(shù),xi=1 選修課號i 的課程(x

48、i=0 不選),選修課程總數(shù)最少,約束條件,最少2門數(shù)學(xué)課,3門運(yùn)籌學(xué)課, 2門計算機(jī)課.,先修課程要求,最優(yōu)解: x1 = x2 = x3 = x6 = x7 = x9 =1, 其他為0;6門課程,總學(xué)分21.,0-1規(guī)劃模型,約束條件,x3=1必有x1 = x2 =1,模型求解(lingo),學(xué)分最多,多目標(biāo)優(yōu)化的處理方法:化成單目標(biāo)優(yōu)化.,兩目標(biāo)(多目標(biāo))規(guī)劃,討論:選修課程最少,學(xué)分盡量多,應(yīng)學(xué)習(xí)哪些課程?,課程最少,以學(xué)分最多為目標(biāo),不管課程多少.,以課程最少為目標(biāo),不管學(xué)分多少.,多目標(biāo)規(guī)劃,在課程最少的前提下以學(xué)分最多為目標(biāo).,最優(yōu)解: x1 = x2 = x3 = x5 = x

49、7 = x9 =1, 其他為0;總學(xué)分由21增至22.,注意:最優(yōu)解不唯一!,lingo不能告訴優(yōu)化問題的解是否唯一.,可將x9 =1 易為x6 =1,多目標(biāo)規(guī)劃,對學(xué)分?jǐn)?shù)和課程數(shù)加權(quán)形成一個目標(biāo),如三七開.,最優(yōu)解: x1 = x2 = x3 = x4 = x5 = x6 = x7 = x9 =1, 其他為0;總學(xué)分28.,討論與思考,最優(yōu)解與1=0,2=1的結(jié)果相同學(xué)分最多.,多目標(biāo)規(guī)劃,最優(yōu)解與1=1,2=0的結(jié)果相同課程最少.,選 課 策 略,用0-1變量表示策略選擇是常用的方法,“要選甲 (x1)必選乙 (x2)” 可用x1 x2描述.,“要選甲 (x1)必不選乙 (x2)” 怎樣描

50、述?,“甲乙二人至多選一人” 怎樣描述?,“甲乙二人至少選一人” 怎樣描述?,雙(多)目標(biāo)規(guī)劃的處理方法,加權(quán)組合成一個新目標(biāo), 化為單目標(biāo)規(guī)劃.,一個目標(biāo)作為約束, 解另一個目標(biāo)的規(guī)劃.,問題1 公司應(yīng)該與哪些候選企業(yè)建立代理關(guān)系 ?,例3 銷售代理的開發(fā)與中斷,公司未來5年的業(yè)務(wù)量分別為400,500,600,700和800,問題2 若目前全部建立了代理關(guān)系,應(yīng)如何進(jìn)行調(diào)整 ?,問題的建模,決策變量,目標(biāo)函數(shù),xit=1 在第t年初(首次)與代理i建立代理關(guān)系 xit=0 否,總費(fèi)用(建立代理 運(yùn)行費(fèi)用)最小,公司可在任一年開始與代理建立代理關(guān)系. 代理關(guān)系一旦建立,將長期保持.,假 設(shè),

51、建立代理,運(yùn)行費(fèi)用,問題的建模,約束條件,公司每年的業(yè)務(wù)量必須能夠由足夠的代理承擔(dān),第1年,第2年,第3年,第4年,第5年,問題的求解,lingo求解結(jié)果,x11= x21= x44=1(其他變量為0),最小總費(fèi)用313.5萬元,公司應(yīng)在第1年初與代理1、2建立代理關(guān)系; 在第4年初與代理4建立代理關(guān)系.,假定公司一旦與候選代理建立代理關(guān)系,則這一關(guān)系將長期保持,i=1,2,3,4:,問題2的建模,決策變量,目標(biāo)函數(shù),xit=1 第t年代理i從事代理業(yè)務(wù); xit=0 否,總費(fèi)用(運(yùn)行費(fèi)+中斷費(fèi)恢復(fù)費(fèi))最小,公司目前已與所有代理建立代理關(guān)系. 公司每年初可中斷或恢復(fù)代理關(guān)系.,假 設(shè),yit=

52、1 第t年與代理i中斷代理關(guān)系; yit=0 否,zit=1 第t年與代理i恢復(fù)代理關(guān)系; zit=0 否,yit=1 第t年與代理i中斷代理關(guān)系; yit=0 否,zit=1 第t年與代理i恢復(fù)代理關(guān)系; zit=0 否,問題2的建模,約束條件,業(yè)務(wù)量約束、業(yè)務(wù)中斷約束、業(yè)務(wù)恢復(fù)約束,業(yè)務(wù)量約束:每年公司的業(yè)務(wù)量由足夠的代理承擔(dān),業(yè)務(wù)中斷約束:某年運(yùn)行,下一年不運(yùn)行,則需中斷,如果xit=1而xi,t+1=0, 則yi,t+1=1,業(yè)務(wù)恢復(fù)約束:某年不運(yùn)行,下一年運(yùn)行,則需恢復(fù),如果xit=0而xi,t+1=1, 則zi,t+1=1,問題2的求解,模型分析,xit的值:x11= x12= x

53、13= x14= x15= x23= x24= x25= x41= x42= x43= x44= x45=1 (其他為0); 最小總費(fèi)用86.5萬元.,公司應(yīng)在第1年初臨時中斷與代理2、3的代理關(guān)系,而在第3年初重新恢復(fù)與代理2的代理關(guān)系.,lingo求解結(jié)果,可只要求xit為0-1變量,最優(yōu)解中yit (zit)自然是0-1變量,設(shè)法減少整數(shù)變量數(shù)目,4.5 飲料廠的生產(chǎn)與檢修,單階段生產(chǎn)計劃,多階段生產(chǎn)計劃,生產(chǎn)批量問題,企業(yè)生產(chǎn)計劃,考慮與產(chǎn)量無關(guān)的固定費(fèi)用.,給優(yōu)化模型求解帶來新的困難.,安排生產(chǎn)計劃, 滿足每周的需求, 使4周總費(fèi)用最小.,存貯費(fèi):每周每千箱飲料 0.2 (千元).,

54、例1 飲料廠的生產(chǎn)與檢修計劃,在4周內(nèi)安排一次設(shè)備檢修,占用當(dāng)周15千箱生產(chǎn)能力,能使檢修后每周增產(chǎn)5千箱,檢修應(yīng)排在哪一周?,某種飲料4周的需求量、生產(chǎn)能力和成本,問題分析,除第4周外每周的生產(chǎn)能力超過每周的需求; 生產(chǎn)成本逐周上升; 前幾周應(yīng)多生產(chǎn)一些.,飲料廠在第1周開始時沒有庫存; 從費(fèi)用最小考慮, 第4周末不能有庫存; 周末有庫存時需支出一周的存貯費(fèi); 每周末的庫存量等于下周初的庫存量.,模型假設(shè),目標(biāo)函數(shù),約束條件,產(chǎn)量、庫存與需求平衡,決策變量,能力限制,非負(fù)限制,模型建立,x1 x4:第14周的生產(chǎn)量,y1 y3:第13周末庫存量,存貯費(fèi):0.2(千元/周千箱),模型求解,4周

55、生產(chǎn)計劃的總費(fèi)用為528 (千元),最優(yōu)解: x1 x4:15,40,25,20; y1 y3: 0,15,5 .,lingo求解,討論,增加庫存量(y1 y3)為決策變量使模型清晰并便于檢查.,檢修計劃,0-1變量wt :wt=1 檢修安排在第t周(t=1,2,3,4),在4周內(nèi)安排一次設(shè)備檢修,占用當(dāng)周15千箱生產(chǎn)能力,能使檢修后每周增產(chǎn)5千箱,檢修應(yīng)排在哪一周?,檢修安排在任一周均可,約束條件,能力限制,產(chǎn)量、庫存與需求平衡條件不變,增加約束條件:檢修1次,檢修計劃,目標(biāo)函數(shù)不變,0-1變量 wt=1 檢修安排在第t周,lingo求解,總費(fèi)用由528降為527(千元),檢修所導(dǎo)致的生產(chǎn)能

56、力提高的作用, 需要更長的時間才能得到充分體現(xiàn) .,最優(yōu)解:w1=1, w2 , w3, w4=0; x1 x4:15,45,15,25; y1 y3:0,20,0 .,討論,引入0-1變量表示檢修,例2 飲料的生產(chǎn)批量問題,安排生產(chǎn)計劃, 滿足每周的需求, 使4周總費(fèi)用最小.,存貯費(fèi):每周每千箱飲料 0.2 (千元) (與例1同) .,飲料廠使用同一條生產(chǎn)線輪流生產(chǎn)多種飲料. 若某周開工生產(chǎn)某種飲料, 需支出生產(chǎn)準(zhǔn)備費(fèi)8千元.,某種飲料4周的需求量、生產(chǎn)能力和成本(與例1同),ct 時段t 生產(chǎn)費(fèi)用(元/件);ht 時段t (末)存貯費(fèi)(元/件) st 時段t 生產(chǎn)準(zhǔn)備費(fèi)(元);dt 時段t

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論