1.一种基于变长编码的二进制水稻育种算法的高光谱图像波段选择方法,其特征在于,包括以下步骤:
步骤1:读取图像,获取图像波段信息,提取原始波段样本集作为原始输入集;
步骤2:初始化种群和变长编码二进制水稻育种算法所需参数,所述的初始化参数包括:种群规模PopSize,最大迭代次数Imax,最大自交次数maxTime,学习样本重置代数Pcount,种群长度重置代数α,参考学习代数β,种群分组数目Nbr;
步骤3:初始化各个分组中变长编码种群个体;
步骤4:将每个水稻个体进行二进制编码并求其所代表波段子集的适应度值;将变长编码的水稻育种算法中水稻个体的初始位置向量编码成相应的波段子集,计算每个波段子集的适应度函数;所述的波段子集是指将水稻育种算法中的水稻个体解码成对应的波段选择问题的解,编码后的水稻个体由一串0和1组成,1表示此位置对应的波段被选中,0表示此位置对应的波段未被选中;
步骤5:根据初始种群适应度值计算学习率Pc;
步骤6:根据种群的学习率Pc为水稻个体选择学习方式,水稻个体进行自我学习或参考学习,并在种群每迭代β代后判断局部最优Pbest有无提升,若否,则水稻个体的学习方式为参考学习;
步骤7:水稻个体进行位置更新;首先根据种群个体适应度值大小将各个组中水稻个体划分为保持系、恢复系和不育系,然后通过水稻育种算法杂交、自交以及重置操作对水稻个体进行位置更新水稻育种算法杂交、自交以及重置操作对水稻个体进行位置更新;
步骤8:记录更新后的种群适应度值、局部最优Pbest和全局最优Gbest,并在种群每迭代α代后判断局部最优Gbest有无提升,若有提升,则回转执行步骤6,若无提升,则执行步骤9;
步骤9:根据预定义规则更新种群个体的维度;
步骤10:重置学习率Pc;
步骤11:判断当前迭代次数是否达到最大迭代次数,若否,则执行步骤6,若是,则输出全局最优的水稻个体所对应的波段子集及其适应度值。
2.根据权利要求1所述的种基于变长编码的二进制水稻育种算法的高光谱图像波段选择方法,其特征在于步骤3中所述根据种群组号初始化各组中的种群个体;
步骤3.1:根据种群划分公式划分种群,其公式为:其中PopSize表示种群规模,Nbr为种群的划分组数,DivSize表示每个组别内水稻个体的个数;上述公式的具体含义是将PopSize个种群合体划分至Nbr个组别中,每个组中DivSize个个体;
步骤3.2:根据个体维度划分公式划分各个组中的个体维度,其公式为:其中,ParLenv表示第V组中个体的维度,Maxlen表示输入图像的特征数量,V表示当前组号,Nbr表示种群的划分组数。
3.根据权利要求1所述的种基于变长编码的二进制水稻育种算法的高光谱图像波段选择方法,其特征在于步骤4中所述的将每个水稻个体进行二进制编码并求其所代表波段子集的适应度值;
步骤4.1需利用S型函数对十进制表现形式的水稻个体进行二进制编码,S型函数的公式如下:
其中, 表示第i个个体的第d个位置分量,当 时, 当 时,步骤4.2计算水稻个体适应度值,其计算公式为:fitness=(γ·Accu+(1‑γ)·Dist)其中,Accu表示特征子集分类的准确度,Dist用来衡量特征子集区分同类实例间或不同类实例间的区别的曼哈顿距离,γ用来约束Accu和Dist所占的权重;
其中Accu的计算公式为:
c表示分类问题中类别的总数,TPRi表示第i类中实质的正确率;
又Dist的计算公式为:
其中Db表示不同类间的最小距离,其计算公式如下:其中Dw表示相同类间的最小距离,其计算公式如下:其中M表示总的实例数目,Dis(Ii,Ij)表示实例i和实例j的曼哈顿距离。
4.根据权利要求1所述的种基于变长编码的二进制水稻育种算法的高光谱图像波段选择方法,其特征在于步骤5中所述的计算初始种群的学习率,其计算公式如下:其中PopSize表示种群大小,rank(i)表示水稻个体i的适应度值排名,0.05和0.45为两个经验值。
5.根据权利要求1所述的一种基于变长编码的二进制水稻育种算法的高光谱图像波段选择方法,其特征在于步骤6中所述根据水稻种群的学习率Pc为水稻个体选择学习方式,需比较Rnd和Pc的大小关系,其中Rnd为随机生成的区间为[0,1]的随机数,Pc表示本轮迭代中的学习率,其判断条件有如下两种结果:若Rnd≥Pc,则不需重置学习样本,水稻个体进行自我学习;
若Rnd<Pc,则需要重置学习样本,水稻个体进行参考学习,随机选择两个水稻个体,选取适应度值较大的个体作为学习对象,学习对象的维度必须大于等于当前个体;
并在种群每迭代β代后判断局部最优Pbest有无提升,若否,则水稻个体的学习方式为参考学习。
6.根据权利要求1所述的种基于变长编码的二进制水稻育种算法的高光谱图像波段选择方法,其特征在于步骤7中所述的水稻个体进行位置更新,首先根据种群个体适应度值大小将各个组中水稻个体划分为保持系、恢复系和不育系,然后通过水稻育种算法的杂交、自交以及重置操作对水稻个体进行位置更新;
步骤7.1:种群划分,种群划分是按每个分组中水稻个体适应度值大小排序,排序靠前的三分之一个体为保持系,排序靠后的三分之一个体为不育系,其余个体划分至恢复系;
步骤7.2:保持系个体与不育系个体进行杂交操作,其中杂交操作公式为:表示不育系中该轮杂交育种过程中新产生的第d维新基因, 表示保持系中第i个体第d维分量, 表示不育系中第j个体第d维分量,r2和r3为[‑1,1]之间的随机数,且r2+r3≠0;其中,当i=j时,为对应杂交,即本轮新产生的个体的每一维都是由参与本轮育种的保持系母本与不育系母本一一对应进行杂交产生的;与之对应,当i≠j时,为随机杂交;
步骤7.3:恢复系中个体进行自交操作,自交操作公式为:表示在第k次自交过程中产生的第d维新基因, 表示在本次迭代过程中最优个体的第d维基因, 表示恢复系中第i个个体的第d维基因,r4为[0,1]之间的随机数;根据贪心策略,若新生个体优于原有个体,则将新生个体保留至下一代,自交次数timesk加1;与之对应,当新生个体劣于原有个体,则保留原有个体至下一代,自交次数不变;又当f(Xnew)>f(Xbest)时,Xnew取代当前最优个体,并且置timesk=0;最后,如果当timesk≥maxTime时,则下一轮育种过程中,该个体不进行自交操作,而是进行重置;
步骤7.4:如果当timesk≥maxTime时重置操作公式如下:重置操作的目的是提升算法的局部开发能力, 表示重置操作产生的新个体的第d维基因, 表示恢复系中参与重置操作的第i个个体的第d维基因, 和 分别表示搜索空间内决策变量x第d维分量的上、下决策边界。
7.根据权利要求1所述的种基于变长编码的二进制水稻育种算法的高光谱图像波段选择方法,其特征在于步骤8中所述的记录更新后的种群适应度值、局部最优Pbest和全局最优Gbest,并在种群每迭代α代后判断局部最优Gbest有无提升。
8.根据权利要求1所述的种基于变长编码的二进制水稻育种算法的高光谱图像波段选择方法,其特征在于步骤9中所述的种群维度更新具体包括:步骤9.1根据所述的当前种群组别划分,获取各个组别的最大维度MaxLen;
步骤9.2计算各个组别的适应度值均值,获取均值最优组的维度BestLen;
步骤9.3若MaxLen≠BestLen,则进行种群维度更新,置BestLen为NewLen,NewLen的更新公式如下:
NewLen=BestLen×k÷Nbr其中,NewLen表示更新后的种群维度,BestLen表示均值最优组的维度,k为种群分组的组号,Nbr表示总的分组数;即若当前分组个体的种群维度小于NewLen,则在种群规模的尾部添加维度补齐,若当前分组个体的种群维度大于NewLen,则对种群的维度从右至左尾部的维度进行裁剪。