一篇论文的整体思路和复现记录
论文:
L. Yang, J. Luo, Y. Xu, Z. Zhang and Z. Dong, “A Distributed Dual Consensus ADMM Based on Partition for DC-DOPF With Carbon Emission Trading,” in IEEE Transactions on Industrial Informatics, vol. 16, no. 3, pp. 1858-1872, March 2020, doi: 10.1109/TII.2019.2937513.
一个分布式对偶共识ADMM,基于直流动态最优潮流的分块,带有碳排放交易的ADMM
文章是怎么解决问题的呢?
摘要
文章给出了一个分布式的交替方向乘子法,用以解决在碳排放的情况下直流动态最优潮流的问题。一般来说,基于ADMM的分布式方法在相邻的子系统中公开边界节点和边界支路的信息。与这些方法相反,提出的方法(DC-ADMM-P)给出了一个新的策略,通过共识ADMM来解决DC-ADMM-CET的对偶问题,而仅仅需要公开相邻子系统之间的边界支路的公开信息。另外,DC-ADMM-P的收敛表现也因为减少了对偶乘子(dual multipliers)的数量并且采用了一个乘子提升的改进步长从而得到提升。
DC-ADMM-P在6到1062节点案例都得到了测试,并且与其他的分布式和去中心化方法进行了对比。仿真结果证实,DC-ADMM-P在解决DC-DOPF问题上的高效率,并且带有复杂的非线性因子,从而能够被看作凸的分布式函数。与此同时,也通过减少对偶乘子并且使用一个新的乘子更新策略实现了收敛表现的提升。
注意的点
从中可以看出文章有几个重要的点:
1.共识ADMM来解决DC-ADMM-P问题的对偶问题;
2.在求解问题的过程中,仅仅需要公开相邻子系统之间边界支路的公开信息,而不是像原来那样需要相邻子系统之间边界节点和边界支路的信息,从而更好的保护了不同子系统信息的私密性。
3.收敛表现因为对偶乘子数量的减少得到提升。
公式
一些符号及其含义:
符号 | 含义 |
---|---|
S B S^{B} SB | 所有节点集合 |
S G S^G SG | 发电机组节点集合 |
S T P S^{TP} STP | 时间集合 |
目标函数和约束条件
目标函数: 交易总成本最低:
F
T
C
=
F
T
H
+
F
C
E
T
(1)
\begin{aligned} F_{TC} = F_{TH}+F_{CET} \end{aligned}\tag{1}
FTC=FTH+FCET(1)
(1)热电机组的燃料成本:
F
T
H
=
∑
i
∈
S
G
∑
t
∈
S
T
P
f
i
(
P
i
,
t
G
)
(2)
\begin{aligned} F_{TH} = \sum_{i\in{S^G}}\sum_{t\in{S^{TP}}}f_i(P^G_{i,t}) \end{aligned}\tag{2}
FTH=i∈SG∑t∈STP∑fi(Pi,tG)(2)
机组
i
i
i的生产成本与出力之间的关系用二次函数的形式刻画:
f
i
(
P
i
,
t
G
)
=
α
i
+
β
i
P
i
,
t
G
+
γ
i
(
P
i
.
t
G
)
2
(3)
\begin{aligned} f_i(P^G_{i,t})=\alpha_i+\beta_iP^G_{i,t}+\gamma_i(P^G_{i.t})^2 \end{aligned}\tag{3}
fi(Pi,tG)=αi+βiPi,tG+γi(Pi.tG)2(3)
(2)碳排放成本
F
C
E
T
=
π
b
Δ
E
b
−
π
s
Δ
E
s
(4)
\begin{aligned} F_{CET} = \pi_b \Delta E_b - \pi_s \Delta E_s \end{aligned}\tag{4}
FCET=πbΔEb−πsΔEs(4)
约束:
(1)节点功率平衡约束
P
i
,
t
G
−
P
i
,
t
D
=
∑
j
∈
S
B
B
i
j
θ
j
,
t
(5)
\begin{aligned} P^G_{i,t} -P^D_{i,t} = \sum_{j\in S^B}B_{ij}\theta_{j,t} \end{aligned}\tag{5}
Pi,tG−Pi,tD=j∈SB∑Bijθj,t(5)
(2)传输线的容量约束
∣
θ
i
,
t
−
θ
j
,
t
x
i
j
∣
≤
F
i
j
m
a
x
∀
t
∈
S
T
P
∀
i
j
∈
S
L
∀
i
,
j
∈
S
B
(6)
\begin{aligned} \lvert{\frac{\theta_{i,t} -\theta_{j,t}}{x_{ij}}}\rvert \leq F_{ij}^{max} \quad \forall t\in S^{TP} \quad \forall ij \in S^L \quad\forall i,j\in S^B \end{aligned}\tag{6}
∣xijθi,t−θj,t∣≤Fijmax∀t∈STP∀ij∈SL∀i,j∈SB(6)
(3)参考节点
θ
=
0
∀
i
∈
S
r
e
f
∀
t
∈
S
T
P
(7)
\begin{aligned} \theta=0\quad\forall i \in S^{ref} \quad \forall t\in S^{TP} \end{aligned}\tag{7}
θ=0∀i∈Sref∀t∈STP(7)
(4)除发电机节点以外的节点功率约束
P
i
,
t
G
=
0
∀
i
∈
S
B
−
S
G
∀
t
∈
S
T
P
(8)
\begin{aligned} P^G_{i,t}=0\quad \forall i\in S^{B}-S^{G} \quad \forall t\in S^{TP} \end{aligned}\tag{8}
Pi,tG=0∀i∈SB−SG∀t∈STP(8)
(5)发电机的容量控制
P
i
G
‾
≤
P
i
,
t
G
≤
P
i
G
‾
∀
i
∈
S
G
∀
t
∈
S
T
P
(9)
\begin{aligned} \underline{P_i^G} \leq P^G_{i,t}\leq \overline{P_i^G}\quad \forall i\in S^{G} \quad \forall t\in S^{TP} \end{aligned}\tag{9}
PiG≤Pi,tG≤PiG∀i∈SG∀t∈STP(9)
(6)发电机的爬坡上升约束
P
i
,
t
G
−
P
i
,
t
−
1
G
≤
P
i
,
t
−
1
G
,
u
p
∀
i
∈
S
G
∀
t
∈
S
T
P
(10)
\begin{aligned} P^G_{i,t} -P^G_{i,t-1} \leq P^{G,up}_{i,t-1} \quad \forall i\in S^{G} \quad \forall t\in S^{TP} \end{aligned}\tag{10}
Pi,tG−Pi,t−1G≤Pi,t−1G,up∀i∈SG∀t∈STP(10)
(7)发电机的爬坡下降约束
P
i
,
t
−
1
G
−
P
i
,
t
G
≤
P
i
,
t
−
1
G
,
d
o
w
n
∀
i
∈
S
G
∀
t
∈
S
T
P
(11)
\begin{aligned} P^G_{i,t-1} -P^G_{i,t} \leq P^{G,down}_{i,t-1} \quad \forall i\in S^{G} \quad \forall t\in S^{TP} \end{aligned}\tag{11}
Pi,t−1G−Pi,tG≤Pi,t−1G,down∀i∈SG∀t∈STP(11)
(8)碳排放容量约束
∑
i
∈
S
G
∑
t
∈
S
T
P
E
i
(
P
i
,
t
G
)
≤
E
0
+
Δ
E
b
−
Δ
E
s
(12)
\begin{aligned} \sum_{i\in{S^G}}\sum_{t\in{S^{TP}}}E_i(P^G_{i,t})\leq E_0 +\Delta E_b - \Delta E_s \end{aligned}\tag{12}
i∈SG∑t∈STP∑Ei(Pi,tG)≤E0+ΔEb−ΔEs(12)
其中:出力对应的碳排放可用二次函数表示:
E
i
(
P
i
,
t
G
)
=
a
i
+
b
i
P
i
,
t
G
+
c
i
(
P
i
,
t
G
)
2
E_i(P^G_{i,t}) = a_i+b_i P^G_{i,t}+c_i(P^G_{i,t})^2
Ei(Pi,tG)=ai+biPi,tG+ci(Pi,tG)2
(9)可供购买的最大排放限额
0
≤
Δ
E
b
≤
Δ
E
b
m
a
x
(13)
\begin{aligned} 0\leq\Delta E_b \leq\Delta E^{max}_b \end{aligned}\tag{13}
0≤ΔEb≤ΔEbmax(13)
(10)可供销售的最大排放限额
0
≤
Δ
E
s
≤
Δ
E
x
m
a
x
(14)
\begin{aligned} 0\leq\Delta E_s \leq\Delta E^{max}_x \end{aligned}\tag{14}
0≤ΔEs≤ΔExmax(14)
化简步骤
在确定数学模型后,文中令
i
∈
S
B
i\in S^B
i∈SB,
P
D
∈
[
P
1
D
,
P
2
D
,
…
,
P
N
D
]
P^D\in[P_1^D,P_2^D,\dots,P_N^D]
PD∈[P1D,P2D,…,PND],
P
i
G
=
[
P
i
,
1
G
,
P
i
,
2
G
,
…
,
P
i
,
T
G
]
P_i^G = [P_{i,1}^G, P_{i,2}^G, \ldots,P_{i,T}^G ]
PiG=[Pi,1G,Pi,2G,…,Pi,TG],
θ
i
=
[
θ
i
1
,
θ
i
2
,
…
,
θ
i
T
]
\theta_i =[\theta_{i1}, \theta_{i2},\ldots,\theta_{iT}]
θi=[θi1,θi2,…,θiT],
P
i
D
=
[
P
i
1
D
,
P
i
2
D
,
…
,
P
i
T
D
]
P^D_i =[P^D_{i1}, P^D_{i2},\ldots,P^D_{iT}]
PiD=[Pi1D,Pi2D,…,PiTD],
x
0
=
[
Δ
E
b
,
Δ
E
s
]
x_0=[\Delta E_b, \Delta E_s]
x0=[ΔEb,ΔEs].
带入前述(5)式:
P
i
G
−
P
i
D
=
∑
j
∈
S
B
B
i
j
θ
j
∀
i
∈
S
B
(15)
\begin{aligned} P_i^G - P_i^D=\sum_{j\in S^B}B_{ij}\theta_j \quad\forall i\in S^B \end{aligned}\tag{15}
PiG−PiD=j∈SB∑Bijθj∀i∈SB(15)
−
F
i
j
m
a
x
e
≤
θ
i
−
θ
j
x
i
j
≤
F
i
j
m
a
x
e
∀
i
j
∈
S
L
,
∀
i
,
j
∈
S
B
(16)
\begin{aligned} -F^{max}_{ij}\mathbf{e}\leq\frac{\theta_i-\theta_j}{x_{ij}}\leq F^{max}_{ij}\mathbf{e} \quad\forall ij\in S^L, \forall i,j \in S^B \end{aligned}\tag{16}
−Fijmaxe≤xijθi−θj≤Fijmaxe∀ij∈SL,∀i,j∈SB(16)
另外,设:
b
P
F
=
P
D
b_{PF} = P^D
bPF=PD,
A
0
~
=
0
\tilde{A_0}=\mathbf{0}
A0~=0,
A
i
~
=
[
0
−
B
1
i
I
…
I
−
B
i
i
I
…
0
−
B
N
i
I
]
\begin{equation*} \tilde{A_i} = \left[ \begin{matrix} 0 & -B_{1i}I \\ \dots\\ I & -B_{ii}I \\ \ldots\\ 0 & -B_{Ni}I \end{matrix} \right] \end{equation*}
Ai~=
0…I…0−B1iI−BiiI−BNiI
(此处由于KATEX不支持\multicolumn,无法将省略号居中放置\,凑合看看就好)
由(15)得到:
∑
i
∈
S
B
∪
{
0
}
A
~
i
x
i
=
b
P
F
(17)
\begin{aligned} \sum_{i\in S^B\cup\{0\}}\tilde{A}_ix_i=b_{PF} \end{aligned}\tag{17}
i∈SB∪{0}∑A~ixi=bPF(17)
相似地,设
M
~
0
=
0
\tilde{M}_0=0
M~0=0,由(16)可得:
∑
i
∈
S
B
∪
{
0
}
M
~
i
x
i
≤
b
B
R
(18)
\begin{aligned} \sum_{i\in S^B\cup\{0\}}\tilde{M}_ix_i\leq b_{BR} \end{aligned}\tag{18}
i∈SB∪{0}∑M~ixi≤bBR(18)
另外,对应碳排放约束,有
h
~
0
(
x
0
)
=
[
−
1
,
1
]
x
0
=
Δ
E
s
−
Δ
E
b
\tilde{h}_0(x_0) = [-1,1]x_0=\Delta E_s-\Delta E_b
h~0(x0)=[−1,1]x0=ΔEs−ΔEb, 对(12)式可做变换:
∑
i
∈
S
B
∪
{
0
}
h
~
i
(
x
)
≤
b
E
(19)
\begin{aligned} \sum_{i\in S^B\cup\{0\}} \tilde{h}_i(x)\leq b_{E} \end{aligned}\tag{19}
i∈SB∪{0}∑h~i(x)≤bE(19)
其中,
b
E
=
E
0
b_E=E_0
bE=E0,
h
~
i
(
x
i
)
=
∑
t
∈
S
T
P
E
i
(
P
i
,
t
G
)
(
i
∈
S
G
)
\tilde{h}_i (x_i)=\sum_{t \in S^{TP}}E_i(P^G_{i,t})(i\in S^G)
h~i(xi)=∑t∈STPEi(Pi,tG)(i∈SG)以及
h
~
i
(
x
i
)
=
0
(
i
∈
S
B
−
S
G
)
\tilde{h}_i(x_i)=0(i\in S^B-S^G)
h~i(xi)=0(i∈SB−SG)
对(7)-(11)式,由于每个机组单独解耦,定义
X
i
=
{
x
i
∣
(
7
)
−
(
11
)
,
i
∈
S
B
}
\Chi_i=\{x_i|(7)-(11), i\in S^B\}
Xi={xi∣(7)−(11),i∈SB},即为对于每个节点(bus)均满足(7)到(11)的约束条件;
对应热电机组燃料成本:
g
i
(
x
i
)
=
0
(
i
∈
S
B
−
S
G
)
g_i(x_i)=0(i\in S^B-S^G)
gi(xi)=0(i∈SB−SG),
g
i
(
x
i
)
=
∑
t
∈
S
T
P
f
i
(
P
i
,
t
G
)
(
i
∈
S
G
)
g_i(x_i)=\sum_{t\in S^{TP}}f_i(P^G_{i,t})(i\in S^G)
gi(xi)=∑t∈STPfi(Pi,tG)(i∈SG)
对剩余的(13)-(14)式,为碳交易约束,对应:
g
0
(
x
0
)
=
[
π
b
,
−
π
b
]
x
0
g_0(x_0) = [\pi_b, -\pi_b]x_0
g0(x0)=[πb,−πb]x0, 得到:定义
X
0
=
{
x
0
∣
(
13
)
−
(
14
)
}
\Chi_0=\{x_0|(13)-(14)\}
X0={x0∣(13)−(14)}
在以上简化在以上简化的基础上,令 ψ 0 ( x 0 ) = [ h ~ 0 ( x 0 ) − b E ; M ~ 0 ] i ∈ S B \psi_0(x_0) = [\tilde{h}_0(x_0)-b_E; \tilde{M}_0] \quad i\in S^B ψ0(x0)=[h~0(x0)−bE;M~0]i∈SB
在以上简化的基础上,
- 令 i = 0 i=0 i=0时, ψ 0 ( x 0 ) = [ h ~ 0 ( x 0 ) − b E ; M ~ 0 ] , A 0 ( x 0 ) = A ~ 0 \psi_0(x_0) = [\tilde{h}_0(x_0)-b_E; \tilde{M}_0], A_0(x_0)=\tilde{A}_0 ψ0(x0)=[h~0(x0)−bE;M~0],A0(x0)=A~0;
- i ∈ S B i\in S^B i∈SB时, A i ( x i ) = [ A i ~ x i − b P F i ] , ψ i ( x i ) = [ h ~ i ( x i ) ; M ~ i x i − b B R i ] A_i(x_i)=[\tilde{A_i}x_i-b_{PF}^i], \psi_i(x_i) = [\tilde{h}_i(x_i); \tilde {M}_ix_i-b^i_{BR}] Ai(xi)=[Ai~xi−bPFi],ψi(xi)=[h~i(xi);M~ixi−bBRi]
- 另外: ∑ i ∈ S B b B R i = b B R , ∑ i ∈ S B b B F i = b B F \sum_{i\in S^B}b^i_{BR} = b_{BR},\sum_{i\in S^B}b^i_{BF} = b_{BF} ∑i∈SBbBRi=bBR,∑i∈SBbBFi=bBF
综合上述简化,DC-DOPF-CRT模型显示如下:
Minimize
∑
i
∈
S
B
∩
{
0
}
g
i
(
x
i
)
subject to
∑
i
∈
S
B
∩
{
0
}
ψ
i
(
x
i
)
≤
0
∑
i
∈
S
B
∩
{
0
}
A
i
(
x
i
)
=
0
x
i
∈
X
i
i
∈
{
0
}
∩
S
B
(20)
\begin{aligned} \text{Minimize} \quad &\sum_{i\in S^B \cap\{0\}}g_i(x_i) \\ \text{subject to} \quad & \sum_{i\in S^B \cap\{0\}} \psi_i({x_i})\leq0\\ & \sum_{i\in S^B \cap\{0\}} A_i({x_i})=0\\ & x_i\in\Chi_i\quad i\in\{0\}\cap S^B \end{aligned}\tag{20}
Minimizesubject toi∈SB∩{0}∑gi(xi)i∈SB∩{0}∑ψi(xi)≤0i∈SB∩{0}∑Ai(xi)=0xi∈Xii∈{0}∩SB(20)
对偶ADMM求解
首先原来整个 S B ∪ { 0 } S^B\cup\{0\} SB∪{0}集合分块。设 ∣ π ∣ = n + 1 , π = { A 0 , A 1 , … , A n } |\pi|=n+1, \pi = \{\mathcal{A}_0, \mathcal{A}_1, \dots, \mathcal{A}_n\} ∣π∣=n+1,π={A0,A1,…,An}分别是集合 S B ∪ { 0 } S^B\cup\{0\} SB∪{0}的一个分块,即满足:
- ∅ ∉ π \varnothing\notin\pi ∅∈/π, ⋃ A j ∈ π , j ∈ 0 , … , n A j = S B ∪ { 0 } \bigcup_{\mathcal{A}_j\in\pi, j\in 0,\dots, n}\mathcal{A}_j = S^B\cup\{0\} ⋃Aj∈π,j∈0,…,nAj=SB∪{0}
-
(
∀
A
,
B
∈
π
)
A
≠
B
⇒
A
∩
B
=
∅
(\forall A,B\in \pi)A\neq B\Rightarrow A\cap B=\varnothing
(∀A,B∈π)A=B⇒A∩B=∅
对这其中每一个分块均能够写出一个Lagrange对偶函数:
L ( λ , ν ) = ∑ j = 0 n L j ( λ , ν ) L j ( λ , ν ) = inf x i ∈ X i , i ∈ A j { ∑ i ∈ A j g i ( x i ) + ⟨ ∑ i ∈ A j ψ i ( x i ) , λ ⟩ + ⟨ ∑ i ∈ A j A i ( x i ) , ν ⟩ } (21) \begin{align*} L(\lambda, \nu) &= \sum^n_{j=0}L_j(\lambda, \nu)\\ L_j(\lambda, \nu) &= \inf_{x_i\in\Chi_i, i\in A_j}\{\sum_{i\in A_j}g_i(x_i)+\langle\sum_{i\in \mathcal{A}_j}\psi_i(x_i), \lambda\rangle+ \langle\sum_{i\in \mathcal{A}_j}\mathcal{A}_i(x_i), \nu\rangle\} \end{align*}\tag{21} L(λ,ν)Lj(λ,ν)=j=0∑nLj(λ,ν)=xi∈Xi,i∈Ajinf{i∈Aj∑gi(xi)+⟨i∈Aj∑ψi(xi),λ⟩+⟨i∈Aj∑Ai(xi),ν⟩}(21)
其中, λ , ν \lambda, \nu λ,ν为相应项分别对应相应约束的对偶乘子,且 λ ≥ 0 \lambda\geq0 λ≥0。
此时,令 y = ⟨ λ , ν ⟩ y =\langle\lambda, \nu\rangle y=⟨λ,ν⟩,那么(20)式子的对偶问题为:
max L ( y ) (22) \begin{align*} \max L(y) \end{align*}\tag{22} maxL(y)(22)
Minimized { − ∑ j = 0 n L j ( x j ) } subject to y − z j = 0 j = 0 , … , n (23) \begin{aligned} \text{Minimized} \quad & \{-\sum_{j=0}^n L_j(x_j)\}\\ \text{subject to} \quad & y-z_j= 0\quad j = 0,\dots,n \end{aligned}\tag{23} Minimizedsubject to{−j=0∑nLj(xj)}y−zj=0j=0,…,n(23)
应用ADMM解决这一问题:
y
k
+
1
:
=
a
r
g
m
i
n
y
{
⟨
∑
j
=
0
n
p
j
k
,
y
⟩
+
ρ
2
∑
j
=
0
n
∥
y
−
z
j
k
∥
2
}
(24)
\begin{aligned} y^{k+1}:=\mathop{argmin}\limits_y\{\langle\sum_{j=0}^np_j^k, y\rangle+\frac{\rho}{2}\sum_{j=0}^n{\Vert y-z_j^k\Vert}^2 \} \end{aligned}\tag{24}
yk+1:=yargmin{⟨j=0∑npjk,y⟩+2ρj=0∑n∥y−zjk∥2}(24)
z
j
k
+
1
:
=
a
r
g
m
i
n
z
j
{
−
L
j
(
z
j
)
−
⟨
p
j
k
,
z
j
⟩
+
ρ
2
∑
j
=
0
n
∥
y
k
+
1
−
z
j
∥
2
}
(25)
\begin{align} z^{k+1}_j:=\mathop{argmin}\limits_{z_j}\{-L_j(z_j)-\langle p_j^k, z_j\rangle+\frac{\rho}{2}\sum_{j=0}^n{\Vert y^{k+1}-z_j\Vert}^2 \} \end{align}\tag{25}
zjk+1:=zjargmin{−Lj(zj)−⟨pjk,zj⟩+2ρj=0∑n∥yk+1−zj∥2}(25)
p
j
k
+
1
:
=
p
j
k
+
ρ
(
y
k
+
1
−
z
j
k
+
1
)
(26)
\begin{aligned} p^{k+1}_j:=p^{k}_j+\rho(y^{k+1}-z^{k+1}_j)\tag{26} \end{aligned}
pjk+1:=pjk+ρ(yk+1−zjk+1)(26)
更新时候,求解(24),得到求解
y
k
+
1
y_{k+1}
yk+1更新值的计算式:
y
k
+
1
=
1
n
+
1
∑
n
+
1
n
z
j
k
+
−
1
(
n
+
1
)
ρ
∑
j
=
0
n
p
j
k
(26)
\begin{aligned} y^{k+1} = \frac{1}{n+1}\sum_{n+1}^nz_j^k+-\frac{1}{(n+1)\rho}\sum_{j=0}^np_j^k \end{aligned}\tag{26}
yk+1=n+11n+1∑nzjk+−(n+1)ρ1j=0∑npjk(26)
联立(21)带入(25),得到求解
z
j
k
+
1
z_j^{k+1}
zjk+1更新值的计算式:(固定
x
i
∈
X
i
,
i
∈
A
j
x_i\in \Chi_i, i\in\mathcal{A}_j
xi∈Xi,i∈Aj的情况)
z
j
=
[
λ
z
j
ν
z
j
]
=
[
m
a
x
{
0
,
λ
y
k
+
1
+
1
ρ
(
∑
i
∈
A
j
ψ
i
(
x
i
)
+
λ
p
j
k
)
}
ν
y
k
+
1
+
1
ρ
(
∑
i
∈
A
j
A
i
(
x
i
)
+
λ
p
j
k
)
]
(29)
\begin{align} z_j = \left[ \begin{matrix} \lambda_{zj}\\ \nu_{zj} \end{matrix} \right] = \left[ \begin{matrix} max\{0, \lambda_{y^{k+1}}+\frac{1}{\rho}(\sum_{i\in \mathcal{A}_j \psi_i(x_i)+\lambda_{p_j^k}})\}\\ \nu_{y^{k+1}}+\frac{1}{\rho}(\sum_{i\in \mathcal{A}_j}\mathcal{A}_i(x_i)+\lambda_{p_j^k}) \end{matrix} \right] \end{align}\tag{29}
zj=[λzjνzj]=[max{0,λyk+1+ρ1(∑i∈Ajψi(xi)+λpjk)}νyk+1+ρ1(∑i∈AjAi(xi)+λpjk)](29)
在所有的子集
A
j
\mathcal{A}_j
Aj中,取最优的子集
{
x
i
∈
X
i
,
i
∈
A
j
}
\{x_i\in \Chi_i, i\in\mathcal{A}_j\}
{xi∈Xi,i∈Aj}:
{
x
i
∗
,
i
∈
A
j
}
:
=
a
r
g
m
i
n
x
i
∈
χ
i
,
i
∈
A
j
{
∑
i
∈
A
j
g
i
(
x
i
)
+
ρ
2
∥
[
m
a
x
{
0
,
λ
y
k
+
1
+
1
ρ
(
∑
i
∈
A
j
ψ
i
(
x
i
)
+
λ
p
j
k
)
}
ν
y
k
+
1
+
1
ρ
(
∑
i
∈
A
j
A
i
(
x
i
)
+
λ
p
j
k
)
]
∥
2
}
(30)
\begin{align} \{x_i^*,i\in\mathcal{A}_j \} :=\mathop{argmin}\limits_{x_i \in \chi_i, i\in\mathcal{A}_j}\left\{\sum_{i\in\mathcal{A}_j}g_i(x_i)+\frac{\rho}{2}{\left\Vert\left[ \begin{matrix} max\{0, \lambda_{y^{k+1}}+\frac{1}{\rho}(\sum_{i\in A_j \psi_i(x_i)+\lambda_{p_j^k}})\}\\ \nu_{y^{k+1}}+\frac{1}{\rho}(\sum_{i\in A_j}A_i(x_i)+\lambda_{p_j^k}) \end{matrix} \right]\right\Vert}^2\right\} \end{align}\tag{30}
{xi∗,i∈Aj}:=xi∈χi,i∈Ajargmin⎩
⎨
⎧i∈Aj∑gi(xi)+2ρ
[max{0,λyk+1+ρ1(∑i∈Ajψi(xi)+λpjk)}νyk+1+ρ1(∑i∈AjAi(xi)+λpjk)]
2⎭
⎬
⎫(30)
令
τ
=
m
a
x
{
0
,
λ
y
k
+
1
+
1
ρ
(
∑
i
∈
A
j
ψ
i
(
x
i
)
+
λ
p
j
k
)
}
\tau = max\{0, \lambda_{y^{k+1}}+\frac{1}{\rho}(\sum_{i\in A_j}\psi_i(x_i)+\lambda_{p_j^k})\}
τ=max{0,λyk+1+ρ1(∑i∈Ajψi(xi)+λpjk)}
解最小值:
min
∑
i
∈
A
j
g
i
(
x
i
)
+
ρ
2
∥
[
τ
ν
y
k
+
1
+
1
ρ
(
∑
i
∈
A
j
A
i
(
x
i
)
+
λ
p
j
k
)
]
∥
2
s
.
t
.
τ
≥
0
τ
≥
λ
y
k
+
1
+
1
ρ
(
∑
i
∈
A
j
ψ
i
(
x
i
)
+
λ
p
j
k
)
x
i
∈
χ
i
,
i
∈
A
j
(31)
\begin{aligned} \min\quad&\sum_{i\in\mathcal{A}_j}g_i(x_i)+\frac{\rho}{2}{\left\Vert\left[ \begin{matrix} \tau\\ \nu_{y^{k+1}}+\frac{1}{\rho}(\sum_{i\in \mathcal{A}_j}A_i(x_i)+\lambda_{p_j^k}) \end{matrix} \right]\right\Vert}^2\\ s.t.\quad& \tau\geq0\\ &\tau\geq\lambda_{y^{k+1}}+\frac{1}{\rho}(\sum_{i\in A_j} \psi_i(x_i)+\lambda_{p_j^k})\\ &x_i\in\chi_i,i\in\mathcal{A}_j \end{aligned}\tag{31}
mins.t.i∈Aj∑gi(xi)+2ρ
[τνyk+1+ρ1(∑i∈AjAi(xi)+λpjk)]
2τ≥0τ≥λyk+1+ρ1(i∈Aj∑ψi(xi)+λpjk)xi∈χi,i∈Aj(31)
综合上述,可得算法1(DC-ADMM-P)的流程
-
初始化,有 z j 0 z_j^0 zj0, p j 0 p^0_j pj0, M > 0 M>0 M>0, ρ > 0 \rho>0 ρ>0, ϵ f e a s i b l e > 0 \epsilon^{feasible}>0 ϵfeasible>0已知
for k = 0 , … , M k=0, \dots, M k=0,…,M
- 根据前述(27)式获得 y k + 1 y^{k+1} yk+1- for(并行求解)对应每一个子集
j
=
0
,
…
,
n
j =0,\dots,n
j=0,…,n
- 根据(31)式获得 { x i ∗ , i ∈ A j } \{x_i^*, i\in\mathcal{A}_j\} {xi∗,i∈Aj}
- 根据(29)式获得 z j k + 1 z_j^{k+1} zjk+1
- 根据(26)式获得 p j k + 1 p_j^{k+1} pjk+1
- end
- if ϵ : = ∥ y k + 1 − y k ∥ ∞ < ϵ f e a s i b l e \epsilon:=\Vert y^{k+1}-y^k\Vert_\infty<\epsilon^{feasible} ϵ:=∥yk+1−yk∥∞<ϵfeasible,退出循环
- for(并行求解)对应每一个子集
j
=
0
,
…
,
n
j =0,\dots,n
j=0,…,n
-
end