ABSTRACT
This paper introduces a niching method that approximates Pareto-optimal solutions with diversity mechanisms in objective and decision space. The rake selection is used for diversity in objective space , a selection method based on the distances to reference lines in objective space. A niching approach that uses the density-based clustering method DBSCAN is introduced for diversity in decision space.
INTRODUCTION
The optimization of conflictive objectives belongs to one of the most challenging tasks in optimization. This paper will concentrate on the detection and approximation of equivalent Pareto-subsets.
Most multi-objective algorithms that have been proposed in the past concentrate on diversity in objective space. Only a few approaches also consider diversity in decision space. Ih this paper, the niching technique maintains diversity in objective space with rake selection, and diversity in decision space with the clustering approach.
RAKE SELECTION
借助于目标空间中任意分布的参考线——耙(rake),Rake-Selection 已经被用于近似帕累托前沿(面)。如
F
i
g
u
r
e
2
Figure 2
Figure2所示。
首先需要在决策空间中定义
k
k
k条参考线
r
j
r_{j}
rj,
1
≤
j
≤
k
1 \leq j \leq k
1≤j≤k。原则上可以任意分布,考虑二目标情况,通常设置一组均匀分布的平行线。均匀分布的参考线将带来帕累托前沿上均匀分布的解。这里,将耙正交且等距排列在由帕累托最优拐角点
c
i
c_i
ci,
1
≤
i
≤
m
1 \leq i \leq m
1≤i≤m定义的
(
m
−
1
)
(m-1)
(m−1)维超平面上,这将会在目标空间中产生
k
m
−
1
k^{m-1}
km−1条参考线。拐角点的求法(略)。为了定义每个耙
r
j
r_j
rj,必须计算一个与拐角点
c
i
c_i
ci 的超平面
h
h
h 正交的向量
n
n
n——耙基(rake base)。由于截断点的等距分布,参考线在目标空间中是均匀且平行分布的。其中截断点定义了参考线的位置:
p
i
=
c
1
+
(
i
−
1
)
⋅
∣
∣
c
1
−
c
2
∣
∣
/
(
k
−
1
)
,
1
≤
i
≤
k
p_i = c_1 + (i -1) \cdot ||c_1 - c_2||/(k - 1), 1 \leq i \leq k
pi=c1+(i−1)⋅∣∣c1−c2∣∣/(k−1),1≤i≤k
此外,可通过Gram-Schmidt正交法计算一个方向向量
n
n
n,用来保证每条参考线都与耙基正交。
A
l
g
o
r
i
t
h
m
1
Algorithm 1
Algorithm1 给出了Rake选择的具体过程:
Rake选择算法的第一步是对合并(父子)种群执行非支配排序。然后对产生的非支配解集
η
\eta
η 实施Rake选择操作。原理是:从
η
\eta
η 中选择距离每条参考线最近的解用于生成新种群。由于不同的参考线可能对应同一个解,被选中的解数目
δ
\delta
δ 小于种群规模
μ
\mu
μ 时,按照非支配排序序号最小的原则取
μ
−
δ
\mu-\delta
μ−δ 个解来填充种群。
CLUSTERING WITH DBSCAN
本节介绍一种基于密度的聚类方法(DBSCAN)。
相比K-Means,DBSCAN在形成小生境的过程中具有两个优势:1,无需提前设定类别数;2,允许样本数据可以是非凸的,交织的(如下图)。
一项重要任务是寻找核心点。为此,首先定义特征向量
x
x
x的
ε
\varepsilon
ε邻域,
ε
−
n
e
i
g
h
b
o
r
h
o
o
d
N
ε
(
x
)
\varepsilon-neighborhood~N_\varepsilon(x)
ε−neighborhood Nε(x),这里令
η
\eta
η为数据元素集,
ε
\varepsilon
ε和
ν
\nu
ν分别为邻域半径以及最少邻居数,则:
N
ε
=
y
∈
η
∣
∣
∣
y
−
x
∣
∣
≤
ε
N_\varepsilon = {y\in \eta | ||y-x||\leq \varepsilon}
Nε=y∈η∣∣∣y−x∣∣≤ε
对于核心点的定义为:
∣
N
ε
∣
≥
ν
| N_\varepsilon | \geq \nu
∣Nε∣≥ν
否则为边界点。
在展示完整DBSCAN之前,需要知道几个重要定义:
- 直接密度可达(Direct Density-Reachable)
概念 : 样本 p p p是核心对象, 样本 q q q在其 ε \varepsilon ε-邻域中 , 那么 称为 p p p直接密度可达 q q q;注意方向 p → q p \rightarrow q p→q,即从 p p p出发直接密度可达 q q q;
直接密度可达有两个条件 : ① 起点必须是核心对象 , ② 终点必须在起点的 ε \varepsilon ε-邻域中;
- 密度可达(Density-Reachable)
存在一个由核心对象 p , p 1 , ⋯ , p n p, p_1, \cdots, p_{n} p,p1,⋯,pn组成的链, p p p直接密度可达 p 1 p_1 p1, p 1 p_1 p1直接密度可达 p 2 p_2 p2, ⋯ \cdots ⋯, p n − 1 p_{n-1} pn−1直接密度可达 p n p_{n} pn,而且 p n p_{n} pn直接密度可达 q q q,此时称 p p p 密度可达 q q q。
链 上的核心对象要求 : 链的起点和经过的点必须是核心对象, 链的最后一个点, 可以是任意对象。
例如:核心点 p p p直接密度可达核心点 q q q,核心点 q q q直接密度可达任意一点 t t t,那么 p p p密度可达 t t t。
- 密度连接
p p p和 q q q两个样本, 存在一个中间样本对象 O O O, O O O到 p p p是密度可达的, O O O到 q q q也是密度可达的,此时称 p p p和 q q q可由 O O O密度连接。
O O O可以密度连接 p p p和 q q q样本 , 但是 p p p和 q q q不一定能走到 O O O,它们可能不是核心对象。
注意, O O O以及到样本 p p p或 q q q中间的样本都必须是核心对象。
(图片原文链接:https://blog.csdn.net/shulianghan/article/details/105927658)
接下来介绍DBSCAN的完整算法
CLUSTERING-BASED NICHING
本节中提到了两种基于聚类的小生境方法:
- Single Population Niching and Adaptive Corner Points
该实例中使用了 k − m e a n s k-means k−means聚类方法用以生成小生境
- Multiple Population and Recluster Indicator
此例中,使用DBSCAN来形成小生境,同时分析了多种群在算法中的应用。
每个子种群都采用 ( μ , λ ) (\mu, \lambda) (μ,λ)方案。因此规模越大的子种群找到新小生境的概率就越更高。
本文给出了一个重聚类指标的定义,用来自动识别潜在的小生境:
完整算法如下:
重聚类指标的思想是基于目标空间中一个小生境的两个相邻个体在决策空间中相邻的假设。因此,如果目标空间中相邻解x和y的距离 ∣ ∣ f ( x ) − f ( y ) ∣ ∣ 2 ||f(x)-f(y)||_2 ∣∣f(x)−f(y)∣∣2在决策空间中高于目标空间中更不相似的两个解的距离,那么可能已经发现了一个新的小生境。
如果重聚类条件成立,则必须检查新的小生境。此时要重启DBSCAN来进行聚类。
REFERENCES
[1]. https://www.researchgate.net/publication/220739961_DBSCAN-based_multi-objective_niching_to_approximate_equivalent_pareto-subsets
[2]. https://www.researchgate.net/publication/221653977_A_Density-Based_Algorithm_for_Discovering_Clusters_in_Large_Spatial_Databases_with_Noise
[3]. https://link.springer.com/chapter/10.1007/978-3-642-04617-9_23