logo资料库

用matlab完成的运筹学短学期实验.doc

第1页 / 共9页
第2页 / 共9页
第3页 / 共9页
第4页 / 共9页
第5页 / 共9页
第6页 / 共9页
第7页 / 共9页
第8页 / 共9页
资料共9页,剩余部分请下载后查看
上海 XX 大学 ———运筹学课程设计报告 案例一:整数规划
某工厂生产中需要某种混合料,它应包含甲、乙、丙三种成份。这些成份可由市场购买 的 A、B、C 三种原料混合后得到。已知各种原料的单价、成份含量以及各种成份每月的最 低需求量如下表: 含 成 份 料 原 量 甲 乙 丙 各种原料的单价(万元/吨) A B 1 7 2 2 3 3 1 3 C 1 1 1 6 各种成分的每月 最低需求量 36 15 20 —— 问:该厂每月应购买各种原料多少吨,才能使在满足需求的基础上使用于购买原材料所 耗费的资金为最少?(该题只要求建立线性规划模型,不必进行求解) 解:现设 x1、x2、x2 为 A、B、C 原料的购买数量, ∵ x1、x2、x3≥0 设 z 为总的耗费资金,则 min z= 2x1+3x2+6x3 s.t.        3 x x   1 2 7 3 x x   1 2 x x   1 , x xx , 2 1 3 2 x     3 x x 0 2 36  15  20  3 3
初始编辑及结果: >> f=[2,3,6]; >> a=[-1,-3,-1;-7,-3,-1;-2,-1,-1]; >> f=[2,3,6]'; >> a=[-1,-3,-1;-7,-3,-1;-2,-1,-1]; >> b=[-36,-15,-20]'; >> lb=zeros(3,1); >> [x, fval, exitflag]=linprog (f, a, b, [],[],lb); Optimization terminated. >> x x = 4.8000 10.4000 0.0000 >> fval fval = 40.8000 分支第一次:(对 X1 进行剪支) (1)min z= 2x1+3x2+6x3 s.t. x    2 3 x x 36  15  20  3 3 x  1 7 x  1 2 x  1 1 x  , xx 1 3 x  2 3 x  x  4 , 2 x 3         2  0
显示结果如下: >> f=[2,3,6]; >> a=[-1,-3,-1;-7,-3,-1;-2,-1,-1;1,0,0]; >> b=[-36,-15,-20,4]'; >> lb=zeros(3,1); >> [x, fval, exitflag]=linprog(f, a, b, [],[],lb); Optimization terminated. >> x x = 4.0000 12.0000 0.0000 >> fval fval = 44.0000 (2) min z= 2x1+3x2+6x3 s.t. -x1-3x2-x3<=-36 -7x1-3x2-x3<=-15 -2x1-x2-x3<=-20 X1>=5 X1,x2,x3>=0 显示结果如下:
>> f=[2,3,6]; >> a=[-1,-3,-1;-7,-3,-1;-2,-1,-1;-1,0,0]; >> b=[-36,-15,-20,-5]'; >> lb=zeros(3,1); >> [x, fval, exitflag]=linprog(f, a, b, [],[],lb); Optimization terminated. >> x x = 5.0000 10.3333 0.0000 >> fval fval = 41.0000 分支第二次:(对 X2 进行剪支) (3)min z= 2x1+3x2+6x3 s.t. -x1-3x2-x3<=-36 -7x1-3x2-x3<=-15 -2x1-x2-x3<=-20 X1>=5 X2>=11 X1,x2,x3>=0 显示结果如下:
>> f=[2,3,6]; >> a=[-1,-3,-1;-7,-3,-1;-2,-1,-1;-1,0,0;0,-1,0]; >> b=[-36,-15,-20,-5,-11]'; >> lb=zeros(3,1); >> [x, fval, exitflag]=linprog(f, a, b, [],[],lb); Optimization terminated. >> x x = 5.0000 11.0000 0.0000 >> fval fval = 43.0000 (4)min z= 2x1+3x2+6x3 s.t. -x1-3x2-x3<=-36 -7x1-3x2-x3<=-15 -2x1-x2-x3<=-20 X1>=5 X2<=10 X1,x2,x3>=0 显示结果如下: >> f=[2,3,6]; >> a=[-1,-3,-1;-7,-3,-1;-2,-1,-1;-1,0,0;0,1,0]; >> b=[-36,-15,-20,-5,10]'; >> lb=zeros(3,1); >> [x, fval, exitflag]=linprog(f, a, b, [],[],lb);
Optimization terminated. >> x x = 6.0000 10.0000 0.0000 >> fval fval = 42.0000 综合得最优解为:X1=6, X2=10, X3=0, Min=42 案例二:线性规划 Max z=-2x1+3x2-6x3 3x1-4x2-6x3<=2 2x1+x2+2x3>=11 x1+3x2-2x3<=5 X1,x2,x3>=0 min z=2x1-3x2+6x3 s. t 3x1-4x2-6x3<=2 -2x1-x2-2x3<=-11 x1+3x2-2x3<=5 X1,x2,x3>=0
显示结果如下: >> f=[2,-3,6]; >> f=[2,-3,6]'; >> a=[3,-4,-6;-2,-1,-2;1,3,-2]; >> b=[2,-11,5]'; >> lb=zeros(3,1); >> [x, fval, exitflag, output, lambda]=linprog(f, a, b, [],[],lb); Optimization terminated. >> exitflag exitflag = 1 >> fval fval = 9.0000 >> x x = 0.0000 4.0000 3.5000 程序执行后得:exitflag=1,fval=9,x1=0, x2=4, x3=3.5, 即目标函数在点(0,4,3.5)处取得最小值 9. 案例三: (3 , 3) vs (5 , 1) v2 (4 , 3) v4 (1 , 1) (1 , 1) v1 (2 , 2) v3 (5 , 3) (3 , 0) vt (2 , 1)
分享到:
收藏