一种铁皮石斛生长环境预测方法转让专利

申请号 : CN201711282227.X

文献号 : CN108133282B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 丁金婷谢翻翻屠杭垚

申请人 : 浙江大学城市学院

摘要 :

本发明涉及一种铁皮石斛生长环境预测方法,包括生长环境预测模型和改进的BP神经网络的步骤,其中生长环境预测模型包括对获得的参数作归一化处理,使神经网络对样本具有很好的拟合性,改进的BP神经网络的步骤包括一级模糊控制器对输入误差信号e(n)处理和二级模糊控制器对输入误差变化率进行处理。本发明的有益效果是:本发明提供了一种改进的BP神经网络算法用于植物生长环境预测,改进的BP神经网络克服了传统BP神经网络收敛速度慢的缺陷,同时改变步长,从而利用模糊控制根据生长环境做出自适应变步长,提高了收敛速度。

权利要求 :

1.一种铁皮石斛生长环境预测方法,其特征在于,包括以下步骤:第一步,生长环境预测模型:

首先对获得的参数作归一化处理,使神经网络对样本具有很好的拟合性:其中,x′为归一化后数值,x为当前数值,xmax为样本最大值,xmin为样本最小值;

设置神经网络的输入层节点数为A,A代表影响铁皮石斛生长环境的主要因素个数,即土壤温度、土壤湿度、空气温度、空气湿度、光照、二氧化碳和时间;输出层节点数为B,B代表影响铁皮石斛生长环境预测的主要因素个数,一般设置A=B;隐含层节点C由输入和输出的要求而定;

为缩短网络的训练时间,采用串行输入方式,输入样本已知N个训练数据,第N+1个数据为导师进行训练;结束后,输入数据依次向后移动一个数据为下一组输入数据,以第N+2个数据为导师进行训练,依此类推下去;由此可以掌握神经网络预测的规律,预测模型为:Dn+1=F(Dn,Dn‑1,Dn‑2,Dn‑3,...,Dn‑m)F(Dn)表示历史数据经过神经网络预测映射的函数,Dn表示在n时刻环境参数的值;

第二步,改进的BP神经网络的步骤:首先对数据进行处理,将误差较大的数据处理掉,其次利用二级模糊控制器对其他数据误差进行处理;

1)一级模糊控制器对输入误差信号e(n)处理:将神经网络收敛造成的误差输入一级模糊控制器,与上一次误差e(n‑1)进行对比,可判断误差之差(e(n)‑e(n‑1))是收敛还是发散;通过设置的隶属函数,分为误差高速上升PB1、误差中速上升PM1、误差低速上升PS1、误差稳定01、误差低速下降NS1、误差中速下降NM1和误差高速下降NB1七种状态,进行模糊处理,根据设计的规则库为学习率和动量作出相应改变,从而调整步长:①如果e(n)为PB1状态时,那么将学习率适当减小,动量设置为0.01,取消这一次迭代,回到上一次迭代;

②如果e(n)为PM1状态时,那么将学习率和动量适当减小,继续下一次迭代;

③如果e(n)为PS1状态时,那么将学习率和动量适当减小,继续下一次迭代;

④如果e(n)为01状态时,那么学习率和动量保持不变,继续下一次迭代;

⑤如果e(n)为NS1状态时,那么将学习率和动量适当增大,继续下一次迭代;

⑥如果e(n)为NM1状态时,那么将学习率和动量适当增大,继续下一次迭代;

⑦如果e(n)为NB1状态时,那么将学习率和动量适当增大,继续下一次迭代;

2)二级模糊控制器对输入误差变化率 进行处理:将一级模糊控制器处理后的误差转化为误差变化率输入到二级模糊控制器,通过设置的隶属函数,分为误差率高速上升PB2、误差率中速上升PM2、误差率低速上升PS2、误差率稳定02、误差率低速下降NS2、误差率中速下降NM2和误差率高速下降NB2七种状态,再次对学习率和动量作出相应改变,从而调整步长:

①如果Δ为PB2状态时,那么将学习率适当减小,动量设置为0.01,取消这一次迭代,回到上一次迭代;

②如果Δ为PM2状态时,那么将学习率和动量适当减小,继续下一次迭代;

③如果Δ为PS2状态时,那么将学习率和动量适当减小,继续下一次迭代;

④如果Δ为02状态时,那么学习率和动量保持不变,继续下一次迭代;

⑤如果Δ为NS2状态时,那么将学习率和动量适当增大,继续下一次迭代;

⑥如果Δ为NM2状态时,那么将学习率和动量适当增大,继续下一次迭代;

⑦如果Δ为NB2状态时,那么将学习率和动量适当增大,继续下一次迭代。

说明书 :

一种铁皮石斛生长环境预测方法

技术领域

[0001] 本发明设计植物生长环境的预测方法,尤其涉及一种铁皮石斛生长环境预测方法。

背景技术

[0002] 铁皮石斛是我国传统的名贵中药材,其药理作用具有增强免疫、抗肿瘤、抗氧化、益肝胃、降血糖、养阴生津等功效。由于铁皮石斛生长环境比较特殊,自然繁殖率低,生长缓
慢等原因,铁皮石斛的供给一直严重不足,而其中影响铁皮石斛生长的重要因素为光照、温
度、湿度等,所以对其生长环境进行实时监测与预测可以保证在不好的情况下提前采取应
对措施,避免不必要的损失。
[0003] 目前BP神经网络因为具有良好的非线性拟合特性,对于解决植物生长环境方面有广泛应用。如果要求对大面积植物生长过程进行预测,需要大量数据进行多次有效学习,因
此学习时间和空间消耗是很大的。

发明内容

[0004] 本发明的目的是克服现有技术中的不足,提供一种快速且高效的铁皮石斛生长环境的预测方法。本发明的目的是通过以下技术方案实现的:
[0005] 这种铁皮石斛生长环境的预测方法,包括以下步骤:
[0006] 第一步,生长环境预测模型:
[0007] 首先对获得的参数作归一化处理,使神经网络对样本具有很好的拟合性:
[0008]
[0009] 其中,x′为归一化后数值,x为当前数值,xmax为样本最大值,xmin为样本最小值;
[0010] 设置神经网络的输入层节点数为A,A代表影响铁皮石斛生长环境的主要因素个数,即土壤温度、土壤湿度、空气温度、空气湿度、光照、二氧化碳和时间;输出层节点数为B,
B代表影响铁皮石斛生长环境预测的主要因素个数,一般设置A=B;隐含层节点C由输入和
输出的要求而定;
[0011] 为缩短网络的训练时间,采用串行输入方式,输入样本已知N个训练数据,第N+1个数据为导师进行训练;结束后,输入数据依次向后移动一个数据为下一组输入数据,以第N+
2个数据为导师进行训练,依此类推下去;由此可以掌握神经网络预测的规律,预测模型为:
[0012] Dn+1=F(Dn,Dn‑1,Dn‑2,Dn‑3,...,Dn‑m)
[0013] F(Dn)表示历史数据经过神经网络预测映射的函数,Dn表示在n时刻环境参数的值;
[0014] 第二步,改进的BP神经网络的步骤:
[0015] 首先对数据进行处理,将误差较大的数据处理掉,其次利用二级模糊控制器对其他数据误差进行处理;
[0016] 1)一级模糊控制器对输入误差信号e(n)处理:将神经网络收敛造成的误差输入一级模糊控制器,与上一次误差e(n‑1)进行对比,可判断误差之差(e(n)‑e(n‑1))是收敛还是
发散;通过设置的隶属函数,分为误差高速上升PB1、误差中速上升PM1、误差低速上升PS1、
误差稳定01、误差低速下降NS1、误差中速下降NM1和误差高速下降NB1七种状态,进行模糊
处理,根据设计的规则库为学习率和动量作出相应改变,从而调整步长:
[0017] ①如果e(n)为PB1状态时,那么将学习率适当减小,动量设置为0.01,取消这一次迭代,回到上一次迭代;
[0018] ②如果e(n)为PM1状态时,那么将学习率和动量适当减小,继续下一次迭代;
[0019] ③如果e(n)为PS1状态时,那么将学习率和动量适当减小,继续下一次迭代;
[0020] ④如果e(n)为01状态时,那么学习率和动量保持不变,继续下一次迭代;
[0021] ⑤如果e(n)为NS1状态时,那么将学习率和动量适当增大,继续下一次迭代;
[0022] ⑥如果e(n)为NM1状态时,那么将学习率和动量适当增大,继续下一次迭代;
[0023] ⑦如果e(n)为NB1状态时,那么将学习率和动量适当增大,继续下一次迭代;
[0024] 2)二级模糊控制器对输入误差变化率 进行处理:将一级模糊控制器处理后的误差转化为误差变化率输入到二级模糊控制器,通过设置的隶属函数,分为
误差率高速上升PB2、误差率中速上升PM2、误差率低速上升PS2、误差率稳定02、误差率低速
下降NS2、误差率中速下降NM2和误差率高速下降NB2七种状态,再次对学习率和动量作出相
应改变,从而调整步长:
[0025] ①如果Δ为PB2状态时,那么将学习率适当减小,动量设置为0.01,取消这一次迭代,回到上一次迭代;
[0026] ②如果Δ为PM2状态时,那么将学习率和动量适当减小,继续下一次迭代;
[0027] ③如果Δ为PS2状态时,那么将学习率和动量适当减小,继续下一次迭代;
[0028] ④如果Δ为02状态时,那么学习率和动量保持不变,继续下一次迭代;
[0029] ⑤如果Δ为NS2状态时,那么将学习率和动量适当增大,继续下一次迭代;
[0030] ⑥如果Δ为NM2状态时,那么将学习率和动量适当增大,继续下一次迭代;
[0031] ⑦如果Δ为NB2状态时,那么将学习率和动量适当增大,继续下一次迭代。
[0032] 本发明的有益效果是:本发明提供了一种改进的BP神经网络算法用于植物生长环境预测,改进的BP神经网络克服了传统BP神经网络收敛速度慢的缺陷,同时改变步长,从而
利用模糊控制根据生长环境做出自适应变步长,提高了收敛速度。

附图说明

[0033] 图1是发明神经网络预测模型示意图;
[0034] 图2是模糊控制器设计示意图;
[0035] 图3是隶属度函数示意图(一级与二级模糊控制器隶属度设计相同);
[0036] 图4是改进模型示意图;
[0037] 图5是拟合效果图;
[0038] 图6是预测效果图。

具体实施方式

[0039] 下面结合实施例对本发明做进一步描述。下述实施例只用于帮助理解本发明。对于本技术领域的普通技术人员,在不脱离本发明原理的前提下,还可以对本发明进行改进,
这些改进也落入本发明权利要求的保护范围内。
[0040] 为了进行预测,对植物生长环境进行监测,利用传感器检测的数据(周期为1小时),将数据输入改进的BP神经网络中进行预测,然后进行报警处理。
[0041] 首先对获得的参数作归一化处理,使神经网络对样本具有很好的拟合性:
[0042]
[0043] 其中,x′为归一化后数值,x为当前数值,xmax为样本最大值,xmin为样本最小值。
[0044] 设置神经网络的输入层节点数为A,A代表影响铁皮石斛生长环境的主要因素个数,即土壤温度、土壤湿度、空气温度、空气湿度、光照、二氧化碳和时间;输出层节点数为B,
B代表影响铁皮石斛生长环境预测的主要因素个数(一般设置A=B);隐含层节点C由输入和
输出的要求而定。
[0045] 为缩短网络的训练时间,采用串行输入方式,输入样本已知N个训练数据,第N+1个数据为导师进行训练。结束后,输入数据依次向后移动一个数据为下一组输入数据,以第N+
2个数据为导师进行训练,依此类推下去。由此可以掌握神经网络预测的规律,预测模型为:
[0046] Dn+1=F(Dn,Dn‑1,Dn‑2,Dn‑3,...,Dn‑m,)
[0047] F(Dn)表示历史数据经过神经网络预测映射的函数,Dn表示在n时刻环境参数的值。
[0048] 第二步,改进的BP神经网络的步骤:
[0049] 首先对数据进行处理,将误差较大的数据处理掉,防止随机性带来的误差对整个预测过程带来影响,其次利用二级模糊控制器对其他数据误差进行处理。
[0050] 1)一级模糊控制器对输入误差信号e(n)处理:将神经网络收敛造成的误差输入一级模糊控制器,与上一次误差e(n‑1)进行对比,可判断误差之差(e(n)‑e(n‑1))是收敛还是
发散;通过设置的隶属函数,分为误差高速上升PB1、误差中速上升PM1、误差低速上升PS1、
误差稳定01、误差低速下降NS1、误差中速下降NM1和误差高速下降NB1七种状态,进行模糊
处理,根据设计的规则库为学习率和动量作出相应改变,从而调整步长:
[0051] ①如果e(n)为PB1状态时,那么将学习率适当减小,动量设置为0.01,取消这一次迭代,回到上一次迭代;
[0052] ②如果e(n)为PM1状态时,那么将学习率和动量适当减小,继续下一次迭代;
[0053] ③如果e(n)为PS1状态时,那么将学习率和动量适当减小,继续下一次迭代;
[0054] ④如果e(n)为01状态时,那么学习率和动量保持不变,继续下一次迭代;
[0055] ⑤如果e(n)为NS1状态时,那么将学习率和动量适当增大,继续下一次迭代;
[0056] ⑥如果e(n)为NM1状态时,那么将学习率和动量适当增大,继续下一次迭代;
[0057] ⑦如果e(n)为NB1状态时,那么将学习率和动量适当增大,继续下一次迭代。
[0058] 2)二级模糊控制器对输入误差变化率 进行处理:将一级模糊控制器处理后的误差转化为误差变化率输入到二级模糊控制器,通过设置的隶属函数,分为
误差率高速上升PB2、误差率中速上升PM2、误差率低速上升PS2、误差率稳定02、误差率低速
下降NS2、误差率中速下降NM2和误差率高速下降NB2七种状态,再次对学习率和动量作出相
应改变,从而调整步长:
[0059] ①如果Δ为PB2状态时,那么将学习率适当减小,动量设置为0.01,取消这一次迭代,回到上一次迭代;
[0060] ②如果Δ为PM2状态时,那么将学习率和动量适当减小,继续下一次迭代;
[0061] ③如果Δ为PS2状态时,那么将学习率和动量适当减小,继续下一次迭代;
[0062] ④如果Δ为02状态时,那么学习率和动量保持不变,继续下一次迭代;
[0063] ⑤如果Δ为NS2状态时,那么将学习率和动量适当增大,继续下一次迭代;
[0064] ⑥如果Δ为NM2状态时,那么将学习率和动量适当增大,继续下一次迭代;
[0065] ⑦如果Δ为NB2状态时,那么将学习率和动量适当增大,继续下一次迭代。
[0066] 其中对误差和误差率的隶属度函数设计如图3所示,可处理为{‑3,‑2,‑1,0,1,2,3}的七值信号,分别代表PB1/PB2,PM1/PM2,PS1/PS2,01/02,NS1/NS2,NM1/NM2,NB1/NB2七
种状态。这里采取一级模糊与二级模糊规则库设计相同方法如表1所示。
[0067] 表1误差/误差率各状态下学习率与动量改变规则库
[0068]
[0069] 最终改进的BP神经网络模型结构如图4所示,首先将铁皮石斛生长环境参数输入到BP神经网络,然后将预测与实际测量误差输入到一级模糊控制器中,二次计算的误差进
行求导输入到二级模糊控制器,进而自适应改变动量与学习率,最后输出到神经网络中,从
而预测生长环境的变化。
[0070] 为了检验改进的BP神经网络与传统的BP神经网络和其他改进BP神经网络的效果,将检测出的同一组铁皮石斛生长环境数据分别输入到各网络中,结果预测比较如下表2所
示。
[0071] 表2预测结果
[0072]
[0073] 结果表明本发明BP神经网络具有良好的误差收敛效果,且速度更快。
[0074] 预测结果:评价一个神经网络的好坏,从神经网络的拟合和预测两方面可以看出。其中拟合的好坏由训练方法决定,而预测的结果又是由拟合的好坏决定。如果参数设置不
合理造成过度拟合,预测的精度就会下降。如图5和图6所示,分别为拟合和预测图,图中是
对于20天得到的1920组数据经过等间隔的采样(周期1小时),排除错误数据后,得到225组
数据,将前面125组数据作为训练数据,后面100组作为检测数据,其中实线表示实际测量数
据,虚线表示其预测值,因此本模型可以预测提前1小时的生长环境参数变化,从而对其采
取相应措施。