基于动态约束处理与资源分配的双种群进化算法解决约束多目标优化问题(DPCPRA)
摘要
约束多目标优化问题(CMOPs)因其需要同时满足约束条件和优化多个目标而极具挑战性。本文提出了一种双种群进化算法(DPCPRA),通过动态约束处理机制和动态资源分配方案,有效平衡约束处理与目标优化之间的矛盾。实验表明,该算法在多个基准测试和实际问题中表现优异。
一、引言
约束多目标优化问题(CMOPs)广泛存在于工程和科学领域,其数学模型为:
min
F
(
x
)
=
(
f
1
(
x
)
,
f
2
(
x
)
,
…
,
f
m
(
x
)
)
s.t.
x
∈
Ω
g
j
(
x
)
≤
0
,
j
=
1
,
…
,
p
h
j
(
x
)
=
0
,
j
=
p
+
1
,
…
,
q
\begin{aligned} \min & \quad F(x) = (f_1(x), f_2(x), \dots, f_m(x)) \\ \text{s.t.} & \quad x \in \Omega \\ & \quad g_j(x) \leq 0, \quad j=1,\dots,p \\ & \quad h_j(x) = 0, \quad j=p+1,\dots,q \end{aligned}
mins.t.F(x)=(f1(x),f2(x),…,fm(x))x∈Ωgj(x)≤0,j=1,…,phj(x)=0,j=p+1,…,q其中,(x) 为决策变量,(g_j) 和 (h_j) 分别为不等式和等式约束。约束违反度定义为:
C
V
j
(
x
)
=
{
max
{
0
,
g
j
(
x
)
}
,
j
≤
p
max
{
0
,
∣
h
j
(
x
)
∣
−
δ
}
,
j
>
p
CV_j(x) = \begin{cases} \max\{0, g_j(x)\}, & j \leq p \\ \max\{0, |h_j(x)| - \delta\}, & j > p \end{cases}
CVj(x)={max{0,gj(x)},max{0,∣hj(x)∣−δ},j≤pj>p总约束违反度为:
C
V
(
x
)
=
∑
j
=
1
q
C
V
j
(
x
)
CV(x) = \sum_{j=1}^q CV_j(x)
CV(x)=j=1∑qCVj(x)
现有算法往往忽略约束信息或资源分配不合理,导致搜索效率低下。本文提出的 DPCPRA 通过双种群协同进化和动态机制解决这一问题。
二、核心技术解析
1. 双种群协同进化框架
DPCPRA包含两个种群:
- 主种群:直接优化所有约束,快速收敛到可行区域。
- 辅助种群:采用动态约束处理机制(DCPM),逐步增加约束数量,利用不可行解探索更多区域。
2. 动态约束处理机制(DCPM)
辅助种群在进化过程中动态调整约束处理策略:
- 约束优先级排序:根据约束的可行率排序,优先处理难以满足的约束。
- 分阶段约束添加:按优先级分组,逐步增加约束数量,避免直接处理所有约束导致的搜索停滞。
3. 动态资源分配方案(DRAS)
通过计算种群的成功繁殖率动态分配计算资源:
Success_rate
i
=
∣
O
f
f
i
,
survived
∣
∣
O
f
f
i
∣
\text{Success\_rate}_i = \frac{|Off_{i,\text{survived}}|}{|Off_i|}
Success_ratei=∣Offi∣∣Offi,survived∣资源分配比例为:
R
O
S
1
=
Success_rate
1
Success_rate
1
+
Success_rate
2
,
R
O
S
2
=
1
−
R
O
S
1
ROS_1 = \frac{\text{Success\_rate}_1}{\text{Success\_rate}_1 + \text{Success\_rate}_2}, \quad ROS_2 = 1 - ROS_1
ROS1=Success_rate1+Success_rate2Success_rate1,ROS2=1−ROS1表现更优的种群将获得更多资源。
三、算法流程
初始化主种群POP1和辅助种群POP2
阶段一:确定约束优先级
while 未达最大评估次数 do
生成子种群Off1和Off2
环境选择更新种群
if 辅助种群收敛到无约束前沿 then
分组约束并进入阶段二
end
end
阶段二:动态约束处理与资源分配
while 未达最大评估次数 do
根据当前约束组更新辅助种群
按ROS分配资源生成子种群
环境选择并更新种群
更新存档Archive
end
四、实验与结果分析
1. 测试套件
- MW:复杂约束形状的基准测试。
- LIRCMOP:小可行区域问题。
- DASCMOP:高维约束问题。
2. 性能指标
- 可行率(RFS):解的可行性比例。
- 倒置世代距离(IGD):解与真实帕累托前沿的距离。
- 超体积(HV):解的覆盖范围。
3. 实验结果
算法 | 最优IGD次数 | 最优HV次数 |
---|---|---|
DPCPRA | 26/37 | 28/37 |
CTAEA | 3/37 | 3/37 |
CCMO | 1/37 | 2/37 |
MSCMO | 2/37 | 1/37 |
CMOEA-MS | 1/37 | 4/37 |
结果表明,DPCPRA在大多数问题上表现最优,验证了其有效性。
五、结论与展望
DPCPRA通过双种群协同、动态约束处理和资源分配,有效平衡了约束处理与目标优化。未来可进一步探索:
- 辅助种群约束处理策略的改进。
- 动态切换条件的优化。
- 扩展到更多实际工程问题。
参考文献
Qiao, K., Chen, Z., Qu, B., Yu, K., Yue, C., Chen, K., & Liang, J. (2024). A dual-population evolutionary algorithm based on dynamic constraint processing and resources allocation for constrained multi-objective optimization problems. Expert Systems with Applications, 238, 121707.