《演化计算》课程报告浅谈演化计算及其应用与发展——以水利学科为例摘要:通过《演化计算》课程的学习,在阅读文献的基础上,本报告简述了演化计算的基本思想、特点、主要分支及设计基本原则和方法,并例举了演化计算在水利学科中的应用,对演化计算的应用作了进一步展望。
关键词:演化计算;水利工程;智能计算1.引言近年来,智能计算在人类生活中扮演着越来越重要的角色。
一些新的研究方向如演化计算(Evolutionary Computation)、人工神经网络和模糊系统等,由于它们通过模拟某一自然现象或过程以使问题得到解决,具有适于高度并行及自组织、自适应、自学习等特征,因而正受到越来越多的关注。
演化算法是一类统计优化算法,它们是受自然界演化过程特别是演化过程中生物个体对环境表现出的自适应性启发而产生的一类优化技术。
大自然一直是人类解决各种问题获得灵感的思想源泉,生物进化论揭示了生物长期自然选择的进化发展规律,认为生物进化主要有三个原因:遗传、变异和选择。
自然界中个体对环境的自适应性主要表现在基因遗传和个体对环境的适应能力上。
尽管物竞天择、优胜劣汰的原则是达尔文于几个世纪前提出的,但它今天仍被普遍认为在许多生物领域是有效的,而且这个原则还在不断被扩充与细化。
演化算法采用简单的编码技术来表示各种复杂的结构,它将问题的可行解进行编码,这些已编码的解被作为群体中的个体(染色体);将问题的目标函数转换为个体对环境的适应性;模拟遗传学中的杂交(crossover)、变异(mutation)、复制(reproduction)来设计遗传算子;用优胜劣汰的自然选择法则来指导学习和确定搜索方向。
简而言之,演化算法不用了解问题的全部特征,就可以通过体现进化机制的演化过程完成问题的求解。
现如今,科学技术和工程应用领域具有挑战性的实践问题大都具有高度的计算复杂性的特点,这些是使传统方法失效的致命障碍,而演化算法正好可以克服这些困难。
一方面,由于演化算法的进化机制,使得算法具有自组织、自适应、自学习和“复杂无关性”的特征,能在搜索过程中自动获取和积累有关搜索空间的知识,并利用问题固有的知识来缩小搜索空间,自适应地控制搜索过程,动态有效地降低问题的复杂度,从而求得原问题的真正最优解或满意解。
另一方面,由于演化算法对于刻画问题特征的条件要求很少,再加上它效率高、易于操作、简单通用,从而使得它已经广泛应用于各种不同的领域中。
2.演化计算基本特征2.1 智能性在确定了编码方案、适应值计算方法及遗传算子之后,演化算法将利用计算过程中获取的信息自动地进行智能搜索,而且适应值大的个体具有较高生存概率。
生存概率高的个体,再通过基因突变等算法产生与环境更适应的后代。
2.2 本质并行性演化计算的并行性主要体现在内在并行(inherent parallelism)和内含并行性(implicit parallelism)两个方面。
内在并行,即多台计算机独立采用演化算法进行计算,计算过程不需要相互干涉;内含并行性,即运用成千上万台计算机,采用种群的方式对求解空间的不同区域共同组织搜索,从而大大提高计算搜索效率。
2.3 全局优化性演化计算采用群体搜索策略,而传统方法一般采用单点搜索策略。
这一特点使演化计算具有极好的全局优化性能,减少了陷入局部极值的风险;同时,也使演化计算本身易于大规模并行实现,可充分发挥高性能并行计算机系统的作用。
2.4 随机性演化计算采用概率的变迁规则来控制搜索方向。
表面上看好象是盲目搜索,实际上它遵循某种随机规律,在概率意义下朝着最优解的方向靠近,因此,它不象通常采用确定性规则的传统方法,精确度量算法某步群体最优解与问题全局最优解的绝对距离没有确定性意义,只有统计意义。
3. 演化计算主要分支传统的演化计算由三个强相互联系、但事实上有时彼此独立发展起来的分支组成,分别是遗传算法、演化策略及演化规划,九十年代初,在遗传算法的基础上又发展了一个分支,即遗传程序设计,即目前演化计算共有四大分支。
本文重点介绍的是演化计算的一大重点分支遗传算法在水资源与水环境研究中的应用。
3.1 遗传算法遗传算法(Genetic Algorithm,简称“GA”)又称为基因算法,最初是在1975年由J.H. Holland所提出,其主要目的在于利用达尔文进化演论“物竞天择,适者生存”的方式来求解问题。
Holland所提出遗传算法的操作对象是一群二进制串,称为种群,每一个串都对应于问题的一个解亦即一个个体。
从初始种群出发,采用基于适应值比例的选择策略在当前种群中选择位串,使用杂交和变异来产生下一代种群。
这样一代代演化下去,直到满足期望的终止条件。
遗传算法不同于其他优化方法,其原因主要有:它能随机搜寻最佳解;具有保证优化的值能收敛及可靠度佳的特性;不需要梯度信息;不需要一个知道初始解;能搜索到多个极优值;很容易并行化。
3.2 演化策略演化策略是由H.P.Schwefel和I.Rechenbery所提出的一种算法,用于求解主要由试验得来的困难的离散或连续的多参数优化问题。
后来,其他学者在这一领域继续展开了深入的研究工作,从原始的(1+1)演化策略,发展到(μ+1)演化策略,进而发展到(μ+λ)演化策略。
此类方法强调了父代和子代之间或者再生的种群之间的行为联系,而不是像遗传算法那样强调遗传联系。
3.3 演化规划演化规划最初是在20世纪60年代由L.J.Fogel作为产生人工智能的一种尝试提出的,最基本的演化规划与Schwefel和Rechenbery提出的演化策略相类似,但是涉及到了更为复杂的人工智能问题,演化规划需要使被演化的系统具有人工智能。
Burgin、Atmar及其他学者在演化规划这一领域作了深入的研究工作,其采用的方法是演化一个有限态自动机使之具有最佳预测能力,后来D.B.Fogel借助于演化策略方法对演化规划进行了发展,并应用于数值优化与神经网络的训练等问题之中。
3.4 遗传程序设计遗传程序设计(genetic programme)是近二十年才发展起来的一种自动编程技术,它采用遗传算法的基本思想,通过增加结构的复杂性更灵活地处理遗传算法中的表示问题。
其采用分层结构即树型的表示方式来表示解空间,分层结构的端结点为问题的原始变量,中间节点为组合这些原始变量的函数,其中每个个体(一棵树)是一个普通的计算机程序。
遗传程序设计便是使用一些遗传操作动态地改变这些结构从而获得解决该问题的可行的计算机程序。
遗传程序设计拓广了传统遗传算法的应用范围,但它只对群体实施两种遗传操作:复制、杂交。
4. 设计演化算法的基本原则与方法4.1 设计演化算法的基本原则标准演化算法由7部分构成:编码方法、种群初始化、评价函数、选择策略、遗传算子、算法终止条件、算法参数的设置。
4.2 演化算法的设计方法在准备应用演化算法求解问题时,要完成以下几个步骤:①确定表示方案。
演化算法求解问题不是直接作用在问题的解空间上,而是利用解的某种编码表示。
选择一个便于演化算法求解问题的表示方案,常常需要我们对问题作深入的了解,表示方案的选择有时将对算法的性能、效率等产生很大的影响;②确定适应函数。
适应值是对个体的质量的一种度量,它通常依赖于个体的行为与环境(即群体) 的关系。
一般以目标函数或费用函数的形式来表示;③确定控制算法的参数。
控制参数主要包括群体大小M、算法执行的最大代数G、以及控制各种遗传操作的概率等等;④设计遗传算子。
演化算法中的遗传算子,主要包括复制、杂交、变异等。
复制算子的作用是提高群体的平均适应值。
杂交算子(有性重组)可以产生新的个体,从而检测搜索空间中新的点。
变异算子可增加群体的多样性,以防止群体过早收敛;⑤确定算法的终止准则。
自然界的演化过程是无终结的,演化算法也是如此。
然而作为一次实际的运行,必须给出终止条件。
常用的办法是预先规定一个最大的演化代数或算法在连续多少代以后个体的适应值没有什么明显的改进时,算法终止;⑥确定指定结果的方法。
结果指定的方法一般有两种,一种是当算法满足终止准则时,指定当前代中的最好的个体为运行结果;另一种是当算法满足终止准则时,指定在任一代中出现的最好的个体为运行结果。
这个结果可能是问题的一个解或近似解。
完成上述工作以后,即可以按照演化算法的算法结构编程,进行问题的求解。
在具体的演化算法设计过程中,我们可以利用特殊领域的知识来选择表示方案和适应函数,在控制参数的选择、终止准则和指定结果的方法的确定等方面,也可以采取一些附加的判断。
一旦完成这些选择,演化算法就按不依赖于问题本身的方式去求解问题。
5. 演化计算在水利学科中的应用演化计算在水资源领域的众多方面有广泛应用,如水污染控制规划、水库(群) 调度、水环境模型参数估计等,而且越来越受到水科学与环境领域工作者的重视。
5.1 在水资源优化配置中的应用水资源优化配置是实现水资源合理开发利用的基础,是水资源可持续利用的根本保证。
区域水资源优化配置是社会、经济及环境综合效益最佳的大系统多目标规划问题,该问题的求解很大程度上基于决策者的偏好,将多目标进行加权后华为单目标问题进行求解,人的主观因素将会影响规划的客观性和合理性。
为了避免这一问题的产生,遗传算法是绝佳的解决方式。
在水资源的优化配置中,采用演化计算对多目标、非线性问题进行求解。
以下举相关例子说明。
沈军等采用演化计算确定水资源优化配置模型中的效益系数,在此基础上对水资源进行了优化配置。
赵得军等在此基础上,将效益系数看做是时间的函数,在变化约束条件的情况下,利用演化计算的竞争机制优化效益系数,并利用效益系数的权重实现了开封市不同水源的合理配置。
5.2 在地下水系统中的应用地下水系统是由边界围限的、具有统一水力联系的含水地质体,是地下水资源评价的基本单位。
具有水量、水质输入、运移和输出的地下水基本单元及其组合。
普遍认为地下水系统是水文循环系统的一部分,由输入、输出和水文地质实体三部分组成。
外界对地下水系统输入的物质或能量,经过水文地质实体的接收、贮存、调节、平滑、延时、传递等作用,使地下水系统处于某一种状态,并可利用系统的反馈调节机制对地下水系统进行控制。
演化计算还被广泛用于地下水系统的研究,以下举一相关例子说明。
在沿岸地区,地下水的开采需要考虑到海水的入侵问题,为合理的开采地下水,防止海水入侵,Park提出了基于遗传算法的多目标优化方法,从而确定了泵的运行速率和钻井的位置,所得出的计算结果优于已有文献的成果,为沿岸地区地下水的管理提供了一种经济有效的方法。
5.3 在多目标优化决策的应用(水库群调度)水电站水库的运行,必须合理利用流量和水头,以获得最大的发电效益;有综合利用的水库,还要顾及综合利用的各项目标。
在梯级水库中,也要综合各水库的各个效益进行调度。