2018-4-7 差分进化算法
首先差分进化算法是进化算法的一种,它包括变异,交叉,选择,边界检测。
来源:
差分进化算法_百度百科
https://baike.baidu.com/item/%E5%B7%AE%E5%88%86%E8%BF%9B%E5%8C%96%E7%AE%97%E6%B3%95/10052475?fr=aladdin
【图文】差分进化算法_百度文库
https://wenku.baidu.com/view/0d93a00930126edb6f1aff00bed5b9f3f90f7287.html
通过群体内个体之间的相互合作与竞争产生的群体智能来指导优化搜索的方向。该算法的基本思想是:从一个随机产生的初始种群开始,通过把种群中任意两个个体的向量差与第三个个体求和来产生新个体,然后将新个体与当代种群中相应的个体相比较,如果新个体的适应度优于当前个体的适应度,则在下一代中就用新个体取代旧个体,否则仍保存旧个体。通过不断地进化,保留优良个体,淘汰劣质个体,引导搜索向最优解逼近。
差分进化算法是一种自组织最小化方法,用户只需要很少的输入。它的关键思想与传统的对比:
传统的是用预先确定的概率分布函数决定向量扰动,而差分进化算法的自组织程序利用种群中两个随机选择的不同向量来干扰一个现有向量,种群中的每一个向量都进行干扰。
标准DE流程:
流程:
(1)初始化
(2)变异操作
(3)交叉操作
(4)选择操作
伪代码:
参数
特点:
总结自己学到的:
这两天一直在看算法,没有沿袭之前一边看书一遍百度的套路。今天开始总结笔记。
差分算法是进化算法的一种,它的公式主要是涉及到随机的个体的产生,以及随机算则三个个体进行相应的变异操作,在变异的基础上根据交叉算子产生实验个体,然后通过对比实验个体与目标个体的优劣得到更新。
主要的思想就是对比。首先是之间的互相结合,信息的交互,然后就是混合交叉,最优有根据成绩的好还进行选择。