第5讲遗传算法2011.pptxVIP

  • 8
  • 0
  • 约9.67千字
  • 约 73页
  • 2016-12-03 发布于重庆
  • 举报
第5讲遗传算法2011

遗传算法原理与应用赵 鹏pzhao@bjtu.edu.cn一、基本原理 1.遗传算法起源 遗传算法是由美国的J.Holland教授于1975年在他的专著《自然界和人工系统的适应性》中首先提出的,它是一类借鉴生物界自然选择和自然遗传机制的随机化搜索算法。 生物进化循环图遗传算法的主要特征: 进化发生在解的编码上,这些编码按生物学的术语称为染色体。由于对解进行了编码,优化问题的一切性质都通过编码来研究。编码和解码是遗传算法的一个主题。 自然选择规律决定哪些染色体产生超过平均数的后代。遗传算法中,通过优化问题的目标而人为地构造适应函数以达到好的染色体产生超过平均数的后代。 当染色体结合时,双亲的遗传基因的结合使得子女保持父母的特征。 当染色体结合后,随机的变异会造成子代同父代的不同。 生物遗传概念在遗传算法中的对应关系生物遗传概念遗传算法中的作用适者生存在算法停止时,最优目标值的解有最大的可能被保留个体(individual)解染色体(chromosome)解的编码(字符串,向量等)基因(gene)解中每一分量的特征(如各分量的值)适应性(fitness)适应函数值群体(population)选定的一组解(其中解的个数为群体的规模)种群(reproduction)根据适应函数值选取的一组解交配(crossover)通过交配原则产生一组新解的过程变异(mutation)编码的某一个分量发生变化的过程遗传算法主要处理步骤 首先是对优化问题的解进行编码,称一个解的编码为一个染色体,组成编码的元素称为基因。编码的目的主要是用于优化问题解的表现形式和利于之后遗传算法中的计算。 第二是适应函数的构造和应用。适应函数基本上依据优化问题的目标函数而定。当适应函数确定以后,自然选择规律是以适应函数值的大小决定的概率分布来确定哪些染色体适应生存,哪些被淘汰。生存下来的染色体组成种群,形成一个可以繁衍下一代的群体。 第三是染色体的结合。双亲的遗传基因结合是通过编码之间的交配达到下一代的产生。新一代的产生是一个生殖过程,它产生了一个新解。 最后是变异。新解产生过程中可能发生基因变异,变异使某些解的编码发生变化,使解有更大的遍历性。 2、基本遗传算法 基本遗传算法(Simple Genetic Algorithms,简称SGA,又称简单遗传算法或标准遗传算法),是由Goldberg总结出的一种最基本的遗传算法,其遗传进化操作过程简单,容易理解,是其它一些遗传算法的雏形和基础。 基本遗传算法的组成 (1)编码(产生初始种群)(2)适应度函数(3)遗传算子(选择、交叉、变异)(4)运行参数编码 GA是通过某种编码机制把对象抽象为由特定符号按一定顺序排成的串。正如研究生物遗传是从染色体着手,而染色体则是由基因排成的串。SGA使用二进制串进行编码。 函数优化示例 求下列一元函数的最大值:x∈[-1,2] ,求解结果精确到6位小数。SGA对于本例的编码 由于区间长度为3,求解结果精确到6位小数,因此可将自变量定义区间划分为3×106等份。又因为221 3×106 222 ,所以本例的二进制编码长度至少需要22位,本例的编码过程实质上是将区间[-1,2]内对应的实数值转化为一个二进制串(b21b20…b0)。几个术语 个体(染色体)基因型:1000101110110101000111 基因解码编码表现型:0.637197 初始种群 SGA采用随机方法生成若干个个体的集合,该集合称为初始种群。初始种群中个体的数量称为种群规模。 适应度函数 遗传算法对一个个体(解)的好坏用适应度函数值来评价,适应度函数值越大,解的质量越好。适应度函数是遗传算法进化过程的驱动力,也是进行自然选择的唯一标准,它的设计应结合求解问题本身的要求而定。 选择算子 遗传算法使用选择运算来实现对群体中的个体进行优胜劣汰操作:适应度高的个体被遗传到下一代群体中的概率大;适应度低的个体,被遗传到下一代群体中的概率小。选择操作的任务就是按某种方法从父代群体中选取一些个体,遗传到下一代群体。SGA中选择算子采用轮盘赌选择方法。 s40.31s10.14s30.06s20.49● 盘轮赌选择法轮盘赌选择示意轮盘赌选择方法 轮盘赌选择又称比例选择算子,它的基本思想是:各个个体被选中的概率与其适应度函数值大小成正比。设群体大小为n ,个体i 的适应度为 Fi,则个体i 被选中遗传到下一代群体的概率为: 轮盘赌选择方法的实现步骤(1) 计算群体中所有个体的适应度函数值(需要解码);(2) 利用比例选择算子的公式,计算每个个体被选中遗传到下一代群体的概率;(3) 采用模拟赌盘操作(即生成0到1之间的随机数与每个个体遗传到下一代群体的概率进行匹配)来确定各个个体是否遗传到下一代群体中。交叉算子 所谓交

文档评论(0)

1亿VIP精品文档

相关文档