TSWJ The Scientific World Journal 1537-744X Hindawi Publishing Corporation 246596 10.1155/2013/246596 246596 Research Article An Accelerated Proximal Gradient Algorithm for Singly Linearly Constrained Quadratic Programs with Box Constraints Han Congying 1 http://orcid.org/0000-0002-9688-583X Li Mingqiang 2 Zhao Tong 1 Guo Tiande 1 Ahmad I. Nie P.-y. 1 School of Mathematical Sciences University of Chinese Academy of Sciences Shijingshan District Beijing 100049 China ucas.ac.cn 2 College of Information Science and Engineering Shandong University of Science and Technology Qingdao 266590 China sdust.edu.cn 2013 7 10 2013 2013 04 08 2013 23 09 2013 2013 Copyright © 2013 Congying Han et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Recently, the existed proximal gradient algorithms had been used to solve non-smooth convex optimization problems. As a special nonsmooth convex problem, the singly linearly constrained quadratic programs with box constraints appear in a wide range of applications. Hence, we propose an accelerated proximal gradient algorithm for singly linearly constrained quadratic programs with box constraints. At each iteration, the subproblem whose Hessian matrix is diagonal and positive definite is an easy model which can be solved efficiently via searching a root of a piecewise linear function. It is proved that the new algorithm can terminate at an ε-optimal solution within O(1/ε) iterations. Moreover, no line search is needed in this algorithm, and the global convergence can be proved under mild conditions. Numerical results are reported for solving quadratic programs arising from the training of support vector machines, which show that the new algorithm is efficient.

1. Introduction

In this paper, we mainly consider the following quadratic programming problem: (1)minxΩf(x)=12xTGx-bTx, where GRn×n is symmetric and positive semidefinite, x,bRn, and the feasible region Ω is defined by (2)Ω={xRn,lxu,cTx=d}, where l,u,cRn and d is a scalar.

The singly linearly constrained quadratic programs with box constraints appear in a wide range of applications such as image processing, biological information and machine learning. Specifically, support vector machine (SVM) is one of the most classical models of (1). It is a promising technique for solving a variety of machine learning and function estimation problems. The SVM learning methodology has been shown to give good performance in a wide variety of problems such as face detection, text categorization, and handwritten character recognition. The number of variables in SVM is so huge that traditional optimization methods cannot be directly applied. Some decomposition method  with its subproblem being a special case of (1) is the main approach for large-scale SVM problems. The solution of the subproblem by generalized variable projection method (GVPM) and projected gradient method (PGM) is introduced in [5, 6], respectively. Moreover, Zanni, and so forth, also proposes the parallel decomposition algorithms based on these two methods in [7, 8]. For more general large-scale model, some of the parallelization pieces of literature in [9, 10] recently are proposed, but these methods cannot be applied specifically to SVM so far.

In this work, we will give an accelerated proximal gradient algorithm for (1). First, we consider the following nonsmooth convex optimization problem: (3)minxRnF(x)=h(x)+g(x), where g:Rn(-,] is a proper, lower semicontinuous (lsc), convex function and h is convex smooth (i.e., continuously differentiable) on an open subset of Rn containing dom g={xg(x)<}.  h is Lipschitz continuous on dom g. That is, (4)h(x)-h(y)Lx-yx,ydomg for some L>0, where, and in what follows, · denotes the spectral norm. Obviously, problem (1) is a special case of (3) with h(x)=f(x) and g(x) being the indicator function for the feasible region Ω defined by (5)g(x)={0if  xΩ,+else.

Recently, great attention has been paid to the solution of (3). Nesterov and Nemirovski [11, 12] study the accelerated proximal gradient method for (1) with an attractive iteration complexity of O(1/ε) for achieving ε-optimality. Almost at the same time, Beck and Teboulle  give a fast iterative shrinkage-thresholding algorithm (FISTA) which achieves the same convergence rate. After that, Tseng  summarizes these algorithms and presents a unified treatment of these methods. All these algorithms have a good performance on large-scale problems, such as linear inverse problems, matrix game problems, and matrix completion. Motivated by the successful use of the accelerated proximal gradient method for (3), we extend Beck and Teboulle's algorithm to solve (1). In particular, the subproblem is solved by searching a root of a piecewise linear continuous function. Numerical results show that the new algorithm is efficient.

The paper is organized as follows. In Section 2, the proximal gradient algorithm and its accelerated version are presented for (1). The convergence of these algorithms is also discussed. In Section 3, the method to efficiently solve the subproblem is introduced. Numerical results on SVM classification problems generated by the random and real world data sets are shown in Section 4. Section 5 is devoted to some conclusions and further study.

In this section, we introduce the proximal gradient algorithm and its accelerated version which can be applied to solve (1). For any zRn, consider the following quadratic approximation of f(x) at z: (6)QL(x,z)=f(z)+x-z,f(z)+L2x-z2(7)=L2xTx+(Gz-Lz-b)Tx+const, where L>0 is a given parameter, const=(L/2)zTz-f(z)Tz+f(z). Since (6) is a strongly convex function of x, QL(x,z) has a unique minimizer in Ω which we denote by (8)PL(z)=argmin{QL(x,z):xΩ}.

First, we present a simple result which characterizes the optimality of PL(z).

Lemma 1.

For any zRn, w=PL(z) if and only if there exists γ(z)NΩ(w), such that (9)f(z)+L(w-z)+γ(z)=0, where NΩ(w) is the normal cone of Ω at the point w denoted by (10)NΩ(w)={w*Rnw*,v-w0  vΩ}.

Proof.

This result can be obtained directly from the optimality conditions of (8), which is a strongly convex problem.

Then, similarly to Lemma 2.3 in , we have the following key result.

Lemma 2.

Let zRn and L>0 such that (11)f(PL(z))Q(pL(z),z). Then for any xΩ, (12)f(x)-f(PL(z))L2PL(z)-z2+Lz-x,PL(z)-z.

Proof.

Since γ(z)NΩ(w) and f is convex, it follows that (13)f(x)f(z)+x-z,f(z)+γ(z),x-PL(z). Hence, from (9), (11), (13), and the definition of PL(z) we have (14)f(x)-f(PL(z))f(x)-Q(pL(z),z)-L2PL(z)-z2+x-PL(z),f(z)+γ(z)=-L2PL(z)-z2+Lx-PL(z),z-PL(z)=L2PL(z)-z2+Lz-x,PL(z)-z. This completes the proof.

Note that f(x) is a convex quadratic function and (11) can always be satisfied for PL(z) if Lλmax(G), where λmax denotes the maximum eigenvalue of G. The proximal gradient algorithm for (1) is as follows.

Algorithm 3.

We have the following steps.

Step 1. Choose x0Rn.

Step 2. While (xk-1 does not satisfy the terminal conditions) (15)xk=PL(xk-1)k=k+1.

The following theorem is about the iteration complexity of Algorithm 3. In what follows, X* and f* denote the set of optimal solutions and optimal value of (1), respectively.

Theorem 4.

Let {xk} and {f(xk)} be the sequences generated by Algorithm 3 with Lλmax(G); then, for k1, the following results hold:

{f(xk)} is nonincreasing and (16)f(xk)-f(xk+1)L2xk-xk+12;

f(xk)-f(x*)Lx0-x*2/2k, for all x*X*;

if {xkj} is a convergent subsequence of {xk} and limjxkj=x** then x**X*;

if G is positive definite, then (17)xk-x*L2Λmin(G)kx0-x*.

Proof.

(a) Let z=xk, xk+1=PL(z); then from (11) and the optimality of PL(z) we have (18)f(xk+1)Q(xk+1,xk)Q(xk,xk)=f(xk).

Furthermore, take x=xk in (12); we get (19)f(xk)-f(xk+1)L2xk-xk+12.

(b) We have (20)k(f(xk)-f(x*))=kf(xk)-n=0k-1f(xn+1)+n=0k-1f(xn+1)-kf(x*)n=0k-1(f(xn+1)-f(x*))-n=0k-1(L2xn+1-xn2-Lxn-x*,xn+1-xn)=-L2(n=0k-1(x*-xn+12-x*-xn2))=-L2(x*-xk2-x0-x*2)L2x0-x*2, where the first inequality uses the fact that {f(xk)} is nonincreasing and the second inequality is established by taking x=x*, z=xn in (12). Dividing both sides by k in the last inequality, we get (21)f(xk)-f(x*)Lx0-x*22k.

(c) It follows from (b) that, for all x*X*, (22)f(xkj)-f(x*)Lx0-x*22kj.

Let j in the above inequality; we have f(x**)f(x*). On the other hand, by the definition of x*, we have f(x**)f(x*). Hence, f(x**)=f(x*), which implies that x**X*.

(d) It follows from the definition of f(x) that, for all x*X*, (23)f(xk)-f(x*)=f(x*)T(xk-x*)+(xk-x*)TG(xk-x*)(xk-x*)TG(xk-x*)λmin(G)xk-x*2, where the first inequality is established by the definition of x* and the second inequality, with λmin(G) denoting the minimum eigenvalue of G, is obtained from the positive definite property of G.

From (23) and (b), we get (24)xk-x*L2λmin(G)kx0-x*.

Theorem 4 shows that Algorithm 3 has a result complexity of O(1/k). Now we introduce a new algorithm with an improved complexity result of O(1/k2).

Algorithm 5.

We have the following steps.

Step 1. Choose z1=x0Rn, set k=1, t1=1.

Step 2. While (xk-1 does not satisfy the terminal conditions) (25)xk=PL(zk),(26)tk+1=1+1+4tk22,zk+1=xk+(tk-1tk+1)(xk-xk-1),(27)k=k+1.

Remark 6.

In Algorithm 5, the operator PL(·) is employed on the point zk which is a specific linear combination of the previous two points {xk-1,xk-2}. However, in Algorithm 3, the operator only uses the previous point xk-1. On the other hand, the computational effort of these two algorithms is almost the same except for the computation of (26) in Algorithm 5 which is negligible.

Now we give the promising improved complexity result for Algorithm 5.

Theorem 7.

Let {xk} and {f(xk)} be the sequences generated by Algorithm 5 with Lλmax(G). Then, for k1, the following results hold:

f(xk)-f(x*)2Lx0-x*2/(k+1)2, for all x*X*;

if {xkj} is a converging subsequence of {xk} and limjxkj=x**, then x**X*;

if G is positive definite, then (28)xk-x*L2λmin(G)(k+1)2x0-x*.

Proof.

(a) Using Lemma 2, the proof is similar to the proof of Theorem 4.4 in . (b) and (c) can be proved in the same way as that of (c) and (d) in Theorem 4, respectively.

3. How to Solve <inline-formula><mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" id="M128"><mml:msub><mml:mrow><mml:mi>P</mml:mi></mml:mrow><mml:mrow><mml:mi>L</mml:mi></mml:mrow></mml:msub><mml:mi /><mml:mo stretchy="false">(</mml:mo><mml:mo>·</mml:mo><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>

In this section, we extend the method studied by Dai and Flecher  to solve PL(·). In order to obtain PL(·) in (8), we need to solve the following problem: (29)minL2xTx-qTxs.t.  cTx=d,lxu, where q=Lz+b-Gz. For a given value of λ, we consider the following box constrained QP problem: (30)minL2xTx-qTx-λ(cTx-d)s.t.  lxu and denote the minimizer of (30) as x(λ). Then, (31)x(λ)=mid(l,α,u), where α=α(λ) has components αi=(qi+λci)/L (i=1,2,n) and mid(l,α,u) is the componentwise operation that supplies the median of its three arguments. That is, (32)[x(λ)]i=li+αi-ui-max(li,αi,ui)-min(li,αi,ui)(i=1,2,n).

Define (33)r(λ)=cTx(λ)-d; then from , we know that r(λ) is a piecewise linear continuous and monotonically increasing function of λ. Furthermore, x(λ*) is the optimal of (29) if λ* is located such that r(λ*)=0. Hence, the main task of solving (29) is to find a λ* such that r(λ*)=0. For this purpose, we adopt the algorithm introduced in  which consists of a bracketing phase and a secant phase. Numerical experiments in the next section show that this algorithm achieves high efficiency.

4. Numerical Experiments

As we know, one of the important applications of SVM is classification. Given a training set (34)D={(zi,yi),i=1,,n,ziRm,yi{-1,1}}, we need to find a hyperplane to separate the two classes of points. This can be done by solving the following convex quadratic programming problem: (35)min12xTQx-eTxs.t.yTx=0,0xCe, where y=[y1,y2,,yn]T, eRn is the vector of all ones, and C is a positive scalar. Q is a n×n symmetric and positive semidefinite matrix with entries Qij=yiyjK(xi,xj), i,j=1,2,,n, where K:Rm×RmR is some kernel function.

In this section, we illustrate the performance of Algorithms 3 and 5 with Matlab 7.10 on a Windows XP professional computer (Pentium R, 2.79 GHZ). We conduct a test on SVM classification problems with the random data sets and the real world data sets.

The generation of the random data sets is based on four parameters n, m, β, and η, where n is the number of samples and m is the dimension of zi  (i=1,,n). Each element of zi is randomly generated in [β,η](i=1,,n), and −1 or 1 randomly emerges in the ith entry of y(i=1,,n).

We have generated three random data sets with β=-1, η=1, m=5, and n = 200, 600, and 1000, respectively. The two real world data sets are the UCI adult data set and the heart data set. For the UCI adult, the versions with n = 1605, 2265, and 3185, are considered. The Gauss radial basis function (36)K(zi,zj)=exp(-zi-zj2σ2) is used in our tests. The parameters C in (35) and σ in (36) are set to (10,40), (1,13), and (1,1000) for random data sets, heart, and UCI adult data sets respectively.

For all test problems, the initial point is chosen as x0=(0,0)T and the const L=i=1nQii. The terminal rules for solving PL(·) are |r(λ)|10-8.

For the test problem with random data set (n=200) and heart data set, the running steps are 8000 and 1000, respectively. In order to make a visual comparison between Algorithms 3 and 5, we plot the values of f(xk) with iterations in Figure 1. Furthermore, we compute (37)CR(j)=k=1Mcr(M×(j-1)+k)(j=1,2,J), where cr(M×(j-1)+k) denotes the number of calculating r(λ) in step M×(j-1)+k. In Figure 2, we plot the values of CR(j)  (j=1,2,J) with M=100, J=80 and M=20, J=50, respectively.

Function value curve with iterations.

Random data set

Heart data set

Number of calculating r(λ) for every finite step.

Random data set

Heart data set

For the test problems with the rest data sets, the terminal condition is based on the fulfilment of the KKT conditions within 0.001 (see ). The numerical results are shown in Tables 1 and 2, where the meaning of the indexes are as follows:

n: the scale of the data sets,

sec: the computing time (in seconds),

k: the number of iterations,

raver: the average number of calculating r(λ) in each step.

Numerical results for Algorithm 3.

Problems n Sec k Raver
Random 600 19.97 19524 2.98
1000 78.23 32153 2.99

2265 20.45 1515 1.50
3185 49.50 2103 1.50

Numerical results for Algorithm 5.

Problems n Sec k Raver
Random 600 5.33 5021 3.68
1000 19.05 7095 3.30

2265 2.84 106 2.97
3185 6.30 125 2.98

From Figure 2, we can see that although the total number of calculating r(λ) every 100 (27) steps in Algorithm 3 is less than that the number in Algorithm 5. However, Algorithm 5 uses much less iterations and time to achieve the approximate solution, compared with Algorithm 3 from Figure 1 and Tables 1 and 2. For the subproblem, less than 4 iterations are used to achieve a very accurate solution on average, which shows that PL(·) can be solved efficiently. Moreover, from the column raver in Tables 1 and 2, we can also see that the average number of calculating r(λ) with real world data sets is slightly less than that with random data sets.

5. Conclusion and Future Work

We have extended the accelerated proximal point method to the solution of singly linearly constrained quadratic programming with box constraints. The new algorithm is proved to be globally convergent. Numerical results also show that the new algorithm performs well on medium-scale quadratic programs. On the other hand, Solving the subproblem by searching a root of a piecewise linear continuous function is a very cheap. Considering the good performance of the new Algorithm 5, we can apply it to the solution of the subproblems in decomposition methods for large-scale SVM problems. Moreover, a parallel version of this algorithm combined with the theory in [9, 10] is also a direction of our future research.

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

Acknowledgments

This work is supported by the National Natural Science Foundation of China (11101420, 71271204) and the Excellent Young Scientist Foundation of Shandong Province (2010BSE06047).

Zanni L. An improved gradient projection-based decomposition technique for support vector machines Computational Management Science 2006 3 2 131 145 2-s2.0-33645025197 10.1007/s10287-005-0004-6 Lucidi S. Palagi L. Risi A. Sciandrone M. A convergent decomposition algorithm for support vector machines Computational Optimization and Applications 2007 38 2 217 234 2-s2.0-35348918845 10.1007/s10589-007-9044-x Serafini T. Zanni L. On the working set selection in gradient projection-based decomposition techniques for support vector machines Optimization Methods and Software 2005 20 4-5 583 596 2-s2.0-27744479938 10.1080/10556780500140714 Tseng P. Yun S. A coordinate gradient descent method for nonsmooth separable minimization Mathematical Programming B 2009 117 1-2 387 423 2-s2.0-46749146509 10.1007/s10107-007-0170-0 Serafini T. Zanghirati G. Zanni L. Gradient projection methods for large quadratic programs and applications in training support vector machines Optimization Methods and Software 2003 20 353 378 2-s2.0-12444278992 Dai Y. Fletcher R. New algorithms for singly linearly constrained quadratic programs subject to lower and upper bounds Mathematical Programming 2006 106 3 403 421 2-s2.0-33644511085 10.1007/s10107-005-0595-2 Zanghirati G. Zanni L. A parallel solver for large quadratic programs in training support vector machines Parallel Computing 2003 29 4 535 551 2-s2.0-0037378238 10.1016/S0167-8191(03)00021-8 Zanni L. Serafini T. Zanghirati G. Parallel software for training large scale support vector machines on multiprocessor systems Journal of Machine Learning Research 2006 7 1467 1492 2-s2.0-33745784205 Congying H. Yongli W. Guoping H. On the convergence of asynchronous parallel algorithm for large-scale linearly constrained minimization problem Applied Mathematics and Computation 2009 2 434 441 2-s2.0-64849105610 Fangying Z. Congying H. Yongli W. Parallel SSLE algorithm for large scale constrained optimization Applied Mathematics and Computation 2011 217 12 5377 5384 2-s2.0-79551630535 10.1016/j.amc.2010.12.005 Nesterov Y. Smooth minimization of non-smooth functions Mathematical Programming 2005 103 1 127 152 2-s2.0-17444406259 10.1007/s10107-004-0552-5 Nemirovski A. Prox-method with rate of convergence O(1/t) for variational inequalities with lipschitz continuous monotone operators and smooth convex-concave saddle point problems SIAM Journal on Optimization 2005 15 1 229 251 2-s2.0-14944353419 10.1137/S1052623403425629 Beck A. Teboulle M. A fast iterative shrinkage-thresholding algorithm for linear inverse problems SIAM Journal on Imaging Sciences 2009 2 183 202 Tseng P. On accelerated proximal gradient methods for convex-concave optimization SIAM Journal on Optimization. In press Joachims T. Scholkopf B. Burges C. J. C. Smola A. J. Making large-scale SVM learning practical Advances in Kernel Methods: Support Vector Learning 1998 Cambridge, Mass, USA MIT Press 169 184