蔣 峰, 黨亞崢
(上海理工大學 管理學院 上海 20093)
考慮下面的凸優化問題:
因為經典的ADMM算法難以求得子問題的精確解,為了彌補這一缺陷,何炳生等[4]在x子問題中加入了項,得到了下面的新算法:

式中,G是一個半正定矩陣。何炳生等[4]證明了該算法的收斂速率。
從問題(1)本身來看,變量x和z是平等的,在設計算法時也希望能夠平等對待x和z子問題。因此何炳生等[5]提出了對稱ADMM算法,其迭代格式如下:

與原來的ADMM算法不同,式(4)在每一次迭代中更新拉格朗日乘子兩次。文獻[4]中分析了該算法的全局收斂性,數值計算表明該算法比原始的ADMM算法收斂速度更快。
然而,在很多實際應用中,精確地求解式(4)中的x子問題難以實現,或者要付出很大代價。因此本文提出了一種改進的對稱ADMM算法。該算法的主要創新之處是在對稱ADMM算法的x極小化子問題中加入半近鄰項近似求解此問題,同時給出了收斂性證明。數值計算表明,改進的對稱ADMM算法的收斂速度比對稱ADMM算法更快。
問題(1)等價于一個變分不等式VI(),求

步驟1給定半正定矩陣G,初始點
步驟2計算

特別地,當G = 0時,算法為對稱ADMM算法。
首先,定義幾個分析算法收斂性質需要用到的矩陣。

因為G是半正定矩陣,所以等號右側的第一部分是半正定矩陣,只需證明第二部分也是半正定即可。令


是半正定矩陣,故引理1成立。
引理2 假設H,M,Q是式(6)定義的矩陣,則有

因為


同理,根據z極小化問題的最優性條件,可得

證明 對于同一空間中的向量a,b,c,d和具有適當維度的矩陣H,滿足

上式可寫為

證明 根據式(14)和式(22)得


將改進的對稱ADMM算法應用于LASSO問題[6-9]

表1為應用對稱ADMM算法和改進的對稱ADMM算法解決該問題的結果,其中m表示矩陣P的維數,k表示迭代次數。從表1可以看出,當矩陣P的維數較低時,改進的對稱ADMM算法明顯快于對稱ADMM算法;而當P的維數較高時,對比CPU時間發現,改進的對稱ADMM算法的數值表現優勢更大。
為了進一步觀察兩種算法的收斂性,比較了初始殘差和對偶殘差隨迭代次數的變化情況。從圖1和圖2可以直觀地發現,盡管在算法迭代的某些階段,對稱ADMM算法的初始殘差、對偶殘差減小得更快,但是本文提出的算法先于對稱ADMM算法達到收斂條件,因此改進的對稱ADMM算法更高效。

表 1 LASSO問題數值結果Tab.1 Numerical results for LASSO

圖1 初始殘差的變化情況Fig. 1 Evolution of primal residual

圖2 對偶殘差的變化情況Fig. 2 Evolution of dual residual
提出了一種求解目標函數具有可分離結構的凸優化問題的改進的對稱ADMM算法,并證明了其收斂性。該方法的基本思想是在x子問題中引入一個半近鄰項,從而達到加快其收斂速度的目的。數值實驗表明,該算法在求解高維的LASSO問題時相對于對稱ADMM算法具有明顯的優勢,但是如何選擇最優的還需要進一步研究。