Integer_programming_formulations_for_the_minimum_w
Integer_programming_formulations_for_the_minimum_w
net/publication/227094185
CITATIONS READS
13 1,204
2 authors:
All content following this page was uploaded by Tinaz Ekim on 06 September 2016.
Z. Caner Taşkın’s research was partially supported by Boğaziçi University Research Fund
Grant No: 5028 and the research of Tınaz Ekim was supported by Grant 108M616 of CNRS-
TÜBİTAK joint research project, whose support is greatly acknowledged.
Z. C. Taşkın
Department of Industrial Engineering, Boğaziçi University
34342 Bebek, İstanbul, Turkey
E-mail: caner.taskin@boun.edu.tr
T. Ekim
Department of Industrial Engineering, Boğaziçi University
34342 Bebek, İstanbul, Turkey
E-mail: tinaz.ekim@boun.edu.tr
2
Let G = (N, E) be an undirected graph and cij denote the weight associated
with edge (i, j) ∈ E. We define binary variable xij = 1 if edge (i, j) ∈ E is
selected in an optimal solution, and 0 otherwise. Let A(i) denote the set of
nodes that are adjacent to node i ∈ N . MWMM can be formulated as:
X
(Model 1) Minimize cij xij (1)
(i,j)∈E
X
subject to: xij ≤ 1 ∀i ∈ N (2)
j∈A(i)
X X
xik + xkj + xij ≥ 1 ∀(i, j) ∈ E (3)
k∈A(i) k∈A(j)
k6=j k6=i
The objective function (1) minimizes the total weight corresponding to the
selected edges. Constraints (2) enforce that at most one edge emanating from
each node can be selected (hence guaranteeing that the solution is a match-
ing). Constraints (3) ensure that each edge is either selected or is adjacent to
4
3 An Improved Formulation
Our preliminary computational tests showed that Model 1 can only solve prob-
lems on small graphs to optimality due to the weak lower bound induced by the
linear programming relaxation (see Tables 1 and 2). In our tests, we observed
that integer programming solvers failed to generate effective cuts to improve
the lower bound. Furthermore, no special structure that can be exploited to
generate valid inequalities is apparent in Model 1. In order to alleviate these
P binary variable yi = 1 if node i ∈ N is saturated in
difficulties, let us define
the matching, that is j∈A(i) xij = 1. Using these additional variables, we can
formulate the problem as:
X
(Model 2) Minimize cij xij (5)
(i,j)∈E
X
subject to: xij ≤ 1 ∀i ∈ N (6)
j∈A(i)
yi + yj ≥ 1 ∀(i, j) ∈ E (7)
xij ≤ yi ∀i ∈ N, j ∈ A(i) (8)
X
yi ≤ xij ∀i ∈ N (9)
j∈A(i)
Similar to Model 1, the objective function (5) minimizes the total weight cor-
responding to the selected edges and Constraints (6) ensure that the generated
solution is a matching. Constraints (7) enforce the condition that at least one
end point of each edge has to be saturated in a maximal matching (otherwise
that edge can be added to the matching, contradicting maximality). Con-
straints (8) ensure that node i is saturated (yi = 1) if some edge emanating
from it is selected. Constraints (9) enforce the reverse condition that if node
i is saturated, then at least one of the edges emanating from it has to be
selected. Note that if the x-variables are binary-valued, then (8) and (9) will
force y-variables to take on binary values. Therefore, we relax y-variables as
continuous in (11).
We observe that Constraints (7) can be improved as follows: if xij = 1 for
some (i, j) ∈ E, then Constraints (8) imply that yi = yj = 1. Therefore, (7)
can be tightened Pas yi + yj − xij ≥ 1. Furthermore, Constraints (6), (8) and
(9) imply that j∈A(i) xij = yi in an optimal solution. Hence, the problem
5
Note that Proposition 1 also holds for the linear programming relaxations
of the two models. Therefore, the linear programming bounds of the two mod-
els are equal. Both models have the same number of constraints and binary
variables. Model 3 has |N | additional (continuous) variables, which increases
the total number of variables but also makes the technology matrix more
sparse. Furthermore, Constraints (7) and (14) in our revised formulations re-
veal an embedded vertex cover structure in terms of the y-variables. Therefore,
valid inequalities exploiting the vertex cover structure can be devised. Berger
et al. [1] observe a similar structure in their formulation of the edge dominat-
ing set problem, and propose adding the well-known odd hole inequalities. Let
H ⊆ N denote the set of nodes that form an odd hole, that is the set of nodes
in H form a cycle having length equal to an odd number. Then, Constraints
(17) are valid [1]:
X |H|
yi ≥ ∀H ⊆ N and odd hole. (17)
2
i∈H
Also let C ⊆ N denote a clique in N . Since C has an edge between each node
pair that has to be covered as enforced by (14), at most one node in C can be
unsaturated (see also [2]) . Therefore, the following is valid:
X
yi ≥ |C| − 1 ∀C ⊆ N and clique. (18)
i∈C
These clique inequalities, although quite natural, do not seem to have been
used in integer programming formulations of the vertex cover problem in the
literature.
Finally, let i ∈ N be a node having degree 1, and j ∈ N be its only
neighbor. Since at least one of nodes i and j has to be saturated in a maximal
6
matching due to (14), and since the saturation of node i implies that node j is
also saturated by the matching, it follows that node j has to be saturated in
any maximal matching. Therefore, the following variable fixing rule is valid:
Remark 1 The valid inequalities (17)–(19) can also be expressed in terms of the
x-variables so that they can be used to tighten Model 1. Using the relationship
between the x- and y-variables enforced by (13), the odd hole inequalities (17)
can be written as follows
X X X |H|
2 xij + xij + xij ≥ ∀H ⊆ N and odd hole.
2
(i,j)∈E (i,j)∈E (i,j)∈E
i∈H,j∈H i∈H,j ∈H
/ i∈H,j∈H
/
(20)
Note that (22) implies the corresponding (2) for each node that it is written for.
While (20)–(22) are equivalent to (17)–(19) with respect to their strengths, it
should be noted that they have a large number of nonzero coefficients, resulting
in significantly denser cuts.
4 Computational Results
that our variable fixing rule (19) and clique inequalities (18) are very effec-
tive at closing the integrality gap but use of the odd hole inequalities (17) is
not computationally justified. Therefore, in our experiments we only generated
(18) and (19). Specifically, we first enumerated all maximal cliques in the input
graph and generated a constraint of type (18) for each maximal clique identi-
fied. Note that there is an exponential number of maximal cliques in general;
however, for problem sizes that we tested they can be enumerated in a fraction
of Model 3’s solution time. We then added the generated constraints as “user
cuts,” which CPLEX checks for violation and automatically adds to tighten
the formulation as needed. We enforced (19) by setting the lower bound of the
corresponding yi -variable to 1. We imposed a 1200 seconds time limit (includ-
ing the cut generation time), past which we halted the execution of CPLEX in
all our experiments. Furthermore, we implemented Cardinal et al. [4]’s greedy
algorithm for MMM, which is known to have an approximation ratio of 2 (and
strictly less than 2 for dense graphs). While the algorithm in [4] is originally
given for the unweighted version of the problem, we slightly generalized it to
handle the weighted case. Our implementation of the greedy algorithm keeps
track of the edges in sets U and S corresponding to unprocessed and selected
edges, respectively:
– Step 0: U ← E, S ← ∅.
– Step 1: If U = ∅, then return S; else continue to Step 2.
– Step 2: Pick an edge (i, j) in U such that
cij
P
i0 j 0 ∈U ∩δ(i,j) ci j + cij
0 0
is minimized, where δ(i,j) is the set of all edges that are adjacent to (i, j).
– Step 3: Add (i, j) to S, remove (i, j) ∪ δ(i,j) from U , return to Step 1.
This algorithm behaves the same as the algorithm proposed in [4] for the
unweighted case, and also handles the weighted case in a similar manner.
However, the approximation analysis given in [4] explicitly assumes that all
edges have unit weight and therefore the same analysis does not hold for the
weighted case.
Our first experiment compares the performances of Model 1, Model 3 and
the greedy algorithm on the unweighted case. Our preliminary tests showed
that while the solvability of Model 1 is enhanced by the addition of valid
inequalities (21) and (22), the corresponding inequalities (18) and (19) are
significantly more effective in decreasing the overall solution time of Model
3. Therefore, we only added (18) and (19) to Model 3 in order to quantify
the effect of our enhancements over the basic formulation Model 1. Table 1
summarizes the results of Model 1, Model 3 and the greedy algorithm on graphs
having edge density D = 0.3, 0.5, and 0.7. For each problem size, we report
the following statistics calculated over ten random instances: (i) “Solved:” the
number of problem instances solved to optimality, (ii) “LP Gap:” the average
percentage gap between the linear programming relaxation and the optimal
objective function value, (iii) “Gap:” the average final percentage optimality
8
Table 1 Comparison of Model 1, Model 3 and greedy algorithm on small instances without
edge weights
Model 1 Model 3 Greedy
D N Solved LP Gap Gap Time Solved LP Gap Gap Time Gap Time
0.3 30 10 19.95 - 0.7 10 3.60 - 0.2 15.89 0.0
40 10 28.43 - 24.0 10 7.10 - 0.4 11.19 0.0
50 8 31.07 6.81 274.4 10 6.24 - 0.8 11.54 0.0
60 1 33.73 8.83 1111.0 10 6.41 - 1.9 10.58 0.0
70 0 35.00 10.02 - 10 6.32 - 2.9 10.25 0.1
0.5 30 10 31.14 - 48.4 10 4.92 - 0.3 9.87 0.0
40 2 35.17 7.96 723.1 10 4.54 - 0.5 5.69 0.0
50 0 37.83 10.72 - 10 5.50 - 1.2 6.68 0.0
60 0 38.59 11.67 - 10 4.36 - 2.8 8.73 0.1
70 0 40.52 13.97 - 10 5.54 - 5.2 7.37 0.1
0.7 30 10 34.47 - 53.2 10 2.41 - 0.3 8.46 0.0
40 0 39.17 11.56 - 10 4.12 - 0.6 4.97 0.0
50 0 40.56 12.36 - 10 4.23 - 1.8 6.80 0.0
60 0 41.50 12.93 - 10 3.57 - 3.2 6.07 0.1
70 0 42.71 14.38 - 10 4.21 - 5.2 5.16 0.2
gap for instances that could not be solved within the allowed time limit by the
formulations (for the greedy algorithm we report the average percent difference
between greedy algorithm’s result and the optimal objective function value
found by Model 3) , (iv) “Time:” the average amount of time in seconds spent
by each algorithm (for Model 1 and Model 3 we report the average on the
instances that were solved to optimality within the allowed time limit).
Out of the 150 instances in this data set, CPLEX could solve Model 1
to optimality for only 51 instances within 1200 seconds while being able to
solve all instances to optimality for Model 3 within a few seconds. The re-
sults show that Model 3 significantly outperforms Model 1. Note that linear
programming relaxations of Model 1 and Model 3 are equivalent (Proposition
1). Therefore, the difference between the “LP Gap” values of the two formu-
lations is the result of our clique inequalities and variable fixing rule, which
are highly effective in closing the optimality gap. We observe that the linear
programming relaxation gets weaker and our inequalities get more effective
as the density increases. The greedy algorithm executed very quickly on all
problem instances in this data set. While the greedy algorithm could find an
optimal solution for only 9 problem instances, it generated solutions having
an average optimality gap of 8.62%, which corresponds to choosing 1.88 more
edges than an optimal solution. We observe that the performances of Model 1
and Model 3 deteriorate as the number of nodes in the graph and edge density
increase. This is expected since the number of binary variables in both formu-
lations increase with the number of edges. On the other hand, note that the
quality of the solution found by the greedy algorithm tends to improve as the
problem size increases. This can be explained by observing that as the total
number of edges increases, the selection decision about each individual edge
becomes less critical in the overall solution quality.
9
Table 2 Comparison of Model 1, Model 3 and greedy algorithm on small instances with
edge weights
Model 1 Model 3 Greedy
D N Solved LP Gap Gap Time Solved LP Gap Gap Time Gap Time
0.3 70 10 15.58 - 2.5 10 4.67 - 0.8 29.76 0.1
80 10 18.33 - 5.8 10 4.75 - 1.2 30.56 0.1
90 10 21.43 - 18.6 10 5.07 - 1.9 34.76 0.2
100 10 21.58 - 45.5 10 4.60 - 2.6 33.24 0.3
110 4 23.95 6.11 421.1 10 5.66 - 5.8 30.12 0.4
120 1 25.24 7.53 307.7 10 6.33 - 11.0 29.36 0.6
0.5 70 10 24.41 - 33.1 10 3.65 - 1.1 31.22 0.1
80 10 25.61 - 220.1 10 4.20 - 2.0 28.32 0.2
90 1 27.75 6.63 597.0 10 4.12 - 4.0 27.80 0.3
100 0 30.33 10.26 - 10 4.67 - 6.8 20.86 0.5
110 0 31.51 13.38 - 10 5.02 - 18.5 25.98 0.7
120 0 33.54 16.87 - 10 5.91 - 34.9 24.75 1.0
0.7 70 9 28.56 8.81 233.5 10 2.50 - 2.1 28.80 0.2
80 0 30.79 8.14 - 10 3.02 - 3.9 25.31 0.3
90 0 33.07 12.15 - 10 3.57 - 7.2 23.98 0.4
100 0 35.43 15.53 - 10 5.24 - 23.2 18.97 0.7
110 0 36.64 16.51 - 10 4.93 - 41.1 19.85 1.0
120 0 37.78 18.53 - 10 5.03 - 90.3 20.37 1.4
Table 3 Comparison of Model 3 and greedy algorithm on large instances without edge
weights
Model 3 Greedy
D N Solved LP Gap (No cuts) LP Gap Gap Time Gap Time
0.3 150 10 42.40 9.34 - 197.6 6.51 1.4
160 10 42.94 9.67 - 374.8 5.58 1.8
170 10 43.03 9.45 - 743.4 5.61 2.3
180 4 43.54 9.81 2.78 938.8 7.31 2.9
190 0 44.05 10.21 3.99 - 8.66 3.6
0.5 150 10 45.09 7.28 - 255.8 4.03 2.5
160 10 45.05 6.86 - 353.3 3.67 3.2
170 7 45.51 7.33 3.22 753.5 4.84 4.1
180 1 46.04 7.91 3.08 1191.7 5.79 5.2
190 0 46.26 8.06 4.51 - 7.72 6.5
0.7 150 10 46.14 5.34 - 558.1 3.30 3.5
160 10 46.33 5.46 - 901.4 3.84 4.6
170 2 46.69 5.82 3.57 1024.8 5.68 5.9
180 0 46.82 5.82 5.23 - 7.71 7.4
190 0 47.06 6.01 5.83 - 8.27 9.2
Table 4 Comparison of Model 3 and greedy algorithm on large instances with edge weights
Model 3 Greedy
D N Solved LP Gap (No cuts) LP Gap Gap Time Gap Time
0.3 150 10 28.57 7.07 - 56.4 28.41 1.4
160 10 30.24 7.68 - 160.0 27.67 1.8
170 10 31.16 7.78 - 186.6 26.88 2.4
180 8 33.04 8.73 2.81 501.2 29.33 3.0
190 5 33.71 9.29 4.36 650.1 27.19 3.7
0.5 150 10 36.79 6.87 - 129.6 20.90 2.5
160 10 37.59 6.83 - 273.3 20.07 3.3
170 10 38.67 7.17 - 457.0 17.93 4.2
180 5 39.35 7.36 2.40 785.9 17.69 5.4
190 2 40.17 7.77 4.04 1182.4 20.10 6.7
0.7 150 10 40.33 5.30 - 340.1 15.61 3.6
160 10 41.48 5.45 - 472.0 12.45 4.7
170 9 41.93 5.68 3.83 860.7 14.87 5.9
180 3 42.52 5.71 2.57 1023.0 14.07 7.5
190 0 43.16 5.90 4.53 - 13.90 9.4
To the best of our knowledge, this paper presents the first integer program-
ming formulations and computational results on MMM and MWMM. Our
results constitute a basis for the comparison of the performances of various
exact methods, heuristics and approximation algorithms. One potential fu-
ture research topic is to adjust our formulations to specific graph types. Even
though our formulations can be used on general graphs, it may be possible
to improve them by deriving bounds and valid inequalities for specific graph
types. A particular graph type of interest in the literature is regular graphs,
i.e. graphs where all nodes have the same degree. It is known that MMM is
NP-hard in regular bipartite graphs but performances of various heuristics and
integer programming formulations such as Models 1 and 3 on regular graphs
are unknown. More studies are needed to answer whether the structure of
regularity makes it easier to solve MWMM, or the high symmetry caused by
regularity makes the formulations and heuristics less effective.
References
15. A. Srinivasan, K. Madhukar, P. Nagavamsi, C. Pandu Rangan, and M.-S. Chang. Edge
domination on bipartite permutation graphs and cotriangulated graphs. Information
Processing Letters, 56(3):165–171, 1995.
16. M. Yannakakis and F. Gavril. Edge dominating sets in graphs. SIAM Journal on
Applied Mathematics, 38:364–372, 1980.