
b628cf17f53ea99f011d190d796dbbfb.ppt
- Количество слайдов: 28
第九章 遗传算法 ——第三篇 进化计算
ISDA 2006 Whole name: International Conference on Intelligent System Design and Applications There are many famous experts: James Kennedy (An additional lecture on Friday) Edward Tseng Xinhe Xu Khalid Saeed Fuchun Sun et al. Gary G Yen: (A Special talk on EA on Monday)
CCML 2006 China Conference on Machine Learning: Hainan Experts: Shoujue Wang Libo Wang Shifu Chen Zhihua Zhou Jiali Feng Songchan Chen Et al
Two Special Talks Here James Kennedy: Swarm Intelligence Gary G Yen: Evolutionary Multiobjective Optimization All in English Notes: Learn live English, not just for a certificate Learn how to solve problems, not just knowledge of techniques in exercises
第九章 遗传算法 遗传算法(Genetic Algorithm,GA)是一类以 Darwin自然进化论和Mendel 遗传变异理论为基础的求 解复杂全局优化问题的仿生型算法,它是由美国 J. H. Holland教授首次提出的。 § 9. 1 生物进化与遗传算法的发展 § 9. 2 传统遗传算法 § 9. 3 遗传算法的特点与研究课题
§ 9. 1 遗传算法的发展 1.遗传算法是在本世纪六七十年代由美国Michigan大 学的J. H. Holland 教授及其学生和同事发展起来的。1967 年,他的学生J. D. Bagley在博士论文中首次提出“遗传算 法(Genetic Algorithms)”一词。此后,Holland指导学 生 完 成 了 多 篇 有 关 遗 传 算 法 研 究 的 论 文 。 1971年 , R. B. Hollstien在他的博士论文中首次把遗传算法用于函 数优化。
2.1975年是遗传算法研究历史上十分重要的一年。 这一年Holland出版了他的著名专著《自然系统和人 系统的自适应》(Adaptation in Natural and Artificial Systems),这是第一本系统论述遗传算法的专著,因 此有人把1975年作为遗传算法的诞生年。Holland在该 书中系统地阐述了遗传算法的基本理论和方法,并提 出了对遗传算法的理论研究和发展极其重要的模式理 论(schema theory)。该理论首次确认了结构重组遗 传操作对于获得隐并行性的重要性。
3.同年,K. A. De Jong完成了他的博士论文《一类遗 传 自 适 应 系 统 的 行 为 分 析 》 ( An Analysis of the Behavior of a Class of Genetic Adaptive System)。该论 文所做的研究 作,可看作是遗传算法发展进程中的一 个里程碑,这是因为,他把Holland的模式理论与他的 计算实验结合起来。尽管De Jong和Hollstien 一样主要 侧重于函数优化的应用研究,但他将选择、交叉和变异 操作进一步完善和系统化,同时又提出了诸如代沟( generation gap)等新的遗传操作技术。可以认为,De Jong的研究 作为遗传算法及其应用打下了坚实的基础, 他所得出的许多结论,迄今仍具有普遍的指导意义。
4.进入八十年代,遗传算法迎来了兴盛发展时期, 无论是理论研究还是应用研究都成了十分热门的课题。 1985年,在美国召开了第一届遗传算法国际会议( International onference n enetic lgorithms ICGA), C o G A , 并且成立国际遗传算法学会(International Society of Genetic Algorithms ,ISGA),以后每两年举行一次。 5.1989年,Holland的学生D. E. Goldberg出版了专著《 搜索、优化和机器学习中的遗传算法》(Genetic Algorithms in Search , Optimization, and Machine Learning)。该书总结了遗传算法研究的主要成果,对 遗传算法及其应用作了全面而系统的论述。
6.在欧洲,从1990年开始每隔一年举办一次Parallel Problem Solving from Nature 学术会议,其中遗传算法 是会议主要内容之一。此外,以遗传算法的理论基础 为 中 心 的 学 术 会 议 还 有 Foundations of Genetic Algorithms,该会也是从1990年开始隔年召开一次。这 些国际会议论文,集中反映了遗传算法近些年来的最 新发展和动向。 7.1991年,L. Davis编辑出版了《遗传算法手册》( Handbook of Genetic Algorithms),其中包括了遗传算 法在 程技术和社会生活中的大量应用实例。
8.有关遗传算法的学术论文也不断在《Artificial Intelligence》、《Machine Learning》、《Information science》、《Parallel Computing》、《Genetic Programming and Evoluable Machines》《IEEE Transactions on Neural Networks》, 《IEEE Transactions on Signal Processing》等杂志上发表。1993年,MIT出 版社创刊了新杂志《Evolutionary Computation》。1997 年,IEEE又创刊了《Transactions on Evolutionary Computation》。《Advanced Computational Intelligence 》杂志即将发刊,由模糊集合创始人L. A. Zadeh教授为 名誉主编。目前,关于遗传算法研究的热潮仍在持续, 越来越多的从事不同领域的研究人员已经或正在置身 于有关遗传算法的研究或应用之中。
§ 9. 2 传统遗传算法 一、基本术语 1.染色体和基因 生物的遗传物质的主要载体是染 色体,基因是控制生物性状的遗传物质的功能单位和 结构单位。若干个基因组成染色体,染色体中的位置 称为基因座(locus),而基因所取的值称为等位基因 (alleles),基因和基因座决定了染色体的特性,也就 决定了生物个体的性状。染色体对应的是数据或数组, 通常是由一维的串(string)的结构数据来表现的。 2.群体 一定数量的个体组成了群体(population)。 群体中个体的数目称为群体规模(population size), 各个体对环境的适应程度称为适应度(fitness)。
3.编码和解码 前者是把搜索空间中的参数或解转换 成遗传空间中的染色体或个体,此过程称为编码( coding)操作;后者是前者的逆操作,称为解码( decoding)操作。
表 9. 1 生物遗传学与遗传算法基础术语对照表 生物遗传学(natural genetics) 染色体(chromosome) 基因(gene) 基因座(locus) 基因型(genotype) 表现型(phenotype) 遗传隐匿(epistasis) 遗传算法(GA) 串(string),个体(individual) 特征(feature),个性(character) 串中位置(string position) 结构(structure) 参数集(parameter set) 解码结构(decoded structure) 侯选解(alternative solution) 非线性(nonlinearity)
二、传统遗传算法 图 9. 1 遗传算法的基本流程
遗传算法三个主要操作算子是选择(selection)、 交叉(crossover)和变异(mutation),它们构成了所 谓遗传操作(genetic operation),使遗传算法具备了 其他传统方法所没有的 特性。 遗传算法中包含如下五个基本要素: (1) 参数编码; (2) 初始群体的设定; (3) 适应度函数的设计; (4) 遗传操作设计; (5) 操作参数设定(主要指群体规模及执行遗传操 作的概率等)。 假定用GA求函数f(x)=x 2的最大值,设x∈[0, 31]。
表 9. 2 遗传算法求f(x)=x 2极值的计算流程 串编 号 X值 初始 适 群体 (无 应 (随 符号 度 机产 整数) f(x) 生) =x 2 选择概 率 适应 度期 望值 实际 计算 (来 自赌 轮) 复制后 配对库 (竖线 表示交 叉点) 交叉 位置 (随 机选 择) 新一 代群 体 X 值 适应 度 f(x)= x 2 1 01101 13 169 0. 14 0. 58 1 01101 4 01100 12 144 2 11000 24 576 0. 49 1. 97 2 11000 4 11001 25 625 3 01000 8 64 0. 06 0. 22 0 11000 2 11011 27 729 4 10011 19 361 0. 31 1. 23 1 10011 2 10000 16 256 总和 117 0 1. 00 4 1754 平均 293 0. 25 1. 00 1 439 最大 576 0. 49 1. 97 2 729
(1) 编码 由于遗传算法不能直接处理解空间的解数据,所 以必须通过编码将其表示成遗传空间的基因型串结构 数据。 (2) 初始群体的形成 由于遗传算法执行群体型操作,所以必须为遗传 操作准备一个由若干个属于解空间的初始解组成的初 始群体。 (3) 适应度评估检测 遗传算法在搜索进化过程中一般不需要其他外部 信息,仅用评估函数值来评估个体的优劣,并以此作 为后继遗传操作的依据。评估函数值又称作适应度( fitness)。
(4) 选择(selection) 选择或复制操作的目的是从当前群体中选出优良 的个体,使它们有机会作为父代为下一代繁殖。判断 个体优劣的标准就是各自的适应度值。这一操作借用 了Darwin适者生存的进化原则,即个体适应度越高, 其被选择作为父代的机会就越多。
(5) 交叉 简单的交叉(即单点交叉)可分两步进行:首先 对配对库中的个体进行随机配对,然后在配对个体中 随机设定交叉点,配对个体彼此交换部分信息。 (6) 变异操作是按位(bit)进行的,即把某一位的内 容进行变异。对于二进制编码的个体来说,若某位原 为 0,则通过变异操作就变成了1,反之亦然。
§ 9. 3 遗传算法的特点与研究课题 一、遗传算法的特点 ① 遗传算法的处理对象不是参数(优化问题的参 变量)本身,而是对参数集进行了编码的个体。这种 编码操作,使得遗传算法可直接对结构对象进行操作 (所谓结构对象泛指集合、序列、矩阵、树、图、链 和表等各种一维或高维结构形式)。这一特点使得遗 传算法具有广泛的应用领域,例如: 通过对连接矩阵的操作,遗传算法可用来对神经 网络或自动机的结构或参数加以优化。 通过对集合的操作,遗传算法可实现对规则集合 或知识库的精练而达到高质量的机器学习目的。
通过对树结构的操作,遗传算法可得到用于分类 的最佳结构树。 通过对任务序列的操作,遗传算法可用于任务规 划,而通过对操作序列的处理,遗传算法可自动构造 顺序控制系统。 ② 遗传算法的基本作用对象是多个可行解的集合, 而非单个可行解。它是采用同时处理群体中多个个体 的方法,即同时对搜索空间中的多个解进行评估。这 一特点使遗传算法具有较好的全局搜索性能,减少了 陷于局部优解的可能性。同时这又使得遗传算法本身 具有良好的并行性。
③ 遗传算法仅用适应度函数值来评估个体,而无 须搜索空间的知识或其它辅助信息。遗传算法的适应 度函数不仅不受连续可微的约束,而且其定义域可以 任意设定。对适应度函数的唯一要求是,对于输入可 计算出能够进行比较的输出。遗传算法的这一特点使 它的应用范围极大拓宽,使之可广泛应用于目标函数 不可微、不连续、非规划、极其复杂或无解析表达式 等类优化问题。 ④ 遗传算法不是采用确定性规则,而是采用概率 的变迁规则来指导它的搜索方向。遗传算法执行选择、 交叉、变异等类似生物进化过程的简单随机操作,具 有极强的鲁棒性。需要指出,遗传算法采用概率仅仅 是作为一种 具来引导其搜索过程朝着搜索空间的更 优的解的区域移动。因此尽管看起来它是一种盲目的 搜索方法,但实际上有明确的搜索方向。
二、遗传算法的研究课题 (1) 遗传算法收敛性的研究 遗传算法源于自然选择和生物遗传学,相对于其 鲜明的生物基础,遗传算法的理论基础公认是不完善 的。各种改进的遗传算法的收敛速度估计是当前遗传 算法理论研究中的一个难点,目前尚无任何结果,这 也是当前最迫切需要解决的问题之一,因为它能从理 论上对遗传算法的任何修正形式提供评判标准,以指 明改进遗传算法效能的正确方向。
(2) 优化搜索方法的研究 迄今为止,优化问题的求解仍在遗传算法研究中 站很大比重,诸如TSP等组合优化问题一直是遗传算法 十分活跃的研究课题。尽管遗传算法比其它传统搜索 方法有更强的鲁棒性,但它更善长全局搜索,而局部 搜索能力却不足。为此,除了要进一步改进基本理论 和方法外,还要采用和人 神经网络、模拟退火技术、 专家系统以及混沌理论等其它方法相结合的策略。
(3) 学习系统的遗传算法研究 基于遗传算法的机器学习是当前遗传算法研究的 一个重要内容。这一新的研究课题把遗传算法从历来 离散的搜索空间的优化搜索算法扩展到具有独特的规 则生成功能的崭新的机器学习算法。这一新的学习机 制对于解决人 智能中的知识获取和知识优化精练的 瓶颈难题带来了希望。 (4) 遗传算法的并行分布处理 随着遗传算法应用的深入发展,并行分布遗传算 法及其实现的研究越来越为人们所重视。遗传算法由 于执行群体性操作,所以本质上具有很好的并行分布 处理特性。
(5) 人 生命与遗传算法的研究 人 生命所涉及的生命现象包括生命的起源、自 我增殖、自适应遗传进化和免疫等。遗传算法与人 生命这一崭新的研究领域正在不断渗透。目前已有一 些学者对生态系统的演变、食物链的维持以及免疫系 统的进化等,利用遗传算法作了生动的模拟。 (6) 遗传算法和进化规划、进化策略的比较与结合 进化规划(Evolutionary Programming,EP)和进 化策略(Evolution Strategies, ES)几乎是和遗传算法同时 独立发展起来的,同遗传算法一样,它们也是模拟自 然界生物进化机制的智能计算方法,既同遗传算法具 有相同之处也有各自的特点。进入九十年代,这三种 方法才开始彼此交流。目前,关于这三种方法之间的 比较研究和彼此结合的探讨正在形成热点。
Related Papers Jinping Li, Jianqin Yin, et al. Combination of genetic algorithm and local search algorithms. Journal of Computational Information System, 2006, 2(3): 1119 -1126. 李金屏,韩延彬,孙志胜。混沌优化算法性能分析。小型微型计算 机系统。2005, 26(8): 1340 -1344。 李金屏,李素昉,杨波。基于小生境算法和聚类分析的快速收敛遗 传算法。小型微型计算机系统。2004, 25(6): 975 -978. 史奎凡,董吉文,李金屏等。正交遗传算法。电子学报。2002, 30(10): 1501 -1504. 李金屏,何苗,刘明军,杨波。提高BP小波神经网络收敛速度的研究。 模式识别与人 智能。2002, 15(1): 28 -35 李金屏,何苗,杨波。遗传算法平均截止代数和成功率与种群规模 之间的关系。系统仿真学报(增刊), 2001, Vol. 13, 206 -210
b628cf17f53ea99f011d190d796dbbfb.ppt