ARTICLE IN PRESS
JID: EOR
[m5G;August 2, 2016;10:16]
European Journal of Operational Research 0 0 0 (2016) 1–12
Contents lists available at ScienceDirect
European Journal of Operational Research journal homepage: www.elsevier.com/locate/ejor
Discrete Optimization
The Hierarchical Mixed Rural Postman Problem: Polyhedral analysis and a branch-and-cut algorithm Marco Colombi a, Ángel Corberán b,∗, Renata Mansini a, Isaac Plana c, José M. Sanchis d a
Department of Information Engineering, University of Brescia, Brescia, Italy Department of Statistics and Operational Research, University of Valencia, Burjassot, Spain Department of Mathematics for Economics and Business, University of Valencia, Valencia, Spain d Department of Applied Mathematics, Polytechnic University of Valencia, Valencia, Spain b c
a r t i c l e
i n f o
Article history: Received 23 February 2016 Accepted 14 July 2016 Available online xxx Keywords: Hierarchical Routing Problems Mixed Rural Postman Problem Branch-and-cut Polyhedral analysis
a b s t r a c t The Hierarchical Mixed Rural Postman Problem is defined on a mixed graph where arcs and edges that require a service are divided into clusters that have to be serviced in a hierarchical order. The problem generalizes the Mixed Rural Postman Problem and thus is NP-hard. In this paper, we provide a polyhedral analysis of the problem and propose a branch-and-cut algorithm for its solution based on the introduced classes of valid inequalities. Extensive computational experiments are reported on benchmark instances. The exact approach allows to find the optimal solutions in less than 1 hour for instances with up to 999 vertices, 2678 links, and five clusters.
1. Introduction Arc routing problems differ from vehicle (node) routing problems in the fact that they require some links (arcs and/or edges) to be traversed (serviced) instead of nodes to be visited. We refer the reader to the recently published book by Corberán and Laporte (2014) for more information on arc routing problems. Some of the most challenging problems in this research field take into account the presence of priority levels assigned to links, thus dividing them into clusters and defining an order in which clusters have to be serviced. The introduction of priority levels characterizes the Hierarchical arc routing problems, which arise naturally in different application contexts: from snow plowing where main streets have to be cleaned before secondary streets and residential ones (see Alfa and Liu, 1988; Chernak, Kustiner, and Phillips, 1990; Haslam and Wright, 1991; Lemieux and Gampagna, 1984), to garbage collection (see Bodin & Kursh, 1978). In all cited applications the underlying problem is a Hierarchical Chinese Postman Problem (HCPP) that requires finding a minimum cost tour starting and ending at the depot, and traversing all the edges in the specified hierarchical order. Dror, Stern, and Trudeau (1987) first introduced the HCPP and the concept of hierarchy in the service of a cluster of streets. They also proved that the HCPP is NP-hard but can be solved in polynomial time when the graph is directed or undirected, the order relation between the clusters of ∗
Corresponding author. Fax: +34 963864735. E-mail address:
[email protected] (Á. Corberán).
© 2016 Elsevier B.V. All rights reserved.
arcs and edges is complete, and each cluster induces a connected graph, and proposed a O(p|V|5 ) time algorithm to solve this special case, where p is the number of priority levels and |V| is the number of vertices. Ghiani and Improta (20 0 0) showed that this particular case of the HCPP can be solved as a matching problem on an auxiliary graph with at most p|V| vertices. Later on, Korteweg and Volgenant (2006) proposed an exact algorithm to solve the same problem in O(p|V|4 ). Letchford and Eglese (1998) studied a slightly related problem, the Rural Postman Problem with Deadline Classes (RPPDC). It is a variant of the undirected RPP where the edges requiring service (required edges) are divided into classes and a deadline is given for the completion of the service in each class. The objective of the problem is to find a route starting and ending at the depot while traversing the required edges before their deadline. They proposed a branch-and-cut algorithm that was tested on instances with one and two deadline classes and with up to 50 vertices and 110 edges. Although similar in some aspects, the RPPDC differs from the HMRPP in three main features. In the HMRPP a link of the priority class k is not allowed to be serviced before all the links in the previous classes have already been serviced, while this is possible in the RPPDC. The objective functions are different, since in the HMRPP three different costs are associated with the traversal of a link (before it has been serviced, while servicing it, and after it has been serviced), while in the RPPDC each edge has only one traversal cost. Finally, the problem studied in Letchford and Eglese (1998) is defined on an undirected graph while the problem we study in this paper is defined on a mixed graph.
http://dx.doi.org/10.1016/j.ejor.2016.07.026 0377-2217/© 2016 Elsevier B.V. All rights reserved.
Please cite this article as: M. Colombi et al., The Hierarchical Mixed Rural Postman Problem: Polyhedral analysis and a branch-and-cut algorithm, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.07.026
JID: EOR 2
ARTICLE IN PRESS
[m5G;August 2, 2016;10:16]
M. Colombi et al. / European Journal of Operational Research 000 (2016) 1–12
Gélinas (1992) proposed a dynamic programming algorithm to solve the problem on a directed graph, whereas Cabral, Gendreau, Ghiani, and Laporte (2004) discussed how two natural objectives can be considered for a hierarchical problem, the minimization of the makespan (the time at which the vehicle returns to the depot at the end of the tour) and the minimization of the weighted sum of the times required to complete the service at each cluster. Cabral et al. also showed how the HCPP with linear precedence relations and no assumption on clusters connectivity can be transformed into an RPP and then solved by using exact and heuristic algorithms for the RPP. Perrier, Langevin, and Amaya (2008) introduced a multi-vehicle HCPP that takes into account general precedence relation constraints with no assumption on clusters connectivity, different service and deadhead speed possibilities, separate pass requirements for multi-lane road segments, class upgrading possibilities, vehicle road segment dependencies, turn restrictions, load balancing constraints, and tandem service requirements. They proposed a mathematical formulation where, in order to avoid disconnected subtours, they introduced flow variables for each arc, each vehicle and each cluster. Even for small instances of the problem, the model contains a large number of variables and constraints. They proposed two constructive methods and reported computational experiments using data from the City of Dieppe in Canada. In this paper, we study the Hierarchical Mixed Rural Postman Problem (HMRPP), which generalizes the Hierarchical Chinese Postman Problem in two aspects. It is defined on a mixed graph with both arcs and edges, and the set of arcs and edges that requires a service does not need to be the whole set but only a subset of them. The links requiring service are divided into clusters indicating a predefined priority on the service. Following the specified hierarchical order, all the arcs and edges belonging to a cluster k must be serviced before the ones in any cluster m if k < m. Three different costs are associated with each required link: The cost of traversing the link if it has not been serviced yet, the cost of traversing and servicing it, and the cost of traversing the link after it has already been serviced. The presence of different costs is motivated by real applications. Consider, for example, snow removal operations, where removing snow on a street is a more time-consuming operation than traversing an already cleaned street. Uncleaned streets are hardly traversable and thus the cost of traversing them is the highest. Other costs ordering may find a practical justification as well (see Cabral et al., 2004). As far as we know, the HMRPP has only been studied in Colombi, Corberán, Mansini, Plana, and Sanchis (2015). However, the concept of Hierarchical Rural Postman Problem is already present in Perrier, Amaya, Langevin, and Cormier (2006) and Perrier et al. (2008). In these papers, the authors developed twophase constructive methods for the problem of designing routes for plowing operations, which, after determining a partition of the arcs to be serviced into clusters, solve a Hierarchical RPP on each cluster. In Colombi et al. (2015), we have proposed a mathematical programming formulation for the HMRPP, a matheuristic that solves sequentially a variant of the Mixed Rural Postman Problem (MRPP) for each cluster, and an effective Tabu Search algorithm that improves the result obtained by the matheuristic. In this paper, from the formulation proposed in Colombi et al. (2015), we obtain a deep polyhedral analysis of the problem. We state conditions for the inequalities in the formulation to induce facets of the HMRPP polyhedron and study new classes of valid inequalities, such as the parity and the K-C inequalities, specifying under which conditions they are facet-inducing. Moreover, we have designed and implemented a branch-and-cut algorithm confirming that producing an effective exact method for a hard combinatorial optimization problem benefits from a good understanding of its associated polyhedron.
Fig. 1. An HMRPP instance.
The paper is organized as follows. In Section 2, we provide the formal definition of the problem and describe the mathematical formulation we introduced in Colombi et al. (2015). In Section 3, we analyze the relationship between the HMRPP on a graph G and the MRPP defined on an extended graph G¯ consisting of p + 1 copies of G, with p equal to the number of clusters. Section 4 is devoted to the study of the HMRPP polyhedron. We present different families of valid inequalities and provide conditions for them to be facet inducing. Sections 5 and 6 describe the implemented branch-and-cut algorithm and the computational results on benchmark instances, respectively. Finally, some conclusions are drawn in Section 7. 2. Problem definition and formulation Let G = (V, E, A ) be a strongly connected mixed graph, where V is the set of vertices, E is the set of edges, and A the set of arcs. Vertex 1 is the depot. We will use the term link to refer both to an edge or an arc, indistinctly. Consider a set of required edges ER = p p ER1 ∪ ER2 ∪ · · · ∪ ER and a set of required arcs AR = A1R ∪ A2R ∪ · · · ∪ AR that must be serviced in a hierarchical order, that is, all the edges and arcs in ERk ∪ AkR must be serviced before the ones in ERm ∪ Am if R k < m. We consider three different costs associated with each required link (i, j) ∈ ER ∪ AR : • • •
cˆi j : the cost of traversing (i, j) if it has not been serviced yet, c¯i j : the cost of traversing and servicing it, c˜i j : the cost of traversing (i, j) if it has already been serviced, and
a cost cij associated with each non-required link (i, j) ∈ ENR ∪ ANR , representing the cost of traversing it, where ENR = E \ ER and ANR = A \ AR . The cost of traversing an edge is assumed to be the same in both directions. We do not assume here any ordering of the costs cˆi j , c¯i j , and c˜i j . The HMRPP consists of finding a minimum cost closed walk (tour) starting and ending at the depot, and servicing all the required links in the hierarchical order. Fig. 1 shows an HMRPP instance with |V | = 9, |ER | = 5 and |AR | = 5, where the required links are represented in bold lines and are clustered into three clusters labeled H1, H2, and H3. Note that the subgraph induced by the required links, G(ER ∪ AR ), and the subgraphs G(ERk ∪ AkR ), for all k, do not need to be connected. Note also that, since the required links must be serviced in a hierarchical order, a tour for the HMRPP can be interpreted as a series of consecutive paths, each one servicing the required links in each cluster, plus an extra path from the last vertex visited in the last cluster p to the depot.
Please cite this article as: M. Colombi et al., The Hierarchical Mixed Rural Postman Problem: Polyhedral analysis and a branch-and-cut algorithm, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.07.026
ARTICLE IN PRESS
JID: EOR
[m5G;August 2, 2016;10:16]
M. Colombi et al. / European Journal of Operational Research 000 (2016) 1–12
We represent the links by (i, j) ∈ ENR ∪ ANR , although we will distinguish between an arc (i, j) and an edge {i, j} when necessary. We will represent by VR the set of vertices incident with the required links plus the depot. Therefore, V = VR ∪ VNR . We will denote by VRk the set of vertices incident with the links in ERk ∪ AkR and by VFk the set of vertices that can be final points of the path associated with cluster k, that is, the vertices in VRk which either are incident to required edges or are the ending point of required arcs in cluster k. For example, in the HMRPP instance of Fig. 1, we have VR1 = {1, 2, 5, 6, 8} and VF1 = {1, 2, 5} associated with cluster H1. The graph induced by the required links ERk ∪ AkR may not be connected, and we will denote by Rk1 , . . . , Rkm the vertex sets of k its connected components. As usual, each vertex set S⊆V defines a link cutset, δ (S), formed by all the links with exactly one endpoint in S. The set of required links for cluster k in this link cutset is denoted δRk (S ) = δ (S ) ∩ (ERk ∪ AkR ). We introduce the following sets of variables, where, in addition to the priority levels 1, . . . , p, we consider a fictitious level p + 1 associated with the trip back to the depot: •
•
•
xki j , k = 1, . . . , p, p + 1, denoting the number of times arc (i, j) is traversed in level k, xki j and xkji , k = 1, . . . , p, p + 1, denoting the number of times edge {i, j} is traversed from i to j and from j to i in level k, and zik , i ∈ VFk , k = 1, . . . , p, which takes value 1 if the path servicing the links in level k ends at node i (and therefore the path corresponding to cluster k + 1 begins at i), and zero otherwise.
In order to keep the formulation as simple as possible, we p+1 will consider the existence of the additional variables zi0 and zi . p+1
However, these variables are all fixed to zero except for z10 = z1 = 1 to indicate that the tour must begin and end at the depot. Moreover, we will suppose that there are variables zik associated with any vertex i ∈ Vk , although its value is zero except for the vertices i ∈ VFk . Variables z with a similar meaning were used by Letchford and Eglese (1998) for modeling the RPPDC. In that paper, in addition to the ‘routing variables’ x, the authors needed other ‘servicing variables’ y to indicate in which traversal an edge is serviced. In the HMRPP, a required link of a cluster is serviced exactly the first time it is traversed in this cluster. Given a vertex set S ⊆ V, xk (δ + (S )) and xk (δ − (S )) denote the sum of the variables in xk ‘leaving from’ and ‘entering in’ S, respectively:
xk (δ + (S )) :=
xki j
and
xk (δ − (S )) :=
i∈S, j∈ /S
xki j .
i∈ / S, j∈S
Similarly, given S⊆V, zk (S ) = i∈S zik . Associated with each variable xki j we define the following cost:
cikj
=
if (i, j ) ∈ ERs ∪ AsR , s > k; if (i, j ) ∈ ERs ∪ AsR , s ≤ k; if (i, j ) ∈ ENR ∪ ANR .
cˆi j , c˜i j , ci j ,
The HMRPP formulation, proposed in Colombi et al. (2015), is as follows: p+1
Minimize
k=1
+
{i, j}∈E
(c¯i j − c˜i j ) +
{i, j}∈ER
xki j + xkji ≥ 1, xki j ≥ 1,
cikj (xki j + xkji ) +
(i, j )∈A
(c¯i j − c˜i j )
(i, j )∈AR
{i, j} ∈ ERk , k = 1, ..., p
(i, j ) ∈ AkR , k = 1, ..., p
cikj xki j
(1) (2)
3
xk (δ − (i )) + zik−1 = xk (δ + (i )) + zik , xk (δ − (S )) + zk−1 (S ) ≥ 1,
i ∈ V k , k = 1, ..., p + 1
S = (∪i∈Q Rki ) ∪ W,
Q ⊆ {1, ..., mk }, W ⊆ V zk (VFk ) = 1,
k = 1, ..., p
(5) (6)
∀i = 1
xki j , xkji ≥ 0 and integer, xki j ≥ 0 and integer, zik ∈ {0, 1}
(4)
\ VRk , k = 1, ..., p
z10 = z1p+1 = 1, zi0 = zip+1 = 0,
(3)
(7)
{i, j} ∈ E, k = 1, ..., p + 1 (i, j ) ∈ A, k = 1, ..., p + 1
i ∈ V k , k = 0, 1, ..., p + 1
(8) (9) (10)
The objective function minimizes the total cost of the tour. Although its two last terms are constant and could be removed from the objective function, they help to understand the global cost. Constraints (1) and (2) ensure that all the required links are serviced at the right level. Constraints (3) are the usual symmetry equations, and imply xk (δ − (S )) + zk−1 (S ) = xk (δ + (S )) + zk (S ), for each subset S ⊂ V. Constraints (4) guarantee the connectivity of the solution. Note that zik variables can be considered as fictitious arcs with null cost that connect two adjacent clusters and that enter in node i. Thus, zik variables are inserted in constraints (3) and (4) in order to guarantee the correct symmetry of the nodes and the correct connection of the solution. Constraints (5) force that exactly one vertex is chosen as the end of the path at each level and, in presence of Eqs. (3), (6) and (7) they are redundant. 3. The HMRPP and the MRPP Given a strongly connected mixed graph with a nonnegative cost associated with each link, a set of required edges and a set of required arcs, the Mixed Rural Postman Problem, MRPP, consists of finding a minimum cost tour traversing all the required links. Let us describe the relationship between the HMRPP on graph G and the MRPP defined on an extended graph G. Graph G initially consists of p + 1 copies of graph G, denoted G1 , . . . , G p+1 , where for each k = 1, . . . , p the links in the set ERk ∪ AkR are considered required whereas all the links in G p+1 are considered nonrequired. Associated with each arc or edge in each Gk , we consider the variable xki j , whose coefficient is defined by the cost cikj given above. It is important to notice that this transformation does not consider the cost adjustment provided in the HMRPP formulation above, presented in the last two terms of the objective function, and one should consider it as part of the global cost of the HMRPP routing. In addition, for each vertex i ∈ VFk in graph Gk , k = 1, . . . , p, we add an arc in G from this vertex to the copy of the same vertex i in graph Gk+1 . With this arc, we associate the variable zik , representing the number of times this arc is traversed. The HMRPP on graph G can be seen as the problem of finding a minimum cost path on graph G traversing all the required links from vertex 1[1] (vertex 1 in G1 ) to vertex 1[ p+1] (vertex 1 in G p+1 ). If we add to G the arc (1[ p+1] , 1[1] ) (this arc is associated with p+1 the ‘parameter’ z10 = z1 = 1) and we consider it a required arc, the HMRPP on graph G can be seen as a MRPP on graph G with the additional condition that the required arc (1[ p+1] , 1[1] ) is traversed exactly once. Fig. 2 shows the graph G corresponding to the graph G depicted in Fig. 1.
Please cite this article as: M. Colombi et al., The Hierarchical Mixed Rural Postman Problem: Polyhedral analysis and a branch-and-cut algorithm, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.07.026
JID: EOR 4
ARTICLE IN PRESS
[m5G;August 2, 2016;10:16]
M. Colombi et al. / European Journal of Operational Research 000 (2016) 1–12
Fig. 2. The MRPP instance on G associated with the HMRPP instance in Fig. 1.
Two polyhedral studies on the MRPP can be found in Corberán, Romero, and Sanchis (2003) and Corberán, Mejía, and Sanchis (2005). In these papers the Mixed General Routing Problem (MGRP) is studied. The MGRP is a generalization of the MRPP in which, in addition to the required links, there is a set of required vertices to be visited. However, the formulation presented in these papers, unlike the one proposed here, uses only one variable per required edge. Another polyhedral study on the MRPP, as a particular case of the Windy General Routing Problem (WGRP), can be found in Corberán, Plana, and Sanchis (2008). In this study two variables per required edge are used, but it is assumed that all the vertices in the graph are incident with required links, since any instance not satisfying this condition can be easily transformed into an equivalent one that does. However, this assumption cannot be made for the MRPP on G, and thus the polyhedral results in Corberán et al. (2008) are not directly applicable here. Fortunately, they can be easily extended to graphs having vertices not incident with required links, in a similar way as in Ávila (2014) and Ávila, Corberán, Plana, and Sanchis (2015) for the Directed General Routing Problem (DGRP). In Section 3.1 we present the polyhedral results for the MRPP on a graph containing vertices that are not incident with required links. The proofs of these results are omitted for the sake of brevity.
3.1. The MRPP polyhedron Let G = (V, E, A ) := (VR ∪ VNR , ER ∪ ENR , AR ∪ ANR ) be a mixed graph, where ER ∪ AR denotes the set of required links, VR is the set of vertices incident to a required link, VNR = V \ VR , ENR = E \ ER , and ANR = A \ AR . The graph induced by ER ∪ AR is in general a disconnected graph. Let q be the number of its connected components and let V1 , . . . , Vq denote the corresponding vertex sets (called Rsets), where V1 ∪ ... ∪ Vq = VR . A closed walk that traverses at least once each link in ER ∪ AR is called a tour for the MRPP. With each arc (i, j) (and edge {i, j}), we associate the variable xij (and xij , xji ) representing the number of times that arc (i, j) (or edge {i, j} in each direction) is traversed. As for the HMRPP, given a vertex set S⊆V, x(δ + (S )) and x(δ − (S )) denote the sum of the variables in x ‘leaving from’ and ‘entering in’ S, respectively. The MRPP can be formulated as
Minimize
ci j xi j
(11)
(i, j )∈E∪A
x(δ + (i )) − x(δ − (i )) = 0,
∀i ∈ V
(12)
Please cite this article as: M. Colombi et al., The Hierarchical Mixed Rural Postman Problem: Polyhedral analysis and a branch-and-cut algorithm, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.07.026
ARTICLE IN PRESS
JID: EOR
[m5G;August 2, 2016;10:16]
M. Colombi et al. / European Journal of Operational Research 000 (2016) 1–12
x(δ (S )) ≥ 1, ∀S = −
5
Vk
∪ W,
k∈Q
∅ = Q {1, . . . , q}, W ⊆ VNR
∀ {i, j} ∈ ER
xi j + x ji ≥ 1,
(13) (14)
xi j ≥ 1,
∀ (i, j ) ∈ AR
(15)
xi j ≥ 0,
∀(i, j ) ∈ A \ AR
(16)
xi j , x ji ≥ 0,
∀ {i, j} ∈ E
(17)
xi j integer,
∀(i, j ) ∈ A
(18)
xi j , x ji integer
∀{i, j} ∈ E
(19)
Note that we can assume that E \ ER = ∅, because each nonrequired edge (with associated variables xij , xji ) can be replaced by a pair of opposite nonrequired arcs (with the same associated variables xij , xji ) and we obtain exactly the same formulation. In the following, we will assume that we are working on a strongly connected graph G = (V, E, A ) := (V, ER , AR ∪ ANR ). Let MRPP(G) represent the convex hull of the vectors associated with the MRPP tours on G. It can be seen that, if G is a strongly connected graph, the dimension of MRPP(G) is 2|E | + |A| − |V | + 1. Furthermore, traversing and non-negativity inequalities (14)–(17) are facet-inducing for MRPP(G) if the corresponding link (i, j) satisfies that Gࢨ{(i, j)} is a strongly connected graph. In order to introduce more facet-inducing inequalities, we need some more notation. If G = (V, ER , AR ∪ ANR ) is a mixed graph and S1 , S2 are two vertex sets, we denote
{{i, j} ∈ E : i ∈ S1 , j ∈ S2 or j ∈ S1 , i ∈ S2 }, i ∈ S1 , j ∈ S2 }, ( S1 : S2 ) = E ( S1 , S2 ) ∪ A ( S1 , S2 ) ∪ A ( S2 , S1 ), x ( S1 : S2 ) = xi j + xi j . E ( S1 , S2 ) =
A(S1 , S2 ) = {(i, j ) ∈ A :
i∈S1 , j∈S2
•
i∈S2 , j∈S1
Connectivity inequalities (13), if graphs G(S) and G(VࢨS), induced by S and VࢨS, are strongly connected. R-odd cut inequalities,
x(δ + (S )) + x(δ − (S )) ≥ |δR (S )| + 1,
∀S ⊂ V such that δ (S ) is R-odd,
•
K-C inequality
(K −2 ) x M0 : MK +
( j−i )x Mi : M j
0≤i< j≤K
{i, j} ={0,K }
≥ 2(K −1 ) + (K −2 ) (M0 : MK )R
(21)
is valid for MRPP(G). Moreover, it is facet inducing if the following three conditions hold: (1) subgraphs G(Mi ), i = 0, . . . , K, are strongly connected, (2) all of the sets A(Mi , Mi+1 ), A(Mi+1 , Mi ) are nonempty, and (3) ≥ |α − β|, where = |E (M0 , MK )|, α = |AR (M0 , MK )|, and β = |AR ( MK , M0 )|. However, it can be seen that the first condition can be replaced by the following (weaker) condition: for any pair of vertices i1 , i2 ∈ Mi such that i1 is the final vertex of an arc entering at Mi and i2 is the initial vertex of an arc leaving from Mi , there is a directed path from i1 to i2 using only links in G(Mi ) and traversing all the required links in G(Mi ). 4. The HMRPP polyhedron
The above sets can be referred only to the required links as ER (S1 , S2 ), AR (S1 , S2 ), (S1 : S2 )R . It can be shown that the following inequalities are facetinducing for MRPP(G): •
Fig. 3. K-C configuration.
(20)
(a link cutset δ (S) is called R-odd if it contains an odd number of required links), if subgraphs G(S) and G(VࢨS) are strongly connected and > |α − β|, where = |ER (S, V \ S )|, α = |AR (S, V \ S )|, and β = |AR (V \ S, S )|. K-C inequalities. Consider a partition of V into K + 1 subsets {M0 , M1 , M2 , . . . , MK−1 , MK }, K ≥ 3, such that each R-set V1 , ..., Vq , is contained in exactly one of the sets M0 ∪ MK , M1 , M2 , . . . , MK−1 , each node set M0 ∪ MK , M1 , M2 , . . . , MK−1 contains at least one R-set, and (M0 : MK ) contains a positive and even number of required links. Such a partition defines the configuration graph shown in Fig. 3, where the costs correspond to the coefficients of the variables in the inequality. The
Let us call HMRPP(G) the convex hull of the vectors (x, z) associated with the HMRPP tours, each one with ( p + 1 )(2|E | + |A| ) + p |V k | variables. k=1 F Since the HMRPP on graph G is equivalent to the MRPP on p+1 p+1 graph G with the condition z1 = 1, and given that z1 ≥ 1 is facet inducing of the polyhedron MRPP(G) (see Theorem 1 below), we have dim(HMRPP(G )) = dim(MRPP(G )) − 1. If graph G is strongly connected, then the dimension of MRPP(G) is the number of variables minus the number of vertices in G plus one, and we have
dim(HMRPP(G )) = ( p + 1 )(2|E | + |A| ) +
p
|VFk | − ( p + 1 )|V | + 1 =
k=1
= ( p + 1 ) 2|E | + |A| − |V | +
p
|VFk | + 1.
k=1
Theorem 1.
p+1 z1
≥ 1 is facet inducing of the polyhedron MRPP(G).
G \ {(1[ p+1] , 1[1] )}
Proof. As is not a strongly connected graph, we need a specific proof that is included in the Appendix. Since the polyhedron HMRPP(G), as evidenced in the proof of Theorem 1, is hard to study, we instead study a very similar
Please cite this article as: M. Colombi et al., The Hierarchical Mixed Rural Postman Problem: Polyhedral analysis and a branch-and-cut algorithm, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.07.026
ARTICLE IN PRESS
JID: EOR 6
[m5G;August 2, 2016;10:16]
M. Colombi et al. / European Journal of Operational Research 000 (2016) 1–12
polyhedron. Let us call HMRPP∗ (G) the convex hull of the vectors (x, z, z1p+1 ) associated with the MRPP tours on graph G. This polyhedron satisfies
dim HMRPP∗ (G ) = dim HMRPP(G ) + 1. The polyhedron HMRPP∗ (G) is exactly the polyhedron MRPP(G). Note that G is a strongly connected mixed graph with a special topological structure: it is formed by p + 1 strongly connected subgraphs (those of the clusters) which are connected with arcs forming a cycle (see Fig. 2). In what follows, we present some valid inequalities for the HMRPP and describe conditions for these inequalities to be facet-inducing of HMRPP∗ (G).
we present a new family of inequalities that cut this kind of fractional solutions. Consider a cluster k, two integers K ≥ 3 and L ∈ {1, 2, . . . , K − 1}, and a partition of vertex set V into K subsets Mi , i = 0, . . . , K, i = L satisfying: •
•
•
(M0 : MK ) contains an even number of required links of cluster k (links in ERk ∪ AkR ), all the other required links of cluster k are in G(Mi ), i = 0, . . . , K, i = L, and each of the subgraphs G(Mi ), i = 0, L, K, contains at least a required link of cluster k. The K-C inequality is:
W ⊆V
\
VRk , k
∀ S = (∪i∈Q Rki ) ∪ W, Q ⊆ {1, ..., mk },
j =L
Proof. Let V be the set of vertices of graph G and Sk ⊂ V the set of vertices corresponding to S in subgraph Gk . Graph G(Sk ) is isomorphic to G(S) and, thus, is strongly connected. Furthermore, it can be seen that if G(VࢨS) is strongly connected and sets VFk−1 ∩ (V \ S ) and VFk ∩ (V \ S ) are non-empty, then G(V \ Sk ) is also a strongly connected subgraph of G. Therefore, the corresponding connectivity inequality for the MRPP in G,
xk (δ − (S )) + zk−1 (S ) ≥ 1, is facet inducing for MRPP(G) and hence for HMRPP∗ (G).
Since any closed walk must cross any given link an even cutset number of times, if we consider a set S ⊂ V with δRk (S ) odd, where
= δ (S ) ∩ ∪ then either the path servicing the links in cluster k, xk , crosses the cutset at least δRk (S ) + 1 times or the path servicing the links in cluster k − 1 ends at a vertex in S or the path servicing the links in cluster k ends at a vertex in S. Hence, the parity inequalities
(ERk
AkR ),
δ + (S ) + xk δ − (S ) + zk−1 (S ) + zk (S ) ≥ δRk (S ) + 1, ∀ S ⊂ V, such that δRk (S ) is odd, (22)
are valid for the HMRPP. Theorem 3. Parity inequalities (22) are facet inducing for HMRPP∗ (G) if subgraphs G(S) and G(VࢨS) are strongly connected, VFk−1 ∩ (V \ S ) = ∅, and VFk ∩ (V \ S ) = ∅. Proof. Similar to that of Theorem 2.
4.3. K-C inequalities Consider the fractional HMRPP solution for the instance of Fig. 1 that we depict in graph G for the sake of clarity (see Fig. 4). The variables associated with all the links shown take value 1 except for those associated with edge (4, 8) in cluster 2, which take value 0.5 (x248 = x284 = 0.5). It can be seen that this fractional solution satisfies all the inequalities described before. In what follows,
|L − j |
i, j =L
( + zsk−1 ) ≥ zsk
s∈M j
≥ 2(K −1 ) + (K −2 ) (M0 : MK )kR
(23)
Note that we can consider that there is an artificial set ML , representing the remaining clusters in graph G, which must also be visited by all the HMRPP tours. In Fig. 5, the structure of a K-C inequality cutting the fractional solution in Fig. 4 is represented. Note that the left-hand side of the corresponding K-C inequality is 4+4 while the right-hand side is 6+4. Theorem 4. K-C inequalities (23) are valid for HMRPP∗ (G). Proof. Let us call V to the set of vertices in G. Let Mik ⊂ V , i = 0, . . . , K, i = L, be the set of vertices corresponding to Mi in subgraph Gk , and ML the set of the remaining vertices in V . Then, the sets Mik , i = 0, . . . , K are a partition of V satisfying: • •
4.2. Parity inequalities
xk
+
0≤ j≤K
Theorem 2. Connectivity inequalities (4) are facet inducing for HMRPP∗ (G) if subgraphs G(S) and G(VࢨS) are strongly connected, VFk−1 ∩ (V \ S ) = ∅ and VFk ∩ (V \ S ) = ∅.
δRk (S )
{i, j} ={0,K }
= 1, ..., p,
to be facet inducing.
( j−i ) xk Mi : M j
0≤i< j≤K
The following theorem states some conditions for the connectivity inequalities (4) in the formulation,
xk (δ − (S )) + zk−1 (S ) ≥ 1,
(K −2 ) xk (M0 : MK ) +
4.1. Connectivity inequalities
•
(M0k : MKk ) contains an even number of required links of G, all the other required links are in the subgraphs G(Mik ), i = 0, . . . , K, and each of the above subgraphs contains at least a required link.
Note that these conditions imply that each R-set Rki is contained k in exactly one of the sets M0k ∪ MKk , M1k , . . . , MK−1 and each one of these sets contains at least one R-set. Therefore, this partition defines a K-C inequality for the MRPP in G, thus valid for MRPP(G), and has the same expression as (23). Hence, it is valid for the HMRPP∗ (G). Theorem 5. K-C inequalities (23) are facet inducing for HMRPP∗ (G) if the following conditions hold: (a) Subgraphs G(Mi ), i = 0, . . . , K, i = L, are strongly connected, (b) sets VFk ∩ ML−1 and VFk−1 ∩ ML+1 are nonempty,
(c) sets VFk−1 ∩ ML−1 and VFk ∩ ML+1 are nonempty, (d) for each i = L −1, L, either sets A(Mi , Mi+1 ) and A(Mi+1 , Mi ) or set E (Mi , Mi+1 ) are nonempty, and (e) ≥ |α − β|, where = |ERk (M0 , MK )|, α = |AkR (M0 , MK )|, and β = |AkR (MK , M0 )|. Proof. We prove first that the corresponding K-C inequality in graph G is facet inducing for MRPP(G) by checking the three conditions described in Section 3.1: (1) Condition (a) implies that subgraphs G(Mik ), i = L, are strongly connected, while the strongly connectivity of each Gk and the topological structure of G assure that, although subgraph G(ML ) is not strongly connected, it satisfies the weaker condition mentioned in Section 3.1.
Please cite this article as: M. Colombi et al., The Hierarchical Mixed Rural Postman Problem: Polyhedral analysis and a branch-and-cut algorithm, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.07.026
JID: EOR
ARTICLE IN PRESS
[m5G;August 2, 2016;10:16]
M. Colombi et al. / European Journal of Operational Research 000 (2016) 1–12
7
Fig. 4. A fractional solution that can be cut by a K-C inequality.
5. The branch-and-cut algorithm In this section we present a branch-and-cut algorithm that embeds specific separation procedures for the inequalities described in the previous section as well as an upper bound obtained through a Tabu Search heuristic presented in Colombi et al. (2015). 5.1. Initial relaxation The initial LP relaxation contains traversing inequalities (1) and (2), symmetry Eqs. (3), a connectivity inequality (4) associated with each connected component induced by the required links in each cluster, Eqs. (6) and (7), and inequalities (8) to (10) without the integrality conditions. 5.2. Separation algorithms
Fig. 5. A K-C configuration with K = 4 and L = 3 that cuts the fractional solution in Fig. 4.
(2) Conditions (b) and (c) guarantee that arc sets
A(MLk−1 , ML ),
A(ML , MLk−1 ), A(ML , MLk+1 ), and A(MLk+1 , ML ) in G are non empty, and condition (d) guarantees that all of the sets A(Mik , Mik+1 ), A(Mik+1 , Mik ), i = L −1, L, in G, are nonempty. (3) Condition (e) implies that ≥ |α − β|, where = |ER (M0k , MKk )|, α = |AR (M0k , MKk )|, and β = |AR (MKk , M0k )|. Therefore, the K-C inequality is facet inducing for the MRPP in G and hence, it is facet inducing for the HMRPP∗ (G).
The separation algorithms that have been used to identify the connectivity, parity, and K-C inequalities that are violated by the current LP solution at any iteration of the cutting plane algorithm are described in what follows. 5.2.1. Separation of connectivity constraints Let (xˆ, zˆ) be a fractional LP solution. For each cluster k = 1, . . . , p, consider the support directed graph having an arc (i, j) for each variable xˆki j > 0. Now construct the auxiliary weighted directed graph Gˆ k obtained after shrinking each Rk -connected component Rki into a single vertex. Note that when a subset of vertices is shrunk all the parallel resulting arcs are substituted by only one arc with weight equal to the sum of all these arc weights. Connectivity inequalities (4) can be separated exactly in polynomial time by computing a maximum directed flow between every
Please cite this article as: M. Colombi et al., The Hierarchical Mixed Rural Postman Problem: Polyhedral analysis and a branch-and-cut algorithm, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.07.026
ARTICLE IN PRESS
JID: EOR 8
[m5G;August 2, 2016;10:16]
M. Colombi et al. / European Journal of Operational Research 000 (2016) 1–12
a
b
c
Fig. 6. Phases for K-C separation.
pair of vertices of graph Gˆ k (see, for example, Benavent, Corberán, & Sanchis, 20 0 0). Given that the exact procedure is computationally expensive, we also apply the following heuristic separation algorithm based on the computation of connected components (see Benavent et al., 20 0 0): For each ε = 0, 0.25, 0.5, compute the connected components of the graph Gˆ k induced by the arcs with a weight xˆka > ε . For each connected component with set of vertices S containing at least one vertex corresponding to a Rki , check if the corresponding inequality (4) is violated. 5.2.2. Separation of parity inequalities Parity inequalities (22) can be separated in polynomial time by means of the Padberg–Rao procedure Padberg and Rao (1982) for finding minimum-weight odd cutsets (see also the more efficient algorithm proposed in Letchford, Reinelt, & Theis (2004)). We also use the following fast heuristic algorithm, similar to the one proposed in Grötschel and Holland (1985). Let (xˆ, zˆ) be a fractional LP solution. For each cluster k = 1, . . . , p, consider the support directed graph having an arc (i, j) for each variable xˆki j > 0. Now construct the auxiliary undirected weighted graph Gˆ k obtained after replacing (1) each edge e = {i, j} by an edge e with weight xˆke := xˆki j + xˆkji − 1 if e ∈ ERk , and xˆke := xˆki j + xˆkji otherwise, and
(2) each arc (i, j) by an edge e with weight xˆke := xˆki j − 1 if (i, j ) ∈ AkR , and xˆke := xˆki j otherwise. For each ε = 0, 0.25, 0.5, compute the connected components of the graph Gˆ k induced by the edges e with a weight xˆke > ε . For each connected component such that the corresponding cutset contains an odd number of required edges for the cluster k, check if the corresponding inequality (22) is violated. 5.2.3. Separation of K-C inequalities The separation of K-C inequalities is done by means of a heuristic algorithm that works as follows. For each cluster k = 1, . . . , p, let us consider the graph resulting of adding to the auxiliary undirected weighted graph Gˆ k defined above an artificial required vertex (denoted as ML in the definition of the K-C inequalities and representing the remaining clusters) and all the arcs entering in and leaving from Gk associated with variables zk−1 and zk (see Fig. 5). Now we apply the separation algorithm, similar to that described in Corberán et al. (2005) for the MRPP, that we sketch in what follows. For each R-set different from ML , the algorithm consists of three phases. At the two first phases we ignore the directions of the arcs. In phase I (see Fig. 6a), we search to divide the R-set into two parts, say M0 and MK , both containing an even number of
odd-degree nodes with respect to the required links and such that xˆk (δ (M0 )) ≈ 1 but xˆk (M0 : MK ) ≈ 0. Phase II (see Fig. 6b) consists of finding an (undirected) maximum xˆk -weight tree spanning the nodes M0 , MK and the mk remaining R-sets (including ML ). Then, the tree is transformed into a path linking M0 and MK by iteratively shrinking each R-set with degree 1 on the tree into its unique adjacent node. At this point, we have an initial K-C structure with node sets M0 , M1 , . . . , ML , . . . , MK . We consider the mixed graph having node set {M0 , M1 , . . . , MK } and having an arc (Mi , Mj ) (an edge in the case (M0 , MK )) with xˆk -weight equal to the sum of the xˆk -weights of all the arcs (links in the case (M0 , MK )) in Gk from a vertex in Mi to a vertex in Mj . See Fig. 6c for an example with K = 6 and L = 2. In phase III we check the corresponding K-C inequality for violation and, if not, we try to find a smaller violated K-C inequality by shrinking some consecutive nodes Mi and Mi+1 into a single one. 5.3. Cutting-plane algorithm In this section, we analyze the contribution of the different families of inequalities and the corresponding separation algorithms on the solution of the HMRPP. To do this, we have checked their effect on the lower bound obtained at the root node, using CPLEX as the LP solver but with all its cuts disabled. We have selected eight representative instances, RB422, RB457, RB555, RB577, RD422, RD457, RD555, and RD577, with 2, 3, 4, and 5 clusters, which results in a total of 32 instances. The characteristics of these instances are described in Section 6. We have implemented seven different strategies. The basic strategy, called ‘Base’, consists of applying only the heuristic algorithm for separating connectivity inequalities with ε = 0, 0.25, 0.5. Each value of ε is used only if the previous ones fail to find violated inequalities. The other strategies add the following separation algorithms to the basic strategy: +Exact: exact connectivity separation when the heuristic fails. +Parity: heuristic separation of parity inequalities. +KC: heuristic separation of K-C inequalities only when the heuristic connectivity algorithm with ε = 0 fails to find violated inequalities. All: heuristics for parity and K-C inequalities as above and exact connectivity separation only when all the other algorithms fail. +Parity+KC 1: heuristic separation of parity and K-C heuristics as described above. +Parity+KC 2: heuristic separation of parity as above and K-C heuristics in a given cluster only when, for this cluster, the heuristic connectivity algorithm with ε = 0 fails and no violated K-C inequalities have been found in previous clusters.
Please cite this article as: M. Colombi et al., The Hierarchical Mixed Rural Postman Problem: Polyhedral analysis and a branch-and-cut algorithm, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.07.026
ARTICLE IN PRESS
JID: EOR
[m5G;August 2, 2016;10:16]
M. Colombi et al. / European Journal of Operational Research 000 (2016) 1–12 Table 1 Comparison of the lower bound at the root node with the different strategies. Strategy
LB_root
Time (seconds)
Base +Exact +Parity +KC All +Parity+KC 1 +Parity+KC 2
78,941.7 +0.17 percent +1.42 percent +0.37 percent +1.89 percent +1.77 percent +1.69 percent
9.97 +2,314.4 +19.0 +309.6 +1,877.5 +547.0 +360.0
Table 1 shows the results obtained with these strategies on the selected instances. The first row shows the average value of the lower bound and the time, in seconds, obtained with the strategy ‘Base’. The following rows report the average improvement of the lower bound, in percentage, obtained with each strategy with respect to the first one, as well as the average increase in computing time. As it can be seen in the table, adding only exact separation of connectivity inequalities is not worth: the improvement in the lower bound is not significant, while the time increases excessively. On the other hand, adding the separation of parity and K-C inequalities increases the lower bound at the expense of a small computational effort. As expected, the use of all the separation algorithms produces the largest improvement, although almost the same improvement, but with a third of the time, is obtained when exact connectivity separation is removed. Finally, the last strategy produces a similar improvement with a lower computational effort. Therefore, we decided to implement the cutting-plane algorithm using the strategy ‘+Parity+KC 2’ at the root node. In the remaining nodes of the branch-and-cut tree, K-C separation is not applied. Moreover, we enable CPLEX to use all its classical cuts, the strong branching procedure is selected and the preference for branching is set on variables zik , i ∈ V, k = 1, ..., p. The best bound strategy is used to select unexplored nodes from the tree, and the solver is set to try to improve the best bound (MIP emphasis parameter). Basic heuristics of the solver are disabled. Finally, for each instance, we use as cutoff value for the nodes to visit the best known value obtained by the Tabu Search in Colombi et al. (2015). Time limit has been set to 3600 seconds by using only one thread. All other parameters of the branch-and-cut are automatically selected by the solver. 6. Computational experiments In this section, we first present the results obtained by testing the proposed branch-and-cut algorithm on the set of instances proposed in Colombi et al. (2015). These instances, available at the webpage http://www.uv.es/corberan/instancias.htm , were obtained by modifying benchmark instances for the MRPP and the MGRP. They are organized as follows: •
•
First group: small instances derived from the MGRP, identified as ALBA_k, ALDA_k and MADR_k, where k = 2, .., 5 is the number of clusters of the instances. Second group: large instances derived from the MRPP, identified as RB_k and RD_k, where k = 2, .., 5 is the number of clusters of the instances.
From each original MRPP or MGRP instance, four HMRPP instances were generated by introducing two, three, four and five clusters, respectively. Each required link of the original MRPP or MGRP instance is randomly assigned to a cluster. Costs are computed as follows:
•
•
•
9
the original costs are used as the costs for servicing the required links; the costs for traversing links already served (deadheaded) are equal to the original costs randomly reduced by 10–20 percent; the costs for traversing links not served yet are equal to the original costs randomly increased by 10–20 percent.
The characteristics of the original instances are shown in Table 2. Each RB_k and RD_k set has 18 instances and each ALBA_k, ALDA_k, and MADR_k set has 10 instances, for a total of 264 instances. Algorithms have been coded in C/C++ using the IBM CPLEX 12.6 MIP Solver with Concert Technology 2.9 on a single thread of an Intel Core i7 at 3.4 gigahertz with 16 gigabyte RAM. CPLEX heuristic algorithms were turned off. The optimality gap tolerance was set to zero, and strong branching Applegate, Bixby, Chvátal, and Cook (1995) and the best bound strategies were selected. All the experiments were carried out with a time limit of 1 hour. Tables 3 and 4 report the results obtained with the algorithm on the two groups of instances. First two columns show the name of the instance set and the number of clusters. Column ‘# opt’ reports the number of instances optimally solved in each group. Column ‘Gap’ gives, only for the unsolved instances, the average percentage gap between the lower bound and the best solution found. The average computing times given in column ‘Time’ correspond to the instances solved to optimality. Column ‘Nodes’ shows the average number of nodes of the branch-and-cut tree. The last three columns report the average number of violated connectivity, parity and K–C inequalities added during the branch-and-cut procedure. The results obtained in the Alba, Alda, and Madr instances are very good. As it can be seen in Table 3, all but one instances have been solved to optimality in few seconds, and for the unsolved instance we have obtained a gap of 1.26 percent. It can be observed that the number of cuts needed to solve the instances optimally increases with the number of clusters, as expected. For the large-size instances RB and RD, the results are not that good. Although many of the RB instances have been solved optimally (52 out of 72), only 27 out of 72 RD instances could be solved. Note that the size of the RD instances is approximately twice the size of the RB ones. In both sets, it can be observed that the difficulty of the instance increases with the number of clusters. With two clusters, 32 out of 36 instances could be solved, while only 11 out of 36 were solved with five clusters. Overall, it can be said that the branch-and-cut procedure is capable of solving RB instances with up to four clusters and RD ones with only two clusters. In any case, the gaps obtained for the unsolved instances is quite good, since it never exceeds 2 percent on average. This means that the algorithm is capable of providing solutions with a guaranteed quality on instances with up to 10 0 0 vertices, 260 0 links, and five clusters in less than 1 hour of computing time. 6.1. Comparison with other algorithms in the Literature As far as we know, the only other paper dealing with an exact method for solving a hierarchical arc routing problem is the one by Cabral et al. (2004), in which the Hierarchical (undirected) Chinese Postman Problem is studied. The authors propose an exact procedure consisting in transforming the HCPP into an equivalent Rural Postman Problem, which is then solved optimally by using the exact method described by Ghiani and Laporte (20 0 0). Details on this transformation can be found in the mentioned paper by Cabral et al. or in Laporte (2014). Given that the HCPP is a particular case of the HMRPP, in order to assess the performance of our algorithm, we have compared it with the Cabral et al. procedure on a set of HCPP instances, which are available at http://www.uv.es/corberan/instancias.htm.
Please cite this article as: M. Colombi et al., The Hierarchical Mixed Rural Postman Problem: Polyhedral analysis and a branch-and-cut algorithm, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.07.026
ARTICLE IN PRESS
JID: EOR 10
[m5G;August 2, 2016;10:16]
M. Colombi et al. / European Journal of Operational Research 000 (2016) 1–12 Table 2 Characteristics of the original sets of instances. Set
|V|
|E R |
|ENR |
|E|
|AR |
|ANR |
|A|
Alba Alda Madr RB RD
116 214 196 357 – 498 708 – 999
59 – 148 146 – 209 80 – 250 86 – 739 159 – 1481
10 – 44 15 – 78 14 – 90 71 – 585 143 – 1288
84 – 164 224 118 – 292 261 – 987 521 – 1969
10 – 74 11 – 116 19 – 158 69 – 676 131 – 1502
0 – 27 11 – 116 4 – 58 64 – 573 138 – 1256
10 – 90 127 24 – 198 210 – 976 470 – 1984
Table 3 Results on the Albaida, Aldaya and Madrigueras sets of instances. Set
# hier
# opt
Gap (percent)
Time (seconds)
Nodes
Conn.
Parity
KC
Alba
2 3 4 5 2 3 4 5 2 3 4 5
10/10 10/10 10/10 10/10 10/10 10/10 10/10 10/10 10/10 10/10 9/10 10/10
– – – – – – – – – – 1.26 –
0.5 1.9 5.9 6.5 5.9 32.1 107.9 64.0 6.0 39.0 21.1 39.1
1.3 5.4 12.3 12.4 4.6 29.4 270.3 101.8 6.7 38.7 649.5 61.8
27.1 82.6 155.0 175.1 71.7 172.0 315.0 371.1 36.3 91.4 203.9 213.0
31.3 55.5 72.8 83.6 104.7 185.4 262.0 264.7 66.9 113.3 156.3 160.5
9.6 57.2 122.1 86.0 155.4 358.6 332.4 329.3 92.1 178.0 202.5 167.2
Alda
Madr
Table 4 Results on instance sets RB and RD. Set
# hier
# opt
Gap (percent)
Time (seconds)
Nodes
Conn.
Parity
KC
RB
2 3 4 5 2 3 4 5
18/18 14/18 12/18 8/18 14/18 7/18 3/18 3/18
– 0.65 1.20 1.81 1.14 1.10 1.71 1.91
164.6 500.1 427.9 866.3 871.9 432.9 1,669.3 1,797.1
87.1 412.1 650.2 1,442.3 335.9 486.7 864.0 788.4
210.1 549.1 865.1 1,452.0 390.4 845.6 1,526.2 1,857.3
198.7 451.6 599.9 722.5 617.7 837.1 1,024.0 1,101.0
509.3 1,186.2 1,339.4 1,366.6 1,255.4 1,925.6 1,568.3 1,480.8
RD
Table 5 Number of variables in the RPP instances obtained from the HCPP instances. RB
RD
Clusters
Unsimplified
Simplified
Percentage
Unsimplified
Simplified
Percentage
2 3 4 5
295,227.5 406,749.5 457,057.7 461,229.7
198,329.5 249,406.8 272,266.6 271,887.9
67.2 61.3 59.7 59.1
1,174,152.7 1,652,088.8 1,842,069.0 1,840,200.5
787,150.2 1,005,908.2 1,081,384.6 1,058,054.8
67.1 60.9 58.8 57.6
Since we did not have access to the original HCPP instances used by Cabral et al., we have generated some new instances, again from the RB and RD sets of MRPP instances. Now, all the links are considered required edges to obtain an undirected graph where all the edges are required. The RB instances have 357 ≤ |V| ≤ 498 and 884 ≤ |E| ≤ 1326, while the RD instances have 708 ≤ |V| ≤ 999 and 1867 ≤ |E| ≤ 2678. Each edge is randomly assigned to a cluster using the same strategy as in Cabral et al. (2004). Then we have transformed these HCPP instances into RPP ones with the method described in Cabral et al. (2004) and solved them with the, up to our knowledge, best available exact procedure for solving the RPP (Corberán, Plana, & Sanchis, 2007). The transformation consists of, basically, creating a new graph containing a copy of each subgraph induced by the edges belonging to the same cluster and completing the graph with edges representing the shortest paths between every pair of vertices. The resulting graph contains a huge number of edges, many of which can be removed by using a well-known procedure in arc routing problems. Although this simplification is not mentioned in Cabral et al. (2004), it is reasonable to assume that the authors would
apply it in instances of the size we want to solve here. Table 5 shows the average number of variables of the transformed RPP instances before and after being simplified, as well as the average percentage of variables that remain after the simplification. Note that this procedure reduces the number of variables significatively, but it is still a very large number. Table 6 shows the results obtained with the Cabral et al. procedure and the branch-and-cut algorithm proposed here on the HCPP instances described above. Column ‘LB’ represents the average final lower bound for those instances that were not solved by neither the Cabral et al. procedure nor by our branch-and-cut algorithm. Note that, despite the huge number of variables, the method proposed in Cabral et al. (2004) is capable of solving a good number of RB instances (39 out of 72). As expected, in RD instances, which have more than one million variables on average, the procedure cannot produce as many optimal solutions (only 6 out of 72). The branch-and-cut method, in spite of not being a method developed specifically for solving the HCPP, obtains very good results on the RB instances (43 out of 72 solved to optimality) and on the RD with two and three clusters (25 out of 72 optimal solutions).
Please cite this article as: M. Colombi et al., The Hierarchical Mixed Rural Postman Problem: Polyhedral analysis and a branch-and-cut algorithm, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.07.026
ARTICLE IN PRESS
JID: EOR
[m5G;August 2, 2016;10:16]
M. Colombi et al. / European Journal of Operational Research 000 (2016) 1–12
11
Table 6 Comparison with the Cabral et al. algorithm. Cabral et al.
B&C
Set
# hier
# opt
LB
Time (seconds)
# opt
LB
Time (seconds)
RB
2 3 4 5 2 3 4 5
18/18 12/18 6/18 3/18 6/18 0/18 0/18 0/18
– 61,639.2 75,344.8 85,761.1 – 97,476.0 113,091.4 124,103.2
239.9 1,369.4 1,108.3 1,982.9 2120.4 – – –
18/18 16/18 6/18 3/18 18/18 7/18 0/18 0/18
– 61,705.3 75,350.8 85,750.4 – 97,530.3 114,260.9 124,112.3
24.3 766.7 1,267.9 1,457.3 755.5 1,690.0 – –
RD
However, it is not capable of solving any RD instances with four or five clusters. In the unsolved instances, the final lower bounds obtained by the branch-and-cut algorithm are slightly better in general, while the average computing times for the solved instances are smaller. Note that, unlike with the HMRPP instances, no upper bound has been used for the HCPP ones. 7. Conclusions In this paper we have studied an interesting arc routing problem with clusters, the Hierarchical Mixed Rural Postman Problem (HMRPP), which arises in different contexts such as snow plowing, street cleaning, and garbage collection. This problem has been seldom studied because of its complexity, strongly related to the number of clusters and to the type of the graph on which the problem is defined. We are aware of only one exact method devised for solving a special case of the HMRPP (see Cabral et al., 2004). Here, we have provided the first polyhedral analysis of the HMRPP and proposed several separation heuristics to find violated inequalities to be added in a branch-and-cut algorithm. Our procedure has been able to find 198 optimal solutions out of 264 instances in less than 1 hour. We have compared our algorithm with the exact procedure by Cabral et al. (2004) for the Hierarchical Chinese Postman Problem (HCPP) that is a particular case of the HMRPP. The results obtained show a slightly better performance of our method. Interesting future research directions would include the generalization of the HMRPP to the case in which a fleet of vehicles with limited capacities is available and load balancing constraints are considered. This problem would reflect the conditions encountered in real life better, and it would be more useful from a practical point of view, although its difficulty would increase considerably. The design and implementation of good heuristics for these extensions would be essential for the exact solution of small-medium instances and for the approximate solution of medium–large instances. Acknowledgments The work by Ángel Corberán, Isaac Plana, and José M. Sanchis was supported by the Spanish Ministerio de Economía y Competitividad and Fondo Europeo de Desarrollo Regional (FEDER) through project MTM2015-68097-P (MINECO/FEDER) and by the Generalitat Valenciana (project GVPROMETEO2013-049). Appendix Proof of Theorem 1 p+1
Theorem 1. z1
≥ 1 is facet-inducing of the polyhedron MRPP(G).
Proof. Since G \ {(1[ p+1] , 1[1] )} is not a strongly connected graph, we need a specific proof. Without loss of generality, let us
Fig. 7. HMRPP tours satisfying z13 = 1.
suppose p = 2. As mentioned in Section 3, the dimension of MRPP(G) is 2|E | + |A| − |V | + 1, that is, dim(MRPP(G )) =
= 6|E | + 3|A| + |VF1 | + |VF2 | + 1 − 3|V | + 1 = 6|E | + 3|A| + |VF1 | + |VF2 | − 3|V | + 2, and this is the number of affinely independent HMRPP tours satisfying z13 = 1 we need to find. Let us consider the MGRP instance defined on the original graph G = (V, E, A ) with required links those in ER ∪ AR and required vertices all the vertices in V. Since the description of the polyhedron associated to the MGRP is the same than that of the MRPP polyhedron, we have that the dimension of MGRP(G) is m = 2|E | + |A| − |V | + 1 and, hence, there are m + 1 affinely independent MGRP tours y1 , y2 , . . . , ym+1 . Note that all these tours traverse all the links in ER ∪ AR and visit all the vertices and, therefore, these tours are also feasible solutions for the MRPPs defined in graphs G1 , G2 and G3 . Now, we want to build HMRPP tours by combining a tour yj in each graph Gk with three arcs connecting the graphs Gk (corresponding to the z variables). For example, if variables z11 and z12 exist (vertex 1 would be a final vertex in each graph Gk ) then, selecting any tour yj for each graph Gk and the three arcs (1[1] , 1[2] ) (1[2] , 1[3] ) and (1[3] , 1[1] ), we obtain a HMRPP tour in G. If, for example, vertex 1 is not the final vertex of a path associated with cluster 1, we can modify the tours yj by adding to them the incidence vector p1 of the arcs in a path from vertex 1 to a final vertex in graph G1 . We will denote by x j = y j + p1 the resulting vector in G1 . We do the same in G2 and G3 , obtaining vectors that will be denoted with the same names, x j = y j + p2 and x j = y j + p3 , for the sake of simplicity. Each row of the matrix in Fig. 7 represents a HMRPP tour in G satisfying z13 = 1, where an asterisk represents vectors in the corresponding Gk that are modifications from the yj vectors using paths different from the pj above (joining different terminal vertices). Moreover, a big 0 or a big x1 in a block means that all the rows in this block are either zeros or x1 vectors.
Please cite this article as: M. Colombi et al., The Hierarchical Mixed Rural Postman Problem: Polyhedral analysis and a branch-and-cut algorithm, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.07.026
ARTICLE IN PRESS
JID: EOR 12
[m5G;August 2, 2016;10:16]
M. Colombi et al. / European Journal of Operational Research 000 (2016) 1–12
Fig. 8. Vectors after subtracting row 1 to the rows of matrix in Fig. 7.
By subtracting the first row to all the others, and remove all the zero rows obtained (the first one in each block), we obtain the matrix in Fig. 8, where a block with two asterisks represent the result of the subtraction. Note that all the rows in this matrix are linearly independent. The total number of these rows is
3m + |VF1 | − 1 + |VF2 | − 1 = 3 2|E | + |A| − |V | + 1
+|VF1 | + |VF2 | − 2 = 6|E | + 3|A| + |VF1 | + |VF2 | − 3|V | + 1, and we have the 6|E | + 3|A| + |VF1 | + |VF2 | − 3|V | + 2 affinely independent tours needed. References Alfa, A., & Liu, D. (1988). Postman routing problem in a hierarchical network. Engineering Optimization, 14(2), 127–138. Applegate, D., Bixby, R., Chvátal, V., & Cook, W. (1995). Finding cuts in the TSP. Technical report. DIMACS, 95–05. Ávila, T. (2014). Algunos problemas de rutas por arcos. Ph.D. thesis. Spain: Univesitat de València. Ávila, T., Corberán, Á., Plana, I., & Sanchis, J. (2015). The stacker crane problem and the directed general routing problem. Networks, 65, 43–55. Benavent, E., Corberán, A., & Sanchis, J. (20 0 0). Linear programming based methods for solving arc routing problems. In M. Dror (Ed.), Arc routing: Theory, solutions and applications (pp. 231–275). Kluwer. Bodin, L., & Kursh, S. (1978). A computer-assisted system for the routing and scheduling of street sweepers. Operations Research, 26(4), 525–537. Cabral, E., Gendreau, M., Ghiani, G., & Laporte, G. (2004). Solving the hierarchical Chinese postman problem as a rural postman problem. European Journal of Operational Research, 155(1), 44–50.
Chernak, R., Kustiner, L., & Phillips, L. (1990). The snowplow problem. The UMAP Journal, 11(3), 241–250. Colombi, M., Corberán, Á., Mansini, R., Plana, I., & Sanchis, J. (2015). The hierarchical mixed rural postman problem. Transportation Science. in press Corberán, Á., & Laporte, G. (2014). Arc routing: Problems, methods, and applications. MOS-SIAM series on optimization. Philadelphia: SIAM. Corberán, Á., Mejía, G., & Sanchis, J. (2005). New results on the mixed general routing problem. Operations Research, 53(2), 363–376. Corberán, Á., Plana, I., & Sanchis, J. (2007). A branch-and-cut algorithm for the windy general routing problem and special cases. Networks, 49, 245–257. Corberán, Á., Plana, I., & Sanchis, J. (2008). The windy general routing polyhedron: A global view of many known arc routing polyhedra. SIAM Journal on Discrete Mathematics, 22(2), 606–628. Corberán, Á., Romero, A., & Sanchis, J. (2003). The mixed general routing polyhedron. Mathematical Programming, 96(1), 103–137. Dror, M., Stern, H., & Trudeau, P. (1987). Postman tour on a graph with precedence relation on arcs. Networks, 17(3), 283–294. Gelinas, E. (1992). Le problème du postier chinois avec contraintes générates de préséance. M.Sc. A. dissertation, École Polytechnique de Montréal. Ghiani, G., & Improta, G. (20 0 0). An algorithm for the hierarchical Chinese postman problem. Operations Research Letters, 26(1), 27–32. Ghiani, G., & Laporte, G. (20 0 0). A branch-and-cut algorithm for the undirected rural postman problem. Mathematical Programming, 87(3), 467–481. Grötschel, M., & Holland, O. (1985). Solving matching problems with linear programming. Mathematical Programming, 3, 243–259. Haslam, E., & Wright, J. (1991). Application of routing technologies to rural snow and ice control. Transportation Research Records, 1304, 202–211. Korteweg, P., & Volgenant, T. (2006). On the hierarchical Chinese postman problem with linear ordered classes. European Journal of Operational Research, 169(1), 41–52. Laporte, G. (2014). The undirected Chinese postman problem. In Á. Corberán, & G. Laporte (Eds.), Arc routing: Problems, methods, and applications. In MOS-SIAM Series on Optimization (pp. 53–64). Philadelphia: SIAM. Lemieux, P., & Gampagna, L. (1984). The snow ploughing problem solved by a graph theory algorithm. Civil Engineering Systems, 1(6), 337–341. Letchford, A., & Eglese, R. (1998). The rural postman problem with deadline classes. European Journal of Operational Research, 105(3), 390–400. Letchford, A., Reinelt, G., & Theis, D. O. (2004). A faster exact separation algorithm for blossom inequalities. In D. Bienstock, & G. Nemhauser (Eds.), Integer programming and combinatorial optimization. In Lecture notes in computer science: vol. 3064 (pp. 196–205). Berlin, Heidelberg: Springer. doi:10.1007/ 978- 3- 540- 25960- 2_15. Padberg, M., & Rao, M. (1982). Odd minimum cut-sets and B-matchings. Mathematics of Operations Research, 7, 67–80. Perrier, N., Amaya, C., Langevin, A., & Cormier, G. (2006). Improving snow removal operations using operations research: A case study. In International conference on information systems, logistics and supply chain, ILS2006. Lyon, France. Perrier, N., Langevin, A., & Amaya, C. (2008). Vehicle routing for urban snow plowing operations. Transportation Science, 42(1), 44–56.
Please cite this article as: M. Colombi et al., The Hierarchical Mixed Rural Postman Problem: Polyhedral analysis and a branch-and-cut algorithm, European Journal of Operational Research (2016), http://dx.doi.org/10.1016/j.ejor.2016.07.026