又一种自适应控制参数的差分进化算法

水文工具集站点曾描述一种自适应算法参数的差分进化算法,通过增加个体维度来自适应算法控制参数,这里给出另外一种差分进化算法自适应控制参数的方式。

变异策略自适应

多进化模式协作的差分进化算法中使用了多种变异策略对算法进行了改进,这里选用策略1:DE/rand/1/bin(全局搜索能力强)与策略2:DE/best/1/bin(局部搜索能力强)这两种策略,选择DE/rand/1/bin策略的概率为pStrategy,这样DE/best/1/bin策略的概率为1-pStrategy,pStrategy由进化过程统计计算,以达到策略的自适应,统计方式如下:如果某个个体采用策略1成功进化,则策略1的统计计数增加1;如果某个个体采用策略2成功进化,则策略1的统计计数增加1。经过nGenOfStrategy[可以选择5]代后,更新pStrategy=nStrategy1/(nStrategy1+nStrategy2),nStrategy1与nStrategy2重新计数。这样哪种策略更容易进化成功则其相应被选择的概率会提高,达到策略随着进化过程而自适应。

交叉因子自适应

与上面策略自适应的方法一致,我们可以通过统计的方式来自适应交叉因子。只是这里记录的不再是计数,而是个体交叉时所使用的相应交叉因子的值,经过nGenOfCross代后我们计算这些记录的CR的均值,做为中心,0.1为方差重新生成各个个体所使用的交叉概率。



发表评论

You must be logged in to post a comment.