1. 引言
近年来,分布式优化受到了越来越多的关注,与传统的集中控制优化策略不同,分布式优化不需要集中的数据控制,可以有效减轻通信负担,节省通信成本,增强网络可扩展性。得益于上述优势,分布式优化算法被广泛应用于统计估计 [1] 、机器学习 [2] [3] [4] 、能源调度 [5] [6] 、网络化多智能体系统的控制 [7] 等领域。
分布式优化的研究早期是在无向网络上进行的,Nedić等在文献 [8] 中为解决分布式无约束优化问题突破性地提出了分布式次梯度算法(DGD),但该算法受衰减步长影响存在收敛速度较慢的缺陷。为了达到更快的收敛速度,Shi等在文献 [9] 中通过对前一次迭代信息的再次使用提出了即使采用固定步长也可实现线性收敛的EXTRA算法。随后,Qu等人通过结合梯度追踪技术和不精确梯度法,在文献 [10] 中提出了适用于时变通信网络的DIGing算法,当局部目标函数强凸且光滑,该算法可使节点渐近收敛到全局最优解。此后,Jakovetić等在文献 [11] 中揭示了EXTRA和DIGing之间的差异在于原始误差对对偶误差的影响不同,并通过推导出一种新的方法对上述两种方法进行统一。
上述算法要求节点间的信息传输是对称且双向的,这在实际网络系统中很难实现,因此研究有向网更具有实用性。针对有向网络下的分布式无约束凸优化问题,Xi等通过运用push-sum协议 [12] 设计了一种基于广播通信的次梯度下降算法 [13] ,该算法采用列随机权重矩阵和衰减步长,虽然有效克服了有向网络的不平衡性,但只能达到次线性收敛。为解决收敛速度过慢的问题,Kempe等通过将push-sum协议与EXTRA算法相结合,在文献 [14] 中提出了可以实现线性收敛的DEXTRA算法。进一步地,文献 [15] 考虑了更一般的时变网络,提出了一种带有异构步长的有向图算法(push-DIGing),该算法不仅为步长提供较广阔的选择范围,而且能实现更快收敛。此外,文献 [16] [17] 提出一类算法可同时使用了行和列随机权重矩阵来实现在强连通有向图中的线性收敛。
上述方法虽能有效应用于有向网络,但列随机矩阵的使用需要节点知道其自身出度,这在基于广播通信的网络中是不符合实际的。为了突破这一严苛条件,文献 [18] [19] 中提出了一类只使用行随机权重矩阵的分布式算法,此类算法通过引入辅助变量来消除网络不平衡性,当目标函数强凸且具有Lipschitz连续梯度时,可实现线性收敛。在此基础上,Xin等人在文献 [20] 中进一步放宽了对步长的限制,设计出采用异构步长的行随机优化算法(FROST)。随后,文献 [21] 基于Nesterov加速机制提出了FROST算法的加速版本,文献 [22] 将FROST与heavy-ball和Nesterov动量项相结合,以实现更快收敛。除此之外,还有一些单使用行随权重机矩阵的原始对偶算法 [23] [24] ,与现有的有向网络下的分布式算法相比,此类方法在没有显式使用梯度跟踪技术(GT)的情况下也具有线性收敛性。
基于上述研究,本文在文献 [11] 的基础上,结合Push-sum协议提出了一种可适用于有向网络的加速行随机分布式优化算法(ARNH),并通过采用异构步长和双加速机制,在提高网络灵活性和保证节点隐私性的同时加快了收敛速度。后续证明在一定的假设条件下,ARNH可以实现线性收敛,最后,根据数值实验结果验证了该算法相较于现有的有向图算法有更好的收敛性能。
2. 预备知识
2.1. 问题描述
在一个由n个节点组成的网络系统中,节点间的信息交换可用图
进行描述,其中
是有限的非空点集合,
为边集合。若有
,那么称节点j是节点i的邻居,对节点i,我们将其入度邻居定义为
,相应的其出度邻居用
表示,其中出度邻居的个数被定义为节点i的出度。若对任意边
必有相应的边
存在,该网络拓扑图为无向图,反之为有向图。若图中任意两个节点都存在一条有向路径,那么称此图是强连通的。
分布式优化即指上述网络中的所有节点共同解决以下分布式优化问题:
(1)
其中
为全局决策变量,
为节点i私有的局部目标函数。若以分布形式来解决问题(1),需要引入一个变量来模拟节点状态,则上述优化问题可转化为:
(2)
其中
,因为问题(1)和(2)等价,则问题(2)的最优解可写为
。
2.2. 相关定义和假设
定义2.1若矩阵
每一行(列)求和都为1,称矩阵为行(列)随机矩阵。若该矩阵同时满足行随机与列随机,那么称矩阵
为双随机矩阵。
定义2.2若一个连续可微函数
,对任意的
存在
使得:
(3)
成立,则称函数f是
-强凸,其中
是强凸系数。
定义2.3若一个连续可微函数
,对任意的
存在l使得:
(4)
成立,则称函数f是l-光滑或简称光滑,其中l是Lipschitz常数。
假设2.1网络拓扑图
强连通。
假设2.2局部目标函数
强凸且光滑。
2.3. 算法发展
1) Heavy-ball方法
Polyak为解决一般优化问题在文献 [25] 中提出了Heavy-ball方法:
其中
为重球动量项,文中指出当步长
和动量参数
的选取满足约束条件时,该算法可达到比一般梯度下降法更快的收敛速度,因此后续有学者将该方法引入分布式优化算法 [23] [26] 中以实现更快收敛。
2) Nesterov梯度法
文献 [26] 对一阶梯度法使用历史信息提出了Nesterove梯度方法:
其中
为Nesterov动量项,当目标函数满足强凸且光滑条件,
且
时,该算法可以达到
的收敛速率,这比相同情况下的梯度下降法更快,因此后续有学者将其应用到
分布式算法 [22] [23] 中。
受上述算法的启发,我们将动量项与文献 [11] 中的算法相结合,设计出一种行随机加速优化算法(ARNH)。所提出的算法中,对任意第
次迭代,每个节点
持有四个变量,
、
、
和
,根据如下规则进行更新
(5)
(6)
(7)
(8)
算法初始化设定任意
,
和
,权重矩阵
为行随机矩阵,
,矩阵
为
维的行随机矩阵,并且满足有
存在使得
成立。
和
分别对应节点i的步长和动量参数。为了更好地分析算法收敛性,我们将ARNH改写成矩阵形式前需要引入必要符号:
那么ARNH算法可转换为如下矩阵形式:
(9)
(10)
(11)
(12)
其中
、
、
和
被分别定义为
、
、
和
。
3. 算法收敛性证明
3.1. 辅助引理
引理3.1 [24] 考虑由行随机矩阵R生成的
,对于任意的
,有下列不等式成立
其中
为大于0的常数,
为收缩因子。
引理3.2 [22] 考虑由行随机矩阵R生成的
,对于所有的
,有下列不等式成立
其中
为收缩因子在引理1中被定义,其中
为大于0的常数。
引理3.3 [21] 给定
,令
,如果假设2.2成立,那么对于
,我们有
引理3.2建立了
的线性收敛性。引理3.3指出,在集中式梯度法中,当前迭代值与最优解之间的距离在每次迭代中收缩。
引理3.4 [21] 对于一个非负矩阵
和正向量
,如果有
,那么
。
3.2. 收敛关系
被提出的算法收敛关系将通过推导如下四项误差的上界得到
1) 对偶误差:
;
2) 最优误差:
;
3) 状态误差::
;
4) 一致性误差:
。
其中
。
引理 3.5 若假设2.1-2.2成立,对任意
有下列不等式成立
证明 考虑k趋近于无穷时算法收敛于
根据式子(11),我们有
(13)
这意味着
,则等式(13)可变换为下列形式
(14)
根据初始化条件
可证得
,由于
,(14)可改写为
(15)
根据引理2.2~2.3以及假设2,等式(15)右边的第二项可改写为
(16)
将等式(16)带入等式(15),并对两边取范数可得
(17)
引理 3.6 若假设1~3成立,对
下面不等式成立:
证明 结合(9)和(10)可得
(18)
在上式两端乘以
并使用
,我们有
(19)
根据
,进一步可得
(20)
对式子(20)取范数并将式子(16)带入,我们可得
引理3.7 若假设1~3成立,对
下面不等式成立:
在等式(9)两边同时减去
并运用(10)可得
根据
,我们有下式成立
(21)
对(21)两边同时取范数,我们有
引理3.7证明完毕。
引理3.8 若假设1~3成立,对
下列不等式成立
其中
。
根据
在等式(9)两边同时乘
并运用(10)可得
(22)
根据
,在(22)右边加减
,我们可得
根据假设2和引理2.3,(23)式的第二项满足下列不等式
(23)
将(23)和(16)带入(22),并对等式两边减去
同时取范数可得
3.3. 主要结果
在呈现主要结果之前,根据以上所提及的结果和符号,我们进行如下定义:
定理3.1 若假设1~2成立,根据引理3.5~3.8有下列线性不等式成立
当最大步长
满足:
(24)
动量参数
满足:
(25)
其中
为随机常数,取值满足:
最大步长和最小步长之间的差距满足:
则矩阵
的谱半径小于1,即
。
证明 由于
所以
,根据引理4可知存在正向量
使得
,即下列不等式组成立
(26)
为了确保该不等式的左项严格大于0,我们需要下列不等式组成立
(27)
通过计算可知要使不等式(26)第一项成立,最大步长
需要满足:
(28)
根据式子(27)的第二项,参数
和
必须满足下列条件:
(29)
根据式子(27)的第三项,可得
(30)
为了确保式子(26)成立,必须有
(31)
首先选择合适的参数
之后,根据式子(29)选择
,根据式子(30)选择
,最后选择满足(31)的
,
则可以找出符合要求的正向量c。由于步长的选择需要满足原始条件
,结合(28)和(30)将式子进行整理得到步长的最终取值范围:
(32)
根据(26)可以求得最大动量参数
的取值范围如下
(33)
当步长和参数选取满足约束时,我们有
。
引理3.9 [15] 假设所选步长满足(32),则对于所有
,下列不等式均成立:
其中
,
。
定理3.2 假定假设1~2成立,当步长和动量项满足定理3.1时,由所提出的算法生成的序列
线性收敛于全局最优解
,即存在常数
使得:
其中
取自引理3.9,
是满足
的足够小的正常数.
证明 利用数学归纳法对
进行不断递归,整理后可得到
(34)
对(34)两边同时取范数并利用引理3.9我们有
(35)
进一步,利用三角不等式和假设3对
进行定界
(36)
将(36)代入(35)可得下式成立:
(37)
对
,定义
,
,
,
那么(37)可重写为:
根据引理3.9我们可知
收敛且有界,则对于任意
,可得
因此存在
使得下式成立
由此,我们可得到以下结果
即得到定理3.2的结果,证明结束。
4. 数值实验
我们考虑有向图上的分布式逻辑回归问题:
其中
,
为节点i的第j个数据样本特征向量,其相应的标签用
表示,n个节点共同处理
个样本,其中
对应节点i所需要处理的样本数。若任意节点所需要处理的样本数相同,则上述问题便转化为分布式无约束优化问题:
其中正则项
是用以规避数据过拟合。
实验中的初始强连通有向网络由十个节点随机生成,应用规则
生成行随机矩阵,其中
为最大入度,
是有关于矩阵R的拉普拉斯矩阵。类似地,
用以列随机矩阵的生成。此外,对于所有的分布式算法,我们使用
来刻画残差序列,其中
。
根据定理3.1和3.2可看出ARNH的收敛速率与步长和参数有关,对于动量参数对收敛速率的影响,我们设定步长
,参数
,动量参数的选取为
,算法在不同动量参数下第300次迭代时的残差变化曲线见图1,从中可以看出最优动量参数为0.3。

Figure 1. Performance of ARNH algorithm with different momentum parameters
图1. 不同参数
下ARNH算法性能
实验2测试参数b对算法性能的影响,选取异构步长
,动量参数
,将带有不同参数b的算法进行性能比较,从实验结果图2可以观察到ARSD在
时达到最佳收敛。

Figure 2. Performance of ARNH algorithm with different parameters b
图2. 不同参数b下ARNH算法性能
实验3设定所提出算法的非协作步长
,动量参数
,参数
,并ARNH与前沿算法进行比较,所有相关算法的参数已调至最优可获得最佳性能表现,由图3可以看出ARNH相较与现有的分布式一阶算法有较快的收敛速度。

Figure 3. Performance comparison of different algorithms
图3. 不同算法的性能比较
5. 总结
本文提出了一种基于行随机优化的分布式同步动量加速算法,称为ARNH。该算法利用Push-Sum技术消除网络不平衡性,并运用双加速机制提高算法收敛速率。若目标函数强凸且具有Lipschitz连续梯度,本文证明当所选步长和动量参数满足取值范围,ARNH能更快地线性收敛到全局最优解。最后,数值实验验证了理论分析的正确性以及算法的高效性。