APP下载

求解大规模优化问题的分布式并行方法

2019-03-20余红蕾

信阳农林学院学报 2019年1期
关键词:拉格朗对偶复杂度

余红蕾

(滁州城市职业学院 教育系,安徽 滁州239000)

1 引言

假设有两个很大的正整数n和m,考虑如下所示的一般带约束凸优化问题:

minimizief(x)

(1)

subject togk(x)≤0,∀k∈{1,2,…,m}

(2)

x∈χ

(3)

假设1:

·优化问题(1)-(3)存在唯一(可能不唯一)的最优解x*∈χ。

·存在Lf≥0,对于∀x,y∈χ,使‖f(x)-f(y)‖≤Lf‖x-y‖;对于k∈{1,2,…,m} ,存在Lgk≥0,对于∀x,y∈χ,使‖gk(x)-gk(y)‖≤Lgk‖x-y‖。令Lg=[Lg1,…,Lgm]T。

·存在β≥0,对于∀x,y∈χ,使‖g(x)-g(y)‖≤β‖x-y‖。

·存在C≥0,对于∀x∈χ,使‖g(x)‖≤C。

·存在R≥,对于∀x,y∈χ,使‖x-y‖≤R。

其中,q(λ)是优化问题(1)-(3)的拉格朗日对偶函数。

2 算法设计

2.1 大规模凸优化问题

问题(1)-(3)可以利用内点法(或牛顿法)来解决,这些方法需要在每次迭代的时候进行Hessian矩阵及其逆矩阵的计算。每次迭代的计算复杂度和内存空间复杂度在O(n2)和O(n3)之间。当n非常大时,计算和空间开销都是巨大的。例如,假设n=105,每个浮点数使用4字节储存,那么就需要用40 GB的内存来保存每次迭代的Hessian矩阵。因此,大规模的优化问题通常采用基于梯度或基于分解的方法进行求解。

2.2 Primal-Dual次梯度法

2.3 拉格朗日对偶方法

利用拉格朗日对偶方法求解问题(1)-(3)的收敛速度为O(1/t)[3]。如果函数f(x)和gk(x)具有可分解的结构,拉格朗日对偶方法可以将x(t)的计算分解为更小的子问题。但是,如果函数f(x)和gk(x)不可分解,则每次计算x(t)时都需要解一个有约束的凸优化问题,大大增加了计算的复杂度[4]。

2.4 一种新的算法

考虑一个大规模的凸优化问题,其中函数f(x)或者gk(x)不具有可以分解的结构。笔者通过结合Primal-Dual次梯度法和拉格朗日对偶方法的优点,提出了一种新的算法,其框架如下所示。

算法1 新的算法初始化:· 步长γ为正常数· 选择x(-1)∈χ· Qk(0)=max{0,-gk(x(-1))}对于每一个t:· 定义梯度d(t)=∇f(x(t-1))+∑mk=1[Qk(t)+gk(x(t-1))]∇gk(x(t-1))· 计算x(t)=Pχ[x(t-1)-γd(t)],其中,Pχ[g]是投影操作· 计算Qk(t+1)=max{-gk(x(t)),Qk(t)+gk(x(t))}· 计算x(t+1)=1t+1∑tτ=0x(τ)

3 基本分析

定义1:假设χ⊆n是一个凸集。若存在L>0,使‖h(y)-h(x)‖≤L‖y-x‖,那么函数h:→χ⊆m则具有利普希茨连续性。

定义2:假设χ⊆n,函数h(x)在χ上连续并可微。若h(x)在χ上是利普希茨连续,则函数h(x)在χ上是光滑的。

引理1[5]:若函数h在χ上是光滑的,那么有h(y)≤h(x)+

定义3:假设χ⊆n是一个凸集。若存在一个常数α>0,使在χ上是凸函数,则函数h在χ上是强凸函数。

引理2:假设χ⊆n是一个凸集。假设函数h是强凸函数,xopt是函数h在χ上全局最小解。那么,有

引理3:在算法1中,有

1) 在每一步迭代t∈{0,1,…}中,对于k∈{1,2,…,m},Qk(t)≥0。

2) 在每一步迭代t∈{0,1,…}中,对于k∈{1,2,…,m},Qk(t)+gk(x(t-1))。

3) 当t=0,‖Q(0)‖2≤‖g(x(-1))‖2;当t∈{1,2,…},‖Q(t)‖2≥‖g(x(t-1))‖2。

引理5:在每一个迭代t中,李雅普诺夫漂移的上界是

Δ(t)≤QT(t)g(x(t))+‖g(x(t))‖2

(4)

4 上界以及算法收敛分析

4.1 上界分析

引理7:假设x*是最优解。对于t≥0,有

证明:假设t≥0。令φ(x)=f(x)+[Q(t)+g(x(t-1))]T。由引理3的第二部分可知,Q(t)+g(x(t-1))中的每一个元素都是非负数。因此,φ(x)是凸函数。由于d(t)=φ(x(t-1)),算法1中的投影操作可以转化成以下的优化问题:

x(t)=Pχ[x(t-1)-γd(t)]

(5)

(6)

其中,(a)由函数φ(x)的凸性可得;(b)根据函数φ(x)的定义可得;(c)由引理3的第二部分可得。

由于函数f(x)在χ上是光滑的函数(假设1),根据引理1,有

(7)

由假设1可知,每一个函数gk(x)在χ上都是光滑的。因此,[Qk(t)+gk(x(t-1))]gk(x)也是光滑的。由引理1,有

对上述不等式关于k∈{1,2,…,m}求和,得到

(8)

将公式(7)和(8)相加,得到

(9)

其中,(a)由函数φ(x)定义可得。

将公式(6)带入公式(9),可得

(10)

其中,(a)由‖g(x(t-1))-g(x(t))‖≤β‖x(t)-x(t-1)‖可得。将该不等式与公式(4)相加,能够得到

此时,引理7得证。

4.2 收敛速率

定理1说明了算法1的误差以速度O(1/t)减少,即算法1的收敛速率是O(1/t)。

5 结论

针对大规模的凸优化问题,提出了一种新的具有更快收敛速度的原对偶方法,每次迭代仅需要进行简单的梯度更新,从而降低复杂度。未来的工作将探讨如何在真实的应用场景实现笔者提出的算法。

猜你喜欢

拉格朗对偶复杂度
对偶τ-Rickart模
Kerr-AdS黑洞的复杂度
这样的完美叫“自私”
非线性电动力学黑洞的复杂度
拉格朗日的“自私”
这样的完美叫“自私”
求图上广探树的时间复杂度
例析对偶式在解三角问题中的妙用
怎样利用对偶式处理高考解几问题
某雷达导51 头中心控制软件圈复杂度分析与改进