1、)A等级耕地B等级耕地水稻1100095009000大豆800068006000玉米140001200010000三 问题假设 根据题意,可以建立线性规划模型,假设决策变量为,表示不同的农作物在第等级耕地上种植的面积。表2 作物计划种植面积(单位:四 模型建立与分析1. 模型:min z=cXS.t. AX命令:x=linprog(c,A,b)2. 模型: Aeq.X=beqx=linprog(c,A,b,Aeq,beq)注意:若没有不等式:AX存在,则令A=,b=.3. x,fval=linprog(.)左端fval返回解X处的目标函数值。4.思路分析:找出约束条件列出目标函数作出可行域求出
2、最优解敏感性分析回答实际问题。5.约束方程如下:耕地面积的约束:最低收获量的约束:并且注意: 则(1)追求总产量最大时,目标函数为:(2) 追求总产值最大的目标函数为:可化简为五模型建立与求解:1.对(1)求解,追求总产量最大时,MATLAB程序如下:f=-11000 -9500 -9000 -8000 -6800 -6000 -14000 -12000 -10000;A=1 0 0 1 0 0 1 0 0 ;0 1 0 0 1 0 0 1 0;0 0 1 0 0 1 0 0 1;-11000 0 0 -9500 0 0 -9000 0 0; 0 -8000 0 0 -6800 0 0 -60
3、00 0; 0 0 -14000 0 0 -12000 0 0 -10000;b=100 300 200 -190000 -130000 -350000;lb=0 0 0 0 0 0 0 0 0;xopt fxopt=linprog(f,A,b,lb,)Optimization terminated successfully.xopt = 0.0000 100.0000 300.0000 200.0000fxopt =-7000000键入S=-Z得到原问题的目标函数最大值为S=70000002.运行后敏感性分析后的MATLAB程序如下:从a=0开始,以步长对下列模型求解;a=0; while(
4、1.1-a)1c=-11000 -9500 -9000 -8000 -6800 -6000 -14000 -12000 -10000;b=100+a ;300+a; 200+a ;-190000+a ;-130000+a;-350000+a; Aeq=; beq=; vlb=0,0,0,0,0,0,0,0,0;vub=; x,val=linprog(c,A,b,Aeq,beq,vlb,vub); a x=x Q=-val plot(a,Q,.),hold on a=a+0.01;endxlabel(a),ylabel(Q) grida =0 x = 0 0 0 0 0 0 100 300 20
5、0Q =7000000分析整理后结果对比如下:a =0 x = 0 0 0 0 0 0 100 300 200 Q = 7000000a =0.01 x =0 0 0 0 0 0 100.01 300.01 200.01 Q =7000360a =0.02 x =0 0 0 0 0 0 100.02 300.02 200.02 Q =7000720a =0.03 x =0 0 0 0 0 0 100.03 300.03 200.03 Q =7.0011e+006a =0.04 x =0 0 0 0 0 0 100.04 300.04 200.04 Q =7.0014e+006a =0.05 x
6、 = 0 0 0 0 0 0 100.05 300.05 200.05 Q =7.0018e+006a =0.06 x =0 0 0 0 0 0 100.06 300.06 200.06 Q =7.0022e+006a =0.07 x = 0 0 0 0 0 0 100.07 300.07 200.07 Q =7.0025e+006 a =0.08 x =0 0 0 0 0 0 100.08 300.08 200.08 Q =7002880a =0.09 x =0 0 0 0 0 0 100.09 300.09 200.09 Q =7.0032e+006如果不好观测,还可以将a细分为,程序基本
7、不变,只需改变a的步长即可,则运行后图像如下:观察图像后,最优值随a的参加变化不明显,但总在6.88e+6到6.9e+6与7e+6到7.02e+6两个区间内缓慢增长。3.对(2)求解:追求总产值最大的MATLAB程序为:f=-13200 -11400 -10800 -12000 -10200 -9000 -11200 -9600 -8000;fxopt = -6.9000e+006运行后得到原问题的目标函数最大值为S=6.9000e+006 4.敏感性分析后的MATLAB程序如下:c=-13200 -11400 -10800 -12000 -10200 -9000 -11200 -9600 -
8、8000;Grida=0 x =100 300 200 0 0 0 0 0 0 Q =6.9000e+006a=0.01 x = 100.01 300.01 200.01 0 0 0 0 0 0 Q =6.9004e+006a=0.02 x =100.02 300.02 200.02 0 0 0 0 0 0 Q =6.9007e+006a=0.03 x =100.03 300.03 200.03 0 0 0 0 0 0 Q =6.9011e+006a=0.04 x =100.04 300.04 200.04 0 0 0 0 0 0 Q =6.9014e+006a=0.05 x =100.05
9、300.05 200.05 0 0 0 0 0 0 Q =6.9018e+006a=0.06 x =100.06 300.06 200.06 0 0 0 0 0 0 Q =6.9021e+006a=0.07 x =100.07 300.07 200.07 0 0 0 0 0 0 Q = 6.9025e+006a=0.08 x =100.08 300.08 200.08 0 0 0 0 0 0 Q =6.9028e+006a=0.09 x =100.09 300.09 200.09 0 0 0 0 0 0 Q = 6.9032e+006 由上图可看出总产值与敏感系数a成正比例关系。六符号约定(1
10、)Q为总体收益(2)A为不等式2约束的系数矩阵(3)b是相应的常量,若无不等式约束,则均用代替;(3)Aeq是等式的约束的系数矩阵,beq是相应的常数列向量,如无约束,则用代替;(4)fval是最优值;(5)a为敏感变量进行循环。七结果分析:1. 敏感系数a对总产量最优值的影响不大。2. 农场A,B ,C 等级耕地的面积越大,总产值越大,因为由上图可看出总产值与敏感系数a成正比例关系。3. 图像上的每个点代表该a作用时的最优解。参考文献1 王沫然 MATLAB 6.0与科学计算 北京 电子工业出版社 2001年9月2 钱颂迪等 运筹学 北京 清华大学出版社 1990年1月3 孙洪祥等 概率论与随机过程 北京 北京邮电大学出版社 2001年2月4 姜启源 数学模型 北京 高等教育出版社 1993年8月5 王能超 计算方法简明教程 北京 高等教育出版社 2004年1月8
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2