Download Gap Inequalities for the Max-Cut Problem: a

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Theoretical computer science wikipedia , lookup

Lateral computing wikipedia , lookup

Knapsack problem wikipedia , lookup

Mathematical optimization wikipedia , lookup

Genetic algorithm wikipedia , lookup

Algorithm characterizations wikipedia , lookup

Computational complexity theory wikipedia , lookup

Factorization of polynomials over finite fields wikipedia , lookup

Algorithm wikipedia , lookup

Simplex algorithm wikipedia , lookup

Travelling salesman problem wikipedia , lookup

Transcript
Gap Inequalities for the Max-Cut Problem:
a Cutting-Plane Algorithm
Laura Galli1 , Konstantinos Kaparis2 and Adam N. Letchford2
1
2
Warwick Business School, University of Warwick, United Kingdom.
Department of Management Science, Lancaster University, United Kingdom.
Abstract. Laurent & Poljak introduced a class of valid inequalities for
the max-cut problem, called gap inequalities, which include many other
known inequalities as special cases. The gap inequalities have received
little attention and are poorly understood. This paper presents the first
ever computational results. In particular, we describe heuristic separation
algorithms for gap inequalities and their special cases, and show that an
LP-based cutting-plane algorithm based on these separation heuristics
can yield very good upper bounds in practice.
1
Introduction
Given a graph G = (V, E), and a vertex set S ⊂ V , the set of edges with exactly
one end-vertex in S is called an edge cutset or cut and denoted by δ(S). In the
max-cut problem, one is given the graph G, along with a vector of edge-weights,
|E|
say w ∈ Q . The task is to find aPcut of maximum total weight, i.e., to find a
set S ⊂ V such that the quantity e∈δ(S) we is maximised.
The max-cut problem is a fundamental N P-hard combinatorial optimisation
problem, with a wide range of applications and connections to various branches
of mathematics. For surveys, see Deza & Laurent [7], Laurent [16] and Poljak &
Tuza [22].
A standard technique in combinatorial optimization is to associate a polytope
(or more precisely a family of polytopes) with the problem under consideration
(e.g., Cook et al. [5]). The polytope associated with the max-cut problem, called
the cut polytope, has been studied intensively; see again Deza & Laurent [7].
Laurent & Poljak [18] introduced an interesting class of valid inequalities for
the cut polytope, called gap inequalities. The gap inequalities are remarkably
general, including several other important classes of inequalities (including some
known to define facets) as special cases. Unfortunately, however, computing the
right-hand side of a gap inequality, for a given left-hand side, is N P-hard [18].
This suggests that it would be difficult to use gap inequalities as cutting planes
(see also Avis [1]). Perhaps for this reason, the inequalities have received little
attention from researchers.
In this paper, we show that, despite the above-mentioned difficulty, it is
possible to use gap inequalities within an LP-based cutting-plane algorithm.
There are, however, several issues that need to be overcome.
The structure of the paper is as follows. Section 2 is a literature survey.
Section 3 presents various algorithms, including separation heuristics for the gap
inequalities and their special cases, and a ‘primal stabilisation’ scheme. Section
4 presents some computational results. Section 5 is concerned with integrality
ratios for small values of n. Finally, Section 6 contains some concluding remarks
and future research directions.
2
Literature Review
Let n denote the number of vertices, and assume (without loss of generality)
that the graph G is complete. For each edge {i, j}, let xij be a binary variable
that takes the value 1 if and only if the edge {i, j} lies in the cut. The max-cut
problem then reduces to solving the following 0-1 Linear Program (0-1 LP):
P
max
1≤i<j≤n wij xij
s.t. xij + xik + xjk ≤ 2 (1 ≤ i < j < k ≤ n),
xij − xik − xjk ≤ 0 (1 ≤ i < j ≤ n; k 6= i, j)
xij ∈ {0, 1}
(1 ≤ i < j ≤ n).
(1)
(2)
(3)
n
The cut polytope, denoted by CUTn , is the convex hull in R( 2 ) of solutions to
(1)-(3).
The gap inequalities for CUTn take the following form:
X
n
bi bj xij ≤ σ(b)2 − γ(b)2 /4
(∀b ∈ Z ).
(4)
1≤i<j≤n
Here, σ(b) denotes
P
i∈V
bi , and
γ(b) := min |z T b| : z ∈ {±1}n
is the so-called gap of b. Note that the gap inequalities are infinite in number.
To see why the gap inequalities are valid, consider a max-cut instance in
which wij = bi bj for all 1 ≤ i < j ≤ n. ForPany vertex P
set S ⊂ V , the weight of
the cut δ(S) will be equal to the product of i∈S bi and i∈V \S bi . This quantity
P
P
is maximised when both i∈S bi and i∈V \S bi are as close to σ(b)/2 as possible.
P
From
the definition of γ(b), this is achieved when i∈S bi = (σ(b) − γ(b))/2 and
P
i∈V \S bi = (σ(b) + γ(b))/2, or vice-versa, at which point the weight of the
cut is equal to the right-hand side of the gap inequality. (This argument shows
not only that the gap inequalities are valid, but also that every gap inequality
defines a proper face of the cut polytope.)
As mentioned in the introduction, the gap inequalities include several other
important classes of inequalities as special cases. They also dominate various
other inequalities. Figure 1, taken from [10], gives a graphical representation of
the situation. An arrow from one class to another means that the former is a
generalization of, or dominates, the latter.
gap
- rounded psd
- psd
- gap-0
- negative type
3
Q
3
Q
Q
s
Q
- hypermetric gap-1
Q
QQ
s
odd clique
- triangle
Fig. 1. Inequalities for the cut polytope.
By ‘gap-0’ or ‘gap-1’ inequality, we simply mean a gap inequality with γ(b)
equal to 0 or 1, respectively. The other inequalities mentioned in the diagram
are as follows:
– Triangle inequalities, which are nothing but the inequalities (1)-(2).
– Negative-type inequalities, obtained when σ(b) = γ(b) = 0 (Schoenberg [24]).
– Hypermetric inequalities, obtained when σ(b) = γ(b) = 1 (Deza [6] and Kelly
[15]).
– Odd clique inequalities, obtained when b ∈ {0, ±1}n and σ(b) is odd (Barahona & Mahjoub [3]).
– Positive semidefinite (psd) inequalities, which are the weakened version of
gap inequalities obtained by replacing the right-hand side with σ(b)2 /4 (Laurent & Poljak [17]).
– Rounded psd inequalities, which are obtained by imposing that σ(b) must be
odd, and replacing the right-hand side with bσ(b)2 /4c (e.g., Avis & Umemoto
[2], Giandomenico & Letchford [11], Letchford & Sørensen [19]).
So, the gap inequalities are extremely general.
We remark that the triangle and odd clique inequalities are facet-defining
[3], and many rounded psd inequalities are too [7]. Moreover, it is shown in [17]
that the psd inequalities define the feasible region of the well-known Semidefinite
Programming (SDP) relaxation of the max-cut problem, which has been intensively studied (see, e.g., [12, 21]). Therefore, the gap inequalities simultaneously
generalise several classes of facet-defining inequalities and define a relaxation
that dominates the SDP relaxation. So, one might expect them to be very useful
as cutting planes.
Unfortunately, as pointed out in [17], computing γ(b) is N P-hard. Indeed,
testing if γ(b) = 0 is equivalent to the partition problem, proven to be N P-hard
by Karp [14]. On the other hand, one can easily compute the gap in pseudopolynomial time by dynamic programming. In our paper [10], we prove several
complexity results about the gap inequalities and show that the associated separation problem can be solved in finite (though exponential) time. Nevertheless,
to our knowledge, nobody had used gap inequalities computationally before the
present paper.
Finally, we mention our other paper Galli et al. [9], in which we generalise
the gap inequalities to the case of general non-convex mixed-integer quadratic
programs.
3
Algorithms
This section concentrates on algorithmic aspects.
For a given class of inequalities, a separation algorithm is a procedure for
detecting when inequalities in that class are violated. The following three subsections present various exact and heuristic separation algorithms for the gap
inequalities and their special cases. In Subsection 3.4, we discuss some other
ingredients of our cutting plane scheme.
3.1
A separation algorithm for triangle inequalities
The separation problem for the triangle inequalities can be solved easily, in O(n3 )
time, by mere enumeration. We found, however, that a naive application of this
idea causes a large number of triangle inequalities to be generated, which can
significantly slow down the LP solver. Given that our cutting-plane scheme aims
at finding good upper bounds in a reasonable amount of time, we decided to separate triangle inequalities heuristically. The following Algorithm 1 runs in O(n2 )
time, and is guaranteed to generate no more than O(n2 ) violated inequalities in
any one call:
Algorithm 1: Heuristic separation algorithm for triangle inequalities.
n
Input: A point x∗ ∈ R( 2 ) to be separated.
Output: Failure or a violated triangle inequality.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
for 1 ≤ i < j ≤ n do
if x∗ij > (2 + )/3 then
Find k : x∗ik + x∗jk = maxh=j+1...n {x∗ih + x∗jh };
if x∗ij + x∗ik + x∗jk ≥ 2 + then
Return violated inequality xij + xik + xjk ≤ 2;
end
end
if x∗ij > then
Find k : x∗ik + x∗jk = minh∈{1...n}\{i,j} {x∗ih + x∗jh };
if x∗ij − x∗ik − x∗jk ≥ then
Return violated inequality xij − xik − xjk ≤ 0;
end
end
end
Note that the role of in Algorithm 1 is that of defining the level of separation
precision. In particular, the separation algorithm becomes exact if is set to 0.
3.2
Greedy separation heuristics
Helmberg & Rendl [13] present a useful greedy heuristic for the separation of
odd clique inequalities. The basic idea consists in maintaining a collection of
odd clique inequalities (some of which may be ‘mere’ triangle inequalities), from
which new odd clique inequalities can be derived. For each inequality in the
collection, the algorithm tries to extend the clique, by inserting two nodes, in
the hope of obtaining a new violated odd clique inequality. Each time a new
violated inequality is found, it is added to the collection.
One can extend the above greedy heuristic to handle the more general case
of rounded psd inequalities. Now, one maintains a collection of rounded psd
inequalities (some of which may be triangle and/or odd clique inequalities),
from which new rounded psd inequalities can be derived. For each inequality in
the collection, the algorithm attempts to increment or decrement two coefficients
of the associated b vector, in the hope of obtaining a new violated rounded psd
inequality. (To see why we have to modify two coefficients rather than one, recall
that σ(b) must be odd.)
The advantage of these greedy heuristics is twofold. First, the inequalities
start out very sparse and get denser as the algorithm progresses, which eases
the burden on the LP solver. Second, if one uses appropriate data structures,
processing one inequality in the collection can be performed in O(n2 ) time.
3.3
Separation heuristics based on eigenvectors
Quite effective separation heuristics for rounded psd and gap inequalities can be
derived by means of eigenvalue computations. The idea is to obtain an initial
vector b, and then modify it, if necessary, in the hope of obtaining a violated
inequality.
Our starting point is the following facts, due to Laurent & Poljak [17]. Let
n
x∗ ∈ [0, 1]( 2 ) be the point to be separated, and let Jn denote the convex body
n
in R( 2 ) defined by the psd inequalities, mentioned in Section 2. If we construct
a symmetric n × n matrix Y ∗ with Yii∗ = 1 for all i and Yij∗ = 1 − 2x∗ij for all
i 6= j, the following fact holds:
x∗ ∈ Jn ⇔ Y ∗ is positive semidefinite.
This implies that the separation problem for psd inequalities can be solved in
polynomial time (to arbitrary fixed precision). To do this, it suffices to compute
the minimum eigenvalue of Y ∗ , denoted by λ, along with the corresponding
eigenvector b∗ . If Y ∗ is not psd, then λ < 0, which implies that:
b∗ Y ∗ b∗ = b∗ · (λb∗ ) = λ||b∗ ||22 < 0.
From the way in which Y ∗ was constructed, this implies that
X
b∗i b∗j x∗ij > σ(b∗ )2 /4,
1≤i<j≤n
and therefore we have found a violated psd inequality.
Clearly, given any violated or near-violated psd inequality, one can replace it
with a rounded psd or gap inequality that is violated by at least as much. Note
however that, in order to derive a rounded psd or gap inequality, the vector b
must have integral components. On the other hand, most linear algebra software
returns eigenvectors that have floating-point components. So, we have to apply
some kind of scaling and rounding to the vector b∗ . This leads to Algorithm 2.
Algorithm 2: Heuristic for finding useful b vectors.
n
Input: A point x∗ ∈ R( 2 ) to be separated.
Output: An initial b vector.
1
2
3
4
5
6
P
Let u be a prespecified upper bound on ||b||1 = n
i=1 |bi |;
∗
Construct the matrix Y ;
n
Let b∗ ∈ R be an eigenvector of Y ∗ corresponding to the minimum
eigenvalue;
Compute u∗ = ||b∗ ||1 ;
Scale b∗ by multiplying it by u/u∗ ;
Round the components of b∗ to integers: if the component is positive, round it
down, otherwise round it up.
Once Algorithm 2 has been applied, we have an integral vector b whose
norm ||b||1 is no larger than u. If σ(b) is odd, we can generate a rounded psd
inequality immediately. If σ(b) is even, then one can check whether incrementing
or decrementing one component of b leads to a violated rounded psd inequality.
If instead we wish to generate a gap inequality, then we must compute the
gap γ(b). As already stated, computing the gap is N P-hard. Nevertheless, it can
be done in pseudo-polynomial time, namely O(nu) time. Indeed, note that
γ(b) = ||b||1 − 2 SSP,
where SSP is the solution to the following subset-sum problem:
( n
)
n
X
X
||b||1
n
max
|bi |yi :
|bi |yi ≤
, y ∈ {0, 1}
.
2
i=1
i=1
(5)
(6)
This subset-sum problem can be solved in O(n||b||1 ) time by dynamic programming, which by construction is O(nu) time.
We highlight at this point that the scheme described above separates a single violated rounded psd or gap inequality per iteration, if it finds one. Our
computational experience suggests that it is preferable to generate ‘rounds’ of
rounded psd or gap inequalities per iteration instead of a single one. In fact, it
is helpful to attempt to separate rounded psd or gap inequalities based on all
n eigenvectors of the matrix Y ∗ . A possible explanation for the superiority of
this framework lies in the orthogonality of the eigenvectors that are produced
by most linear algebra solvers. This property seems likely to lead to ‘diverse’
rounded psd or gap inequalities (i.e., not close or parallel to each other), which
in turn improves the performance of our cutting plane algorithm.
3.4
Some other algorithmic ingredients
Next, we briefly mention some additional algorithmic ideas that we have developed. The first of these has already proven to be extremely useful. We are still
experimenting with the other three.
Primal stabilisation A pure LP-based cutting-plane algorithm based on gap
inequalities suffers from the tailing-off phenomenon, which leads to very long
running times for large instances. One way around it is to use what we call
‘primal stabilisation’, as follows:
1. Solve the SDP relaxation, yielding a solution x∗ .
2. Add to the LP the ‘box constraints’ x∗e − ≤ xe ≤ x∗e + for all e, where
> 0 is a small parameter, to force the LP solution to stay near x∗ .
3. Run the cutting-plane algorithm until the upper bound is close to the SDP
bound, or until none of the box constraints are binding
4. Remove the box constraints, and continue with the cutting plane algorithm
until some convergence criterion is reached.
This primal stabilisation scheme was inspired by the ‘box-step’ method of Marsten
et al. [20], which is a classical technique for dual stabilisation in the context of
Lagrangian relaxation and Dantzig-Wolfe decomposition. Of course, one can use
our scheme only if an SDP solver is available.
Gap strengthening At the end of Algorithm 2 it is possible to check each
component of b to see if adjusting it will lead to an increase in the violation
if the gap inequality. Note that adjusting a given component bi causes both
the left-hand and right-hand sides of the gap inequality (4) to change. Using
dynamic programming, we can compute the optimal adjustment of an individual
component bi in O(nu) time. So if we perform this procedure for i = 1, . . . , n,
this leads to an overall running time of O(n2 u).
Unfortunately, if we apply this strengthening procedure to an entire collection
of gap inequalities, it may well happen that many of the strengthened inequalities
turn out to be near-parallel. This is because the procedure attempts to make
the violation as large as possible, so that, if in reality there exists only one gap
inequality that is violated by the most, then the procedure will probably modify
all of the original gap inequalities so that they all become similar to that one.
As a result, they may perform poorly as a collection.
Another option, that we are planning to test, is to apply the procedure to
just one of the gap inequalities in the collection.
Disjoint triangle packing One major problem with triangle inequalities is
that there are a huge number of them, and they can cause massive degeneracy
in the LP. Thus, it seems reasonable to construct a small collection of triangle
inequalities, which leads to a reasonably good upper bound, but does not slow
down the LP solver too much. For this reason, we designed a procedure to construct an initial collection of triangle inequalities whose corresponding triangles
are edge-disjoint. Note that such a collection can contain no more than n(n−1)/6
triangle inequalities. The choice of the initial set of disjoint triangles aims at the
best improvement with respect to the trivial bound (i.e., the bound obtained if
the LP contains only the trivial constraints 0 ≤ xe ≤ 1 for all e).
We are also experimenting with ways to update the triangle packing dynamically, after each cutting-plane iteration.
Sparsification of the b vector Finally, another problem with rounded psd
and gap inequalities is that, if the b vector has many non-zero components, then
the inequalities are very dense. LP solvers that are based on the simplex method
are usually designed to exploit sparsity, and they don’t cope very well with large
numbers of dense constraints. It might be worth modifying Algorithm 2 in the
following way. Once the eigenvector b∗ is obtained, let V ∗ ⊂ V be the set of
nodes for which the component b∗i differs significantly from zero. Then construct
the principal submatrix of Y ∗ whose row and column set is V ∗ , and compute its
minimum eigenvalue. The associated eigenvector can then be used to construct
a rounded psd or gap inequality that has non-zero coefficients only for edges
whose end-nodes are both in V ∗ .
We remark that a similar sparsification technique has been presented very
recently by Qualizza et al. [23], but in the context of non-convex quadratically
constrained quadratic programs.
4
Computational results
In this section, we summarise the results obtained from the application of two
cutting plane schemes on a subset of Max-Cut instances taken from the Biq Mac
Library 3 . Among these instances, g 05 n are unweighted with edge probability
0.5 and n = 60, 80, 100. Instances pm1d 80.0, have edge probability 0.99,
wij = {−1, 0, 1} for {1 ≤ i ≤ j ≤ n} and n = 80.
All our algorithms were implemented in ANSI C and tested on a PC Intel
Xeon, with a 2.4 GHz processor and 12 GB of RAM, using ILOG CPLEX 12.1
as the LP solver. Computing times are expressed in seconds. Table 1 presents
integrality gaps for different Max-Cut relaxations. Each row is the average of 10
instances of the given class. The first column corresponds to the integrality gap
when one separates triangle inequalities exactly and solves the LP relaxation.
The second column refers to the integrality gap for the SDP relaxation, which
we computed using the CSDP package of Borchers [4]. The third column consist
of two parts:
3
http://BiqMac.uni-klu.ac.at
– Mult.GAPs is the integrality gap using gap inequalities only
– Mult.GAPs+TIs is the integrality gap using gap and triangle inequalities.
For the scheme Mult.GAPs, we used only the heuristic described in Subsection
3.3. This led to very poor convergence, and we had to abort each run while the
upper bound was still above the SDP bound. For the scheme Mult.GAPs+TIs,
on the other hand, we used primal stabilisation, and also called the separation
heuristic for gap inequalities only when the separation heuristic for triangle inequalities failed. This led to much better convergence and, as can be seen from
the table, we were capable of obtaining significantly better bounds than those
from the SDP relaxation, on all instances, within reasonable computing times.
% IG TIs % IG SDP
g 05 60
g 05 80
g 05 100
pmd1 80
Table 1. Average
10.83
2.52
13.26
2.18
15.28
2.23
102.1
22.3
integrality gaps of
Mult.GAPs
% IG Time (scs)
5.31
60
4.81
180
5.01
600
35.55
180
various relaxations
Mult.GAPs+TIs
% IG Time (scs)
1.84
275
1.59
2685
1.93
15383
15.12
3650
of the max-cut problem.
Due to limited space, we have not reported separate results for the odd
clique and rounded psd inequalities. So far, we observed that (i) the bound
obtained using odd clique inequalities is often not much better than the bound
obtained using triangle inequalities alone and (ii) the bound obtained using
rounded psd inequalities is usually almost as good as the one obtained using gap
inequalities. It is not clear at this stage if these phenomena are due to the nature
of the inequalities themselves, or due to the fact that we are using heuristics for
separation, rather than exact algorithms.
5
Integrality Ratios Using Gap Inequalities
For a given n, let F be any family of valid inequalities for the cut polytope
n
CUTn . For any given edge-weight vector w ∈ Q( 2 ) , one can compute an upper
bound for the max-cut problem by optimising over the convex set defined by the
inequalities in F . We define the integrality ratio of F as the supremum, over all
possible non-negative and non-zero vectors w, of the ratio between the upper
bound and the weight of the optimal cut. (We exclude vectors with negative
entries, along with the zero vector, to avoid the possibility that the optimal cut
has weight zero.)
In Galli & Letchford [8], exact integrality ratios were computed for 3 ≤
n ≤ 7 for various families of inequalities, including triangle, odd clique, and
rounded psd inequalities. Also a lower bound on the integrality ratio for n = 8
was presented. Using the procedures described in [8], together with the exact
separation algorithm for gap inequalities described in Galli et al. [10], we were
able to compute integrality ratios for gap inequalities as well. Table 2 displays the
results in [8], along with our new results (highlighted in dark-gray). The column
for n = 8 is marked with an asterisk to highlight the fact that the numbers in
that column are lower bounds.
n
trivial
3
4
5
6
7
3/2 3/2 5/3 5/3 7/4
1.5 1.5 1.667 1.667 1.75
8*
7/4
1.75
triangle
1
1
1 10/9 10/9 7/6 7/6
1 1.111 1.111 1.167 1.167
odd clique
1
1
1
1
1
1
rounded psd 1
1
1
1
1
1
1
1
31/30 31/30
1.033 1.033
1
1
1
1
1
1
31/30 31/30
1.033 1.033
gap
1
1
25/24 21/20 21/20
1.042 1.05 1.05
Table 2. Integrality ratios of various relaxations of the max-cut problem, for small
values of n.
Perhaps surprisingly, for the values of n considered, the gap inequalities provided the same ratios as the rounded psd inequalities (highlighted in light-gray).
Indeed, we have not yet found a gap inequality that is not implied by one or
more rounded psd inequalities. On the other hand, it is proved in [10] that such
gap inequalities should exist, unless N P equals co-N P.
6
Conclusions
This paper represents a first algorithmic and computational study on a cuttingplane scheme for the max-cut problem based on gap inequalities. To our knowledge it also constitutes the first cutting plane algorithm which is based solely on
linear programming techniques and yet improves upon the semidefinite bound.
This was achieved through primal stabilisation, combined with the separation of
triangle and gap inequalities. Future research will be devoted to further testing
the effectiveness of odd-clique and rounded-psd inequalities. Also, more effort
will be put into exploring the algorithmic enhancements mentioned in Subsection 3.4.
References
1. D. Avis (2003) On the complexity of testing hypermetric, negative type, k-gonal
and gap inequalities. In J. Akiyama & M. Kano (eds.) Discrete and Computational
Geometry. Lecture Notes in Computer Science, vol. 2866. Berlin: Springer.
2. D. Avis & J. Umemoto (2003) Stronger linear programming relaxations of max-cut.
Math. Program., 97, 451–469.
3. F. Barahona & A.R. Mahjoub (1986) On the cut polytope. Math. Program., 36,
157–173.
4. B. Borchers (1999) CSDP, a C library for semidefinite programming. Optim. Meth.
& Software, 11, 613-623.
5. W.J. Cook, W.H. Cunningham, W.R. Pulleyblank & A. Schrijver (1998) Combinatorial Optimization. New York: Wiley.
6. M. Deza (1961) On the Hamming geometry of unitary cubes. Soviet Physics Doklady, 5, 940-943.
7. M.M. Deza & M. Laurent (1997) Geometry of Cuts and Metrics. Berlin: SpringerVerlag.
8. L. Galli & A.N. Letchford (2010) Small bipartite subgraph polytopes. Oper. Res.
Lett., 38(5), 337–340.
9. L. Galli, K. Kaparis & A.N. Letchford (2011) Gap inequalities for non-convex
mixed-integer quadratic programs. Oper. Res. Lett., 39(5), 297-300.
10. L. Galli, K. Kaparis & A.N. Letchford (2011) Complexity results for the gap inequalities for the max-cut problem. To appear in Oper. Res. Lett.
11. M. Giandomenico & A.N. Letchford (2006) Exploring the relationship between
max-cut and stable set relaxations. Math. Program., 106, 159–175.
12. M.X. Goemans & D.P. Williamson (1995) Improved approximation algorithms for
maximum cut and satisfiability problems using semidefinite programming. J. Ass.
Comp. Mach., 42, 1115–1145.
13. C. Helmberg & F. Rendl (1998) Solving quadratic (0,1)-programs by semidefinite
programs and cutting planes. Math. Program., 82, 291–315.
14. R. Karp (1972) Reducibility among combinatorial problems. In R. Miller &
J. Thatcher (eds.) Complexity of Computer Computations, pp. 85–103. New York:
Plenum Press.
15. J.B. Kelly (1974) Hypermetric spaces. In The Geometry of Metric and Linear
Spaces, Lecture Notes in Mathematics vol. 490, pp. 17–31. Berlin: Springer.
16. M. Laurent (1997) Max-cut problem. In M. Dell’Amico, F. Maffioli & S. Martello
(eds.) Annotated Bibliographies in Combinatorial Optimization, pp. 241–259.
Chichester: Wiley.
17. M. Laurent & S. Poljak (1995) On a positive semidefinite relaxation of the cut
polytope. Lin. Alg. Appl., 223/224, 439–461.
18. M. Laurent & S. Poljak (1996) Gap inequalities for the cut polytope. SIAM Journal
on Matrix Analysis, 17, 530–547.
19. A.N. Letchford & M.M. Sørensen (2008) Binary positive semidefinite matrices and
associated integer polytopes. In A. Lodi, A. Panconesi & G. Rinaldi (eds.) (2008)
Integer Programming and Combinatorial Optimization XIII. Lecture Notes in Computer Science, vol. 5035. Berlin: Springer.
20. R.E. Marsten, W.W. Hogan & J.W. Blankenship (1975) The BOXSTEP method for
large-scale optimization. Oper. Res., 23, 389–405.
21. S. Poljak & F. Rendl (1995) Nonpolyhedral relaxations of graph bisection problems.
SIAM J. on Opt., 5, 467–487.
22. S. Poljak & Zs. Tuza (1995) Maximum cuts and large bipartite subgraphs. In
W. Cook, L. Lovász & P. Seymour (eds.) Combinatorial Optimization. DIMACS
Series in Discrete Mathematics and Theoretical Computer Science, vol. 20, pp.
181–244. American Mathematical Society.
23. A. Qualizza, P. Belotti & F. Margot (2012) Linear programming relaxations of
quadratically constrained quadratic programs. In J. Lee & S. Leyffer (eds.) Mixed
Integer Nonlinear Programming, pp. 407–426. IMA Volumes in Mathematics and
its Applications, vol. 154. Berlin: Springer.
24. I.J. Schoenberg (1938) Metric spaces and positive definite functions. Trans. Amer.
Math. Soc., 44, 522–536.