An Improved Differential Evolution with a Novel Restart Mechanism
1.算法背景及策略:
提出目的是为了缓解过早的收敛和停滞。算法策略:(1)开发了组合局部突变策略,通过使用两种局部突变策略来改善DE的利用。(2)提出了一种新的重启机制,通过使用优秀个体搜索超矩形,并以搜索空间随机生成的概率来代替下级个体,从而提高人口多样性并利用优势个人的有用信息。(3)因为对于参数设置,常数值不能适应所有问题,随机方法[15]不能适应不同的进化阶段,而自适应方法总是产生昂贵的计算成本。应用简单有效的方法来调整控制参数。
2.算法步骤:
(1)初始化:在搜索空间内随机生成初始种群(population) P0 P 0
x0i,j=αj+rand(0,1)∗(bj−αj)
x
i
,
j
0
=
α
j
+
r
a
n
d
(
0
,
1
)
∗
(
b
j
−
α
j
)
i=1,…,NP
i
=
1
,
…
,
N
P
(2)组合局部变异策略(Combined Local Mutation Strategy):
使用两个局部变异算子 DE/current−to−pbest/1 D E / c u r r e n t − t o − p b e s t / 1 , DE/pbest/1 D E / p b e s t / 1 有着更强大的能力去利用种群可能有希望的信息。 DE/current−to−pbest/1 D E / c u r r e n t − t o − p b e s t / 1 变异算子有更大的能力去探索搜索空间。
k是循环次数决定用哪个算子产生变异个体 k 是 循 环 次 数 决 定 用 哪 个 算 子 产 生 变 异 个 体
GT是一个阈值,对于GT过大可能导致收敛过慢,过小又会造成过早收敛。 G T 是 一 个 阈 值 , 对 于 G T 过 大 可 能 导 致 收 敛 过 慢 , 过 小 又 会 造 成 过 早 收 敛 。
x⃗ Gpbest表示从前p%这一种群中随机挑选的个体 x ⃗ p b e s t G 表 示 从 前 p % 这 一 种 群 中 随 机 挑 选 的 个 体
x⃗ Gr1优于x⃗ Gr2,不然交换它们位置 x ⃗ r 1 G 优 于 x ⃗ r 2 G , 不 然 交 换 它 们 位 置
p一般被设为0.1 p 一 般 被 设 为 0.1
(3)交叉(与原DE算法相同)
(4)选择(与原DE算法相同)
(5)重启机制(Restart Mechanism)
重启机制可以预防DE算法落入局部最优这一状况,避免过早收敛,停滞。
重启机制触发:设置阈值 KT K T ,初始 k=0 k = 0 每迭代一次 k=k+1 k = k + 1 ,当 k=KT k = K T 执行重启机制,并令 k=0 k = 0 。
根据适应值从高到底排序种群(
PG
P
G
)个体,把种群分为3个子种群,
superior(Ps)
s
u
p
e
r
i
o
r
(
P
s
)
,
general(Pg)
g
e
n
e
r
a
l
(
P
g
)
,
inferior(PI)
i
n
f
e
r
i
o
r
(
P
I
)
分别占比
p
p
,,
p
p
.
建立超矩阵,
li,ui
l
i
,
u
i
是
PS
P
S
种群第i维的最小值与最大值。
生成相反的亚群 Pso P s o :
for x⃗ Gi∈Ps,x⃗ soi∈Pso is given byxsoi,j=lj+(uj−xsi,j),j=1,2,…,D
f
o
r
x
⃗
i
G
∈
P
s
,
x
⃗
i
s
o
∈
P
s
o
i
s
g
i
v
e
n
b
y
x
i
,
j
s
o
=
l
j
+
(
u
j
−
x
i
,
j
s
)
,
j
=
1
,
2
,
…
,
D