• 1
新闻详细
  • 基于适应度值的局部搜索机制,   中山云梯车, 中山云梯车出租, 中山云梯车租赁
    新闻分类:公司新闻   作者:admin    发布于:2018-08-204    文字:【】【】【


           基于适应度值的局部搜索机制,   中山云梯车,  中山云梯车出租,  中山云梯车租赁       首先将所有萤火虫根据适应度值从大到小排序,然后对排好序的萤火虫队列,从头到尾进行遍历。每只萤火虫飞向队列的前尺只萤火虫,第5只萤火虫和最后一只萤火虫的飞行目标。对于第一只萤火虫,则保持静止,即当前迭代次数中位置最优的萤火虫是保持静止的。改进后算法的计算复杂度是种群个数的线性函数。经过试验发现,一个能使算法效果比较好的经验值。




          基于距离矩阵方差的种群更新,  基本萤火虫算法在算法迭代多次以后,萤火虫种群会聚集成一堆或者多堆,然后进一步的算法迭代不能改变萤火虫种群的分布,此时算法已经收敛。一般情况下,此时算法的迭代次数还远远没有达到设定的迭代次数,此种现象称为智能优化算法的早熟现象。此时萤火虫算法可能只收敛到局部最优,算法迭代更多时间也不能得到更优的解,导致算法的全局搜索能力比较弱。对萤火虫算法的改进研究中,学者们一般都是针对萤火虫算法具体的迭代策略,希望能够通过改变萤火虫的位置更新方式增加算法的全局搜索能力。本节从另外一个角度去解决萤火虫算法的早熟问题,可以在萤火虫算法收敛以后重新初始化部分萤火虫,保留最优的数个萤火虫个体。因此需要一个标志量在算法迭代时表征当前状态,判断算法是否收敛。算法早熟以后,目标函数值是不变或者以很慢的速度减小,因此可以直接根据目标函数值的变化情况判断算法是否收敛。但是算法并不能保证每一次迭代都导致目标函数值下降,可能在数次迭代过程中算法处于正常的迭代状态,萤火虫种群在搜索空间中飞行搜索,没有陷入局部最优,但是没有找到更优的位置。所以只根据目标函数值的下降并不能可靠地判断算法是否收敛。因此基本萤火虫算法需要一个准确判断算法当且迭代状态的标志值。如果算法收敛并且不满足终止条件,那么更新种群,同时保留目前最优解,再进行算法迭代。当达到终止条件时,终止算法迭代。如果萤火虫算法收敛,萤火虫种群的位置分布会达到近似稳定。因此可以通过判断萤火虫的位置分布和位置更新前的萤火虫分布是否有变化。最直接的方法是对萤火虫种群中所有萤火虫分别计算萤火虫更新后位置和更新前位置的坐标变化的差值,然后将所有萤火虫对应的位置变化值相加作为标志值。如果算法收敛,那么萤火虫种群位置变化标志值应该趋近于零。但是测试函数寻优实验表明,萤火虫种群位置变化绝对值的累加和会随着迭代次数增加而迅速下降,降到某个不为零值停止,然后以这个数值为中心上下波动,而待优化函数的函数值会继续下降,然后停止。说明萤火虫的位置变化和并不能反映萤火虫算法是否收敛,可能的原因是萤火虫种群在算法收敛以后仍然是在一个或者多个小的局部区域内飞行,因此对某一只萤火虫,它的位置在算法收敛以后仍然是以比较小的步长变化。通过实验表明,基于萤火虫个体的标志值不足以判断算法是否收敛,需要考虑到萤火虫种群的相互关系。注意到萤火虫算法收敛后,萤火虫种群距离矩阵会近似保持不变,那么距离矩阵的方差会保持不变,因此可以根据萤火虫的距离矩阵方差的变化情况来判断算法当前的收敛状态。对测试函数的萤火虫算法的寻优实验也反映了这一点。以Sphere函数优化过程为例。无论萤火虫种群的距离矩阵方差是在减小还是增大,最优函数值都在不断下降;当距离矩阵方差几乎不变时,最优解保持不变。因此需要设计一种在迭代过程中从距离矩阵方差判断算法是否收敛的机制。不同的优化问题,距离矩阵方差的大小差异很大,所以矩阵方差本身的大小没有参考价值。对于目标函数值存在同样的问题。当前迭代次数中目标函数减小的值与前面几次迭代中目标函数减小的值分布在接近的数值范围,可以将前面几次迭代中目标函数累积减小的值除以迭代次数,作为当前迭代目标函数减小速度的判断基准。对于距离矩阵方差可以采用相同的方法,只是距离矩阵方差要采用每次变化的绝对值。下面给出计算萤火虫种群距离矩阵方差和判断算法当前迭代状态的方法。首先计算所有萤火虫的距离矩阵。距离矩阵是对称矩阵,并且对角的元素都是零。将算法此次迭代的前10次目标函数减小的值除以10作为判断的基准,如果连续三次迭代目标函数下降的值小于基准的0.1倍;将算法此次迭代的前10次迭代中距离矩阵方差变化的绝对值累加和除以10作为判断的基准,如果连续三次距离矩阵方法变化的绝对值小于基准的0.1倍,那么可能算法已经收敛,需要更新萤火虫种群。萤火虫种群的更新策略是保留最好的数个个体,然后随机初始化其它的个体,保持萤火虫种群个数不变。




          中山云梯车,  中山云梯车出租,  中山云梯车租赁  http://www.zhuhailudengchechuzu.com/




           LS-FA实现步骤根据上述规则与操作,本文所提改进算法流程图示,其算法步骤描述如下:步骤1:初始化参数和种群。设定最大迭代代数,种群个数,搜索空间维度,步长系数;I,吸引因子A随机项权重,种群更新保留个数兄适应度值局部搜索范围尤。步骤2:计算萤火虫种群的适应度值,根据适应度值大小排序,找到最优萤火虫。步骤3:计算萤火虫种群距离矩阵方差,判断算法是否收敛。如果收敛,更新部分种群,返回步骤2。步骤4:每只萤火虫只飞向适应度值和其自身相差最小且适应度值更大的尺只萤火虫。亮度最大的萤火虫保持静止。更新萤火虫位置。步骤5:判断是否等于最大迭代代数,如果是,算法终止,如果不是,重复步骤2。





            2实验结果和分析   本节通过三种测试函数在FA、GFA  LS-FA算法下的性能表现来证明算法的性能表现。其中/5、/6、/7、/8是£>=10维优化问题。三种算法采用相同的基本参数。针对每个测试函数,分别运行上述算法各30次,记录算法的平均适应度值最好适应度值I、最差适应度值和适应度值方差并将结果列于表中。本文所提算法的平均适应度值以及最差适应度值都较FA和GFA有明显改进,LS-FA算法下降曲线全包围FA下降曲线和GFA下降曲线。



          (2)针对Griewank函数,本文所提算法收敛速度较快,且无论是在平均适应度值上还是最好适应度值均好于FA和GFA,虽然LS-FA曲线中间阶段差于FA和GFA,但是LS-FA没有陷入局部最优,一直保持下降趋势。



         (3)针对Schwefel函数,本文所提算法在平均适应度值以及最优适应度值都高于另两个对比算法。Schwefel函数的最优点在搜索区域的边沿,很难找到。三种算法都陷入局部最优不能跳出。



       (4)针对Perm函数,本文所提算法在适应度值及最优适应度值上都好于FA和GFA,且从收敛曲线上可以看到本文算法和GFA没有陷入局部最优。但是LS-FA的下降速度要快于GFA。综合上述分析描述,本文所提算法对以上四个典型测试函数均有更好的表现,证明了本文算法的优良性能。




         中山云梯车,  中山云梯车出租,  中山云梯车租赁


    分享到:
    点击次数:869  更新时间:2018-08-20  【打印此页】  【关闭
Copyright © 恒越吊篮车出租公司