随机蛙跳算法和NSGA2算法【精品文档】(完整版)

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

《智能算法及应用技术》

结课综述

Name: Moonlightran

Email: randolphingwp@

目录

1. 随机蛙跳(SFLA)算法 (1)

1.1 SFLA理论基础 (1)

1.2 SFLA 的基本原理 (3)

1.3 SFLA 的基本概念 (4)

1.4 SFLA 的参数设置 (4)

1.5 SFLA 的运算流程 (5)

1.6 SFLA函数优化中实例 (10)

1.7 粒子群算法(PSO)函数优化 (14)

2. 多目标优化算法(NSGA—II) (19)

2.1多目标优化问题描述 (19)

2.2 基本概念 (19)

2.3 非支配排序算法(NSGA) (20)

2.4 带精英策略的非支配排序遗传算法(NSGA—II) (22)

2.5 NSGA-II函数优化实例 (27)

单目标和多目标优化算法介绍

——随机蛙跳算法和带精英策略的非支配排序算法

通常的优化问题可以分为单目标优化问题和多目标优化问题。针对这两类问题,分别介绍随机蛙跳算法(SFLA)和带精英策略的非支配排序算法(NSGA—II),并且给出这两类算法在函数优化中的应用实例。

1.随机蛙跳(SFLA)算法

随机蛙跳算法是由Kevin Lanes和Mustafa Eusuff于2003 年共同提出,该算法结合了基于遗传特性的模因算法和基于行为的粒子群算法的优点,适合解决各类组合优化问题。混合蛙跳算法具有设置参数少、简单易于理解、鲁棒性强等特点,已在语音情感识别、作业车间调度、复杂函数优化问题求解等领域得到成功应用。

1.1 SFLA理论基础

SFLA 是一种群体仿生类启发式进化计算方法,该算法将模因算法和粒子群优化算法的思想相结合,并经过适度扩展,因而兼具二者的优点。作为SFLA 的理论基础,模因算法和粒子群优化算法有必要进行简要介绍。

1.1.1模因算法

Moscato受Dawkin提出的meme概念的启示,于1989年首次提出了模因算法。该算法源于文化进化理论中的隐喻思想,结合了全体成员参与搜索的思想和有选择性的特定个体搜索的机制,可以通过启发式搜索解决优化问题。模因算法在原理上与遗传算法很相似,不同的是该算法在原始遗传算法步骤中的交叉和变异步骤之后增加了一个小范围的局部进化过程,故模因算法也曾被叫做增加了局部搜索功能的遗传算法。给出模因算法的运算流程如图1.1所示。

图1.1模因算法流程

1.1.2粒子群算法

Kennedy和Eberhart受鸟群的群体飞行特性启发于1995年提出粒子群优化

算法,该算法是一种基于群体智能的自适应优化计算方法。假设有一群鸟,其中的所有个体均被称作一个“粒子”,这样的“粒子”被赋予速度和位置两种属性,在可行域中按照一定的规则飞行,目标是经过一定的进化次数找出待解问题的最佳参考方案。进化过程中,所有个体不断追随两个关键的极值以调整自己的位置和速度。其中一个极值是该粒子本身搜索到的最佳位置best P ,即粒子自身的最优值;另外一个是粒子群中的所有成员中当前最优个体所在的位置best G ,即全局最优解。

粒子群优化算法中个体的速度、位置更新公式如下:

)()()()(2111k i k best k i k ibest k i k k i X G rand c X P rand c V V -+-+=-+ω(1.1)

11+++=k i k i k i V X X (1.2)

其中,k i V 为第k 次迭代中第i 个粒子的速度。

k i X 为第 k 次迭代中第i 个粒子的位置。

k ibest P 为第 k 次迭代中第i 个粒子的自身最优位置。

k best

G 为第 k 轮进化中的全局最优位置。 Rand ()为位于范围[0,1]之间的随机数。

ω为粒子的惯性因子,1c 为粒子的认知因子,控制k i P 移动的幅度。

2c 为粒子的社会因子,控制k G 移动的幅度。

粒子群优化算法的运算流程为:

Step1:初始化粒子的速度和位置。

Step2:计算所有粒子的适应值。

Step3:比较各个粒子的当前适应值与其历史最优位置best P 的适应值,如果前者优,则置此粒子当前最佳位置为best P 。

Step4:比较各个粒子的当前适应值与其全局最优位置best G 的适应值,若前者优,则置此粒子当前全局最佳位置为best G 。

Step5:采用式(1.1)和式(2.1)更新种群中个体的速度和位置。

Step6:判断:若满足停止准则,则算法终止,否则转Step2。

上述两种算法核心思想的有机结合,即形成了所研究的混合蛙跳算法。

1.2 SFLA 的基本原理

相关文档
最新文档