精确分布式一阶优化方法(Exact Distributed First-Order Method)

写在前面

本文简单的对已有的分布式一阶优化方法做个综述。虽然原论文以及大部分引文提出的是离散时间系统分布式优化方法,但由于我本人研究的课题主要针对连续时间系统,所以本文所述的分布式优化方法主要以连续时间形式呈现。

基于上述原因,本文中不再细述原论文关于离散时间系统的证明,主要是分享现有的分布式一阶优化方法,以及设计连续时间方法中我的一些想法和思考。

问题描述

考虑分布式优化问题
min ⁡ f ( x ) = ∑ i = 1 n f i ( x i ) s.t. ⁡ x 1 = x 2 = ⋯ = x n , \begin{aligned}\min&\quad f(x)=\sum_{i=1}^n f_i(x_i)\\\operatorname{s.t.} &\quad x_1=x_2=\cdots=x_n,\end{aligned} mins.t.f(x)=i=1nfi(xi)x1=x2==xn

和单积分器系统
x ˙ i = u i , \dot x_i = u_i, x˙i=ui,
设计控制器使得 x x x实现一致性的同时收敛到 f ( x ) f(x) f(x)的最小值。

分布式梯度下降(DGD)

提到分布式一阶优化方法,最早的就是分布式梯度下降(distributed gradient desent, DGD)。该方法连续时间形式给出如下:
x ˙ = − L x − α ∇ f ( x ) , \dot x=-Lx-\alpha\nabla f(x), x˙=Lxαf(x),
其中 α \alpha α为优化步长, ∇ f ( x ) = [ ∇ f 1 T ( x 1 ) , ⋯   , ∇ f n T ( x n ) ] T \nabla f(x)=[\nabla f_1^T(x_1),\cdots,\nabla f_n^T(x_n)]^T f(x)=[f1T(x1),,fnT(xn)]T。该方法满足 1 n 1 n T x ˙ = − 1 n α 1 n T ∇ f ( x ) \frac{1}{n}1_n^T\dot x=-\frac{1}{n}\alpha 1_n^T\nabla f(x) n11nTx˙=n1α1nTf(x),即 x x x的均值一直在沿着 f ( x ) f(x) f(x)梯度下降的方向运动。

容易看出,当 α \alpha α固定步长(fixed step)时,该方法的收敛是不精确的。令 V = α f ( x ) + x T L x V=\alpha f(x)+x^TLx V=αf(x)+xTLx,可得
V ˙ = − ∥ L x + α ∇ f ( x ) ∥ 2 ≤ 0 , \dot V=-\|Lx+\alpha \nabla f(x)\|^2\leq 0, V˙=Lx+αf(x)20,
但不能保证 L x = 0 Lx=0 Lx=0 1 n T ∇ f ( x ) = 0 1_n^T\nabla f(x)=0 1nTf(x)=0同时成立。因为若要 L x = 0 Lx=0 Lx=0,则需要 ∇ f ( x ) = 0 \nabla f(x)=0 f(x)=0,但是每一个 ∇ f i ( x i ) = 0 \nabla f_i(x_i)=0 fi(xi)=0的解通常不是同一个 x x x,所以平衡点处 L x = 0 Lx=0 Lx=0不一定成立。为了使分布式梯度下降能够精确收敛于最优解,只能将 α \alpha α设置为递减步长(diminishing step),使得当 t → ∞ t\to\infty t α → 0 \alpha\to 0 α0,但是这样做牺牲了收敛速度。

精确一阶算法(EXTRA)

为了保证最优解的精确性,同时不牺牲收敛速度,Shi 2015给出了精确一阶算法(exact first-order algorithm, EXTRA)的离散时间形式1

Kia 2015给出该方法的连续时间形式2如下:
x ˙ = − L x − α ∇ f ( x ) + y y ˙ = − L x , \begin{aligned} \dot x&=-Lx-\alpha \nabla f(x)+y\\ \dot y&=-Lx, \end{aligned} x˙y˙=Lxαf(x)+y=Lx,
其中 α \alpha α是固定正值,且 1 n T y ( 0 ) = 0 1_n^Ty(0)=0 1nTy(0)=0。可以看出, y y y − L x -Lx Lx的积分项,作为对 L x = 0 Lx=0 Lx=0精确性的补偿。只有当 L x = 0 Lx=0 Lx=0时, y ˙ = 0 \dot y=0 y˙=0,补偿停止。同时,初值条件 1 n T y ( 0 ) = 0 1_n^Ty(0)=0 1nTy(0)=0 1 n T y ˙ = 0 1_n^T\dot y=0 1nTy˙=0联合保证了 1 n 1 n T x ˙ = − 1 n α 1 n T ∇ f ( x ) \frac{1}{n}1_n^T\dot x=-\frac{1}{n}\alpha 1_n^T\nabla f(x) n11nTx˙=n1α1nTf(x),因此能够收敛到最优解。

原始对偶算法

将分布式优化问题写成如下形式
min ⁡ f ( x ) = ∑ i = 1 n f i ( x i ) s.t. ⁡ D T x = 0. \begin{aligned}\min&\quad f(x)=\sum_{i=1}^n f_i(x_i)\\\operatorname{s.t.} &\quad D^Tx=0.\end{aligned} mins.t.f(x)=i=1nfi(xi)DTx=0.

构建增广拉格朗日函数
L ( x , y ) = f ( x ) + 1 α y T D T x + 1 2 α x T L x , \mathcal L(x,y)=f(x)+\frac{1}{\alpha }y^TD^Tx+\frac{1}{2\alpha }x^TLx, L(x,y)=f(x)+α1yTDTx+2α1xTLx,
就可以使用经典的原始对偶算法(primal-dual algorithm)解决:
x ˙ = − α ∇ x L ( x , y ) y ˙ = α ∇ y L ( x , y ) , \begin{aligned} \dot x&=-\alpha \nabla_x \mathcal L(x,y)\\ \dot y&=\alpha \nabla_y \mathcal L(x,y), \end{aligned} x˙y˙=αxL(x,y)=αyL(x,y),

x ˙ = − L x − α ∇ f ( x ) − D y y ˙ = D T x , \begin{aligned} \dot x&=-Lx-\alpha \nabla f(x)-Dy\\ \dot y&=D^Tx, \end{aligned} x˙y˙=Lxαf(x)Dy=DTx,
其中 D D D是图的关联矩阵(incidence matrix),满足 L = D D T L=DD^T L=DDT。上面第二个式子用 y ˙ = D T ( x + x ˙ ) \dot y=D^T(x+\dot x) y˙=DT(x+x˙)也可以,参考Dusan 20193

可以看出,原始对偶算法和EXTRA算法等价4。将EXTRA算法中的 y y y替换为 − D y -Dy Dy,即可得到原始对偶算法。注意原始对偶算法无需初始条件限制,因为 1 n T D y ( 0 ) = 0 1_n^TDy(0)=0 1nTDy(0)=0恒成立。

分布式梯度跟踪(DGT)

为了保证最优解的精确性,同时不牺牲收敛速度,Qu 20185给出了另一个思路,即分布式梯度跟踪(distributed gradient tracking, DGT)。该方法的连续时间形式如下:
x ˙ = − L x − α y y ˙ = − L y + ∇ 2 f ( x ) x ˙ , \begin{aligned} \dot x&=-Lx-\alpha y\\ \dot y&=-Ly+\nabla^2f(x)\dot x, \end{aligned} x˙y˙=Lxαy=Ly+2f(x)x˙,
其中 α \alpha α是固定正值,且 y ( 0 ) = ∇ f ( x ( 0 ) ) y(0)=\nabla f(x(0)) y(0)=f(x(0))。可以看出, y i y_i yi作为梯度均值 1 n 1 n T ∇ f ( x ) \frac{1}{n}1_n^T\nabla f(x) n11nTf(x)的估计,平衡点处梯度均值趋于0,从而保证 L x = 0 Lx=0 Lx=0

值得一提的是,该方法在梯度跟踪部分引入了 x ˙ \dot x x˙,而 x ˙ = 0 \dot x=0 x˙=0反过来保证 L y = 0 Ly=0 Ly=0,因此所有 y i y_i yi相等且为 1 n 1 n T ∇ f ( x ) \frac{1}{n}1_n^T\nabla f(x) n11nTf(x)。这个思路在Dusan 2019中也有使用,相当于在原始对偶算法中的拉格朗日乘子部分引入了 x ˙ \dot x x˙,而 x ˙ \dot x x˙最终趋近于0,因此不影响最终结果。


  1. Shi, W., Ling, Q., Wu, G., & Yin, W. (2015). Extra: An exact first-order a lgorithm for decentralized consensus optimization. SIAM Journal on Optimization, 25(2), 944–966. https://doi.org/10.1137/14096668X ↩︎

  2. Kia, S. S., Cortés, J., & Martínez, S. (2015). Distributed convex optimization via continuous-time coordination algorithms with discrete-time communication. In Automatica (Vol. 55, pp. 254–264). Elsevier Ltd. https://doi.org/10.1016/j.automatica.2015.03.001 ↩︎

  3. Jakovetić, D. (2019). A Unification and Generalization of Exact Distributed First-Order Methods. IEEE Transactions on Signal and Information Processing over Networks, 5(1), 31–46. https://doi.org/10.1109/TSIPN.2018.2846183 ↩︎

  4. Mokhtari, A., & Ribeiro, A. (2016). DSA: Decentralized double stochastic averaging gradient algorithm. J. Mach. Learn. Res., vol. 17, pp. 1–35. ↩︎

  5. Qu, G., & Li, N. (2018). Harnessing smoothness to accelerate distributed optimization. IEEE Transactions on Control of Network Systems, 5(3), 1245–1260. https://doi.org/10.1109/TCNS.2017.2698261 ↩︎

  • 6
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 17
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值