施肥效果分析.docx
《施肥效果分析.docx》由会员分享,可在线阅读,更多相关《施肥效果分析.docx(32页珍藏版)》请在冰豆网上搜索。
施肥效果分析
兰州交通大学
2013年大学生数学建模
题目:
施肥效果分析
参赛人1:
姓名刘根
学院自动化与电气工程学院
班级电气1001
参赛人2:
姓名徐灏
学院自动化与电气工程学院
班级电气1001
参赛人3:
姓名陈子健
学院自动化与电气工程学院
班级电气1001
摘要
本文就施肥量与农作物产量的关系进行研究分析,运用逐步回归的思想建立数学模型,最初方案从比较简单的模型入手,逐步优化最终得到各营养素施肥量的最优配比,并使其应用价值得到推广。
思路:
考虑到多种肥料对产量的影响复杂且不易得到其关系,因此我们采用控制单一变量的方法,做出散点图并进行逐步回归,得到产量与各个单一变量的关系式,在此基础上将多个变量做多元回归最终得到施肥量与产量的函数关系。
综合考虑各个方案选择最佳方案作为最终模型,并加以推广。
最终的最优模型为:
当氮的施肥量为290.2542、磷的施肥量为303、钾的施肥量为536.0742时土豆产量达到最优解;当氮的施肥量为290.2542、磷的施肥量为290.2542、钾的施肥量为290.2542时生菜产量达到最优解。
我们通过运用excel、MATLAB、SPSS等软件做出散点图并进行曲线的拟合,用LINGO软件规划求得给定目标函数在限制条件下的最优解,用SPSS进行一元回归。
综合以上所给出的最终模型,各营养素施肥量的最优配比对农作物产量的提高有很好的应用价值。
模型改进:
因为获得的实际数据较少,使模型的精确度受到影响,采用的数学模型因此不够精准,改进建议是收集更多实际数据,统计分析,改进模型。
关键词:
散点图逐步回归目标函数
施肥效果分析
一、问题重述
某地区作物生长所需的营养素主要是氮
、钾
、磷
。
某研究所在该地区对土豆与生菜做了一定数量的实验,实验数据如下表所示,其中
表示公顷,
表示吨,
表示公斤。
当一个营养素的施肥量变化时,
与
的施肥量分别取为
与
.
试分析施肥量与产量之间的关系,并对所得结果从应用价值与如何改进等方面做出估价。
土豆:
生菜:
一、模型假设
1.农作物实验是在相同的实验条件下进行,产量的变化仅由施肥量引起;
2.土壤中有一定量的天然肥,满足其在不施肥下也能生长;
3.当一个营养素的施肥量变化时,另两个营养素的施肥量总保持在第七水平上不变;
4.每次实验独立进行,互不影响;
5.剔除所给数据中偏差较大的点后进行曲线拟合。
二、符号说明
:
每公顷土地中氮元素的施肥量
:
每公顷土地中磷元素的施肥量
:
每公顷土地中钾元素的施肥量
:
每公顷土地中施加氮后作物的产量
:
每公顷土地中施加磷后作物的产量
:
每公顷土地中施加钾后作物的产量
三、问题分析
这是一个由多个变量控制的数学模型,以各营养素施肥量配比使产量达到较好状态为目标,因此需首先求得各个变量的最优解从而使产量达到最佳状态。
对题目中给出的数据进行处理,找出产量与单一营养素在其他营养素施肥量不变条件下的数据关系,绘出土豆和生菜的产量与施肥量的散点图观察其分布规律,选用适当的拟合曲线,并根据曲线类型得出函数关系式,运用SPSS对所得函数进行回归分析和假设检验最终得出各营养素的最终配比。
四、模型的建立与求解
方案一:
用excel表格做出施肥量与产量的拟合曲线如下图所示:
1.施肥量对土豆产量的影响:
氮元素:
磷元素:
钾元素:
2.施肥量对生菜产量的影响:
氮元素:
磷元素:
钾元素:
综上第一套方案对曲线的拟合程度来看,虽然拟合程度很高,但是运用excel做出的拟合曲线并不能反映出施肥量对农作物产量的影响总体规律,只能是在给定的数据范围内达到拟合的要求,并不能准确的把握施肥量与产量之间的关系,故不具有应用价值,不可采用。
方案二:
用SPSS做施肥量与产量的拟合曲线:
1.施肥量对土豆产量的影响:
氮元素:
氮元素施肥量与土豆产量的关系式是:
用SPSS对模型做回归分析所得数据:
:
0.986,
估计值的标准误差:
1.272
所得模型符合总体要求。
磷元素:
磷元素施肥量与土豆产量的关系式:
用SPSS对模型做回归分析所得数据:
:
0.898,
估计值的标准误差:
1.424
所得模型符合总体要求。
钾元素:
钾元素施肥量与土豆产量的关系式:
用SPSS对模型做回归分析所得数据:
:
0.933,
估计值的标准误差:
2.578
所得模型符合总体要求。
2.施肥量对生菜产量的影响:
氮元素:
氮元素施肥量与生菜产量的函数关系式:
用SPSS对模型做回归分析所得数据:
:
0.925,
估计值的标准误差:
1.167
所得模型符合总体要求。
磷元素:
磷元素施肥量肥与生菜产量的函数关系式:
用SPSS对模型做回归分析所得数据:
:
0.978,
估计值的标准误差:
1.149
所得模型符合总体要求。
钾元素:
钾与生菜产量的函数关系式:
用SPSS对模型做回归分析所得数据:
:
0.515,
估计值的标准误差:
1.328
所得模型有误差。
综上对方案二的研究分析可以看出虽然SPSS对曲线的拟合度较高,但是其所拟合的曲线并不符合实际规律,因为根据实际经验,肥料在一定量下并不是施的越多,作物产量越大,而是到超过一定量时,会导致土壤中溶液浓度过大而发生“烧苗”现象,经过综合实际情况与所得结果将施肥量与产量的关系定性为二次函数关系式,由此得出改进方案。
改进方案:
SPSS拟合的二次曲线对自变量系数偏差较大,在回归分析时误差较大,因此我们采用软件MATLAB求解得到二次函数关系方程式,所得方程式用LINGO软件进行分析并求解其最优解。
土豆产量与各个营养素施肥量的关系图:
氮与土豆产量函数关系式
用SPSS对所得函数模型进行检验所得结果为:
模型汇总
R
R方
调整R方
估计值的标准误
.993
.986
.982
1.272
自变量为x1。
ANOVA
平方和
df
均方
F
Sig.
回归
815.252
2
407.626
251.797
.000
残差
11.332
7
1.619
总计
826.585
9
自变量为x1。
模型符合总体要求
磷与土豆产量函数关系式
用SPSS对所得函数模型进行检验所得结果为:
模型汇总
R
R方
调整R方
估计值的标准误
.971
.942
.919
1.036
自变量为x2。
ANOVA
平方和
df
均方
F
Sig.
回归
87.543
2
43.771
40.790
.001
残差
5.365
5
1.073
总计
92.908
7
自变量为x2。
模型符合总体要求
钾与土豆产量函数关系式
用SPSS对所得函数模型进行检验所得结果为:
模型汇总
R
R方
调整R方
估计值的标准误
.932
.868
.802
2.832
自变量为x3。
ANOVA
平方和
df
均方
F
Sig.
回归
211.241
2
105.621
13.166
.017
残差
32.089
4
8.022
总计
243.330
6
自变量为x3。
模型符合总体要求。
用LINGO软件求所得函数关系式的最优解:
当氮的施肥量为290.2542时使得土豆产量达到最优解为43.34615;
当磷的施肥量为303时使得土豆产量达到最优解为42.7423;
当钾的施肥量为536.0742时使得土豆产量达到最优解为44.51718.
生菜产量与各个营养素施肥量的关系图:
氮与生菜产量函数关系式
用SPSS对所得函数模型进行检验所得结果为:
模型汇总
R
R方
调整R方
估计值的标准误
.962
.925
.903
1.167
自变量为x1。
ANOVA
平方和
df
均方
F
Sig.
回归
117.517
2
58.758
43.109
.000
残差
9.541
7
1.363
总计
127.058
9
自变量为x1。
模型符合总体要求
磷与生菜产量函数关系式
用SPSS对所得函数模型进行检验所得结果为:
模型汇总
R
R方
调整R方
估计值的标准误
.979
.959
.947
1.446
自变量为x2。
ANOVA
平方和
df
均方
F
Sig.
回归
338.891
2
169.445
81.077
.000
残差
14.629
7
2.090
总计
353.520
9
自变量为x2。
模型符合总体要求
钾与生菜产量函数关系式
用SPSS对所得函数模型进行检验所得结果为:
模型汇总
R
R方
调整R方
估计值的标准误
.911
.830
.773
.723
自变量为x3。
ANOVA
平方和
df
均方
F
Sig.
回归
15.338
2
7.669
14.660
.005
残差
3.139
6
.523
总计
18.477
8
自变量为x3。
模型符合总体要求
用LINGO软件求所得函数关系式的最优解:
当氮的施肥量为290.2542时使得土豆产量达到最优解为43.34615
当磷的施肥量为290.2542时使得土豆产量达到最优解为43.34615
当钾的施肥量为290.2542时使得产量达到最优解为43.34615
五、模型结果的改进与评价
优点:
1)本模型运用回归分析的方法求解,理论可得最优解。
2)问题的考虑是逐层深入,使得问题的各个因素考虑比较全面。
3)模型是分为两个独立的模型进行逐步回归。
4)我们运用的MATLAB、SPSS等软件使得结果更加精确,误差主要取决于Lingo的软件的精度。
缺点:
1)在实际工作中,三种肥料之间除了与产量有直接的关系外,还有彼此之间的交互作用。
因此,本模型只是初步探讨,要得到三种营养素之间与产量的准确关系应在实验之初采用正交实验与均匀设计的方法,得到更有价值的实验数据,建立更有可信度的自变量与因变量之间的函数关系式。
2)整个方案中对于问题考虑的不全面,导致最终结果存在误差。
六、参考文献
[1]崔群法、张瑜、杨光霞、李乃文.《数据建模与应用》.清华大学出版社
[2]张举刚、张彩霞、李荣平、张小平.《统计学》.河北人民出版社
[3]马昌风.《最优化方法及其MATLAB程序设计》.科学出版社
[4]蔡建琼、于惠芳.《SPSS统计分析实例精选》.清华大学出版社
七、附录
模型汇总
R
R方
调整R方
估计值的标准误
.993
.986
.982
1.272
自变量为x1。
模型汇总和参数估计值
因变量:
y1
方程
模型汇总
参数估计值
R方
F
df1
df2
Sig.
常数
b1
b2
二次
.986
251.797
2
7
.000
14.742
.197
.000
自变量为x1。
系数
未标准化系数
标准化系数
t
Sig.
B
标准误
Beta
x1
.197
.010
3.333
19.835
.000
x1**2
.000
.000
-2.751
-16.371
.000
(常数)
14.742
.893
16.508
.000
模型汇总和参数估计值
因变量:
y2
方程
模型汇总
参数估计值
R方
F
df1
df2
Sig.
常数
b1
b2
b3
三次
.898
17.521
3
6
.002
32.005
.114
.000
6.498E-7
自变量为x2。
模型汇总
R
R方
调整R方
估计值的标准误
.947
.898
.846
1.424
自变量为x2。
ANOVA
平方和
df
均方
F
Sig.
回归
106.584
3
35.528
17.521
.002
残差
12.167
6
2.028
总计
118.750
9
自变量为x2。
系数
未标准化系数
标准化系数
t
Sig.
B
标准误
Beta
x2
.114
.034
3.714
3.355
.015
x2**2
.000
.000
-5.294
-1.938
.101
x2**3
6.498E-7
.000
2.443
1.391
.213
(常数)
32.005
1.192
26.840
.000
ANOVA
平方和
df
均方
F
Sig.
回归
554.191
3
184.730
27.786
.001
残差
39.891
6
6.648
总计
594.082
9
自变量为x3。
系数
未标准化系数
标准化系数
t
Sig.
B
标准误
Beta
x3
.168
.032
4.656
5.206
.002
x3**2
.000
.000
-8.295
-3.763
.009
x3**3
3.966E-7
.000
4.587
3.238
.018
(常数)
20.549
2.167
9.481
.000
ANOVA
平方和
df
均方
F
Sig.
回归
117.517
2
58.758
43.109
.000
残差
9.541
7
1.363
总计
127.058
9
自变量为x1。
系数
未标准化系数
标准化系数
t
Sig.
B
标准误
Beta
x1
.101
.011
3.647
9.226
.000
x1**2
.000
.000
-3.411
-8.628
.000
(常数)
10.229
.818
12.503
.000
ANOVA
平方和
df
均方
F
Sig.
回归
345.599
3
115.200
87.254
.000
残差
7.922
6
1.320
总计
353.520
9
自变量为x2。
系数
未标准化系数
标准化系数
t
Sig.
B
标准误
Beta
x2
.088
.014
3.324
6.435
.001
x2**2
.000
.000
-4.252
-3.339
.016
x2**3
1.056E-7
.000
1.845
2.254
.065
(常数)
5.685
.965
5.894
.001
ANOVA
平方和
df
均方
F
Sig.
回归
11.223
3
3.741
2.120
.199
残差
10.588
6
1.765
总计
21.810
9
自变量为x3。
系数
未标准化系数
标准化系数
t
Sig.
B
标准误
Beta
x3
.018
.017
2.633
1.095
.316
x3**2
-5.470E-5
.000
-5.215
-.880
.413
x3**3
5.573E-8
.000
3.364
.883
.411
(常数)
15.690
1.117
14.051
.000
系数
未标准化系数
标准化系数
t
Sig.
B
标准误
Beta
x1
.197
.010
3.333
19.835
.000
x1**2
.000
.000
-2.751
-16.371
.000
(常数)
14.742
.893
16.508
.000
系数
未标准化系数
标准化系数
t
Sig.
B
标准误
Beta
x2
.081
.014
2.410
5.676
.002
x2**2
.000
.000
-1.576
-3.712
.014
(常数)
32.379
.762
42.498
.000
系数
未标准化系数
标准化系数
t
Sig.
B
标准误
Beta
x3
.067
.027
2.596
2.513
.066
x3**2
-6.455E-5
.000
-1.743
-1.687
.167
(常数)
27.668
3.079
8.987
.001
系数
未标准化系数
标准化系数
t
Sig.
B
标准误
Beta
x1
.101
.011
3.647
9.226
.000
x1**2
.000
.000
-3.411
-8.628
.000
(常数)
10.229
.818
12.503
.000
系数
未标准化系数
标准化系数
t
Sig.
B
标准误
Beta
x2
.061
.008
2.285
7.792
.000
x2**2
-5.458E-5
.000
-1.430
-4.879
.002
(常数)
6.882
1.013
6.791
.000
系数
未标准化系数
标准化系数
t
Sig.
B
标准误
Beta
x3
.011
.004
1.582
2.450
.050
x3**2
-7.077E-6
.000
-.715
-1.107
.311
(常数)
15.836
.517
30.654
.000
x=[03467101135202259336404471];
y=[15.1821.3625.7232.2934.0339.4543.1543.4640.8330.75];
subplot(2,3,1);
plot(x,y,'o'),xlabel('N'),ylabel('CL'),title('N施肥量与土豆产量的关系');
p=polyfit(x,y,2);
m=p
(1);
b=p
(2);
c=p(3);
x1=[0:
5:
500];
y1=m*x1.^2+b*x1+c;
subplot(2,3,4);
plot(x1,y1,x,y,'o'),xlabel('N'),ylabel('CL'),
x=[0244973147196245342];
y=[33.4632.4736.0637.9640.0941.2642.1742.73];
subplot(2,3,2);
plot(x,y,'o'),xlabel('P'),ylabel('CL'),title('P施肥量与土豆产量的关系');
p=polyfit(x,y,2);
m=p
(1);
b=p
(2);
a=p(3);
x1=[0:
5:
500];
y1=m*x1.^2+b*x1+a;
subplot(2,3,5);
plot(x1,y1,x,y,'o'),xlabel('N'),ylabel('CL'),
x=[04793140186279372465558651];
y=[18.9827.3534.8638.5238.4437.7338.4343.8742.7746.22];
subplot(2,3,3);
plot(x,y,'o'),xlabel('K'),ylabel('CL'),title('K施肥量与土豆产量的关系')
p=polyfit(x,y,2);
m=p
(1);
b=p
(2);
a=p(3);
x1=[0:
5:
700];
y1=m*x1.^2+b*x1+a;
subplot(2,3,6);
plot(x1,y1,x,y,'o'),xlabel('K'),ylabel('CL'),
x=[0285684112168224280336392];
y=[11.0212.7014.5616.2717.7522.5921.6319.3416.1214.11];
subplot(2,3,1);
plot(x,y,'o'),xlabel('N'),ylabel('CL'),title('N施肥量与生菜产量的关系');
p=polyfit(x,y,2);
m=p
(1);
b=p
(2);
a=p(3);
x1=[0:
5:
500];
y1=m*x1.^2+b*x1+a;
subplot(2,3,4);
plot(x1,y1,x,y,'o'),xlabel('N'),ylabel('CL'),
x=[04998147196294391489587685];
y=[6.399.4812.4614.3817.1021.9422.6421.3422.0724.53];
subplot(2,3,2);
plot(x,y,'o'),xlabel('P'),ylabel('CL'),title('P施肥量与生菜产量的关系');
p=polyfit(x,y,2);
m=p
(1);
b=p
(2);
a=p(3);
x1=[0:
5:
700];
y1=m*x1.^2+b*x1+a;
subplot(2,3,5);
plot(x1,y1,x,y,'o'),xlabel('P'),