文章目录
基本概念
GP可以用于处理资源分配问题,其中所有的未知变量为正值,如功率、可达传输率、安全速率等。GP本身是非凸的
单项式函数(monomial function):
函数
f
:
R
n
→
R
f: \mathbb{R}^{n} \rightarrow \mathbb{R}
f:Rn→R,定义域为
dom
f
=
R
+
+
n
\operatorname{dom} f=\mathbb{R}_{++}^{n}
domf=R++n
f
(
x
)
=
c
x
1
a
1
x
2
a
2
⋯
x
n
a
n
f(\mathbf{x})=c x_{1}^{a_{1}} x_{2}^{a_{2}} \cdots x_{n}^{a_{n}}
f(x)=cx1a1x2a2⋯xnan
其中
c
>
0
c>0
c>0,
a
i
∈
R
a_{i} \in \mathbb{R}
ai∈R。
f
f
f被称为单项式函数,通常是非凸的。
正项式函数(posynomial function):
单项式的和:
f
(
x
)
=
∑
k
=
1
K
c
k
x
1
a
1
k
x
2
a
2
k
⋯
x
n
a
n
k
f(\mathbf{x})=\sum_{k=1}^{K} c_{k} x_{1}^{a_{1 k}} x_{2}^{a_{2 k}} \cdots x_{n}^{a_{n k}}
f(x)=k=1∑Kckx1a1kx2a2k⋯xnank
其中
c
k
>
0
c_{k}>0
ck>0和
a
i
k
∈
R
a_{i k} \in \mathbb{R}
aik∈R。
f
f
f被称为单项式函数,通常是非凸的。
log-sum-exp函数
f
(
x
)
=
log
(
e
x
1
+
⋯
+
e
x
n
)
f(\mathbf{x})=\log \left(e^{x_{1}}+\cdots+e^{x_{n}}\right)
f(x)=log(ex1+⋯+exn)
在
R
n
\mathbb{R}^{n}
Rn上式凸的,其中
dom
f
⊆
R
n
\operatorname{dom} f \subseteq \mathbb{R}^{n}
domf⊆Rn。(可以由二阶条件证明其凸性,即其Hessian是PSD矩阵)
延拓log-sum-exp函数
f
(
x
)
=
log
(
e
a
1
T
x
+
b
1
+
⋯
+
e
a
m
T
x
+
b
m
)
f(\mathbf{x})=\log \left(e^{\mathbf{a}_{1}^{T} \mathbf{x}+b_{1}}+\cdots+e^{\mathbf{a}_{m}^{T} \mathbf{x}+b_{m}}\right)
f(x)=log(ea1Tx+b1+⋯+eamTx+bm)
其中
a
i
∈
R
n
\mathbf{a}_{i} \in \mathbb{R}^{n}
ai∈Rn,
b
i
∈
R
b_{i} \in \mathbb{R}
bi∈R。它在
R
n
\mathbb{R}^{n}
Rn也是凸的。
证明思路:log-sum-exp是凸的,仿射变换
a
i
T
x
+
b
1
\mathbf{a}_{i}^{T} \mathbf{x}+b_{1}
aiTx+b1是保凸的。所以它是凸的。
GP规划
几何规划的一般结构如下:
min
∑
k
=
1
K
0
c
0
k
x
1
a
0
,
1
k
x
2
a
0
,
2
k
⋯
x
n
a
0
,
n
k
s.t.
∑
k
=
1
K
i
c
i
k
x
1
a
i
,
1
k
x
2
a
i
,
2
k
⋯
x
n
a
i
,
n
k
≤
1
,
i
=
1
,
…
,
m
d
i
x
1
g
i
1
⋯
x
n
g
i
n
=
1
,
i
=
1
,
…
,
p
\begin{array}{ll} \min & \sum_{k=1}^{K_{0}} c_{0 k} x_{1}^{a_{0,1 k}} x_{2}^{a_{0,2 k}} \cdots x_{n}^{a_{0, n k}} \\ \text { s.t. } & \sum_{k=1}^{K_{i}} c_{i k} x_{1}^{a_{i, 1 k}} x_{2}^{a_{i, 2 k}} \cdots x_{n}^{a_{i, n k}} \leq 1, i=1, \ldots, m \\ & d_{i} x_{1}^{g_{i 1}} \cdots x_{n}^{g_{i n}}=1, i=1, \ldots, p \end{array}
min s.t. ∑k=1K0c0kx1a0,1kx2a0,2k⋯xna0,nk∑k=1Kicikx1ai,1kx2ai,2k⋯xnai,nk≤1,i=1,…,mdix1gi1⋯xngin=1,i=1,…,p
其中,对于任意的
i
,
j
,
k
i, j, k
i,j,k有,
c
i
k
>
0
,
d
i
>
0
c_{i k}>0, d_{i}>0
cik>0,di>0和
a
i
,
j
k
,
g
i
j
∈
R
a_{i, j k}, g_{i j} \in \mathbb{R}
ai,jk,gij∈R。定义域为
D
=
R
+
+
n
\mathcal{D}=\mathbb{R}_{++}^{n}
D=R++n。该问题有一些特点:
- 目标函数和不等式约束都是正项式。
- 等式约束是单项式。
- 几何规划一般不是凸优化问题。
但是几何规划问题可以通过变量代还和函数变换转化为凸优化问题。
凸GP规划
令:
x
i
=
e
y
i
(
变
量
代
换
)
x_{i}=e^{y_{i}} (变量代换)
xi=eyi(变量代换)
y
=
[
y
1
,
…
,
y
n
]
T
\mathbf{y}=\left[y_{1}, \ldots, y_{n}\right]^{T}
y=[y1,…,yn]T
则单项式可以重新表示为:
c
x
1
a
1
x
2
a
2
⋯
x
n
a
n
=
e
a
T
y
+
b
c x_{1}^{a_{1}} x_{2}^{a_{2}} \cdots x_{n}^{a_{n}}=e^{\mathbf{a}^{T} \mathbf{y}+b}
cx1a1x2a2⋯xnan=eaTy+b
其中
b
=
log
c
b=\log c
b=logc和
a
=
[
a
1
,
…
,
a
n
]
T
\mathbf{a}=\left[a_{1}, \ldots, a_{n}\right]^{T}
a=[a1,…,an]T。类似地,正项式子可以表示为:
∑
k
=
1
K
c
k
x
1
a
1
k
x
2
a
2
k
⋯
x
n
a
n
k
=
∑
k
=
1
K
e
a
k
T
y
+
b
k
\sum_{k=1}^{K} c_{k} x_{1}^{a_{1 k}} x_{2}^{a_{2 k}} \cdots x_{n}^{a_{n k}}=\sum_{k=1}^{K} e^{\mathbf{a}_{k}^{T} \mathbf{y}+b_{k}}
k=1∑Kckx1a1kx2a2k⋯xnank=k=1∑KeakTy+bk
其中:
b
k
=
log
c
k
,
a
k
=
[
a
1
k
,
…
,
a
n
k
]
T
b_{k}=\log c_{k}, \quad \mathbf{a}_{k}=\left[a_{1 k}, \ldots, a_{n k}\right]^{T}
bk=logck,ak=[a1k,…,ank]T
定义:
g
i
=
[
g
i
1
,
…
,
g
i
n
]
T
,
h
i
=
log
d
i
\mathbf{g}_{i}=\left[g_{i 1}, \ldots, g_{i n}\right]^{T}, \quad h_{i}=\log d_{i}
gi=[gi1,…,gin]T,hi=logdi
则原来的GP规划问题可以表示为:
min
∑
k
=
1
K
0
e
a
0
k
T
y
+
b
0
k
s.t.
∑
k
=
1
K
i
e
a
i
k
T
y
+
b
i
k
≤
1
,
i
=
1
,
…
,
m
e
g
i
T
y
+
h
i
=
1
,
i
=
1
,
…
,
p
(
5.8
)
\begin{aligned} \min & \sum_{k=1}^{K_{0}} e^{\mathbf{a}_{0 k}^{T} \mathbf{y}+b_{0 k}} \\ \text { s.t. } & \sum_{k=1}^{K_{i}} e^{\mathbf{a}_{i k}^{T} \mathbf{y}+b_{i k}} \leq 1, i=1, \ldots, m \\ & e^{\mathbf{g}_{i}^{T} \mathbf{y}+h_{i}}=1, i=1, \ldots, p \end{aligned} (5.8)
min s.t. k=1∑K0ea0kTy+b0kk=1∑KieaikTy+bik≤1,i=1,…,megiTy+hi=1,i=1,…,p(5.8)
对上面的目标函数和约束函数取对数可以得到等价问题:
min
log
∑
k
=
1
K
0
e
a
0
k
T
y
+
b
0
k
s.t.
log
∑
k
=
1
K
i
e
a
i
k
T
y
+
b
i
k
≤
0
,
i
=
1
,
…
,
m
g
i
T
y
+
h
i
=
0
,
i
=
1
,
…
,
p
\begin{array}{ll} \min & \log \sum_{k=1}^{K_{0}} e^{\mathbf{a}_{0 k}^{T} \mathbf{y}+b_{0 k}} \\ \text { s.t. } & \log \sum_{k=1}^{K_{i}} e^{\mathbf{a}_{i k}^{T} \mathbf{y}+b_{i k}} \leq 0, i=1, \ldots, m \\ & \mathbf{g}_{i}^{T} \mathbf{y}+h_{i}=0, i=1, \ldots, p \end{array}
min s.t. log∑k=1K0ea0kTy+b0klog∑k=1KieaikTy+bik≤0,i=1,…,mgiTy+hi=0,i=1,…,p
这是一个凸优化问题,其中
y
∈
R
n
\mathbf{y} \in \mathbb{R}^{n}
y∈Rn是未知向量变量。通过得到最优的
y
⋆
\mathbf{y}^{\star}
y⋆可以得到原GP问题的最优解,即:
x
⋆
=
(
e
y
1
⋆
,
…
,
e
y
n
⋆
)
\mathrm{x}^{\star}=\left(e^{y_{1}^{\star}}, \ldots, e^{y_{n}^{\star}}\right)
x⋆=(ey1⋆,…,eyn⋆)
最优功率分配问题
考虑最大最小功率分配问题
min
p
i
,
i
=
1
,
…
,
K
max
i
=
1
,
…
,
K
∑
j
=
1
,
j
≠
i
K
G
i
j
p
j
+
σ
i
2
G
i
i
p
i
s.t.
0
<
p
i
≤
P
i
,
i
=
1
,
…
,
K
.
\begin{aligned} \min _{p_{i}, i=1, \ldots, K} \max _{i=1, \ldots, K} & \frac{\sum_{j=1, j \neq i}^{K} G_{i j} p_{j}+\sigma_{i}^{2}}{G_{i i} p_{i}} \\ \text { s.t. } & 0<p_{i} \leq P_{i}, i=1, \ldots, K . \end{aligned}
pi,i=1,…,Kmini=1,…,Kmax s.t. Giipi∑j=1,j=iKGijpj+σi20<pi≤Pi,i=1,…,K.
这是一个拟凸优化问题,定义域为:
D
⊆
R
+
+
K
\mathcal{D} \subseteq \mathbb{R}_{++}^{K}
D⊆R++K。该问题可以采用迭代二分法求解。(即转化为一个可行性问题:
find
x
\text{find}\quad\mathbf{x}
findx)。现在考虑采用采用GP,高效地得到最优解。利用上镜图可以将该问题重构为:
min
t
,
p
i
,
i
=
1
,
…
,
K
t
s.t.
∑
j
=
1
,
j
≠
i
K
G
i
j
p
j
+
σ
i
2
G
i
i
p
i
≤
t
,
i
=
1
,
…
,
K
0
<
p
i
≤
P
i
,
i
=
1
,
…
,
K
.
\begin{array}{rl} \min _{t, p_{i}, i=1, \ldots, K} & t \\ \text { s.t. } & \frac{\sum_{j=1, j \neq i}^{K} G_{i j} p_{j}+\sigma_{i}^{2}}{G_{i i} p_{i}} \leq t, i=1, \ldots, K \\ & 0<p_{i} \leq P_{i}, i=1, \ldots, K . \end{array}
mint,pi,i=1,…,K s.t. tGiipi∑j=1,j=iKGijpj+σi2≤t,i=1,…,K0<pi≤Pi,i=1,…,K.
其中目标函数
t
t
t是一个单项式,对于任意的
i
i
i约束条件是正项不等式和单项不等式。因此该问题是一个定义域为
D
⊆
R
+
+
K
+
1
\mathcal{D} \subseteq \mathbb{R}_{++}^{K+1}
D⊆R++K+1的几个规划,因此,该非凸几何规划可以转化为凸优化问题。
- 一个优化问题可能转化为不同类型的优化问题,从而给出了原问题的不同解决方案。
缩合法(Condensation method)
在某些应用中(如无线通信的功率分配),会有如下的优化问题:
min
q
(
x
)
s.t.
f
(
x
)
g
(
x
)
≤
1
h
(
x
)
=
1
(
5.13
)
\begin{array}{l} \min q(\mathrm{x}) \\ \text { s.t. } \frac{f(\mathrm{x})}{g(\mathrm{x})} \leq 1 \\ h(\mathrm{x})=1 \end{array}(5.13)
minq(x) s.t. g(x)f(x)≤1h(x)=1(5.13)
其中
q
(
x
)
q(\mathrm{x})
q(x),
f
(
x
)
f(\mathrm{x})
f(x),
g
(
x
)
g(\mathrm{x})
g(x) 正项式,
h
(
x
)
h(\mathrm{x})
h(x)是单项式。因为不等式约束是两个正项式的比率,而不是一个正项式,所以他不是标准的GP,但是通过连续的GP近似方法可以解决这样的问题。该问题称为缩合法。
连续GP近似
核心思想:用单项式函数近似逼近正项式函数 g ( x ) g(\mathrm{x}) g(x) ,因此,(5.13)中不等式约束的左边将是正项式(正项式和单项式之比还是正项式)。然后连续地进行用单项式近似正项式。
用单项式近似正项式的一个常见的方法是算术平均不等式。对于
α
i
>
0
\alpha_{i}>0
αi>0,
u
i
>
0
,
i
=
1
,
…
,
n
u_{i}>0, i=1, \ldots, n
ui>0,i=1,…,n以及
∑
i
=
1
n
α
i
=
1
\sum_{i=1}^{n} \alpha_{i}=1
∑i=1nαi=1有:
∑
i
=
1
n
u
i
≥
∏
i
=
1
n
(
u
i
α
i
)
α
i
\sum_{i=1}^{n} u_{i} \geq \prod_{i=1}^{n}\left(\frac{u_{i}}{\alpha_{i}}\right)^{\alpha_{i}}
i=1∑nui≥i=1∏n(αiui)αi
设
{
u
i
(
x
)
}
\left\{u_{i}(\mathbf{x})\right\}
{ui(x)}是正项式
g
(
x
)
g(\mathbf{x})
g(x)中的单项式,则基于算术平均不等式有:
g
(
x
)
=
∑
i
=
1
n
u
i
(
x
)
≥
∏
i
=
1
n
(
u
i
(
x
)
α
i
)
α
i
(
5.15
)
g(\mathrm{x})=\sum_{i=1}^{n} u_{i}(\mathrm{x}) \geq \prod_{i=1}^{n}\left(\frac{u_{i}(\mathrm{x})}{\alpha_{i}}\right)^{\alpha_{i}}(5.15)
g(x)=i=1∑nui(x)≥i=1∏n(αiui(x))αi(5.15)
显然,不等式的右边是一个单项式(单项式的乘积还是一个单项式)。在给定的一个可行点
x
0
\mathrm{x}_{0}
x0处,选择
α
i
\alpha_{i}
αi的一个常见方法是:
α
i
=
u
i
(
x
0
)
g
(
x
0
)
(
5.16
)
\alpha_{i}=\frac{u_{i}\left(\mathrm{x}_{0}\right)}{g\left(\mathrm{x}_{0}\right)}(5.16)
αi=g(x0)ui(x0)(5.16)
其满足
α
i
>
0
\alpha_{i}>0
αi>0和
∑
i
=
1
n
α
i
=
1
\sum_{i=1}^{n} \alpha_{i}=1
∑i=1nαi=1。通过把(5.16)中的
α
i
\alpha_{i}
αi带入到(5.15)中有:
g
~
(
x
,
x
0
)
=
∏
i
=
1
n
(
u
i
(
x
)
α
i
)
α
i
≤
g
(
x
)
\tilde{g}\left(\mathbf{x}, \mathbf{x}_{0}\right)=\prod_{i=1}^{n}\left(\frac{u_{i}(\mathbf{x})}{\alpha_{i}}\right)^{\alpha_{i}} \leq g(\mathbf{x})
g~(x,x0)=i=1∏n(αiui(x))αi≤g(x)
它是正项式函数
g
(
x
g(\mathbf{x}
g(x在给定可行点
x
0
\mathbf{x}_0
x0处的单项式近似,并且有
g
~
(
x
0
,
x
0
)
=
g
(
x
0
)
\tilde{g}\left(\mathrm{x}_{0}, \mathrm{x}_{0}\right)=g\left(\mathrm{x}_{0}\right)
g~(x0,x0)=g(x0)
换而言之,
g
~
(
x
0
,
x
0
)
\tilde{g}\left(\mathrm{x}_0, \mathrm{x}_{0}\right)
g~(x0,x0)是
g
(
x
)
g\left(\mathrm{x}\right)
g(x)的紧下界。令
C
\mathcal{C}
C是问题(5.13)的一个可行集,且
x
0
∈
C
\mathrm{x}_{0} \in \mathcal{C}
x0∈C,,然后有:
C
(
x
0
)
≜
{
x
∣
f
(
x
)
/
g
~
(
x
,
x
0
)
≤
1
,
h
(
x
)
=
1
}
⊆
C
≜
{
x
∣
f
(
x
)
/
g
(
x
)
≤
1
,
h
(
x
)
=
1
}
(
5.19
)
\begin{aligned} \mathcal{C}\left(\mathbf{x}_{0}\right) & \triangleq\left\{\mathbf{x} \mid f(\mathbf{x}) / \tilde{g}\left(\mathbf{x}, \mathbf{x}_{0}\right) \leq 1, h(\mathbf{x})=1\right\} \\ & \subseteq \mathcal{C} \triangleq\{\mathbf{x} \mid f(\mathbf{x}) / g(\mathbf{x}) \leq 1, h(\mathbf{x})=1\} \end{aligned}(5.19)
C(x0)≜{x∣f(x)/g~(x,x0)≤1,h(x)=1}⊆C≜{x∣f(x)/g(x)≤1,h(x)=1}(5.19)
现在用下列约束近似问题(5.13)不等式约束:
f
(
x
)
g
~
(
x
,
x
0
)
≤
1
\frac{f(\mathbf{x})}{\tilde{g}\left(\mathbf{x}, \mathbf{x}_{0}\right)} \leq 1
g~(x,x0)f(x)≤1
得到:
min
q
(
x
)
s.t.
f
(
x
)
g
~
(
x
,
x
0
)
≤
1
h
(
x
)
=
1
\begin{array}{l} \min q(\mathbf{x}) \\ \text { s.t. } \frac{f(\mathbf{x})}{\tilde{g}\left(\mathbf{x}, \mathbf{x}_{0}\right)} \leq 1 \\ h(\mathbf{x})=1 \end{array}
minq(x) s.t. g~(x,x0)f(x)≤1h(x)=1
该问题是一个标准的几何规划(其聚合约束集(condensed constraint set,
C
(
x
0
)
⊆
C
\mathcal{C}\left(\mathrm{x}_{0}\right) \subseteq \mathcal{C}
C(x0)⊆C(cf. (5.19))。连续近似法(缩合法)总结如下:
目标函数值
q
(
x
0
(
k
)
)
q\left(\mathbf{x}_{0}^{(k)}\right)
q(x0(k))随迭代次数
k
k
k单调递减,直到收敛(迭代次数为
N
N
N),由上述连续近似方法可以找到的解
x
0
(
N
)
\mathbf{x}_{0}^{(N)}
x0(N)为:
x
0
(
N
)
=
arg
min
{
q
(
x
)
∣
x
∈
∪
k
=
0
N
−
1
C
(
x
0
(
k
)
)
⊆
C
}
\mathrm{x}_{0}^{(N)}=\arg \min \left\{q(\mathrm{x}) \mid \mathrm{x} \in \cup_{k=0}^{N-1} \mathcal{C}\left(\mathrm{x}_{0}^{(k)}\right) \subseteq \mathcal{C}\right\}
x0(N)=argmin{q(x)∣x∈∪k=0N−1C(x0(k))⊆C}
他是问题(5.13)的近似解,次优解。
总结:对于如(5.13)的非凸问题,将其重构为凸问题十分困难。缩合法通过对(5.13)的非凸约束集的连续保守近似可以得到较好的近似解。SCA算法也是一种被广泛使用的保守近似方法,他对原问题的非凸约束进行保守的凸近似,以便利用合适的凸优化工具或者算法进行处理。但得到的是次优解,但相关的KKT条件证明其是原问题的一个稳定点。(如果能够以低复杂度高校地计算出原问题的一个稳定点,并且满足性能要求,那么实际上也就找到了原问题的实际解。)
另一个例子:物理层秘密通信
参考(T.-H. Chang, W.-C. Chiang, Y.-W. P. Hong, and C.-Y. Chi, “Training sequence design
for discriminatory channel estimation in wireless MIMO systems,” IEEE Trans. Signal
Process., vol. 58, no. 12, pp. 6223–6237, Dec. 2010.)