当前位置: 首页 > 专利查询>东南大学专利>正文

一种交叉概率因子可调的差分进化算法制造技术

技术编号:17705863 阅读:145 留言:0更新日期:2018-04-14 18:32
本发明专利技术公开了一种交叉概率因子可调的差分进化算法,包括如下步骤:(1)种群初始化;(2)变异操作;(3)交叉操作;(4)选择算子;(5)终止迭代。本发明专利技术提出一种交叉概率因子可调的差分进化算法,在交叉环节,根据不同个体在上一代适应度值的大小,赋予不同个体不同的交叉概率因子值;实施例表明,与传统DE算法相比,使用该算法进行数值优化时,需要的迭代次数明显减少,能更快的搜索到我们期望的最优值,有效减少了计算时间和内存消耗。

【技术实现步骤摘要】
一种交叉概率因子可调的差分进化算法
本专利技术涉及数值优化
,尤其是一种交叉概率因子可调的差分进化算法。
技术介绍
差分进化(DifferentialEvolution,DE)算法是在1997年由RainerStorn和KennethPrice共同提出的一种采用浮点矢量编码在连续空间中进行随机搜索的优化算法。自DE算法问世以来,因其简单高效性引起了国内外众多专家学者的高度重视,相应的对其在不同领域的研究成果也应运而生。如今,DE已成为一种求解非线性、不可微、多极值最优化问题的一种有效的方法,是进化算法的一个重要分支,并在数字信号处理、神经网络优化、模式识别和机器人路径规划等工程领域取得了良好的应用效果。虽然DE算法在诸多不同领域取得了广泛的应用,但是该算法也存在着一些不足,包括容易陷入局部最优。传统DE算法对变异因子F和交叉概率因子CR的设置具有依赖性,对不同的问题需要有针对性地设置不同的F和CR值。为此诸多专家提出了多种变异策略,但是不同策略面对不同问题时性能也有差异,其适合求解的问题也是不同的。近几年来国内学者对差分进化算法做了很多研究,有人提出根据个体适应度变化情况,对每一个体分配不同的缩放因子F和交叉概率CR的适应性策略。当个体适应度较优时,分配较小的F,使算法在较优个体的附近维度搜索;当个体的适应度值较差时,采用较大的F来扩大解的搜索范围。也有人用模糊逻辑控制理论来动态调整差分进化算法的主要参数,包括变异因子F和交叉概率CR,以利于对解空间进行广泛探索,避免算法陷入早熟收敛。
技术实现思路
本专利技术所要解决的技术问题在于,提供一种交叉概率因子可调的差分进化算法,能够更快的搜索到我们期望的最优值,有效减少了计算时间和内存消耗。为解决上述技术问题,本专利技术提供一种交叉概率因子可调的差分进化算法,包括如下步骤:(1)种群初始化;(2)变异操作;(3)交叉操作;(4)选择算子;将当前种群中的实验矢量Ui,g和优化矢量Xi,g带入目标函数,比较目标函数返回的适应度值fi,g,二者中具有更优适应度值的个体将被选择进入下一代,即Xi,g+1,i=1,2,…,Np;(5)终止迭代;如果种群Xi,g+1,i=1,2,…,Np中最佳个体的适应度值已经达到优化目标的要求,则循环过程终止;否则进入步骤(2),进行下一个进化循环。如果循环迭代次数达到预先设定的最大迭代次数G时,适应度值依然没有达到阈值及以下,则算法也会终止。优选的,步骤(1)中,种群初始化具体为:优化矢量个体表示为Xi,g,且有:Xi,g=[x1,i,gx2,i,g…xJ,i,g],i=1,2,…,Np其中,g表示进化的代数,且g=1,2,…,G,G表示进化迭代的设定总次数,不过对于初始种群,有g=1;i表示优化矢量个体的排序,Np为种群数目;J表示优化矢量的长度,即个体中的基因数目;初始种群的规模Np确定后,用随机方法初始化各个优化矢量个体Xi,1,i=1,2,...,Np,这些矢量个体的集合即构成了初始种群{X1,1X2,1…XNp,1}T,初始种群产生后,进入进化循环操作。优选的,步骤(2)中,变异操作具体为:对于第g代的优化矢量个体Xi,g,进行差分进化算法的变异操作,从而获取对应的变异矢量Vi,g,且有:Vi,g=[v1,i,gv2,i,g…vJ,i,g],I=1,2,…,Np。优选的,步骤(3)中,交叉操作具体为:通过交换优化矢量Xi,g和变异矢量Vi,g在各个维度上的基因,形成实验矢量Ui,g:Ui,g=[u1,i,gu2,i,g…uJ,i,g],i=1,2,…,Np此处使用二项交叉方法,计算方法如下:其中,rand(0,1)产生[0,1]之间的均匀分布随机数;j表示基因在个体中的排序,且有j=1,2,…,J;jrand是[1,J]之间的一个随机整数,它在每一次交叉操作中都会更新一次;CRi,g表示交叉概率,本专利技术中其计算公式如下:其中atan()是上述函数中的核心因式,是一个反正切函数;fi,g-1是上一代优化矢量的适应度值,也是上述函数的自变量;CRmin是fi,g-1处于区间[-2*CX_Tran,0]内时,交叉因子CRi,g的最小值;CX_Zoom是水平缩放因子,用于控制函数曲线在水平方向的伸缩;CX_Tran是水平平移因子,用于控制函数曲线在水平方向的平移;CY_Defm是幅值变形因子,用于控制函数曲线幅值的高阶非线性变形。本专利技术的有益效果为:本专利技术提出一种交叉概率因子可调的差分进化算法,在交叉环节,根据不同个体在上一代适应度值的大小,赋予不同个体不同的交叉概率因子值;实施例表明,与传统DE算法相比,使用该算法进行数值优化时,需要的迭代次数明显减少,能更快的搜索到我们期望的最优值,有效减少了计算时间和内存消耗。附图说明图1为本专利技术的方法流程示意图。图2(a)为本专利技术交叉因子函数中,水平缩放因子变化时函数曲线的改变示意图。图2(b)为本专利技术交叉因子函数中,水平平移因子变化时函数曲线的改变示意图。图2(c)为本专利技术交叉因子函数中,幅值变形因子变化时函数曲线的改变示意图。图3为本专利技术的阵列天线方向图优化实施例中使用的阵列分布示意图。图4为本专利技术的阵列天线方向图优化实施例中优化矢量适应度值的变化曲线示意图。图5(a)为本专利技术的阵列天线方向图优化实施例中Z方向一维方向性示意图。图5(b)为本专利技术的阵列天线方向图优化实施例中Y方向一维方向性示意图。具体实施方式本专利技术提出的差分进化算法数值优化的流程图如图1所示,算法首先对优化矢量进行初始化,然后进行变异、交叉和选择操作,得到下一代的优化矢量,如此迭代,直到目标函数返回的适应度值低于设定阈值或者迭代次数达到设定的最高迭代次数。本专利技术提出了新的交叉概率确定方案,以提高优化效率,减少所需迭代次数。实施例所给出的结果表明,本专利技术提出的差分进化方案可以高效地完成数值优化任务。具体步骤如下:步骤1):种群初始化差分进化算法也是一种群体型操作算法,种群规模在所有操作过程中始终保持不变。种群规模确定后,用随机的方法产生各个优化矢量个体,这些矢量个体的集合即构成了初始种群。初始种群产生后,进入进化循环操作。DE算法利用Np个优化矢量作为每一代的种群,第g代的种群表示为:每个个体矢量Xi,g表示为:式中J为优化矢量长度;i为个体矢量在种群中的序号,而Np为种群数目;g为进化代数序号,而G则是设定的进化总代数。为了建立优化搜索的初始点,种群必须被初始化。通常初始种群应尽可能地通过均匀随机分布的多个个体来覆盖整个搜索空间,初始化的方法是在给定的约束边界内随机选择。对一个J维的搜索空间,个体的搜索边界可以设置为:下边界:上边界:所以优化矢量初始化如下:式中rand(0,1)为[0,1]之间产生的均匀分布随机数。步骤2):变异操作对于任意一个优化矢量Xi,g,从当前代的种群中随机选择三个不同的优化矢量,其中两个矢量的差值被变异因子F缩放后再加到第三个矢量上,从而获取对应的变异矢量Vi,g,计算方法如下:Vi,g=Xr1,g+F(Xr2,g-Xr3,g)其中,i≠r1≠r2≠r3,其中r1,r2,r3是1到Np范围内产生的随机数。由此可见,参数Np必须大于等于4。需要注意的是,r1,r2,r3会因i和g的变化而本文档来自技高网...
一种交叉概率因子可调的差分进化算法

【技术保护点】
一种交叉概率因子可调的差分进化算法,其特征在于,包括如下步骤:(1)种群初始化;(2)变异操作;(3)交叉操作;(4)选择算子;将当前种群中的实验矢量Ui,g和优化矢量Xi,g带入目标函数,比较目标函数返回的适应度值fi,g,二者中具有更优适应度值的个体将被选择进入下一代,即Xi,g+1,i=1,2,…,Np;(5)终止迭代;如果种群Xi,g+1,i=1,2,…,Np中最佳个体的适应度值

【技术特征摘要】
1.一种交叉概率因子可调的差分进化算法,其特征在于,包括如下步骤:(1)种群初始化;(2)变异操作;(3)交叉操作;(4)选择算子;将当前种群中的实验矢量Ui,g和优化矢量Xi,g带入目标函数,比较目标函数返回的适应度值fi,g,二者中具有更优适应度值的个体将被选择进入下一代,即Xi,g+1,i=1,2,…,Np;(5)终止迭代;如果种群Xi,g+1,i=1,2,…,Np中最佳个体的适应度值已经达到优化目标的要求,则循环过程终止;否则进入步骤(2),进行下一个进化循环。如果循环迭代次数达到预先设定的最大迭代次数G时,适应度值依然没有达到阈值及以下,则算法也会终止。2.如权利要求1所述的交叉概率因子可调的差分进化算法,其特征在于,步骤(1)中,种群初始化具体为:优化矢量个体表示为Xi,g,且有:Xi,g=[x1,i,gx2,i,g…xJ,i,g],i=1,2,…,Np其中,g表示进化的代数,且g=1,2,…,G,G表示进化迭代的设定总次数,不过对于初始种群,有g=1;i表示优化矢量个体的排序,Np为种群数目;J表示优化矢量的长度,即个体中的基因数目;初始种群的规模Np确定后,用随机方法初始化各个优化矢量个体Xi,1,i=1,2,...,Np,这些矢量个体的集合即构成了初始种群初始种群产生后,进入进化循环操作。3.如权利要求1所述的交叉概率因子可调的差分进化算法,其特征在于,步骤(2)中,变异操作具体为:对于第g代的优化矢量个体Xi,g,进行差分进化算法的变异操作,从而获取对应的变异矢量Vi,g,且有:Vi,g=[v1,i,gv...

【专利技术属性】
技术研发人员:蒋忠进崔铁军陈阳阳
申请(专利权)人:东南大学
类型:发明
国别省市:江苏,32

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

1