数学建模举例.docx
《数学建模举例.docx》由会员分享,可在线阅读,更多相关《数学建模举例.docx(22页珍藏版)》请在冰豆网上搜索。
![数学建模举例.docx](https://file1.bdocx.com/fileroot1/2023-1/28/ddf6f8bc-99af-432e-a873-3e4886667b74/ddf6f8bc-99af-432e-a873-3e4886667b741.gif)
数学建模举例
10.1牙膏的销售量
某人型牙膏制造企业为了更好地拓展产品市场,有效地管理库存,公司董事会要求销售部门根据市场调查,找出公司生产的牙膏销售量与销售价格、广告投入等之间的关系,从而预测出在不同价格和广告费用卞的销售量。
为此,销售部的研究人员收集了过去30个销售周期(每个销售周期为4周)公司生产的牙膏的销售量、销售价格、投入的广告费用,以及同期其它厂家生产的同类牙膏的市场平均销售价格,见表1-1(其中价格差指其它厂家平均价格与公司销售价格之差)。
试根据这些数据建立一个数学模型,分析牙膏销售量与其它因素的关系,为制订价格策略和广告投入策略提供数量依据
表1-1牙膏销售量与销售价格、广告费用等数据
销售
公司销售价格
其他厂家平均
价格差
广告费用
销售量
周期
(元)
价格(元)
(元)
(百万元)
(百万支)
1
3.85
3.80
-0.05
5.5
7.38
2
3.75
4.00
0.25
6.75
8.51
3
3.70
4.30
0.60
7.25
9.52
4
3.60
3.70
0.00
5.50
7.50
5
3.60
3.85
0.25
7.00
9.33
6
3.6
3.80
0.20
6.50
8.28
7
3.6
3.75
0.15
6.75
8.75
8
3.8
3.85
0.05
5.25
7.87
9
3.8
3.65
-0.15
5.25
7.10
10
3.85
4.00
0.15
6.00
8.00
11
3.90
4.10
0.20
6.50
7.89
12
3.90
4.00
0.10
6.25
8.15
13
3.70
4.10
0.40
7.00
9.10
14
3.75
4.20
0.45
6.90
8.86
15
3.75
4.10
0.35
6.80
8.90
16
3.80
4.10
0.30
6.80
8.87
17
3.70
4.20
0.50
7.10
9.26
18
3.80
4.30
0.50
7.00
9.00
19
3.70
4.10
0.40
6.80
8.75
20
3.80
3.75
-0.05
6.50
7.95
21
3.80
3.75
-0.05
6.25
7.65
22
3.75
3.65
-0.10
6.00
7.27
23
3.70
3.90
0.20
6.50
8.00
24
3.55
3.65
0.10
7.00
8.50
25
3.60
4.10
0.50
6.80
8.75
26
3.70
4.25
0.60
6.80
9.21
27
3.75
3.65
-0.05
6.50
8.27
28
3.75
3.75
0.00
5.75
7.67
29
3.80
3.85
0.05
5.80
7.93
30
3.70
4.25
0.55
6.80
9.26
问题重述
根据过去30个销售周期(每个销售周期为4周)公司生产的牙膏的销售量、销售价格、投入的广告费用,以及同期其它厂家生产的同类牙膏的市场平均销售价格,见表14。
根据这些数据建立一个数学模型,分析牙膏销售量与其它因素的关系,为制订价格策略和广告投入策略提供数量依据
二、问题分析
由于牙膏是生活必需品,对人多属顾客来说,在购买同类产品的牙膏是更多地会在意不同品牌之间的价格差异,而不是它们的价格本身。
因此,在研究各个因素对销量的影响时,用价格差代替公司销售价格和其他厂家平均价格更为合适。
1.画出牙膏销售量与价格差,公司投入的广告费用的散点图
2.由散点图确定两个函数模型,再由这两个函数模型解出回归模型
3.对模型进行改进,添加新的条件确定更好的回归模型系数,得到新的回归模型
4.
对模型进一步改进,确定最终的模型
牙膏销售量为y,其他厂家平均价格和公司销售价格之差(价格差)为xl,公司投入的广告费用为x2,其他厂家平均价格和公司销售价格分别为x3和x4,xl=x3-x4o基于上面的分析,我们仅利用lx和2x来建立y的预测模型。
五.模型的建立和求解
1.基本模型
利用表1-1的数据用matlab作出y与xl的散点图(图1-1),y与x2的散点图(图1-2)代码如下:
xl=[-0.050.250.600.250.20.150.05-0.150.150.20.10.40.450.350.30.50.50.4-0.05-0.05-0.10.20.10.50.6-0.0500.050.55);
x2=[5.56.757.255.576.56.755.255.2566.56.2576.96.86.87.176.86.56.2566.576.86.86.55.755.86.8];
y=[7.388.519.527.59.338.288.757.877.187.898.159.18.868.98.879.2698.757.957.65
7.2788.58.759.218.277.677.939.26];
Al=polyfit(xlzy,l);
yyl=polyval(Al,xl);
A2=polyfit(x2/y,2);
x5=5:
0.05:
7.25;
yy2=polyvaI(A2zx5);
subplot(l/2,l);plot(xl/y;o,,xl,yyl);
title('图ly对xl的散点图');
subplot(l/2,2);plot(x2/y;o,/x5,yy2);
title('图2y对x2的散点图');
图(1-1)与图(1-2)
从图1可以发现,随着lx的增加,y的值有比较明显的线性增长趋势,图中的直线是用线性模型:
y=0°+0內+£
(1)
拟合的(其中£是随机误差)。
而在图2中,当x2增大时,y有向上弯曲增加的趋势,图中的曲线是用二次函数模型:
y=/74-+P2x^+£-
(2)
综合上面的分析,结合模型
(1)和
(2)建立如下的回归模型:
y=0。
+卩並+P2x2++g(3)
(3)式右端的xl和x2称为回归变量(自变量),0。
+0內+0人+03可是给定价格差xl,广告费用x2时,牙膏销售量y的平均值,其中的参数0。
几,02,03称为回归系数,由表1-1的数据估计,影响y的其他因素作用都包含在随机误差£中。
如果模型选择合适,£应该大致服从值为0的正态分布。
2.模型求解
在刚刚运行的代码后面,继续使用regressI具求解,代码为:
x6=[ones(30zl)xl'x2'(x2.A2)'];
[b,bint,r,rint,stats]=regress(y:
x6,0.05)
运行结果如图(1-3)
得到模型(3)的回归系数估计值及其置信区间(置信水平a=0.05)、检验统计量用,F,p,S’得结果见表1-2
参数
参数估计值
参数置信区间
0。
17.3244
[5.7282,28.9206
A
1.3070
[0.6829,1.9311]
A
-3.6956
E-7.4989,0.1077]
A
0.3486
[0.0379,0.6594]
F二0.9054F=82.9409p<0.0001s-0.0490
表「2模型(3)计算结果
»x1=(-0.060.260.600.250.20.1$0.05-0.150.IS0.20.10.40.450.350.30.50.60.4-605-605-0.10.20.I0.S0.8-0.6500.050.5SJX2=[%56•為7.205.576・D0.755.255.35%G50.257G.90.56.87.I70.80.50.256fl.570.5乩80.55.755.881:
尸(T-38&519・527.59.338.288.T57.377.187.8$8.159.1&$6&98.8:
9.2698.757.$57.657.2T88.58.T59.21&277.6:
:
・939・26】:
Al=polyfit(xLy,I)
yyl=polyv81'Abxl>
A2=polyfitxS=5:
0.C6:
7.26:
yy2=polyvaliA2,xB).
subplot<1j2,1):
plottitleCffily?
Jx】的)-
flubpLot<1,2,2).plot(x2,y,*o',y>*2).
UtleCffl2y5Qx2的殓白田,);
»x6=[4nes(30.1)xlzxZrim,2i2itfi]=rw^rcaB7x670.05)
17.3244
L.3070
-3.8268
0.3486
burt-
6.72S228.d20«
0.6829】・93】l
-7.:
9390.10T7
0.03790.«S94
图(1-3)
3.结果分析
表1-2显示,K2=0.9054指因变量y(销售量)的90.54%可由模型决定,F值远远超过F检验的临界值,P远小于a,因而模型(3)整体来看是可用的
表1-2的回归系数中%的置信区间包含零点,表示回归变量X:
(对因变量y的影响)是不太显著的,但由于X’是显著的,我们仍将X’留在模型中
4.销售量预测
将回归系数的估计值带入模型(3),即可预测公司未来某个销售周期牙膏的销售量y,预测值记为j,得到模型(3)的预测方程:
AAAA
尸0。
+0曲+0应+03帘(4)
人
只需要知道该销售周期的价格差xl和投入的广告费用x2,就可以计算预测值y。
5.模型改进
模型(3)中回归变量xl和x2对因变量y的影响是相互独立的,即牙膏销售量y的均值与广告费用
X2的二次关系由回归系数伙和03确定,而不依赖于价格差X1,同样的,y的均值与X1的线性关系由回归系数几确定,而不依赖于x2°根据直觉和经验可以猜想,xl和x2之间的交互作用会对y有影响,不妨简单地用xl,x2的乘积代表它们的相互作用,于是将模型(3)增加一项,得到:
y=/?
o+(3^+P2x2++(34xyx2+s(5)
在这个模型中,y的均值与2X的二次关系为(02+0A)壬+03乳『,由系数确
定,并依赖于价格差XI。
在上述运行程序后继续输入代码:
x7=[ones(30,l)xl1x2*(x2.A2)*(xl.*x2)'];
[b,bint/r/rint/stats]=regress(y,/x7/0.05);b,bint,stats
结果见图(1-4)
»k?
=[ones(30,1)xTx2*(x2•⑵'仗1・凉2)']:
[b,bint,r.rint.stats]=regressl.y‘,xT,0.05):
b)bin*t)stats
b=
29.1133
11.1342
-7.6080
0.6712
-1.4777
图(1-4)
计算结果即为表1-3
参数
参数估计值
参数置信区间
0。
29.1133
[13.7013,44.5252]
A
11.1342
[1.9778,20.2906]
A
-7.6080
[-12.6932,-2.5228]
A
0.6712
[0.2538,1.0887]
A
-1.4777
[-2.8518,-0.1037]
RZ=0.9209F=72.7771P<0.0001=0.0426
表1-3模型(5)计算结果
表3与表2的结果相比,,有所提高,说明模型(5)比模型(3)有所进步。
并且,所有参数的置信区间,特别是XI,X2的交互作用项X1X2的系数Q的置信区间不包含零点,所以有理由相信模型(5)比模型(3)更符合实际。
在保持广告费用x2=6.5百万元不变的条件下,分别对模型(3)和(5)中牙膏销售量的均值与价格差xl的关系作图,见图1-5和图1-6,代码为:
yy3=17.3244+1.307*xl+(-3.6956)*6.5+0.3486*6.5*6.5;
plot(xl,yy3);
gridon
figure
(2)
yy4=29.1133+11.1342*xl+(-7.608*6.5)+0.6712*6.5*6.5+(-1.4777)*6.5*xl;
plot(xl,yy4);
gridon
图1-5
图1-6
在保持价格差xl=0.2元不变的条件卞,分别对模型(3)和(5)中牙膏销售量的均值&与广告费用X2
的关系作图,见图1-7和图代码如下:
figure⑶
yy5=17.3244+1.307*0.2+(-3.6956)*x2+0.3486*x2.*x2;
bb=polyfit(x2,yy5,2);
xx5=5.25:
0.05:
7.25;
yy51=polyval(bb/xx5);
plot(xx5,yy51);
gridon;
figure(4)
yy6=29.1133+11.1342*0.2+(-7.608*x2)+0.6712*x2.*x2+(-1.4777)*x2*0.2;
bb=polyfit(x2,yy6,2);
xx6=5.25:
0.05:
7.25;
yy61=polyval(bb,xx6);
plot(xx6,yy61);
gridon;
图1-7
图1-8
6.模型的进一步改进
完全二次多项式模型:
与lx和2x的完全二次多项式模型
y=+P2x2+P5xYx2+P4x^+P5x^+£(6)
相比,模型(5)只少xf项,我们不妨增加这一项,建立模型(10)。
这样做的好处之一是
MATLAB统计工具箱有直接的命令rstool求解,并且以交互式画面给出y的估计值;和预测空间。
代码为:
x=[xl,x2'];
rstoolfx^'/quadratic')
结果为图1-9
图1-9
点击Export,可以得到模型(6)的回归系数估计值为
AAAAAAA
P=(队化,A)=(32.0984,14.7436,-8.6367,-2.103&1.1074Q7594)
所以回归模型为:
Y=32.0984+14.7436*xl-8.6367*x2-2.1038*xl*x2+1.1074V+0.7594X/
10.2软件开发人员的薪金
一家技术公司人事部门欲建立模型研究薪金与资历、管理责任、教育程度的关系,分析人事策略的合理性,作为新聘用人员薪金的参考。
为此,研究人员收集了46名软件开发人员的档案资料,如表2-1,其中资历一列指从事专业工作的年数,管理一列中1表示管理人员,0表示非管理人员,教育一列中1表示中学程度,2表示大学程度,3表示更高程度(研究生)
表2-1软件开发人员的薪金与资历、管理责任、教育程度的关系
编号
薪金
资历
管理
教育
01
13876
1
1
1
02
11608
1
0
3
03
18701
1
1
3
04
11283
1
0
2
05
11767
1
0
3
06
20872
2
1
2
07
11772
2
0
2
08
10535
2
0
1
09
12195
2
0
3
10
12313
3
0
2
11
14975
3
1
1
12
21371
3
1
2
13
19800
3
1
3
14
11417
4
0
1
15
20263
4
1
3
16
13231
4
0
3
17
12884
4
0
2
18
13245
5
0
2
19
13677
5
0
3
20
15965
5
1
1
21
12366
6
0
1
22
21352
6
1
3
23
13839
6
0
2
24
22884
6
1
2
25
16978
7
1
1
26
14803
8
0
2
27
17404
8
1
1
28
22184
8
1
3
29
13548
8
0
1
30
14467
10
0
1
31
15942
10
0
2
32
23174
10
1
3
33
23780
10
1
2
34
25410
11
1
2
35
14861
11
0
1
36
16882
12
0
2
37
24170
12
1
3
38
15990
13
0
1
39
26330
13
1
2
40
17949
14
0
2
41
25685
15
1
3
42
27837
16
1
2
43
18838
16
0
2
44
17483
16
0
1
45
19207
17
0
2
46
19364
20
0
1
问题重述
研究人员收集了46名软件开发人员的档案资料,以这资料建立模型研究薪金与资历、管理责任、教育程度的关系,分析人事策略的合理性,作为新聘用人员薪金的参考
二.问题分析
按照常识,薪金自然随着资历(年)的增长而增加,管理人员的薪金应高于非管理人员,教育程度越高薪金也越高
1.建立薪金与资历,管理责任,教育程度之间的多元线性回归模型
2.利用matlab的统计工具箱计算回归系数及置信区间
3.在上述模型中增加管理与教育的交互项,建立新的回归模型
4.
利用matlab的统计工具箱计算回归系数及置信区间并与上面结果比较得出结论
对于问题,在符合题意并且与实际情况较吻合的情况下,薪金记作y,资历(年)记作xl,为了表示是否非管理人员,定义=管理竺,为了表示3种教育程度,定义x3=(气芝,x4=F聋,
10,其它lo,其它lo,其它
这样,中学用x3=l,x4=0来表示,人学用x3=0,x4=l表示,研究生则用x3=0,x4=0表示。
五.模型的建立与求解
1.基本模型
根据假设,薪金y与资历xl,管理贵任x2,教育程度x3,x4之间的多元线性回归方程为:
y=a0+alxl+a2x2+a3x3+a4x4+£(】)
2.模型求解
直接利用matlab统计工具箱中的命令regress求解回归系数估计值及其置信区间(置信水平a=0.05).检验统计量R',F,p,S2,代码为:
xl=[l11112222333344445556666788881010101011111212131314151616161720
r;
x2=[l01001000011101000010101101100011100101011000O]1;
x3=[l00000010010010000011000101011000010010000010I]1;
x4=[000101100101000011000011010000101101001101101O]1;
y=[13876116081870111283117672087211772105351219512313149752137119800114172026313231128841324513677159651236621352138392288416978148031740422184135481446715942231742378025410148611688224170159902633017949256852783718838174831920719346]*;
x0=ones(46,l);x=[xOxlx2x3x4];
[b/bint/r/rint,stats]=regress(y,x/0.05);
x0=ones(46,l);x=[xOxlx2x3x4];[bbintjjint/stats]=regress(y,x/0.05);b=vpa(b,8)
bint=vpa(bint,8)
stats=vpa(stats,8)
结果如图2-1
b=
11032.734
546.12765
6882.5329
-2994.1783
147.73798
bint=
图(2・1)
即模型
(1)的计算结果是表2・2
参数
参数估计值
参数置信区间
aO
11032
[10258卫807]
al
546
[484,608]
a2
6883
[6248,7517]
a3
-2994
[-3826,-2162]
a4
148
[-636,931]
=0.957F=226p<0.0001s2=1.057*10A6
表2・2模型
(1)计算结果
3・结果分析
从表2-2知,=0.975,即因变量(薪金)的95.7%可由模型确定,F值远远超过F的检验的临界值,p远小于因而模型
(1)从整体来看是可用的。
比如,利用模型可以估计(或预测)一个大学毕业,有2年资历,费管理人员的薪金为:
yl=a0+al*xl+a2*x2+a3*x3+a4*x4+£=12272
模型中各个回归系数的含义可初步解释如下:
xl的系数为546,说明资历增加1年薪金增长546;X2的系数为6883,说明管理人员薪金多6883;x3的系数为-2994,说明中学程度薪金比更高的少2994;x4的系数为148,说明人学程度薪金比更高的多148,但是应该注意到a4置信区间包含零点,说明这个系数的