一种精准农业的水肥一体化分配方法与流程

文档序号:23132456发布日期:2020-12-01 13:06阅读:259来源:国知局
一种精准农业的水肥一体化分配方法与流程

本发明属于农业生产与运营管理领域,具体涉及一种精准农业的水肥一体化分配方法。



背景技术:

在精准农业生产与运营管理中,水肥管理是一项重要的生产活动,对农业生产所获得的经济效益和环境效益有重要影响。精准农业中的水肥管理问题可以理解为结合作物的生长状态与需求信息,在何时将何量的水肥资源补充给何种作物,以满足作物生长所需的营养条件。水肥一体化技术已被广泛应用于农业的水肥管理过程,该技术来源于英文合成词“fertigation”,即“fertilization”施肥和“irrigation”灌溉结合的技术,是当今世界公认的一项高效控水节肥的农业新技术。水肥一体化技术通过配套的施肥系统及设备实现水肥一体精准施入,有效提高水分和肥料的利用率,既保护环境,又提高产量、节省劳力、增加效益,促进农业的可持续发展。

在精准农业的水肥管理方面,现有技术更多关注操作层面的水肥管理方法,例如关于水肥一体化系统以及装置的设计,这些系统及装置更注重在短时间内为作物及时补充适宜的资源,而没有考虑到水肥一体化系统的长期经济和环境目标。另外,在农业生产实践中,水肥资源通常是有限的,且需要在多种作物的不同生长期进行分配。现有的水肥分配方法通常基于农民的经验,即为每一种作物每一个生长期补充其需求区间的资源量,这种方法使得资源利用率低下,且由于资源有限导致资源无法在不同作物间进行高效分配,使得水肥管理的经济效益大打折扣。因而迫切需要一种水肥一体化分配方法,实现有限资源条件下作物整个生育期内的水肥补充,以最大化系统的长期经济和环境收益。



技术实现要素:

本发明所要解决的技术问题,是精准农业的水肥一体化分配方法设计。该分配方法采用运筹优化的建模思想,在优化过程中同时考虑水肥系统的长期经济与环境目标,将有限的水肥资源在不同时期分配给不同作物,并设计了混合遗传算法对该模型进行求解。

为了达到上述目的,本发明的技术方案如下:

一种精准农业的水肥一体化分配方法,步骤如下:

第一步,模型建立

精准农业的水肥一体化分配问题可以表示如下:温室中有若干种类型的作物需要在若干个时期内进行水肥补充,每一个作物的所有时期构成了其整个生育期,每一种作物在每一个时期对资源的需求存在一个区间,肥料与水的总可用量均为定值,决策的结果是在有限水肥资源条件下,为每种作物的每个生长期分配适量的水肥资源,以最大化水肥管理系统的经济与环境利益。该问题的示意图如图1所示。以下是问题模型中的符号及其所代表的意义:

主要集合:

i:作物种类的集合,i={1,2,..,m},m表示作物的类型;

t:作物生长期的集合,t={1,2,..,n},n表示作物生长期的数目;

j:肥料种类的集合,在本发明中主要包括氮肥、磷肥以及钾肥三种,j={1,2,3}。

主要参数

ai:作物i的种植面积,i∈i,ha;

pi:作物i的价格,i∈i,cny/kg;

cw:农业灌溉水的价格,i∈i,cny/m3

cj:肥料的价格,j∈j,cny/kg;

wtot:可用水资源总量,m3

:肥料j的总可用量,j∈j,kg;

dit:二元参数,若作物i的时期t属于“关键”时期,则dit=1;否则,dit=0;

δitj:在作物i的生长期t,适宜其生长的水资源与肥料j之间的比例,i∈i,t∈t,j∈j,kg/m3

ic:购苗成本,cny;

ce:单位电量的价格,cny/kw·h;

p:灌溉机的功率,kw;

:灌溉机灌溉单位水肥液需要的时间,h/m3

ρit:作物i在时期t所需的水肥液的密度,i∈i,t∈t,kg/m3

:作物i在时期t对水的最小需求量,i∈i,t∈t,m3

:作物i在时期t对水的最大需求量,i∈i,t∈t,m3

决策变量:

wit:作物i在时期t分到的水量,i∈i,t∈t,m3

在本发明中,有以下三个关键的定义:

定义1:水肥比例参数δitj

在本发明提出的精准农业的水肥一体化分配方法中,某一作物i在某一时期t内所需的水和肥料j的比例δitj是固定的。这是为了保证水肥的精准配比,为作物提供适宜其生长的精准营养环境,该比例通过农民的农业生产经验、专家学者的知识以及大田实验数据得到。由于水肥之间存在固定比例,因而精准农业中的水肥分配问题变为:在水肥资源有限的条件下,考虑不同作物在不同时期的水肥比例需求,为不同作物不同时期分配一定量的水资源。

定义2:作物水肥生产函数

由于作物产量与作物在整个生育期得到的水肥资源具有重要关联,而作物产量与水肥管理系统的收益相关,因而必须刻画作物产量与水肥的关系。在农业生产领域,通常用水肥生产函数(waterandfertilizerproductionfunctions)表示作物产量与水肥输入量之间的关系。在本发明中,作物的水肥生产函数如式(1)所示:

yi=a0i+(a1iwqi+a2inqi+a3ipqi+a4ikqi)/ai(1)

其中,yi表示单位面积的作物i的产量;wqi表示作物i在整个生育期内得到的总水量,由于本发明研究的问题发生于温室背景,因而作物得到的总水量不包括降水量,仅包括灌溉水量,nqi、pqi、kqi分别表示作物i在整个生育期内得到的氮肥、磷肥以及钾肥总量,a0i,a1i,a2i,a3i,a4i表示作物i的水肥生产函数的系数,它们的数值通过对田间实验数据进行统计分析得到。

定义3:作物“关键”与“非关键”生长期

本发明结合农业生产经验,定义了作物的“关键”生长期以及“非关键”生长期。在作物“关键”生长期内,若分配的资源低于其最低需求,则作物出现严重减产甚至颗粒无收,上述水肥生产函数失效;在作物“非关键”生长期内,允许分配的资源低于其最低需求,作物产量与水肥输入量的关系遵循上述水肥生产函数。

模型的目标包括水肥管理系统的长期经济与环境目标。经济目标指的是最大化系统的经济利润,即作物的总收益gr减去水肥管理过程的总成本cf。总收益的计算见式(2)。总成本包括购苗成本ic,耗水成本wc,,耗肥成本fc,,灌溉耗电成本ec。wc,、fc、ec的计算分别见式(3)、(4)、(5)。

在模型中,环境目标指的是最大化单位资源获得的收益,即环境收益。为了量化异质资源的总环境收益,首先需要对水肥管理过程中水资源以及三种化肥资源的消耗量进行归一化:

其中,ar表示归一化后资源的相对消耗总量,分别表示所有作物在整个生育期内消耗的水、氮肥、磷肥以及钾肥总量,

基于以上分析,本发明提出的精准农业的水肥一体化分配模型如下:

目标:

其中,pf指的是水肥管理系统的收益,pf=gr-(ic+wc+fc+ec)。ω1和ω2分别代表经济目标与环境目标的在优化中所占的比重,二者之和为1。

约束:

该模型中,公式(8)为模型的目标,即最大化水肥管理系统的经济以及环境收益。

约束(9)定义了作物处于“关键”以及“非关键”生长期时允许的最低以及最高补充水量。

约束(10)表示为所有作物整个生育期内补充的水量不应超过最大可用水量。

约束(11)表示为所有作物整个生育期内补充的肥料量不应超过最大可用肥料量。

约束(12)表示为每种作物每个时期分配的水量为正整数。

第二步,求解模型

本发明提出一种混合遗传算法(hybridgeneticalgorithm,hga)求解上述模型。主要步骤如下:

令bbest表示当前代最好个体的适应度值,令maxit表示解的最大稳定代数,git表示当前迭代代数,maxcurrent表示当前解的稳定代数。令bbest=0,git=1,maxcurrent=0。

步骤1.1:产生初始种群

在产生初始种群之前,首先介绍问题的编码方式。对问题进行编码是将遗传算法应用于特定问题的关键步骤,在遗传算法中,采用一条染色体表示问题的一个解。在本发明中,用(g1,g2,…,gl)表示一条染色体,其中元素(也叫做基因)g表示某一作物在某一生育时期内需要补充的水量,l表示染色体的长度,其大小等于作物种类m与作物生长期阶段数n的乘积。在该染色体中,元素所处位置与作物种类以及其生长期的对应关系如下:对于第f(1≤f≤l,f∈n+)个位置,f除以m并向下取整为作物的类型i;f除以m得到的余数为其所处的生长期t,若余数为0,表示其处于第n个生长期。假设h表示初始种群中的个体数,h个初始个体保存在集合pinitial中。

步骤1.1.1:为每条染色体中每一个位置依序随机分配区间内的值。

步骤1.1.2:待所有基因赋值完毕,将所有基因的数值相加,验证是否符合总可用水量wtot。然后结合水肥配比参数δ,计算所有作物在整个生育期内三种肥料的总补给量,验证是否符合总可用量当四项均符合,一个初始个体构造完成,并将其加入集合pinitial;若有一项不符合,转到步骤1.1.1。

步骤1.1.3:重复步骤1.1.1至1.1.2,直到得到h个初始个体以及由它们构成的集合pinitial。

步骤1.2:交叉过程

交叉过程示意图如图2所示,具体过程如下:

假设交叉后的所有个体存储在集合pcrossover里面,交叉概率为pc。

步骤1.2.1:随机选择pinitial中的两个个体p1和p2,然后随机生成(0,1)之间的数字rn,若rn大于pc,将p1和p2加入集合pcrossover,重复执行该步骤;否则,执行步骤1.2.2。

步骤1.2.2:分别从p1和p2中随机选择d个位置(0<d<l,d∈n+),然后将p1和p2中这d个位置处的基因进行交换,得到交叉后的两个个体,将这两个个体加入到集合pcrossover。

步骤1.2.3:重复步骤1.2.1至1.2.2,直到得到2h个交叉后的个体以及由它们构成的集合pcrossover中。

步骤1.3:变异过程

假设变异后的所有个体存储在集合pmutate里面,交叉概率为pm,每一次变异局部搜索最大次数为lit。

步骤1.3.1:对于pcrossover中的个体m1,随机生成(0,1)之间的数字rn,若rn大于pm,将m1加入集合pmutate,重复执行该步骤;否则,令m1为局部搜索的当前解scurrent,执行步骤1.3.2。

步骤1.3.2:从scurrent中随机选择一个位置删掉该位置处的数值。若dit=1,随机生成区间内的一个正整数否则,随机生成区间内的一个正整数替换处的数值,得到scurrent的一个邻域解,记为sneighbor。

步骤1.3.3:根据式(13)分别计算scurrent和sneighbor的适应度值vfitness,若sneighbor的值大于scurrent,将sneighbor赋给scurrent。

其中,ptot为惩罚值项,表示在算法求解过程中因为违反约束(10)和(11)而产生的惩罚,ptot的计算见式(14)。

其中,分别表示违背约束(10)以及(11)产生的惩罚值,的计算分别见式(15)和(16)。

在式(15)以及(16)中,pe表示惩罚系数,其值为一个极大的正整数。

步骤1.3.4:重复步骤1.3.2至1.3.3共lit次,结束一次变异过程,得到一个变异后的个体pu,将pu加入到集合pmutate。

步骤1.3.5:重复步骤1.3.1至1.3.4,直到得到2h个变异后的个体,并存储在集合pmutate中。

步骤1.4:选择过程

假设选择出的个体保存在集合pselection中。

步骤1.4.1:将初始种群pinitial与变异后的后代种群pmutate合并成为ptotal。

步骤1.4.2:根据公式(13)计算ptotal种群中所有个体的适应度值,选择适应度值最大的个体加入pselection,此步骤是保证初始种群以及后代种群中的最好解得以保存

步骤1.4.3:从ptotal随机选择两个个体,根据公式(13)计算这两个个体的适应度值,选择适应度值更大的个体加入pselection。

步骤1.4.4:重复步骤1.4.3共h-1次,选出h-1个个体,这些个体和步骤1.4.2中选出的个体共同组成h个个体进入下一代进行迭代。

步骤1.5:将pselection赋值给pinitial。

步骤1.6:令maxfitness等于步骤1.4.2中适应度最大的个体的适应度值。若maxfitness大于bbest,bbest=maxfitness,maxcurrent=0,git=git+1,转到步骤1.2.1;若maxfitness小于等于bbest,maxcurrent=maxcurrent+1,若maxcurrent小于maxit,git=git+1,转到步骤1.2.1,若maxcurrent等于maxit,结束程序,输出pselection中的第一个个体,即为水肥资源的分配结果,输出bbest,即为水肥管理过程获得的经济以及环境收益总和。

本发明的有益效果:

本发明基于现有精准农业水肥一体化分配方法的局限性,提出一种新的水肥一体化分配方法。在模型部分,构建了基于运筹优化的数学模型,同时考虑了水肥管理系统的长期经济目标以及环境目标;在求解部分,提出混合遗传算法求解上述模型。本发明为求解精准农业中的水肥分配问题提出了求解思路,将有助于提高精准农业的水肥管理效率,促进精准农业的可持续性发展。

附图说明

图1精准农业中水肥一体化分配问题示意图。

图2交叉算子示意图。

具体实施方式

下面结合示例来对本发明进一步说明。

令bbest表示当前代最好个体的适应度值,解的最大稳定代数为200,git表示当前迭代代数,maxcurrent表示当前解的稳定代数。令bbest=0,git=1,maxcurrent=0。

步骤1.1:产生初始种群

在本发明中,用(g1,g2,…,gl)表示一条染色体,其中元素(也叫做基因)g表示某一作物在某一生育时期内需要补充的水量,l表示染色体的长度,其大小等于作物种类m与作物生长期阶段数n的乘积。假设作物种类为10,作物生长期阶段数为6,则l为60。在该染色体中,元素所处位置与作物种类以及其生长期的对应关系如下:对于第f(1≤f≤60,f∈n+)个位置,f除以10并向下取整为作物的类型i;f除以10得到的余数为其所处的生长期t,若余数为0,表示其处于第6个生长期。初始种群设置为100,100个初始个体保存在集合pinitial中。

步骤1.1.1:为每条染色体中每一个位置依序随机分配区间内的值。

步骤1.1.2:待所有基因赋值完毕,将所有基因的数值相加,验证是否符合总可用水量wtot。然后结合水肥配比参数δ,计算所有作物在整个生育期内三种肥料的总补给量,验证是否符合总可用量当四项均符合,一个初始个体构造完成,并将其加入集合pinitial;若有一项不符合,转到步骤1.1.1。

步骤1.1.3:重复步骤1.1.1至1.1.2,直到得到100个初始个体以及由它们构成的集合pinitial。

步骤1.2:交叉过程

交叉过程示意图如图2所示,具体过程如下:

假设交叉后的所有个体存储在集合pcrossover里面,交叉概率为0.8。

步骤1.2.1:随机选择pinitial中的两个个体p1和p2,然后随机生成(0,1)之间的数字rn,若rn大于0.8,将p1和p2加入集合pcrossover,重复执行该步骤;否则,执行步骤1.2.2。

步骤1.2.2:分别从p1和p2中随机选择4个位置,然后将p1和p2中所选4个位置处的基因进行交换,得到交叉后的两个个体,将这两个个体加入到集合pcrossover。

步骤1.2.3:重复步骤1.2.1至1.2.2,直到得到200个交叉后的个体以及由它们构成的集合pcrossover中。

步骤1.3:变异过程

假设变异后的所有个体存储在集合pmutate里面,交叉概率为0.1,每一次变异局部搜索最大次数为100。

步骤1.3.1:对于pcrossover中的个体m1,随机生成(0,1)之间的数字rn,若rn大于0.1,将m1加入集合pmutate,重复执行该步骤;否则,令m1为局部搜索的当前解scurrent,执行步骤1.3.2。

步骤1.3.2:从scurrent中随机选择一个位置删掉该位置处的数值。若dit=1,随机生成区间内的一个正整数否则,随机生成区间内的一个正整数替换处的数值,得到scurrent的一个邻域解,记为sneighbor。

步骤1.3.3:根据式(13)分别计算scurrent和sneighbor的适应度值vfitness,若sneighbor的值大于scurrent,将sneighbor赋给scurrent。

步骤1.3.4:重复步骤1.3.2至1.3.3共100次,结束一次变异过程,得到一个变异后的个体pu,将pu加入到集合pmutate。

步骤1.3.5:重复步骤1.3.1至1.3.4,直到得到200个变异后的个体,并存储在集合pmutate中。

步骤1.4:选择过程

假设选择出的个体保存在集合pselection中。

步骤1.4.1:将初始种群pinitial与变异后的后代种群pmutate合并成为ptotal。

步骤1.4.2:根据公式(13)计算ptotal种群中所有个体的适应度值,选择适应度值最大的个体加入pselection,此步骤是保证初始种群以及后代种群中的最好解得以保存

步骤1.4.3:从ptotal随机选择两个个体,根据公式(13)计算这两个个体的适应度值,选择适应度值更大的个体加入pselection。

步骤1.4.4:重复步骤1.4.3共99次,选出99个个体,这些个体和步骤1.4.2中选出的个体共同组成100个个体进入下一代进行迭代。

步骤1.5:将pselection赋值给pinitial。

步骤1.6:令maxfitness等于步骤1.4.2中适应度最大的个体的适应度值。若maxfitness大于bbest,bbest=maxfitness,maxcurrent=0,git=git+1,转到步骤1.2.1;若maxfitness小于等于bbest,maxcurrent=maxcurrent+1,若maxcurrent小于maxit,git=git+1,转到步骤1.2.1,若maxcurrent等于maxit,结束程序,输出pselection中的第一个个体,即为水肥资源的分配结果,输出bbest,即为水肥管理过程获得的经济以及环境收益总和。

在实验中,总可用水量为2500m3,氮肥、磷肥、钾肥总可用量分别为130、110、120kg。数值实验结果表明,使用本发明提出的方法得到的总收益比使用基于经验法的水肥补充策略得到的收益高8.75%。可以看出,本发明的方法可以提高精准农业的水肥一体化分配效率,促进可持续农业的发展。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1