遗传算法

遗传算法(Genetic Algorithms, GA)是一种随机优化算法,用于解决结构复杂的优化问题。遗传算法模仿天然界中生物的进化过程,即适者生存,不适者淘汰的过程。其过程以下:算法

(1) 随机生成一些个体(Individual),构成一个种群(Population),对每个解进行评估,得到它的适应度函数值(Fitness Value),此过程叫作初始化种群(Initializing);函数

(2) 按照必定的规则进行随机选择,如轮盘赌或者其余方法,目的是使得适应度函数值高的个体被选中的几率大,反之被选中的几率小,此过程叫作选择(Selection),没被选中的个体丢弃再也不被考虑;优化

(3) 从选择之后的种群中,按照必定的几率随机选择必定的个体,配对进行基因的交换,目的是把两个个体中的优秀基因集中到一个个体,有可能生成更加优秀的个体,这个过程叫作交叉(Crossover);spa

(4) 对种群中的个体,按照必定的几率随机选择必定的个体,使其部分基因发生随机改变,目的是有可能随机生成更加优秀的个体,这个过程叫作变异(Mutation);it

(5) 对通过选择、交叉、变异后的全部个体,计算适应度函数值,回到第2步,开始下一代(Generation)循环。io

循环的次数根据必定的条件判断,如设定的代数,或者连续多少代适应度函数值没有被提升。循环

相关文章
相关标签/搜索