2012年山东工商学院
《数学建模与数学实验》课程论文
姓名张鹏
论文题目1 A题
论文题目2 B题
学号10172133
学院、专业计算机学院通信101 班
论文1分数
论文2分数
山东工商学院
A题:
某工厂向用户提供发动机,按合同规定,其交货数量和日期是:第一季度末交40 台,第二季末交60 台,第三季末交80 台。工厂的最大生产能力为每季100 台,每季的生产费用是 f (x) = 50x + 0.2x2 (元),此处x 为该季生产发动机的台数。若工厂生产的多,多余的发动机可移到下季向用户交货,这样,工厂就需支付存贮费,每台发动机每季的存贮费为4 元。问该厂每季应生产多少台发动机,才能既满足交货合同,又使工厂所花费的费用最少(假定第一季度开始时发动机无存货)。
问题的分析和假设.
目标函数是总费用.包括生产费用和贮存费.记为y。
约束条件是生产合同.生产能力的限制。
若每季度的生产费用为 f(x) = ax + bx^2(元).
设三季度分别生产量为x , y , 180-x-y (台)。
且应满足
40≤x≤100,
100≤x+y≤180,
0≤y≤100,
x,y∈N+(正整数).
a=50、b=0.2、c=4
则第一季度生产费用T1=50 x + 0.2x^2
剩余产品存储到下一季度的费用K1=4(x-40)
同理T2=50y + 0.2y^2
K2=4(x+y-100)
T3=50(180-x-y) + 0.2(180-x-y )^2
建模:
总费用
F=T1+T2+T3+K1+K2=9000+0.2(x^2+y^2)+0.2(180-x-y) ^2+4(2x+y-140)
令F'x=0F'y=0
即
0.4x-0.4(180-x-y)+8=0
0.4y-0.4(180-x-y)+4=0
解得x=50 y=60
易验证该点处
令
F''xx≥0
F''yy≥0
即为F 的极小值点。
在通过和边界值的比较知其是定义域上的最小值点。
对以上问题加以整理分析.用matlab 实现.m 文件为.
a=50;b=0.2;c=4;
H=diag(2*b*ones(1,3));C=[a+2*c,a+c,a];
A1=[-1,0,0;-1,-1,0];b1=[-40,-100]';
A2=[1 1 1];b2=180;
v1=[0 0 0]';v2=[100 100 100]';
[x,faval,exitflag,output,lambada]=quadprog(H,C,A1,b1,A2,b2,v1,v2, [])
y=x'*H*x/2+C*x-140*c
求解的Matlab 程序代码.
a=50;b=0.2;c=4;
H=diag(2*b*ones(1,3));C=[a+2*c,a+c,a];
A1=[-1,0,0;-1,-1,0];b1=[-40,-100]';
A2=[1 1 1];b2=180;
v1=[0 0 0]';v2=[100 100 100]';
[x,faval,exitflag,output,lambada]=quadprog(H,C,A1,b1,A2,b2,v1,v2, [])
y=x'*H*x/2+C*x-140*c
输出结果
x =
50.0000
60.0000
70.0000
faval = 11840
exitflag = 1
output =
iterations: 1
algorithm: 'medium-scale: active-set'
firstorderopt: []
cgiterations: []
message: 'Optimization terminated.'
lambada =
lower: [3x1 double]
upper: [3x1 double]
eqlin: -78
ineqlin: [2x1 double]
y =11280
计算结果与问题分析讨论.
问题分析.
费用总量最低生产方案是.三个季度分别生产50、60、70 台
a,b,c 对生产方案的影响.
a 增大或减小对生产方案完全没有影响.无论a为多少。方案都是
50、60、70。
b 逐渐增大.则三个季度的生产量趋近交付总量的平均值。即同趋于
60 台。
第一季度
生产量增加.第二季度不变.第三季度减少。
c 逐渐增大.三季度的生产量分别趋近于每季度的交付量。即分别趋于40、60、80。
第一季度生产量减少.第二季度不变.第三季度增加。