s10589-022-00355-1
s10589-022-00355-1
s10589-022-00355-1
https://doi.org/10.1007/s10589-022-00355-1
Received: 19 May 2021 / Accepted: 3 February 2022 / Published online: 17 March 2022
© The Author(s) 2022
Abstract
We study two NP-complete graph partition problems, k-equipartition problems
and graph partition problems with knapsack constraints (GPKC). We introduce
tight SDP relaxations with nonnegativity constraints to get lower bounds, the SDP
relaxations are solved by an extended alternating direction method of multipliers
(ADMM). In this way, we obtain high quality lower bounds for k-equipartition on
large instances up to n = 1000 vertices within as few as 5 min and for GPKC prob-
lems up to n = 500 vertices within as little as 1 h. On the other hand, interior point
methods fail to solve instances from n = 300 due to memory requirements. We also
design heuristics to generate upper bounds from the SDP solutions, giving us tighter
upper bounds than other methods proposed in the literature with low computational
expense.
1 Introduction
Graph partition problems have gained importance recently due to their applications
in the area of engineering and computer science such as telecommunication [16] and
parallel computing [12]. The solution of a graph partition problem would serve to
partition the vertices of a graph G(V, E) into several groups under certain constraints
for capacity or cardinality in each group. The optimal solution is expected to have
the smallest total weight of cut edges. This problem is NP-complete [8]. Previous
This project has received funding from the European Union’s Horizon 2020 research and innovation
programme under the Marie Skłodowska-Curie Grant Agreement MINOA No 764759.
* Shudian Zhao
shudian.zhao@aau.at
Angelika Wiegele
angelika.wiegele@aau.at
1
Institut für Mathematik, Alpen-Adria-Universität Klagenfurt, Universitätsstraße 65‑67,
9020 Klagenfurt, Austria
13
Vol.:(0123456789)
252 A. Wiegele, S. Zhao
In this paper, we will introduce an extended ADMM algorithm and apply it to the
tight SDP relaxations for graph partition problems with nonnegativity constraints.
We will also introduce heuristics to obtain a feasible partition from the solution of
the SDP relaxation.
13
SDP‑based bounds for graph partition via extended ADMM 253
This paper is structured as follows. In Sect. 2, we will introduce two graph parti-
tion problems, the k-equipartition problem and the graph partition problems with
knapsack constraints (GPKC). We will discuss different SDP relaxations for both
problems. In Sect. 3, we will design an extended ADMM and illustrate its advan-
tages in solving large SDP problems with nonnegativity constraints. In Sect. 4, we
will introduce two post-processing methods used to generate lower bounds using the
output from the extended ADMM. In Sect. 5, we will design heuristics to build a
tight upper bound from the SDP solution to address the original problem. Numerical
results of experiments carried out on graphs with different sizes and densities will
be presented in Sect. 6. Section 7 concludes the paper.
1.2 Notation
We define by en the vector of all ones of length n, by 𝟎n the vector of all zeros of
length n and by 𝟎n×n the square matrix of all zeros of dimension n. We omit the sub-
script in case the dimension is clear from the context. The notation [n] stands for the
set of integers {1, … , n}. Let Sn denote the set of all n × n real symmetric matrices.
We denote by M ⪰ 0 that the matrix M is positive semidefinite and let Sn+ be the set
of all positive semidefinite matrices of order n × n. We denote by ⟨⋅, ⋅⟩ the trace inner
product. That is, for any M, N ∈ ℝn×n, we define ⟨M, N⟩ ∶= √ trace(M N). Its associ-
⊤
by diag(M) the operation of getting the diagonal entries of matrix M as a vector. The
projection on the cone of positive semidefinite matrices is denoted by P⪰0 (⋅). The
projection onto the interval [L, U] is denoted by P[L,U]. We denote by 𝜆(⋅) the eigen-
values. That is, for any M ∈ ℝn×n, we define 𝜆(M) the set of all eigenvalues of M.
Also, we denote 𝜆max (⋅) the largest eigenvalue. We denote by x ∼ U(0, 1) a variable x
from uniform distribution between 0 and 1. We define by argmaxk(⋅, s) the index set
of the s largest elements.
2.1 k‑equipartition problem
For a graph G(V, E), the k-equipartition problem is the problem of finding an equi-
partition of the vertices in V with k groups that has the minimal total weight of edges
cut by this partition. The problem can be described with binary variables,
1
min ⟨L, YY ⊤ ⟩
2
s.t. Yek = en ,
(1)
Y ⊤ en = mek ,
Yij ∈ {0, 1}, ∀i ∈ [n], j ∈ [k],
13
254 A. Wiegele, S. Zhao
where L is the Laplacian matrix for G, variable Y ∈ ℝn×k indicates which group each
vertex is assigned to and en (resp. ek ) is the all-one vector of dimension n (resp. k).
This problem is NP-hard and Lisser and Rendl [16] proposed the SDP relaxation
1
min ⟨L, X⟩
2
s.t. diag(X) = e, (2)
Xe = me,
X ⪰ 0,
where X ∈ Sn, and e ∈ ℝn is the all-one vector.
To tighten this SDP relaxation, we can add more inequalities to problem (2).
Here, we introduce two common inequalities for SDP relaxations derived from 0/1
problems.
The process of relaxing YY ⊤ to X implies that X is a nonnegative matrix, hence
the first group of inequalities we consider is X ≥ 0 and the corresponding new SDP
relaxation is
1
min ⟨L, X⟩
2
s.t. diag(X) = e,
Xe = me, (3)
X ⪰ 0,
X ≥ 0.
This kind of SDP is also called a doubly nonnegative program (DNN) since the
matrix variable is both, positive semidefinite and elementwise nonnegative.
Another observation is the following. For any vertices triple (i, j, k), if vertices i
and j are in the same group, and vertices j and k are in the same group, then vertices
i and k must be in the same group. This can be modeled by the transitivity con-
straints [16] given as follows
MET ∶= {X = (Xij ) ∣ Xij + Xik ≤ 1 + Xjk , ∀i, j, k ∈ [n]}.
The set formed by these inequalities is the so-called metric polytop. Adding the tran-
sitivity constraints to the SDP relaxation (3) gives
1
min ⟨L, X⟩
2
s.t. diag(X) = e,
Xe = me, (4)
X ⪰ 0,
X ≥ 0,
X ∈ MET.
13
SDP‑based bounds for graph partition via extended ADMM 255
Given a graph G(V, E) with nonnegative weights on the vertices and a capacity
bound W, the GPKC asks to partition the vertices such that the total weight of cut
edges is minimized and the total weight of vertices in each group does not exceed
the capacity bound W.
A mathematical programming formulation is given as
1
min ⟨L, YY ⊤ ⟩
2
s.t. Yen = en ,
(5)
Y ⊤ a ≤ Wen ,
Yij ∈ {0, 1}n×n , ∀i ∈ [n], j ∈ [n],
where Y ∈ ℝn×n, a ∈ ℝn is the vertex weight vector and W is the capacity bound. We
assume ai ≤ W ∀i ∈ [n], otherwise the problem is infeasible. Again, we can derive
the SDP relaxation
1
min ⟨L, X⟩
2
s.t. diag(X) = e, (6)
Xa ≤ We,
X ⪰ 0.
Similar as the k-equipartition problem, we can tighten the relaxation by imposing
sign constraints, i.e.,
1
min ⟨L, X⟩
2
s.t. diag(X) = e,
Xa ≤ We, (7)
X ⪰ 0,
X ≥ 0,
and additionally by imposing the transitivity constraints which gives
1
min ⟨L, X⟩
2
s.t. diag(X) = e,
Xa ≤ We, (8)
X ⪰ 0,
X ≥ 0,
X ∈ MET.
13
256 A. Wiegele, S. Zhao
3 Extended ADMM
The SDP relaxations introduced in Sect. 2 have a huge number of constraints, even
for medium-sized graphs. The total number of sign constraints for( X ) is O(n2 ) and
n
adding the constraint X ∈ MET in the SDP relaxations causes 3 extra con-
3
straints. Therefore, solving these tight relaxations is out of reach for state-of-the-art
algorithms like interior point methods (IPMs). However, finding high quality lower
bounds by tight SDP relaxations for graph partition problems motivates us to
develop an efficient algorithm that can deal with SDP problems with inequalities
and sign constraints on large-scale instances. Since the 2-block alternating direction
method of multiplier (ADMM) has shown efficiency in solving large-scale instances
that interior point methods fail to solve, we are encouraged to extend this algorithm
for SDP problems with inequalities in the form
min ⟨C, X⟩
s.t. A(X) = b,
B(X) = s,
(9)
X ⪰ 0,
L ≤ X ≤ U,
l ≤ s ≤ u,
where C ∈ Sn, A ∶ Sn → ℝm, B ∶ Sn → ℝq , b ∈ ℝm, l, u ∈ ℝq . We have the slack
variable s ∈ ℝq to form the inequality constraints, and l and u can be set to −∞ and
+∞ respectively. Also, L ∈ Sn and U ∈ Sn can be symmetric matrices filled with
all elements as −∞ and +∞ respectively. That makes formulation (9) able to repre-
sent SDP problems with any equality and inequality constraints. This formulation is
inspired by the work of [23]. All semidefinite programs given above fit into this for-
mulation. E.g., in (3) operator A includes the diagonal-constraint and the constraint
Xe = me, the operator B as well as the variables s are not present, L is the matrix of
all zeros and U the matrix having +∞ everywhere.
Following the ideas for the 2-block ADMM [18], we form the update scheme in
Algorithm 1 to solve the dual of problem (9).
Proof We derive this dual problem by rewriting the primal SDP problem (9) in a
more explicit way, namely
13
SDP‑based bounds for graph partition via extended ADMM 257
min ⟨C, X⟩
s.t. A(X) = b,
B(X) − s = 𝟎q ,
X ⪰ 0,
(11)
X ≥ L,
− X ≥ −U,
s ≥ l,
− s ≥ −u.
Then, the dual of (11) is
The following equivalences hold for each entry of the dual variables SL and SU
in (12)
Xij = Lij ⟺ SL,ij ≠ 0, SU,ij = 0;
Xij = Uij ⟺ SU,ij ≠ 0, SL,ji = 0;
Lij < Xij < Uij ⟺ SL,ij = SU,ij = 0.
13
258 A. Wiegele, S. Zhao
� �
l⊤ vl − u⊤ vu = lk vl,k − uk vu,k = inf{⟨v, 𝜔⟩ ∣ l ≤ 𝜔 ≤ u}
𝜔 (16)
vl,k ≠0 vl,k =0
which is also an optimal solution for the primal and dual problems. If both, the pri-
mal and the dual problem, have strictly feasible points, then a point (X, s, y, ȳ , Z, S, v)
is optimal if and only if
A(X) = b, B(X) = s, L ≤ X ≤ U, l ≤ s ≤ u, (19a)
A∗ y + B∗ ȳ + S + Z = C, ȳ = v, (19b)
X ⪰ 0, Z ⪰ 0, ⟨X, Z⟩ = 0, (19c)
Remark 1 (19d) and (19e) is derived from the optimality conditions for (11), namely
from
(Xij − Lij )SL,ij = 0, SL,ij ≥ 0, Xij ≥ Lij , ∀i ∈ [n] ∀j ∈ [n],
(Uij − Xij )SU,ij = 0, SU,ij ≥ 0, Xij ≤ Uij , ∀i ∈ [n] ∀j ∈ [n],
(20)
(sk − lk )vl,k = 0, vl,k ≥ 0, sk ≥ lk , ∀k ∈ [q],
(lk − sk )vl,k = 0, vl,k ≥ 0, sk ≤ uk , ∀k ∈ [q].
13
SDP‑based bounds for graph partition via extended ADMM 259
In Step 1, the minimization over (y, ȳ ), we force the first order optimality con-
ditions to hold, i.e., we set the gradient with respect to (y, ȳ ) to zero and thereby
obtain the explicit expression
( k+1 ) ( )−1 ( b k + Zk − C + 1 Xk )
)
y AA∗ AB∗ − A(S
= 𝜎k 𝜎k . (21)
ȳ k+1 BA∗ BB∗ + I −B(Sk + Z k − C + 𝜎1k X k ) + vk + 𝜎1k sk
Note that the size of yk is the number of equality constraints and the size of ȳ k the
number of inequality constraints. By abuse of notation we write AA∗ for the matrix
product formed by the system matrix underlying the operator A(⋅). Similarly for
BA∗, BB∗.
In practice, we solve (21) in the following way. First, we apply the Cholesky
decomposition
( )
AA∗ AB∗
RR⊤ =
BA∗ BB∗ + I
=∶ Q. (22)
Since A and B are row independent, the Cholesky decomposition exists. Moreo-
ver, the Cholesky decomposition only needs to be computed once since matrix Q
remains the same in all iterations. Then, we update (y, ỹ ) as
( k+1 )
⊤ y
RR
ȳ k+1
= rhs (23)
by solving two systems of equations subsequently, i.e., R𝐱 = rhs and then solve the
system R⊤ 𝐲 = 𝐱 and thereby having solved RR⊤ 𝐲 = rhs.
In Step 2, the minimization amounts to a projection onto the non-negative
orthant.
13
260 A. Wiegele, S. Zhao
𝜎k
Sk+1 = arg min S − F1 (S) + ⟨X k , S⟩ + ‖A∗ yk+1 + B∗ ȳ k+1 + S + Z k − C‖2F ,
� 2
1
arg min Sij ≥0 ‖M k+1
ij
+ S ij − L ‖2 , Sij ≥ 0,
𝜎 k ij
Sijk+1 =
− arg min Sij ≤0 ‖Mijk+1 − Sij + 𝜎1k Uij ‖2 , Sij ≤ 0,
�
P≥0 (−Mijk+1 + 𝜎1k Lij ), Sij ≥ 0,
=
−P≤0 (Mijk+1 + 𝜎1k Uij ), Sij ≤ 0,
� 1
P (𝜎 k Mijk+1 ) − Mijk+1 , Sij ≥ 0,
𝜎 k ≥Lij
= 1
P (𝜎 k Mijk+1 ) − Mijk+1 , Sij ≤ 0,
𝜎 k ≤Uij
1
= P (𝜎 k Mijk+1 ) − Mijk+1 ,
𝜎 k [Lij ,Uij ]
(24)
where M k+1
∶= A y ∗ k+1
+ B ȳ∗ k+1
+Z + k 1 k
𝜎k
X − C . Hence,
1
Sk+1 = P (𝜎 k M k+1 ) − M k+1 . (25)
𝜎 k [L,U]
Similarly, in Step 3 for vk+1 we have
1 1
vk+1 = P (𝜎 k ȳ k+1 − sk ) − (̄yk+1 − k sk ) (26)
𝜎 k [l,u] 𝜎
In Step 3, for Z k+1 ⪰ 0, the minimizer is found via a projection onto the cone of
positive semidefinite matrices
𝜎k
Z k+1 = arg min Z⪰0 ⟨X k , Z⟩ + ‖A∗ yk+1 + B∗ ȳ k+1 + Sk+1 + Z − C‖2F
2
1
= arg min Z⪰0 ‖A∗ yk+1 + B∗ ȳ k+1 + Sk+1 + Z + k X k − C‖2F (27)
𝜎
= − P⪯0 (N k+1 ),
13
SDP‑based bounds for graph partition via extended ADMM 261
3.1 Stepsize adjustment
We relax the original graph partition problem to an SDP problem, thereby generat-
ing a lower bound on the original problem. However, when solving the SDP by a
first-order method, it is hard to reach a solution to high precision in reasonable com-
putational time. Therefore, we stop the ADMM already when a medium precision is
reached. In this way, however, the solution obtained by the ADMM is not always a
safe underestimate for the optimal solution of the SDP problem. Hence, we need a
post-processing algorithm that produces a safe underestimate for the SDP relaxation,
which is then also a lower bound for the graph partition problem.
Theorem 1 leads to the first post-processing algorithm. Before stating it, we
rewrite Lemma 3.1 from [13] in our context.
Lemma 2 Let X, Z ∈ Sn, and 0 ≤ 𝜆(X) ≤ x̄ , where 𝜆(⋅) indicates the operation of
getting the eigenvalues of the respective matrix. Then
�
⟨X, Z⟩ ≥ x̄ ⋅ 𝜆(Z).
𝜆(Z)<0
13
262 A. Wiegele, S. Zhao
Given an optimal solution X ∗ from (11) and the free variable ỹ and nonnegative vari-
ables (̃vl , ṽ u , S̃ L , S̃ U ), we define Z ∶= C − A∗ ỹ − B∗ ṽ l + B∗ ṽ u − SL + SU and have
= ⟨C − A∗ ỹ − B∗ ṽ l + B∗ ṽ u − SL + SU , X ∗ ⟩, (30d)
= ⟨Z, X ∗ ⟩, (30e)
∑
≥ x̄ 𝜆(Z),
(30f)
𝜆(Z)<0
where inequality (30c) holds because ṽ l , ṽ u , S̃ U and S̃ L are nonnegative. This gives
us a lower bound for the problem (11) as
�
lb ∶= b⊤ ỹ + l⊤ ṽ l − u⊤ ṽ u + ⟨L, S̃ L ⟩ − U ⋅ S̃ U + x̄ 𝜆(Z).
(31)
𝜆(Z)<0
13
SDP‑based bounds for graph partition via extended ADMM 263
◻
As for the k-equipartition problem (3), we have X ⪯ m ⋅ I for any feasible solu-
tion X. Hence, we let x̄ = m when applying post-processing Algorithm 2 for k-equi-
partition problems. As for the GPKC, we have no value x̄ at hand.
Another way to get a safe lower bound for (9) is to tune the output results and get
a feasible solution for its dual problem (10). This is outlined as Algorithm 3. The
brief idea is to build a feasible solution (ynew , vnew , Znew , Snew ) from an approximate
solution (̃y, ṽ , Z, ̃ . To guarantee feasibility of (ynew , vnew, Znew , Snew ), we first get a
̃ S)
Znew by projecting Z̃ on the cone of positive semidefinite matrices. We then keep
Znew fixed and hence have a linear problem. The final step is to find the optimal solu-
tion for this linear programming problem.
In Algorithm 1, the condition Z ⪰ 0 is guaranteed by the projection opera-
tion onto the cone of positive semidefinite matrices. Hence, we can skip Step 1 in
Algorithm 3.
We would like to remark that the linear program can be infeasible, but this algo-
rithm works well when the input solution has a good precision. The comparisons of
numerical results of these two post processing algorithms are given in Sect. 6.2.
13
264 A. Wiegele, S. Zhao
The first heuristic is a hyperplane rounding algorithm that is inspired by the Goe-
mans and Williamson algorithm for the max-cut problem [10] and Frieze and Jer-
rum [7]’s improved randomized rounding algorithm for k-cut problems.
Note that the Goemans and Williamson algorithm as well as the Frieze and Jer-
rum algorithm are designed for cut-problems formed as models on variables in
{−1∕(k − 1), 1}n, while our graph partition problems are formed on {0, 1}n. There-
fore, we need to transform the SDP solutions of problems (3) and (7) before apply-
ing the hyperplane rounding procedure. Our hyperplane rounding algorithm for
k-equipartition is given in Algorithm 4.
13
SDP‑based bounds for graph partition via extended ADMM 265
We next propose a heuristic via the idea of vector clustering. Given a feasible
solution X of (3), we can get V ∈ ℝn×n with VV ⊤ = X . Let vi be the i-th row of
V and associate it with vertex i in the graph. The problem of building a feasi-
ble solution from X can then be interpreted as the problem of clustering vectors
v1 , … , vn into k groups. This can be done heuristically as follows.
This process is repeated k − 1 times until all vectors are assigned in a group, yield-
ing a k-equipartition for the vertices in V. The details are given in Algorithm 5.
13
266 A. Wiegele, S. Zhao
We explain in this section how we determine the closest neighbor for a vector. The
idea of vector clustering is to have vectors with more similarities in the same group.
In our setting, we need a measure to define the similarity between two vectors
according to the SDP solution.
For a pair of unit vectors vi , vj , using the relationship cos ∡(vi , vj ) = v⊤i vj one can
measure the angle between vi and vj.
By the setting VV ⊤ = X , we have for any i ∈ [n]
13
SDP‑based bounds for graph partition via extended ADMM 267
In Algorithm 5, we choose a vector as the center of its group and then find vec-
tors surrounding it and assign them to this group.
In each iteration we randomly choose one vector to be the center.
13
268 A. Wiegele, S. Zhao
2-opt heuristics are used to boost solution qualities for various combinato-
rial problems, e.g., TSP [15]. We apply this method after running our round-
ing algorithms for the graph partition problems to improve the upper bounds.
According to the rounding method we choose, the hybrid strategies are named as
Hyperplane+2opt (also short as Hyp+2opt) and Vc+2opt for Algorithms 4 and 5,
respectively.
The 2-opt heuristic for bisection problems is outlined in Algorithm 7. Given a
partition with more than two groups, we apply 2-opt on a pair of groups (Ps , Pt ),
which is randomly chosen from all groups in the partition, and repeat it on a differ-
ent pair of groups until no more improvement can be found.
13
SDP‑based bounds for graph partition via extended ADMM 269
For GPKC, some adjustments are needed because of the capacity constraints. We
only traverse among swaps of vertices that still give feasible solutions to find the
best swap that improves the objective function value.
6 Numerical results
We implemented all the algorithms in MATLAB and run the numerical experi-
ments on a ThinkPad-X1-Carbon-6th with 8 Intel(R) Core(TM) i7-8550U CPU @
1.80GHz. The maximum iterations for extended ADMM is set to be 20 000 and the
stopping tolerance 𝜀tol is set to be 10−5 by default.
The code can be downloaded from https://github.com/shudianzhao/ADMM-GP.
6.1 Instances
1. Choose edges of a complete graph randomly with probability 20%, 50% and 80%.
2. The nonzero edge weights are integers in the interval (0, 100].
3. Choose the partition numbers as divisors of the graph size n.
We name those three groups of instances rand20, rand50 and rand80, respectively.
13
270 A. Wiegele, S. Zhao
Furthermore, we consider instances that have been used in [2]. These are con-
structed in the following way.
– G|V|,|V|p: Graphs G(V, E), with |V| ∈ {124, 250, 500, 1000} and four individual
edge probabilities p. These probabilities were chosen depending on |V|, so that
the average expected degree of each node was approximately |V|p = 2.5, 5, 10, 20
[14].
– U|V|,|V|𝜋d2: For a graph G(V, E), first choose 2|V| independent numbers uni-
formly from the interval (0, 1) and view them as coordinates of |V| nodes on
the unit square. Then, an edge is inserted between two vertices if and only if
their Euclidian distance is less or equal to some pre-specified value d [14]. Here
|V| ∈ {500, 1000} and |V|𝜋d2 ∈ {5, 10, 20, 40}.
– mesh: Instances from finite element meshes; all edge weights are equal to one
[5].
For GPKC we generate instances as described in [19]. This is done by the following
steps.
1. Generate a random matrix with 20%, 50% and 80% of nonzeroes edge weights
between 0 and 100, as vertex weights choose integers from the interval (0, 1000].
2. Determine a feasible solution for this instance for a k-equipartition problem by
some heuristic method.
3. Produce 1000 permutations of the vertices in this k-equipartition.
4. Calculate the capacity bound for each instance and select the one such that only
10% of instances are feasible.
Our first numerical comparisons evaluate the different post-processing methods used
to produce safe lower bounds for the graph partition problems. Recall that in Sect. 4,
we introduced Algorithms 2 and 3.
Figure 1 shows how the lower bounds from the post-processing methods evolve
as the number of iterations of the extended ADMM increases. We used the DNN
relaxation on an instance of the k-equipartition problem of size n = 100 and k = 2.
There are three lines: EB_eADMM represents the lower bounds obtained by the rig-
orous lower bound method given in Algorithm 3, LpB_eADMM represents the lin-
ear programming bound given in Algorithm 2 and dualOfv_eADMM displays the
approximate dual objective function value obtained by our extended ADMM. Fig-
ure 1a shows that the rigorous error bound method gives tighter bounds in general,
while the linear programming bound method is more stable and less affected by the
quality of the dual objective function value. The other figures indicate that for small
13
SDP‑based bounds for graph partition via extended ADMM 271
(a) (b)
(c) (d)
Fig. 1 Lower bounds obtained with post processing
k, the rigorous error bound method gives tighter bounds (Fig. 1b), but as k increases,
the linear programming bound method dominates (Fig. 1c, d).
6.3.1 Comparison of the Lower Bounds using SDP, DNN and Transitivity Constraints
In this section we want to highlight the improvement of the bounds obtained from
the relaxations introduced in Sect. 2. Note that the timings for computing these
bounds are discussed later in Sect. 6.3.2.
13
272 A. Wiegele, S. Zhao
Tables 1, 2 and 3 compare the lower bounds obtained from the relaxations for the
k-equipartition problem. The improvements are calculated as (dDNN − dSDP )∕dSDP
13
SDP‑based bounds for graph partition via extended ADMM 273
13
274 A. Wiegele, S. Zhao
13
SDP‑based bounds for graph partition via extended ADMM 275
We list the results for solving the SDP (2) using an ADMM, and the results
when solving the DNN relaxation (3) by our extended ADMM and by Mosek. We
run the experiments on randomly generated graphs with 80% density, the results
are given in Table 4.
Table 4 shows that the convergence behavior of the extended ADMM is not
worse than the 2-block ADMM for SDP problems, and we can get a tighter lower
bound by forcing nonnegativity constraints in the model without higher computa-
tional expense.
The results for Mosek solving problem (3) clearly show that these problems
are out of reach for interior point solvers. A “−” indicates that Mosek failed to
solve this instance due to memory requirements.
We now compare the heuristics introduced in Sect. 5 to get upper bounds for the
graph partition problems.
We use the solutions obtained from the DNN relaxation to build upper bounds
for the k-equipartition problem since the experimental results in Sect. 6.4.1
showed that the DNN relaxation has a good tradeoff between quality of the bound
and solution time.
We compare to the best know primal solution given in [2]; we set the time
limit for our heuristics to 5 s. The gaps between the upper bounds by Vc+2opt
(resp. Hyp+2opt) and the best know solution are shown in Table 5. The primal
bounds that are proved to be optimal are marked with “ ∗”.
Table 5 shows that on small instances our heuristics can find upper bounds not
worse than the best known upper bounds. For large instances, Vc+2opt performs
better than Hyp+2opt. The corresponding upper bounds are less than 10 % away
from the best known upper bounds, some of them computed using 5 h.
We next compare the upper bounds for the instances rand80, rand50, and
rand20. Figure 2 shows that, for small instances (i.e., n = 100 ), our hybrid meth-
ods (eg. Vc+2opt and Hyp+2opt) can find tight upper bounds quickly while
simulated annealing (SA) needs a longer burning down time to achieve an upper
bound of good quality.
Figure 3 shows how the heuristics behave for large-scale instances (i.e,
n = 1000 ). The time limit is set to 5 s. Compared to Fig. 2, Vc+2opt and
Hyp+2opt take more time to generate the first upper bounds but these upper
bounds are much tighter than the one found by SA. Also, when the time limit is
reached, the upper bounds found by Vc+2-opt and Hyp+2opt are much tighter
than those from SA.
Tables 6, 7 and 8 give a detailed comparison of the upper bounds for the instances
rand80, rand50, and rand20, respectively. We display the gap between the lower
bounds obtained from the DNN relaxation (3) and the upper bounds built by varied
heuristics. The time limit for the heuristics is set to 1 s for n ∈ {100, 200} and 3 s for
n ∈ {900, 1000} for rand80. For rand50 and rand20 we set the limit to 5 s. The best
upper bounds are typeset in bold.
13
276 A. Wiegele, S. Zhao
13
SDP‑based bounds for graph partition via extended ADMM 277
Table 4 (continued)
ADMM Mosek
13
278 A. Wiegele, S. Zhao
Table 4 (continued)
ADMM Mosek
The numbers confirm that Vc+2opt and Hyp+2opt can build tighter upper
bounds than SA, in particular for the dense graphs rand80. Overall, Vc+2opt has the
best performance.
Comparing lower and upper bounds, the numerical results show that our meth-
ods perform very well on dense graphs; for rand80 the largest gap is less than 4%,
for rand50 the largest gap is less than 6%. As the randomly generated graph gets
sparser, the gap between lower bounds and upper bounds increases, for rand20 the
gap is bounded by 12%.
Comparing Tables 6, 7 and 8 , it can be observed that the gaps get larger as the
graph gets sparser. We conjecture that this is due to less tightness of the lower bound
which is supported by the following experiment.
We regard the best upper bounds obtained from all three heuristics within an
increased time limit of 10 s. In this way, we should have an upper bound that approx-
imates the optimal solution well enough for all densities. As an example, in Table 9
we report for a graph on 100 vertices and three different densities the lower and
these upper bounds. We can clearly see that when the graph gets sparser, adding the
nonnegativity constraints to the SDP relaxation (2) gains more improvement. How-
ever, the gap between lower and upper bound gets worse as the graph gets sparser.
6.4.1 Comparison of the Lower Bounds using SDP, DNN and Transitivity Constraints
We now turn our attention to the GPKC problem. We run experiments simi-
lar to those presented in Sect. 6.3.1, i.e., we solve DNN (7) to obtain the solu-
tion X DNN . Table 10 shows the lower bounds for GPKC problems on the ran-
domly generated graphs rand80. The improvements are calculated in the same
13
SDP‑based bounds for graph partition via extended ADMM 279
Table 5 Feasible solutions for the graphs from [2] (the time limit is 5 s, optimal solutions are indicated
by a “ ∗”)
Graph n k Vc+2opt Gap% Hyp+2opt Gap% Best Bound
13
280 A. Wiegele, S. Zhao
(a) (b)
(c) (d)
Fig. 2 Upper bounds for k-equipartition problems on rand80 with n = 100
Table 11 compares the computation times when solving the DNN relaxations for
the GPKC (7) by the extended ADMM and Mosek, respectively. A “–” indicates for
extended ADMM that the maximum number of iterations is reached, and for Mosek
that the instance could not be solved due to memory requirements. The results of the
SDP relaxation (6) in Table 10 are computed using Mosek, hence we omit these tim-
ings in Table 11.
In the thesis [19], numerical results on the GPKC are presented using an LP
relaxation. However, the method therein is capable of getting bounds either for very
sparse graphs of density at most 6 % (up to 2000 vertices) or for graphs with up to
140 vertices and density of at most 50 %. We clearly outperform these results in
terms of the density of the graphs that can be considered.
While for instances of size n = 100, the timings of the extended ADMM and
Mosek are comparable, the picture rapidly changes as n increases. For n ≥ 300,
Mosek cannot solve any instance while the extended ADMM manages to obtain
bounds for instances with n = 500 within 1 h.
13
SDP‑based bounds for graph partition via extended ADMM 281
(a) (b)
(c) (d)
Fig. 3 Upper bounds for k-equipartition problems on rand80 with n = 1000
As mentioned in Sect. 5, the simulated annealing heuristic for the QAP cannot be
applied to the GPKC, because there is no equivalence between the GPKC and the
QAP. Therefore, we compare the upper bounds for the GPKC from the heuristic
introduced in Sect. 5.3 with the lower bounds given by the DNN relaxation (7).
We set a time limit of 5 s.
Also, we set the maximum number of iterations to be 50,000 for the sparse
graph GPKCrand20, while the maximum numbers of iterations for GPKCrand50
and GPKCrand80 are 20,000. In Tables 12, 13 and 14, a ∗ indicates for the
extended ADMM that the maximum number of iterations is reached.
Table 12 shows that the gaps between the lower and upper bounds are less
than 3% for GPKCrand80, they are less than 7% for GPKCrand50, see Table 13,
and for GPKCrand20, the gaps are less than 15%, see Table 14. Similar to the
k-equipartition problem, we note that computing the lower bound on the sparse
instances is harder. The maximum number of iterations is reached for rand20
much more often than for rand80 or rand50.
13
282 A. Wiegele, S. Zhao
Table 6 Feasible solutions for randomly generated graphs rand80 (for instances with n ∈ {100, 200}, the
time limit is 1 s; for instances with n ∈ {900, 1000}, the limit is 3 s)
n k lbDNN Vc+2opt Gap% Hyp+2opt Gap% SA Gap%
100 2 86, 605.32 88, 717 2.44 88, 910 2.66 88, 958 2.72
4 132, 491.14 136, 591 3.09 136, 458 2.99 137, 372 3.68
5 142, 647.17 146, 915 2.99 147, 276 3.24 147, 265 3.24
10 165, 781.01 169, 756 2.40 169, 786 2.42 177, 396 7.01
20 181, 444.03 183, 251 1.00 183, 460 1.11 183, 676 1.23
25 185, 340.17 186, 715 0.74 186, 682 0.72 189, 530 2.26
200 2 362, 366.87 369, 966 2.10 370, 311 2.19 371, 930 2.64
4 550, 178.14 564, 627 2.63 564, 831 2.66 570, 125 3.63
5 590, 123.76 605, 614 2.62 605, 316 2.57 622, 799 5.54
10 677, 024.59 692, 776 2.33 692, 994 2.36 711, 926 5.16
20 730, 635.43 742, 377 1.61 742, 386 1.61 758, 429 3.80
40 766, 592.49 771, 494 0.64 771, 889 0.69 784, 773 2.37
⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮
900 2 7, 667, 181.82 7, 765, 356 1.28 7, 774, 223 1.40 8, 049, 595 4.99
5 12, 326, 530.46 12, 550, 665 1.82 12, 551, 486 1.82 12, 909, 228 4.73
10 13, 957, 505.42 14, 221, 471 1.89 14, 225, 896 1.92 14, 535, 127 4.14
20 14, 854, 713.50 15, 103, 466 1.67 15, 101, 121 1.66 15, 354, 017 3.36
30 15, 197, 038.17 15, 411, 096 1.41 15, 409, 817 1.40 15, 622, 960 2.80
50 15, 518, 811.79 15, 674, 587 1.00 15, 673, 142 0.99 15, 841, 316 2.08
100 15, 821, 635.34 15, 892, 607 0.45 15, 891, 366 0.44 16, 007, 565 1.18
300 16, 068, 306.79 16, 073, 556 0.03 16, 073, 569 0.03 16, 118, 899 0.31
1000 2 9, 520, 746.69 9, 624, 982 1.09 9, 643, 410 1.29 9, 966, 328 4.68
5 15, 287, 792.55 15, 556, 241 1.76 15, 567, 063 1.83 15, 976, 113 4.50
10 17, 302, 696.39 17, 619, 665 1.83 17, 623, 783 1.86 17, 993, 155 3.99
20 18, 404, 248.61 18, 699, 789 1.61 18, 703, 350 1.63 19, 000, 174 3.24
40 19, 056, 214.07 19, 282, 129 1.19 19, 282, 815 1.19 19, 506, 580 2.36
50 19, 211, 689.51 19, 402, 983 1.00 19, 405, 492 1.01 19, 606, 983 2.06
100 19, 578, 435.97 19, 672, 071 0.48 19, 670, 328 0.47 19, 808, 050 1.17
200 19, 800, 076.60 19, 826, 975 0.14 19, 826, 442 0.13 19, 911, 225 0.56
7 Conclusions
In this paper we first introduce different SDP relaxations for k-equipartition prob-
lems and GPKC problems. Our tightest SDP relaxations, problems (4) and (8),
contain all nonnegativity constraints and transitivity constraints, which bring O(n3 )
constraints in total. Another kind of tight SDP relaxation, (3) and (7), has only non-
negativity constraints. While it is straight forward to consider the constraint X ≥ 0 in
a 3-block ADMM, including all the transitivity constraints is impractical. Therefore,
our strategy is to solve (3) and (7) and then adding violated transitivity constraints in
loops to tighten both SDP relaxations.
13
SDP‑based bounds for graph partition via extended ADMM 283
Table 7 Feasible solutions for randomly generated graphs rand50 (time limit 5 s)
n k lbDNN Vc+2opt Gap% Hyp+2opt Gap% SA Gap%
100 2 47, 928.23 50, 108 4.55 50, 108 4.55 50, 256 4.86
4 74, 349.78 77, 861 4.72 77, 904 4.78 77, 939 4.83
5 80, 404.43 84, 224 4.75 84, 334 4.89 84, 391 4.96
10 94, 925.78 98, 649 3.92 98, 344 3.60 98, 546 3.81
20 105, 704.48 108, 081 2.25 108, 016 2.19 108, 028 2.20
25 108, 816.55 110, 550 1.59 110, 443 1.49 110, 397 1.45
200 2 209, 592.40 216, 781 3.43 216, 884 3.48 217, 758 3.90
4 320, 218.87 333, 509 4.15 333, 828 4.25 334, 519 4.47
5 344, 366.46 358, 788 4.19 359, 029 4.26 359, 623 4.43
10 398, 653.05 414, 227 3.91 414, 248 3.91 412, 837 3.56
20 434, 293.38 447, 107 2.95 447, 410 3.02 446, 754 2.87
40 462, 004.09 468, 072 1.31 468, 126 1.33 467, 900 1.28
⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮
900 2 4, 644, 349.58 4, 729, 597 1.84 4, 739, 736 2.05 4, 751, 219 2.30
5 7, 481, 538.62 7, 696, 505 2.87 7, 700, 566 2.93 7, 755, 369 3.66
10 8, 499, 452.66 8, 754, 562 3.00 8, 755, 697 3.01 8, 862, 487 4.27
20 9, 078, 072.19 9, 325, 687 2.73 9, 326, 356 2.73 9, 469, 542 4.31
30 9, 308, 248.74 9, 535, 446 2.44 9, 536, 350 2.45 9, 672, 001 3.91
50 9, 533, 366.09 9, 716, 248 1.92 9, 716, 489 1.92 9, 848, 828 3.31
1000 2 5, 760, 088.00 5, 870, 879 1.92 5, 871, 853 1.94 5, 899, 773 2.43
5 9, 278, 976.84 9, 540, 363 2.82 9, 540, 969 2.82 9, 658, 512 4.09
10 10, 534, 126.08 10, 840, 528 2.91 10, 845, 227 2.95 11, 041, 031 4.81
20 11, 242, 920.84 11, 548, 172 2.72 11, 545, 943 2.70 11, 764, 487 4.64
40 11, 684, 089.99 11, 934, 463 2.14 11, 934, 795 2.15 12, 122, 767 3.75
50 11, 794, 006.69 12, 020, 096 1.92 12, 022, 058 1.93 12, 200, 503 3.45
In order to deal with the SDP problems with inequality and bound constraints,
we extend the classical 2-block ADMM, which only deals with equations, to the
extended ADMM for general SDP problems. This algorithm is designed to solve
large instances that interior point methods fail to solve. We also introduce heuristics
that build upper bounds from the solutions of the SDP relaxations. The heuristics
include two parts, first we round the SDP solutions to get a feasible solution for the
original graph partition problem, then we apply 2-opt methods to locally improve
this feasible solution. In the procedure of rounding SDP solutions, we introduce two
algorithms, the vector clustering method and the generalized hyperplane rounding
method. Both methods perform well with the 2-opt method.
The extended ADMM can solve general SDP problems efficiently. For SDP prob-
lems with bound constraints, the extended ADMM deals with them separately from
inequalities and equations, thereby solving the problems more efficiently. Mosek
fails to solve the DNN relaxations of problems with n ≥ 300 due to memory require-
ments while the extended ADMM can solve the DNN relaxations for k-equipartition
13
284 A. Wiegele, S. Zhao
Table 8 Feasible solutions for randomly generated graphs rand20 (time limit 5 s)
n k lbDNN Vc+2opt Gap% Hyp+2opt Gap% SA Gap%
100 2 14, 747.21 16, 152 9.53 16, 152 9.53 16, 182 9.73
4 23, 468.28 26, 029 10.91 26, 088 11.16 26, 046 10.98
5 25, 696.90 28, 443 10.69 28, 465 10.77 28, 320 10.21
10 31, 618.43 34, 180 8.10 34, 196 8.15 34, 263 8.36
20 36, 793.39 38, 709 5.21 38, 712 5.21 38, 832 5.54
25 38, 432.16 39, 836 3.65 40, 009 4.10 39, 671 3.22
200 2 70, 566.72 75, 667 7.23 75, 490 6.98 76, 591 8.54
4 109, 373.17 118, 849 8.66 118, 546 8.39 119, 244 9.02
5 118, 429.95 128, 529 8.53 128, 778 8.74 129, 850 9.64
10 140, 350.63 151, 485 7.93 152, 110 8.38 152, 101 8.37
20 156, 812.40 166, 711 6.31 167, 022 6.51 166, 371 6.10
40 170, 920.84 177, 531 3.87 177, 628 3.92 177, 696 3.96
⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮
900 2 1, 715, 987.61 1, 782, 307 3.86 1, 786, 114 4.09 1, 796, 268 4.68
5 2, 782, 017.73 2, 932, 461 5.41 2, 938, 334 5.62 2, 969, 129 6.73
10 3, 184, 081.52 3, 366, 215 5.72 3, 366, 617 5.73 3, 409, 458 7.08
20 3, 430, 495.43 3, 613, 787 5.34 3, 615, 197 5.38 3, 674, 447 7.11
30 3, 535, 568.53 3, 707, 785 4.87 3, 709, 718 4.93 3, 768, 366 6.58
50 3, 644, 361.83 3, 792, 021 4.05 3, 794, 172 4.11 3, 862, 982 6.00
1000 2 2, 141, 688.49 2, 219, 733 3.64 2, 222, 627 3.78 2, 235, 931 4.40
5 3, 465, 886.87 3, 643, 532 5.13 3, 653, 694 5.42 3, 692, 085 6.53
10 3, 960, 838.71 4, 182, 733 5.60 4, 179, 458 5.52 4, 253, 642 7.39
20 4, 260, 408.03 4, 482, 570 5.21 4, 483, 451 5.24 4, 593, 686 7.82
40 4, 463, 023.58 4, 659, 444 4.40 4, 660, 450 4.42 4, 783, 289 7.18
50 4, 516, 439.34 4, 699, 391 4.05 4, 699, 495 4.05 4, 825, 571 6.84
Table 9 Feasible solutions for the randomly generated graphs rand80, rand50, rand20 (n = 100 k = 5,
with an increased time limit for heuristics of 10 s)
Density% lbSDP lbDNN Improvement% ub Gap%
13
SDP‑based bounds for graph partition via extended ADMM 285
100 26536 79, 801.90 79, 863.89 0.08 80, 641.38 1.05
14023 117, 886.58 121, 989.72 3.48 122, 471.69 3.89
11434 125, 769.08 132, 094.08 5.03 132, 441.03 5.30
6321 141, 338.32 154, 560.71 9.36 154, 733.56 9.48
3668 149, 417.80 169, 471.95 13.42 169, 667.97 13.55
3043 151, 321.28 173, 607.35 14.73 173, 792.45 14.85
200 50084 334, 496.25 334, 909.68 0.12 336, 293.72 0.54
25787 489, 900.72 511, 836.11 4.48 512, 694.32 4.65
21741 515, 782.13 544, 827.75 5.63 545, 325.23 5.73
11404 581, 909.21 640, 300.76 10.03 640, 580.64 10.08
6686 612, 092.40 692, 857.83 13.19 693, 182.87 13.25
3419 632, 993.42 737, 482.61 16.51 737, 654.49 16.53
problems on large instances up to n = 1000 within as few as 5 min and for GPKC
problems up to n = 500 within as little as 1 h.
We run numerical tests on instances from the literature and on randomly gener-
ated graphs with different densities. The results show that SDP relaxations can pro-
duce tighter bounds for dense graphs than sparse graphs. In general, the results show
that nonnegativity constraints give more improvement when k increases.
We compare our heuristics with a simulated annealing method in the genera-
tion of upper bounds for k-equipartition problems. Our heuristics obtain upper
bounds displaying better quality within a short time limit, especially for large
instances. Our methods show better performance on dense graphs, where the final
gaps are less than 4% for graphs with 80% density, while the gaps between lower
and upper bounds for sparse graphs with 20% density are bounded by 12%. This
is mainly due to the tighter lower bounds for dense graphs.
13
286 A. Wiegele, S. Zhao
13
SDP‑based bounds for graph partition via extended ADMM 287
13
288 A. Wiegele, S. Zhao
13
SDP‑based bounds for graph partition via extended ADMM 289
13
290 A. Wiegele, S. Zhao
Acknowledgements We thank Kim-Chuan Toh for bringing our attention to [13] and for providing an
implementation of the method therein. We would like to thank the reviewers for their thoughtful com-
ments and efforts towards improving this paper.
Funding Open access funding provided by University of Klagenfurt. This study was funded by the Euro-
pean Union’s Horizon 2020 research and innovation programme under the Marie Skłodowska-Curie grant
agreement MINOA No 764759.
Declarations
Conflicts of interest/Competing interests The authors have no conflicts of interest to declare that are rel-
evant to the content of this article.
Availability of data and material All data can be downloaded from https://github.com/shudianzhao/
ADMM-GP.
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License,
which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as
you give appropriate credit to the original author(s) and the source, provide a link to the Creative Com-
mons licence, and indicate if changes were made. The images or other third party material in this article
are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the
material. If material is not included in the article’s Creative Commons licence and your intended use is
not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission
directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licen
ses/by/4.0/.
References
1. MOSEK ApS.: The MOSEK optimization toolbox for MATLAB manual. Version 9.1.13, 2020.
http://docs.mosek.com/9.1.13/toolbox/index.html
2. Dipl.-Math Armbruster.: Branch-and-Cut for a Semidefinite relaxation of large-scale minimum
bisection problems. (2007)
3. Chen, C., He, B., Ye, Y., Yuan, X.: The direct extension of ADMM for multi-block convex mini-
mization problems is not necessarily convergent. Math. Programm. 155(1–2), 57–79 (2016)
4. De Santis, M., Rendl, F., Wiegele, A.: Using a factored dual in augmented Lagrangian methods
for semidefinite programming. Oper. Res. Lett. 46(5), 523–528 (2018)
5. de Souza, C.C.: The graph equipartition problem: Optimal solutions, extensions and applica-
tions. PhD thesis, PhD-Thesis, Université Catholique de Louvain, Louvain-la-Neuve, Belgium
(1993)
6. Fan, N., Pardalos, P.M.: Linear and quadratic programming approaches for the general graph parti-
tioning problem. J. Glob. Optim. 48(1), 57–71 (2010)
7. Frieze, A., Jerrum, M.: Improved approximation algorithms for MAX k-CUT and MAX bisection.
In: International conference on integer programming and combinatorial optimization, pp. 1–13.
Springer (1995)
13
SDP‑based bounds for graph partition via extended ADMM 291
8. Garey, M.R., Johnson, D.S., Stockmeyer, L.: Some simplified NP-complete problems. In: Proceed-
ings of the sixth annual ACM symposium on theory of computing, pp. 47–63 (1974)
9. Ghaddar, B., Anjos, M.F., Liers, F.: A branch-and-cut algorithm based on semidefinite program-
ming for the minimum k-partition problem. Ann. Oper. Res. 188(1), 155–174 (2011)
10. Goemans, M.X., Williamson, D.P.: Improved approximation algorithms for maximum cut and satis-
fiability problems using semidefinite programming. J. ACM (JACM) 42(6), 1115–1145 (1995)
11. Helmberg, C., Rendl, F., Weismantel, R.: Quadratic knapsack relaxations using cutting planes and
semidefinite programming. In: International conference on integer programming and combinatorial
optimization, pp. 175–189 (1996)
12. Hendrickson, B., Kolda, T.G.: Graph partitioning models for parallel computing. Parallel Comput.
26(12), 1519–1534 (2000)
13. Jansson, C., Chaykin, D., Keil, C.: Rigorous error bounds for the optimal value in semidefinite pro-
gramming. SIAM J. Numer. Anal. 46(1), 180–200 (2007)
14. Johnson, D.S., Aragon, C.R., McGeoch, L.A., Schevon, C.: Optimization by simulated annealing:
an experimental evaluation; part i, graph partitioning. Oper. Res. 37(6), 865–892 (1989)
15. Lin, S.: Computer solutions of the traveling salesman problem. Bell Syst. Tech. J. 44(10), 2245–
2269 (1965)
16. Lisser, A., Rendl, F.: Graph partitioning using linear and semidefinite programming. Math. Pro-
gramm. 95(1), 91–101 (2003)
17. Lorenz, D.A., Tran-Dinh, Q.: Non-stationary Douglas-Rachford and alternating direction method of
multipliers: adaptive stepsizes and convergence. Comput. Optim. Appl. 74(1), 67–92 (2019)
18. Malick, J., Povh, J., Rendl, F., Wiegele, A.: Regularization methods for semidefinite programming.
SIAM J. Optim. 20(1), 336–356 (2009)
19. Nguyen, D.P.: Contributions to graph partitioning problems under resource constraints. Doctoral
dissertation, Université Pierre et Marie Curie-Paris VI (2016)
20. Nishihara, R., Lessard, L., Recht, B., Packard, A., Jordan, M.: A general analysis of the convergence
of ADMM. In: International conference on machine learning, pp. 343–352 (2015)
21. Rendl, F.: Semidefinite programming and combinatorial optimization. Appl. Numer. Math. 29(3),
255–281 (1999)
22. Sotirov, R.: SDP relaxations for some combinatorial optimization problems. In: Anjos, M.F. (ed.)
Handbook on Semidefinite, Conic and Polynomial Optimization, pp. 795–819. Springer, Berlin
(2012)
23. Sun, D., Toh, K.-C., Yuan, Y., Zhao, X.-Y.: SDPNAL+: a matlab software for semidefinite program-
ming with bound constraints (version 1.0). Optimization Methods and Software, pp. 1–29 (2019)
Publisher’s Note Springer Nature remains neutral with regard to jurisdictional claims in published
maps and institutional affiliations.
13