您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 企业财务 > Matlab供应与选址问题(附详细编程)
案例研究:供应与选址某公司有6个建筑工地要开工,每个工地的位置(用平面坐标系a,b表示,距离单位:千米)及水泥日用量d(吨)由下表给出。目前有两个临时料场位于A(5,1),B(2,7),日储量各有20吨。假设从料场到工地之间均有直线道路相连。(1)试制定每天的供应计划,即从A,B两料场分别向各工地运送多少吨水泥,使总的吨千米数最小。(2)为了进一步减少吨千米数,打算舍弃两个临时料场,改建两个新的,日储量各为20吨,问应建在何处,节省的吨千米数有多大?工地位置(a,b)及水泥日用量d123456a1.258.750.55.7537.25b1.250.754.7556.57.25d3547611(一)、建立模型记工地的位置为(ai,bi),水泥日用量为di,i=1,…,6;料场位置为(xj,yj),日储量为ej,j=1,2;从料场j向工地i的运送量为Xij。目标函数为:216122)()(minjiijijijbyaxXf约束条件为:2,1,6,,2,1,6121jeXidXjiijijij当用临时料场时决策变量为:Xij,当不用临时料场时决策变量为:Xij,xj,yj。(二)使用临时料场的情形使用两个临时料场A(5,1),B(2,7).求从料场j向工地i的运送量为Xij,在各工地用量必须满足和各料场运送量不超过日储量的条件下,使总的吨千米数最小,这是线性规划问题.线性规划模型为:2161),(minjiijXjiaaf2,1,6,,2,1,s.t.6121jeXidXjiijijij其中22)()(),(ijijbyaxjiaa,i=1,2,…,6,j=1,2,为常数。设X11=X1,X21=X2,,X31=X3,X41=X4,X51=X5,,X61=X6X21=X7,X22=X8,,X32=X9,X42=X10,X52=X11,,X62=X12编写程序gying1.m其详细的程序为:c1=sqrt((5-1.25)^2+(1-1.25)^2);c2=sqrt((5-8.75)^2+(1-0.75)^2);c3=sqrt((5-0.5)^2+(1-4.75)^2);c4=sqrt((5-5.75)^2+(1-5)^2);c5=sqrt((5-3)^2+(1-6.5)^2);c6=sqrt((5-7.25)^2+(1-7.25)^2);c7=sqrt((2-1.25)^2+(7-1.25)^2);c8=sqrt((2-8.75)^2+(7-0.75)^2);c9=sqrt((2-0.5)^2+(7-4.75)^2);c10=sqrt((2-5.75)^2+(7-5)^2);c11=sqrt((2-3)^2+(7-6.5)^2);c12=sqrt((2-7.25)^2+(7-7.25)^2);c=[c1;c2;c3;c4;c5;c6;c7;c8;c9;c10;c11;c12];A=[111111000000;000000111111];B=[20;20];Aeq=[100000100000;010000010000;001000001000;000100000100;000010000010;000001000001];Beq=[3;5;4;7;6;11];vlb=[0;0;0;0;0;0;0;0;0;0;0;0];[x,f]=linprog(c,A,B,Aeq,Beq,vlb)计算结果为:x=[3.00005.00000.00007.00000.00001.00000.00000.00004.00000.00006.000010.0000]’fval=135.2815即由料场A、B向6个工地运料方案为:123456料场A350701料场B0040610总的吨千米数为135.2815。(三)改建两个新料场的情形改建两个新料场,要同时确定料场的位置(xj,yj)和运送量Xij,在同样条件下使总吨千米数最小。这是非线性规划问题。非线性规划模型为:216122)()(minjiijijijbyaxXf2,1,6,,2,1,..6121jeXidXtsjiijijij设X11=X1,X21=X2,,X31=X3,X41=X4,X51=X5,,X61=X6X21=X7,X22=X8,,X32=X9,X42=X10,X52=X11,,X62=X12x1=X13,y1=X14,x2=X15,y2=X16(1)先编写M文件liaoch.m定义目标函数。functiony=liaoch(x)y=x(1)*sqrt((x(13)-1.25)^2+(x(14)-1.25)^2)+x(2)*sqrt((x(13)-8.75)^2+(x(14)-0.75)^2)+x(3)*sqrt((x(13)-0.5)^2+(x(14)-4.75)^2)+x(4)*sqrt((x(13)-5.75)^2+(x(14)-5)^2)+x(5)*sqrt((x(13)-3)^2+(x(14)-6.5)^2)+x(6)*sqrt((x(13)-7.25)^2+(x(14)-7.25)^2)+x(7)*sqrt((x(15)-1.25)^2+(x(16)-1.25)^2)+x(8)*sqrt((x(15)-8.75)^2+(x(16)-0.75)^2)+x(9)*sqrt((x(15)-0.5)^2+(x(16)-4.75)^2)+x(10)*sqrt((x(15)-5.75)^2+(x(16)-5)^2)+x(11)*sqrt((x(15)-3)^2+(x(16)-6.5)^2)+x(12)*sqrt((x(15)-7.25)^2+(x(16)-7.25)^2);(2)取初值为线性规划的计算结果及临时料场的坐标:x0=[35070100406105127]';编写主程序gying2.m.(3)计算结果为:x=[3.00005.00004.00007.00001.0000000005.000011.00005.69594.92857.25007.7500]fval=89.8835即两个新料场的坐标分别为(5.6959,4.9285),(7.2500,7.7500),由料场A、B向6个工地运料方案为:123456料场A354710料场B0000511总的吨千米数为89.8835。比用临时料场节省约45.398吨千米.注意初始点的选取某厂向用户提供发动机,合同规定,第一、二、三季度末分别交货40台、60台、80台.每季度的生产费用为(元),其中x是该季生产的台数.若交货后有剩余,可用于下季度交货,但需支付存储费,每台每季度c元.已知工厂每季度最大生产能力为100台,第一季度开始时无存货,设a=50、b=0.2、c=4,问工厂应如何安排生产计划,才能既满足合同又使总费用最低.讨论a、b、c变化对计划的影响,并作出合理的解释.练习2bxaxxfEngineContract.m文件EngineContractRun.m文件.即时commandwidow命令文件运行结果如下:
本文标题:Matlab供应与选址问题(附详细编程)
链接地址:https://www.777doc.com/doc-4234567 .html