遗传算法GA

  01 Jan 2015


概述

GA简单,鲁棒性好,具有自组织性、自适应性、自学习性和本质并行的突出特点。和其他优化搜索算法相比,GA具有以下独特的性质:

  1. GA是对参数编码进行操作,而非对参数本身,减少约束条件的限制,如连续性、可导性、单峰性等。

  2. GA是多点搜索,减少了陷于局部优解的风险。

  3. GA仅用适应度函数来指导搜索,不需要其他推导和附加信息,对问题依赖性小。

  4. GA的寻优规则是概率性的而非确定性的。


GA把问题的解表示成染色体(也称串),GA的求解步骤如下:

  1. 编码:定义问题的解空间到染色体编码空间的映射,一个候选解(个体)用一串符号表示;

  2. 初始化种群:在一定的限制条件下初始化种群,该种群是解空间的一个子空间;

  3. 设计适应度函数:将种群中的每个染色体解码成适于计算机适应度函数的形式,计算其数值;

  4. 选择:根据适应度大小选择优秀个体繁殖下一代,适应度越高,则选择概率越大;

  5. 交叉:随机选择两个用于繁殖下一代的个体的相同位置,在选中的位置实行交换;

  6. 变异:对某个串中的基因按突变概率进行翻转;

  7. 从步骤4开始重复进行,直到满足某一性能指标或规定的遗传代数。