数据挖掘之遗传算法

  1. 自然演变是一种基于群体的优化过程,在计算机上对这个过程进行仿真,产生了随机优化技术,在应用于解决现实世界中的难题时,这种技术常胜过经典的优化方法,遗传算法就是根据自然演变法则开发出来的
  2. 遗传算法的基本原理
    遗传算法(GA)是不需要求导的随机优化方法,它以自然选择和演变过程为基础,但是联系又是不牢靠的
    遗传算法(Genetic Algorithm)是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。遗传算法是从代表问题可能潜在的解集的一个种群(population)开始的,而一个种群则由经过基因(gene)编码的一定数目的个体(individual)组成。每个个体实际上是染色体(chromosome)带有特征的实体。染色体作为遗传物质的主要载体,即多个基因的集合,其内部表现(即基因型)是某种基因组合,它决定了个体的形状的外部表现,如黑头发的特征是由染色体中控制这一特征的某种基因组合决定的。因此,在一开始需要实现从表现型到基因型的映射即编码工作。由于仿照基因编码的工作很复杂,我们往往进行简化,如二进制编码,初代种群产生之后,按照适者生存和优胜劣汰的原理,逐代(generation)演化产生出越来越好的近似解,在每一代,根据问题域中个体的适应度(fitness)大小选择(selection)个体,并借助于自然遗传学的遗传算子(genetic operators)进行组合交叉(crossover)和变异(mutation),产生出代表新的解集的种群。这个过程将导致种群像自然进化一样的后生代种群比前代更加适应于环境,末代种群中的最优个体经过解码(decoding),可以作为问题近似最优解。
    3.遗传算法的基本概念
    染色体串 基因串中的特征 位点串中的位置 等位值位置值(通常0或1)
    基因型串结构 表型特性(特征)集合
    4.遗传算法的特性
    A: 遗传算法是并行搜索方法,他能在并行处理机上执行,极大地提高了运行速度
    B: 遗传算法可应用于连续型优化问题和离散性优化问题
    C: 遗传算法是随机的,陷入局部最小点的可能性较小,而在实际优化应用中,其他方法不可避免要陷入局部小点
    D: 遗传算法的灵活性便于识别复杂模型中的结构和参数
  3. 遗传算法的基本运算
    a)初始化:设置进化代数计数器t=0,设置最大进化代数T,随机生成M个个体作为初始群体P(0)。
    b)个体评价:计算群体P(t)中各个个体的适应度。
    遗传算法
    遗传算法
    c)选择运算:将选择算子作用于群体。选择的目的是把优化的个体直接遗传到下一代或通过配对交叉产生新的个体再遗传到下一代。选择操作是建立在群体中个体的适应度评估基础上的。
    d)交叉运算:将交叉算子作用于群体。遗传算法中起核心作用的就是交叉算子。
    e)变异运算:将变异算子作用于群体。即是对群体中的个体串的某些基因座上的基因值作变动。
    群体P(t)经过选择、交叉、变异运算之后得到下一代群体P(t+1)。
    f)终止条件判断:若t=T,则以进化过程中所得到的具有最大适应度个体作为最优解输出,终止计算。
  4. 用遗传算法进行优化
    A: 编码方案和初始化 B: 适合度设计 C: 选择 D: 交叉 E: 突变
    7.遗传算法的简单例证
    要对某个问题应用遗传算法,必须定义或选择一下5部分
    A: 为问题的潜在解选择遗传表述或编码方案
    B: 一种创建潜在解的初始群体的方法
    C: 一个评价函数,它扮演着环境的决策,根据“适合度”对解进行评级
    D: 改变后代成分的遗传算子
    E: 遗传算法使用的不同参数值(群体大小、应用算子的比率等)
    原文作者:遗传算法
    原文地址: https://blog.csdn.net/ymf827311945/article/details/78021793
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞