Block Successive Upper Bound Minimization Method(BSUM)算法
BSUM优化方法学习
- 先验知识
- 参考资料1 A Unified Convergence Analysis of Block Successive Minimization Methods for Nonsmooth Optimization
- SUCCESSIVE UPPER-BOUND MINIMIZATION (SUM) 连续上限最小化算法
- THE BLOCK SUCCESSIVE UPPER-BOUND MINIMIZATION ALGORITHM 块连续上限最小化算法
- 应用案例
- 参考资料2 A Block Successive Upper Bound Minimization Method of Multipliers for Linearly Constrained Convex Optimization
- 概述
- 应用例子
- 文献综述
先验知识
参考资料1 A Unified Convergence Analysis of Block Successive Minimization Methods for Nonsmooth Optimization
块坐标下降 (BCD) 方法广泛用于最小化多个块变量的连续函数 f。 在此方法的每次迭代中,都会优化单个变量块,而其余变量保持固定。 为了保证BCD方法的收敛性,每次迭代中待优化的子问题都需要准确地求解到其唯一的最优解。 不幸的是,这些要求对于许多实际场景来说往往限制太多。 在本文中,我们研究了一种替代的不精确 BCD 方法,该方法通过连续最小化 f 的一系列近似值来更新变量块,这些近似值要么是 f 的局部紧上限,要么是 f 的严格凸局部近似值。 我们专注于表征相当广泛的此类方法的收敛特性,特别是对于目标函数不可微或非凸的情况。 我们的结果统一并扩展了许多经典算法的现有收敛结果,例如BCD方法、凸函数差(DC)方法、期望最大化(EM)算法以及交替近端最小化算法。
Block Coordinate Descent, Block Successive Upper-bound Minimization, Successive Convex Ap-
proximation, Successive Inner Approximation
SUCCESSIVE UPPER-BOUND MINIMIZATION (SUM) 连续上限最小化算法
为了深入了解一般的不精确 BCD 方法,让我们首先考虑一种简单的连续上限最小化 (SUM) 方法,其中所有变量都分组到一个块中。 尽管形式简单,SUM 算法却是 DC 编程 [33] 和 EM 算法 [4] 等许多重要算法的关键。 考虑以下优化问题
考虑以下优化问题
min f ( x ) s.t. x ∈ X , \begin{array}{cc}\min&f(x)\\\\\text{s.t.}&x\in\mathcal{X},\end{array} mins.t.f(x)x∈X,
其中 X \mathcal{X} X 是闭凸集。 不失一般性,我们可以假设 dom f = X \text{dom} \mathcal{f} = \mathcal{X} domf=X。当目标函数 f ( ⋅ ) \mathcal{f}(·) f(⋅) 非凸和/或非光滑时,直接求解 (2) 可能并不容易。 SUM 算法通过优化一系列近似目标函数来规避这种困难。 更具体地说,从可行点 x 0 x^0 x0开始,算法根据以下更新规则生成序列 { x r } \{x^r\} {xr}
x r ∈ arg min x ∈ X u ( x , x r − 1 ) x^r\in\arg\min_{x\in\mathcal{X}}\quad u(x,x^{r-1}) xr∈argx∈Xminu(x,xr−1)
其中, x r − 1 x^{r-1} xr−1 是由算法在第 r − 1 r-1 r−1 次迭代生成的点,而 u ( x , x r − 1 ) u(x, x^{r-1}) u(x,xr−1) 是第 r r r 次迭代中对 f ( x ) f(x) f(x) 的近似。通常需要选择近似函数 u ( ⋅ , ⋅ ) u(\cdot, \cdot) u(⋅,⋅),使得子问题(3)易于求解。此外,为了保证 SUM 算法的收敛性,需要满足 u ( ⋅ , ⋅ ) u(\cdot, \cdot) u(⋅,⋅) 的某些规律性条件(稍后将讨论)。在其它要求中, u ( x , x r − 1 ) u(x, x^{r-1}) u(x,xr−1) 需要是 f ( x ) f(x) f(x) 的全局上界,因此得名该算法。SUM 算法的主要步骤如图 1 1 1 所示。
我们指出,所提出的 SUM 算法在许多方面与[21]中开发的内近似算法(IAA)相似,但有以下主要区别:
• IAA 算法近似目标函数和可行集。 相反,SUM算法仅近似目标函数。
• IAA 算法仅适用于具有光滑目标的问题,而SUM 算法也能够处理非光滑目标。
值得一提的是,现有的IAA算法的收敛结果相当弱。 特别是,[21,定理 1] 指出,如果整个序列收敛,那么算法应该收敛到一个驻点。 接下来,我们表明,只要近似函数 u ( ⋅ , ⋅ ) u(\cdot, \cdot) u(⋅,⋅)满足我们在下面概述的某些温和假设1,SUM 算法就可以提供更强的收敛保证。
Assumption 1 Let the approximation function u ( ⋅ , ⋅ ) u(\cdot,\cdot) u(⋅,⋅) satisfy the following
(A1)(A2)(A3)(A4)
u ( y , y ) = f ( y ) , ∀ y ∈ X u ( x , y ) ≥ f ( x ) , ∀ x , y ∈ X u ′ ( x , y ; d ) ∣ x = y = f ′ ( y ; d ) , ∀ d w i t h y + d ∈ X u ( x , y ) is continuous in ( x , y ) \begin{aligned} &u(y,y)=f(y),\quad\forall y\in\mathcal{X} \\ &u(x,y)\geq f(x),\quad\forall x,y\in\mathcal{X} \\ &u^{\prime}(x,y;d)\bigg|_{x=y}=f^{\prime}(y;d),\quad\forall d \mathrm{with} y+d\in\mathcal{X} \\ &u(x,y)\text{ is continuous in }(x,y) \end{aligned} u(y,y)=f(y),∀y∈Xu(x,y)≥f(x),∀x,y∈Xu′(x,y;d) x=y=f′(y;d),∀dwithy+d∈Xu(x,y) is continuous in (x,y)
The assumptions (Al) and (A2) imply that the approximate function u ( ⋅ , x r − 1 ) u(\cdot,x^{r-1}) u(⋅,xr−1) in (3) is a tight upper bound of the original function. The assumption (A3) guarantees that the first order behavior of u ( ⋅ , x r − 1 ) u(\cdot,x^{r-1}) u(⋅,xr−1) is the same as f ( ⋅ ) f(\cdot) f(⋅) locally (note that the directional derivative u ′ ( x , y ; d ) u^{\prime}(x,y;d) u′(x,y;d) is only with respect to the variable x ) . x). x). Although directly checking (A3) may not be easy, the following proposition provides a sufficient condition under which (A3) holds true automatically.
假设(Al)和(A2)意味着在(3)中的近似函数 u ( ⋅ , x r − 1 ) u(\cdot, x^{r-1}) u(⋅,xr−1) 是原始函数的紧上界。假设(A3)保证了 u ( ⋅ , x r − 1 ) u(\cdot, x^{r-1}) u(⋅,xr−1) 的一阶导数为与局部的 f ( ⋅ ) f(\cdot) f(⋅) 相同(注意,方向导数 u ′ ( x , y ; d ) u'(x, y; d) u′(x,y;d) 仅针对变量 x x x)。虽然直接验证(A3)可能并不容易,但以下命题提供了一个充分条件,在此条件下(A3)自动成立。
Proposition 1 Assume f ( x ) = f 0 ( x ) + f 1 ( x ) , w h e r e f(x)=f_0(x)+f_1(x),where f(x)=f0(x)+f1(x),where f 0 ( ⋅ ) f_0(\cdot) f0(⋅) is continuously differentiable and the directional derivative o f f 1 ( ⋅ ) off_{1}( \cdot ) off1(⋅) exists a t at at every point x ∈ X . x\in \mathcal{X} . x∈X. Consider u ( x , y ) = u 0 ( x , y ) + f 1 ( x ) u( x, y) = u_{0}( x, y) + f_{1}( x) u(x,y)=u0(x,y)+f1(x), where u 0 ( x , y ) u_{0}( x, y) u0(x,y) is a a a continuously differentiable function satisfying the following conditions
命题 1 假设 f ( x ) = f 0 ( x ) + f 1 ( x ) f(x) = f_0(x) + f_1(x) f(x)=f0(x)+f1(x),其中 f 0 ( ⋅ ) f_0(\cdot) f0(⋅) 是连续可微的,并且 f 1 ( ⋅ ) f_1(\cdot) f1(⋅) 的方向导数在每一点 x ∈ X x \in \mathcal{X} x∈X 都存在。考虑 u ( x , y ) = u 0 ( x , y ) + f 1 ( x ) u(x, y) = u_{0}(x, y) + f_{1}(x) u(x,y)=u0(x,y)+f1(x),其中 u 0 ( x , y ) u_{0}(x, y) u0(x,y) 是一个连续可微的函数,满足以下条件:
u 0 ( y , y ) = f 0 ( y ) , ∀ y ∈ X u 0 ( x , y ) ≥ f 0 ( x ) , ∀ x , y ∈ X . \begin{aligned}&u_{0}(y,y)=f_{0}(y),\quad\forall y\in\mathcal{X}\\&u_{0}(x,y)\geq f_{0}(x),\quad\forall x,y\in\mathcal{X}.\end{aligned} u0(y,y)=f0(y),∀y∈Xu0(x,y)≥f0(x),∀x,y∈X.
Then, (A1), (A2) and (A3) hold for u ( ⋅ , ⋅ ) u(\cdot, \cdot) u(⋅,⋅).
Theorem 1 : Assume that Assumption 1 is satisfied. Then every limit point of the iterates generated by
the SUM algorithm is a stationary point of the problem (2).
定理 1 假设满足假设 1。那么,由 SUM 算法生成的迭代序列的每一个极限点都是问题(2)的稳定点。
(10)
P r o o f : Proof{:} Proof: Firstly, we observe the following series of inequalities
f ( x r + 1 ) ≤ ( i ) u ( x r + 1 , x r ) ≤ ( i i ) u ( x r , x r ) = f ( x r ) , ∀ r = 0 , 1 , 2 , … f(x^{r+1})\stackrel{(\mathrm{i})}{\leq}u(x^{r+1},x^r)\stackrel{(\mathrm{ii})}{\leq}u(x^r,x^r)=f(x^r),\quad\forall\:r=0,1,2,\ldots f(xr+1)≤(i)u(xr+1,xr)≤(ii)u(xr,xr)=f(xr),∀r=0,1,2,…
where step (i) is due to (Al), step (ii) follows from the optimality of x t + 1 x^{t+1} xt+1 (cf. step 4 and 5 in Figll), and the last equality is due to (A2). A straightforward consequence of (10) is that the sequence of the objective function values are non-increasing, that is
f ( x 0 ) ≥ f ( x 1 ) ≥ f ( x 2 ) ≥ … f(x^0)\geq f(x^1)\geq f(x^2)\geq\ldots f(x0)≥f(x1)≥f(x2)≥…
Assume that there exists a subsequence { x r j } \{x^{r_j}\} {xrj} converging to a limit point z . z. z. Then Assumptions (A1),
(A2) together with (11) imply that
u ( x r j + 1 , x r j + 1 ) = f ( x r j + 1 ) ≤ f ( x r j + 1 ) ≤ u ( x r j + 1 , x r j ) ≤ u ( x , x r j ) , ∀ x ∈ X u(x^{r_{j+1}},x^{r_{j+1}})=f(x^{r_{j+1}})\leq f(x^{r_{j}+1})\leq u(x^{r_{j}+1},x^{r_{j}})\leq u(x,x^{r_{j}}),\quad\forall\:x\in\mathcal{X} u(xrj+1,xrj+1)=f(xrj+1)≤f(xrj+1)≤u(xrj+1,xrj)≤u(x,xrj),∀x∈X
Letting j → ∞ j\to\infty j→∞, we obtain
u ( z , z ) ≤ u ( x , z ) , ∀ x ∈ X , u(z,z)\leq u(x,z),\quad\forall\:x\in\mathcal{X}, u(z,z)≤u(x,z),∀x∈X,
(11)
which implies
u ′ ( x , z ; d ) ∣ x = z ≥ 0 , ∀ d ∈ R m with z + d ∈ X . \left.u'(x,z;d)\right|_{x=z}\geq0,\quad\forall\:d\in\mathbb{R}^m\:\text{with}\:z+d\in\mathcal{X}. u′(x,z;d)∣x=z≥0,∀d∈Rmwithz+d∈X.
Combining with (A3), we obtain
f ′ ( z ; d ) ≥ 0 , ∀ d ∈ R m with z + d ∈ X , f'(z;d)\geq0,\quad\forall\:d\in\mathbb{R}^m\:\text{with}\:z+d\in\mathcal{X}, f′(z;d)≥0,∀d∈Rmwithz+d∈X,
implying that z z z is a stationary point of f ( ⋅ ) . f(\cdot). f(⋅).
Corollary 1 Assume that the level set X 0 = { x ∣ f ( x ) ≤ f ( x 0 ) } \textbf{Corollary 1 Assume that the level set }\mathcal{X} ^0= \{ x\mid f( x) \leq f( x^0) \} Corollary 1 Assume that the level set X0={x∣f(x)≤f(x0)} is compact and Assumption Z \mathbb{Z} Z holds.
Then, the sequence of iterates { x r } \{x^r\} {xr} generated by the SUM algorithm satisfy
lim r → ∞ d ( x r , X ∗ ) = 0 , \lim\limits_{r\to\infty}\quad d(x^r,\mathcal{X}^*)=0, r→∞limd(xr,X∗)=0,
where X ∗ X^* X∗ is the set of stationary points of (2).
THE BLOCK SUCCESSIVE UPPER-BOUND MINIMIZATION ALGORITHM 块连续上限最小化算法
在许多实际应用中,优化变量(复数)可以分解为独立的块(复数)。 当明智地利用这种块结构时,可以产生可分布式实现的低复杂度算法。 在本节中,我们介绍块连续上界最小化(BSUM)算法,该算法有效地考虑了这种块结构。
让我们假设可行集 X \mathcal{X} X 是 n n n 个闭凸集的笛卡尔积: X = X 1 × … × X n \mathcal{X}=\mathcal{X}_1\times\ldots\times\mathcal{X}_n X=X1×…×Xn,其中 X i ⊆ R m i \mathcal{X}_i \subseteq \mathbb{R}^{m_i} Xi⊆Rmi,且 ∑ i m i = m \sum_i m_i = m ∑imi=m。相应地,优化变量 x ∈ R m x \in \mathbb{R}^m x∈Rm 可以被分解为: x = ( x 1 , x 2 , … , x n ) x=(x_{1},x_{2},\ldots,x_{n}) x=(x1,x2,…,xn),其中 x i ∈ X i x_i \in \mathcal{X}_{i} xi∈Xi, i = 1 , ⋯ , n i=1, \cdots, n i=1,⋯,n。我们感兴趣的问题是
min f ( x ) s . t . x ∈ X . \begin{array}{ll}\min&f(x)\\\\\mathrm{s.t.}&x\in\mathcal{X}.\end{array} mins.t.f(x)x∈X.
与 SUM 算法不同,BSUM 算法在每次迭代中仅更新单个变量块。 更准确地说,在第 r r r次迭代时,通过解决以下子问题来计算所选块(例如块 i i i)
min x i u i ( x i , x r − 1 ) s . t . x i ∈ X i , \begin{aligned}&\min_{x_{i}}\quad u_{i}(x_{i},x^{r-1})\\&\mathrm{s.t.}\quad x_{i}\in\mathcal{X}_{i},\end{aligned} ximinui(xi,xr−1)s.t.xi∈Xi,
其中 u i ( ⋅ , x r − 1 ) u_i(\cdot, x^{r-1}) ui(⋅,xr−1) 再次是对原始目标函数 f ( ⋅ ) f(\cdot) f(⋅) 在点 x r − 1 x^{r-1} xr−1 的近似(实际上是全局上界)。图 2 总结了 BSUM 算法的主要步骤。注意,尽管块是按照简单的循环规则更新的,但算法及其收敛结果可以轻松扩展到(更通用的)本质上的循环更新规则。这一点将在第七节进一步阐述。
where u i ( ⋅ , x r − 1 ) u_i(\cdot,x^{r-1}) ui(⋅,xr−1) is again an approximation (in fact, a global upper-bound) of the original objective f ( ⋅ ) f(\cdot) f(⋅) at the point x r − 1 x^{r-1} xr−1.Fig. 2 \color{red}{\boxed{2}} 2 summarizes the main steps of the BSUM algorithm. Note that although the blocks are updated following a simple cyclic rule, the algorithm and its convergence results can be easily extended to the (more general) essentially cyclic update rule as well. This point will be further elaborated in Section VII
现在我们准备研究 BSUM 算法的收敛行为。 为此,函数 u i ( ⋅ , ⋅ ) u_{i}( \cdot, \cdot) ui(⋅,⋅) 需要满足以下正则条件。
Assumption 2
(B1)(B2)(B3)(B4)
u i ( y i , y ) = f ( y ) , ∀ y ∈ X , ∀ i u i ( x i , y ) ≥ f ( y 1 , … , y i − 1 , x i , y i + 1 , … , y n ) , ∀ x i ∈ X i , ∀ y ∈ X , ∀ i u i ′ ( x i , y ; d i ) ∣ x i = y i = f ′ ( y ; d ) , ∀ d = ( 0 , … , d i , … , 0 ) s . t . y i + d i ∈ X i , ∀ i u i ( x i , y ) is continuous in ( x i , y ) , ∀ i \begin{aligned}&u_{i}(y_{i},y)=f(y),\quad\forall y\in\mathcal{X},\forall i\\&u_{i}(x_{i},y)\geq f(y_{1},\ldots,y_{i-1},x_{i},y_{i+1},\ldots,y_{n}),\quad\forall x_{i}\in\mathcal{X}_{i},\forall y\in\mathcal{X},\forall i\\&u_{i}'(x_{i},y;d_{i})\bigg|_{x_{i}=y_{i}}=f'(y;d),\quad\forall d=(0,\ldots,d_{i},\ldots,0) \mathrm{s.t.} y_{i}+d_{i}\in\mathcal{X}_{i},\forall i\\&u_{i}(x_{i},y) \text{is continuous in }(x_{i},y),\quad\forall i\end{aligned} ui(yi,y)=f(y),∀y∈X,∀iui(xi,y)≥f(y1,…,yi−1,xi,yi+1,…,yn),∀xi∈Xi,∀y∈X,∀iui′(xi,y;di) xi=yi=f′(y;d),∀d=(0,…,di,…,0)s.t.yi+di∈Xi,∀iui(xi,y)is continuous in (xi,y),∀i
与命题1类似,我们可以确定一个充分条件来保证(B3)。
Proposition 2 Assume f ( x ) = f 0 ( x ) + f 1 ( x ) , w h e r e f(x)=f_0(x)+f_1(x),where f(x)=f0(x)+f1(x),where f 0 ( ⋅ ) f_0(\cdot) f0(⋅) is continuously differentiable and the directional derivative of f 1 ( ⋅ ) f_1(\cdot) f1(⋅) exists at every point x ∈ X . Consider u i ( x i , y ) = u 0 , i ( x i , y ) + f 1 ( x ) , w h e r e x\in \mathcal{X} . \textit{Consider }u_i( x_i, y) = u_{0, i}( x_i, y) + f_1( x) , where x∈X.Consider ui(xi,y)=u0,i(xi,y)+f1(x),where u 0 , i ( x i , y ) satisfres the following assumptions u_{0, i}( x_i, y) \textit{ satisfres the following assumptions} u0,i(xi,y) satisfres the following assumptions
命题 2 假设 f ( x ) = f 0 ( x ) + f 1 ( x ) f(x)=f_0(x)+f_1(x) f(x)=f0(x)+f1(x),其中 f 0 ( ⋅ ) f_0(\cdot) f0(⋅) 是连续可微的,并且 f 1 ( ⋅ ) f_1(\cdot) f1(⋅) 的方向导数在每一点 x ∈ X x \in \mathcal{X} x∈X 都存在。考虑 u i ( x i , y ) = u 0 , i ( x i , y ) + f 1 ( x ) u_i(x_i, y) = u_{0, i}(x_i, y) + f_1(x) ui(xi,y)=u0,i(xi,y)+f1(x),其中 u 0 , i ( x i , y ) u_{0, i}(x_i, y) u0,i(xi,y) 满足以下假设:
u 0 , i ( x i , x ) = f 0 ( x ) , ∀ x ∈ X , ∀ i u 0 , i ( x i , y ) ≥ f 0 ( y 1 , … , y i − 1 , x i , y i + 1 , … , y n ) , ∀ x , y ∈ X ∀ i . \begin{aligned}&u_{0,i}(x_{i},x)=f_0(x),\quad\forall x\in\mathcal{X},\quad\forall i\\&u_{0,i}(x_{i},y)\geq f_0(y_1,\ldots,y_{i-1},x_i,y_{i+1},\ldots,y_n), \forall x,y\in\mathcal{X}\quad\forall i.\end{aligned} u0,i(xi,x)=f0(x),∀x∈X,∀iu0,i(xi,y)≥f0(y1,…,yi−1,xi,yi+1,…,yn),∀x,y∈X∀i.
Then, (B1), (B2), and (B3) hold.
证明:证明与命题1的证明完全相同。
BSUM算法的收敛结果由两部分组成。 第一部分假设目标函数拟凸,保证了极限点的存在。 这与 [2] 中 BCD 方法的经典收敛证明的精神相同。 然而,如果我们知道迭代位于一个紧凑的集合中,那么就可以证明更强的结果。 事实上,在定理的第二部分中,收敛是通过放宽拟凸性假设同时施加水平集的紧性假设来获得的。
Theorem 2
(a) 假设函数 u i ( x i , y ) u_i(x_i, y) ui(xi,y) 在 x i x_i xi 上是准凸的,并且假设 2 \boxed{2} 2 成立。此外,假设子问题 (13) 对于任意点 x r − 1 ∈ X x^{r-1} \in \mathcal{X} xr−1∈X 有唯一解。那么,由 BSUM 算法生成的迭代序列的每个极限点 z z z 都是 (12) 的坐标最小值。此外,如果 f ( ⋅ ) f(\cdot) f(⋅) 在 z z z 处是正则的,那么 z z z 是 (12) 的稳定点。
(b) 假设水平集 X 0 = { x ∣ f ( x ) ≤ f ( x 0 ) } \mathcal{X}^0 = \{x \mid f(x) \leq f(x^0)\} X0={x∣f(x)≤f(x0)} 是紧致的,并且假设 2 \boxed{2} 2 成立。此外,假设对于任意点 x r − 1 ∈ X x^{r-1} \in \mathcal{X} xr−1∈X,至少 n − 1 n-1 n−1 个块的子问题 (13) 有唯一解。如果 f ( ⋅ ) f(\cdot) f(⋅) 在稳定点集 X ∗ X^* X∗ 中的每个点相对于坐标 x 1 , … , x n x_{1}, \ldots, x_{n} x1,…,xn 都是正则的。那么,由 BSUM 算法生成的迭代序列收敛到稳定点集,即
lim r → ∞ d ( x r , X ∗ ) = 0. \lim\limits_{r\to\infty}\quad d(x^r,\mathcal{X}^*)=0. r→∞limd(xr,X∗)=0.
应用案例
论文
Movable Frequency Diverse Array-Assisted Covert Communication With Multiple Wardens
Next, we define the non-convex function in (21a) as
y k , m , n ( x ) = cos [ 2 π ( ( f m x − f n x n ) sin θ w k − sin θ b c + ( f m − f n ) r b − r w k c ) ] . ( 22 ) \left.y_{k,m,n}\left(x\right)=\cos\left[2\pi\left(\begin{array}{c}\left(f_mx-f_nx_n\right)\frac{\sin\theta_{w_k}-\sin\theta_b}{c}\\+\left(f_m-f_n\right)\frac{r_b-r_{w_k}}{c}\end{array}\right.\right)\right].\\(22) yk,m,n(x)=cos[2π((fmx−fnxn)csinθwk−sinθb+(fm−fn)crb−rwk)].(22)
Following the BSUM method, the objective function (22)
is approximated by the upper-bound quadratic function
u k , m , n ( x ) u_{k,m,n} (x) uk,m,n(x), which is defined by
u k , m , n ( x ) = A k , m , n ( x − B k , m , n ) 2 + C k , m , n , u_{k,m,n}\left(x\right)=A_{k,m,n}(x-B_{k,m,n})^{2}+C_{k,m,n}, uk,m,n(x)=Ak,m,n(x−Bk,m,n)2+Ck,m,n,
where A k , m , n ∈ R , A k , m , n > 0 , B k , m , n ∈ R A_{k,m,n}\in\mathbb{R}, A_{k,m,n}>0, B_{k,m,n}\in\mathbb{R} Ak,m,n∈R,Ak,m,n>0,Bk,m,n∈R and C k , m , n ∈ R C_{k,m,n}\in \mathbb{R} Ck,m,n∈R are the parameters of the new quadratic function. For a given point x m s − 1 x_m^{s-1} xms−1 in (22), the approximate function (23) should satisfy the following constraints:
{ u k , m , n ( x m s − 1 ; x n s − 1 ) = y k , m , n ( x m s − 1 ; x n s − 1 ) u k , m , n ′ ( x m s − 1 ; x n s − 1 ) = y k , m , n ′ ( x m s − 1 ; x n s − 1 ) u k , m , n ( B k , m , n ; x n s − 1 ) ∈ { 1 , − 1 } − 1 ≤ y k , m , n ( B k , m , n ; x n s − 1 ) ≤ 1 , \left.\left\{\begin{array}{l}u_{k,m,n}\left(x_m^{s-1};x_n^{s-1}\right)=y_{k,m,n}\left(x_m^{s-1};x_n^{s-1}\right)\\u_{k,m,n}^{'}\left(x_m^{s-1};x_n^{s-1}\right)=y_{k,m,n}^{'}\left(x_m^{s-1};x_n^{s-1}\right)\\u_{k,m,n}\left(B_{k,m,n};x_n^{s-1}\right)\in\{1,-1\}\\-1\leq y_{k,m,n}\left(B_{k,m,n};x_n^{s-1}\right)\leq1,\end{array}\right.\right. ⎩ ⎨ ⎧uk,m,n(xms−1;xns−1)=yk,m,n(xms−1;xns−1)uk,m,n′(xms−1;xns−1)=yk,m,n′(xms−1;xns−1)uk,m,n(Bk,m,n;xns−1)∈{1,−1}−1≤yk,m,n(Bk,m,n;xns−1)≤1,
参考资料2 A Block Successive Upper Bound Minimization Method of Multipliers for Linearly Constrained Convex Optimization
概述
Consider the problem of minimizing a convex function f ( x ) f(x) f(x) subject to linear equality constraints:
minimize f ( x ) : = g ( x 1 , ⋯ , x K ) + ∑ h k ( x k ) \begin{aligned}\text{minimize}\: f(x):=g\left(x_1,\cdots,x_K\right)+\sum h_k(x_k)\end{aligned} minimizef(x):=g(x1,⋯,xK)+∑hk(xk)
(1.1)
subject to E 1 x 1 + E 2 x 2 + ⋯ + E K x K = q , \begin{aligned}\text{subject to}\: E_1x_1+E_2x_2+\cdots+E_Kx_K=q,\end{aligned} subject toE1x1+E2x2+⋯+EKxK=q,
x k ∈ X k x_k\in X_k xk∈Xk, k = 1 , 2 , . . . , K k= 1, 2, . . . , K k=1,2,...,K
where g ( ⋅ ) g(\cdot) g(⋅) is a smooth convex function; h k h_k hk is a nonsmooth convex function; x = ( x 1 T , . . . , x K T ) T ∈ ℜ n x=(x_1^T,...,x_K^T)^T\in\Re^n x=(x1T,...,xKT)T∈ℜn is a partition of the optimization variable x , x k ∈ ℜ n k ; X = ∏ k = 1 K X k x,x_k\in\Re^{n_k};X=\prod_{k=1}^KX_k x,xk∈ℜnk;X=∏k=1KXk is the feasible set for x ; q ∈ ℜ m x;q\in\Re^m x;q∈ℜm is a vector. Let E : = ( E 1 , ⋯ , E K ) E:=(E_1,\cdots,E_K) E:=(E1,⋯,EK) and h ( x ) : = ∑ k = 1 K h k ( x k ) . h(x):=\sum_k=1^Kh_k(x_k). h(x):=∑k=1Khk(xk). Many contemporary problems in signal processing, machine learning and smart grid systems can be formulated in the form (1.1) To motivate our work, we discuss several examples of the form (1.1) below.
应用例子
basis pursuit (BP) problem
the control of a smart grid system
cognitive radio network
(CRN)
文献综述
当线性耦合约束不存在时,求解(1.1)的一个众所周知的技术是使用所谓的块坐标下降(BCD)方法,在每次迭代中,单个变量块被优化,而其余块保持固定。更具体地,在迭代r,通过以下方式以高斯-赛德尔方式更新块:
由于每一步都涉及解决一个小规模的简单子问题,BCD方法对于解决大规模问题非常有效;参见例如,[11 -14]和其中的参考文献。BCD方法的现有分析[15-18]要求每个子问题(1.7)的极小值的唯一性,或f的拟凸性[19]。当问题(1.7)不容易求解时,一种流行的方法是求解问题(1.7)的近似版本,产生块坐标梯度下降(BCGD)算法(或存在非光滑函数h时的块坐标近似梯度算法)[13,20-22]。BCD型算法的全局收敛速度已被广泛研究。当目标函数是强凸时,BCD算法全局线性收敛[23]。当目标函数光滑且不是强凸时,Luo和Tseng证明了BCD方法及其许多变体仍然可以线性收敛,只要在解集周围满足一定的局部误差界条件[23-26]。这条分析线最近被扩展到允许目标中的某类非光滑函数[21,27 -29]。最近有一些工作描述了BCD型算法的全局次线性收敛速度[14,22,30,31]。特别地,参考文献[30]证明了对于一类非光滑凸问题,带有Gauss-Seidel更新规则的BCD算法在O(1 r)阶下是次线性收敛的.此外,在[1]中提出了一个统一的算法框架,称为BSUM(块连续上限最小化)及其收敛性分析,其中在每一步中,目标函数的局部紧上限被连续最小化以更新可变块。
当存在线性耦合约束时,众所周知,BCD型算法可能无法找到任何(局部)最优解[32]。解决这类问题的常用算法是所谓的交替方向乘子法(ADMM)[33-36]。在ADMM方法中,不是始终保持可行性,而是使用拉格朗日乘数y将约束Ex = q对偶化,并添加二次惩罚项。所得到的增广拉格朗日函数具有以下形式:
其中 ρ > 0 是常数,<·,·> 表示内积运算符。 ADMM 方法通过使用 BCD 类型过程更新原始块变量 x1,… , xn 来最小化 L(x; y)。后者通常会导致具有封闭形式解决方案的简单子问题。 这些原始更新之后是对偶变量 y 的梯度上升更新。
尽管 ADMM 算法早在 1976 年就由 Gabay、Mercier、Glowinski 和 Marrocco 提出[35,37],但由于其在机器学习和计算机视觉产生的现代大规模优化问题中的应用,它直到最近才变得流行起来[33] ,38-42]。 在实践中,该算法通常在计算上非常高效,并且比传统算法(例如双上升算法[43-45]或乘法器方法[46])收敛速度更快。 ADMM的收敛性是在目标可分离且只有两个块变量的条件下成立的,即g(x1,····,xK)=g1(x1)+····+gK(xK), K = 2 [35,37]。 对于诸如压缩感知引起的大规模问题,原始每块子问题的最优解可能不容易计算[47]。 在这些情况下,经典的 ADMM 可以修改为对每个子问题执行简单的近端梯度步骤 [34,40,47-50]。 当只有两个块变量时,最近的一些工作 [51, 52] 表明 ADMM 方法以 O(1/ r ) 的速率收敛(对于加速版本 [53] 则为 O( 1 / r2 ))。 此外,参考文献[53-55]表明,当目标函数是强凸且只有两个变量块时,ADMM 会线性收敛。 最近的一项研究 [56] 表明,在 K ≥ 3 的情况下,ADMM 的全局(线性)收敛,假设: a) 对于每个 k,Ek 是满列秩; b) 双步长足够小; c) 最优解集周围存在一定的误差界限; d) 目标是可分离的。 如果不满足这些条件并且当K≥3时,[57]表明ADMM通常确实可以发散。 最近的一些其他工作尝试针对 K ≥ 3 的情况修改原始 ADMM [58-60]。
不幸的是,BCD 和 ADMM 都不能用来解决问题(1.1)。 事实上,由于其多块结构以及目标和约束的变量耦合,该问题无法通过许多其他大数据方法来处理,包括SpaRSA [61],FPCBB [62],FISTA [63] ]、ALM [64]、HOGWILD [65]、FPA [66]。 本文的主要贡献是提出并分析了一种新颖的乘子分块连续上限最小化方法(BSUM-M)及其随机版本,可以有效地解决问题(1.1)。 BSUM-M算法集成了BSUM和ADMM算法,每次优化原始问题一个块变量的近似增广拉格朗日,然后使用梯度上升步骤更新对偶变量。 由此产生的算法是灵活的,因为我们可以选择合适的增强拉格朗日函数的近似值,从而可以方便地更新原始变量块(例如以封闭形式)。 在没有线性耦合约束的情况下,随机BSUM-M算法简化为随机BCD算法。 在本例中,我们表明,对于一系列没有强凸目标的问题,随机 BCD 算法实际上是线性收敛的(符合预期)。 据我们所知,这是第一个显示随机 BCD 算法在没有强凸性的情况下线性收敛速度的结果
相关文章:

Block Successive Upper Bound Minimization Method(BSUM)算法
BSUM优化方法学习 先验知识参考资料1 A Unified Convergence Analysis of Block Successive Minimization Methods for Nonsmooth OptimizationSUCCESSIVE UPPER-BOUND MINIMIZATION (SUM) 连续上限最小化算法THE BLOCK SUCCESSIVE UPPER-BOUND MINIMIZATION ALGORITHM 块连续上…...

力扣2388. 将表中的空值更改为前一个值
一、数据 2388. 将表中的空值更改为前一个值 表: CoffeeShop ---------------------- | Column Name | Type | ---------------------- | id | int | | drink | varchar | ---------------------- id 是该表的主键(具有唯一值的列…...

【从零开始的LeetCode-算法】3233. 统计不是特殊数字的数字数量
给你两个 正整数 l 和 r。对于任何数字 x,x 的所有正因数(除了 x 本身)被称为 x 的 真因数。 如果一个数字恰好仅有两个 真因数,则称该数字为 特殊数字。例如: 数字 4 是 特殊数字,因为它的真因数为 1 和…...

Redis配置主从架构、集群架构模式 redis主从架构配置 redis主从配置 redis主从架构 redis集群配置
Redis配置主从架构、集群架构模式 redis主从架构配置 redis主从配置 redis主从架构 redis集群配置 1、主从模式1.1、主节点配置1.2、从节点配置1.3、测试 2、集群模式 1、主从模式 1.1、主节点配置 # 监听所有网络接口 bind 0.0.0.0# cluster-enabled表示为集群模式ÿ…...

2024 APMCM亚太数学建模C题 - 宠物行业及相关产业的发展分析和策略 完整参考论文(2)
5.2 问题一模型的建立与求解 5.2.1 分析发展情况 为了更好地理解数据的变化趋势,利用matlab通过六个子图对宠物行业中的关键变量进行了可视化展示。 图 1. 宠物数量变化展示了 猫数量、狗数量 和 总宠物数量 在 2019-2023 年间的变化趋势。结果显示:猫的数量呈逐年上升的趋…...

HTML实现 扫雷游戏
前言: 游戏起源与发展 扫雷游戏的雏形可追溯到 1973 年的 “方块(cube)” 游戏,后经改编出现了 “rlogic” 游戏,玩家需为指挥中心探出安全路线避开地雷。在此基础上,开发者汤姆・安德森编写出了扫雷游戏的…...

day03(单片机高级)RTOS
目录 RTOS(实时操作系统) 裸机开发模式 轮询方式 前后台(中断方式) 改进(前后台(中断))定时器 裸机进一步优化 裸机的其他问题 RTOS的概念 什么是RTOS 为什么要使用 RTOS RTOS的应用场景 RTOS的…...

【mongodb】社区版8:改变配置bindip和授权
更改配置 sudo systemctl restart mongod (base) root@k8s-master-pfsrv:/home/zhangbin# sudo tail -n 20 /var/log/mongodb/mongod.log 日志感觉是成功了:{"t":{"$date":"2024-11-19T19:57:47.076+08:00"...

泥石流灾害风险评估与模拟丨AI与R语言、ArcGIS、HECRAS融合,提升泥石流灾害风险预测的精度和准确性
目录 第一章 理论基础 第二章 泥石流风险评估工具 第三章 数据准备与因子提取 第四章 泥石流灾害评价 第五章 HECRAS软件的应用 第六章 操作注意事项与模型优化 泥石流灾害的频发与严重后果,已成为全球范围内防灾减灾工作的重大挑战。随着科技的不断进步&…...

一线大厂面试集锦
String 为什么要设计成不可变的 String被设计成不可变的有以下几个原因: 线程安全:由于String是不可变的,多个线程可以同时访问同一个String对象而无需担心数据被修改。这使得String在多线程环境下是线程安全1. 的。 2.缓存Hash值:由于String是不可变的,它的hashcode可以…...

界面控件DevExpress Blazor UI v24.1新版亮点:发布全新文件输入等组件
DevExpress Blazor UI组件使用了C#为Blazor Server和Blazor WebAssembly创建高影响力的用户体验,这个UI自建库提供了一套全面的原生Blazor UI组件(包括Pivot Grid、调度程序、图表、数据编辑器和报表等)。 DevExpress Blazor控件目前已经升级…...

ssm面向品牌会员的在线商城小程序
摘要 随着Internet的发展,人们的日常生活已经离不开网络。未来人们的生活与工作将变得越来越数字化,网络化和电子化。它将是直接管理面向品牌会员的在线商城小程序的最新形式。本小程序是以面向品牌会员的在线商城管理为目标,使用 java技术制…...

Vue 3 自定义插件开发
Vue3 自定义插件开发 插件简介 Vue3 插件是一种能为 Vue 应用添加全局功能的工具。插件可以包含: 全局组件注册全局指令添加全局方法注入全局 mixin 混入向 Vue 应用实例注入属性 插件的基本结构 Vue3 插件应该暴露一个 install 方法,该方法将在插件…...

使用最小花费爬楼梯(DP)
给你一个整数数组 cost ,其中 cost[i] 是从楼梯第 i 个台阶向上爬需要支付的费用。一旦你支付此费用,即可选择向上爬一个或者两个台阶。 你可以选择从下标为 0 或下标为 1 的台阶开始爬楼梯。 请你计算并返回达到楼梯顶部的最低花费。 示例 1ÿ…...

【Ubuntu】如何在Ubuntu系统中查看端口是否可用
文章目录 前言一、使用netstat命令二、使用ss命令三、使用lsof命令四、使用nc(netcat)命令总结 前言 本文介绍了如何在Ubuntu系统中查看端口是否可用的方法,并给出了具体的命令示例,帮助用户通过命令行工具检测端口的开放状态。 …...

Hive基础面试-如何理解复用率的
1. 模型的复用率你们是怎么做的? 简单直白的说就是你的模型复用率如何,在业务方是否认可该模型,也是衡量模型建设的一个标准,复用率数:数仓模型涉及的核心是追求模型的复用和共享,引用系数越高,…...

Go 常量为什么只支持基本数据类型?
文章精选推荐 1 JetBrains Ai assistant 编程工具让你的工作效率翻倍 2 Extra Icons:JetBrains IDE的图标增强神器 3 IDEA插件推荐-SequenceDiagram,自动生成时序图 4 BashSupport Pro 这个ides插件主要是用来干嘛的 ? 5 IDEA必装的插件&…...

DatePicker 日期选择器的使用(当日、近一周、近一月...)
template部分 <el-form-item label"操作日期:" style"margin-left: 50px;"><el-date-pickerv-model"dateRange"type"datetimerange"range-separator"~"start-placeholder"开始日期"end-placeholder&quo…...

【H2O2|全栈】JS进阶知识(六)ES6(2)
目录 前言 开篇语 准备工作 Set和Map 基本概念 Set 相互转化 常见属性和API 数组去重 并集、交集和差集 Map 转化 常见的属性和API Set和Map的区别 This的指向 function函数 箭头函数 修改this 使用方式 三种方式的异同 案例 更改this指向为obj 求数组数…...

聊聊主流几个JDK版本:JDK 8、JDK 11、JDK 17 和 JDK 21 的区别
聊聊主流几个JDK版本:JDK 8、JDK 11、JDK 17 和 JDK 21 的区别 一、JDK8二、JDK11三、JDK17四、JDK21 一、JDK8 JDK 8 发布于 2014 年,是 Java 语言的一个重要里程碑,带来了许多革命性的特性,改变了 Java 开发的方式。 主要更新的…...

MFC工控项目实例三十二模拟量校正值添加修改删除
用两个列表控件实现三十二模拟量校正值添加、修改、删除。 相关代码 void SenSet::OnSelchangeList1() //修改 {m_bAdd_2.EnableWindow(true);m_bParameter_2.EnableWindow(true);m_bDel_2.EnableWindow(false);nSel m_IDC_LIST1.GetCurSel();m_IDC_LIST1.GetText(nSel,nSel_…...

力扣第 60 题 “第 k 个排列”
题目描述 给定整数 n 和 k,返回由 1 到 n 组成的排列中第 k 个排列。 所有排列按字典序排列。1 ≤ n ≤ 9,1 ≤ k ≤ n!。 解题思路 要快速找到第 k 个排列,可以利用数学方法而不是生成所有排列: 1. 知识点:阶乘与…...

国际环境和背景下的云计算领域
前言 在当前国际环境和背景下,云计算领域呈现出复杂多变的局面,其发展深受技术创新、地缘政治、全球经济以及监管政策的影响。以下从技术趋势、市场竞争、地缘政治和监管环境四个方面详细解析云计算领域的现状。 一、技术趋势:多云与边缘计算…...

logstash 解析数组格式json数据:split, json
1,需求说明 原始数据格式: 1条 (2*2)》4个指标数据 [{"app":"aa","url":"www.1.com","metrics":[{"name":"cpu","value":11},{"name&quo…...

Linux的开发工具(二)
1.vim的基本操作 正常模式到插入模式 输入a 输入i 输入o 示例 输入iao下面的就会变成INSERT模式 插入模式到正常模式 按Esc键 正常模式到低行模式 shift; :w保存当前文件 :wq保存并退出 :q!强制退出 2.vi…...

Bokeh实现大规模数据可视化的最佳实践
目录 引言 一、Bokeh简介 二、安装Bokeh 三、数据准备 四、性能优化 五、创建图表 六、添加交互功能 七、应用案例 八、高级技巧 九、总结 引言 在数据科学领域,数据可视化是一个至关重要的环节。通过可视化,我们可以直观地理解数据的特征和趋势,为数据分析和决策…...

Oracle表碎片整理与优化
Oracle数据库中的表碎片整理与优化是一个重要的维护任务,可以显著提高数据库的性能。表碎片通常是由于频繁的插入、删除和更新操作导致的。以下是一些常见的方法和步骤,帮助你进行表碎片整理与优化。 1. 识别碎片表 首先,需要识别哪些表存在…...

【华为云函数工作流】python的函数中如何获取请求链接中带的参数
背景 通过调用函数的url,将参数传递给函数执行,函数里如何获取这个参数 过程 下一个简单的demo如下 参考这个链接https://support.huaweicloud.com/devg-functiongraph/functiongraph_02_0420.html写一个demo,这个是百度视频云获取token的…...

最新Kali安装详细版教程(附安装包,傻瓜式安装教程)
本文主要详细介绍 kali 的安装过程,以及安装完成后的基本设置,比如安装增强工具,安装中文输入法以及更新升级等操作。 文章目录 实验环境准备工作步骤说明安装虚拟机安装 Kali安装增强工具安装中文输入法更新升级 实验环境 VMware &#x…...

【unity小技巧】unity最完美的CharacterController 3d角色控制器,实现移动、跳跃、下蹲、奔跑、上下坡、物理碰撞效果,复制粘贴即用
最终效果 文章目录 最终效果前言为什么使用CharacterControllerSimpleMove和Move如何选择?1. SimpleMove2. Move 配置CharacterController参数控制相机移动跳跃方式一方式二 下蹲处理下坡抖动问题实现奔跑和不同移速控制完整代码补充,简单版本 实现物理碰…...