孫 建 英
(青島理工大學(xué)琴島學(xué)院 基礎(chǔ)部, 山東 青島 266106)
?
MATLAB平臺下運籌學(xué)模型的仿真實驗
孫 建 英
(青島理工大學(xué)琴島學(xué)院 基礎(chǔ)部, 山東 青島266106)
在MATLAB 2014a平臺下,利用優(yōu)化工具箱中的intlinprog和linprog函數(shù)求解運籌學(xué)中的整數(shù)線性規(guī)劃和目標(biāo)規(guī)劃模型.用兩個實例進(jìn)行仿真,能快速方便地得到最優(yōu)解或者滿意解.
整數(shù)線性規(guī)劃; 目標(biāo)規(guī)劃; MATLAB; 運籌學(xué)
“運籌學(xué)應(yīng)用分析、試驗、量化的方法,對經(jīng)濟(jì)管理系統(tǒng)中人、財、物等有限資源進(jìn)行統(tǒng)籌安排,為決策者提供有依據(jù)的最優(yōu)方案,以實現(xiàn)最有效的管理.”[1]這是1984年版《中國企業(yè)管理百科全書》中對運籌學(xué)的釋義.如果說運籌學(xué)應(yīng)用的核心是輔助決策,那么建立數(shù)學(xué)模型,應(yīng)用數(shù)學(xué)工具和數(shù)學(xué)方法求解就是運籌學(xué)方法的精髓.傳統(tǒng)的運籌學(xué)教學(xué)著重于各類模型的建立和求解思想的介紹,費時費力,而學(xué)生收獲甚微.如果將許多計算機(jī)軟件,例如MATLAB,Lingo等,引入課堂,不但可以實現(xiàn)各類問題的快速求解,而且會極大地激發(fā)學(xué)生的學(xué)習(xí)興趣,提高理論應(yīng)用于實踐的能力.本文針對整數(shù)線性規(guī)劃和目標(biāo)規(guī)劃等模型,在MATLAB 2014a平臺下進(jìn)行實例仿真,可以快速地得到最優(yōu)解或者滿意解.
1.1整數(shù)線性規(guī)劃模型的標(biāo)準(zhǔn)形式
mincTX
1.2MATLAB求解
在MATLAB 2014a平臺上,可以直接調(diào)用intlinprog函數(shù),調(diào)用格式為:
[X,fval]=
intlinprog(f,intcon,A,b,Aeq,Beq,LB,UB).
返回的是決策變量X和相應(yīng)的目標(biāo)函數(shù)值.其中,f、b、Beq、LB和UB均為向量,A、Aeq均為矩陣,intcon表示整數(shù)決策變量的位置,調(diào)用時要對應(yīng)好各個參數(shù)的位置,如果缺少的話,應(yīng)該用[ ]補(bǔ)位.
1.3實例仿真
例1[2]一汽車廠生產(chǎn)小、中、大三種類型的汽車,已知各類型每輛車對鋼材、勞動時間的需求,利潤以及每月工廠鋼材、勞動時間的現(xiàn)有量如表1所示,試制定月生產(chǎn)計劃,使工廠利潤最大?
表1 每類車的耗材、耗時和利潤
解設(shè)x1,x2,x3,分別表示小、中、大型汽車的數(shù)量,Z表示利潤,則數(shù)學(xué)模型為:
maxZ=2x1+3x2+4x3,
MATLAB程序:
f=[-2;-3;-4];
A=[1.5,3,5;280,250,400];
b=[600;60 000];
intcon=[1:3];
LB=zeros(3,1);
UB=[];
[X,fval]=intlinprog(f,intcon,A,b,[],[],LB,UB).
運行結(jié)果為:
X=
64.000 0,
168.000 0,
0.
fval=
-632.
故生產(chǎn)小型汽車64輛,中型汽車168輛,最大利潤為632萬元.
2.1目標(biāo)規(guī)劃模型的標(biāo)準(zhǔn)形式
2.2MATLAB求解
若選取數(shù)量級差別很大的正整數(shù)來標(biāo)識不同的優(yōu)先因子,就可以將目標(biāo)規(guī)劃轉(zhuǎn)化為線性規(guī)劃來求解,從而可以調(diào)用MATLAB中的linprog函數(shù),調(diào)用格式為:
[X,fval]=
linprog(f,A,b,Aeq,Beq,LB,UB,X0,options)
X0是決策變量的初始值,options是控制規(guī)劃過程的參數(shù)系列,其他參數(shù)意義不變.
2.3實例仿真
例2[3]某企業(yè)生產(chǎn)甲乙兩種產(chǎn)品,需要用到A、B、C三種設(shè)備,關(guān)于產(chǎn)品的贏利與使用設(shè)備的工時及限制如表2所示.問該企業(yè)應(yīng)如何安排生產(chǎn),才能達(dá)到下列目標(biāo).
表2 產(chǎn)品的贏利與使用設(shè)備的工時及限制
(1) 力求利潤指標(biāo)不低于1 500元;
(2) 介于市場需求,甲乙兩種產(chǎn)品的產(chǎn)量比盡量保持為1∶2;
(3) 設(shè)備A為貴重設(shè)備,嚴(yán)格禁止超時使用;
(4) 設(shè)備C可適當(dāng)加班,但要控制;設(shè)備B既要求充分利用,又盡可能不加班.在重要性上,設(shè)備B是設(shè)備C的3倍.
MATLAB程序:
f=[002 00001001003301];
A=[2,2,0,0,0,0,0,0,0,0];
b=[12];
Aeq =[2003001-1000000;
2-1001-10000;
4000001-100;
050000001-1];
Beq=[1 50001615]′;
LB=zeros(1,10)′;
[X,fval]=linprog (f,A,b,Aeq,Beq,LB,[])
求解結(jié)果為:
X=
2.000 0
4.000 0
0
100.000 0
0
0
8.000 0
0
0
5.000 0
fval=29.000 0
故生產(chǎn)甲產(chǎn)品2件,乙產(chǎn)品4件,可以達(dá)到滿意解.需要注意的是,對于目標(biāo)規(guī)劃問題,目標(biāo)函數(shù)的大小沒有具體的意義,值越小,表明各個目標(biāo)的達(dá)成度越高.
運籌學(xué)中還有很多模型,例如運輸調(diào)配、任務(wù)指派、最短路徑及物流中心選址[4]等與現(xiàn)實生活聯(lián)系比較緊密的模型,均可以利用MATLAB軟件快速地實現(xiàn)最優(yōu)化.與其他軟件相比,入門容易,簡單實用,這已成為科研工作者及時、準(zhǔn)確做出決策的必不可缺的工具.
[1] 胡運權(quán). 運籌學(xué)基礎(chǔ)及應(yīng)用[M]. 4版. 北京:高等教育出版社, 2005.
(HU Y Q. Fundamentals and applications of operations research [M]. 4thedition. Beijing:Higher Education Press, 2005.)
[2] 姜啟源,謝金星,葉俊. 數(shù)學(xué)模型[M]. 4版. 北京:高等教育出版社, 2011.
(JIANGQY,XIEJX,YEJ.Mathematicalmodel[M]. 4thedition.Beijing:HigherEducationPress, 2011.)
[3] 司守奎,孫兆亮. 數(shù)學(xué)建模算法與應(yīng)用[M]. 2版. 北京:國防工業(yè)出版社, 2015.
(SISK,SUNZL.Mathematicalmodelingalgorithmsandapplications[M]. 2ndedition.Beijing:NationalDefenseIndustryPress, 2015.)
[4] 封燕,高建瓴,粱志福. 城市物流中心選址問題研究[J]. 貴州大學(xué)學(xué)報(自然科學(xué)版), 2010,27(5):76-79.
(FENGY,GAOJL,LIANGZF.Positionselectingstrategyoflogisticdistributioncenter[J].JournalofGuizhouUniversity(NaturalScience), 2010,27(5):76-79.)
【責(zé)任編輯: 肖景魁】
Simulation Experiment of Operational Research Model on MATLAB Platform
SunJianying
(Qindao College, Qingdao Technological University, Qingdao 266106, China)
The intlinprog and lintprog function in MATLAB 2014a optimization Toolbox is introduced to solve integer linear programming and goal programming model. The simulation of two instances can quickly and easily get the optimal solution or satisfactory solution.
integer linear programming; goal programming; MATLAB; operations research
2015-03-28
山東科技資助項目(J15L157).
孫建英(1979-),女,山東煙臺人,青島理工大學(xué)琴島學(xué)院副教授.
2095-5456(2016)04-0337-03
O 029
A