码迷,mamicode.com
首页 > 编程语言 > 详细

遗传算法的理解

时间:2016-03-12 22:38:35      阅读:245      评论:0      收藏:0      [点我收藏+]

标签:

一、简介

  •     1、 定义

      GA:借鉴生物界的自然选择和自然遗传机制的随机化搜索算法。模拟发生(繁殖,交叉.基因突变);

            属于启发式搜索算法的一种。

      候选解 ---->选取较优个体 ---->遗传算子进行个体组合 ----->产生新的候选解群             重复直至收敛指标

  •     2、组成        
  •                          基因的编码方式(二进制,互换,树形,值编码)
  •                          适应度函数(自然选择的唯一标准)
  •                          遗传算子(选择,交叉,变异)
  •                          运行参数

二、局部极值的避免

      精英主义:在每一次产生新的一代时,首先把当前最优解原封不动的复制到新的一代,大幅度提高运算速度,防止丢失最后的解。

      突变:杀掉最优秀的个体,产生更优秀的物种,可以采用突变倒计时,如果n代还没有出现比之前更优秀的个体时,可以产生突变.如果若干次突变后产生的个体的适应度与没灾难之前的一样,停止灾变.

      二者可共存。

优缺点

      优点:群体搜索,易于并行化处理;启发式搜索,不盲目;适应度函数适用范围很广;易于实现;

      缺点:全局搜索不强,容易陷入局部最优解挑不出来。SA可以帮助解决

   

遗传算法的理解

标签:

原文地址:http://www.cnblogs.com/shizhenqiang/p/5270092.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!