遗传算法--genetic algorithm

常用的智能优化算法有:
遗传算法 、模拟退火算法、禁忌搜索算法、粒子群算法、蚁群算法。

遗传算法是由美国的 J. Holland 教授于 1975 年在他的专著《自然界和人工系统的适应
性》中首先提出的。
    借鉴生物界自然选择和自然遗传机制的随机化搜索算法。
    模拟自然选择和自然遗传过程中发生的繁殖、交叉和基因突变现象。

在每次迭代中都保留一组候选解,并按某种指标从解群中选取较优的个体,利用遗传算
子(选择、交叉和变异)对这些个体进行组合,产生新一代的候选解群,重复此过程,直到满
足某种收敛指标为止。

基本遗传算法(Simple Genetic Algorithms,GA)又称简单遗传算法或标准遗传算法),
是由 Goldberg 总结出的一种最基本的遗传算法,其遗传进化操作过程简单,容易理解,是
其它一些遗传算法的雏形和基础。

3、基本遗传算法的组成
(1)编码(产生初始种群)
    遗传算法(GA)通过某种编码机制把对象抽象为由特定符号按一定顺序排成的串。
    正如研究生物遗传是从染色体着手,而染色体则是由基因排成的串。
    基本遗传算法(SGA)使用二进制串进行编码。
    初始种群:基本遗传算法(SGA)采用随机方法生成若干个个体的集合,该集合称为初始种群。
    初始种群中个体的数量称为种群规模。
(2)适应度函数
    遗传算法对一个个体(解)的好坏用适应度函数值来评价,适应度函数值越大,解的质量越好。
    适应度函数是遗传算法进化过程的驱动力,也是进行自然选择的唯一标准,
    它的设计应结合求解问题本身的要求而定。
(3)遗传算子(选择、交叉、变异)
    选择算子:
        遗传算法使用选择运算对个体进行优胜劣汰操作。
        适应度高的个体被遗传到下一代群体中的概率大;适应度低的个体,被遗传到下一代群体中的概率小。
        选择操作的任务就是从父代群体中选取一些个体,遗传到下一代群体。
    交叉算子:
        交叉运算,是指对两个相互配对的染色体依据交叉概率 Pc 按某种方式相互交换其部分基因,从而形成两个新的个体。
        交叉运算是遗传算法区别于其他进化算法的重要特征,它在遗传算法中起关键作用,是产生新个体的主要方法。
        基本遗传算法(SGA)中交叉算子采用单点交叉算子。
    变异算子:
        变异运算,是指改变个体编码串中的某些基因值,从而形成新的个体。
        变异运算是产生新个体的辅助方法,决定遗传算法的局部搜索能力,保持种群多样性。
        交叉运算和变异运算的相互配合,共同完成对搜索空间的全局搜索和局部搜索。
        基本遗传算法(SGA)中变异算子采用基本位变异算子。
(4)运行参数
    (1)M:种群规模
    (2)T:遗传运算的终止进化代数
    (3)Pc:交叉概率
    (4)Pm:变异概率

遗传算法的本质
    遗传算法本质上是对染色体模式所进行的一系列运算,即通过选择算子将当前种群中的优良模式遗传到下一代种群中,利用交叉算子进行模式重组,利用变异算子进行模式突变。
    通过这些遗传操作,模式逐步向较好的方向进化,最终得到问题的最优解。

遗传算法的主要有以下八方面的应用:
    (1)组合优化
    (2)函数优化
    (3)自动控制
    (4)生产调度
    (5)图像处理
    (6)机器学习
    (7)人工生命
    (8)数据挖掘


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值