基于人类进化基因表达式编程的麦蚜数量预测方法及系统技术方案

技术编号:11418384 阅读:123 留言:0更新日期:2015-05-06 19:48
本发明专利技术公开了基于人类进化基因表达式编程的麦蚜数量预测方法及系统,采用“去劣”操作对自然进化中产生的劣质个体或不可行个体中进行修复将其转化为可行个体,采用“增优”操作是使优质基因库中的优质基因片段在种群中得以扩散,从而有效提高了种群中个体的质量,加快了算法的收敛速度;采用种群干预,针对自然进化过程中由于种群多样性缺失导致的早熟收敛现象,通过在种群中用新的随机产生的可行个体和镜像映射产生的差异度很大的镜像个体替换掉同等数量的较差个体,以增加种群的多样性,从而有效提高算法的全局寻优能力。

【技术实现步骤摘要】

本专利技术涉及一种小麦麦蚜种群数量预测方法及系统,具体是涉及基于人类进化基因表达式编程的麦蚜数量预测方法及系统
技术介绍
小麦长管蚜是我国各小麦产区的常发性害虫,不仅蚕食小麦营养、影响光合作用,而且还传播麦类病毒,导致小麦大幅减产和品质下降,严重威胁小麦的生产。做好小麦长管蚜种群发生的预测预报是国内外公认的对小麦长管蚜灾害进行防治和减少农药使用的有效措施。然而,小麦长管蚜种群繁殖速率高、世代重叠,并且多种小麦长管蚜在不同生态的麦区均混合发生,但不同小麦长管蚜种类的发生规律、生态习性、宿主范围和危害特点等都有所差异,这不仅难于准确预测预报,而且给防治工作也带来了巨大的困难。因此,建立一套高效准确的小麦长管蚜发生预测机制,将对小麦长管蚜防治工作的有效性产生巨大影响,在很大程度上也会缓解全球气候变暖下全国蚜虫发生面积逐年扩大的态势,为人民群众挽回必要的经济损失。目前,关于小麦长管蚜发生模型的构建及预测方法有三类:第一种是统计学预测法,它是基于概率和多因子线性相关原理,利用数学手段进行一定范围内预测因子的筛选和建模。统计学预测法原理和方法简单,容易掌握,但预测效果不稳定。第二种是信息预测,包括管理信息系统、专家系统和地理信息系统等。该方法构建的模型结构复杂,参数众多且假定为常数,造成理论模型与实际模型差别较大,使预测准确率降低。第三种是人工智能方法,包括进化算法、群智能算法、人工神经网络、支持向量机、灰色理论等等,该类方法由于对经验依赖性不强,算法具有自适应性、全局寻优性、非线性等优点,建立的模型精度较高、泛化能力强,是目前的前沿技术和发展方向。但是人工智能技术应用于昆虫种群动态模型的建立研究和应用相对滞后和深入不够,通常存在局部收敛、拟合过度、采用算法单一等不足。进化计算是一种群体导向的随机搜索技术,十分适用于函数关系发现问题。基因表达式编程是一种新的进化算法,它在没有任何先验知识、不了解事物内部机制、只有实验数据的情况下能挖掘出较为准确的公式,避免了传统算法建模时事先选定函数类型的盲目性,对于复杂、多输入、不确定的非线性问题具有非常好的映射能力,在模型建立测和函数挖掘方面已经取得了很好的成果。目前基因表达式编程已经成功应用到众多的实际工程领域中,但是在农业病虫害预测领域的研究才刚刚起步。基因表达式编程可以利用各地区以往的气候环境数据、农作物与病虫数据进行训练建模,在不需要完全了解各因素内部关联关系的情况下构建出相应的病虫害预测模型,使用该模型可以为农作物的病虫防治工作做出指导,避免因预防不足而造成的减产或过度预防造成的资金浪费和环境污染(如过度喷洒农药等)。然而在实际应用中发现,传统的基因表达式编程算法应用于小麦长管蚜种群数量预测时,存在着收敛速度慢、容易陷入局部最优的不足,从而导致预测精度低、模型泛化能力差。因此,如何改进基因表达式编程算法的全局寻优能力、加快收敛速度、提高建立模型的精度及其预测的准确性是当前急需解决的问题。
技术实现思路
针对上述现有技术中存在的缺陷或不足,本专利技术的目的在于,提供基于人类进化基因表达式编程的麦蚜数量预测方法及系统。为了实现上述目的,本专利技术采用以下技术方案:基于人类进化基因表达式编程的麦蚜数量预测方法,包括以下步骤:步骤1:采集N个时间点对小麦长管蚜的田间气象条件和种群动态进行调查,获取用于小麦长管蚜种群数量模型建立的田间调查数据,如日最高气温、日平均气温、日降水量、小麦生育阶段、小麦长管蚜天敌数量,以及小麦长管蚜总量,作为建模的样本数据,记为矩阵A;步骤2:设置初始化参数,并产生初始化种群,将初始化种群作为当前种群pop;所述的参数包括种群规模sizepop,最大迭代次数maxgen,函数符集合F,终止符集合T,镜像函数符集合M、基因长度、染色体基因个数、染色体基因间连接符、倒串长度、插串长度、变异概率、倒串概率、插串概率、重组概率、优质基因库规模m、增优概率、锦标赛选择竞赛规模p;步骤3:利用步骤1得到的矩阵A计算步骤2得到的当前种群pop中每个个体的适应度,并保存最优个体maxpop及其适应度;步骤4:根据步骤3得到的当前种群pop中的每个个体的适应度,建立优质基因库GBL和劣质特征信息库BBL;步骤5:判断当前的迭代次数是否大于最大迭代次数maxgen,是则转步骤11;否则进行如下操作:对当前种群pop中的个体执行基因表达式编程的自然进化操作得到第一中间种群pop1;计算所述第一中间种群pop1的个体的适应度,同时记录其中不可行个体及其劣质基因的在该个体中的位置,保存到矩阵badgen;还包括以下步骤:步骤6:利用步骤2得到的函数符集F和终止符集T,对步骤5得到的矩阵badgen中的不可行个体对应的第一中间种群pop1中的个体进行“去劣”操作,将第一中间种群pop1中的不可行个体变成可行个体,得到第二中间种群pop2;步骤7:利用步骤4得到的优质基因库GBL,对步骤6得到的第二中间种群pop2执行个体干预中的“增优”操作,形成第三中间种群pop3;步骤8:利用步骤2得到的函数符集F和终止符集T,计算步骤7得到的第三中间种群pop3的信息熵H;根据信息熵H和设定的信息熵阈值的比较结果,对步骤7得到的第三中间种群pop3执行种群干预操作,得到第四中间种群pop4;步骤9:合并第四中间种群pop4和优质基因库GBL,并根据合并后的个体适应度的大小,得到更新后的优质基因库GBL;步骤10:根据当前最优个体maxpop及其适应度,对步骤8得到的第四中间种群pop4进行带有精英策略的锦标赛选择操作,得到第五中间种群pop5;将迭代次数加1,并将第五中间种群pop5作为当前种群pop,转步骤5;步骤11:计算当前种群pop中个体的适应度,选取适应度值最大的个体作为当前种群pop中的最优个体bestpop,计算所述最优个体bestpop的每个基因的有效长度,按照每个基因的有效长度从右到左遍历每个基因,解码得到每个基因的数学表达式,再用步骤3的相同手段得到该最优个体bestpop的个体表达式;由所述的最优个体bestpop的个体表达式,根据表达式中各参数的实时测量值,可以得到小麦长管蚜种群数量的预测值。进一步地,所述步骤3具体包括以下步骤:步骤3.1:计算步骤2得到的当前种群pop中的每个个体的每个基因的有效长度;步骤3.2:按照每个个体的每个基因的本文档来自技高网
...

【技术保护点】
基于人类进化基因表达式编程的麦蚜数量预测方法,包括以下步骤:步骤1:采集N个时间点对小麦长管蚜的田间气象条件和种群动态进行调查,获取用于小麦长管蚜种群数量模型建立的田间调查数据,如日最高气温、日平均气温、日降水量、小麦生育阶段、小麦长管蚜天敌数量,以及小麦长管蚜总量,作为建模的样本数据,记为矩阵A;步骤2:设置初始化参数,并产生初始化种群,将初始化种群作为当前种群pop;所述的参数包括种群规模sizepop,最大迭代次数maxgen,函数符集合F,终止符集合T,镜像函数符集合M、基因长度、染色体基因个数、染色体基因间连接符、倒串长度、插串长度、变异概率、倒串概率、插串概率、重组概率、优质基因库规模m、增优概率、锦标赛选择竞赛规模p;步骤3:利用步骤1得到的矩阵A计算步骤2得到的当前种群pop中每个个体的适应度,并保存最优个体maxpop及其适应度;步骤4:根据步骤3得到的当前种群pop中的每个个体的适应度,建立优质基因库GBL和劣质特征信息库BBL;步骤5:判断当前的迭代次数是否大于最大迭代次数maxgen,是则转步骤11;否则进行如下操作:对当前种群pop中的个体执行基因表达式编程的自然进化操作得到第一中间种群pop1;计算所述第一中间种群pop1的个体的适应度,同时记录其中不可行个体及其劣质基因的在该个体中的位置,保存到矩阵badgen;其特征在于,还包括以下步骤:步骤6:利用步骤2得到的函数符集F和终止符集T,对步骤5得到的矩阵badgen中的不可行个体对应的第一中间种群pop1中的个体进行“去劣”操作,将第一中间种群pop1中的不可行个体变成可行个体,得到第二中间种群pop2;步骤7:利用步骤4得到的优质基因库GBL,对步骤6得到的第二中间种群pop2执行个体干预中的“增优”操作,形成第三中间种群pop3;步骤8:利用步骤2得到的函数符集F和终止符集T,计算步骤7得到的第三中间种群pop3的信息熵H;根据信息熵H和设定的信息熵阈值的比较结果,对步骤7得到的第三中间种群pop3执行种群干预操作,得到第四中间种群pop4;步骤9:合并第四中间种群pop4和优质基因库GBL,并根据合并后的个体适应度的大小,得到更新后的优质基因库GBL;步骤10:根据当前最优个体maxpop及其适应度,对步骤8得到的第四中间种群pop4进行带有精英策略的锦标赛选择操作,得到第五中间种群pop5;将迭代次数加1,并将第五中间种群pop5作为当前种群pop,转步骤5;步骤11:计算当前种群pop中个体的适应度,选取适应度值最大的个体作为当前种群pop中的最优个体bestpop,计算所述最优个体bestpop的每个基因的有效长度,按照每个基因的有效长度从右到左遍历每个基因,解码得到每个基因的数学表达式,再用步骤3的相同手段得到该最优个体bestpop的个体表达式;由所述的最优个体bestpop的个体表达式,根据表达式中各参数的实时测量值,可以得到小麦长管蚜种群数量的预测值。...

【技术特征摘要】
1.基于人类进化基因表达式编程的麦蚜数量预测方法,包括以下步骤:
步骤1:采集N个时间点对小麦长管蚜的田间气象条件和种群动态进行
调查,获取用于小麦长管蚜种群数量模型建立的田间调查数据,如日最高气
温、日平均气温、日降水量、小麦生育阶段、小麦长管蚜天敌数量,以及小
麦长管蚜总量,作为建模的样本数据,记为矩阵A;
步骤2:设置初始化参数,并产生初始化种群,将初始化种群作为当前
种群pop;所述的参数包括种群规模sizepop,最大迭代次数maxgen,函数
符集合F,终止符集合T,镜像函数符集合M、基因长度、染色体基因个数、
染色体基因间连接符、倒串长度、插串长度、变异概率、倒串概率、插串概
率、重组概率、优质基因库规模m、增优概率、锦标赛选择竞赛规模p;
步骤3:利用步骤1得到的矩阵A计算步骤2得到的当前种群pop中每
个个体的适应度,并保存最优个体maxpop及其适应度;
步骤4:根据步骤3得到的当前种群pop中的每个个体的适应度,建立
优质基因库GBL和劣质特征信息库BBL;
步骤5:判断当前的迭代次数是否大于最大迭代次数maxgen,是则转步
骤11;否则进行如下操作:对当前种群pop中的个体执行基因表达式编程
的自然进化操作得到第一中间种群pop1;计算所述第一中间种群pop1的个
体的适应度,同时记录其中不可行个体及其劣质基因的在该个体中的位置,
保存到矩阵badgen;
其特征在于,还包括以下步骤:
步骤6:利用步骤2得到的函数符集F和终止符集T,对步骤5得到的

\t矩阵badgen中的不可行个体对应的第一中间种群pop1中的个体进行“去劣”
操作,将第一中间种群pop1中的不可行个体变成可行个体,得到第二中间
种群pop2;
步骤7:利用步骤4得到的优质基因库GBL,对步骤6得到的第二中间
种群pop2执行个体干预中的“增优”操作,形成第三中间种群pop3;
步骤8:利用步骤2得到的函数符集F和终止符集T,计算步骤7得到
的第三中间种群pop3的信息熵H;根据信息熵H和设定的信息熵阈值的比
较结果,对步骤7得到的第三中间种群pop3执行种群干预操作,得到第四
中间种群pop4;
步骤9:合并第四中间种群pop4和优质基因库GBL,并根据合并后的
个体适应度的大小,得到更新后的优质基因库GBL;
步骤10:根据当前最优个体maxpop及其适应度,对步骤8得到的第四
中间种群pop4进行带有精英策略的锦标赛选择操作,得到第五中间种群
pop5;将迭代次数加1,并将第五中间种群pop5作为当前种群pop,转步骤
5;
步骤11:计算当前种群pop中个体的适应度,选取适应度值最大的个体
作为当前种群pop中的最优个体bestpop,计算所述最优个体bestpop的每个基
因的有效长度,按照每个基因的有效长度从右到左遍历每个基因,解码得到
每个基因的数学表达式,再用步骤3的相同手段得到该最优个体bestpop的个
体表达式;由所述的最优个体bestpop的个体表达式,根据表达式中各参数
的实时测量值,可以得到小麦长管蚜种群数量的预测值。
2.如权利要求1所述的基于人类进化基因表达式编程的麦蚜数量预测
方法,其特征在于,所述步骤3具体包括以下步骤:
步骤3.1:计算步骤2得到的当前种群pop中的每个个体的每个基因的
有效长度;
步骤3.2:按照每个个体的每个基因的有效长度,从右向左遍历每个基
因位,得出每个基因的数学表达式;
步骤3.3:用染色体基因间连接符“+”将步骤3.2中得到的第s个个体的
每个基因的表达式连接起来,得到第s个个体的表达式,并将样本数据矩阵
A中的数据对应代入第s个个体的表达式,计算出个体s在时间点j的表达
式的预测值同理得到第s个个体在所有时间点的表达式的预测值;
步骤3.4:采用式(1)所示的复相关系数法计算每个个体的适应度,并
保存最优个体maxpop及其适应度;适应度计算公式为:
fitness=R2=1-SSE/SST     (1)
即采用统计学中的复相关系数的平方作为适应度,其中,R为复相关系数,
SSE=Σj=1N(yj-y^j)2]]>SSE=Σj=1N(yj-y‾)2]]>其中,N为观测小麦长管蚜总量选取的时间点总数,yj为矩阵A中存储
的第j个时间点观测到的小麦长管蚜量,为yj的平均值。SSE为残差平方
和,SST为总离差平方和。最优个体的判断标准是:在所有个体中适应度最
大的个体。
3.如权利要求1所述的基于人类进化基因表达式编程的麦蚜数量预测
方法,其特征在于,所述步骤5具体包括以下步骤:
步骤5.1:判断当前的迭代次数是否大于最大迭代次数maxgen,是则转
步骤11;否则执行步骤5.2;
步骤5.2:依据步骤2中设置的各个遗传算子的概率,对当前种群pop
中的每个个体依次执行基因表达式编程的自然进化操作,即变异、倒串、IS
插串、RIS插串、单点重组、两点重组、基因重组的操作,得到第一中间种
群pop1;
步骤5.3:按照公式(1)计算第一中间种群pop1中每个个体的适应度,
同时记录每个个体的劣质基因位在个体中的位置;
步骤5.4:利用步骤5.3中的劣质基因位建立不可行个体的劣质基因位
矩阵badgen。
4.如权利要求1所述的基于人类进化基因表达式编程的麦蚜数量预测
方法,其特征在于,所述步骤6具体包括以下步骤:
步骤6.1:对步骤5得到的矩阵badgen中所有不可行个体的每个劣质基
因位置所对应的符号,从步骤2得到的函数符集F和终止符集T中随机选
取一个函数符或一个终止符,对所述的基因位置处的符号进行一对一的替
换;
步骤6.2:计算步骤6.1中替换后的每个不可行个体的适应度,如果得
到的个体的适应度的值不是不定值(NaN)、负无穷(-Inf)或复数(A+Bi/A-Bi),
则替换成功;否则,继续执行步骤6.1,直到替换成功为止;得到第二中间
种群pop2。
5.如权利要求1所述的基于人类进化基因表达式编程的麦蚜数量预测
方法,其特征在于,所述步骤7具体包括以下步骤:
步骤7.1:对于步骤6得到的第二中间种群pop2中的每个个体,如果随
机产生的一个0-1之间的数小于增优概率,则对该个体进行步骤7.2的“增
优”操作;否则,不对该个体“增优”操作;
步骤7.2:从步骤4得到的优质基因库GBL里随机选取一个个体,从个
体中随机选取一段随机大小的基因,用该段基因替换掉步骤7.1所述的个体
中某一段基因;并计算替换后的该个体的适应度;具体“增优”过程如下:
pop2(i,m1:m2)=GBL(j,m1:m2)     (2)
其中,i为第二中间种群pop2中的第i个个体,j为优质基因库GBL中
的第j个优质个体,m1:m2为某个个体中第m1位到第m2位的一段基因;
步骤7.3:如果替换后的个体适应度fitness1不为不定值(NaN)、负无
穷(-Inf)或复数(A+Bi/A-Bi),且大于原来个体的适应度fitness,即
fitness1(i)≠NaN/-inf/A+Bi/A-Bi且fitness1(i)>fitness(i),则替换成功;否则,
不替换;
步骤7.4:“增优”操作完成后,形成新的中间种群pop3。
6.如权利要求1所述的基于人类进化基因表达式编程的麦蚜数量预测
...

【专利技术属性】
技术研发人员:王超学张婧菁吴书玲
申请(专利权)人:西安建筑科技大学
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1