欢迎来到天天文库
浏览记录
ID:38291282
大小:662.60 KB
页数:34页
时间:2019-06-07
《进化算法及其在数值计算中的应用》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、进化算法及其在数值计算中的应用最优化问题:在满足一定的约束条件下,寻找一组参数值,使某些最优性度量得到满足,即使系统的某些性能指标达到最大或最小。最优化问题的应用涉及工业技术、社会、经济、管理等各个领域,具有重要意义。最优化问题的一般形式为:式中,称为目标函数,称为约束函数。极大极小的转换:数学规划:在一些等式或不等式约束条件下,求一个目标函数的极大(或极小)的优化模型称为数学规划。根据有、无约束条件可以分为约束数学规划和无约束数学规划;根据目标函数和约束函数是否为线性函数,分为线性规划和非线性规划;根据问题中是否只有一个目标函数,分为单目标规划和多目标规划。很多非常重要的问题是线性的
2、(或者用线性函数能够很好地近似表示),因此线性规划的研究具有重要意义。与非线性规划相比,线性规划的研究更加成熟。进化算法及其在数值计算中的应用在数学规划中,把满足所有约束条件的点称为可行点(或可行解),所有可行点组成的点集称为可行域,记为于是数学规划即为求,并且使得在上达到最大(或最小),把称为最优点(最优解),称为最优值。进化算法及其在数值计算中的应用进化计算(EvolutionaryComputation,EC)受生物进化论和遗传学等理论的启发,是一类模拟生物进化过程与机制,自组织、自适应的对问题进行求解的人工智能技术。进化计算的具体实现方法与形式称为进化算法(Evolutiona
3、ryAlgorithm,EA)。进化算法是一种具有“生成+检测”(generate-and-test)迭代过程的搜索算法,算法体现群体搜索和群体中个体之间信息交换两大策略,为每个个体提供了优化的机会,使得整个群体在优胜劣汰(survivalofthefittest)的选择机制下保证进化的趋势。进化算法及其在数值计算中的应用进化算法采用编码的形式来表示复杂结构,并将每个编码称为一个个体(individual),算法维持一定数目的编码集合,称为种群或群体(population)。通过对群体中个体进行相应的操作,最终获得一些具有较高性能指标的个体。进化算法的研究始于20世纪60年代,Holl
4、and针对机器学习问题发展了遗传算法(geneticalgorithm,GA),Fogel对于优化模型系统提出了进化规划(evolutionaryprogramming,EP)Rechenberg和Schwefel对于数值优化问题提出了进化策略(evolutionarystrategy,ES)。进化算法及其在数值计算中的应用遗传算法是一种宏观意义下的仿生算法,它模仿的机制是一切生命与智能的产生与进化过程。遗传算法通过模拟达尔文“优胜劣汰、适者生存”的原理,激励好的结构;通过模拟孟德尔遗传变异理论,在迭代过程中保持已有的结构,同时寻找更好的结构。适应度:遗传算法中使用适应度这个概念来度量
5、群体中的每个个体在优化计算中可能达到或接近最优解的程度。适应度较高的个体遗传到下一代的概率较大,而适应度较低的个体遗传到下一代的概率相对较小。度量个体适应度的函数称为适应度函数(FitnessFunction)。进化算法及其在数值计算中的应用遗传操作是遗传算法的核心,它直接影响和决定遗传算法的优化能力,是生物进化机理在遗传算法中的最主要体现,遗传算法的遗传操作包括选择、变异和交叉。选择(selection):选择操作与生物的自然选择机制相类似,体现了“适者生存,优胜劣汰”的生物进化机理。根据适应度的大小来判断个体的优良,性状优良的个体有更大的机会被选择,产生后代。比例选择:个体被选中的
6、概率与其适应度大小成正比。假设群体规模为M,个体i的适应度为,则个体i被选中的概率为进化算法及其在数值计算中的应用交叉(crossover):交叉操作是指对两个相互配对的染色体按某种方式相互交换其部分基因,从而形成两个新的个体。交叉运算是遗传算法区别于其它进化算法的重要特征,它在遗传算法中起着关键作用,是产生新个体的主要方法,决定了遗传算法的全局搜索能力。进化算法及其在数值计算中的应用单点交叉:算术交叉:变异(mutation):变异运算是指将个体染色体编码串中的某些基因座上的基因值用该基因座上的其它等位基因来替换从而形成一个新的个体。变异运算只是产生新个体的辅助方法,但也是一个必不可
7、少的运算步骤,它决定了遗传算法的局部搜索能力。通过变异操作可以维持群体多样性,防止出现早熟现象,改善遗传算法的局部搜索能力。基本位变异:对个体编码串中以变异概率随机指定的某一位或某几位基因座上的基因值做变异运算。二进制中,把基因值取反,即0变1,1变0。浮点数编码中对选定的第i个个体进行逆转操作,如果浮点数变化范围是,则进化算法及其在数值计算中的应用遗传算法是一个迭代过程,它模拟生物在自然环境中的遗传和进化机理,反复将选择算子、交叉算子、变异算
此文档下载收益归作者所有