SDPNAL$+$: A Majorized Semismooth Newton-CG Augmented Lagrangian Method for Semidefinite Programming with Nonnegative Constraints

Liuqin Yang, Defeng Sun, Kim-Chuan Toh

Introduction

Let K{\cal K} be a pointed closed convex cone whose interior int(K)≠∅int({\cal K})\neq\emptyset and P{\cal P} be a polyhedral convex cone in a finite-dimensional Euclidean space X{\cal X} such that K∩P{\cal K}\cap{\cal P} is non-empty. For any cone C⊆X{\cal C}\subseteq{\cal X}, we denote the dual cone of C{\cal C} by C∗{\cal C}^{*}. For any closed convex set C⊆X{\cal C}\subseteq{\cal X}, we denote the metric projection of X{\cal X} onto C{\cal C} by ΠC(⋅)\Pi_{\cal C}(\cdot) and the tangent cone of C{\cal C} at X∈CX\in{\cal C} by TC(X){\cal T}_{{\cal C}}(X), respectively. We will make extensive use of the Moreau decomposition theorem in , which states that X=ΠC(X)−ΠC∗(−X)X=\Pi_{\cal C}(X)-\Pi_{{\cal C}^{*}}(-X) for any X∈XX\in{\cal X} and any closed convex cone C⊆X{\cal C}\subseteq{\cal X}. Let Sn{\cal S}^{n} be the space of n×nn\times n real symmetric matrices and S+n{\cal S}^{n}_{+} be the cone of positive semidefinite matrices in Sn{\cal S}^{n}. In this paper, we focus on the case where X=Sn{\cal X}={\cal S}^{n}, K=K∗=S+n{\cal K}={\cal K}^{*}={\cal S}^{n}_{+}. We are particularly interested in the case where P=S≥0n{\cal P}={\cal S}^{n}_{\geq 0}, the cone of n×nn\times n real symmetric matrices whose elements are all nonnegative, though the algorithm which we will design later is also applicable to other cases. For any matrix X∈SnX\in{\cal S}^{n}, we use X≻0X\succ 0 to indicate that XX is a real symmetric positive definite matrix.

Consider the semidefinite programming (SDP) with an additional polyhedral cone constraint, which we name as SDP++:

where b∈ℜmb\in\Re^{m} and C∈XC\in{\cal X} are given data, A:X→ℜm{\cal A}:{\cal X}\rightarrow\Re^{m} is a given linear map whose adjoint is denoted as A∗{\cal A}^{*}. Note that P=X{\cal P}={\cal X} is allowed in (1), in which case there is no additional polyhedral cone constraint imposed on XX. We assume that the matrix AA∗{\cal A}{\cal A}^{*} is invertible, i.e., A{\cal A} is surjective. The dual of (P) is given by

The optimality conditions (KKT conditions) for (P) and (D) can be written as follows:

In order for the KKT conditions (5) to have solutions, throughout this paper we make the following blanket assumption.

(a) For problem (P), there exists a feasible solution X0∈S+nX_{0}\in{\cal S}^{n}_{+} such that

(b) For problem (D), there exists a feasible solution (y0,S0,Z0)∈ℜm×S+n×Sn(y_{0},S_{0},Z_{0})\in\Re^{m}\times{\cal S}^{n}_{+}\times{\cal S}^{n} such that

It is known from convex analysis (e.g, [2, Corollary 5.3.6]) that under Assumption 1, the strong duality for (P) and (D) holds and the KKT conditions (5) have solutions.

For a given σ>0\sigma>0, define the augmented Lagrangian function for the dual problem (D) as follows:

where X∈X,y∈ℜm,S∈K∗,Z∈P∗X\in{\cal X},y\in\Re^{m},S\in{\cal K}^{*},Z\in{\cal P}^{*}. We can consider the following inexact augmented Lagrangian method to solve (D). Specifically, given σ0>0\sigma_{0}>0, (y0,S0,Z0)∈ℜm×K∗×P∗(y^{0},S^{0},Z^{0})\in\Re^{m}\times{\cal K}^{*}\times{\cal P}^{*}, perform the following steps at the (k+1)(k+1)-th iteration:

where σk∈(0,+∞)\sigma_{k}\in(0,+\infty), k=0,1,…k=0,1,\ldots. For a general discussion on the convergence of the augmented Lagrangian method for solving convex optimization problems and beyond, see .

Note that problem (P) can be reformulated as a standard SDP in the primal form by replacing the constraint X∈PX\in{\cal P} with two constraints X−Y=0X-Y=0 and Y∈PY\in{\cal P}. In , SDPNAL introduced by Zhao, Sun and Toh is applied to solve such a reformulated problem. It works quite well for nondegenerate SDPs, especially those without the constraint X∈PX\in{\cal P}. However, many of the tested SDPs (with the constraint X∈PX\in{\cal P}) in are degenerate and SDPNAL is unable to solve those problems efficiently. Motivated by our desire to overcome the aforementioned difficulty in solving degenerate SDPs and to improve the performance of SDPNAL, we present here a majorized semismooth Newton-CG augmented Lagrangian method by directly working on (P) instead of its reformulated problem. We call this new method SDPNAL++ since it is a much enhanced version of SDPNAL and it is designed for SDP++ problems (P).

The remaining parts of this paper are organized as follows. In Section 2, we introduce a majorized semismooth Newton-CG method for solving the inner minimization problems of the augmented Lagrangian method and analyze the convergence for solving these inner problems. Section 3 presents the SDPNAL++ dual approach. Section 4 is on numerical issues. There we report numerical results for a variety of SDP++ and SDP problems. We make an extensive numerical comparison with two other competitive first order methods based codes: (1) an alternating direction method of multiplier (ADMM) based solver called SDPAD by Wen et al. and (2) a two-easy-block-decomposition hybrid proximal extragradient method called 2EBD-HPE by Monteiro et al. . Numerical results show that SDPNAL++ is both fast and robust in achieving accurate solutions.

For the first time, we are able to solve all the 9595 difficult SDP problems arising from the relaxations of quadratic assignment problems (QAPs) tested in SDPNAL to an accuracy of 10−610^{-6} efficiently, while SDPAD and 2EBD-HPE successfully solve 30 and 16 problems, respectively. In addition, SDPNAL++ appears to be the only viable method currently available to solve large scale SDPs arising from rank-1 tensor approximation problems constructed by Nie and Wang . The largest rank-1 tensor approximation problem solved is nonsym(21,4), in which its resulting SDP problem has matrix dimension n=9,261n=9,261 and the number of equality constraints m=12,326,390m=12,326,390. Finally, in order to demonstrate the power of the proposed majorized semismooth Newton-CG procedure, we list the numerical results by only running the convergent ADMM with 33-block constraints (ADMM+ in short) introduced by Sun et al. . As one may observe, although ADMM+ outperforms both SDPAD and 2EBD-HPE, it can still encounter numerical difficulty in solving some hard problems such as those arising from QAPs to high accuracy. The superior numerical performance of SDPNAL++ over solvers based purely on first order methods such as SDPAD and 2EBD-HPE clearly shows the necessity of exploiting second order methods such as the semismooth Newton-CG method in order to solve hard SDP++ and SDP problems to high accuracy efficiently. While there has been a recent focus on using first order methods such as those based on ADMM or accelerated proximal gradient methods to solve structured convex optimization problems arising from machine learning and statistics, the extensive numerical results we obtained here for matrix conic programming problems serve to demonstrate that second order methods with good local convergence property are essential, if used wisely, for mitigating the inherent slow local convergence of first order methods, especially on difficult problems.

A Majorized Semismooth Newton-CG Method for Inner Problems

Let σ>0\sigma>0 and X~∈Sn\widetilde{X}\in{\cal S}^{n} be fixed. In this section we will present a majorized semismooth Newton-CG method for solving the following inner problems involved in the augmented Lagrangian method (9a):

Note that problem (10) is the dual of the following problem:

Since the objective function in (11) is strongly concave, (11) has a unique optimal solution. In order for its dual problem (10) to have a bounded solution set, we need the following generalized Slater condition.

There exists a positive definite matrix X0∈S+n∩relint(P)X_{0}\in{\cal S}^{n}_{+}\cap relint({\cal P}) such that

where relint(P)relint({\cal P}) denotes the relative interior of P{\cal P}.

Note that in (12), TP(X0){\cal T}_{{\cal P}}(X_{0}) is actually a linear subspace of Sn{\cal S}^{n} as X0X_{0} is assumed to be in the relative interior part of the polyhedral cone P{\cal P}. When P=Sn{\cal P}={\cal S}^{n}, Assumption 2 is equivalent to saying that

From [16, Theorems 1717 and 1818], we have the following useful lemma.

Suppose that Assumption 2 holds. Then for any α∈ℜ\alpha\in\Re, the level set Lα:={(y,S,Z)∈ℜm×K∗×P∗ ∣ ϕ(y,S,Z)≤α}\mathcal{L}_{\alpha}:=\{(y,S,Z)\in\Re^{m}\times{\cal K}^{*}\times{\cal P}^{*}\,\mid\,\phi(y,S,Z)\leq\alpha\} is a closed and bounded convex set.

In order to introduce our majorized semismooth Newton-CG method for solving (16), we need to majorize the second part of the objective function in (16) by a convex, but not necessarily strongly convex, quadratic function. Specifically, for given (yl,Sl)∈ℜm×K∗(y^{l},S^{l})\in\Re^{m}\times{\cal K}^{*} and l≥0l\geq 0, since

where Zl:=ΠP∗(C^−A∗yl−Sl)Z^{l}:=\Pi_{{\cal P}^{*}}(\widehat{C}-{\cal A}^{*}y^{l}-S^{l}), we know that for (y,S)∈ℜm×Sn(y,S)\in\Re^{m}\times{\cal S}^{n},

where C~l:=C−Zl\widetilde{C}^{l}:=C-Z^{l}. Thus Ψl\varPsi_{l} is a majorization function of Φ\varPhi at (yl,Sl)(y^{l},S^{l}) because Ψl(yl,Sl)=Φ(yl,Sl)\varPsi_{l}(y^{l},S^{l})=\varPhi(y^{l},S^{l}) and Ψl(y,S)≥Φ(y,S)\varPsi_{l}(y,S)\geq\varPhi(y,S) ∀(y,S)∈ℜm×Sn\forall(y,S)\in\Re^{m}\times{\cal S}^{n}. In order to find an optimal solution for problem (16), for l=0,1,…l=0,1,\ldots, we solve the following problem

Note that we can only solve problem (19a) inexactly by an iterative method. Here we will introduce a semismooth Newton-CG (SNCG) method for solving (19a). Specifically, for fixed X~,C~∈Sn\widetilde{X},\widetilde{C}\in{\cal S}^{n}, we need to consider the following problem of the form

The objective function in (20) is continuously differentiable and solving (20) is equivalent to solving the following nonsmooth equation:

Since ΠK(⋅)\Pi_{{\cal K}}(\cdot) is strongly semismooth , we can design a SNCG method as in to solve (21), and expect fast superlinear or even quadratic convergence.

where ‘‘∘"``\circ" denotes the Hadamard product of two matrices and

where ∂ΠK(X~+σ(A∗y−C~))\partial\Pi_{{\cal K}}(\widetilde{X}+\sigma(\mathcal{A}^{*}y-\widetilde{C})) is the Clarke subdifferential of ΠK(⋅)\Pi_{{\cal K}}(\cdot) at X~+σ(A∗y−C~)\widetilde{X}+\sigma(\mathcal{A}^{*}y-\widetilde{C}). Note that from , we know that

Now we will introduce the SNCG algorithm for solving (20). Choose y0∈ℜmy^{0}\in\Re^{m}. Then the algorithm can be stated as follows.

Algorithm SNCG: A Semismooth Newton-CG Algorithm (SNCG(y0,X~,σ)(y^{0},\widetilde{X},\sigma)). Given μ∈(0,1/2)\mu\in(0,1/2), ηˉ∈(0,1)\bar{\eta}\in(0,1), τ∈(0,1]\tau\in(0,1], τ1,τ2∈(0,1)\tau_{1},\tau_{2}\in(0,1), and δ∈(0,1)\delta\in(0,1). Perform the jjth iteration as follows. Step 1. Given a maximum number of CG iterations Nj>0N_{j}>0, compute ηj:=min⁡(ηˉ,∥∇φ(yj)∥1+τ).\eta_{j}:=\min(\bar{\eta},\|\nabla\varphi(y^{j})\|^{1+\tau}). Apply the conjugate gradient (CG) algorithm (CG(ηj,Nj))(CG(\eta_{j},N_{j})), to find an approximation solution djd^{j} to (Vj+εjI) d=−∇φ(yj),\displaystyle(V_{j}+\varepsilon_{j}I)\,d=-\nabla\varphi(y^{j}), (30) where Vj∈∂^2φ(yj)V_{j}\in\hat{\partial}^{2}\varphi(y^{j}) is defined as in (27) and εj:=τ1min⁡{τ2,∥∇φ(yj)∥}\varepsilon_{j}:=\tau_{1}\min\{\tau_{2},\|\nabla\varphi(y^{j})\|\}. Step 2. Set αj=δmj\alpha_{j}=\delta^{m_{j}}, where mjm_{j} is the first nonnegative integer mm for which φ(yj+δmdj)≤φ(yj)+μδm⟨∇φ(yj),dj⟩.\displaystyle\varphi(y^{j}+\delta^{m}d^{j})\leq\varphi(y^{j})+\mu\delta^{m}\langle\nabla\varphi(y^{j}),d^{j}\rangle. (31) Step 3. Set yj+1=yj+αj djy^{j+1}=y^{j}+\alpha_{j}\,d^{j}.

The convergence results for the above SNCG algorithm are stated in Theorems 2.2 and 2.3 below. We shall omit the proofs as they can be proved in the same fashion as in [25, Theorems 3.4 and 3.5].

Suppose that Assumption 2 holds. Then Algorithm SNCG generates a bounded sequence {yj}\{y^{j}\} and any accumulation point y^\hat{y} of {yj}\{y^{j}\} is an optimal solution to problem (20).

Suppose that Assumption 2 holds. Let y^\hat{y} be an accumulation point of the infinite sequence {yj}\{y^{j}\} generated by Algorithm SNCG for solving the problem (20). Suppose that at each step j≥0j\geq 0, when the CG algorithm terminates, the tolerance ηj\eta_{j} is achieved (e.g., when Nj=m+1N_{j}=m+1), i.e.,

Assume that the constraint nondegenerate condition

holds at W^:=ΠK(X~+σ(A∗y^−C~))\widehat{W}:=\Pi_{{\cal K}}(\widetilde{X}+\sigma(\mathcal{A}^{*}\hat{y}-\widetilde{C})), where lin(TK(W^)){\rm lin}(\mathcal{T}_{{\cal K}}(\widehat{W})) denotes the lineality space of TK(W^)\mathcal{T}_{{\cal K}}(\widehat{W}). Then the whole sequence {yj}\{y^{j}\} converges to y^\hat{y} and

Given ξ1∈(0,1)\xi_{1}\in(0,1) and ξ2∈(0,∞)\xi_{2}\in(0,\infty), we will use the following stopping criteria for terminating Algorithm SNCG:

φl(yl+1)≤φl(yl)−ξ12∣⟨∇φl(yl), yl+1−yl⟩∣\varphi_{l}(y^{l+1})\leq\varphi_{l}(y^{l})-\frac{\xi_{1}}{2}\left|\langle\nabla\varphi_{l}(y^{l}),\,y^{l+1}-y^{l}\rangle\right|,

∥∇φl(yl+1)∥≤ξ2(φl(yl)−φl(yl+1))12\|\nabla\varphi_{l}(y^{l+1})\|\leq\xi_{2}(\varphi_{l}(y^{l})-\varphi_{l}(y^{l+1}))^{\frac{1}{2}}.

We can now state our majorized semismooth Newton-CG method for solving (16) as follows:

Algorithm MSNCG: A Majorized Semismooth Newton-CG Algorithm (MSNCG(y0,S0,Z0,X~,σ)(y^{0},S^{0},Z^{0},\widetilde{X},\sigma)). Given ξ1∈(0,1)\xi_{1}\in(0,1), ξ2∈(0,+∞)\xi_{2}\in(0,+\infty). Perform the llth iteration as follows. Step 1. Starting with yly^{l} as the initial point, apply Algorithm SNCG to minimize φl(⋅)\varphi_{l}(\cdot) to find yl+1=SNCG(yl,X~,σ)y^{l+1}={\rm SNCG}(y^{l},\widetilde{X},\sigma) satisfying (A1) and (A2). Step 2. Compute Sl+1:=ΠK∗(C−A∗yl+1−Zl−σ−1X~)S^{l+1}:=\Pi_{{\cal K}^{*}}(C-{\cal A}^{*}y^{l+1}-Z^{l}-\sigma^{-1}\widetilde{X}) and Zl+1:=ΠP∗(C−A∗yl+1−Sl+1−σ−1X~)Z^{l+1}:=\Pi_{{\cal P}^{*}}(C-{\cal A}^{*}y^{l+1}-S^{l+1}-\sigma^{-1}\widetilde{X}).

Next, we establish the convergence of Algorithm MSNCG. For notational convenience, for any y∈ℜmy\in\Re^{m} and S∈SnS\in{\cal S}^{n}, let Y:=(y,S)Y:=(y,S). Define the linear map M:ℜm×Sn→Sn{\cal M}:\Re^{m}\times{\cal S}^{n}\to{\cal S}^{n} by

Let B:=(b,0)∈ℜm×SnB:=(b,0)\in\Re^{m}\times{\cal S}^{n} and C:=ℜm×K∗{\cal C}:=\Re^{m}\times{\cal K}^{*}. Then problem (16) is equivalent to

and the function Ψl(y,S)\varPsi_{l}(y,S) in (17) can be rewritten as

Furthermore, Y^=(y^,S^)\widehat{Y}=(\hat{y},\widehat{S}) is an optimal solution of

if and only if y^\hat{y} is an optimal solution of problem (19a) and S^=ΠK∗(C~l−A∗y^−σ−1X~).\widehat{S}=\Pi_{{\cal K}^{*}}(\widetilde{C}^{l}-{\cal A}^{*}\hat{y}-\sigma^{-1}\widetilde{X}). In addition, conditions (A1) and (A2) are equivalent to the following two conditions, respectively,

Suppose that Assumption 2 holds. Then for Algorithm MSNCG, (A1) and (A2) are achievable.

If Yl−ΠC(Yl−∇Ψl(Yl))=0Y^{l}-\Pi_{\cal C}(Y^{l}-\nabla\varPsi_{l}(Y^{l}))=0, then one can take Yl+1=YlY^{l+1}=Y^{l} to satisfy (A1) and (A2).

Next, we assume that Yl−ΠC(Yl−∇Ψl(Yl))≠0Y^{l}-\Pi_{\cal C}(Y^{l}-\nabla\varPsi_{l}(Y^{l}))\neq 0. Then YlY^{l} is not an optimal solution of problem (37). Let Y^\widehat{Y} be an arbitrary optimal solution of problem (37). Then Y^=ΠC(Y^−∇Ψl(Y^))\widehat{Y}=\Pi_{\cal C}(\widehat{Y}-\nabla\varPsi_{l}(\widehat{Y})). So ⟨Yl−Y^, (Y^−∇Ψl(Y^))−Y^⟩≤0,\langle Y^{l}-\widehat{Y},\,(\widehat{Y}-\nabla\varPsi_{l}(\widehat{Y}))-\widehat{Y}\rangle\leq 0, i.e.,

we obtain that ⟨∇Ψl(Yl), Y^−Yl⟩+σ2∥M(Y^−Yl)∥2<0.\langle\nabla\varPsi_{l}(Y^{l}),\,\widehat{Y}-Y^{l}\rangle+\frac{\sigma}{2}\|{\cal M}(\widehat{Y}-Y^{l})\|^{2}<0. This implies

Then by using (40), (41), (42) and the fact that Y^=ΠC(Y^−∇Ψl(Y^))\widehat{Y}=\Pi_{\cal C}(\widehat{Y}-\nabla\varPsi_{l}(\widehat{Y})), we know that for given ξ1∈(0,1)\xi_{1}\in(0,1) and ξ2∈(0,∞)\xi_{2}\in(0,\infty), there exists δ>0\delta>0 such that

Suppose that Assumption 2 holds. Let Algorithm MSNCG be executed with stopping criteria (A1) and (A2). Then it generates a bounded sequence {(yl,Sl,Zl)}\{(y^{l},S^{l},Z^{l})\} and any accumulation point (y^,S^)(\hat{y},\widehat{S}) of {(yl,Sl)}\{(y^{l},S^{l})\} is an optimal solution to problem (16) and hence (y^,S^,Z^)(\hat{y},\widehat{S},\widehat{Z}) is an optimal solution to problem (10), where Z^:=ΠP∗(C−A∗y^−S^−σ−1X~)\widehat{Z}:=\Pi_{{\cal P}^{*}}(C-{\cal A}^{*}\hat{y}-\widehat{S}-\sigma^{-1}\widetilde{X}). Furthermore, ∥Zl+1−Zl∥→0\|Z^{l+1}-Z^{l}\|\to 0 as l→+∞l\to+\infty.

By (38), we have Φ(Yl+1)≤Ψl(Yl+1)≤Ψl(Yl)−ξ12∣⟨∇Ψl(Yl), Yl+1−Yl⟩∣=Φ(Yl)−ξ12∣⟨∇Ψl(Yl), Yl+1−Yl⟩∣\varPhi(Y^{l+1})\leq\varPsi_{l}(Y^{l+1})\leq\varPsi_{l}(Y^{l})-\frac{\xi_{1}}{2}\left|\langle\nabla\varPsi_{l}(Y^{l}),\,Y^{l+1}-Y^{l}\rangle\right|=\varPhi(Y^{l})-\frac{\xi_{1}}{2}\left|\langle\nabla\varPsi_{l}(Y^{l}),\,Y^{l+1}-Y^{l}\rangle\right|. Hence, the sequence {Φ(Yl)}\{\varPhi(Y^{l})\} is nonincreasing.

By Lemma 2.1, we know that the level set L:={Y∈C ∣ Φ(Y)≤Φ(Y0)}\mathcal{L}:=\{Y\in{\cal C}\,\mid\,\varPhi(Y)\leq\varPhi(Y^{0})\} is a closed and bounded convex set. Then the sequence {Yl}\{Y^{l}\} is bounded and so is the sequence {Zl}\{Z^{l}\}. Let Y^\widehat{Y} be an accumulation point of {Yl}\{Y^{l}\}. Then Φ(Yl)→Φ(Y^)\varPhi(Y^{l})\to\varPhi(\widehat{Y}) and ⟨∇Ψl(Yl), Yl+1−Yl⟩→0\langle\nabla\varPsi_{l}(Y^{l}),\,Y^{l+1}-Y^{l}\rangle\to 0 as l→∞l\to\infty. Furthermore, Ψl(Yl)−Ψl(Yl+1)→0\varPsi_{l}(Y^{l})-\varPsi_{l}(Y^{l+1})\rightarrow 0 as l→∞l\to\infty.

Since ⟨∇Ψl(Yl), Yl+1−Yl⟩→0\langle\nabla\varPsi_{l}(Y^{l}),\,Y^{l+1}-Y^{l}\rangle\to 0 as l→∞l\to\infty, we obtain from (44) that

For any l≥0l\geq 0, denote Δl:=Yl−ΠC(Yl−∇Φ(Yl))\Delta_{l}:=Y^{l}-\Pi_{\cal C}(Y^{l}-\nabla\varPhi(Y^{l})). Then we have

By direct computations, we have for l≥1l\geq 1,

Thus, by (45) and the fact that (Ψl(Yl)−Ψl(Yl+1))12→0(\varPsi_{l}(Y^{l})-\varPsi_{l}(Y^{l+1}))^{\frac{1}{2}}\rightarrow 0 as l→∞l\to\infty, we derive that ∥Δl+1∥→0\|\Delta_{l+1}\|\to 0 as l→∞l\to\infty. Since Y^\widehat{Y} is an accumulation point of {Yl}\{Y^{l}\}, we obtain that Y^−ΠC(Y^−∇Φ(Y^))=0\widehat{Y}-\Pi_{\cal C}(\widehat{Y}-\nabla\varPhi(\widehat{Y}))=0. By the convexity of Φ\varPhi, Y^\widehat{Y} is an optimal solution of problem (36).

Finally, by using (45) and (46), we know that ∥Zl+1−Zl∥→0\|Z^{l+1}-Z^{l}\|\to 0 as l→∞l\to\infty. ∎

A Majorized Semismooth Newton-CG Augmented Lagrangian Method

For any k≥0k\geq 0 and (y,S,Z)∈ℜm×Sn×Sn(y,S,Z)\in\Re^{m}\times{\cal S}^{n}\times{\cal S}^{n}, denote

Since the inner problems in (10) are solved inexactly, we will use the following standard stopping criteria considered in to terminate Algorithm MSNCG:

ϕ^k(yk+1,Sk+1,Zk+1)−inf⁡ϕ^k≤ϵk2\hat{\phi}_{k}(y^{k+1},S^{k+1},Z^{k+1})-\inf\hat{\phi}_{k}\leq\epsilon_{k}^{2}, ϵk≥0\epsilon_{k}\geq 0, ∑k=0∞ϵk<∞\sum^{\infty}_{k=0}\epsilon_{k}<\infty.

ϕ^k(yk+1,Sk+1,Zk+1)−inf⁡ϕ^k≤(δk2/2σk)∥Xk+1−Xk∥\hat{\phi}_{k}(y^{k+1},S^{k+1},Z^{k+1})-\inf\hat{\phi}_{k}\leq(\delta_{k}^{2}/2\sigma_{k})\|X^{k+1}-X^{k}\|, δk≥0\delta_{k}\geq 0, ∑k=0∞δk<∞\sum^{\infty}_{k=0}\delta_{k}<\infty.

dist(0,∂ϕ^k(yk+1,Sk+1,Zk+1))≤(δk′/σk)∥Xk+1−Xk∥{\rm dist}(0,\partial\hat{\phi}_{k}(y^{k+1},S^{k+1},Z^{k+1}))\leq(\delta_{k}^{{}^{\prime}}/\sigma_{k})\|X^{k+1}-X^{k}\|, 0≤δk′→00\leq\delta^{{}^{\prime}}_{k}\rightarrow 0.

Just like SDPNAL, each iteration of the MSNCG algorithm can be quite expensive. Thus it is crucial for us to find a reasonably good initial point to warm start Algorithm SDPNAL++. We can certainly do so by solving the inner problem (10) by using any gradient descent type method. However, for this purpose we find that ADMM+ introduced by Sun, Toh and Yang is usually more efficient than other choices. Now we can present our SDPNAL++ algorithm as follows.

Algorithm SDPNAL++: A Majorized Semismooth Newton-CG Augmented Lagrangian Algorithm (SDPNAL++(y0,S0,Z0,X0,σ0)(y^{0},S^{0},Z^{0},X^{0},\sigma_{0})) Stage 1. Use ADMM+ to generate an initial point (y0,S0,Z0,X0,σ0)←ADMM+(y0,S0,Z0,X0,σ0).(y^{0},S^{0},Z^{0},X^{0},\sigma_{0})\leftarrow{\rm ADMM+}(y^{0},S^{0},Z^{0},X^{0},\sigma_{0}). Stage 2. For k=0,…,k=0,\ldots, perform the kkth iteration as follows: (a) Using (yk,Sk,Zk)(y^{k},S^{k},Z^{k}) as the initial point, apply Algorithm MSNCG to minimize ϕ^k(⋅)\hat{\phi}_{k}(\cdot) to find (yk+1,Sk+1,Zk+1)=(y^{k+1},S^{k+1},Z^{k+1})= MSNCG (yk,Sk,Zk,Xk,σk)(y^{k},S^{k},Z^{k},X^{k},\sigma_{k}) and Xk+1=Xk+σk(A∗yk+1+Sk+1+Zk+1−C)X^{k+1}=X^{k}+\sigma_{k}({\cal A}^{*}y^{k+1}+S^{k+1}+Z^{k+1}-C) satisfying (B1), (B2) or (B3). (b) Update σk+1=ρσk\sigma_{k+1}=\rho\sigma_{k} for some ρ>1\rho>1 or σk+1=σk\sigma_{k+1}=\sigma_{k}.

As mentioned in the introduction, if (P) is reformulated as a standard SDP and Algorithm SDPNAL++ is applied to this reformulated form, then SDPNAL++ reduces to SDPNAL proposed in .

We can obtain similar theorems on the convergence of SDPNAL++ as SDPNAL ([25, Theorems 4.1 and 4.2]). The global convergence of Algorithm SDPNAL++ follows from Rockafellar [18, Theorem 11] and [17, Theorem 44] without much difficulty.

Suppose that Assumption 2 holds. Let Algorithm SDPNAL++ be executed with stopping criterion (B1). If there exists (y0,S0,Z0)∈ℜm×S+n×Sn(y_{0},S_{0},Z_{0})\in\Re^{m}\times{\cal S}^{n}_{+}\times{\cal S}^{n} such that

then the sequence {Xk}⊂P\{X^{k}\}\subset{\cal P} generated by Algorithm SDPNAL++ is bounded and {Xk}\{X^{k}\} converges to X‾\overline{X}, where X‾\overline{X} is some optimal solution to (P), and {(yk,Sk,Zk)}\{(y^{k},S^{k},Z^{k})\} is asymptotically minimizing for (D) with max⁡(P)=inf⁡(D)\max({\rm P})=\inf({\rm D}).

If {Xk}\{X^{k}\} is bounded, then the sequence {(yk,Sk,Zk)}\{(y^{k},S^{k},Z^{k})\} is also bounded, and all of its accumulation points of the sequence {(yk,Sk,Zk)}\{(y^{k},S^{k},Z^{k})\} are optimal solutions to (D).

Next we state the local linear convergence of Algorithm SDPNAL++.

Suppose that Assumption 2 holds. Let Algorithm SDPNAL++ be executed with stopping criteria (B1) and (B2). Assume that (D) satisfies condition (49). If the second order sufficient conditions (in the sense of the conditions in [1, Theorem 3.1373.137]) holds at X‾\overline{X}, where X‾\overline{X} is an optimal solution to (P), then the generated sequence {Xk}⊂P\{X^{k}\}\subset{\cal P} is bounded and {Xk}\{X^{k}\} converges to the unique optimal solution X‾\overline{X} with max⁡(P)=min⁡(D)\max({\rm P})=\min({\rm D}), and

for some θ∞∈[0,1)\theta_{\infty}\in[0,1) with the property that θ∞≪1\theta_{\infty}\ll 1 if σk→σ∞\sigma_{k}\to\sigma_{\infty} for any sufficiently large σ∞\sigma_{\infty}. The conclusions of Theorem 3.1 about {(yk,Sk,Zk)}\{(y^{k},S^{k},Z^{k})\} are also valid.

The conclusions of Theorem 3.2 follow from the results in [18, Theorem 2] and [17, Theorem 5 and Proposition 3] combined with [1, Theorem 3.1373.137]. ∎

Numerical Experiments

+ and SDP Problem Sets In our numerical experiments, we test the following SDP++ and SDP problem sets.

(i) SDP++ problems coming from the relaxation of a binary integer nonconvex quadratic (BIQ) programming:

This problem has been shown in that under some mild assumptions, it can equivalently be reformulated as the following completely positive programming (CPP) problem:

where Cppn{\cal C}_{pp}^{n} denotes the nn-dimensional completely positive cone. It is well known that even though Cppn{\cal C}_{pp}^{n} is convex, it is computationally intractable. To solve the CPP problem, one would typically relax Cppn{\cal C}_{pp}^{n} to S+n∩S≥0n{\cal S}^{n}_{+}\cap{\cal S}^{n}_{\geq 0}, and the relaxed problem has the form (P):

where the polyhedral cone P={X∈Sn∣X≥0}{\cal P}=\{X\in{\cal S}^{n}\mid X\geq 0\}. In our numerical experiments, the test data for QQ and cc are taken from Biq Mac Library maintained by Wiegele, which is available at http://biqmac.uni-klu.ac.at/biqmaclib.html.

(ii) SDP and SDP++ problems arising from the relaxation of maximum stable set problems. Given a graph GG with edge set E\mathcal{E}, the SDP and SDP++ relaxation θ(G)\theta(G) and θ+(G)\theta_{+}(G) of the maximum stable set problem are given by

where Eij=eiej\mboxT+ejei\mboxTE_{ij}=e_{i}e_{j}^{\mbox{{\tiny{T}}}}+e_{j}e_{i}^{\mbox{{\tiny{T}}}} and eie_{i} denotes the iith column of the identity matrix, P={X∈Sn∣X≥0}{\cal P}=\{X\in{\cal S}^{n}\mid X\geq 0\}. In our numerical experiments, we test the graph instances GG considered in , , and .

(iii) SDP++ relaxation for computing lower bounds for quadratic assignment problems (QAPs). Let Π\Pi be the set of n×nn\times n permutation matrices. Given matrices A,B∈SnA,B\in{\cal S}^{n}, the QAP is given by

For a matrix X=[x1,…,xn]∈ℜn×nX=[x_{1},\dots,x_{n}]\in\Re^{n\times n}, we will identify it with the n2n^{2}-vector x=[x1;… ;xn]x=[x_{1};\dots;x_{n}]. For a matrix Y∈Rn2×n2Y\in R^{n^{2}\times n^{2}}, we let YijY^{ij} be the n×nn\times n block corresponding to xixjTx_{i}x_{j}^{T} in the matrix xxTxx^{T}. It is shown in that vQAP∗v^{*}_{\rm QAP} is bounded below by the following number generated from the SDP++ relaxation of (59):

where EE is the matrix of ones, and δij=1\delta_{ij}=1 if i=ji=j, and otherwise, P={X∈Sn2∣X≥0}{\cal P}=\{X\in{\cal S}^{n^{2}}\mid X\geq 0\}. In our numerical experiments, the test instances (A,B)(A,B) are taken from the QAP Library .

(iv) SDP++ relaxations of clustering problems (RCPs) described in [14, eq. (13), up to a constant]:

where WW is the so-called affinity matrix whose entries represent the similarities of the objects in the dataset, ee is the vector of ones, and KK is the number of clusters, P={X∈Sn∣X≥0}{\cal P}=\{X\in{\cal S}^{n}\mid X\geq 0\}. All the data sets we tested are from the UCI Machine Learning Repository (available at http://archive.ics.uci.edu/ml/datasets.html). For some large data instances, we only select the first nn rows. For example, the original data instance “spambase” has 4601 rows, we select the first 1500 rows to obtain the test problem “spambase-large.2” for which the number “2” means that there are K=2K=2 clusters.

(v) SDP+ problems arising from the SDP relaxation of frequency assignment problems (FAPs) . The explicit description of the SDP in the form (PP) is given in [4, eq. (5)]:

where k>1k>1 is an integer, L(G,W):=Diag(We)−WL(G,W):={\rm Diag}(We)-W is the Laplacian matrix, Eij=eiejT+ejeiTE^{ij}=e_{i}e_{j}^{T}+e_{j}e_{i}^{T} with ei∈ℜne_{i}\in\Re^{n} being the iith standard unit vector and e∈ℜne\in\Re^{n} is the vector of all ones. Let

where P={X∈Sn∣Xij=0,∀(i,j)∈U;Xij≥0,∀(i,j)∈E∖U}{\cal P}=\{X\in{\cal S}^{n}\mid X_{ij}=0,\forall(i,j)\in U;X_{ij}\geq 0,\forall(i,j)\in E\setminus U\}.

We should mention that we can easily extend our algorithm to handle the following more general SDP++ problem:

where M∈XM\in{\cal X} is a given matrix. Thus (73) can also be solved by our proposed algorithm.

(vi) SDP relaxations for rank-1 tensor approximations (R1TA) :

It is shown in that (76) can be transformed into a standard SDP (up to a constant):

where CC is a constant matrix and A{\cal A} is a linear map, which depend on M,f,gM,f,g.

2 Numerical Results

In this subsection, we compare the performance of our SDPNAL++ algorithm with two other competitive publicly available first order methods based codes for solving large-scale SDP++ and SDP problems: an ADMM based solver, called SDPADhttp://www.bicmr.org/~wenzw/code/SDPAD-release-beta2.zip (release-beta2, released in December 2012) developed in and a two-easy-block-decomposition hybrid proximal extragradient method, which was called 2EBD-HPEwww2.isye.gatech.edu/~cod3/CamiloOrtiz/Software_files/2EBD-HPE_v0.2/2EBD-HPE_v0.2.zip (v0.2, released on May 31, 2013) and we call it 2EBD here, introduced in . Since we use the convergent ADMM with 33-block constraints introduced by Sun et al. (which was called ADMM3c but we call it ADMM++ here to indicate that it is an enhanced version of ADMM with convergence guantantee) to warm start SDPNAL++, we also list the numerical results obtained by running ADMM++ alone for the purpose of demonstrating the power and the importance of the proposed majorized semismooth Newton-CG algorithm for solving difficult SDP++ and SDP problems.

All our computational results for the tested SDP++ and SDP problems are obtained by running Matlab on a Linux server having 6 cores with 12 Intel Xeon X5650 processors at 2.67GHz and 32G RAM.

Note that numerically it is difficult to compute dist(0,∂ϕ^k(Wk+1)){\rm dist}(0,\partial\hat{\phi}_{k}(W^{k+1})) in the criterion (B3) for terminating Algorithm MSNCG directly, where Wk+1=(yk+1,Sk+1,Zk+1)W^{k+1}=(y^{k+1},S^{k+1},Z^{k+1}). Fortunately, by using the fact that for any closed convex cone C⊆Sn{\cal C}\subseteq{\cal S}^{n} and X∈CX\in{\cal C}, it holds that C⊆TC(X){\cal C}\subseteq{\cal T}_{{\cal C}}(X), we have from that

where RDk+1=A∗yk+1+Sk+1+Zk+1−CR_{D}^{k+1}={\cal A}^{*}y^{k+1}+S^{k+1}+Z^{k+1}-C. In order to avoid computing ΠK∗(−RDk+1−σk−1Xk)\Pi_{{\cal K}^{*}}(-R_{D}^{k+1}-\sigma_{k}^{-1}X^{k}), we majorize the second part of (78) by a simpler term. Specifically, by using the fact that for any X∈KX\in{\cal K} and Y∈SnY\in{\cal S}^{n}, ∥ΠK∗(Y−X)∥=∥ΠK∗(Y−X)−ΠK∗(−X)∥≤∥Y∥\|\Pi_{{\cal K}^{*}}(Y-X)\|=\|\Pi_{{\cal K}^{*}}(Y-X)-\Pi_{{\cal K}^{*}}(-X)\|\leq\|Y\|, we have

where Z~k\widetilde{Z}^{k} is the ZZ at the penultimate iteration when we compute (yk+1,Sk+1,Zk+1)=(y^{k+1},S^{k+1},Z^{k+1})= MSNCG (yk,Sk,Zk,Xk,σk)(y^{k},S^{k},Z^{k},X^{k},\sigma_{k}). Note that A∗yk+1+Sk+1+Z~k+σk−1Xk−C=ΠK(A∗yk+1+Z~k+σk−1Xk−C)∈K{\cal A}^{*}y^{k+1}+S^{k+1}+\widetilde{Z}^{k}+\sigma_{k}^{-1}X^{k}-C=\Pi_{{\cal K}}({\cal A}^{*}y^{k+1}+\widetilde{Z}^{k}+\sigma_{k}^{-1}X^{k}-C)\in{\cal K}. Thus for a given ζ∈(0,+∞)\zeta\in(0,+\infty), we can replace (B3) by the following criterion for terminating Algorithm MSNCG:

\max\Big{\{}\|{\cal A}(X^{k}+\sigma_{k}R_{D}^{k+1})-b\|,\zeta\sigma_{k}\|Z^{k+1}-\widetilde{Z}^{k}\|\Big{\}}\leq(\delta^{{}^{\prime}}_{k}/\sigma_{k})\|X^{k+1}-X^{k}\|, 0≤δk′↓00\leq\delta^{{}^{\prime}}_{k}\downarrow 0.

In our numerical experiments, we measure the accuracy of an approximate optimal solution (X,y,S,Z)(X,y,S,Z) for (P) and (D) by using the following relative residual:

where ηP=∥AX−b∥1+∥b∥\eta_{P}=\frac{\|{\cal A}X-b\|}{1+\|b\|}, ηD=∥A∗y+S+Z−C∥1+∥C∥\eta_{D}=\frac{\|{\cal A}^{*}y+S+Z-C\|}{1+\|C\|}, ηK=∥ΠK∗(−X)∥1+∥X∥\eta_{{\cal K}}=\frac{\|\Pi_{{\cal K}^{*}}(-X)\|}{1+\|X\|}, ηP=∥ΠP∗(−X)∥1+∥X∥\eta_{{\cal P}}=\frac{\|\Pi_{{\cal P}^{*}}(-X)\|}{1+\|X\|}, ηK∗=∥ΠK(−S)∥1+∥S∥\eta_{{\cal K}^{*}}=\frac{\|\Pi_{{\cal K}}(-S)\|}{1+\|S\|}, ηP∗=∥ΠP(−Z)∥1+∥Z∥\eta_{{\cal P}^{*}}=\frac{\|\Pi_{{\cal P}}(-Z)\|}{1+\|Z\|}, ηC1=∣⟨X, S⟩∣1+∥X∥+∥S∥\eta_{C1}=\frac{\left|\langle X,\,S\rangle\right|}{1+\|X\|+\|S\|}, ηC2=∣⟨X, Z⟩∣1+∥X∥+∥Z∥\eta_{C2}=\frac{\left|\langle X,\,Z\rangle\right|}{1+\|X\|+\|Z\|}. Additionally, we compute the relative gap by

Let ε>0\varepsilon>0 be a given accuracy tolerance. We terminate both SDPNAL++ and ADMM++ when

Note that SDPAD can be used to solve SDP++ problems of form (P) with P=S≥0n{\cal P}={\cal S}^{n}_{\geq 0} directly and we stop SDPAD when η<ε,\eta<\varepsilon, where η\eta is defined as in (79). However, it is shown recently that the direct extension of ADMM to the multi-block case is not necessarily convergent . Hence SDPAD, which is essentially an implementation of the direct extension of ADMM with the step length set at 1.6181.618 for solving the dual of SDP++ problems, does not have convergence guarantee in theory.

The implementation of 2EBD including its termination, along with ADMM++ and SDPAD, is done in the same way as in . For 2EBD, we reformulate QAP, RCP and R1TA problems as SDP problems in the standard form as these problems do not appear to have obvious two-easy blocks structures.

In our numerical experiments, we also use a restart strategy for SDPNAL++ if it is not able to achieve the required accuracy for the tested SDP++ problems. For some problems, even though ηP\eta_{P} and ηD\eta_{D} can reach the required accuracy tolerance, ηK\eta_{{\cal K}} or ηC1\eta_{C1} may stay above the required tolerance or stagnate. This may happen, as in the case for SDPNAL, because many of these SDP++ problems are degenerate at the optimal solutions. One way to overcome this difficulty is to apply ADMM++ to (P) using the most recently computed (y,S,Z,X,σ)(y,S,Z,X,\sigma) to restart SDPNAL++ when its progress is not satisfactory. From this point of view, our proposed algorithm is quite flexible.

Table 4.2 shows the number of problems that have been successfully solved to the accuracy of 10−610^{-6} in η\eta by each of the four solvers SDPNAL++, ADMM++, SDPAD and 2EBD, with the maximum number of iterations set at 2500025000 or the maximum computation time set at 9999 hours. As can be seen, only SDPNAL++ can solve all the problems to the accuracy of 10−610^{-6}. In particular, for the first time, we are able to solve all the 9595 difficult SDP++ problems arising from QAP problems to an accuracy of 10−610^{-6} efficiently, while ADMM++, SDPAD and 2EBD can successfully solve 39, 30 and 16 problems, respectively.

The authors would like to thank Jiawang Nie and Li Wang for sharing their codes on semidefinite relaxations of rank-1 tensor approximation problems.

References