几种智能优化方法

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.遗传算法

遗传算法(Genetic Algorithms, GA)是由美国密歇根大学的John H.Holland教授及其学生于20世纪60年代末到70年代初提出的。在1975年出版的《自然与人工系统的自适应性》一书中,Holland系统地阐述了遗传算法的基本原理和方法,提出了对遗传算法的理论发展极为重要的模板理论。

遗传算法基本思想:

遗传算法是根据问题的目标函数构造一个适值函数,对于有多个解构成的种群进行评估、遗传运算、选择,经多代繁殖,获得适应值最好的个体作为问题的最优解。具体描述如下。

1)产生初始种群

遗传算法是一种基于群体寻优的方法,算法运行时是以一个种群在搜索空间进行搜索。一般是采用随机方法产生一个初始种群。也可以采用其他方法构造一个初始种群。

2)根据问题的目标函数构造适值函数

在遗传算法中使用适值函数来表征种群中每个个体对其生存环境的适应能力,每个个体具有一定的适应值。适应值是种群中个体生存机会的唯一确定值。适值函数直接决定着群体的进化行为。适值函数基本上依据优化的目标函数来确定。为了能够直接将适值函数与群体中的个体优劣相联系,在遗传算法中适应值规定为非负,并且在任何情况下总是希望越大越好。

3)根据适应值的好坏不断选择和繁殖

在遗传算法中自然选择规律的体现就是以适应值的大小决定的概率分布来进行计算选择。个体的适应值越大,该个体被遗传到下一代的概率越大;反之,个体适应值越小,该个体被遗传到下一代的概率越小。被选择的个体两两进行繁殖,繁殖产生的个体组成新的种群。这样的选择和繁殖的过程不断重复。

4)若干代后得到适应值最好的个体即为最优解

在若干代后,得到适应值最好的个体所对应的解即被认为是问题的最优解。

遗传算法构成要素:

a)种群和种群大小

种群是有染色体构成的。每个个体就是一个染色体,每个染色体对应着问题的一个解。种群中个体的数量称为种群大小或种群规模。种群规模通常采用一个不变的常数。一般来说种群规模越大越好,但是种群规模增大也将导致运算时间的增大。在一些特殊情况下,群体规模也可能采用与遗传代数相关的变量,以获取更好的优化效果。

b)编码方法(Encoding Scheme)

编码方法也称为基因的表达方法。在遗传算法中,种群中每个个体,即染色体是由基因构成的。所以染色体与要优化的问题的解如何进行对应,就需要通过基因来进行表示,即染色体进行正确的编码(一般用二进制编码)。正确地对染色体进行编码来表示问题的解是遗传算法的基础工作,也是最重要的工作。

c)遗传算子(Genetic Operator)

遗传算子包括交叉(Crossover)和(Mutation)。遗传算子模拟了每一代中创造后代的繁殖过程,是遗传算法的精髓。

交叉是最重要的遗传算子,它同时对两个染色体进行操作,组合二者的特性产生新的后代。交叉最简单的方式是在双亲的染色体上随机地选择一个断点,将断点的右段相互交换,从而形成两个新的后代。这种方式对于二进制编码最适合。遗传算法的性能很大程度上取决于采用的交叉运算的方式。

交叉率定义为各代中交叉产生后代数与种群中个体数的比。显然,较高的交叉率将达到更大的解空间,从而减小停止在非最优解上的机会;但交叉率过高,会因过多搜索不必要的

解空间而浪费大量的计算时间。

变异率定义为种群中变异基因数在总基因数中的百分比。变异率控制着新基因导入种群的比例。若变异率太低,一些有用的基因就难以进入选择;若太高,即随机的变化太多,那么后代就可能失去从双亲继承下来的好特性,这样算法就会失去从过去搜索中学习的能力。

d)选择策略和停止准则

选择策略是从当前种群中选择适应值高的个体以生成交配池的过程。使用最多的是正比例选择策略。选择过程体现了生物进化过程中“适者生存,优胜劣汰”的思想,并保证优良基因遗传给下一代。一般使用最大迭代次数作为停止准则。

2.蚁群算法

20世纪90年代初,意大利学者Dorigo M等人提出一种模拟昆虫王国中蚂蚁群体觅食行为方式的仿生优化算法——蚁群算法(Ant Colony Algorithm, ACA)。该算法引入正反馈并行机制,具有较强的鲁棒性、优良的分布式计算机制、易于与其他方法结合等优点。

据生物学家的观察和研究,发现自然界中的蚂蚁有能力在没有任何可见提示下找出从蚁穴到食物的最短路径,并且能随环境的变化而变化,适应性地搜索新的路径,产生新的选择。作为昆虫的蚂蚁在寻找食物源时,能在其走过的路径上释放一种蚂蚁特有的分泌物——信息素,使得一定范围内的其他蚂蚁能察觉到并由此影响它们以后的行为当一些路径上通过的蚂蚁越来越大时,其留下的信息素浓度也越来越大,好来蚂蚁选择该路径的概率也越高,从而更增加了该路径的信息素强度,这种选择被称为蚂蚁的自催化行为。因此,也可以将蚂蚁王国理解成所谓的增强型学习系统。

自从蚁群算法在著名的旅行商问题(TSP)和二次分配问题(QAP)上取得成效以来,已陆续渗透到其他问题领域中,如工件排序、图着色问题、车辆调度问题、大规模集成电路设计、通讯网络中的负载平衡问题等。

蚁群算法这种来自生物界的随机搜索寻优方法目前已在许多方面表现出相当好的性能,它的正反馈性和协同性是指可用于分布式系统,其隐藏的并行性更是具有极强的发展潜力。其求解的问题领域也在进一步扩大,如一些约束型问题和多目标问题,从1998年10月与比利时布鲁塞尔召开的第一届蚁群优化国际研讨会的内容中可以看出这种带有构造性特征的搜索方法所产生的深远影响和广泛应用。

3.模拟退火算法

模拟退火算法(Simulated Annealing, SA)是属于一种通用的随机搜索算法,是局部搜索算法的扩展,它的早期思想是在1953年由Metropolis提出来的,到1983年由Kirkpatrick等人成功的应用在组合优化问题中.

模拟退火法来源于固体退火原理,将固体加热到一定温度后,它的所有分子在状态空间自由运动.随着温度的逐渐下降,分子停留在不同的状态,分子运动逐渐趋于有序,最后以一定的结构排列.这种由高温向低温逐渐降温的过程称为退火.退火过程中系统地熵值不断减小,系统能量随温度的降低趋于最小值.固体退火过程与优化问题之间存在着类似性. Kirkpatrick 等人把Metropolis等人对用固体在恒定问题下达到热平衡过程的模拟引入到优化过程中.即如果E2-E1<0,则接受新状态,否则按概率P接受新状态.T为一随即时间t增加而下降的参变量,相当于退火过程中的温度.这种利用优化问题求解物理系统退火过程的相似性,使用Metropolis算法,适当控制温度的下降过程,实现模拟退火,从而达到求解全局优化问题的随机性方法称之为“模拟退火算法”。

模拟退火算法在搜索策略上引入了适当的随机因素和物理系统退火过程的自然机理,使得在迭代过程中出现可以接受使目标函数值变“好”的试探点,也可以以一定的概率接受

相关文档
最新文档