the profitable arc tour problem

14
TRANSPORTATION SCIENCE Vol. 39, No. 4, November 2005, pp. 539–552 issn 0041-1655 eissn 1526-5447 05 3904 0539 inf orms ® doi 10.1287/trsc.1040.0106 © 2005 INFORMS The Profitable Arc Tour Problem: Solution with a Branch-and-Price Algorithm Dominique Feillet Laboratoire d’Informatiquè d’Avignon, 339 Chemin des Meinajariés, Agroparc BP 1228, 84911 Avignon, France, [email protected] Pierre Dejax École des Mines de Nantes and Communications and Cybernetic Research Institute of Nantes, 4, rue Alfred Kastler, 44307 Nantes, France, [email protected] Michel Gendreau CRT Université de Montréal, C.P. 6128, succursale Centre-ville, Montréal, Canada H3C 3J7, [email protected] I n this article, we introduce a new arc routing problem that we call the profitable arc tour problem. This problem is defined on a graph in which profits and travel costs are associated with the arcs. The objective is to find a set of cycles in the graph that maximizes the collection of profit minus travel costs, subject to constraints limiting the number of times that profit is available on arcs and the maximal length of cycles. The problem is related both to constrained flow problems and to vehicle-routing problems. We tackle it from this standpoint and propose a branch-and-price algorithm for its solution. In the column-generation phase, the issue of the collection decisions while traveling through the arcs is addressed. In the branching phase, the fact that viewing solutions in terms of flow variables regularly induces an integer flow matrix leads us to introduce a branching method called the flow-splitting method. Finally, the relationships of this problem with constrained flow optimization are taken into account in an initial phase of the algorithm. Key words : arc-routing problem; routing problem with profits; column generation; branch and price; bounded cycle cover History : Received: October 2003; revision received: August 2004; accepted: August 2004. 1. Introduction In this paper, we introduce a new arc-routing problem that we call the profitable arc tour problem (PATP). This problem is defined on a graph in which prof- its and travel costs are associated with the arcs. The objective is to find a set of cycles in the graph that maximizes the collection of profit minus travel costs, subject to constraints limiting the number of times that profit is available on arcs and the maximal length of cycles. Let G = V A be a complete directed graph, where V = v 1 v n is the vertex set of the graph and A = v i v j 1 i j n is its arc set. Let c ij 0 be the cost associated with arc v i v j . The cost matrix is assumed to satisfy the triangle inequality and is subsequently called the travel cost matrix. Let Q A be a subset of the arcs of the graph. In addi- tion to c ij , each arc v i v j Q receives a profit value p ij 0 and a value q ij indicating the number of times that this profit can be collected. Each time profit is collected on an arc v i v j , a value p ij is gained. By analogy with flow problems, q ij is called capacity of arc v i v j . The aim of the PATP is to find a collec- tion of feasible cycles in the graph G, maximizing the objective function, where the impact of a cycle in the objective function is the sum of the collected profits minus the sum of the travel costs of its arcs. A cycle is feasible when its total length does not exceed a given value l max , where the length of a cycle is the sum of the lengths of its arcs. To improve legibility of the text, the length of an arc v i v j A is supposed to be equal to its cost c ij throughout the article; subsequent sections would be straightforward to adapt without this assumption. Note that in a feasible cycle some vertices and arcs can possibly appear several times. The number of cycles belonging to a solution and col- lecting profit on an arc v i v j Q is upper bounded by q ij . It is important to note that a given cycle can be selected several times in the solution and that a cycle may contain arcs belonging to Q without collecting their profit (which might already be collected by other cycles of the solution). In this last case, only the travel costs are counted on these arcs. Figure 1 displays an instance of the PATP and its optimal solution. The context of this study is a tactical freight transportation-planning problem arising in the car industry. In this context, a set of trips need to be planned for transporting freight between plants. Trips 539

Upload: juan-manuel

Post on 08-Nov-2015

212 views

Category:

Documents


0 download

DESCRIPTION

Equations to describe the profitable arc tour problem applied to an specific case of study.

TRANSCRIPT

  • TRANSPORTATION SCIENCEVol. 39, No. 4, November 2005, pp. 539552issn 0041-1655 eissn 1526-5447 05 3904 0539

    informs doi 10.1287/trsc.1040.0106

    2005 INFORMS

    The Protable Arc Tour Problem: Solution witha Branch-and-Price Algorithm

    Dominique FeilletLaboratoire dInformatiqu dAvignon, 339 Chemin des Meinajaris, Agroparc BP 1228, 84911 Avignon, France,

    [email protected]

    Pierre Dejaxcole des Mines de Nantes and Communications and Cybernetic Research Institute of Nantes,

    4, rue Alfred Kastler, 44307 Nantes, France, [email protected]

    Michel GendreauCRT Universit de Montral, C.P. 6128, succursale Centre-ville, Montral, Canada H3C 3J7, [email protected]

    In this article, we introduce a new arc routing problem that we call the protable arc tour problem. Thisproblem is dened on a graph in which prots and travel costs are associated with the arcs. The objectiveis to nd a set of cycles in the graph that maximizes the collection of prot minus travel costs, subject toconstraints limiting the number of times that prot is available on arcs and the maximal length of cycles. Theproblem is related both to constrained ow problems and to vehicle-routing problems. We tackle it from thisstandpoint and propose a branch-and-price algorithm for its solution. In the column-generation phase, the issueof the collection decisions while traveling through the arcs is addressed. In the branching phase, the fact thatviewing solutions in terms of ow variables regularly induces an integer ow matrix leads us to introduce abranching method called the ow-splitting method. Finally, the relationships of this problem with constrainedow optimization are taken into account in an initial phase of the algorithm.

    Key words : arc-routing problem; routing problem with prots; column generation; branch and price; boundedcycle cover

    History : Received: October 2003; revision received: August 2004; accepted: August 2004.

    1. IntroductionIn this paper, we introduce a new arc-routing problemthat we call the protable arc tour problem (PATP).This problem is dened on a graph in which prof-its and travel costs are associated with the arcs. Theobjective is to nd a set of cycles in the graph thatmaximizes the collection of prot minus travel costs,subject to constraints limiting the number of timesthat prot is available on arcs and the maximal lengthof cycles. Let G = V A be a complete directedgraph, where V = v1 vn is the vertex set of thegraph and A= vi vj 1 i j n is its arc set. Letcij 0 be the cost associated with arc vi vj. The costmatrix is assumed to satisfy the triangle inequalityand is subsequently called the travel cost matrix. LetQ A be a subset of the arcs of the graph. In addi-tion to cij , each arc vi vj Q receives a prot valuepij 0 and a value qij indicating the number oftimes that this prot can be collected. Each time protis collected on an arc vi vj, a value pij is gained. Byanalogy with ow problems, qij is called capacity ofarc vi vj. The aim of the PATP is to nd a collec-tion of feasible cycles in the graph G, maximizing theobjective function, where the impact of a cycle in the

    objective function is the sum of the collected protsminus the sum of the travel costs of its arcs. A cycle isfeasible when its total length does not exceed a givenvalue lmax, where the length of a cycle is the sum ofthe lengths of its arcs. To improve legibility of thetext, the length of an arc vi vj A is supposed to beequal to its cost cij throughout the article; subsequentsections would be straightforward to adapt withoutthis assumption. Note that in a feasible cycle somevertices and arcs can possibly appear several times.The number of cycles belonging to a solution and col-lecting prot on an arc vi vj Q is upper boundedby qij .It is important to note that a given cycle can be

    selected several times in the solution and that a cyclemay contain arcs belonging to Q without collectingtheir prot (which might already be collected by othercycles of the solution). In this last case, only the travelcosts are counted on these arcs. Figure 1 displays aninstance of the PATP and its optimal solution.The context of this study is a tactical freight

    transportation-planning problem arising in the carindustry. In this context, a set of trips need to beplanned for transporting freight between plants. Trips

    539

  • Feillet, Dejax, and Gendreau: The Protable Arc Tour Problem540 Transportation Science 39(4), pp. 539552, 2005 INFORMS

    profit 18capacity 50

    profit 17

    profit 15capacity 30

    profit 20capacity 10

    : Arc with profit

    Optimum :

    Cycle C1 : profit 55, cost 34

    10 times cycle 1 4 3 1 (C1)

    : Arc without profit

    V = extremities of 10 x 10 square

    capacity 70

    cost 14

    cost 10

    Cycle length limit = 35

    Cycle C2 : profit 35, cost 34

    40 times cycle 1 4 3 1 (C2)

    3 4

    1 2

    Figure 1 An Instance of the PATP and Its Optimal Solution

    can either be round trips or direct trips. A round triphas the same origin and destination and is restrictedto a given length. A direct trip is not constrained butis more expensive, even if, for example, a direct tripi j is cheaper than a round trip i j i leavingthe truck empty on its way back. It is easy to showthat this problem can be expressed as a PATP, with theabove set Q, capacities qij and prots pij representingthe set of freight transportation demands, the num-bers of times these transportation operations have tobe planned, and the differences in cost between roundtrips and direct trips (see Feillet, Dejax, and Gendreau2002 for more details). Apart from this freight trans-portation application, the PATP also appears to berelevant to telecommunication network optimization,when cycles are used for reliability considerations,as will be shown further. Throughout this article, wefocus, however, on the formal specication of thePATP and leave practical applications aside.As presented above, the PATP naturally relates to

    arc-routing problems, especially the capacitated arc-routing problem (CARP). In the CARP, a eet of vehi-cles constrained by a load capacity and based at adepot is used to service demand present on somearcssee, for example, Eiselt, Gendreau, and Laporte(1995) for a detailed review. There are two main dif-ferences between PATP and CARP: First, in PATP, notall demands need to be satised; second, for the PATP,the size of the eet is unlimited, and it is not basedat a depot. Let us consider more carefully these twopoints.The rst difference introduces the idea of prot and

    links the PATP to the so-called class of routing prob-lems with prots. This class gathers routing prob-lems where two conicting objectives are pursuedtogetherminimization of travel costs and maximiza-tion of collected protknowing that prot is avail-able on vertices (or arcs) and that collection is not

    compulsory. These problems are described in detailin Feillet, Dejax, and Gendreau (2004a). Classicalexamples of such problems are the selective travelingsalesman problem (e.g., Fischetti and Toth 1988) andthe prize-collecting traveling salesman problem (e.g.,Balas 1989). Note that routing problems with prof-its are essentially dened in a node-routing context,except for Deitch and Ladany (2000). However, it iswell known that transformations are possible in manycases between node- and arc-routing problems (see,for example, Laporte 1997). Such transformations areprecisely used by Deitch and Ladany (2000). Yet theyare costly in term of size of the graph and shoulda priori be avoided. We will see in subsequent sec-tions that it is possible to make use of the similaritiesbetween the PATP and routing problems with protswithout resorting to such transformations.The second difference leads to an important remark.

    Two of the main reasons for which vehicle-routingproblems are not as simple as min-cost network owproblems are that in vehicle-routing problems a lim-ited number of vehicles is available and that thesevehicles have to initiate their tour at some prede-ned places. A simple illustration of this is providedby the traveling salesman problem, which changesto an assignment problem when these two condi-tions are relaxed (subtour elimination constraints areremoved). Thus, although dened as a routing prob-lem, the PATP (where these two conditions do notexist) is no more than a constrained min-cost net-work ow problem. Indeed, it is easy to demon-strate that if the tour length constraint is relaxed, thePATP reduces to the minimum cost circulation prob-lem, a well-known polynomial network ow prob-lem (see, for example, Ahuja, Magnanti, and Orlin1993), for which several efcient algorithms exist. Thisremark induces three questions: What literature is

  • Feillet, Dejax, and Gendreau: The Protable Arc Tour ProblemTransportation Science 39(4), pp. 539552, 2005 INFORMS 541

    available on ow problems with an additional con-straint? Does the solution of such a constrained owproblem enable one to nd an optimal set of cycles?Is the PATP a polynomial problem? This third ques-tion is addressed in 2, where we prove that the PATPis NP-hard. For the time being, let us consider the twoother questions.Several papers focus on ow problems with one

    or several additional constraints. Let us mentionBelling-Seib, Mevert, and Muller (1988), Cohen andMegiddo (1994), Yan (1996), and more recentlyMathies and Mevert (1998). However, in all cases,the additional constraints involve any combination ofow variables, whereas the tour length constraint ofthe PATP cannot be expressed this way. Thus, this par-ticular constraint has a deep impact on the structureof the problem and really distinguishes it from owproblems.Nevertheless, relaxing the constraint on tour length

    may eventually prove to be an effective solutionapproach. This point brings us back to our secondquestion: How difcult is it to derive a family ofcycles from a solution expressed in terms of ow?If the cycles are not constrained, the answer is easy.A simple algorithm is to select a vertex receivingow, to follow a unit of ow until coming back toa vertex that has already been visited (ow con-servation ensures that this will occur), and to putaside the resulting cycle. The complete set of cyclesis obtained by repeating this simple procedure untilow is exhausted (see, for example, Ahuja, Magnanti,and Orlin 1993). Unfortunately, this algorithm doesnot necessarily generate cycles with a constrainedlength. Indeed, nothing forces the followed path tocome back quickly toward one of the previously vis-ited vertices.Not being aware of any efcient algorithm to gener-

    ate constrained cycles from a ow or to solve a circu-lation problem with an additional constraint limitingthe cycle length, we chose not to address the PATPfrom a ow perspective. Thus, the solution algorithmwe have developed is designed as a routing problemalgorithm, even if it takes advantage of the ow sub-structure of the PATP in its initial phase. The devel-opment of a complete ow-based algorithm is left tofuture research.It is worth mentioning that several other prob-

    lems also consist in nding a set of cycles in agraph. In particular, several telecommunication prob-lems deal with covering the edges of an undirectedgraph. Among them, the bounded cycle-cover prob-lem (BCCP; Hochbaum and Olinick 2001) is probablythe most closely connected to the PATP. It consistsof nding a minimum cost set of cycles of limitedlength that cover the arcs of a network. Its interestlies in ensuring the reliability of telecommunication

    networks at a minimal cost. In spite of its similari-ties with the PATP, the BCCP differs from it in manyways: The graph is undirected, it is not complete,and all the edges have to be covered. Furthermore,the tour length limit is not as important as in thePATP, since the problem remains NP-hard after itsrelaxation (Thomassen 1997). Nonetheless, this prob-lem and many similar problems that are related tothe same context (the minimum-cost cycle-cover prob-lem, Thomassen 1997; the cycle cover problem, Labb,Laporte, and Soriano 1998; the multiring design prob-lem, Kennington, Nair, and Rahman 1999; the two-connected network with bounded meshes problem,Fortz, Labb, and Mafoli 2000; and the cardinal-ity constrained covering traveling salesman problem,Patterson and Rolland 2003) share with the PATPthe border area between routing problems and owproblems.Actually, the backbone of this research is the solu-

    tion of the PATP through a procedure based on abranch-and-price approach. It is organized as follows.In 2, we propose a mathematical formulation of thePATP and address the question of its belonging tothe NP-hard class. Sections 3 and 4 focus on thealgorithmic part of the paper: Section 3 describes thecolumn-generation procedure included in the branch-and-price algorithm, while 4 is dedicated to thebranching phase. Computational results are reportedin 5, and the conclusion follows.The contributions of this research are manifold. It

    presents and analyzes a new problem with impor-tant applications and provides insights into similarproblems. It also describes a column-generation pro-cedure explicitly devised for arc routing and quanti-es the drawbacks of a node-routing transformation.Finally, it introduces a new branching policy that canbe applied to problems where nonbinary ows arepresent on arcs.

    2. Mathematical Formulation andComplexity of the PATP

    The original situation of the PATP, between routingproblems and ow problems, results in some dif-culties to formulate it with linear programming (LP).Typically, routing problems can be formulated withbinary variables xkij that indicate whether vehicle ktravels through arc vi vj, and ow problems can beformulated with variables xij , representing the owvalue on the corresponding arc. As mentioned above,the tour length constraint cannot be expressed byusing only xij variables. With xkij variables, it becomeseasy to express, and the whole problem can be for-mulated. The major inconvenience of this formulationis that the number of vehicles is not bounded a priori.Consequently, even if it is possible to determine an

  • Feillet, Dejax, and Gendreau: The Protable Arc Tour Problem542 Transportation Science 39(4), pp. 539552, 2005 INFORMS

    upper bound (the sum of arc capacities for example),the k index will have to be allowed to take unneces-sarily high values and the model will not reect thegenuine structure of the problem.In the model that we describe below, we propose to

    introduce path variables (binary variables associatedwith the selection of a cycle in the solution). Before wedo so, we need to introduce the notion of collectioncycle.Denition 1. A collection cycle is an elementary

    cycle of the graph, along with an associated charac-teristic vector indicating on which arcs of this cycleprot is collected.By elementary cycle, we mean that no vertex

    appears more than one time in the cycle. The notion ofcollection cycle permits to explicitly settle the vehiclebehavior regarding the collection of prot. In the fol-lowing, we will talk about collection cycles or cycleswhen this is not ambiguous. Let be the set of col-lection cycles having a length not greater than lmax ingraph G. For every collection cycle rk , let ck beits cost and pk be its prot, i.e., respectively, the sumof the travel costs of the arcs it uses and the sum ofthe prots it collects. Finally, for every arc vi vj Q,let akij = 1 if rk collects prot on arc vi vj and akij = 0otherwise.We propose the following model for the PATP,

    which we call the master problem (MP):

    maximize

    rkpk ckxk (1)

    subject to

    rkakijxk qij vi vj Q (2)

    xk rk (3)where xk is the number of times that the collectioncycle rk appears in the solution. The objective (1)is to maximize the collected prot minus travel costs.Constraints (2) enforce arc capacities.Note that, in the model, cycles are restricted to

    being elementary. The PATP denition does not spec-ify such a requirement, but, because any nonelemen-tary cycle can be broken down into a set of elementarycycles, this constraint does not modify the problem.We will explain in 3.3 why we have decided todevise the model in this fashion.An important point in the study of a new prob-

    lem is to determine its complexity. Basing on the bin-packing problem, which is well known to be NP-hard(see Garey and Johnson 1979), we have demonstratedthat the PATP is NP-hard.

    Theorem 1. The PATP is NP-hard.

    The transformation used and the proof of NP-hardness are rather simple but a bit too heavy tobe detailed here. The interested reader is referred to

    Feillet (2001) for a complete statement of the proof.Briey, items of the bin-packing problem are intro-duced as arcs dening the set Q and cycles selectedin the solution of the PATP represent bins. Costs aredened properly to establish a relationship betweenthe value of the PATP solution and the number of bins(cycles) used.

    3. A Column-Generation AlgorithmThe model that is presented in 2 cannot be useddirectly for the solution of the PATP, except whenfairly small instances are considered. This stems fromthe fact that the size of the set grows exponentiallywith instance size. Among the methods devised forsolving large-scale integer programming problems,the branch-and-price method has often been used suc-cessfully, especially in the eld of routing problems.Branch and price is a particular case of branch andbound. At each node of the search tree, an upperbound is computed by solving the linear relaxationof the original problem; a column-generation methodis used to solve the linear programs that contain toomany variables to be solved in a classical way.Barnhart et al. (1998) and Vanderbeck (2000) focus

    on the method per se and detail heavily many of itsfacets, outside a specic eld of application. In thearea of vehicle routing, several branch-and-price algo-rithms have been developed (e.g., Desrosiers et al.1995; Savelsbergh and Sol 1998; Desaulniers et al.1998a; and Boland, Clarke, and Nemhauser 2000). Forvehicle-routing problems with prots, let us mentionButt and Ryan (1999) and Gueguen (1999). Finally,Barnhart, Hane, and Vance (2000) propose a branch-and-price solution procedure for a multicommodityow problem, where each commodity has to followa unique path between a given origin and a givendestination.In branch-and-price algorithms, an important part

    is played by the column-generation procedure,devoted to the solution of the linear relaxation of themodel. In this section, we present this part of the algo-rithm, which we call CAP (for column generation foran arc-routing problem with prots). The branchingpart of the algorithm is presented in 4.

    3.1. Column-Generation PrincipleThe backbone of the method is a subproblem allowingthe generation of interesting columns. Before furtherdeveloping this point, let us briey describe how themethod can be applied in our context.We introduce MP1, the restriction of MP to a

    subset of variables 1 . MP is then identicallyMP. MP1 is called the restricted master prob-lem. Let MPLP1 be the linear relaxation of MP1and D1 be its dual program. D is then the dualprogram of MPLP, that is, the dual of the linear

  • Feillet, Dejax, and Gendreau: The Protable Arc Tour ProblemTransportation Science 39(4), pp. 539552, 2005 INFORMS 543

    relaxation of MP. The optimal solution of MPLP1,with the simplex algorithm for instance, provides anoptimal solution () for D1. This solution is equiv-alently a solution of D, not necessarily feasible.When every constraint deriving from the collectioncycles of \1 is satised, the solution () is feasiblefor D, and therefore optimal, because D is moreconstrained than D1. When one or several con-straints deriving from the collection cycles of \1are violated, the principle of the column-generationmethod is to identify one or several of these con-straints, with the help of a subproblem, to integratethe corresponding variables in the set 1. Thus, solv-ing alternately MPLP1 and the subproblem allowsconvergence toward dual feasibility. The algorithmterminates when the subproblem solution attests thatthere are no more violated constraints and thereforethat the current dual solution is feasible for D.In our situation, dual constraints are of the form

    vivj Qakijij pk ck

    where ij is the nonnegative dual variable associatedwith arc vi vj in the constraint set (2). The purposeof the subproblem is thus to nd collection cyclesrk such that

    0< pk ck

    vivj Qakijij

    It consists equivalently of columns with a positivereduced cost in MPLP, when the basic solution isthe optimal solution of MPLP1. In the following,we call these columns collection cycles with a positivereduced cost. Using the notation kij = 1 when vi vjis included in rk and kij = 0 otherwise, this conditioncan be expressed as:

    vivj Akijcij +

    vivj Qakij ij pij < 0

    One of the key points determining the efciency ofa column-generation algorithm is the quickness of thesubproblem in nding interesting columns.

    3.2. Subproblem Solution Procedure DescriptionAs previously indicated, column-generation meth-ods have been widely used in the eld of vehi-cle routing. The most successful subproblem solutionapproach appears to be its modeling as a shortestpath problem with resource constraints, paired upwith a dynamic programming resolution (see, e.g.,Desrochers, Desrosiers, and Solomon 1992). Depend-ing on which specic routing problem is to be solved,the resources that are considered in the constrainedshortest path problem and the functioning of the

    dynamic programming algorithm are subject to mod-ications. Yet, on the whole, the same principlesare involved: Labels, representing partial paths, aresequentially extended with a checking of feasibilitybased on resource constraints and the use of domi-nance rules discarding dominated labels.In our situation, the set of paths to be explored is

    the set of elementary cycles with a length not greaterthan lmax. Within this set, we search for cycles with anegative cost value, with a cost evaluation describedfurther.Let us call d the set of feasible cycles (regarding

    the above conditions) visiting vertex vd and visitingnone of the vertices with a lower index. d1 d n 1 denes a partition of the subproblem solutionspace. Note that the size of d reduces drasticallywhile d increases. For the subproblem solution, setsd will be successively explored. Searching for acycle with negative cost in d remains to solvingan elementary shortest path problem with resourceconstraints (ESPPRC), using an appropriate cost func-tion that we have to specify. Vertex vd then stands fora depot (the paths go from vd to vd), and resourceswill ensure that the paths are elementary and havea length not greater than lmax. This problem can besolved with a dynamic programming algorithm pro-posed in Feillet et al. (2004b). This algorithm extendsa standard solution algorithm devoted to the solutionof the nonelementary path version of the problem (seeDesrochers, Desrosiers, and Solomon 1992), by addingresources enforcing the elementary path condition.Note that this partitioning of the subproblem on thebasis of the departure point is the usual way of tack-ling multidepot vehicle routing problems with col-umn generation (see, for example, Desaulniers et al.1998b).As specied above, the cost matrix has to be de-

    ned carefully to take into account the collection deci-sions on arcs and to ensure that a negative cost cycleis indeed a collection cycle with a positive reducedcost. To this aim, when an arc vi vj is traveledthrough, we expect it to cost cij when no collection isperformed on it and cij + ij pij when the availableprot pij is collected. As the collection is compulsory,an important issue is how to decide whether prothas to be collected.Decisions regarding the collection of prot on arcs

    are taken with respect to the cost matrix of the sub-problem. Let us call (c1) this matrix. We dene: c1ij = cij for all arcs vi vj A\Q c1ij = cij for all arcs vi vj Q with ij pij 0 c1ij = cij + ij pij for all arcs vi vj Q with

    ij pij < 0.The prot will be collected when ijpij < 0, which

    means that it is more interesting to collect the prot

  • Feillet, Dejax, and Gendreau: The Protable Arc Tour Problem544 Transportation Science 39(4), pp. 539552, 2005 INFORMS

    while traveling through the arc than to pass with-out doing so. In other words, among the two possibletraversal modes of the arc (going from vi to vj withor without collection), only the most interesting isretained. It is important to note that establishing sucha dominance relation does not hinder the functioningof the algorithm, because the resource consumptioninvolved by the two traversal modes allows a priorityorder between them to be established. As an exam-ple, such a behavior would not be possible for otherarc-routing problems like the CARP, for which per-forming service on an arc involves the consumptionof a resource (connected to the lling of the vehicle)that passing without service does not induce.

    3.3. Discussion About the ElementaryPath Condition

    As explained above, when column generation is usedin the context of vehicle-routing problems, the sub-problem is often modeled as a shortest path problemwith resource constraints (SPPRC). Hence, althoughroutes typically need to be elementary, the solu-tion space of the subproblem includes nonelemen-tary routes. This allows the subproblem solution tospeed up, since constraints enforcing the elementarypath condition strongly penalize dominance rules.As a consequence, the restricted MP must be ableto integrate the nonelementary cycles that the sub-problem is likely to generate; that is, the variableset of the MP has to include nonelementary routes.The cost denition ensures that this modication ofthe MP is possible; indeed, visiting vertices twice (ormore) is expensive and the optimal solution will natu-rally satisfy the elementary path condition. However,this property is not true for the linear relaxation ofthe MP, which deteriorates the quality of the bound-ing scheme.In 2, we decided to include only elementary cycles

    in the MP. Yet, in our case, it is possible to use theSPPRC as a subproblem instead of the ESPPRC, with-out changing the variable set of the MP. Indeed, wehave already mentioned that a nonelementary cycle isequivalently a set of elementary cycles. Moreover, it iseasy to demonstrate that a feasible elementary cycleof negative cost exists if and only if a feasible nonele-mentary cycle with negative cost also exists. Thus,the solution of the SPPRC provides one or severalfeasible nonelementary cycles that themselves pro-vide one or several feasible elementary cycles of neg-ative cost. The correct behavior of the procedure istherefore ensured. However, the value of the lengthlimit lmax then becomes the only limit to the combina-torial explosion of the state space of the subproblem.Hence, we have preferred to consider the subproblemas an ESPPRC in the CAP algorithm. In 5, the twoapproaches are numerically compared.

    3.4. Generation of an Initial Set of ColumnsThe previous column-generation procedure is pre-ceded by an initial phase that generates a rst setof columns. This phase exploits the ow substruc-ture of the PATP. It consists in solving a sequenceof assignment problems, each one detecting poten-tially interesting collection cycles in the graph. Theseassignment problems are successively solved withintwo greedy heuristics H1 and H2 and a heuristiccolumn-generation procedure.Heuristics H1 and H2 are both variants of a single

    solution scheme. They work iteratively in a greedyfashion. At each iteration, collection cycles enablinga prot are sought. For this purpose the followingassignment problem is dened.Let us consider G1, a duplicate of the graph G to

    which self-loops are added: G1 = V A1 with A1 =A vi vi vi V . A cost matrix c1 is associatedwith A1. For every arc vi vj A, c1ij is either c1ij p1ijor c1ij , depending on whether arc vi vj has prot ornot. For every arc vi vi A1, c1ii = 0. The assignmentproblem is dened as follows: To every vertex of thegraph a successor must be assigned, such that eachvertex receives a single successor, each vertex receivesa single predecessor, and the assignment cost is min-imized. A solution then consists of an arc set repre-senting precedence relations between vertices. Due tothe specic constraints, this arc set composes a setof elementary cycles and self-loops. Seeing that self-loops have a zero cost value, elementary cycles arenonpositive in the optimal solution. Thus, the opti-mal resolution of this assignment problem providesone or several disjoint elementary cycles of negativecost, when these exist. Such an assignment problemis well known to have a polynomial complexity andcan, for example, quickly be solved using the simplexalgorithm (see Ahuja, Magnanti, and Orlin 1993).The backbone of greedy heuristics H1 and H2 is

    the solution of this assignment problem. It is used asfollows. Solving the assignment problem, a set of neg-ative cost cycles can be obtained. Actually, as the costdenition takes into account the prot collected, it issimple to derive a collection cycle set from the com-puted cycle set. Once these collection cycles are found,data are updated for the next iterations: For everyarc vi vj Q belonging to a collection cycle, qij isdecreased by h units, where h is the higher value suchthat no qij becomes negative; for each arc vi vj forwhich qij has been changed to 0, c1ij is set to cij insteadof cij pij (no more prot is available). This updatecorresponds to putting aside the collection cycles in agreedy way. The assignment problem resolution andthe updates are performed repeatedly, until only self-loops are found.Unfortunately, the constraint limiting the length of

    the cycles is not considered in the assignment prob-lem, which might thus generate infeasible cycles. The

  • Feillet, Dejax, and Gendreau: The Protable Arc Tour ProblemTransportation Science 39(4), pp. 539552, 2005 INFORMS 545

    way we proceed with these too-long cycles leads tothe two variants H1 and H2. In H1, infeasible cyclesare put aside in a greedy fashion, as in other cycles,but are not considered in the resulting set of cycles.In H2, infeasible cycles are not put aside as longas there exists a feasible cycle in the current itera-tion; when all cycles are nonfeasible, a single one isput aside. It is interesting to note that these heuris-tics, which do not take into account the tour lengthlimit, can be considered as greedy versions of a owalgorithm like the Ford and Fulkersons one (1956):In both cases, new paths are found repeatedly forincreasing ow value. The assignment-based methodthat is included in H1 and H2 is particularly wellsuited to our situation for two reasons. On the onehand, each assignment problem solution can provideseveral negative cost elementary cycles. On the otherhand, for the same reason, the method tends to favorshort cycles.Actually, the initial set of columns is completed

    with another procedure, which we call ENUM(3) andwhich consists of enumerating all the feasible elemen-tary cycles containing no more than three arcs, pro-vided that the collected prot is larger than the travelcosts.In the same way that we use an assignment prob-

    lem inside greedy heuristic procedures H1 and H2,we are able to insert it in a heuristic column-gener-ation procedure. We just need to copy the column-generation procedure of 3.1 but change the subprob-lem into an assignment problem. The cost matrix def-inition is the same as in 3.2, except for the zero costself-loops that are added. The procedure ends whenno more interesting cycle is returned.We call HCG the previous heuristic column-gener-

    ation procedure, initiated with the union of the collec-tion cycle sets resulting from H1, H2, and ENUM(3).HCG enables the generation of a sizeable set ofcolumns. The efciency of using this set as an initialset for the exact column-generation procedure will bedemonstrated in the experiments described in 5.

    4. Branching SchemeIn branch-and-price procedures, column generation isapplied at each node of the search tree. It necessitatesbeing able to comply with the change of problemstructure due to the branching decisions. Typically,branching on the problem variables does not suit theresolution of shortest path type subproblems (see, forexample, Barnhart et al. 1998). The rule that is prefer-ably used is to express the fractional solution in termsof arc ow variables and to branch on these. The val-ues of the arc ow variables are obtained by super-imposing the ow generated by the columns of thesolution. Usually, in routing contexts, the vertices arevisited one time and consequently admit a uniquesuccessor (in integer solutions). The branching rule

    then often consists of selecting an arc with a fractionalow value and deriving one branch where this arc isenforced and another branch where it is forbidden.To do so, inadequate columns are forced to zero inthe MP, and inadequate arcs are removed from thesubproblem graph. More generally, when this schemecannot be applied, the branching policy can consistof bounding the ow value for one or several arcs.A new constraint, expressed in terms of path vari-ables, then has to be added to the MP. This new con-straint denes a limit on the sum of the path variablesthat traverse the arc(s) considered. Also, the dual vari-able of this constraint has to be taken into accountduring the subproblem phase by adequately addingits value on corresponding arcs.In our situation, vertices are generally visited more

    than once and this last branching policy shouldappear as a good approach. Unfortunately, the pre-liminary tests computed with procedure CAP showedthat expressing fractional solutions in terms of arcow variables often results in an integer-ow matrix.It is thus not easy to determine a branching con-straint based on arc ow variables discarding the cur-rent fractional solution. This situation is quite originalbecause an integer arc-ow matrix usually denotes anonfractional solution. It thus immediately raises aquestion: Can a fractional solution exhibiting an inte-ger ow variable matrix trivially be transformed intoa feasible (integer) solution?Unfortunately, the answer to this question is no,

    at least by using only the current path variables; somesituations might occur where a set of fractional pathvariables associated to an optimal solution leads toan integer ow matrix and it is not possible to ndan integer solution of the same cost using these vari-ables (a detailed counterexample is provided in Feillet2001). Transforming a fractional solution into an inte-ger by introducing new feasible cycles might be possi-ble, but this seems rather difcult. We propose insteadto develop a branching scheme adapted to the casewhere the arc ow matrix is an integer.To this end, we propose a method that we call the

    ow-splitting method. This method essentially pro-vides a theoretical tool ensuring the completeness ofthe search without resorting to branching on pathvariables. Basically, when branching on arcs is notpossible, we propose branching on short sequences ofarcs (instead of long sequences when path variablebranching is used). In 4.1, we describe this method;we then describe the remainder of the algorithm,in 4.2. The complete branch-and-price algorithm iscalled solution of an arc routing problem with prots(SARPP).

    4.1. Flow-Splitting MethodThe purpose of this subsection is to describe how wepropose to tackle branching when the arc ow matrix

  • Feillet, Dejax, and Gendreau: The Protable Arc Tour Problem546 Transportation Science 39(4), pp. 539552, 2005 INFORMS

    computed from a fractional solution may be an inte-ger. The key point of the method is this simple obser-vation: The solution computed at a node of the treeis an integer if and only if the ow associated to anysubset of path variables is an integer. A direct conse-quence of this observation is that, when the solution isfractional, it is possible to select a subset of path vari-ables such that its associated ow will be fractional.Such a subset can then be used to generate a fractionalow matrix and derive a branching. As mentionedpreviously, the subset usually selected in the literatureis exactly the whole set of path variables, which inthis case may result in an integer ow matrix. On thecontrary, selecting subsets of Size 1 corresponds tobranching on the MP variables, which is generallyawkward, as we have already mentioned. Thus, ourapproach is a compromise approach between thesetwo extremes.The counterpart of using a subset of columns to

    derive a branching, that is, introducing a new con-straint on a subset of columns, is that the new dualvariable has only to be handled by columns of thatsubset. As we will see with our policy, the subprob-lem will have to be decomposed to treat the differentsets of columns. In a rst step, let us describe how wepropose to select the subset of variables. The way thesubproblems are adapted so that they only addressthe chosen variable sets and the form of the branchingconstraints will be discussed in the next subsection.At rst, we make use of the fact that in the subprob-

    lem phase, we successively search for new columnsin sets d, 1 d n 1 (see 3.2). Even if thisdecomposition is not explicit in the MP formulation, ithighlights a natural splitting of the variable set, eachvariable being connected to a single set d. Thus,at a given node of the search tree and for a fractionalsolution, we start by searching for a set d such thatthe ow associated to its variables is fractional. Com-putationally, determining whether some ow matri-ces are fractional is very fast and simple. If we nda set d with a fractional ow matrix, we use thisset to derive the branching, as explained in the sub-sequent section.When the ow is an integer for every set d,

    let us describe how we proceed (see Figure 2). Notethat practically this situation is rather rare and thatthis part is mainly for a theoretical matter. SplittingLevel 0 corresponds to the complete set of feasi-ble cycles. This set is automatically partitioned inton 1 subsets 1 n 1, which correspondsto Splitting Level 1. Let us assume that the ow is aninteger for all these sets at Level 1. We select a seti1 holding variables with a fractional value, andwe split it. For this purpose, we partition its cyclesinto subsets, depending on the second visited vertex.We thus obtain new subsets that we respectively call

    Level 0

    Level 1

    Set of feasible cycles

    P(1) P(2) P(i1) P(n-1)

    P(i1, i2) P(i1, i2) Level 2

    P(i1, i2,, it) P(i1, i2,, it) Level t

    Figure 2 Flow-Splitting Principle

    i1 i1+1 i1n1, such that i1 i containscycles beginning with the sequence vi1 vi. Thesesubsets dene a partition of i1 (note that sequencesvi1 vi with i < i1 are not considered due to the ddenition; see 3.2). Two situations can then arise: There exists i2 such that the ow associated with

    i1 i2 is fractional. We then use this set to derivea branching, and we call i1 i2 the complemen-tary set. For every vertex vi i1 + 1 i n 1, the ow

    associated with i1 i is an integer. We then select aset i1 i2 holding variables with a fractional value,and we split it in the same manner.We decompose the set of feasible cycles until we nd,at level t, a subset of cycles beginning with a samesequence s = vi1 vi2 vit for which the owis fractional. Note that t is expected to keep a lowvalue in practice. We call i1 it, or more brieys, this set and we use it for performing the branch-ing in the way described below.As far as we know, our approach is original, even if

    it is not new: When the subproblem is made of severalcomponents, branchings might be operated on a sin-gle component (see for example Barnhart et al. 1998or Desaulniers et al. 1998a).

    4.2. Complementary InformationUsing the ow-splitting method, we have to deal withnew kinds of subproblems and new constraints.If, at a given node of the search tree, the level

    reached by the ow-splitting method is t, the fol-lowing subsets of columns will have to be exploredfor the search of new columns: 1 i1 1,i1+1 n1, i1 it, and i1 ikfor 2 k t. Note that we have to explore n+ t 2sets, instead of the n 1 initial ones, which is notso detrimental as long as t is low. To comply withthe structure of these different subsets, we have toadapt the shortest path solution algorithm. We have

  • Feillet, Dejax, and Gendreau: The Protable Arc Tour ProblemTransportation Science 39(4), pp. 539552, 2005 INFORMS 547

    to deal with two new kinds of subproblems. For thesearch of paths of the type i1 it, one just needsto initiate the dynamic programming procedure withthe label associated to sequence vi1 vit . Thenevery label will be an extension of this original label.For the search of paths of the type i1 ik,one just needs to initiate the dynamic program-ming procedure with the label associated to sequencevi1 vi2 vik1 and to remove arc vik1vik .The branching constraints will be dened as fol-

    lows. The ow-splitting method provides a subset ofpath variables s such that the ow matrixMs com-puted by superimposing the ow generated by thesevariables is fractional. New constraints are deter-mined from matrix Ms . A rst possibility would havebeen to select an arc vi vj such that Msij is fractionaland to add constraints bounding the ow issued froms on this arc. However, Msij might be almost inte-gral, which would limit the impact of the new con-straints (computational experiments will show thatthe impact of the branching constraints is an impor-tant issue here). Instead of an arc, we prefer to selectan arc set. This set is selected such that the fractionalpart of the ow value traversing this set is not null,but as close as possible to 0.5. For this purpose theline of Ms having the largest number of fractionalvalues is selected. Calling vi the vertex correspond-ing to this line and vi1 the rst vertex of s, candidatesets are constructed by successively adding the out-going arcs of vi (from the left to the right). Among theresulting sets, the set vi vi1 vi vi1+1 vi vjsuch that = i1pj Msip is the more fractional, isretained. Again, note that arcs vi v1 vi vi11are not considered because they cannot be traversedby cycles of the set s.This permits two branches to be dened with the

    respective constraints:

    vpvi1 vj

    rkskipxk

    and

    vpvi1 vj

    rkskipxk + 1

    These constraints are introduced explicitly in theMP. During the subproblem phase, when the set sor one of its subset is evaluated, these constraints haveto be taken account. Noting !, the dual variable associ-ated to one of these constraints, we simply have to add! to the cost of arcs vi vi1 vi vi1+1 vi vj.To complete the description of the algorithm, let us

    now detail how the tree is explored. At each step,we consider the values of the linear relaxation for thefathers of the tree leaves and we select the leaf havingthe maximal value. In case of equality between sev-eral nodes, the deeper is selected. When equality stilloccurs, the last node to enter the tree is chosen.

    Finally, an important point is that to acceleratethe solution, the column-generation procedure is notautomatically executed at each node of the search tree.Indeed, let us consider the case when the solution ofthe linear relaxation of the restricted MP by the sim-plex algorithm at a node N provides the same valuethat the optimal solution of the linear relaxation of theMP for the father of N does. We know that the opti-mal solution value of the linear relaxation of the MPat node N is between these two values. In this case,we are sure to have the optimal solution in hand, andwe do not need to generate new columns.In practice, experiments show that ow-splitting at

    a level greater than 1 occurs only exceptionally. Forthe experiments, we therefore use a simplied ver-sion of the algorithm, designed in the following man-ner: When a node of the search tree needs a Level 2splitting, the node is postponed. Using this simplerule, the algorithm always happens to nd the opti-mal solution before having to explore the postponednodes (by always nding a feasible solution with avalue as good as the upper bound associated to thesenodes).

    5. Computational ResultsThe following computational study is developed withthree objectives. The rst is to validate our solutionapproach; the second is to compare it with severalvariants; the third is to evaluate the effects of theinstance parameters, to highlight the PATP structure.Experiments were performed on randomly gen-

    erated Euclidean instances. Vertices are randomlylocated on a square map with a width of 500 dis-tance units. The cost of an arc is the distance betweenits two endpoints, with a precision of 101. Unlessthe opposite is explicitly stated, the other parame-ters are set as follows. Each arc vi vj A belongsto Q pij > 0 with a probability 50%; pij is then chosenuniformly in the range $cij 15 cij %, and the arccapacity qij is selected uniformly in $1200%. The max-imal length lmax of a collection cycle is set to 1,500.For each experiment, results indicate the mean over10 instances. In most cases, results are only givenwhen the solution time is no more than one hour.Another stopping criterion is met when the depth ofthe search tree exceeds 3,000.Experiments are performed on a PC Pentium 333

    MHz with 128 MB of RAM. Even if specialized algo-rithms exist for solving assignment problems, they aresolved as linear programs using CPLEX 6.0 (ILOG1998). This is also used for the solution of linear relax-ations of restricted MPs. The interface between CPLEXand the programming language (C++) is realized withthe help of LPToolKit 3.6 (EURODECISION 1998).We begin the presentation of the results by exam-

    ining in 5.1 the efciency of the procedure SARPP,

  • Feillet, Dejax, and Gendreau: The Protable Arc Tour Problem548 Transportation Science 39(4), pp. 539552, 2005 INFORMS

    that is, its ability to nd the optimal solution quickly.In 5.2, we assess several variants of SARPP. The com-putational study ends with the study of the efciencyof SARPP with respect to instance parameters, in 5.3.Computing times in the tables always correspond tothe time spent since the beginning of the algorithm,even when it has several phases.

    5.1. Efciency of SARPPTable 1 evaluates the efciency of the solution pro-cedure SARPP. The algorithm is applied to instanceswith up to 25 vertices. Table 2 focuses on the column-generation solution procedure CAP, at the root of thesearch tree.We rst observe that the gap between the linear

    relaxation value and the optimal solution value isalways null. More generally, this observation leads us

    Table 1 Efciency of SARPP

    CAP SARPP

    n Q c1 t 2 d3 nd4 iter 5 col6 c7 t 2

    5 104 0.00 022 0 0 0 0 470480 02410 451 0.00 084 03 03 0 0 2369529 08715 1053 0.00 217 431 431 0 0 5731793 37920 1991 0.00 596 1442 1442 0 0 11231034 171525 3051 0.00 1491 10035 10035 0 0 18481664 125643

    1Gap (percentage) between the optimal solution and the linear relaxationvalue.

    2Total CPU time in seconds.3Depth of the optimal solution in the search tree.4Number of nodes spread out in the search tree.5Number of calls of the subproblem (root excepted).6Number of columns generated while exploring the search tree (root

    excepted).7Value of the optimal solution.

    Table 2 Efciency of CAP

    HCG CAP

    n Q c1 t 2 iter 3 col4 c5 t 2

    5 104 10000 020 1 87 470480 02210 451 9797 078 26 1081 2369529 08415 1053 9879 198 24 4913 5731793 21720 1991 9913 523 22 11432 11231034 59625 3051 9981 1165 19 27466 18481664 149130 4402 9995 2439 18 39468 26359325 347335 6059 9995 4627 2 60490 37275942 718940 7869 9999 7120 2 59458 49720505 1223045 9920 9997 12021 19 92582 59899989 2319450 12289 9999 20393 19 114789 76387647 4465455 15043 9997 34059 19 191972 94384380 8768060 17640 9997 52624 19 335967 109703887 19411665 20743 9998 83155 18 358594 128236629 360924

    1Value obtained with HCG in percent of the linear relaxation value (100).2Total CPU time in seconds.3Number of calls of the subproblem.4Number of columns generated in 1.5Linear relaxation value.

    to conjecture that the duality gap would remain verysmall whatever instances are used, which is usuallyin favor of a quick nding of the integer solution.However, we note that the bottleneck of SARPP isnot the search of the linear relaxation value, but thebranching phase. Indeed, CAP permits one to solveinstances with up to 65 vertices in about an hour,whereas SARPP does not go over 25 vertices. Notethat very few iterations are needed in CAP and thatmost of the time is spent solving the subproblem.During the branching phase, the constraints added

    to the model do not seem to be very inuen-tial. Indeed, for all computed instances, they neverresulted in a decrease of the optimal relaxed solu-tion value. The lack of inuence of these constraintsand the huge combinatorics of the problem (arc owmatrices that can be computed by superimposing thepath variables are not binary, as it often happens,but can reach high values) explain the difculty inreaching the integer optimal solution. In particular,computing times are very variable, depending on theinstances. However, the weakness of the added con-straints has an important advantage. While goingdown the tree, we never had to backtrack; indeed,the search tree was reduced to a chain going fromthe root node to an integer solution whose value wasexactly the value of the lower bound at the root nodeand, as such, was certied to be optimal. Equivalently,the number of spread-out nodes was always exactlyequal to the depth reached to nd the optimal solu-tion in the search tree. Nevertheless, the branchingphase takes a long time, because of the high value ofthis depth. Basically, our opinion is that there existsa very large number of optimal integer solutions, butthere are so many more fractional solutions with thesame cost that SARPP has difculties nding them.With this standpoint, trying to obtain an integer solu-tion from the fractional solution provided by CAP byxing some path variables is certainly a promisingperspective.Another important remark concerns the quality of

    the column set obtained at the root of the search tree.For all the computed instances, it was never necessaryto generate new columns during the search. Thus,SARPP acted exactly as a branch-and-bound algo-rithm. Furthermore, the subproblem was never called,since the relaxed solution value at each node of thesearch tree was always identical to its father node.Incidentally, note that using the standard branch-

    and-bound procedure of CPLEX as a complementof CAP instead of SARPP (which would provide aheuristic solution in the general case but an opti-mal one for the above instances solved by SARPP)permitted us to solve instances with up to 45 ver-tices. Note also that SARPP was used with success

  • Feillet, Dejax, and Gendreau: The Protable Arc Tour ProblemTransportation Science 39(4), pp. 539552, 2005 INFORMS 549

    in the context of the freight transportation prob-lem described in 1: Real size instances with upto 20 plants (set V ) and 200 freight transportationdemands (set Q) were solved in a few seconds.

    5.2. Comparison Between SeveralSolution Approaches

    While describing CAP, we insisted on dening an ini-tial set of columns exploiting the constrained owstructure of the PATP and of developing the column-generation procedure on arcs. It is now time to checkthese assertions. Subsections 5.2.1 and 5.2.2 respec-tively focus on these subjects. The subsequent 5.2.3considers another question, that of the respectiveefciency of ESPPRC and SPPRC modelings of thesubproblem during the column generation process.

    5.2.1. Impact of the Initial Set of Columns. Table3compares ve variants of the procedure CAP. In eachvariant, the column-generation procedure (called CG)is initialized with a different set of columns 1. CG()1 =. CG(ENUM(2))1 is the set of all the collection

    cycles with two arcs and a positive cost. CG(ENUM(3))1 is the set obtained using

    ENUM(3). CG(H)1 is the set obtained using H1 and H2. CAPProcedure included in SARPP; 1 is the

    set obtained using HCG.Even if the initial set of columns seems to concernessentially the MP linear relaxation computation (atthe tree root), it also seems interesting to evaluate itsimpact on the branching phase.Table 3 demonstrates the necessity of having

    columns before starting the column-generation proce-dure. Procedures CG() and CG(ENUM(2)) are notcompetitive, except for small instances. CG(H) is notfar better. On the other hand, the use of ENUM(3)proves very efcient. Even so, when we focus on com-puting times for nding an integer solution, results

    Table 3 Impact of Initial Set of Column for the Solution of the PATP

    CG() CG(ENUM(2)) CG(ENUM(3)) CG(H) CAPn t1 t 2 t 1 t 2 t 1 t 2 t 1 t 2 t 1 t 2

    5 004 005 003 005 002 003 021 023 022 02410 008 011 007 009 006 008 066 069 084 08715 216 5332 130 3793 031 314 247 1738 217 37920 754 437 88426 101 3467 764 28774 596 171525 13415 5131 985 4822 1491 12564330 73638 2292 25637 347335 4525 194079 718940 13190 1223045 20985 23194

    1CPU time in seconds to nd the linear relaxation value.2Total CPU time in seconds to obtain the integer optimal solution value.

    are less convincing. CG(ENUM(3)) does not suc-ceed in solving instances when the number of ver-tices reaches 25. Intuitively, the set computed withENUM(3) suffers of the lack of lengthy cycles and,consequently, the branching constraints appear to beless effective. Furthermore, as the number of arcsin solution cycles is certainly related to instancescharacteristics, CG(ENUM(3)) might be less robustthan CAP. Thus, when the size of the instancesincreases, generating an initial set of columns withHCG appears to be more effective.

    5.2.2. Comparison Between Column Generationon Arcs and on Nodes. Table 4 shows the effect oftransforming the arc-routing problem into a node-routing problem. Before describing the results, let usrecall briey how to operate such a transformation.In a rst step, a transformed graph G = V A isconstructed. The vertex set V is such that each ver-tex in V corresponds to an arc in Q. The arc set A

    is such that the graph G is complete. A new distancematrix is computed for G, using the distance matrixassociated to G. The notion of collection cycle is nolonger necessary, since collection is on vertices andit is never necessary to visit a vertex without collect-ing prot, as a direct arc exists between every pair ofvertices. That aside, the algorithm remains identical.In particular, in the dynamic programming procedureused for the subproblem solution, the fact that thegraph G is derived from a geographical graph G isnot exploited. This exploitation would have permit-ted more efciency, but our goal is to compare thearc routing approach with a node-routing approachfollowing an automatic transformation. In Table 4,CAP-node is the solution procedure devoted to thenode-routing problem.Results clearly demonstrate the interest of using the

    geographic graph. When the problem is transformedinto a node-routing problem, the number of verticesincreases signicantly and the subproblem solutionprocedure becomes inefcient. Thus, it conrms the

  • Feillet, Dejax, and Gendreau: The Protable Arc Tour Problem550 Transportation Science 39(4), pp. 539552, 2005 INFORMS

    Table 4 Comparison of Solutions in the Geographic Graph and in theTransformed Graph

    CAP CAP-node

    n it1 col2 t 3 Q it 1 col2 t 3

    5 1 87 0.22 104 1 87 02410 26 1081 0.84 451 26 1714 36415 24 4913 2.17 1053 24 10058 2219320 22 11432 5.96 1911 23 17354 127660

    1Number of calls of the subproblem.2Number of columns generated in 1.3CPU time in seconds for the solution of the linear relaxation.

    necessity of developing specic procedures designedfor arc-routing problems, even if, obviously, establish-ing bridges between node- and arc-routing problemsis also necessary.

    5.2.3. Relaxation of the Elementary Constraint ofthe Subproblem. Table 5 compares using an ESPPRCprocedure with using a SPPRC procedure to solve thesubproblem. In the last case, we call CAP-SPPRC theprocedure dedicated to the solution of the linear relax-ation of the PATP.To summarize results, it seems more efcient to use

    the SPPRC instead of the ESPPRC for the subprobleminside the column-generation procedure CAP. Evenso, computing times are similar and the use of theSPPRC does not enable us to solve larger instances.It is also important to notice that the use of HCG isall the more worthwhile in the case of CAP-SPPRC

    Table 5 Comparison Between the Use of the ESPPRC and the SPPRCas a Subproblem in CAP

    CAP CAP-SPPRC

    lmax n it1 col2 t 3 it 1 col2 t 3

    1,500 10 26 1081 084 34 1189 07415 24 4913 217 35 3401 20720 22 11432 596 3 8044 47325 19 27466 1491 25 14463 132830 18 39468 3473 2 21486 272735 2 60490 7189 24 33604 586740 2 59458 12230 27 46971 1002645 19 92582 23194 24 70206 17765

    3,000 10 12 879 095 14 1024 08715 14 9370 255 17 5967 19720 16 12835 694 18 9430 54225 16 52648 10296 17 16187 147630 15 43354 15765 23 23916 3884

    6,000 10 12 875 083 12 1803 08215 1 2674 197 1 2674 19520 11 67592 27503 11 14123 56225 12 15985 2458 12 18700 184930 12 38124 12925 12 23675 5967

    1Number of calls of the subproblem.2Number of columns generated in 1.3CPU time in seconds to nd the linear relaxation value.

    because it enables a large decrease in the numberof negative cost cycles during the subproblem phase.Indeed, in many cases, no such cycle remains in thegraph and a unique iteration of the subproblem isperformed. Our opinion is that applying the SPPRC-based approach in cases where a large number of neg-ative cost cycles remain in the graph would be far lessefcient.Finally, it is important to recall that, even for small

    instances, when lmax tends toward innity, the sizeof the state space also tends toward innity whennonelementary paths are authorized, while it is nottrue in the opposite case. However, this is not asufcient reason to dismiss CAP-SPPRC because 1showed that the PATP can be solved in polynomialtime when the length constraint is redundant.

    5.3. Scenarios on the Instance-Building ParametersBesides the previous tests, this subsection is devotedto developing some understanding of the evolution ofthe solution value and of the efciency of SARPP, withrespect to instance parameters. We successively eval-uate the impact of the length limit lmax, of the demanddensity (percentage of arcs belonging to Q), of themaximal arc capacity, and of the prot value. We donot present heavily detailed results here, just someconclusions; detailed results can be found in Feillet(2001).lmax valueA low value of lmax strongly reduces the

    number of feasible cycles in the graph and permitsa more efcient solution. Nevertheless, an increaseof lmax is not completely negative. Indeed, the largerlmax is, the smaller the gap between HCG result andthe linear relaxation value is and the less numerousthe subproblem calls are. Thus, in many cases, a sin-gle iteration proves that the HCG solution is optimal.It is interesting to mention also that when using HCGinstead of ENUM(3) it is all the more important thatlmax value is high.Demand densityInstances can be solved faster

    when demand density is either low or medium.Capacity valuesThese values do not seem to have

    a signicant impact on the solution efciency.Prot valuesOverall, the higher prot values are,

    the harder the problem is. Yet, even with very lowprot values, the problem remains difcult to solve.Actually, prot values impact essentially the interestof visiting arcs without collection. The lower protvalues are, the less arcs are visited without collection.

    6. ConclusionIn this article, we have introduced a new problem,PATP, which is an arc-routing problem with prots,and we have addressed the solution of this problemwith a branch-and-price based procedure.

  • Feillet, Dejax, and Gendreau: The Protable Arc Tour ProblemTransportation Science 39(4), pp. 539552, 2005 INFORMS 551

    Several of the results presented with respect to ourcolumn-generation approach (symmetry managementwhile partitioning the variable set according to theorigin node, ow substructure exploitation) can begeneralized to similar problems, where the aim is tond a collection of constrained cycles in a graph. Inthe same fashion, the way collection decisions arexed for the subproblem, using dual variable values,is instructive for the use of column generation forsolving related problems.Branch-and-price methods have seen a rapid devel-

    opment in recent years, but their use is still con-ned to some particular problems. With this work,we have contributed to the exploration of branch-and-price possibilities. In particular, the original struc-ture of the PATP implied the introduction of a newbranching method, which we called the ow-splittingmethod.Our computational experiments allowed us to as-

    sess the efciency of the SARPP procedure for solv-ing the PATP and to better understand the inherentcomplexity of the problem. Results show that SARPPis able to solve, within a reasonable computing time,instances with up to 30 vertices, that is, instances withhundreds of arcs providing prot that could not betackled by merely transforming the problem into anode-routing one.As a nal remark, let us recall that the deni-

    tion of PATP has been motivated by an applicationin freight transportation. However, many variantscould be derived while facing other practical situa-tions. Similar problems especially exist in the eld oftelecommunication network reliability, as noted in 1.In our opinion, the results of this paper and theSARPP algorithm can possibly be adapted to theseother contexts.

    AcknowledgmentsThe authors gratefully acknowledge helpful comments fromthree anonymous referees who helped improve the qualityof this paper.

    ReferencesAhuja, R. K., T. L. Magnanti, J. B. Orlin. 1993. Network Flows: Theory,

    Algorithms, and Applications. Prentice Hall, Englewood Cliffs,NJ.

    Balas, E. 1989. The prize collecting traveling salesman problem.Networks 19(6) 621636.

    Barnhart, C., C. A. Hane, P. H. Vance. 2000. Using branch-and-price-and-cut to solve origin-destination integer multicommodityow problems. Oper. Res. 48(2) 318326.

    Barnhart, C., E. L. Johnson, G. L. Nemhauser, M. W. P. Savelsbergh,P. H. Vance. 1998. Branch-and-price: Column generation forsolving huge integer programs. Oper. Res. 46(3) 316329.

    Belling-Seib, K., P. Mevert, C. Muller. 1988. Network ow prob-lems with one side constraint: A comparison of three solutionmethods. Comput. Oper. Res. 15(4) 381394.

    Boland, N. L., L. W. Clarke, G. L. Nemhauser. 2000. Asymmetrictraveling salesman problem with replenishment arcs. Eur. J.Oper. Res. 123(2) 408427.

    Butt, S. E., D. M. Ryan. 1999. An optimal solution procedure forthe multiple tour maximum collection problem using columngeneration. Comput. Oper. Res. 26(4) 427441.

    Cohen, E., N. Megiddo. 1994. Algorithms and complexity analysisfor some ow problems. Algorithmica 11 320340.

    Deitch, R., S. P. Ladany. 2000. The one-period bus routing prob-lem: Solved by an effective heuristic for the orienteering tourproblem and improvement algorithm. Eur. J. Oper. Res. 127(1)6977.

    Desaulniers, G., J. Desrosiers, I. Ioachim, M. M. Solomon, F. Soumis,D. Villeneuve. 1998a. A unied framework for deterministictime constrained vehicle routing and crew scheduling prob-lems. C. T. Laporte, G. Laporte, eds. Fleet Management andLogistics. Kluwer Academic Publishers, Norwell, MA, 5793.

    Desaulniers, G., J. Lavigne, F. Soumis. 1998b. Multi-depot vehiclescheduling problems with time windows and waiting costs.Eur. J. Oper. Res. 111(3) 479494.

    Desrochers, M., J. Desrosiers, M. M. Solomon. 1992. A new opti-mization algorithm for the vehicle routing problem with timewindows. Oper. Res. 40(2) 342354.

    Desrosiers, J., Y. Dumas, M. M. Solomon, F. Soumis. 1995. Timeconstrained routing and scheduling. M. Ball, T. Magnanti,C. Monma, G. Nemhauser, eds. Handbooks in OR and MS, Vol. 8.Elsevier Science Publishers B.V., Amsterdam, North-Holland.

    Eiselt, H. A., M. Gendreau, G. Laporte. 1995. Arc routing problems.Part II: The rural postman problem. Oper. Res. 43(3) 399414.

    EURODECISION. 1998. LPToolKit, Users Guide and Technical Refer-ence, 3rd ed. Eurodcision, Versailles, France.

    Feillet, D. 2001. Problmes de tournes avec gains: tude et appli-cation au transport inter-usines. Doctoral dissertation, Labora-toire Productique Logistique, cole Centrale Paris.

    Feillet, D., P. Dejax, M. Gendreau. 2002. Planication tactique detransport de marchandises interusine. J. Europen des SystmesAutomatiss 36(1) 149168.

    Feillet, D., P. Dejax, M. Gendreau. 2004a. Traveling salesman prob-lems with prots. Transportation Sci. 39(4) 540553.

    Feillet, D., P. Dejax, M. Gendreau, C. Gueguen. 2004b. An exactalgorithm for the elementary shortest path problem withresource constraints: Application to some vehicle routing prob-lems. Networks. 44(3) 216229.

    Fischetti, M., P. Toth. 1988. An additive approach for the optimalsolution of the prize-collecting travelling salesman problem.B. Golden, A. Assad, eds. Vehicle Routing: Methods and Studies.Elsevier Science Publishers B.V., Amsterdam, North-Holland,319343.

    Ford, L. R., D. R. Fulkerson. 1956. Maximum ow through a net-work. Canadian J. Math. 8 399404.

    Fortz, B., M. Labb, F. Mafoli. 2000. Solving the two-connected net-work with bounded meshes problem. Oper. Res. 48(6) 866877.

    Garey, M. R., D. S. Johnson. 1979. Computers and Intractability:A Guide to the Theory of NP-Completeness, Vol. 50. Freeman,San Francisco, CA.

    Gueguen, C. 1999. Mthodes de rsolution exacte pour les prob-lmes de tournes de vhicules. Doctoral dissertation, Labora-toire Productique Logistique, cole Centrale Paris.

    Hochbaum, D. S., E. V. Olinick. 2001. The bounded cycle coverproblem. INFORMS J. Comput. 13(2) 104119.

    ILOG. 1998. ILOG, Using the CPLEX Callable Library, 6th ed. ILOGInc., CPLEX Division, Incline Village.

    Kennington, J. L., V. S. S. Nair, M. H. Rahman. 1999. Optimization-based algorithms for nding minimal cost ring covers in sur-vivable networks. Comput. Optim. Appl. 14 219230.

  • Feillet, Dejax, and Gendreau: The Protable Arc Tour Problem552 Transportation Science 39(4), pp. 539552, 2005 INFORMS

    Labb, M., G. Laporte, P. Soriano. 1998. Covering a graph withcycles. Comput. Oper. Res. 25(6) 499504.

    Laporte, G. 1997. Modeling and solving several classes of arc rout-ing problems as traveling salesman problems. Comput. Oper.Res. 24(11) 10571061.

    Mathies, S., P. Mevert. 1998. A hybrid algorithm for solving net-work ow problems with side constraints. Comput. Oper. Res.25(9) 745756.

    Patterson, R., E. Rolland. 2003. The cardinality constrained coveringtraveling salesman problem. Comput. Oper. Res. 30 97116.

    Savelsbergh, M., M. Sol. 1998. Drive: Dynamic routing of indepen-dent vehicles. Oper. Res. 46(4) 474490.

    Thomassen, C. 1997. On the complexity of nding a minimum cyclecover of a graph. SIAM J. Comput. 26(3) 675677.

    Vanderbeck, F. 2000. On Dantzig-Wolfe decomposition in integerprogramming and ways to perform branching in a branch-and-price algorithm. Oper. Res. 48(1) 111128.

    Yan, S. 1996. Approximating reduced costs under degeneracy ina network ow problem with side constraints. Networks 27(4)267278.