数学建模试验报告(三)
姓名
学号
班级
问题:(非线性规划)
某厂向用户提供发动机,合同规定,第一、二、三季度末分别交货 40 台、60 台、80
(元),其中 x 是该季生产的台
台 . 每 季 度 的 生 产 费 用 为
数.若交货后有剩余,可用于下季度交货,但需支付存储费,每台每季度 c 元.已知工
厂每季度最大生产能力为 100 台,第一季度开始时无存货,设 a=50、b=0.2、c=4,问
工厂应如何安排生产计划,才能既满足合同又使总费用最低.讨论 a、b、c 变化对计划
的影响,并作出合理的解释..
xf
2bx
ax
问题的分析和假设:
问题分析:本题是一个有约束条件的二次规划问题。决策变量是工厂每季度生产的台数,
目标函数是总费用(包括生产费用和存储费)。约束条件是生产合同,生产能力的限制。
在这些条件下需要如何安排生产计划,才能既满足合同又使总费用最低。
问题假设:
1、工厂最大生产能力不会发生变化;
2、合同不会发生变更;
3、第一季度开始时工厂无存货;
4、生产总量达到 180 台时,不在进行生产;
5、工厂生产处的发动机质量有保证,不考虑退货等因素;
6、不考虑产品运输费用是否有厂家承担等和生产无关的因素。
符号规定:
x1——第一季度生产的台数;
x2——第二季度生产的台数;
180-x1-x2——第三季度生产的台数;
y1——第一季度总费用;
y2——第二季度总费用;
y3——第三季度总费用;
y——总费用(包括生产费用和存储费)。
ax
2bx
xf
(元);
建模:
1、第一、二、三季度末分别交货 40 台、60 台、80 台;
2、每 季 度 的 生 产 费 用 为
3、每季度生产数量满足 40≤x1≤100,0≤x2≤100,100≤x1+x2≤180;
4、要求总费用最低,这是一个目标规划模型。
目标函数:
y1
xb
xa
Z
1
1
1
xb
xa
Z
y2
2
2
180
x
Z
a
y3
1
3
14920
4.0
x
Z
y
3
1
40≤x1≤100
0≤x2≤100
100≤x1+x2≤180
40
c
x
2
1
180
x
b
x
1
2
2
2
4.0
4.0
x
xx
21
c
68
2
x
2
64
x
1
100
x
1
x
2
2
2
Z
Z
1
Z
2
2
x
求解的 Matlab 程序代码:
先建立 M-文件 fun.m:
function f=fun(x);
f=14920+0.4*x(1)*x(1)+0.4*x(2)*x(2)+0.4*x(1)*x(2)-64*x(1)-68*x(2);
再建立主程序 xx.m:
x0=[0;0];
A=[-1 -1;1 1];
b=[-100;180];
Aeq=[];beq=[];
vlb=[40;0];vub=[100;100];
[x,fval]=fmincon('fun',x0,A,b,Aeq,beq,vlb,vub)
计算结果与问题分析讨论:
计算结果:
x =
50.0000
60.0001
fval =
1.1280e+004
分析讨论:
由结果可知:第一季度应生产 50 台,第二季度应生产 60 台,第三季度应生产 70
台,可既满足合同又使总费用最低,最低费用为 11280 元。
讨论 a,b,c 对生产方案的影响:
a 增大或减小对生产方案完全没有影响(无论 a 为多少,方案都是 50、60、70)。
b 逐渐增大,则三个季度的生产量趋近交付总量的平均值,即同趋于 60 台(第一季
度生产量增加,第二季度不变,第三季度减少)。
c 逐渐增大,三季度的生产量分别趋近于每季度的交付量,即分别趋于 40、60、80
(第一季度生产量减少,第二季度不变,第三季度增加)。