本文主要内容来自 Vandenberghe, L., & Boyd, S. (1996). Semidefinite Programming. SIAM Review, 38(1), 49–95.
考虑如下优化问题
min
c
T
x
s
.
t
.
F
(
x
)
≥
0
,
(1)
\begin{array}{ll} \min& c^Tx\\ s.t.&F(x)\geq 0, \end{array} \tag{1}
mins.t.cTxF(x)≥0,(1)
其中
F
(
x
)
≔
F
0
+
∑
i
=
1
m
x
i
F
i
.
F(x)\coloneqq F_0+ \sum_{i=1}^{m}x_iF_i.
F(x):=F0+i=1∑mxiFi.
在此问题中
x
∈
R
m
,
x\in \mathbb{R}^m,
x∈Rm, 给定的数据为向量
c
∈
R
m
c\in\mathbb{R}^m
c∈Rm 和
m
+
1
m+1
m+1 个对称矩阵
F
0
,
F
1
,
⋯
,
F
m
∈
R
n
×
n
.
F_0,F_1,\cdots,F_m\in\mathbb{R}^{n\times n}.
F0,F1,⋯,Fm∈Rn×n. 我们称
F
(
x
)
≥
0
F(x)\geq 0
F(x)≥0 为线性矩阵不等式, 称此问题为半正定规划(semidefinite program). 此问题的可行域为
{
x
∣
F
(
x
)
≥
0
}
.
\{x\mid F(x)\geq 0\}.
{x∣F(x)≥0}.
原始对偶问题
优化问题 (1) 对应的对偶问题(dual problem)为
max
−
T
r
F
0
Z
s
.
t
.
T
r
F
i
Z
=
c
i
,
i
=
1
,
2
,
⋯
,
m
,
Z
≥
0.
(2)
\begin{array}{ll} \max &-\mathbf{Tr}F_0Z\\ s.t. &\mathbf{Tr}F_iZ=c_i,\quad i=1,2,\cdots,m,\\ &Z\geq 0. \tag{2} \end{array}
maxs.t.−TrF0ZTrFiZ=ci,i=1,2,⋯,m,Z≥0.(2)
其中,
Z
=
Z
T
∈
R
n
×
n
.
Z=Z^T\in\mathbb{R}^{n\times n}.
Z=ZT∈Rn×n. \
我们称
Z
=
Z
T
∈
R
n
×
n
Z=Z^T\in\mathbb{R}^{n\times n}
Z=ZT∈Rn×n 是对偶可行的(dual feasible), 如果
T
r
Z
F
i
=
c
i
,
i
=
1
,
2
,
⋯
,
m
,
a
n
d
Z
≥
0.
\mathbf{Tr}ZF_i=c_i,i=1,2,\cdots,m, \quad and \quad Z\geq 0.
TrZFi=ci,i=1,2,⋯,m,andZ≥0.
我们也称原始的半正定规划问题(\ref{problem1})为原始问题(primal problem). 下面我们将探讨原始问题与对偶问题的一些性质.
假定
Z
Z
Z 是对偶可行的,
x
x
x 是原始可行的, 那么有
c
T
x
+
T
r
Z
F
0
=
∑
i
=
1
m
T
r
Z
F
i
x
i
+
T
r
Z
F
0
=
T
r
Z
F
(
x
)
≥
0.
\begin{aligned} c^Tx+\mathbf{Tr}ZF_0=\sum_{i=1}^{m}\mathbf{Tr}ZF_ix_i+\mathbf{Tr}ZF_0=\mathbf{Tr}ZF(x)\geq 0. \end{aligned}
cTx+TrZF0=i=1∑mTrZFixi+TrZF0=TrZF(x)≥0.
因此有
−
T
r
F
0
Z
≤
c
T
x
,
(3)
\begin{aligned} -\mathbf{Tr}F_0Z\leq c^Tx, \end{aligned}\tag{3}
−TrF0Z≤cTx,(3)
也就是说, 任意对偶可行点
Z
Z
Z 对应的目标值小于等于任意原始可行点
x
x
x 对应的目标值, 我们将这种现象称之为关于
x
x
x 与
Z
Z
Z 的对偶间隔(duality gap):
η
≔
c
T
x
+
T
r
F
0
Z
=
T
r
F
(
x
)
Z
.
\begin{aligned} \eta\coloneqq c^Tx+\mathbf{Tr}F_0Z=\mathbf{Tr}F(x)Z. \end{aligned}
η:=cTx+TrF0Z=TrF(x)Z.
令
p
∗
p^*
p∗ 是原始问题 (\ref{problem1}) 的最优解, 即
p
∗
≔
inf
{
c
T
x
∣
F
(
x
)
≥
0
}
,
\begin{aligned} p^*\coloneqq \inf\{c^Tx\mid F(x)\geq 0\}, \end{aligned}
p∗:=inf{cTx∣F(x)≥0},
Z
Z
Z 是对偶可行的, 所以由 (3) 式我们有
−
T
r
F
0
Z
≤
q
∗
.
-\mathbf{Tr}F_0Z\leq q^*.
−TrF0Z≤q∗.同理, 令
d
∗
d^*
d∗ 是对偶问题 (2) 的最优解, 即
d
∗
≔
sup
{
−
T
r
F
0
Z
∣
Z
=
Z
T
≥
0
,
T
r
F
i
Z
=
c
i
,
i
=
1
,
2
,
⋯
,
m
}
.
\begin{aligned} d^*\coloneqq \sup\{-\mathbf{Tr}F_0Z\mid Z=Z^T\geq 0, \mathbf{Tr}F_iZ=c_i,\;i=1,2,\cdots,m\}. \end{aligned}
d∗:=sup{−TrF0Z∣Z=ZT≥0,TrFiZ=ci,i=1,2,⋯,m}.
同样由 (3) 得
d
∗
≤
c
T
x
.
d^*\leq c^Tx.
d∗≤cTx.
我们试图寻找
q
∗
q^*
q∗ 与
d
∗
d^*
d∗ 之间的联系. 为此, 令
X
o
p
t
,
Z
o
p
t
\mathbf{X}_{opt},\mathbf{Z}_{opt}
Xopt,Zopt 分别为原始, 对偶问题的最优解, 即
X
o
p
t
≔
{
x
∣
F
(
x
)
≥
0
a
n
d
c
T
x
=
p
∗
}
,
Z
o
p
t
≔
{
Z
∣
Z
=
Z
T
≥
0
,
T
r
F
i
Z
=
c
i
,
i
=
1
,
2
⋯
,
m
,
a
n
d
−
T
r
F
o
Z
=
d
∗
}
.
\begin{aligned} \mathbf{X}_{opt}&\coloneqq \{x\mid F(x)\geq 0\;and\;c^Tx=p^*\},\\ \mathbf{Z}_{opt}&\coloneqq \{Z\mid Z=Z^T\geq 0,\;\mathbf{Tr}F_iZ=c_i,\,i=1,2\cdots,m, \; and\;-\mathbf{Tr}F_oZ=d^*\}. \end{aligned}
XoptZopt:={x∣F(x)≥0andcTx=p∗},:={Z∣Z=ZT≥0,TrFiZ=ci,i=1,2⋯,m,and−TrFoZ=d∗}.
我们有如下定理:
设
q
∗
,
d
∗
q^*,d^*
q∗,d∗ 分别如前定义, 则
p
∗
=
d
∗
p^*=d^*
p∗=d∗, 如果下面两个条件之一成立:
- 原始问题 (1) 是严格可行的, 即存在 x x x s.t. F ( x ) > 0 F(x)>0 F(x)>0;
- 对偶问题 (2) 是严格可行的, 即存在 Z = Z T ≥ 0 , ; T r F i Z = c 1 , i = 1 , 2 , ⋯ , m . Z=Z^T\geq 0, ;\mathbf{Tr}F_iZ=c_1,\;i=1,2,\cdots,m. Z=ZT≥0,;TrFiZ=c1,i=1,2,⋯,m.如果两个条件均成立, 则 X o p t , Z o p t \mathbf{X}_{opt},\mathbf{Z}_{opt} Xopt,Zopt 非空.
另外, 值得一提的是, 如果最优集合非空, 即存在可行点
x
,
Z
x,Z
x,Z 使得
c
T
x
=
−
T
r
F
0
Z
=
p
∗
=
d
∗
,
\begin{aligned} c^Tx=-\mathbf{Tr}F_0Z=p^*=d^*, \end{aligned}
cTx=−TrF0Z=p∗=d∗,
此时对偶间隔
η
=
T
r
F
(
x
)
Z
=
c
T
x
+
T
r
F
0
Z
=
p
∗
−
d
∗
=
0
,
\eta=\mathbf{Tr}F(x)Z= c^Tx+\mathbf{Tr}F_0Z=p^*-d^*=0,
η=TrF(x)Z=cTx+TrF0Z=p∗−d∗=0, 这便意味着原始问题与对偶问题某种意义上等价. 在实际计算中, 我们通过描述对偶间隔来衡量这两个问题的差异性.
间隔}来衡量这两个问题的差异性.\
假定有一个算法可以产生一系列的原始对偶可行点
x
(
k
)
,
Z
(
k
)
,
x^{(k)},Z^{(k)},
x(k),Z(k), 其中
k
=
0
,
1
,
⋯
k=0,1,\cdots
k=0,1,⋯ 为迭代次数. 我们将
x
(
k
)
x^{(k)}
x(k) 看作给出下界的次优解,
Z
(
k
)
Z^{(k)}
Z(k) 看作给出下界的凭证, 即
p
∗
≤
c
T
x
(
k
)
,
p
∗
≥
−
T
r
F
0
Z
(
k
)
.
\begin{aligned} p^*\leq c^Tx^{(k)},\quad p^*\geq -\mathbf{Tr}F_0Z^{(k)}. \end{aligned}
p∗≤cTx(k),p∗≥−TrF0Z(k). 因而有
c
T
x
(
k
)
−
p
∗
≤
η
(
k
)
=
c
T
x
(
k
)
+
T
r
F
0
Z
(
k
)
.
\begin{aligned} c^Tx^{(k)}-p^*\leq \eta^{(k)}=c^Tx^{(k)}+\mathbf{Tr}F_0Z^{(k)}. \end{aligned}
cTx(k)−p∗≤η(k)=cTx(k)+TrF0Z(k).
也就是说, 当
η
(
k
)
→
0
\eta^{(k)}\to 0
η(k)→0 时, 我们便可把
x
(
k
)
x^{(k)}
x(k) 看作原始问题(1) 的最优解的逼近. 那么关键的问题就是,
如何寻找一个满足条件的原始对偶算法呢
?
\textbf{\textcolor{red}{如何寻找一个满足条件的原始对偶算法呢}}?
如何寻找一个满足条件的原始对偶算法呢?
或者说, 如何求解下述问题?
min
c
T
x
+
T
r
F
0
Z
s
.
t
.
F
(
x
)
≥
0
,
Z
≥
0
,
T
r
F
i
Z
=
c
i
,
i
=
1
,
2
,
⋯
,
m
.
\begin{array}{ll} \min&c^Tx+\mathbf{Tr}F_0Z\\ s.t.&F(x)\geq 0,\;Z\geq 0,\\ &\mathbf{Tr}F_iZ=c_i,\quad i=1,2,\cdots,m. \end{array}
mins.t.cTx+TrF0ZF(x)≥0,Z≥0,TrFiZ=ci,i=1,2,⋯,m.
中心路径
在解决上述问题(\ref{12}) 之前, 我们先做一些准备. 对于线性矩阵不等式
F
(
x
)
≥
0
F(x)\geq 0
F(x)≥0, 我们定义其障碍函数
ϕ
(
x
)
\phi(x)
ϕ(x)
Φ
(
x
)
≔
{
log
det
F
(
x
)
−
1
,
i
f
F
(
x
)
>
0
,
+
∞
,
o
t
h
e
r
w
i
s
e
.
\Phi(x) \coloneqq \left\{ \begin{array}{cc} \log \det F(x)^{-1}, &if \; F(x)>0,\\ +\infty, & otherwise. \end{array}\right.
Φ(x):={logdetF(x)−1,+∞,ifF(x)>0,otherwise.
经计算有,
ϕ
(
x
)
\phi(x)
ϕ(x) 的梯度与 Hessian 为
(
∇
ϕ
(
x
)
)
i
=
−
T
r
F
(
x
)
−
1
F
i
(
∇
2
ϕ
(
x
)
)
i
j
=
T
r
F
(
x
)
−
1
F
i
F
(
x
)
−
1
F
j
\begin{aligned} \big(\nabla \phi(x)\big)_i &= -\mathbf{Tr}F(x)^{-1}F_i\\ \big(\nabla ^2\phi(x)\big)_{ij}&= \mathbf{Tr}F(x)^{-1}F_iF(x)^{-1}F_j \end{aligned}
(∇ϕ(x))i(∇2ϕ(x))ij=−TrF(x)−1Fi=TrF(x)−1FiF(x)−1Fj
令
X
=
{
x
∣
F
(
x
)
>
0
}
,
\mathbf{X}=\{x\mid F(x)>0\},
X={x∣F(x)>0}, 假设
X
X
X 是有界的, 因为
ϕ
\phi
ϕ 是严格凸的, 其有唯一的极小值点, 不妨记为
x
∗
x^*
x∗, 即
x
∗
≔
a
r
g
m
i
n
ϕ
(
x
)
.
\begin{aligned} x^*\coloneqq argmin \;\phi(x). \end{aligned}
x∗:=argminϕ(x).
我们称
x
∗
x^*
x∗ 是线性矩阵不等式
F
(
x
)
≥
0
F(x)\geq 0
F(x)≥0 的解析中心(Analytic center). 容易证明
x
∗
x^*
x∗ 有下述性质(
∇
ϕ
(
x
)
=
0
\nabla \phi(x)=0
∇ϕ(x)=0)
T
r
F
(
x
∗
)
−
1
F
i
=
0
,
i
=
1
,
2
,
⋯
,
m
.
\mathbf{Tr}F(x^*)^{-1}F_i=0,\quad i=1,2,\cdots,m.
TrF(x∗)−1Fi=0,i=1,2,⋯,m.给定障碍函数
ϕ
(
x
)
,
\phi(x),
ϕ(x), 我们可以利用标准的 Newton 法来计算其解析中心
x
∗
.
x^*.
x∗. 我们有如下定理:
假定
ϵ
∈
(
0
,
0.5
)
,
x
(
k
)
\epsilon\in(0,0.5),x^{(k)}
ϵ∈(0,0.5),x(k) 是
x
(
0
)
x^{(0)}
x(0) 通过 Newton 法
k
k
k 次迭代后得到的值, 则对于任意满足下式的
k
k
k
k
≥
11
(
ϕ
(
x
(
0
)
)
−
ϕ
(
x
∗
)
)
+
log
2
log
2
(
1
ϵ
)
,
\begin{aligned} k\geq 11\big(\phi(x^{(0)})-\phi(x^*)\big) + \log_2\log_2\bigg(\frac{1}{\epsilon}\bigg), \end{aligned}
k≥11(ϕ(x(0))−ϕ(x∗))+log2log2(ϵ1), 我们有
ϕ
(
x
(
k
)
)
−
ϕ
(
x
∗
)
≤
ϵ
.
\phi(x^{(k)})-\phi(x^*)\leq \epsilon.
ϕ(x(k))−ϕ(x∗)≤ϵ.
让我们回到原始问题(1), 考虑如下线性矩阵不等式
F
(
x
)
>
0
,
c
T
x
=
γ
.
\begin{aligned} F(x)>0,\\ c^Tx=\gamma. \end{aligned}
F(x)>0,cTx=γ.
此问题对应的解析中心
x
∗
(
γ
)
x^*(\gamma)
x∗(γ) 满足
x
∗
(
γ
)
≔
a
r
g
m
i
n
log
det
F
(
x
)
−
1
s
.
t
.
F
(
x
)
>
0
,
c
T
x
=
γ
.
\begin{aligned} x^*(\gamma)\coloneqq\;&argmin& \log\det F(x)^{-1}\\ &s.t.&F(x)>0,\\ &&c^Tx=\gamma. \end{aligned}
x∗(γ):=argmins.t.logdetF(x)−1F(x)>0,cTx=γ.
称
x
∗
(
γ
)
x^*(\gamma)
x∗(γ) 为问题 (\ref{problem1}) 的中心路径(central path).
考虑上述问题 (2) 的 KKT 条件, 我们有
T
r
F
(
x
∗
(
γ
)
)
−
1
F
i
=
λ
c
i
,
i
=
1
,
2
,
⋯
,
m
.
\begin{aligned} \mathbf{Tr}F\big(x^*(\gamma)\big)^{-1}F_i=\lambda c_i,\quad i=1,2,\cdots,m. \end{aligned}
TrF(x∗(γ))−1Fi=λci,i=1,2,⋯,m.当
λ
>
0
\lambda>0
λ>0 时, 容易知矩阵
F
(
x
∗
(
γ
)
)
−
1
/
λ
F\big(x^*(\gamma)\big)^{-1}/\lambda
F(x∗(γ))−1/λ 是对偶可行的, 此时与原始对偶可行有关的对偶间隔为
η
=
T
r
F
(
x
)
Z
=
x
∗
(
γ
)
F
(
x
∗
(
γ
)
)
−
1
/
λ
=
n
/
λ
.
\begin{aligned} \eta = \mathbf{Tr}F(x)Z=\mathbf{x^*(\gamma)}F\big(x^*(\gamma)\big)^{-1}/\lambda = n/\lambda. \end{aligned}
η=TrF(x)Z=x∗(γ)F(x∗(γ))−1/λ=n/λ.事实上,
F
(
x
∗
(
γ
)
)
−
1
/
λ
F\big(x^*(\gamma)\big)^{-1}/\lambda
F(x∗(γ))−1/λ 不仅是对偶可行的, 它还是下述对偶半正定规划问题的中心路径
min
log
det
Z
−
1
s
.
t
.
T
r
F
i
Z
=
c
i
,
i
=
1
,
2
,
⋯
,
m
,
Z
>
0
,
−
T
r
F
0
Z
=
γ
−
n
λ
.
\begin{array}{ll} \min &\log \det Z^{-1}\\ s.t.&\mathbf{Tr}F_iZ=c_i,\quad i=1,2,\cdots,m,\\ &Z>0,\\ &-\mathbf{Tr}F_0Z=\gamma -\frac{n}{\lambda}. \end{array}
mins.t.logdetZ−1TrFiZ=ci,i=1,2,⋯,m,Z>0,−TrF0Z=γ−λn.对每个严格可行点
x
x
x, 我们定义中心路径偏差(the deviation from the central path )
Ψ
(
x
)
\Psi(x)
Ψ(x)为
Ψ
(
x
)
≔
log
det
F
(
x
)
−
1
−
log
det
F
(
x
∗
(
c
T
x
)
)
−
1
.
\begin{aligned} \Psi(x)\coloneqq \log \det F(x)^{-1}-\log\det F\big(x^*(c^Tx)\big)^{-1}. \end{aligned}
Ψ(x):=logdetF(x)−1−logdetF(x∗(cTx))−1.
取
ϵ
=
2
−
32
,
\epsilon=2^{-32},
ϵ=2−32, 结合Theorem2, 我们有
#
N
e
w
t
o
n
s
t
e
p
s
≤
5
+
11
(
log
det
F
(
x
)
−
1
−
log
det
F
(
x
∗
(
c
T
x
)
)
−
1
)
=
5
+
11
ψ
(
x
)
.
\begin{aligned} \# Newton\; steps &\leq 5 + 11(\log\det F(x)^{-1}-\log \det F(x^*(c^Tx))^{-1})\\ &=5 + 11 \psi (x). \end{aligned}
#Newtonsteps≤5+11(logdetF(x)−1−logdetF(x∗(cTx))−1)=5+11ψ(x).
中心路径 (
x
∗
(
η
)
,
Z
∗
(
η
)
x^*(\eta),Z^*(\eta)
x∗(η),Z∗(η)) 的原始对偶参数化可以被如下定义:
(
x
∗
(
η
)
,
Z
∗
(
η
)
)
≔
a
r
g
m
i
n
−
log
det
F
(
x
)
−
log
det
Z
s
.
t
.
F
(
x
)
>
0
,
Z
>
0
,
T
r
F
i
Z
=
c
i
,
i
=
1
,
2
,
⋯
,
m
,
c
T
x
+
T
r
F
0
Z
=
η
\begin{array}{lll} \big(x^*(\eta),Z^*(\eta)\big)\coloneqq& argmin &-\log \det F(x) - \log \det Z\\ & s.t.&F(x)>0,\;Z>0,\\ & &\mathbf{Tr}F_iZ=c_i,\;i=1,2,\cdots,m,\\ & &c^Tx+\mathbf{Tr} F_0Z=\eta \end{array}
(x∗(η),Z∗(η)):=argmins.t.−logdetF(x)−logdetZF(x)>0,Z>0,TrFiZ=ci,i=1,2,⋯,m,cTx+TrF0Z=η
容易知道,
(
x
∗
(
η
)
,
Z
∗
(
η
)
)
(x^*(\eta),Z^*(\eta))
(x∗(η),Z∗(η)) 具有如下性质:
F
(
x
∗
(
η
)
)
≥
0
,
Z
∗
(
η
)
≥
0
,
T
r
F
i
Z
∗
(
η
)
=
c
i
,
i
=
1
,
2
,
⋯
,
m
,
Z
∗
(
η
)
F
(
x
∗
(
η
)
)
=
(
η
n
)
I
.
\begin{aligned} &F(x^*(\eta))\geq 0,\\ &Z^*(\eta)\geq 0,\;\mathbf{Tr}F_iZ^*(\eta)=c_i,\;i=1,2,\cdots,m,\\ &Z^*(\eta)F(x^*(\eta))=\bigg(\frac{\eta}{n}\bigg)I. \end{aligned}
F(x∗(η))≥0,Z∗(η)≥0,TrFiZ∗(η)=ci,i=1,2,⋯,m,Z∗(η)F(x∗(η))=(nη)I.最优性条件
Z
F
(
x
)
=
0
ZF(x)=0
ZF(x)=0 经过扰动变为了
Z
F
(
x
)
=
(
η
/
n
)
I
ZF(x)=(\eta/n)I
ZF(x)=(η/n)I 那么有
η
→
0
,
(
x
∗
(
η
)
,
Z
∗
(
η
)
)
→
(
x
∗
,
Z
∗
)
.
\eta \to 0,(x^*(\eta),Z^*(\eta))\to(x^*,Z^*).
η→0,(x∗(η),Z∗(η))→(x∗,Z∗). 又因为
−
log
det
F
(
x
∗
(
η
)
)
Z
∗
(
η
)
=
−
n
log
(
η
n
)
=
n
log
n
−
n
log
T
r
F
(
x
)
Z
.
\begin{aligned} -\log\det F(x^*(\eta))Z^*(\eta)=-n\log\bigg(\frac{\eta}{n}\bigg)=n\log n-n\log \,\mathbf{Tr}F(x)Z. \end{aligned}
−logdetF(x∗(η))Z∗(η)=−nlog(nη)=nlogn−nlogTrF(x)Z.
(
x
∗
(
η
)
,
Z
∗
(
η
)
)
(x^*(\eta),Z^*(\eta))
(x∗(η),Z∗(η)) 与
(
x
,
Z
)
(x,Z)
(x,Z) 之间的中心偏差为
ψ
(
x
,
Z
)
≔
−
log
det
F
(
x
)
Z
+
log
det
F
(
x
∗
(
η
)
Z
∗
(
η
)
)
=
−
log
det
F
(
x
)
Z
+
n
log
T
r
F
(
x
)
Z
−
n
log
n
.
\begin{aligned} \psi(x,Z)& \coloneqq -\log\det F(x)Z+\log\det F(x^*(\eta)Z^*(\eta))\\ &=-\log\det F(x)Z+n\log\mathbf{Tr}F(x)Z-n\log n. \end{aligned}
ψ(x,Z):=−logdetF(x)Z+logdetF(x∗(η)Z∗(η))=−logdetF(x)Z+nlogTrF(x)Z−nlogn.
原始对偶问题势函数下降方法
定义如下势函数(Potential function)
ϕ
(
x
,
Z
)
=
ν
n
log
(
T
r
F
(
x
)
Z
)
+
ψ
(
x
,
Z
)
=
(
n
+
ν
n
)
log
(
T
r
F
(
x
)
Z
)
−
log
det
F
(
x
)
−
log
det
Z
−
n
log
n
.
\begin{aligned} \phi(x,Z)&=\nu\sqrt{n}\log(\mathbf{Tr}F(x)Z)+\psi(x,Z)\\ &=(n+\nu\sqrt{n})\log(\mathbf{Tr}F(x)Z)-\log\det F(x) -\log\det Z-n\log n. \end{aligned}
ϕ(x,Z)=νnlog(TrF(x)Z)+ψ(x,Z)=(n+νn)log(TrF(x)Z)−logdetF(x)−logdetZ−nlogn.
此处,
ϕ
\phi
ϕ 是 $(x,Z) $ 对偶间隔与中心偏差的组合, 其中
ν
≥
1
\nu\geq 1
ν≥1 是参数. 所以
ϕ
(
x
,
Z
)
\phi(x,Z)
ϕ(x,Z) 便可以很好地衡量
(
x
∗
(
η
)
,
Z
∗
(
η
)
)
(x^*(\eta),Z^*(\eta))
(x∗(η),Z∗(η)) 到精确解
(
x
∗
,
Z
∗
)
(x^*,Z^*)
(x∗,Z∗) 的距离. 也就是说,
求解原始问题 (1) 与对偶问题(2), 可以转化为极小化对偶间隔和中心偏差, 进而转化为极小化势函数
ϕ
(
x
,
Z
)
\mathbf{\phi(x,Z)}
ϕ(x,Z).
势函数下降算法从严格可行点
x
(
0
)
,
Z
(
0
)
x^{(0)},Z^{(0)}
x(0),Z(0) 出发, 每步迭代减少固定的常数, 即
ϕ
(
x
(
k
+
1
)
,
Z
(
k
+
1
)
)
≤
ϕ
(
x
(
k
)
,
Z
(
k
)
)
−
δ
,
\begin{aligned} \phi(x^{(k+1)},Z^{(k+1)})\leq \phi(x^{(k)},Z^{(k)})-\delta, \end{aligned}
ϕ(x(k+1),Z(k+1))≤ϕ(x(k),Z(k))−δ,
其中 $\delta $ 是一个常数. 那么它的收敛情况呢? 我们有如下定理:
假定上式对常数
δ
\delta
δ 成立, 其中
δ
\delta
δ 不依赖于
n
,
ϵ
n,\epsilon
n,ϵ,
ϵ
∈
(
0
,
1
)
.
\epsilon\in(0,1).
ϵ∈(0,1). 那么对任意满足如下条件的
k
k
k
k
≥
ν
n
log
(
1
/
ϵ
)
+
ψ
(
x
(
0
)
,
Z
(
0
)
)
δ
,
\begin{aligned} k\geq \frac{\nu \sqrt{n}\log(1/\epsilon)+\psi(x^{(0)},Z^{(0)})}{\delta}, \end{aligned}
k≥δνnlog(1/ϵ)+ψ(x(0),Z(0)), 我们有
T
r
F
(
x
(
k
)
)
Z
(
k
)
<
ϵ
T
r
F
(
x
(
0
)
)
Z
(
0
)
.
\mathbf{Tr}F(x^{(k)})Z^{(k)}<\epsilon \mathbf{Tr}F(x^{(0)})Z^{(0)}.
TrF(x(k))Z(k)<ϵTrF(x(0))Z(0).
下面我们便来具体探讨如何极小化势函数
ϕ
(
x
)
.
\phi(x).
ϕ(x).
极小化
ϕ
(
x
)
\phi(x)
ϕ(x), 便要寻找线搜索方向
δ
x
,
δ
z
\delta x, \delta z
δx,δz.文章中介绍了三种求解搜索方向的方法, 此处我们只选取第一种方法, 也是最显然的方法 —— Newton 法
注意到
ϕ
(
x
)
\phi(x)
ϕ(x) 不是凸函数, 它的第一项
(
n
+
ν
n
)
log
(
c
T
x
+
T
r
F
0
Z
)
(n+\nu\sqrt{n})\log(c^Tx+\mathbf{Tr}F_0Z)
(n+νn)log(cTx+TrF0Z) 是凹函数, 故我们取
ϕ
(
x
)
\phi(x)
ϕ(x) 的二阶导数时忽略第一项的二阶导数, 也即修正的 Newton 方法. 具体计算过程我们不再给出, 只给出最后结果.
令
ρ
=
(
n
+
ν
n
)
/
(
c
T
x
+
T
r
F
0
Z
)
,
\rho=(n+\nu\sqrt{n})/(c^Tx+\mathbf{Tr}F_0Z),
ρ=(n+νn)/(cTx+TrF0Z), 则
δ
x
p
\delta x^p
δxp 可从如下方程中得出
F
δ
Z
p
F
+
∑
i
=
1
m
δ
x
i
p
F
i
=
−
ρ
F
Z
F
+
F
,
T
r
F
j
δ
Z
p
=
0
,
j
=
1
,
2
,
⋯
,
m
.
\begin{aligned} F\delta Z^pF+\sum_{i=1}^m\delta x_i^pF_i=-\rho FZF+F,\\ \mathbf{Tr}F_j\delta Z^p=0,\quad j=1,2,\cdots,m. \end{aligned}
FδZpF+i=1∑mδxipFi=−ρFZF+F,TrFjδZp=0,j=1,2,⋯,m.
δ
Z
d
\delta Z^d
δZd 可从如下方程得出:
Z
−
1
δ
Z
d
Z
−
1
+
∑
i
=
1
m
δ
x
i
d
F
i
=
−
ρ
F
+
Z
−
1
,
T
r
F
j
δ
Z
d
=
0
,
j
=
1
,
2
,
⋯
,
m
.
\begin{aligned} Z^{-1}\delta Z^dZ^{-1}+\sum_{i=1}^m\delta x_i^dF_i=-\rho F+Z^{-1},\\ \mathbf{Tr}F_j\delta Z^d=0,\quad j=1,2,\cdots,m. \end{aligned}
Z−1δZdZ−1+i=1∑mδxidFi=−ρF+Z−1,TrFjδZd=0,j=1,2,⋯,m.在确立了搜索方向
δ
x
,
δ
Z
\delta x,\delta Z
δx,δZ 之后, 我们可以通过平面搜索(Plane Search)来确定对应的步长. 具体而言,
ϕ
(
x
+
p
δ
x
,
Z
+
q
δ
Z
)
=
ϕ
(
x
,
Z
)
+
(
n
+
ν
n
)
log
(
1
+
c
1
p
+
c
2
q
)
−
log
det
(
I
+
ρ
F
−
1
/
2
δ
F
F
−
1
/
2
)
−
log
det
(
I
+
q
Z
−
1
/
2
δ
Z
Z
−
1
/
2
)
,
\begin{aligned} \phi(x+p\delta x,Z+q\delta Z)&=\phi(x,Z)+(n+\nu\sqrt{n})\log(1+c_1p+c_2q)\\ &-\log\det (I+\rho F^{-1/2}\delta FF^{-1/2})-\log\det(I+qZ^{-1/2}\delta ZZ^{-1/2}), \end{aligned}
ϕ(x+pδx,Z+qδZ)=ϕ(x,Z)+(n+νn)log(1+c1p+c2q)−logdet(I+ρF−1/2δFF−1/2)−logdet(I+qZ−1/2δZZ−1/2),
\end{equation}
其中
F
=
F
(
x
)
,
δ
F
≔
∑
i
=
1
m
δ
x
i
F
i
,
F=F(x),\delta F\coloneqq \sum_{i=1}^m\delta x_iF_i,
F=F(x),δF:=∑i=1mδxiFi,
c
1
=
c
T
δ
x
T
r
F
(
x
)
Z
,
c
2
=
T
r
F
0
δ
Z
T
r
F
(
x
)
Z
.
c_1=\frac{c^T\delta x}{\mathbf{TrF(x)Z}}, \quad c_2 = \frac{\mathbf{Tr}F_0\delta Z}{\mathbf{Tr}F(x)Z}.
c1=TrF(x)ZcTδx,c2=TrF(x)ZTrF0δZ.
记
μ
1
,
⋯
,
μ
n
\mu_1,\cdots,\mu_n
μ1,⋯,μn 是矩阵
F
−
1
/
2
δ
F
F
−
1
/
2
F^{-1/2}\delta FF^{-1/2}
F−1/2δFF−1/2 的特征值,
ν
1
,
⋯
,
ν
n
\nu_1,\cdots,\nu_n
ν1,⋯,νn 是
Z
−
1
/
2
δ
Z
Z
−
1
/
2
Z^{-1/2}\delta ZZ^{-1/2}
Z−1/2δZZ−1/2 的特征值. 则
ϕ
(
x
+
p
δ
x
,
Z
+
q
δ
Z
)
=
ϕ
(
x
,
Z
)
+
(
n
+
μ
n
)
log
(
1
+
c
1
p
+
c
2
q
)
−
∑
i
=
1
n
log
(
1
+
p
μ
i
)
−
∑
i
=
1
n
log
(
1
+
q
ν
i
)
.
\begin{array}{l} \phi(x+p\delta x,Z+q\delta Z)=\phi(x,Z)\\ +(n+\mu\sqrt{n})\log(1+c_1p+c_2q)-\sum_{i=1}^n\log(1+p\mu_i)-\sum_{i=1}^n\log(1+q\nu_i). \end{array}
ϕ(x+pδx,Z+qδZ)=ϕ(x,Z)+(n+μn)log(1+c1p+c2q)−∑i=1nlog(1+pμi)−∑i=1nlog(1+qνi).
此问题可以被标准的 guarded Newton 方法解决.
至此,我们便介绍完了文章的主要内容.(Markdown能不能直接插入定理环境呢?这样的定理不太美观)。