最优控制-遗传算法综述
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
最优控制论文遗传算法的发展
摘要
最优控制是现代控制理论的核心,它研究的主要问题是:在满足一定约束条件下,寻求最优控制策略,使得性能指标取极大值或极小值。解决最优控制问题的主要方法有古典变分法、极大值原理和动态规划。
最优控制理论已被应用于综合和设计最速控制系统、最省燃料控制系统、最小能耗控制系统、线性调节器等。目前研究最优控制理论最活跃的领域有神经网络优化、模拟退火算法、趋化性算法、遗传算法、鲁棒控制、预测控制、混沌优化控制以及稳态递阶控制等。
作为一种比较新的一种新的优化算法—遗传算法(Genetic Algorithm, 简称G A )正在迅速发展。
遗传算法是一种基于生物自然选择与遗传机理的随机搜索与优化方法。近年来,由于遗传算法求解复杂优化问题的巨大潜力及其在工业工程领域的成功应用,这种算法受到了国内外学者的广泛关注。本文介绍了遗传算法的研究现状,描述了它的主要特点和基本原理,概述了它的理论、技术和应用领域,讨论了混合遗传算法和并行遗传算法,指出了遗传算法的研究方向,并对遗传算法的性能作了分析。
目录
1 前言 (1)
2 遗传算法基本理论 (1)
2.1 遗传算法的基本步骤 (1)
2.2 遗传算法的现状 (2)
2.3 遗传算法的应用 (3)
2.3.1函数优化 (3)
2.3.2组合优化 (4)
2.3.3生产调度问题 (4)
2.3.4自动控制 (4)
2.3.5机器人学 (4)
2.3.6图像处理 (4)
2.3.7人工生命 (5)
2.3.8遗传编程 (5)
2.3.9机器学习 (5)
2.3.10数据挖掘 (5)
3 遗传算法的研究方向 (5)
参考文献 (7)
1 前言
遗传算法(Genetic Algorithm,GA)是近年来迅速发展起来的一种全新的随机搜索与优化算法,其基本思想是基于Darwin的进化论和Mendel的遗传学说。该算法由密执安大学教授Holland及其学生于1975年创建[1]。此后,遗传算法的研究引起了国内外学者的关注。自1985年以来,国际上已召开了多次遗传算法的学术会议和研讨会,国际遗传算法学会组织召开的ICGA(International Conference on Genetic Algorithms)会议和FOGA(Workshop on Foundation of Genetic Algorithms)会议,为研究和应用遗传算法提供了国际交流的机会。
近年来,遗传算法已被成功地应用于工业、经济管理、交通运输、工业设计等不同领域,解决了许多问题[2]。例如,可靠性优化、流水车间调度、作业车间调度、机器调度、设备布局设计、图像处理以及数据挖掘等。本文将从遗传算法的理论和技术两方面概述目前的研究现状,描述遗传算法的主要特点、基本原理以及各种改进算法,介绍遗传算法的应用领域,并对遗传算法的性能进行分析。
2 遗传算法基本理论
2.1 遗传算法的基本步骤
遗传算法的思想源于生物遗传学和适者生存的自然规律,是具有“生存+检测”的迭代过程的搜索算法。它以一种群体中的所有个体为对象,并利用随机化技术指导对一个被编码的参数空间进行高效搜索。其中,选择、交叉和变异构成了遗传算法的遗传操作;参数编码、初始群体的设定、适应度函数的设计、遗传操作设计、控制参数设定五个要素组成了遗传算法的核心内容。
我们习惯上把1975 Holland年提出的GA称为传统的GA。它的主要步骤如下:
(1)编码:GA在进行搜索之前先将解空间的解数据表示成遗传空间的基因型串结构数据,这些串结构数据的不同组合便构成了不同的点。
(2)初始群体的生成:随机产生N个初始串结构数据,每个串结构数据称为一个个体,N个个体构成了一个群体。GA以这N个串结构数据作为初始点开始迭代。
(3)适应度评估检测:适应度(适应性函数)表明个体或解的优劣性。不同的问题,适应度的定义方式也不同。
(4)选择:选择的目的是为了从当前群体中选出优良的个体,使它们有机会作为父代为下一代繁殖子孙。遗传算法通过选择过程体现这一思想,进行选择
的原则是适应性强的个体为下一代贡献一个或多个后代的概率大。选择实现了达尔文的适者生存原则。
(5)交换:交换操作是遗传算法中最主要的遗传操作。通过交换操作可以得到新一代个体,新个体组合了其父辈个体的特性。交换体现了信息交换的思想。
(6)变异:变异首先在群体中随机选择一个个体,对于选中的个体以一定的概率随机地改变串结构数据中某个串的值。同生物界一样,GA中变异发生的概率很低,通常取值在0.001-0-01之间。变异为新个体的产生提供了机会。[3]遗传算法的流程为:
开始
{
选择编码方式;
产生初始群体;
计算初始群体的适应度;
若不满足结束条件则循环执行:
{
选择操作;
交换操作 ;
变异操作 ;
计算新一代群体的适应度;
}
}
结束[3]
2.2 遗传算法的现状
仿生算法是一大类目前研究的比较火热的算法,遗传算法是其中一个重要的分支。
图1 仿生算法组成图
在遗传算法的研究中,主要有三类研究方向: (1)研究遗传算法本身的理论基础。(2)用遗传算法作为工具解决工程问题,主要是进行优化,关心的是是否能在传统方法上有所提高。(3)用遗传算法研究演化现象,一般涉及到人工生
命和复杂性科学领域。[6]
在工程实践中的遗传算法应用主要是利用了其并行性和全局搜索的特点来进行优化。尽管遗传算法本身是一种通用弱方法,仍需要尽量结合特定领域的知识,实现解决特定问题的一个遗传算法特定实现,其范围可能更窄,但效果会更好。遗传算法在应用中最关键的问题有如下3个:
(1)串的编码方式:其本质是问题编码。一般把问题的各种参数用二进制编码,构成子串;然后把子串拼接构成“染色体”串。串长度及编码形式对算法收敛影响极大。
(2)适应度的确定:适应度也称适应函数(fitnessfunction)或目标函数(objective function),这是问题求解品质的测量函数;往往也称为问题的“环境”。一般可以把问题的模型函数作为目标函数;但有时需要另行构造。
(4)遗传算法自身参数设定:遗传算法自身参数有3个,即群体大小n、交叉概率P。和变异概率P_,群体大小n太小时难以求出最优解,太大则增长收敛时间,一般n=30^-160;交叉概率P。太小时难以向前搜索,太大则容易破坏高适应值的结构,一般取P}=O.25 ^-0.75 ;变异概率Pm太小时难以产生新的基因结构,太大使遗传算法成了单纯的随机搜索,一般取Pm-0.01一0.2。
事实上,遗传算法不仅可以解决我们一般意义所理解的最优化问题,现在在越来越多的领域内取得了成功:图像分割,图像检测,图像识别,神经网络权重设计,数据挖掘,载人航天,大坝安全监测,天线设计,物流管理,控制理论,集成电路设计,聚类分析,医疗诊断,材料设计⋯。可见,遗传算法的应用研究已从初期的组合优化求解拓展到了许多更新、更工程化的应用方面。[5]
2.3 遗传算法的应用
遗传算法提供了一种求解复杂系统优化问题的通用框架, 它不依赖于问题的具体领域,对问题的种类有很强的鲁棒性,所以广泛应用于很多学科。下面是遗传算法的一些主要应用领域。
2.3.1函数优化
函数优化是遗传算法的经典应用领域,也是对遗传算法进行性能评价的常用算例。很多人构造出了各种各样的复杂形式的测试函数,有连续函数也有离散函数,有凸函数也有凹函数,有低维函数也有高维函数,有确定函数也有随机函数,有单峰值函数也有多峰值函数等,用这些几何特性各具特色的函数来评价遗传算法的性能,更能反映算法的本质效果。而对于一些非线性、多模型、多目标的函数优化问题,用其他优化方法较难求解,而遗传算法却可以方便地得到较好的结果。