概述
exploration 是开发未知领域,而exploitation 是利用已知状态。
在遗传算法中:
全局探索(Exploration):交叉重组与突变是算法全局探测能力的主要构成要素。
局部探测(Exploitation):对种群个体的选择是算法局部探测能力的主要构成要素。
关于Exploration能力太强的话,即使是到达了最优解集的区域中,下一步,
依然会远离这个区域(解的变化比较大,和前面是什么关系不大),从而找不到收敛的值。
Exploitation比较强,则会把局部最优解区域解集更容易被找到,但是我们通过变异和重组得到的其他解集,将会被淘汰。
因为变异和重组得到的其他解集直接到达最优解附近区域难度非常大,当差距相对较大时,可能没有局部的最优解好,
而惨遭淘汰。
质上都是扩展搜索空间,避免所有的个体都聚集在某局部极小值的周围.因为这种情况一旦发生,
整个种群几乎很难跳出局部极小.
以下结论来自Eberhart R,Shi Y.Comparison between genetic algorithms andparticle swarm optimization[A].Porto V W,Saravanan N,Waagen D,et al,Eds.Evolutionary ProgrammingⅦ:ProcAnnual Conferece on Evolutionary Programming[C].Berlin:Springer-Verlag,1998.
在遗传算法中,通过交叉和变异跳出局部最优.开始时,粒子染色体随机初始化,个体差异较大,交叉产生的染色体比较能够拓展新的搜索空间;但是此后,种群开始收敛,这意味着染色体的结构开始
变得相似,交叉产生的染色体仍然是相似的染色体,效率较低.在算法的后期主要靠变异产生新的染色体
来扩展搜索空间,所以一般在开始时采用较小的变异率,而在后期采用较大的变异率.但是到了后期,因为整个种群的适应度较高,所以变异产生的染色体在选择中存活的可能性比较小。
最后
以上就是小巧曲奇为你收集整理的exploration 和 exploitation 的区别的全部内容,希望文章能够帮你解决exploration 和 exploitation 的区别所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复