Exact methods based on node routing formulations for arc routing problems Roberto Baldacci Vittorio Maniezzo Technical Report UBLCS-2004-10 May, 2004 Department of Computer Science University of Bologna Mura Anteo Zamboni 7 40127 Bologna (Italy) The University of Bologna Department of Computer Science Research Technical Reports are available in PDF and gzipped PostScript formats via anonymous FTP from the area ftp.cs.unibo.it:/pub/TR/UBLCS or via WWW at URL http://www.cs.unibo.it/. Plain-text abstracts organized by year are available in the directory ABSTRACTS. Recent Titles from the UBLCS Technical Report Series 2003-10 A Scalable Architecture for Responsive Auction Services Over the Internet, Amoroso, A., Fanzieri F., June 2003. 2003-11 WSSecSpaces: a Secure Data-Driven Coordination Service for Web Services Applications, Lucchi, R., Zavattaro, G., September 2003. 2003-12 Integrating Agent Communication Languages in Open Services Architectures, Dragoni, N., Gaspari, M., October 2003. 2003-13 Perfect load balancing on anonymous trees, Margara, L., Pistocchi, A., Vassura, M., October 2003. 2003-14 Towards Secure Epidemics: Detection and Removal of Malicious Peers in Epidemic-Style Protocols, Jelasity, M., Montresor, A., Babaoglu, O., November 2003. 2003-15 Gossip-based Unstructured Overlay Networks: An Experimental Evaluation, Jelasity, M., Guerraoui, R., Kermarrec, A-M., van Steen, M., December 2003. 2003-16 Robust Aggregation Protocols for Large-Scale Overlay Networks, Montresor, A., Jelasity, M., Babaoglu, O., December 2003. 2004-1 A Reliable Protocol for Synchronous Rendezvous (Note), Wischik, L., Wischik, D., February 2004. 2004-2 Design and evaluation of a migration-based architecture for massively populated Internet Games, Gardenghi, L., Pifferi, S., D’Angelo, G., March 2004. 2004-3 Security, Probability and Priority in the tuple-space Coordination Model (Ph.D. Thesis), Lucchi, R., March 2004. 2004-4 A New Graph-theoretic Approach to Clustering, with Applications to Computer Vision (Ph.D Thesis), Pavan., M., March 2004. 2004-5 Knowledge Management of Formal Mathematics and Interactive Theorem Proving (Ph.D. Thesis), Sacerdoti Coen, C., March 2004. 2004-6 An architecture for Content Distribution Internetworking (Ph.D. Thesis), Turrini, E., March 2004. 2004-7 T-Man: Fast Gossip-based Construction of Large-Scale Overlay Topologies, Jelasity, M., Babaoglu, O., May 2004. 2004-8 A Robust Protocol for Building Superpeer Overlay Topologies, Montresor, A., May 2004. 2004-9 A Unified Approach to Structured, Semistructured and Unstructured Data, Magnani, M., Montesi, D., May 2004. Exact methods based on node routing formulations for arc routing problems Roberto Baldacci2 Vittorio Maniezzo3 Technical Report UBLCS-2004-10 May, 2004 Abstract This paper proposes a new transformation of arc routing problems into equivalents node routing problems, with emphasis on the transformation of Capacitated Arc Routing Problems (CARP) into Capacitated Vehicle Routing Problems (CVRP). For this last case, an analogue transformation has already been proposed in Pearn et al. [21], where each required CARP arc was mapped onto a triplet of CVRP nodes. In our case, only 2 CVRP nodes are needed for every CARP required arc. The transformed instances have a structure and a dimension which make most CARP benchmarks solvable by state of the art CVRP techniques. We thus propose a general purpose transformation of arc into node routing problems and new results on lower bounds and exact methods for CARP instances. . DISMI, University of Modena and Reggio Emilia, Viale Allegri 13, 42100 Reggio Emilia, Italy. . Department of Computer Science, University of Bologna, Mura Anteo Zamboni, 7 40127 Bologna, Italy. 1 1 Introduction K EYWORDS: 1 Arc Routing, Node Routing, Valid inequalities, Branch-and-Cut. Introduction Graph theory was born over an arc routing problem [11], and ever since both arc and node routing problems have received continuous research attention. The connections between these two classes of problems have been underlined by the transformation techniques that can translate an instance of a problem of one class into an instance of a corresponding problem of the other class. In fact, every problem variant in one class has a mirror image in the other one, thus making it possible to translate research results between the two. Nevertheless, at least from a computational perspective, node routing problems have received much more attention than the corresponding arc routing ones, and there exist problems for which research results are much more impressive for node routing than for their arc routing counterparts. The most notable of these cases is probably the pair Capacitated Vehichle Routing Problem (CVRP) / Capacitated Arc Routing Problem (CARP); while for CVRP there exist a long established literature on exact techniques, for the CARP there is as yet no full paper describing an exact algorithm (the only one so far being has been proposed by Kiuchi et al. [15]). In fact, a number of exact methods for the CVRP have been presented in the literature. Fukasawa et al. [12] proposed an exact branch and cut and price method that is based on the Set Partitioning formulation of the CVRP. The lower bound is obtained by solving the LP relaxation using the q-route relaxation proposed by Christofides, Mingozzi and Toth [8] and adding to the linear program valid inequalities. The objective is to achieve a lower bound that is not dominated by the LP relaxation. Lysgaard, Letchford, and Eglese [19] proposed a branch-and-cut algorithm for the CVRP that uses a variety of cutting planes, including capacity, framed capacity, comb, partial multistar, hypotour and classical Gomory mixed integer cuts. Other branch-and-cut methods have been proposed by Augerat et al. [3], Ralphs et al. [22] and by Baldacci, Hadjiconstantinou and Mingozzi [5]. All the exact methods cited above were capable of solving to optimality the largest instance of the symmetric CVRP (135 customers) reported in the literature. In particular, the method of Fukasawa et al. [12] can consistently solve CVRP instances involving up to 135 customers. This paper presents the essential component of a methodology to translate arc routing into node routing problems and expands and implements it for the case CVRP / CARP. This results in an improvement over the previously known transformation ([21]) as it makes use of less transformed nodes; this, in turns, permits to use state-of-art exact techniques for the CVRP to solve to optimality hard benchmarks from the CARP literature. Several instances could thus be solved to optimality for the first time. The paper is organized as follows. Section 2 presents the transformation from arc routing into node routing and specifically from CARP to CVRP, Section 3 describes the CVRP branch-and-cut method that was used to solve the translated instances and Section 4 has the obtained computational results. 2 Arc and node routing Arc routing problems actually consist of a variety of problems, the optimization ones go from identifying the least cost cycle that traverses each edge of a graph at least once (chinese postman problem, . Corresponding author: R. Baldacci, DISMI, University of Modena and Reggio Emilia, Viale A. Allegri 13, 42100 Reggio Emilia (Italy), Tel. +39 0522 522229 Fax +39 0522 522230 e-mail: [email protected] UBLCS-2004-10 2 2 Arc and node routing CPP), or a subset of the edges (rural postman problem, RPP), to identifying cycles of least global cost ( -CPP), possibly using a depot node and considering arc and vehicle capacities (CARP). For a full overview on the topic the reader is referred for example to [10], [1], [13]. All these problems require to identify a cycle or a set of cycles through a given set of arcs. A basic transformation would therefore require to identify a cycle or a set of cycles through a given set of nodes. This can be later extended to consider capacities associated with requests. 2.1 Models and notation The CPP and the RPP ask for defining a cycle which traverses all / a subset of edges of a given graph at least once so that the cycle cost is minimized. The CARP asks for defining the routes for a given fleet of identical vehicles which collectively collect all goods distributed over some of the edges (the edges) of a given graph , so that the capacity of each vehicle is not exceeded and the total collection cost is minimized. All problems can be formulated for symmetric or asymmetric (directed) graphs, giving rise to variants of the same basic problems. In the undirected case, the problems can be modeled as follows. Given: an undirected weighted graph; !#"#"#"$&%(' set of % nodes, (plus a node corresponding to the depot in the case of the CARP); set of edges; *)+ .- set of required edges ( ) + , for the CPP); set of vertices containing the endpoints of the edges in ) (and the depot for the CARP); */10 2 cost of edge 3 45'768 . The CPP and the RPP ask for defining a cycle which traverses each edge in ) minimizes the cycle length. For the CARP it is furthermore necessary to introduce: at least once and available vehicles, each one of capacity 9 ; 0 2 request associated with edge 3 45':6; : 0 2=<?>A@ @ CBD3 45':6 )FE CBD3 45':6;HG ) " The CARP asks for defining the routes of the vehicles, each route starting and ending at the depot, so that each edge in ) is serviced by exactly one vehicle, the total request serviced by each vehicle does not exceed its capacity 9 , and the total routes cost is minimized. Notice that each required edge can be traversed by more than one vehicle, but only one of these traversal is declared to service the edge, all other ones are for deadheading. UBLCS-2004-10 3 2 Arc and node routing 2.2 Graph transformation The transformation we propose makes use of two nodes for each required arc of the original arc routing instance. That is, we work on an undirected graph ? , where ? #"#"#"1 ) ' is the set of nodes, corresponding to the endpoint nodes of the required arcs, each node in - being replicated as many times as are the required edges incident to it. The set of edges is such as to make completely connected. Each edge 3 45' in has a cost /10 2 defined as follows. Every node 6 has only one incident edge which corresponds to an edge in ) . Let 3 3& ' be that edge. Moreover, let be a known upper bound to the optimal solution cost of the arc routing instance. The cost /30 2 is then computed as follows: /10 2 < /10C0 1 4 /22 if 33&' $44' if 3 3&' $4 4' (1) 1 4 being the cost of the shortest path in from to 4 , where and 4 denote the nodes which were transformed into and 4 , respectively. Note that the cost of a required edge 3 45' in can be considered both explicitly and implicitly, if the arc is part of a minimum cost path. The use of such a path would imply deadheading over 3 45' . Note that expressions (1) can be generalized by varying the coefficient parameter according to which the required edge costs enter the redefined costs. A more general form is in fact as follows. /10 2 < 1 / 0C0 C /10 2 1 4 /22 if 3&': $44 ' if 33&' $44' (2) with @ . In the following subsections we will present how to extend this result to the CARP. 2.3 CARP: Pearn et al. transformation The possibility to transform an undirected CARP instance into a CVRP one is well-known, having been proposed in the literature by Pearn et al. [21]. This transformation, applied to a CARP when defined on graph with ) mandatory edges, results in a CVRP with 3 ) + 1 nodes. The transformation substitutes each edge 3 45' 6 ) of the CARP graph with a triplet of nodes, 0 2 , 0 2 and 20 . The distance matrix is then redefined based on the shortest path distance 0 2 among endpoints of each required edge 3 45':6 ) . The distances are defined as follows: 0 2 ! #"!$ < % /10 2&*/ "!$ 0 " @ 2 ) / & 0 1$ /10 2 C B* + 0 2&, - 20 0 2 *! < % . , /.3#0=3 if 3 45' ' ( ' if 3 45' ' ( ' C! 0 2 (3) (4) " (5) CVRP requests (i.e., customer demands) become 12 3 H14352H6&2 3= 8 3 45':6 ) " 7 02 9 (6) Figure 1 shows an example of this transformation. UBLCS-2004-10 4 2 Arc and node routing 4 s 4 s 42 43 m 20 12 m 24 s 34 s 24 s 2 4 2 3 23 s 34 32 3 s 21 8 16 s 23 m 31 m m 13 12 s s 12 1 1 13 Figure 1. Pearn et al. transformation of a simple graph The distance matrix of the CVRP instance resulting from the transformation is presented in in Table 1. By means of this transformation any feasible solution to the CARP can be transformed into a feasible set of tours for the CVRP of no greater cost. Some CVRP solutions could have lower costs than the corresponding CARP solutions, but the optimal CVRP solution corresponds to a CARP one with the same cost. 1 2.4 1 0 2 10 4 16 9 13 11 23 17 25 2 0 4 12 6 18 11 15 13 25 19 27 Table 1. Complete distance matrix for the example of Figure 1 4 0 4 - 10 12 4 0 14 10 3 7 5 17 11 19 4 6 14 0 8 20 13 17 15 27 21 29 8 0 8 - 16 18 10 20 8 0 9 5 11 23 9 25 9 11 3 13 9 0 2 6 4 16 10 18 2 0 2 - 13 15 7 17 5 6 2 0 8 20 6 22 11 13 5 15 11 4 8 0 6 18 12 20 6 0 6 - 23 25 17 27 23 16 20 18 6 0 24 8 17 19 11 21 9 10 6 12 24 0 10 26 10 0 10 25 27 19 29 25 18 22 20 8 26 10 0 CARP: The new transformation The transformation introduced in Section 2.2 must be extended in order to deal with the CARP. Specif ically, the undirected graph , has the nodes @ ##"#"#"$ ) ' corresponding to the endpoint nodes of the CARP required arcs plus a depot node (node 0), each node in - being replicated as many times as are the required edges incident to it, while the set of edges is still defined so to make completely connected. Given an edge 3 45' 6 ) , 0 2 ! 20 'F6 denotes the corresponding edge in ) , and is the set of edges in corresponding to the required CARP edges in . UBLCS-2004-10 5 2 Arc and node routing 42 43 4 12 20 24 2 4 34 23 3 32 21 8 16 31 1 0 12 13 Figure 2. The new transformation of the graph of Figure 1 The costs /10 2 of edges 3 45' in is defined by expressions (1) (as an instance of 2), which in the case of the CARP must be specialized as follows: /10 2 / /10 C0 1 4 /22 < if 33&' $44' if 3 3&' $4 4' and @ and 4 @ (7) /10 0 0 (8) 1 4 being the cost of the shortest path in from to 4 , where and 4 denote the CARP nodes which were transformed into and 4 , respectively. CVRP requests (i.e., customer demands) become 0 H 2 02 9 8 3 45':6 ) " (9) Figure 2 shows an example of this transformation, where only the edges corresponding to the CARP required ones have been drawn. The application of this transformation to the graph of Figure 1 would result in the instance shown in Figure 2. Since the CARP instance has an optimal cost of 40, ) it is possible to use an upper bound , thus obtaining the complete distance matrix shown in Table 2. Having all the elements of the transformed CVRP instance, it is now possible to write the complete transformed model, which is just a standard CVRP. A well-known CVRP formulation, originally proposed by Laporte, Nobert and Desrochers [16], uses two-index variables; the formulation is as follows. Let FG @ ' . Let + ' . For a given 6 we denote by the complementary set of nodes H G . Let ! be the minimum number of vehicles of capacity 9 needed to satisfy the demand of customers in 6 . Also, we use ! to indicate the total demand of the node subset + , that is ! 0 . Let 0 2 be an integer variable which may take value @ # ' , 8 3 45':6 . 0 UBLCS-2004-10 6 2 Arc and node routing Table 2. Complete distance matrix for the example of Figure 2 0 % % % % 0 4 12 8 20 10 14 14 26 22 30 4 - -41 12 24 14 18 18 30 26 34 12 -41 20 16 6 10 10 22 18 26 8 12 20 - -41 18 22 22 34 30 38 20 24 16 -41 14 10 18 30 18 34 10 14 6 18 14 - -41 8 20 16 24 14 18 10 22 10 -41 12 24 12 28 % 14 18 10 22 18 8 12 - -41 20 28 % 26 30 22 34 30 20 24 -41 32 16 % 22 26 18 30 18 16 12 20 32 - -41 % 30 34 26 38 34 24 28 28 16 -41 - The CVRP can be formulated as the following integer program. ) -* Min /10 2 0 2 0 2 (10) 0 2& 20 s. t. 2 2 0 5 2 0 5 2 0 2 052 C2 0 2& 0 2 0 52 02 !$ 8 *6 (11) (12) (13) 0 2 6 # ' 8 3 45' 6 " @ (14) 2 8 6; ! Constraints (11) are the degree constraints for each customer. Constraints (12) are the capacity constraints (also called generalized subtour elimination constraints) which, for any subset of customers that does not include the depot, impose that ! vehicles enter and leave . It is NP-hard to compute ! , since it corresponds to solve a bin-packing problem where ! is the minimum number of bins ) of capacity 9 that are needed for packing the quantities 0 8 6 . However, formulation remains valid if ! is replaced by a lower bound on its value, such as ! 9 , where denotes the smallest integer not less than . Constraint (13) states that vehicles must leave and return to the depot while constraints (14) are the integrality constraints. For the new transformation the following results hold. Lemma 1 Every CARP solution "! of cost ! has a corresponding CVRP solution # of cost !( ) . Proof. Since required edges 3 45' in correspond one-to-one to edges 0 2 ! 20 ' in , it is sufficient to traverse edges 0 2 ! 20 ' in in the same order and with the same direction as the edges 3 45' in ! . Assuming no unnecessary deadheading in "! , that is, if after servicing a required node each veUBLCS-2004-10 7 3 Branch-and-cut algorithm hicle follows the minimum cost path leading to an endpoint of another required node, the assertion immediately follows. ) Lemma 2 Every CVRP solution # of cost less than or equal to CARP solution ! of cost ) . has a corresponding Proof. The CVRP solution traverses all edges in ) with an induced cost of ) . To obtain the ) corresponding CARP solution it is sufficient to traverse edges 3 45'F6 in the same order and with the same direction as the edges 0 2 ! 20 ' in . It is easy to see that using costs /#0 2 ' the corresponding CARP solution has cost # ) . The following theorem shows the correctness of the transformation described above. Theorem 1 Every optimal CARP solution ! of cost ! is in one-to-one correspondence with an optimal CVRP solution of cost : ! ) . Conversely, every optimal CVRP solution of cost ) . is in one-to-one correspondence with an optimal CARP solution ! of cost ! Proof. Immediately follows from lemmas 1 and 2. 2.5 Computational issues The transformation presented in Section 2.4 maps any CARP instance into a corresponding CVRP one. However, a slightly different mapping could result in significant computational gains when passing the transformed instance to a mathematical programming software package. The transformed instance is not a general CVRP anymore, but more generally a node routing problem instance as additional constraints are added. The idea is to eliminate the values and force explicitly in the solution every arc connecting the two nodes associated to obligatory CARP arcs. That is, costs are always defined as expressions (8) and /10 2 < @ if 33 &': $44 ' /10C0 1 4 /22 if 33&' $44' and @ and 4 @ (15) and the formulation of the transformed problem, called Edge CVRP (ECVRP), is ) - * Min 0 2 /10 2 0 2 7 (16) ) s. t. C$3C$3C $ 3C $ and 0 2 8 3 45: ' 6 ) " 3 (17) Branch-and-cut algorithm In this section we describe a branch-and-cut algorithm for the exact solution of CARP based on formulation ECVRP described in Section 2.4. UBLCS-2004-10 8 3 Branch-and-cut algorithm The Branch-and-cut method was introduced by Padberg and Rinaldi [20] to solve large instances of the TSP. In this section we describe the details of our implementation; for an extensive and comprehensive description of this method see [14]. The algorithm has been built within the CPLEX 9.0 framework using the CPLEX callback functions (see [9]). By means of these functions the programmer can almost completely customize the general approach embedded into CPLEX. For example, one can choose the next node to explore in the branch-decision-tree, choose the branching variable or define a problem dependent branching scheme, separate and add his own cutting planes, apply his own heuristic methods, etc. Below the most important implementation issues are discussed. 3.1 Lower and upper bounds The lower bound at each node of the branch-decision-tree was computed by solving the LP relaxation of model ECVRP without capacity constraints (12) strengthened with the addition of cutting planes. To generate these cutting planes, separation algorithms are needed. An exact separation algorithm for a given class of inequalities is a routine which takes as input an LP solution vector and outputs one or more violated inequalities in that class (if any exist). A heuristic separation algorithm is similar, except that it may fail to detect violated inequalities in the class. In particular, we used the package of routines developed by Lysgaard [18] written in the C programming language, that were used by Lysgaard, Letchford, and Eglese [19] for solving the CVRP. The package contains separation routines for capacity inequalities (CIs), homogeneous multistar inequalities (HMIs), generalized large multistar inequalities (GLMIs), framed capacity inequalities (FCIs), strengthened comb inequalities (SCIs), and hypotour inequalities (HIs). For a complete description of both the classes of inequalities and the separation algorithms the interested reader is referred to [19]. All the above separation procedures make use of shrinking procedures in order to speed up the computation. These procedures work on the weighted graph induced by the edges 3 45' with value 0 2 > @ , which is called the support graph of . Among such procedures, the simplest one consider any edge 3 45' of not incident to the depot and with value 1 and shrink it in the following way: the two endpoints, and 4 , are substituted by a supernode, say / , with demand 0 2 ; the value of any edge / *.' is defined 0 2 . This shrinking procedure is applied recursively until no edge with value 1 remains. Note that in the shrunk graph, the sum of the values of the edges incident to every supernode or node, except the depot, is equal to 2. Then, if in any step of the shrinking procedure, a supernode with demand greater than 9 arises, the capacity constraint associated to the set of its corresponding original nodes is, obviously, violated. It can be easily shown that this procedure cannot miss a violated inequality, if one exists. Other examples of shrinking procedures are described in [19] and in [2]. The use of such shrinking procedures is therefore particular effective in the case of our LP solution vector due to the presence of constraints (17). Roughly speaking, we can say that the complexity of the separation procedures on graph for an instances with ) required edges is equivalent to the complexity of the separation procedures on a CVRP instance involving ) customers. In a branch-and-cut framework, good initial upper bounds can drastically reduce the solution time and number of branch-decision-tree nodes. Therefore, in the computational results reported in Section 4, the initial upper bounds were set equal to the best upper bounds known reported in [6]. 3.2 Separation strategy We have conducted several preliminary experiments to identify a good separation strategy in order to design an efficient branch-and-cut algorithm. Among the different strategies tested, we also tested UBLCS-2004-10 9 4 Computational results the separation strategy proposed in [19]. As a result of our experimentation we decided to treat the root node differently from the other nodes of the branching tree and to adopt the following strategies. The strategy for the root node is as follows. First we separate CIs. If the maximum violation of the violated CIs is more than 1.0, we reoptimize the LP, otherwise we consider separating SCIs and if the maximum violation of the violated SCIs found is more than 0.2 we reoptimize the LP. Finally, we proceed to the remaining classes of inequalities: FCIs, HMIs, GLMIs, and HIs. According to the computational results reported in [19], we allow at most 20000 nodes to be explored in the search tree for FCI separation. In addition, we disabled the separation of all the cuts embedded into CPLEX, since their use increases the overall running time of the algorithm. To all separation routines we imposed a maximum number of violated cuts to be identified equal to 70. The strategy for the non-root nodes is simpler. We spend less time on separation at these nodes, because we found it to be more effective to branch earlier than to spend much time on separation. We call all separation routines once but the HMIs and we imposed to the separation routines a maximum number of violated cuts to be identified equal to 30. In order to speed up the computation and to keep the LP small when separation finishes at the root node, we permanently deleted all cuts with positive slack. At the non-root nodes, we use a somewhat different strategy. We constructed and solved an auxiliary problem consisting of the LP of the current node strengthened with all the cuts identified, then we added to the current LP only the tight cuts of the auxiliary problem. Other more efficient techniques to manage the cuts added to the LP (dealing with a cut-pool) where not considered because the CPLEX framework does not provided any callback function that allows to remove a cut from the current subproblem. The separation procedures at the root node and at the non-root nodes are iterated until one of the following conditions holds: (a) no violated inequality can be generated; (b) the lower bound has not been improved in the last 15 iterations; (c) the lower bound is greater or equal to the upper bound. 3.3 Branching and node selection strategies The branching strategy adopted is the CPLEX strong branching strategy. This strategy has been proved to be quite effective when compared with other branching strategies for standard routing problems such as the mixed branching based both on variables and cutsets (see [4]). In [4] it is observed that the running time spent by the strong branching for a node is smaller (almost one half) than the time spent by the mixed strategy. This is also due to the fact that the CPLEX function is faster because it takes advantage of direct access to internal ILOG CPLEX data structures (see the CPXstrongbranch description in [9]). The branch-and-cut algorithm uses the the lowest first node selection rule, so that the node with the smallest lower bound is always processed next. This is known to always lead to the smallest possible branch-decision-tree, but it has the disadvantage that the entire tree (i.e., all currently non-fathomed nodes) must be stored in memory. 4 Computational results This section presents computational results for the branch-and-cut algorithm described in Section 3. Moreover, our computational results will be compared with the best existing lower bounding procedure for the CARP produced by Belenguer and Benavent [6]. The algorithm has been coded in Microsoft Visual C++, embedded in the CPLEX 9.0 framework and run on a PC equipped with a Pentium 4 (2.8 GHz) processor. UBLCS-2004-10 10 4 Computational results We have considered two set of instances. The first set contains 34 instances generated by Benavent et al. [7]. The second set contains the 15 instances, out of the 23 generated by Li and Eglese [17], which involve up to 98 required edges. This last set of instances has been constructed from real data representing the road network of two areas of the county of Lancashire (UK) which were digitized for a study of winter gritting. The complete sets of these instances are available at the Internet address http://www.uv.es/˜belengue/carp.html. According to the computational results presented in [6], these two sets of instances correspond to difficult CARP instances. The following notation is used in this section: % 4 F : # : F ) instance including the depot; number of nodes of the upper bound value (see Section 3.1); cost of the optimal CARP solution or cost of the best solution found by the branch-and-cut algorithm or 4 F ; best lower bound obtained at the root node after adding all generated inequalities (see Section 3.2); best lower bound at the end of the branch-and-cut algorithm (which is if the algorithm finished before the time limit); the lower bound produced by Benavent et al. [7]; the lower bound produced by Belenguer and Benavent [6]. : : : : : The following notation refers to the computation of the lower bounds at the root node of the branch-and-cut algorithm (Tables 3 and 5) and to the computational results presented in [6]: F "! : : : : CI HMI : : : GLMI : FCI SCI HI : : : percentage ratio ; computing time of lower bound (in seconds); percentage ratio F ; percentage ratio ; computing time of lower bound (in seconds of a SUN Sparc 20); number of capacity inequalities generated; number of homogeneous multistar inequalities generated at the root node; number of generalized large multistar inequalities generated at the root node; number of framed capacity inequalities generated at the root node; number of strengthened comb inequalities generated at the root node; number of hypotour inequalities generated at the root node. Tables 3 and 5 show that the lower bounds obtained at the root node for the two sets of instances are tight. In particular, for the instances from Benavent et al. [7])the average percentage deviation of lower bound is equal to 99.41, slightly worst that the average percentage deviation of lower bound , which is equal to 99.59. For the instances from Li and Eglese [17], lower bound is on average better than lower bound , as shown by the average percentage deviations equal to 98.78 and 97.89, respectively. Lower bound clearly dominates lower bound F . On the other hand, lower bound is more time consuming with respect to lower bound . In 20 out of the 49 instances, the lower bound is equal to the upper bound, thus proving the optimality of the corresponding heuristic solutions. UBLCS-2004-10 11 5 Conclusions Tables 4 and 6 report the computational results of the branch-and-cut algorithm for the instances which have not been solved to optimality at the root node. In addition to the notation introduced above, the tables show the following columns: % , percentage ratio # ; the value is reported only if the corresponding instance has not been solved to optimality; : number of nodes generated; : total computing time in seconds. We impose a time limit of 7200 seconds. If the time limit is reached, the instance is marked with an asterisk. : Table 4 shows that 10 more instances from Benavent et al. have been solved to optimality within the imposed time limit. A total of 28 out of the 34 instances were solved to optimality by the branchand-cut algorithm, thus 6 more instances were solved to optimality with respect to the number of instances solved to optimality by Belenguer and Benavent [6], who could solve to optimality only instances for which the lower bound equalled the upper bound. Concerning the Eglese instances (see Table 6) for which no optimal lower bounds were obtained by Belenguer and Benavent, the branchand-cut algorithm was able to prove the optimality of the corresponding heuristic solutions for 5 instances. 5 Conclusions We have proposed a new transformation of arc routing problems into corresponding node routing ones. We have analyzed in particular the transformation of Capacitated Arc Routing Problems (CARP) into Capacitated Vehicle Routing Problems (CVRP). In this last case, if is the number of required CARP edges, the transformation reduces the CARP instance into an equivalent CVRP instance defined on an undirected graph having nodes. Computational considerations lead to strengthen the transformed formulation with additional constraints forcing the edges corresponding to the CARP required ones to be in the optimal solution of the induced node routing problem, called ECVRP. We developed a branch-and-cut algorithm to optimally solve the transformed CARP instances which makes use of lower bounds computed using several valid inequalities proposed for the classical CVRP. The branch-and-cut algorithm has been applied to two sets of difficult CARP instances taken from the literature and its computational behaviour has been compared with the best existing lower bounding procedures for the CARP. The computational results show that improved lower bounds were obtained for a number of instances, and that instances involving up to 98 required edges could be solved to optimality. To the best of our knowledge, this is the first time that these instances could be solved to optimality. Given the generality of the transformation, any improvement on solution methods for the CVRP can be used also to improve computational results on CARP instances. Future work will also investigate the possibility of adapting to the ECVRP valid inequalities originally developed for the CARP. References [1] A. Assad and B. L. Golden. Arc routing methods and applications. In M. Ball et al., editor, Handbooks in OR & MS, volume 8, pages 375–479. 1995. UBLCS-2004-10 12 REFERENCES 8 1.A 1.B 1.C 2.A 2.B 2.C 3.A 3.B 3.C 4.A 4.B 4.C 4.D 5.A 5.B 5.C 5.D 6.A 6.B 6.C 7.A 7.B 7.C 8.A 8.B 8.C 9.A 9.B 9.C 9.D 10.A 10.B 10.C 10.D Avg. Min. 3. et al. instances: lower bounds Table Benavent CI HMI GLMI FCI SCI HI % F "! 79 2 247 100.00 100.00 0.47 100.00 2.0 48 0 0 0 322 0 79 3 247 100.00 100.00 0.56 100.00 2.1 154 0 0 0 325 0 79 8 319 87.77 96.87 0.71 97.35 45.8 724 509 0 52 398 315 69 2 298 99.33 100.00 0.13 100.00 0.5 28 0 0 0 111 0 69 3 330 96.36 100.00 0.24 99.61 9.9 251 234 1 17 230 1312 99.62 0.40 99.67 4.8 412 115 2 175 118 31 69 8 528 91.29 71 2 105 98.10 100.00 0.18 100.00 1.5 135 0 0 0 261 0 71 3 111 97.30 100.00 0.15 100.00 1.3 177 0 0 0 210 0 71 7 162 86.42 99.38 0.91 100.00 5.3 690 305 4 94 233 70 139 3 522 98.47 100.00 0.54 100.00 60.8 528 4 1 37 1369 7 139 4 534 97.00 100.00 0.29 100.00 54.8 1237 0 0 0 969 0 139 5 550 95.27 100.00 0.97 100.00 86.7 2431 0 0 0 1117 0 139 9 652 86.66 98.77 7.16 98.40 186.1 3916 464 2 0 1229 454 131 3 566 99.29 100.00 1.36 100.00 53.0 316 25 0 1 905 33 131 4 589 96.26 100.00 2.13 99.44 99.8 1139 134 0 2 1256 44 131 5 617 94.33 99.19 1.70 98.63 114.2 1069 722 4 4 1470 405 131 9 724 90.61 98.62 0.95 98.28 155.0 1712 641 5 4 579 1199 101 3 330 100.00 100.00 0.62 100.00 9.8 143 0 0 0 456 0 101 4 340 98.24 99.41 2.30 98.50 24.3 841 795 5 50 562 408 101 10 424 87.74 98.58 1.80 98.58 14.0 1079 50 1 1 230 48 133 3 382 100.00 100.00 0.34 100.00 9.2 205 0 0 0 304 0 133 4 386 98.96 100.00 0.20 100.00 8.3 214 0 0 0 286 0 133 9 437 92.22 99.77 3.16 99.70 15.5 927 14 0 3 384 5 127 3 522 100.00 100.00 0.34 100.00 32.7 601 39 0 3 625 14 127 4 531 99.44 100.00 0.12 100.00 34.7 1085 0 0 0 577 0 127 9 663 88.54 98.49 3.73 97.63 98.1 2981 1587 17 18 844 1259 185 3 450 100.00 100.00 4.32 100.00 406.5 1081 474 4 30 2526 535 185 4 453 100.00 100.00 1.97 100.00 430.6 1830 1141 2 21 2034 856 185 5 459 100.00 100.00 2.07 100.00 517.8 2720 1916 1 18 2102 1070 185 10 518 95.17 98.26 21.84 96.83 785.9 2509 741 3 11 928 987 195 3 637 100.00 100.00 1.67 99.88 394.1 1027 833 4 34 1876 231 195 4 645 99.38 100.00 1.44 99.43 327.3 1315 90 0 1 1290 100 195 5 655 99.08 100.00 0.83 99.44 468.3 1762 1237 4 57 1644 991 195 10 739 94.32 99.05 8.38 98.49 684.7 3916 464 2 0 1229 454 96.10 99.59 99.41 86.42 96.87 96.83 UBLCS-2004-10 13 REFERENCES 4. Benavent et al. instances: branch-and-cut algorithm % , Table 8 % 1.C 2.B 2.C 4.D 5.B 5.C 5.D 6.B 6.C 7.C 8.C 9.D 10.A 10.B 10.C 10.D egl-e1-A egl-e1-B egl-e1-C egl-e2-A egl-e2-B egl-e2-C egl-e3-A egl-e3-B egl-e3-C egl-e4-A egl-e4-B egl-e4-C egl-s1-A egl-s1-B egl-s1-C Avg. Min. 103 103 103 145 145 145 175 175 175 197 197 197 151 151 151 UBLCS-2004-10 79 69 69 139 131 131 131 101 101 133 127 185 195 195 195 195 8 3 8 9 4 5 9 4 10 9 9 10 3 4 5 10 319 330 528 652 589 617 724 340 424 437 663 518 637 645 655 739 97.35 99.61 99.67 98.40 99.44 98.63 98.28 98.50 98.58 99.70 97.63 96.83 99.88 99.43 99.44 98.49 45.8 9.9 4.8 186.1 99.8 114.2 155.0 24.3 14.0 15.5 98.1 785.9 394.1 327.3 468.3 684.7 100.94 100.21 101.72 102.13 102.80 101.32 343 4 6 344 1580 1601 591 110 146 61 440 507 23 202 234 255 Eglese instances: lower bounds Table 5. Liand "! CI HMI 5 3548 7 4498 10 5595 7 5018 10 6340 14 8415 8 5898 12 7822 17 10433 9 6461 14 9021 19 11779 7 5018 10 6435 14 8518 86.56 81.90 78.39 82.98 79.65 72.63 82.82 77.54 71.53 83.72 76.88 73.72 68.71 62.35 61.19 76.04 61.19 99.07 32.00 100.00 12.7 625 98.62 35.82 99.24 23.7 998 97.46 22.37 98.89 38.5 1375 99.52 50.51 99.86 159.1 1571 98.56 19.11 98.91 121.0 2246 96.42 18.78 97.03 153.2 2167 99.51 86.78 100.00 143.5 1587 97.75 58.25 98.29 350.2 2963 96.03 19.90 97.12 594.4 4679 98.62 43.08 98.92 391.2 2024 97.65 15.87 98.38 698.2 4549 95.73 16.54 96.56 682.3 5832 99.48 1085.52 99.95 89.7 1791 96.36 216.06 99.12 148.2 2182 97.56 102.70 99.46 457.1 4082 97.89 98.78 95.73 96.56 3 5 5 288 17 5 0 199 59 43 369 42 150 24 64 890.4 11.1 7.8 * 4202.3 * * 201.6 312.0 92.6 * * 879.3 4250.4 5560.1 * GLMI FCI SCI HI 0 4 220 22 0 1 193 2 0 0 221 172 1 74 520 720 0 0 534 80 0 0 559 47 0 0 490 0 0 0 785 37 0 3 1121 88 1 20 715 77 0 0 831 196 0 0 1505 267 0 38 220 11 0 22 375 27 0 0 719 83 14 REFERENCES Table 6. Li and Eglese instances: branch-and-cut algorithm % , 8 % egl-e1-B 103 7 4498 99.24 23.7 139 450.3 egl-e1-C 103 10 5595 98.89 38.5 100.52 684 * egl-e2-A 145 7 5018 99.86 159.1 5 182.0 egl-e2-B 145 10 6340 98.91 121.0 100.56 414 * egl-e2-C 145 14 8415 97.03 153.2 102.85 134 * egl-e3-B 175 12 7822 98.29 350.2 101.53 105 * egl-e3-C 175 17 10433 97.12 594.4 102.78 62 * egl-e4-A 197 9 6461 98.92 391.2 100.83 275 * egl-e4-B 197 14 9021 98.38 698.2 101.61 52 * egl-e4-C 197 19 11779 96.56 682.3 103.39 30 * egl-s1-A 151 7 5018 99.95 89.7 2 91.8 egl-s1-B 151 10 6435 99.12 148.2 100.80 1129 * 446 * egl-s1-C 151 14 8518 99.46 457.1 100.30 [2] P. Augerat, J.M. Belenguer, E. Benavent, A. Corberán, and D. Naddef. Separating capacity constraints in the cvrp using tabu search. European Journal of Operational Research, 106:546–557, 1998. [3] P. Augerat, J.M. Belenguer, E. Benavent, A. Corberan, D. Naddef, and G. Rinaldi. Computational results with a branch and cut code for the capacitated vehicle routing problem. Technical Report 1 RR949-M, ARTEMIS-IMAG, Grenoble France, 1995. [4] R. Baldacci, M. Dell’Amico, and J.J. Salazar Gonzàlez. The capacitated m-ring star problem. Technical Report 42, DISMI, University of Modena and Reggio Emilia, 2003. [5] R. Baldacci, A. Mingozzi, and E. Hadjiconstantinou. An exact algorithm for the capacitated vehicle routing problem based on a two-commodity network flow formulation. Operations Research, 52(5), 2004 (to appear). [6] J.M. Belenguer and E. Benavent. A cutting plane algorithm for the capacitated arc routing problem. Computers & Operations Research, 30:705–728, 2003. [7] E. Benavent, V. Campos, A. Corberán, and E. Mota. The capacitated arc routing problem. lower bounds. Networks, 22:669–690, 1992. [8] N. Christofides, A. Mingozzi, and P. Toth. State space relaxation for the computation of bounds to routing problems. Networks, 11:145–164, 1981. [9] CPLEX. ILOG CPLEX 9.0 callable library. ILOG, 2004. [10] M. Dror, editor. Arc Routing: Theory, Solutions And Applications. Kluwer Academic Publishers Group, 2000. [11] L. Euler. Solutio problematis ad geometriam situs pertinentis. Comment. Academiae Sci.I.Petropolitanae, 8:128–140, 1736. Opera omnia Ser.I, Vol.7 (1766), 1-10. UBLCS-2004-10 15 REFERENCES [12] R. Fukasawa, J. Lysgaard, M. Poggi de Arago, M. Reis, E. Uchoa, and R.F. Werneck. Robust branch-and-cut-and-price for the capacitated vehicle routing problem. Lecture Notes in Computer Science, 2004 (to appear). [13] A. Hertz. Recent trends in arc routing. http://www.gerad.ca/ alainh/Trends.pdf, 2002. Submitted for publication. [14] M. Jünger, G. Reinelt, and G. Rinaldi. The traveling salesman problem. In: Ball, M.O., Magnanti, T.L., Monma, C.L., Nemhauser, G.L. (eds). Network Models, Handbooks in Operations Research and Management Science 7. North- Holland, Amsterdam,, pages 225–330, 1995. [15] M. Kiuchi, Y. Shinano, R. Hirabayashi, and Y. Saruwatari. An exact algorithm for the capacitated arc routingproblem using parallel branch and bound method. In Abstracts of the 1995 Spring National Conference of the Oper. Res. Soc. of Japan, page 2829. 1995. in Japanese. [16] G. Laporte, Y. Nobert, and M. Desrochers. Optimal routing under capacity and distance restrictions. Operations Research, 33:1058–1073, 1985. [17] L. Li and R.W. Eglese. An interactive algorithm for vehicle routing for winter-gritting. Journal of the Operational Research Society, 47:217–228, 1996. [18] J. Lysgaard. Cvrpsep : A package of separation routines for the capacitated vehicle routing problem. Working paper 03-04, Department of Management Science and Logistics, Aarhus School of Business, Denmark, 2004. [19] J. Lysgaard, A.N. Letchford, and R.W. Eglese. A new branch-and-cut algorithm for the capacitated vehicle routing problems. Mathematical Programming, 100(2):423–445, 2004. [20] M. W. Padberg and G. Rinaldi. A branch and cut algorithm for the resolution of large-scale symmetric traveling salesman problems. SIAM Review, 33:60–100, 1991. [21] W.L. Pearn, A. Assad, and B.L. Golden. Transforming arc routing into node routing problems. Computers and Operations Research, 14:285–288, 1987. [22] T. Ralphs, L. Kopman, W. Pulleyblank, and L. Trotter Jr. On the capacitated vehicle routing problem. Mathematical programming, 94:343–359, 2003. UBLCS-2004-10 16
© Copyright 2026 Paperzz