【Information Sciences 2023】An evolutionary algorithm with clustering-based selection strategies for multi-objective optimization
基于聚类选择策略的多目标优化进化算法
https://www.sciencedirect.com/science/article/pii/S0020025522015729#kg005
本文要点:本文并没有对交叉、变异操作进行改进,是在使用聚类的方法如何选择种群选择、mating selection(交配选择)、environmental selection(环境选择)上做了文章, 指导多目标进化算法选择个体,种群创建与更新
In the proposed algorithm, two clustering based selection strategies, named local indicator selection and local crowding selection, have been devised to appropriately search the space.
The local indicator selection :选择多样化和高度收敛的个体进行交配
the local crowding selection strategy:是为了在帕累托front 为下一代的进化维持一组均匀分布的个体。
a clustering based crowding degree strategy:提取一个均匀分布且收敛的解作为最终输出。
The mating selection(交配选择) :促进收敛
the environmental selection(环境选择) :促进种群多样性
算法整体流程(算法1):
在整个多目标优化进化算法的框架中:
-
Algorithm 1首先初始化种群并执行进化操作(交叉和变异)。
-
然后,它使用Algorithm 2来选择交配池,此时涉及到非支配排序和k-means聚类,以从当前种群中选择具有最佳收敛适应度的个体。
-
之后,Algorithm 1利用Algorithm 3执行局部拥挤选择。这一步骤通过计算拥挤距离并从每个簇中选择具有最佳拥挤距离的个体来保持种群多样性。
-
这些步骤重复进行,直到达到预定的函数评估次数,最终得到一个既考虑了目标优化又保持了种群多样性的解决方案种群。
通过整合这三个算法,可以有效探索解空间,同时保证了解的质量和多样性,避免了早熟收敛到局部最优解。
Initialization: The algorithm starts by initializing
种群数量 (N
),
the number of objectives (m
),
the number of decision variables (D
),
lower 和 upper bounds of decision variables (B),
评估的最大次数 max_ev
weight vectors (W
),
ideal vectors (Z
),
sets the number of function evaluations (ev
) to zero.
the parent population / 父代种群 (DP
),
offspring population / 子代种群 (PP
),
and their mating pools (MDP
and MPP
).
簇的数量K = 0.5* 种群数量N
-
主循环:算法进入一个while循环,直到函数评估次数(
ev
)超过最大允许数量(maxev
)。-
构建初步交配池:它首先从父代种群(
DP
)中随机选择N-K
个解决方案形成交配池(M_DP
)。 -
后代的交叉和变异:对
M_DP
中的每个解与父代种群(DP
)进行交叉和变异操作,以创建一个新的后代池(OffspringPool_1
)。 -
local indicator selection构建子代池:在子代种群PP和第一代后代池
OffspringPool_1
的并集上执行 local indicator selection,以选择K
个解决方案,然后用来更新M_DP
。 -
第二次交叉和变异:对子代种群池
M_PP
中的每个解进行交叉和变异,以创建第二个后代池(OffspringPool2
)。 -
种群更新:父代种群(
DP
)= 父代种群(DP
)+OffspringPool_1 + OffspringPool_2,
子代种群(PP
)= 后代种群(PP
)+OffspringPool_1 + OffspringPool_2
-
环境选择:此步骤涉及根据环境因素选择个体,考虑到权重向量(
W
)和理想向量(Z
),选出父代DP -
local crowding selection选出种群:此步骤根据解在解空间中的'生态位'有多拥挤来选择个体,旨在保持种群的多样性,选出子代PP
-
函数评估次数更新:函数评估次数(
ev
)= 函数评估次数(ev
)增加种群大小(N
)。
-
-
结束:一旦循环终止(即达到最大评估次数),算法对父代 DP 和后代 PP 种群应用基于聚类的拥挤度策略,以确定最终种群(
P
)。
Local indicator selection strategy(算法2)
输入:种群PP,种群大小N,被选出的个体数(簇的数量)K
输出:大小为 K 的交配池M
从当前种群中选择具有最佳收敛适应度的个体作为交配池,这有助于算法在寻找最优解
这是Algorithm 1中用于选择交配池的一个子步骤。
-
非支配排序:对大小为 N 的种群(
PP
)进行非支配排序,生成 t 个前沿(F1, F2, ..., Ft
)。 -
将非支配排序个体加入临时种群Q:从第一个前沿开始,逐个加入个体至临时种群(
Q
),直到数量达到或超过种群大小N
。此时临时种群(Q
)的大小为 N -
计算适应度并聚类:计算种群
Q
中每个个体的收敛适应度(CF
),然后使用k-means算法将Q
中的个体分为K
个簇(C1,C2,.....Ck)。 -
选择交配池个体:从每个簇中选择具有最佳
CF
值的个体,组成交配池M
。此时交配池M
的大小为 K
Local Crowding Selection Strategy(算法3)
输入:种群PP,种群大小为N
输出:最终种群Q,大小为N
在算法中,当选择个体时,如果候选个体的数量(Q)超过了所需个体的数量(N),则需要采取一种方法来减少个体的数量。通过计算拥挤距离(crowding distance)并从每个簇中选择具有最佳拥挤距离的个体来保持种群的多样性,同时选择最优秀的个体。
-
非支配排序:对当前种群(
PP
)执行非支配排序,产生多个前沿(F1, F2, ..., Ft
)。 -
累积个体到临时种群:从第一前沿开始,将个体加入最终种群(
Q
),直到其大小达到或超过N。 -
拥挤距离计算:
- 如果临时种群的大小超过种群大小N,使用k-means算法将
Q
中的个体分为N
个簇(C1,C2,.....CN)。 - 对最终种群(
Q
)的每个个体计算拥挤距离(CD
)。
- 如果临时种群的大小超过种群大小N,使用k-means算法将
-
选择个体:在每个簇中,识别出具有最佳拥挤距离值(
CD
)的个体,并将这些个体集合为新的种群U
。此时新的种群U
的大小为N -
更新最终种群:将
U
设定为最终的种群Q
。
最佳拥挤距离是什么?
最佳拥挤距离是一个用于评估种群中个体多样性的指标。它通常在多目标优化中使用,特别是在像NSGA-II(非支配排序遗传算法II)这样的算法中。在这些算法中,拥挤距离用于衡量一个个体周围的空间——即该个体与其最近邻个体之间的距离。一个高的拥挤距离值意味着该个体周围有更多的空间,这表明它位于解空间中较为独特的区域,多样性较好。
通过选择每个簇中拥挤距离最大的个体,算法可以确保保留多样性较高的个体,这有助于避免过早收敛到局部最优解,并有助于更全面地探索解空间。这种方法尤其适用于解空间复杂或者目标函数之间存在冲突的优化问题。