本文介绍了多目标优化(凸优化)中的复杂度分析方法,针对是Linear Matrix Inequality(LMI)和Second Order Cone (SOC)的型约束条件。主要参考了文献Outage Constrained Robust Transmit Optimization for Multiuser MISO Downlinks: Tractable Approximations by Conic Optimization。
一. 确定迭代次数
β \sqrt{\beta } β表示达到最优解所需迭代次数。其中 β = ∑ j = 1 p k j ⏟ L M I + 2 m ⏟ SOC \beta \text{=}\underbrace{\sum\limits_{j=1}^{p}{{{k}_{j}}}}_{LMI}+\underbrace{2m}_{\text{SOC}} β=LMI j=1∑pkj+SOC 2m, p p p 是指的LMI约束的个数, k j {{k}_{j}} kj表示第 j j j个约束对应的维度, m m m指的是SOC约束的个数。因此迭代次数表示为: ∑ j = 1 p k j ⏟ L M I + 2 m ⏟ SOC \sqrt{\underbrace{\sum\limits_{j=1}^{p}{{{k}_{j}}}}_{LMI}+\underbrace{2m}_{\text{SOC}}} LMI j=1∑pkj+SOC 2m。
二. 确定每次迭代的复杂度
使用 C f o r m + C f a c t {{\text{C}}_{form}}+{{C}_{fact}} Cform+Cfact表示每次迭代所需的复杂度。 C f o r m = n ∑ j = 1 p k j 3 + n 2 ∑ j = 1 p k j 2 ⏟ L M I + n ∑ j = 1 m k j 2 ⏟ SOC {{\text{C}}_{form}}\text{=}\underbrace{n\sum\limits_{j=1}^{p}{k_{j}^{3}}+{{n}^{2}}\sum\limits_{j=1}^{p}{k_{j}^{2}}}_{LMI}+\underbrace{n\sum\limits_{j=1}^{m}{k_{j}^{2}}}_{\text{SOC}} Cform=LMI nj=1∑pkj3+n2j=1∑pkj2+SOC nj=1∑mkj2
, 其中 n n n表示需要优化的总变量数目。 p p p是指的LMI约束的个数 m m m指的是SOC约束的个数, k j {{k}_{j}} kj表示第 个约束条件对应的维度。 C f a c t = n 3 {{C}_{fact}}={{n}^{3}} Cfact=n3。
最终 C f o r m + C f a c t = n ∑ j = 1 p k j 3 + n 2 ∑ j = 1 p k j 2 ⏟ L M I + n ∑ j = 1 m k j 2 ⏟ SOC + n 3 {{\text{C}}_{form}}+{{C}_{fact}}=\underbrace{n\sum\limits_{j=1}^{p}{k_{j}^{3}}+{{n}^{2}}\sum\limits_{j=1}^{p}{k_{j}^{2}}}_{LMI}+\underbrace{n\sum\limits_{j=1}^{m}{k_{j}^{2}}}_{\text{SOC}}+{{n}^{3}} Cform+Cfact=LMI nj=1∑pkj3+n2j=1∑pkj2+SOC nj=1∑mkj2+n3
三. 总计算复杂度表示
∑ j = 1 p k j ⏟ L M I + 2 m ⏟ SOC ⋅ [ n ∑ j = 1 p k j 3 + n 2 ∑ j = 1 p k j 2 ⏟ L M I + n ∑ j = 1 m k j 2 ⏟ SOC + n 3 ] \quad\sqrt{\underbrace{\sum\limits_{j=1}^{p}{{{k}_{j}}}}_{LMI}+\underbrace{2m}_{\text{SOC}}}\centerdot [\underbrace{n\sum\limits_{j=1}^{p}{k_{j}^{3}}+{{n}^{2}}\sum\limits_{j=1}^{p}{k_{j}^{2}}}_{LMI}+\underbrace{n\sum\limits_{j=1}^{m}{k_{j}^{2}}}_{\text{SOC}}+{{n}^{3}}] LMI j=1∑pkj+SOC 2m⋅[LMI nj=1∑pkj3+n2j=1∑pkj2+SOC nj=1∑mkj2+n3]
= n ⋅ ∑ j = 1 p k j ⏟ L M I + 2 m ⏟ SOC ⋅ [ ∑ j = 1 p k j 3 + n ∑ j = 1 p k j 2 ⏟ L M I + ∑ j = 1 m k j 2 ⏟ SOC + n 2 ] =n\centerdot \sqrt{\underbrace{\sum\limits_{j=1}^{p}{{{k}_{j}}}}_{LMI}+\underbrace{2m}_{\text{SOC}}}\centerdot [\underbrace{\sum\limits_{j=1}^{p}{k_{j}^{3}}+n\sum\limits_{j=1}^{p}{k_{j}^{2}}}_{LMI}+\underbrace{\sum\limits_{j=1}^{m}{k_{j}^{2}}}_{\text{SOC}}+{{n}^{2}}] =n⋅LMI j=1∑pkj+SOC 2m⋅[LMI j=1∑pkj3+nj=1∑pkj2+SOC j=1∑mkj2+n2]
已知其中, Q i {{\mathbf{Q}}_{i}} Qi和 S i {{\mathbf{S}}_{i}} Si都是 N t × N t {{N}_{t}}\times {{N}_{t}} Nt×Nt的矩阵, r i {{\mathbf{r}}_{i}} ri是 N t × 1 {{N}_{t}}\times 1 Nt×1的向量, t i {{t}_{i}} ti是标量。
按照步骤写:
图中约束条件(1)中包含 K K K个 N t + 1 {{N}_{t}}\text{+}1 Nt+1维LMI,(2)中包含 K K K个 N t {{N}_{t}} Nt维LMI, (3)中包含 K K K个 维LMI。所以得 β = ∑ j = 1 p k j ⏟ L M I + 2 m ⏟ SOC = ∑ j = 1 K ( N t + 1 ) + ∑ j = 1 K N t + ∑ j = 1 K 1 ⏟ L M I + 0 ⏟ SOC = K ( N t + 1 ) + K N t + K = 2 K ( N t + 1 ) \beta \text{=}\underbrace{\sum\limits_{j=1}^{p}{{{k}_{j}}}}_{LMI}+\underbrace{2m}_{\text{SOC}}\text{=}\underbrace{\sum\limits_{j=1}^{\text{K}}{({{N}_{t}}+1)}+\sum\limits_{j=1}^{\text{K}}{{{N}_{t}}}+\sum\limits_{j=1}^{\text{K}}{1}}_{LMI}+\underbrace{0}_{\text{SOC}}=K({{N}_{t}}+1)+K{{N}_{t}}+K=2K({{N}_{t}}+1) β=LMI j=1∑pkj+SOC 2m=LMI j=1∑K(Nt+1)+j=1∑KNt+j=1∑K1+SOC 0=K(Nt+1)+KNt+K=2K(Nt+1)所以得到迭代次数 β = 2 K ( N t + 1 ) \sqrt{\beta }\text{=}\sqrt{2K({{N}_{t}}+1)} β=2K(Nt+1)。
需要优化的变量 S i {{\mathbf{S}}_{i}} Si, t i {{t}_{i}} ti, i = 1 , . . . , K i=1,...,K i=1,...,K,所以需要优化的元素 K N t 2 + K KN_{t}^{2}+K KNt2+K,所以 n = K N t 2 + K = O ( K N t 2 ) n\text{=}KN_{t}^{2}+K\text{=}\mathcal{O}(KN_{t}^{2}) n=KNt2+K=O(KNt2)。
C f o r m = n ( ∑ j = 1 K ( N t + 1 ) 3 + ∑ j = 1 K N t 3 + ∑ j = 1 K 1 3 ⏟ L M I + n 2 ( ∑ j = 1 K ( N t + 1 ) 2 + ∑ j = 1 K N t 2 + ∑ j = 1 K 1 2 ⏟ L M I + 0 ⏟ SOC {{\text{C}}_{form}}\text{=}\underbrace{n(\sum\limits_{j=1}^{\text{K}}{{{({{N}_{t}}+1)}^{3}}}+\sum\limits_{j=1}^{\text{K}}{N_{t}^{3}}+\sum\limits_{j=1}^{\text{K}}{{{1}^{3}}}}_{LMI}+\underbrace{{{n}^{2}}(\sum\limits_{j=1}^{\text{K}}{{{({{N}_{t}}+1)}^{2}}}+\sum\limits_{j=1}^{\text{K}}{N_{t}^{2}}+\sum\limits_{j=1}^{\text{K}}{{{1}^{2}}}}_{LMI}+\underbrace{0}_{\text{SOC}} Cform=LMI n(j=1∑K(Nt+1)3+j=1∑KNt3+j=1∑K13+LMI n2(j=1∑K(Nt+1)2+j=1∑KNt2+j=1∑K12+SOC 0
C f a c t = n 3 {{C}_{fact}}={{n}^{3}} Cfact=n3
C f o r m + C f a c t = n ⋅ [ K ( ( N t + 1 ) 3 + N t 3 + 1 ) + K n ( ( N t + 1 ) 2 + N t 2 + 1 ) + n 2 ] {{\text{C}}_{form}}+{{C}_{fact}}=n\centerdot [K({{({{N}_{t}}+1)}^{3}}+N_{t}^{3}+1)+Kn({{({{N}_{t}}+1)}^{2}}+N_{t}^{2}+1)+{{n}^{2}}] Cform+Cfact=n⋅[K((Nt+1)3+Nt3+1)+Kn((Nt+1)2+Nt2+1)+n2]
2 K ( N t + 1 ) n ⋅ [ K ( ( N t + 1 ) 3 + N t 3 + 1 ) + K n ( ( N t + 1 ) 2 + N t 2 + 1 ) + n 2 ] \sqrt{2K({{N}_{t}}+1)}n\centerdot [K({{({{N}_{t}}+1)}^{3}}+N_{t}^{3}+1)+Kn({{({{N}_{t}}+1)}^{2}}+N_{t}^{2}+1)+{{n}^{2}}] 2K(Nt+1)n⋅[K((Nt+1)3+Nt3+1)+Kn((Nt+1)2+Nt2+1)+n2]
Where n = K N t 2 + K = O ( K N t 2 ) n\text{=}KN_{t}^{2}+K\text{=}\mathcal{O}(KN_{t}^{2}) n=KNt2+K=O(KNt2).
举例2:
已知其中, Q i {{\mathbf{Q}}_{i}} Qi和 S i {{\mathbf{S}}_{i}} Si都是 N t × N t {{N}_{t}}\times {{N}_{t}} Nt×Nt的矩阵, r i {{\mathbf{r}}_{i}} ri是 N t × 1 {{N}_{t}}\times 1 Nt×1的向量, t i {{t}_{i}} ti是标量。
按照步骤写:
图中约束条件(1)中包含 K K K个1维LMI,(2)中包含 K K K个 N t + 1 {{N}_{t}}+1 Nt+1维SOC( 为什么是 N t + 1 {{N}_{t}}\text{+}1 Nt+1,看前文的SOC补充), (3)中包含 K K K个 N t 2 + 1 N_{t}^{2}+1 Nt2+1维SOC,(4)中包含 K K K个 N t {{N}_{t}} Nt维LMI。所以得
β = ∑ j = 1 p k j ⏟ L M I + 2 m ⏟ SOC = ∑ j = 1 K 1 + ∑ j = 1 K N t ⏟ L M I + 2 × 2 K ⏟ SOC = K ( N t + 5 ) \beta \text{=}\underbrace{\sum\limits_{j=1}^{p}{{{k}_{j}}}}_{LMI}+\underbrace{2m}_{\text{SOC}}\text{=}\underbrace{\sum\limits_{j=1}^{\text{K}}{1}+\sum\limits_{j=1}^{\text{K}}{{{N}_{t}}}}_{LMI}+\underbrace{2\times 2K}_{\text{SOC}}=K({{N}_{t}}+5) β=LMI j=1∑pkj+SOC 2m=LMI j=1∑K1+j=1∑KNt+SOC 2×2K=K(Nt+5),
所以得到迭代次数 β = K ( N t + 5 ) \sqrt{\beta }\text{=}\sqrt{K({{N}_{t}}+5)} β=K(Nt+5) 。
需要优化的变量 S i {{\mathbf{S}}_{i}} Si, x i {{x}_{i}} xi, y i {{y}_{i}} yi, i = 1 , . . . , K i=1,...,K i=1,...,K,所以需要优化的元素总个数 K N t 2 + K + K KN_{t}^{2}+K\text{+}K KNt2+K+K,所以 n = K N t 2 + K + K = O ( K N t 2 ) n\text{=}KN_{t}^{2}+K\text{+}K\text{=}\mathcal{O}(KN_{t}^{2}) n=KNt2+K+K=O(KNt2)。
C f o r m = n ( ∑ j = 1 K 1 3 + ∑ j = 1 K N t 3 ) ⏟ L M I + n 2 ( ∑ j = 1 K 1 2 + ∑ j = 1 K N t 2 ⏟ L M I + n ( ∑ j = 1 K ( N t + 1 ) 2 + ∑ j = 1 K ( N t 2 + 1 ) 2 ) ⏟ SOC {{\text{C}}_{form}}\text{=}\underbrace{n(\sum\limits_{j=1}^{\text{K}}{{{1}^{3}}}+\sum\limits_{j=1}^{\text{K}}{N_{t}^{3})}}_{LMI}+\underbrace{{{n}^{2}}(\sum\limits_{j=1}^{\text{K}}{{{1}^{2}}}+\sum\limits_{j=1}^{\text{K}}{N_{t}^{2}}}_{LMI}+\underbrace{n(\sum\limits_{j=1}^{\text{K}}{{{({{N}_{t}}+1)}^{2}}}+\sum\limits_{j=1}^{\text{K}}{{{(N_{t}^{2}+1)}^{2}})}}_{\text{SOC}} Cform=LMI n(j=1∑K13+j=1∑KNt3)+LMI n2(j=1∑K12+j=1∑KNt2+SOC n(j=1∑K(Nt+1)2+j=1∑K(Nt2+1)2)
= n K ( 1 + N t 3 ) + n 2 K ( 1 + N t 2 ) + n K ( ( N t + 1 ) 2 + ( N t 2 + 1 ) 2 ) \text{=}nK(1+N_{t}^{3})+{{n}^{2}}K(1+N_{t}^{2})+nK({{({{N}_{t}}+1)}^{2}}+{{(N_{t}^{2}+1)}^{2}}) =nK(1+Nt3)+n2K(1+Nt2)+nK((Nt+1)2+(Nt2+1)2)
= n ⋅ [ K ( 1 + N t 3 ) + n K ( 1 + N t 2 ) + K ( ( N t + 1 ) 2 + ( N t 2 + 1 ) 2 ) ] =n\centerdot [K(1+N_{t}^{3})+nK(1+N_{t}^{2})+K({{({{N}_{t}}+1)}^{2}}+{{(N_{t}^{2}+1)}^{2}})] =n⋅[K(1+Nt3)+nK(1+Nt2)+K((Nt+1)2+(Nt2+1)2)]
C f a c t = n 3 {{C}_{fact}}={{n}^{3}} Cfact=n3
C f o r m + C f a c t = n ⋅ [ K ( 1 + N t 3 ) + n K ( 1 + N t 2 ) + K ( ( N t + 1 ) 2 + ( N t 2 + 1 ) 2 ) + n 2 ] {{\text{C}}_{form}}+{{C}_{fact}}=n\centerdot [K(1+N_{t}^{3})+nK(1+N_{t}^{2})+K({{({{N}_{t}}+1)}^{2}}+{{(N_{t}^{2}+1)}^{2}})+{{n}^{2}}] Cform+Cfact=n⋅[K(1+Nt3)+nK(1+Nt2)+K((Nt+1)2+(Nt2+1)2)+n2]
K ( N t + 5 ) ⋅ n ⋅ [ K ( 1 + N t 3 ) + n K ( 1 + N t 2 ) + K ( ( N t + 1 ) 2 + ( N t 2 + 1 ) 2 ) + n 2 ] \sqrt{K({{N}_{t}}+5)}\centerdot n\centerdot [K(1+N_{t}^{3})+nK(1+N_{t}^{2})+K({{({{N}_{t}}+1)}^{2}}+{{(N_{t}^{2}+1)}^{2}})+{{n}^{2}}] K(Nt+5)⋅n⋅[K(1+Nt3)+nK(1+Nt2)+K((Nt+1)2+(Nt2+1)2)+n2]
Where n = K N t 2 + K + K = O ( K N t 2 ) n\text{=}KN_{t}^{2}+K\text{+}K\text{=}\mathcal{O}(KN_{t}^{2}) n=KNt2+K+K=O(KNt2).