第6章其他进化算法

Report
第六章 其他进化算法
1
第六章 其他进化算法
一.前言
二.进化策略
三.进化规划
四.遗传规划
五.差分进化
2
一.前言
1. 进化算法的起源和发展
 遗传算法(GA)是上世纪六七十年代美国密西
根大学Holland教授及其学生提出和发展起来的
 进化策略(Evolutionary Strategy, ES)是上世
纪60年代柏林技术大学的两名学生Rechenberg
和Schwefel在风洞试验中最初提出的
 进化规划(Evolutionary Programming, EP)是
上世纪六十年代美国学者Fogel首先提出的
3
一.前言
1. 进化算法的起源和发展
 由于GA,ES和EP是由不同领域的研究人员分
别独立提出的,在相当长的时期内相互之间没
有正式沟通
 1990年,GA才开始与ES和EP有所交流;1992
年ES和EP这两个领域的研究人员首次接触到对
方的研究工作
 通过交流,研究人员发现这些算法所依赖的思
想都是基于自然界的自然遗传和自然选择等生
物进化思想,具有惊人的相似之处
4
一.前言
1. 进化算法的起源和发展
 于是,GA,ES和EP等算法被统称为进化算法
(Evolutionary Algorithms, EAs),相应的研
究领域被统称为进化计算
 后来,遗传规划(Genetic Programming, GP)
和差分进化( Differential Evolutionary,DE)
也被纳入到EA的范畴之内
5
一.前言
2. 总体框架
begin
initialize the population with random individuals;
evaluate each individual;
repeat
select parents;
recombine pairs of parents;
mutate the resulting offspring;
evaluate the new-generated individuals;
select individuals for the next generation;
until a stop condition is met
end
6
一.前言
3. 国际学术会议情况
 1985年,在美国召开了第一届遗传算法国际会
议,并成立了国际遗传算法学会;1992年,在
美国举行了进化规划第一届年会;1999年这两
个国际会议合并为Genetic and Evolutionary
Computation Conference(GECCO),这是进
化算法在 美国召开的最主要国际会议
 1990年,在欧洲召开了第一届Parallel Problem
Solving From Nature(PPSN)国际会议,成为
在欧洲召开的进化算法方面的最主要国际会议
7
一.前言
3. 国际学术会议情况
 1993年,进化计算领域内第一个国际期刊
《Evolutionary Computation》在美国问世
 1994年,IEEE神经网络委员会主持召开了第一
届进化计算国际会议(IEEE Conference on
Evolutionary Computation, CEC),这是进化
算法领域最顶级的学术会议
 IEEE进化计算国际会议、IEEE神经网络国际会
议和IEEE模糊系统国际会议每三年在同一地点
同时召开,统称为IEEE世界计算智能大会
(IEEE Conference on Computation Intelligence,
8
WCCI)
二.进化策略
1. 引言
 ES最初用于风洞实验中物体外形的参数优化
 ES强调个体级的行为变化
 ES的几种形式:(1+1)-ES, (μ+1)-ES, (μ+λ)-ES以
及(μ, λ)-ES
9
二.进化策略
2. (1+1)-ES
 早期ES的种群中只包含一个个体,并且只使用
变异操作,变异后的个体与其父代进行比较,
选择较好的作为新的父代
x ( t  1)  x ( t )  N (0,  )
 存在的问题:
• 各维定常的标准差降低收敛效果
• 单点搜索效率不高(尽管可以理论上证明能
够收敛到全局最优点)
10
二.进化策略
2. (1+1)-ES
 在每个新个体的特征中增加了一个自适应参
数,这样每个解矢量中不仅包含了其数值信
息,而且还包含了变异信息
x  { ( x1 , x 2 , ... x n ), ( 1 ,  2 , ...,  n )}
 i   i  exp(  N (0,1)    N i (0,1))
'
'
x i  x i  N (0,  i )
'
'
11
二.进化策略
3. (μ+1)-ES
 在这种ES中,父代有μ个个体(μ >1),并且引入
重组算子,使父代个体组合出新的个体
 重组算子类似于GA中的重组运算
 对重组的新个体执行变异操作,见(1+1)-ES
 将变异后的个体与父代μ个个体进行比较,如果
优于父代的最差个体,则替代后者成为下一代
种群的新个体
12
二.进化策略
3. (μ+1)-ES
 特点:
• 只产生一个新个体
• 使用种群
• 增添了重组算子
13
二.进化策略
4. (μ+λ)-ES和(μ,λ)-ES
 (μ+λ)-ES中, μ个父代产生λ个子代,所有个体
都参与生存竞争,最好的μ个作为下一代的父代
 (μ,λ)-ES中, μ个父代产生λ个子代(λ > μ),只有
λ个子代参与生存竞争,从中选择最好的μ个作
为下一代的父代
 优劣性分析:
• (μ+λ)-ES保留旧个体可能是过时的可行解,
妨碍算法向最优方向发展;而(μ,λ)-ES舍弃全
部旧个体,使算法始终从新的基础上全方位
进化
14
二.进化策略
4. (μ+λ)-ES和(μ,λ)-ES
 优劣性分析:
• (μ+λ)-ES保留旧个体可能是局部最优解,误
导算法收敛,导致“早熟”;而(μ,λ)-ES选择
丢弃所有优良旧个体,可以避免“早熟”
• (μ+λ)-ES保留旧个体的同时也将进化参数σ保
留下来,不利于自适应机制;而(μ,λ)-ES恰恰
相反,有利于促进这种自适应调整
实践也证明, (μ,λ)-ES优于(μ+λ)-ES,成为当前
进化策略的主流
15
三.进化规划
1. 引言
 EP最初用于研究人工智能系统
 EP强调种群级的行为变化
 EP注重父代与子代表现行为的联系,而不是像
GA那样侧重于父代与子代遗传细节(基因及其
遗传操作)的联系
16
三.进化规划
2. 算法流程图
begin
initialize a population P with random individuals;
evaluate each individual in P;
repeat
for each individual x in P do
generate a offspring individual x’ in P’ via mutating x;
endfor
evaluate each individual in P’;
generate the new P at the next generation from P+P’;
until a stop condition is met
end
17
三.进化规划
3. 标准形式
 变异方式
xi  xi 
'
f ( x )  N (0,1)
 自适应调整依赖于适应值
 产生μ个个体,对每个个体执行变异操作,从2
μ个个体中选择出μ个个体组成新的种群
18
四.遗传规划
1. 引言
 GA不能描述层次化的问题
f ( x )  A0  A1 x  A2 x  A3 x
2
3
f ( x )  A0 log( A1 x  A2 x  A3 x )
2
3
f ( x )  A0  exp( A1 x )  log( A2 x )  sin( A3 x )
2
3
19
四.遗传规划
1. 引言
 GA不能描述层次化的问题
f ( x )  A0  A1 x  A2 x  A3 x
2
3
20
四.遗传规划
1. 引言
 GA不能描述计算机程序
i=1;
while(i<20){
i=i+1;
}
21
四.遗传规划
1. 引言
 GA缺乏动态可变性:GA在能够定长(静态)
编码表示的优化问题上求解较为有效,对于动
态编码的处理往往很难取得很好的求解效果
22
四.遗传规划
1. 引言
 1992年,美国斯坦福大学Koza提出了GP算法
 不同领域内的问题都可以重新形成为程序归纳
问题,GP为这些程序归纳问题提供了一种强壮
有效的求解算法
 GP利用结构性的表达语言来描述问题,能够解
决需用不确定长度字符描述的问题
23
四.遗传规划
2. 算法流程图
begin
generate the functions set F and terminals set T in the problem domain;
initialize a population P with random individuals based on F and T;
evaluate each individual in P;
repeat
while a new-generated child population P’ is not full do
select a pair of parent individuals from P via a selection scheme;
generate a pair of offspring individuals in P’ via a recombination scheme;
mutate each offspring individual via a mutation scheme;
endwhile
evaluate each individual in P’;
generate the new P at the next generation from P+P’;
until a stop condition is met
end
24
四.遗传规划
3. 构成要素
 个体表达
• 函数集F
•
•
•
•
•
•
•
算术运算符
超越函数
布尔表达式
条件表达式
循环表达式
控制转移说明
变量赋值函数
 ,  ,*, %
sin, cos, tan, log, exp
and, or, not
If-then-else, S w ith-C ase
D o-until, W hile-do, For-do
G o to, C all, Jum p
a:= , R ead , W rite
25
四.遗传规划
3. 构成要素
 个体表达
• 终止集T
•
•
+
常数
变量
a
*
b
c
26
四.遗传规划
3. 构成要素
 初始种群的产生
Step 1
Step 2
从函数集中选择根结点;
根据给定的最大深度分别从函数集和终止
集中选择元素
1) 如果待定结点深度小于给定的最大深度,从
函数集F及终止集T的并集C=F∪T中选取结点
2)如果待定结点深度等于给定的最大深度,从
终止集T中选取结点
27
五.差分进化
1. 引言
 1995年,Storn和Price提出了DE算法,最初用
于解决契比雪夫多项式问题,后来发现DE也能
够有效求解很多复杂优化问题
 DE实际上同时借鉴了EA和群体智能算法的思想,
保留EA中基于种群的各种进化操作(选择、交
叉和变异等),同时也具有记忆能力使得DE能
够通过群体内个体间的合作与竞争实现整个群
体智能优化搜索
 DE成为目前最主流的智能优化算法之一
28
五.差分进化
2. 算法流程图
Begin
initialize and evaluate a population P with random individuals;
repeat
for each individual x in P do
select a number of different individuals from P;
generate its offspring individual x’ via a mutation scheme based on the
selected individuals;
execute a crossover operation upon x’ with a probability scheme;
evaluate the generated individual x’;
endfor
for each individual x in P do
update x via a selection scheme between itself and its offspring x’;
endfor
until a stop condition is met
end
29
五.差分进化
3. 构成要素
 遗传运算
• 变异
30
五.差分进化
3. 构成要素
 遗传运算
• 变异
• 交叉
31
五.差分进化
3. 构成要素
 遗传运算
32
五.差分进化
3. 构成要素
 遗传运算
• 变异
• 交叉
• 选择
33

similar documents