遗传算法

演化算法:受自然演化启发的启发式随机优化算法,该算法通过考虑“突变重组”和“自然选择”这两个关键因素来模拟自然演化过程

概念:

  • 染色体:候选解(称为个体)
  • 适应度
  • 自然选择
  • 突变

步骤:

  1. 初始化具有若干规模数目的群体。当前进化代数Generation=0
  2. 采用评估函数对群体中所有染色体进行评价,分别计算每个染色体的适应值,保存适应值最大的染色体Best
  3. 用轮盘赌选择算法对群体染色体进行选择操作,产生规模同样的种群
  4. 照概率从种群中选择染色体进行交配。新子代染色体进入新种群,没有进行交配的染色体直接复制进入新种群
  5. 按照概率对新种群染色体的基因进行变异操作。变异后的染色体取代原有染色体进入新种群,未发生变异的染色体直接进入新群体
  6. 变异后的新群体取代原有群体,重新计算群体中各个染色体的适应值。倘若群体的最大适应值大于Best的适应值,则取代原有的Best
  7. 前进化代数Generation加1。如果Generation超过规定的最大进化代数或Best达到规定的误差要求,算法结束;否则返回步骤3