农作物用水量预测及智能灌溉方法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

农作物用水量预测及智能灌溉方法
摘要
随着水资源供需矛盾的日益加剧,发展节水型农业势在必行。

智能灌溉应用先进的信息技术实施精确灌溉,以农作物实际需水量为依据,提高灌溉精确度,实施合理的灌溉方法,进而提高水的利用率。

本文建立了灌水量和最终产量之间的关系,以及在干旱条件下,每个阶段具体水量分配的方案。

针对问题一,结合题中所给的数据,先做出了灌水量和产量之间的散点图,观察得二者之间有非线性的关系。

然后利用曲线回归拟合的方法得到了最佳的拟合函数。

再通过残差进行了拟合准确性的检验。

针对问题二,我们充采用了BP神经网络对模型进行优化求解,得出了一个优化模型。

接下来按照题中要求将我们的模型与附录中的两个模型进行了比较,我们通过比较三个模型的预测产量与真实产量之间的相关性,说明了我们的改进模型优度是最高的。

针对问题三,非充分灌溉的条件下,我们以问题二中的模型作为目标函数,以灌水总量为约束条件建立了最优化的模型。

采用了差分进化算法对模型进行求解,得到了问题二模型之下作物生长各个阶段的灌水量,并对最终的结果进行了分析,选定了一个比较合理的方案。

关键词:曲线拟合残差检验BP神经网络差分进化算法
一、问题重述
问题背景
随着水资源供需矛盾的日益加剧,发展节水型农业势在必行。

智能灌溉应用先进的信息技术实施精确灌溉,以农作物实际需水量为依据,提高灌溉精确度,实施合理的灌溉方法,进而提高水的利用率。

作物水分生产函数无论对节水灌溉的区域规划和系统评估,或是非充分灌溉的应用均具有深刻意义。

非充分灌溉是指在灌溉水不能完全满足作物的生长发育全过程需水量的情况下,以作物水分生产函数为理论依据,将有限的水科学合理(非足额)安排在对产量影响比较大、并能产生较高经济价值的需水临界期供水,从而建立合理的水量与产量关系及分配模式,在水分利用效率、产量、经济效益三方面寻求有效均衡,实现经济效益最大化。

然而由于作物各生育阶段水分对产量影响的机理甚为复杂,目前尚难用严格准确的物理方程来描述。

问题提出
问题1.基于表1中作物1实测需水量与产量的对应数据,建立该作物全生育期的水分生产函数的模型,即总产量与需水量之间的解析关系,给出详细过程及拟合效果。

问题2.作物的全生育期可以分为若干个生育阶段,以水稻为例,可以分为返青、分蘖、拔节孕穗、抽穗开花、乳熟、黄熟6个生育阶段。

不同阶段灌溉水量不足均会对最终的产量有影响,表2为某地晚稻分蘖至乳熟各阶段受旱情况对产量影响的数据。

基于表2的数据,利用附录中材料,选取某类优化算法,寻求最优的作物水分生产函数模型,得到各阶段的蒸发蒸腾量(可以理解为灌水量)与最终产量之间的关系。

问题3.基于已有材料对于非充分灌溉的描述,结合表2晚稻蒸发蒸腾量与产量数据,选择合适的作物水分生产函数(可以选择已得到的模型或者机理模型),建立该地区水稻的非充分灌溉制度的优化模型。

在总供水量分别为充分灌溉总水量的40%,60%,80%的情况下,解决供水量在各生育期(从分蘖到乳熟阶段)合理分配的问题,应包含阶段变量、决策变量、状态变量、系统方程、目标函数、初始条件及约束条件等描述(背景材料及提示见附录),最后给出求解方案。

二、问题分析
随着水资源供需矛盾的日益加剧,发展节水型农业势在必行。

智能灌溉应用先进的信息技术实施精确灌溉,以农作物实际需水量为依据,提高灌溉精确度,实施合理的灌溉方法,进而提高水的利用率。

本文建立了灌水量和最终产量之间的关系,以及在干旱条件下,每个阶段具体水量分配的方案。

针对问题一,结合题中所给的数据,先做出了灌水量和产量之间的散点图,观察得二者之间有非线性的关系。

然后利用曲线回归拟合的方法得到了最佳的拟合函数。

再通过残差进行了拟合准确性的检验。

针对问题二,我们充分考虑了作物生长的四个阶段对最总产量的影响,提出了一个经验公式。

然后选用BP神经网络对我们的模型进行了优化求解。

接下来按照题中要求将我们的模型与附录中的两个模型进行了比较,我们用折线图拟合度以及与模型的相关度两个值证明了所建立模型的优度。

针对问题三,非充分灌溉的条件下,我们分别以Jansen模型和Blank模型作为目标函数,以灌水总量为约束条件建立了最优化的模型。

采用了差分进化算法对模型进行求解,得出了两种模型之下作物生长各个阶段的灌水量,并对最终的结果进行了分析,选定了一个比较合理的方案。

三、模型假设
1.作物的总产量只与灌水量有关,和其它因素无关。

2.土壤渗透量忽略不计,即灌溉的水都可以被吸收。

3.当灌水量超过理想状态下的灌水量时仍然认为是充分灌溉。

4.各阶段对灌水量的要求对产量都是有影响的。

四、符号说明
x需水量
y产量
Y a实际产量
Y m最大产量
B i各阶段需水系数
ET a实际耗水量
ET m水分充足时作物需水量
五、模型的建立与求解
问题一
我们先将数据导入matlab,做出以需水量为自变量,产量为因变量的散点图,观察二者之间的分布关系,结果如图5.1所示。

然后运用SPSS软件对这两个量进行曲线拟合结果如表5.2,5.3和图5.4所示。

5.4
通过对上述图标进行分析,可知二次项的函数对数据拟合效果最好,其R方的值达到了1,因此我们选定其函数关系为:
472
.478186.507.0y 2-+-=x x
问题二
基于BP 神经网络的水分生产函数模型的建立
一个3层的BP-人工神经网络模型能够实现任意连续映射,3层BP 网络模型,如图所
示。

式中,xij ,yi 一一处理后的作为输入和输出的训练样本,均为比值,无量纲。

图5.23层BP 神经网络模型
图中的ij W 表示输入层第i 个神经元与隐含层第j 个神经元之间的连接权值,jt V 表示隐含层第j 个神经元与输出层第t 个神经元之间的连接权值。

设隐含层第j 个神经元的阈值为j θ,输出层第t 个神经元的阈值为n y ,则隐含层第j 个神经元的输入为
j
i n
1
ij j -X θ∑==j W S 式中,i X 为输入层第i 个神经元的输入值;n 为输入层的神经元个数。

输出为:
p
..., 1,2,=j b j j ∑∑=S f 式中,p 为隐含层神经元个数,f 为激励函数,其作用是模拟生物神经元的非线性特性。

输出层第t 个神经元的输入为
n
j p
1j jn n -b v =γ∑=L 计算过程中,隐含层神经元的激励函数取为S 型,二输出层神经元的激励函数取为非线性。

为了提高网络的性能,减少其陷入局部极小值的可能性,提高收敛速度,通常采用改进的BP 算法——动量法来实现,即
/W)
η(=W (t)W μ+ 1)+(t W + (t)W = 1)+(t W ij ij ij ij ij ∂∆∆∆式中,μ为动量因子,∂为误差函数。

时刻t 网络的误差函数定义为:
(t)d -(t)y 1/2= )(t E j p
1j j ∑=式中,j y (t )为输出层第j 个神经元在时刻t 的实际输出,j d (t)为该时刻的希望输出,q 为输出层的神经元数。

当E (t )≤ε(ε为预先给定的误差)时,网络停止训练,此时的网络模型就是所需要的。

利用Matlab 对所建立的模型进行求解,将运行结果结合模型准备中标准化处理后的公式,最终得到的各阶段的蒸发蒸腾量(可以理解为灌水量)与最终产量之间的关系式为:
446
.1751*694.21*545.15*625.35*37.74321a -+++=a a a a ET ET ET ET Y 模型对比
我们分别将标准产量和Jensen 模型、Blank 模型和我们的改进型模型估计出的产量进行相关性分析,结果如表5.5,5.6,5.7。

做出四者的折线图如5.8所示
5.8
通过上述相关性检验可得,我们所建立的改进模型与理论数据的相关性是最高的,再结合三者的折线图可以得出我们所建立的模型拟合度最高。

问题三
在此问题中,我们做出假设:
每个阶段的降雨量等于这个阶段的排水量加上渗透量。

即不考虑降水对灌溉的影响。

首先计算的充分灌溉的条件下,四个阶段的总水量为474mm。

则在题设40%,60%,80%的条件下的总灌溉量分别为189.6mm,284.4mm,379.2mm。

模型建立
1.阶段变量:上述4个生育阶段为阶段变量i,i=1,2,…,n,n=4。

2.决策变量:各阶段的实际灌水量i m ,i=1,2,…,n,n=4。

3.状态变量:各阶段初可供灌溉的水量i q ,i=1,2,…,n,n=4。

4.系统方程:i i i m q q -=+1,表示分配给第i+1个阶段到第i 个阶段的供水量。

5.阶段指标函数:i i mi
ai i i ET ET m g λ()(=,表示供水量i m 分配给第i 阶段获得的效益。

6.初始条件:0q q i =。

7.约束条件: 状态约束:0
0q q i ≤≤
决策约束:⎪⎩⎪
⎨⎧≤≤≤∑n
i
i i i q m q m 008.目标函数:MAX C
ET B Y +=∑ai i a 模型求解
针对建立的优化模型,本文设计了相应的差分进化算法进行求解。

差分进化算法【1】的具体步骤为:
Step1:初始化种群规模NP,收缩因子F,交叉概率CRmin和CRmax。

在每个变量的定义域内,对所有的个体赋随机初值,设T为最大的迭代步数,设置当前迭代步数为0,即t=0.
Step2:求出所有个体的适应值大小,通过目标函数选择具有最优适应值的个体。

Step3:计算被选出个体的精度是否达到要求,或者是否达到最大迭代步数T,如果达到则退出循环,否则继续后续计算。

Step4:针对所有目标个体x i t (i=1,2,…,NP)执行Step5至Step7,生成第g+1代种群。

Step5:选出三个与x i t 不相等的个体,对其进行变异处理,得到变异个体V i t 1
Step6:对变异个体进行交叉处理,得到实验个体u i t 1Step7:进行选择操作,生成t+1代个体x i t 1Step8:t=t+1,返回Step3MATLAB编程,得到相应的四个阶段的解为:
三种情况下,各阶段所占的比例如下:
结论:
由饼状图可以看出,随着水量的增加,拔节孕穗期所占的比例在逐渐减少,而其他时期的比例则在逐渐增加。

说明灌溉水量的决策应根据总灌溉量做出相应调整。

六、模型评价
模型的优点:
1.我们利用回归拟合模型求出函数,还可以自己对结果进行残差的检验,检验模型的精度。

2.模拟退火算法具有描述简单,使用灵活,运用广泛,运行效率高和较少约束。

3.我们利用差分进化算法求解非线性函数优化问题表现极强的稳健性,求解多个变量的函数优化问题。

模型的缺点:
1.回归模型比较简单,回归方程的假设严格,需要知道引起因变量改变的所有解释变量因素。

七、参考文献
[1]魏占民,陈亚辛,史海滨,等.BP神经网络的春小麦作物-水分模型的初步研究
[J].灌溉排水,2002,21(2):12-16.
[2]崔远来,李远华,李新健,王春日.非充分灌溉条件下稻田优化灌溉制度的研究,水利学报,1995年第10期.
[3]卢文喜,曲武,贾小丰,王喜华.吉林省西部人工草地优化灌溉制度的研究[J].节水灌溉.2011(01).
[4]叶芳毅,李忠武,李裕元,曾光明,彭亿,张棋,梁红玲,王亚梅.水稻生长模型发展及应用研究综述[J].安徽农业科学.2009(01).
附录(BP神经网络代码)
t=[113.2107.6133.9132.1128.2129.7140.5135.3128.4130.1
96.688.39177.999.492.5112.910883.3102.6
92.184.9106.993.985.371.9108.6101.783.494.7
67.264.270.36578.769.468.66572.361.4]
p=[57574576.561114555.555205329.563456040.554426130.5];
%148.1111.8124.789.47138.5
P=p/7138.5;
T(1,:)=t(1,:)/141.8;
T(2,:)=t(2,:)/111.8;
T(3,:)=t(3,:)/124.7;
T(4,:)=t(4,:)/89.4;
pr=[0,1;0,1;0,1;0,1];
net=newff(pr,[11],{'logsig''purelin'});
net.trainparam.show=10000;%每次循环50次
net.trainParam.epochs=500;%最大循环500次
net.trainparam.goal=0.001;%期望目标误差最小值net=train(net,T,P);%对网络进行反复训练Y=sim(net,T)
InputWeights=net.iw{1,1};
InputWeights
%取隐层到输出层的权值
LayerWeights=net.lw{2,1};
LayerWeights
b1=net.b{1}
b2=net.b{2}
%画图
figure(1)
plot(P,':o')
hold on
plot(Y,'-*')
error=sum(abs(Y-P)./P) 17110.690.495.273.65076。

相关文档
最新文档