multiple center capacitated arc routing problems: a tabu search algorithm using capacitated trees

17
Theory and Methodology Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees Anita Amberg a , Wolfgang Domschke a , Stefan Voß b, * a Technische Universit at Darmstadt, Fachgebiet Operations Research, Hochschulstraße 1, D-64289 Darmstadt, Germany b Technische Universit at Braunschweig, Abteilung Allgemeine Betriebswirtschaftslehre, Wirtschaftsinformatik und Informationsmanagement, Abt-Jerusalem-Straße 7, D-38106 Braunschweig, Germany Received 1 October 1996; accepted 1 March 1999 Abstract In the capacitated arc routing problem with multiple centers (M-CARP) the objective is to find routes starting from the given depots or centers such that each required arc is served, capacity (and usually additional) constraints are satisfied and total travel cost is minimized. In this paper we consider a heuristic transformation of the M-CARP into a multiple center capacitated minimum spanning tree problem with arc constraints, that we call arc-constrained CMST. An algorithm for determining initial feasible solutions as well as an improvement procedure for this problem are de- scribed and the ‘‘re-translation’’ of CMST solutions into the CARP context is explained. It is shown that the objective function value of the obtained CARP solution is easily derived from the respective value of the corresponding heuristic CMST solution. Furthermore, the possibility of including side constraints and the consideration of additional objective functions is discussed. Computations on real-world benchmark problems compare the results of the tabu search and simulated annealing metastrategies embedded in the improvement procedure. Ó 2000 Elsevier Science B.V. All rights reserved. Keywords: Arc-routing; Capacitated minimum spanning tree problem; Tabu search 1. Introduction In this paper we consider the capacitated arc routing problem (CARP) which belongs to an important class of vehicle routing problems with a great variety of real-world applications. In general, the CARP can be characterized as follows: A set of customers has to be served by a fleet of vehicles operating from one or more depots. Each vehicle starts and ends its route at the depot it is assigned to. Furthermore, it has given capacities with re- spect to time (i.e. a maximal allowed time dura- tion) and quantity (e.g., a maximal allowed capacity for satisfiable demand). Additional side constraints may exist, e.g., restricting the assign- ment of customers to vehicles. The objective is to find routes for the vehicles where each route sat- European Journal of Operational Research 124 (2000) 360–376 www.elsevier.com/locate/dsw * Corresponding author. Fax: +49-531-391-8144. E-mail address: [email protected] (S. Voß). 0377-2217/00/$ - see front matter Ó 2000 Elsevier Science B.V. All rights reserved. PII: S 0 3 7 7 - 2 2 1 7 ( 9 9 ) 0 0 1 7 0 - 8

Upload: anita-amberg

Post on 04-Jul-2016

213 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

Theory and Methodology

Multiple center capacitated arc routing problems: A tabu searchalgorithm using capacitated trees

Anita Amberg a, Wolfgang Domschke a, Stefan Voû b,*

a Technische Universit�at Darmstadt, Fachgebiet Operations Research, Hochschulstraûe 1, D-64289 Darmstadt, Germanyb Technische Universit�at Braunschweig, Abteilung Allgemeine Betriebswirtschaftslehre, Wirtschaftsinformatik und

Informationsmanagement, Abt-Jerusalem-Straûe 7, D-38106 Braunschweig, Germany

Received 1 October 1996; accepted 1 March 1999

Abstract

In the capacitated arc routing problem with multiple centers (M-CARP) the objective is to ®nd routes starting from

the given depots or centers such that each required arc is served, capacity (and usually additional) constraints are

satis®ed and total travel cost is minimized. In this paper we consider a heuristic transformation of the M-CARP into a

multiple center capacitated minimum spanning tree problem with arc constraints, that we call arc-constrained CMST.

An algorithm for determining initial feasible solutions as well as an improvement procedure for this problem are de-

scribed and the ``re-translation'' of CMST solutions into the CARP context is explained. It is shown that the objective

function value of the obtained CARP solution is easily derived from the respective value of the corresponding heuristic

CMST solution. Furthermore, the possibility of including side constraints and the consideration of additional objective

functions is discussed. Computations on real-world benchmark problems compare the results of the tabu search and

simulated annealing metastrategies embedded in the improvement procedure. Ó 2000 Elsevier Science B.V. All rights

reserved.

Keywords: Arc-routing; Capacitated minimum spanning tree problem; Tabu search

1. Introduction

In this paper we consider the capacitated arcrouting problem (CARP) which belongs to animportant class of vehicle routing problems with agreat variety of real-world applications. In general,

the CARP can be characterized as follows: A set ofcustomers has to be served by a ¯eet of vehiclesoperating from one or more depots. Each vehiclestarts and ends its route at the depot it is assignedto. Furthermore, it has given capacities with re-spect to time (i.e. a maximal allowed time dura-tion) and quantity (e.g., a maximal allowedcapacity for satis®able demand). Additional sideconstraints may exist, e.g., restricting the assign-ment of customers to vehicles. The objective is to®nd routes for the vehicles where each route sat-

European Journal of Operational Research 124 (2000) 360±376www.elsevier.com/locate/dsw

* Corresponding author. Fax: +49-531-391-8144.

E-mail address: [email protected] (S. Voû).

0377-2217/00/$ - see front matter Ó 2000 Elsevier Science B.V. All rights reserved.

PII: S 0 3 7 7 - 2 2 1 7 ( 9 9 ) 0 0 1 7 0 - 8

Page 2: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

is®es the capacity constraints of the respectivevehicle, each customer is served, and all side con-straints are ful®lled such that the total trans-portation cost is minimized. Often, instead ofoptimizing transportation cost, the objective is tominimize transportation time or distance.

Customers, depots and streets may be repre-sented by a graph G� (V, A) with node set V andarc set A. Arc routing applications refer to prob-lems where the distribution or collection of goodsis bound up with traversing a distance such as maildelivery, snow removal and winter gritting, gar-bage disposal, street sweeping and police patrols.Thus, the customers are modelled as arcs or edges,whereas in node routing problems the customerscorrespond with the nodes as, e.g., in the travelingsalesman problem. The well-known Chinese post-man problem (CPP) is the basic arc routingproblem named after the Chinese scientist Mei-KoKwan (1962) who was the ®rst to publish on thisproblem. It may be used as a relaxation for ca-pacitated arc routing problems.

Though polynomial algorithms for the CPP inundirected or directed graphs are available (cf.Edmonds and Johnson (1973)) already the CPP inmixed graphs (containing directed arcs as well asundirected edges) with some nodes having odddegree is NP-hard as shown by Papadimitriou(1976). Introducing additional constraints even inundirected or directed graphs usually yields NP-hard problems such as the capacitated Chinesepostman problem, where the capacity of thepostman is restricted, or the rural postman prob-lem (RPP) where the set of required arcs (i.e. thosearcs which need serving) need not be connectedand has to be linked using non-required arcs. Foran excellent up-to-date review of arc routingproblems including an extensive treatment of theCARP see Assad and Golden (1995).

We distinguish the 1-CARP where all vehiclesare stationed in the same node (the depot or center)and have identical capacity constraints, and theM-CARP with vehicles starting from multiple de-pots and/or having di�erent capacity require-ments. The underlying graph of a CARP may bedirected, undirected or mixed, and the subgraph ofrequired arcs that need serving may be connectedbut need not be.

With respect to developing solution methods, itis important to note that capacitated arc routingproblems consist of two interdependent subprob-lems: The assignment problem which forms sub-sets or clusters of required arcs served by the samevehicle and the sequencing or routing problemwhich determines the sequence of serving the arcs.

For the 1-CARP a few so-called ``parallel'' al-gorithms exist which simultaneously consider thesesubproblems: the path-scanning algorithm ofGolden et al. (1983) and the construct and strikeheuristic of Christo®des (1973), both modi®ed byPearn (1989), the parallel-insert method of Cha-pleau et al. (1984), the augment-insert algorithm ofPearn (1991) and the augment and merge proce-dure of Golden and Wong (1981) which uses thesavings criterion of Clarke and Wright (1964).

Sequential algorithms either choose the assign-ment before computing the routes inside theformed subsets (cluster-®rst-route-second, CFRS)or construct a giant route that is broken into smallroutes (route-®rst-cluster-second, RFCS). CFRSmethods are more suitable for node routingproblems; some CFRS algorithms for arc routingproblems are described in Liebling (1970) andBodin (1975). The RFCS algorithm of Stern andDror (1979) designs a giant route as for the CPPand cuts it into small paths. The algorithms ofLiebman and Male (1974) for the 1-CARP, as wellas Geppert (1986) and Zhu (1989) for the M-CARP split the giant route into cycles and usesavings criteria for the recombination. Further-more, Benavent et al. (1990) apply the generalizedassignment problem for their heuristic within theCARP context.

The purpose of this paper is to investigate aroute-®rst-cluster-second algorithm for the M-CARP on undirected graphs where the clusteringphase uses the following two concepts. First, theproblem of ®nding the speci®c routes is modelledas a modi®ed version of the capacitated minimumspanning tree problem (CMST) and a heuristic isapplied to yield initial solutions. Second, somemetastrategies, namely simulated annealing andtabu search, will be applied to improve the treesolutions eventually leading to better routes. Sec-tion 2 describes the basic RFCS concept of thealgorithm including the treatment of additional

A. Amberg et al. / European Journal of Operational Research 124 (2000) 360±376 361

Page 3: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

side constraints, the algorithm is able to deal with.Furthermore, in this section we brie¯y introducethe metastrategies that we use and present amathematical formulation of the arc-constrainedCMST, which is used in our algorithm. Results ofapplications to a real-world problem dealing withthe routing of vehicles for winter gritting are pre-sented in Section 3, followed by some conclusions.

2. The route-®rst-cluster-second approach

In this section we describe a route-®rst-cluster-second approach for the M-CARP in undirectedgraphs. The serving vehicles may di�er with re-spect to the center or depot they are assigned to,with respect to demand capacity and a maximalallowed time duration or other serving capabilities.The vehicles have to cover the demand of thecustomers such that the total travel time is mini-mized. The customers are represented by edgeswhere each edge has a given travel time for servingor just traversing it. The basic principle of the al-gorithm is to compute a giant route ®rst (i.e. a tourthrough all edges of a given graph starting andending at the same node while relaxing the ca-pacity restrictions). Then this route or tour is di-vided into small cycles and a savings procedure isapplied to recombine these cycles to routes satis-fying the capacity constraints eventually usingadditional edges. The basic concept of this ap-proach has been described by Zhu (1989). Weadopt his idea while explicitly giving reference tothe well-known capacitated minimum spanningtree problem which has not yet been done in hiswork. As an additional feature not considered inZhu (1989) we apply di�erent tabu search strate-gies to solve subproblems. More speci®cally, ourapproach is outlined by means of the followingsteps, which will be discussed subsequently:· First a giant route corresponding to a minimal

Euler graph is computed.· The CARP is transformed into an arc-con-

strained capacitated minimum spanning treeproblem. Given a spanning tree rooted at a nodex, the components of the forest derived by elim-inating x are refered to as subtrees o� the rootnode x. The capacitated minimum spanning tree

problem (CMST) is to ®nd a minimum cost treespanning all nodes of a given graph such that allsubtrees satisfy a prespeci®ed capacity con-straint, limiting the number of nodes in the re-spective subgraphs. Then the objective of theCMST is to ®nd a minimal spanning tree rootedat x such that the number of nodes in any sub-tree o� the root is at most a given (integer) ca-pacity. (For references on the CMST see, e.g.,Amberg et al. (1996), Gavish (1983), Gouveia(1995), Gouveia and Martins (1996), and Hall(1996). In the more general non-unit demandcase of the CMST we are given non-negativenode weigths and the sum of the node weightsin any subtree o� the root is at most a given ca-pacity).In the so-called arc-constrained CMST weconsider a second type of capacity constraint.(The mathematical formulation given in Sec-tion 2.3 corresponds to a directed CMSTformulation thus refering to arcs instead ofedges, although the example given below is un-directed).

· A heuristic solution for the arc-constrainedCMST is computed. This heuristic is a two-stageprocedure which starts by ®nding an initial fea-sible solution and then tries to improve it bymeans of a local search procedure applying re-cent metastrategies as simulated annealing andtabu search.

· From this CMST solution a respective CARPsolution is derived.

· A route optimization procedure changes the ob-tained CARP solution marginally and, eventual-ly, reduces the total time used by additionalincluded edges.

· As will be pointed out in Section 2.2, there maybe di�erent transformations of the CARP intothe CMST. Thus, the transformation need notbe unique and various transformations can betried. Then the best of the obtained CARP solu-tions is chosen.Though in general applied to an undirected

graph G� (V, E), problems in mixed graphs with alow share of directed arcs can be treated, too,where additional side constraints take care of thedirection of the directed arcs. The subgraph ofrequired edges need not be connected. Each edge

362 A. Amberg et al. / European Journal of Operational Research 124 (2000) 360±376

Page 4: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

(i, j) has two weights, namely a demand dij and atravel time tij. The time for traversing and at thesame time serving edge (i, j) is assumed to be equalto tij, but the algorithm could be easily modi®ed todeal with di�erent values (i.e. taking into accountadditional time necessary to serve edge (i, j)).Correspondingly, each of the M vehicles, say ve-hicle m, has demand capacity Dm and a maximalallowed time duration Tm. Vehicle m is stationed indepot DEPm, where it starts and ends its route Rm.(Without loss of generality we may assumeDEPm�m, eventually making su�cient copies ofdepot nodes with more than one vehicle and re-numbering the nodes.) The objective is to minimizethe total time of the additional edges that are addedto form the routes. Two additional objective func-tions balancing the utilization of the vehicles andaccounting for customer priority can be included.

The following subsections show the details ofthe algorithm. For illustration, an example is in-troduced and used throughout the whole section.Finally, the inclusion of side constraints and ob-jective functions is considered and some remarkson the solution quality are given.

2.1. Computing a giant route

To obtain a giant route in the ®rst step of theRFCS approach a minimal Euler graph is com-puted. A graph is called an Euler graph when aroute exists that covers each edge exactly once.Otherwise, a graph may be augmented by addi-tional edges to become an Euler graph. A minimalEuler graph is an Euler graph such that the sum ofthe edge weights of all augmented edges to derive

an Euler graph is minimal. To derive an Eulergraph either existing edges may be duplicated oredges from a di�erent set of (e.g., non-required)edges may be added. With respect to the CARP,an edge is called required if it needs to be servedand non-required, otherwise.

To compute a minimal Euler graph the algo-rithm uses a modi®ed version of the polynomialCPP matching algorithm of Edmonds and John-son (1973) which allows the consideration of non-required edges (see e.g., P�utz, 1979). The givenconnected, undirected graph G � �V ;E; t� withnode set V, edge set E and edge length tij for eachedge �i; j� 2 E is augmented by the set of so-calledEuler edges to an Euler graph. (If G is not con-nected, it is augmented to a graph where everyedge has an even degree, possibly consisting ofseveral components each being an Euler graph.For simplicity we will use the terms Euler graphand Euler edges throughout the paper in the lattercase, too.) The total time of this optimal set ofEuler edges is a lower bound for the total time ofthe extra edges that are needed in a feasible CARPsolution. Note that in the algorithm of Zhu (1989)as well as in other RFCS algorithms for the CARPsolutions are obtained that always contain the setof Euler edges. This is a possible reason for sub-optimality in these approaches because there existproblem instances such that not all Euler edgesneed to be part of an optimal solution, which maybe seen from an example below.

Fig. 1 shows the undirected graph of a CARPexample with six nodes 1; 2; . . . ; 6. Node 1 is thedepot of vehicle 1 with demand capacity and amaximal allowed time duration �D1; T1� � �14; 20�,and node 2 is the depot of vehicle 2 with demand

Fig. 1. Example.

A. Amberg et al. / European Journal of Operational Research 124 (2000) 360±376 363

Page 5: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

capacity and a maximal allowed time duration�D2; T2� � �16; 16�. Each edge �i; j� 2 A is given assolid line and has a label �dij; tij� where dij is thedemand of �i; j� and tij is the travel time for tra-versing �i; j�. G is connected but nodes 2 and 3have odd degree. As can be easily seen, adding acopy of edge (2, 3) augments the graph to an Eulergraph with minimal additional time of 3. In Fig. 1this additional edge is drawn as a dotted line. Itsweights are d23� 0 because serving is not requiredand t23� 3 because the time for traversing an edgeis assumed to be independent from serving theedge. The obtained Euler graph has a total de-mand of 29 and a total travel time of 24. Thus,neither vehicle 1 nor vehicle 2 alone can performthe giant Euler tour without violating their ca-pacity constraints.

As mentioned above Euler edges need not bepart of an optimal solution. Assume �D1; T1� ��18; 21� and �D2; T2� � �11; 7� in the example ofFig. 1. Then, in an optimal CARP solution, edges(1, 2) and (1, 3) with cost 4 are used instead of edge(2, 3) with cost 3.

2.2. The transformation of the capacitated arcrouting problem

In the next step the CARP is transformed intoan arc-constrained CMST problem with an undi-rected or symmetric directed graph G0 ��V 0;A0; d 0; t0�. First, the Euler graph is partitionedinto a set of small sub-cycles of the giant route.Each of these cycles forms a node in V 0 and hasdemand and time weights corresponding to thesum of demand and time weights of the edges thatare part of the respective cycle. Furthermore, eachvehicle corresponds to a center node (or root nodein the CMST terminology) with respective demandcapacity and maximal allowed time duration. Thatis, in order to guarantee feasibility two di�erentcapacity constraints have to be observed with re-spect to the subtrees. Therefore, the arc-con-strained CMST may be seen as a generalization ofthe unit demand CMST as well as the generaldemand CMST.

To summarize, we derive a multiple center arc-constrained CMST di�erent from the original

CMST. Here, we have at most M root nodes(corresponding to depots) each with exactly asmany subtrees as vehicles are stationed in the re-spective depot. Furthermore, there exists a capac-ity constraint on the sum of node and arc weightsof the respective subtree (see Section 2.3).

Thus, in our example the graph for the arc-constrained CMST contains two root nodes: Node10 is the ®rst center with capacity �D10 ; T10 � ��14; 20� and node 20 is the second center with ca-pacity �D20 ; T20 � � �16; 16�. The edge set of theEuler graph is split e.g., into three cycles formingthree nodes 30; 40 and 50: Node 30 corresponds tothe required edges (1, 2) and (1, 3) and the Euleredge (2, 3). The capacity requirement of node 30 is�d30 ; t30 � � �7; 7� � �5; 2� � �2; 2� � �0; 3�. Node 40

corresponds to the required edges (2, 3), (2, 5) and(3, 5) with a capacity requirement of �d40 ; t40 � ��15; 10�. Node 50 corresponds to (4, 5), (4, 6) and(5, 6) with �d50 ; t50 � � (7, 7).

Two other partitionings of the Euler graphcould be derived: First the Euler edge and itsoriginal counterpart can be exchanged, both beingparallel edges by de®nition. Second, these twoedges between nodes 2 and 3 could form one cycleand edges (1, 2), (2, 5), (5, 3) and (3, 1) would formanother. Provided that the partitionings are notunique, which is generally the case, in our algo-rithm the partitionings are chosen randomly.

The nodes of the CMST graph consist of cycleswithin the original augmented graph, i.e., it iscalled a cycle node graph. The arcs of the set A0

represent cycles, too: An arc between two nodes i0

and j0 consists of a cycle of additional edges thatconnects the corresponding cycles of G and hasminimal length (with respect to time). The demandweights of these arcs are zero because they consistof additional, i.e. non-required edges. If the cyclesof two CMST nodes i0 and j0 have a common(CARP) node, within the original graph no con-necting cycle is needed and t0i0j0 � 0. If no suchcommon node exists, a connection between thetwo nearest neighbors of the two cycles is needed:for instance, with respect to the CMST center node10 and the non-center node 50 the shortest con-necting cycle in G is given by the edges (1, 2), (2, 5),(5, 2) and (2, 1) and has a total travel time of 10.The remaining arcs and their weights are deter-

364 A. Amberg et al. / European Journal of Operational Research 124 (2000) 360±376

Page 6: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

mined in a similar way. Fig. 2 shows the resultingCMST graph. (Note that the graph is symmetricrepresenting two arcs with the same weights forboth possible directions.) The graph is completeapart from connections to (from) the center nodes.No root node is directly connected with anotherroot because no route, and thus no subtree of theCMST, can include two centers.

In the CMST graph G0 each node and each arcrepresents a cycle consisting of edges of the origi-nal graph G. Thus, each tree of the CMST can be``translated'' into a route in the CARP. If the treeis feasible for the CMST, the route is feasible forthe CARP.

Relaxing the capacity constraint of the CMSTresults in the problem of determining a minimumcost spanning forest consisting of exactly twocomponents including the center nodes 10 and 20,respectively, which can be obtained in polynomialtime using a modi®ed version of the algorithm ofKruskal (1956) or Prim-Dijkstra (cf. Prim, 1957;Dijkstra, 1959). Fig. 3 shows a (uncapacitated)minimum spanning tree (MST) of G0. It should benoted that the determination of a minimumcost spanning forest consisting of exactly twocomponents including the center nodes 10 and 20,respectively, does not satisfy the capacity require-ments in our case. (A minimum spanning forestwith zero cost consisting of exactly two compo-nents could be derived from the MST in Fig. 3,e.g., by eliminating edge �20; 30�). That is, an

explicit consideration of capacity constraints isinevitable.

Fig. 4(a) shows a feasible solution for theCMST. The subtree of center 10 consists of arcs�10; 30� and �30; 50�; arc �20; 40� forms the secondsubtree. The objective function value is 6 resultingfrom arc �30; 50� with weight t03050 � 6. From theCMST solution a CARP solution can be derivedwhere the total time of additional edges is 9 re-sulting from a cost of 3 for the Euler graph and 6for the CMST. Fig. 4(b) shows the two subtrees ofthe CMST solution translated into the underlyingCARP nodes and edges. Additional edges aredrawn as dotted lines. For each subtree a feasibleCARP route can be easily constructed.

In general, each feasible solution of the CMSTresults in a feasible CARP solution. The sum ofthe arc weights of the CMST solution plus the sumof the time weights of the Euler edges equals thesum of the time weights of the additional edges inthe CARP solution.

2.3. The multiple center arc-constrained capacitatedminimum spanning tree ± a mathematical formula-tion

Before presenting a heuristic for the CMST inthe next section, we present a mixed integer linearprogramming ¯ow formulation for the multiplecenter CMST with non-equal node weights. Cor-responding formulations for the one center CMSTwith equal node weights can be found in Gouveia(1995) and Gavish (1983). For related consider-ations with respect to a multiple center CMST see

Fig. 2. The CMST graph G0.

Fig. 3. A minimum spanning tree of G0.

A. Amberg et al. / European Journal of Operational Research 124 (2000) 360±376 365

Page 7: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

Gouveia and Lopes (1995), who de®ne theirproblem in the context of telecommunicationsapplications.

First, we consider only one capacity constraintconcerning demand. Let G � �V ;A; d; t� be thegiven graph with node set V � VM [ VN , consistingof the set of center nodes VM � f1; . . . ;Mg and theset of non-center nodes VN � fM � 1; . . . ; ng, arcset A, demand requirement dh for each non-centernode h 2 VN and travel time tij for each arc�i; j� 2 A. (Note that in the arc-constrained CMSTthe demand requirement dh is a node weight. If theCMST is derived from a CARP network the de-mand requirement of a node is computed as thesum of demand requirements of the edges includedin the underlying CARP cycle.) Let the demandcapacity of each center node m 2 VM be Dm. De®nexij � 1, if arc �i; j� is included in the solution, andxij � 0, otherwise. Furthermore, yij denotes the¯ow on arc �i; j� for i � 1; . . . ; n and j � M�1; . . . ; n. Ensure variables xij and yij with �i; j� 62 Ato be equal to zero by assigning prohibitively largeweights to the respective arcs. The following single¯ow formulation of the directed multiple centerCMST gives a forest of M directed capacitated treeswith the center nodes 1; . . . ;M being the roots:

Minimize Z �Xn

i�1

Xn

j�M�1

tij � xij �1�

subject to

Xn

h�1

Xhi � 1; i � M � 1; . . . ; n; �2�

Xn

h�1

yhi ÿXn

j�M�1

yij � di; i � M � 1; . . . ; n; �3�

dj � xij 6 yij 6 �Dmax ÿ di� � xij;

i � M � 1; . . . ; n; and

j � M � 1; . . . ; n; �i; j� 2 A;

Dmax � max Dmjm � 1; . . . ;Mf g; �4a�

di � xmi 6 ymi; m � 1; . . . ;M and

i � M � 1; . . . ; n; �4b�

Xn

i�M�1

ymi 6 Dm; m � 1; . . . ;M ; �4c�

xij 2 f0; 1g; yij P 0; i � 1; . . . ; n and

j � M � 1; . . . ; n; �i; j� 2 A: �5�

Equalities (2) ensure that exactly one arc isreaching each non-center node. The ¯ow conser-vation constraints (3) in common with the couplingconstraints (4) attain the satisfaction of the capacityconstraints and prevent cycles, thus guaranteeing aforest spanning all nodes. Contrary to formulationsfor the one center CMST, (1)±(5) allows for morethan one central arc for each subtree. With (4c) thetotal ¯ow of these central arcs is forced not to ex-ceed the demand capacity of the respective center.

For the arc-constrained CMST we additionallyintroduce time weights th for each non-center nodeh as well as a maximal allowed time duration Tm

for each center node m and claim that the total

Fig. 4. (a) A feasible CMST for G0; (b) The respective feasible CARP solution.

366 A. Amberg et al. / European Journal of Operational Research 124 (2000) 360±376

Page 8: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

time of each subtree m, i.e. the sum of time weightsof the included nodes and arcs, must not exceed thegiven time capacity Tm. The above formulation issupplemented by time ¯ow variables zij for all arcs�i; j� analogous to the ¯ow variables yij and con-straints (6)±(8) corresponding to (3)±(5):Xn

h�1

zhi ÿXn

j�M�1

zij �Xn

h�M�1

thi � xhi � ti;

i � M � 1; . . . ; n; �6�

�tij � tj� � xij6 zij6 �Tmax ÿ ti� � xij;

i � M � 1; . . . ; n and j � M � 1; . . . ; n; �i; j� 2 A;

Tmax � maxfTmj m � 1; . . . ;Mg;�7a�

�tmi � ti� � xmi6 zmiTmXmi; m � 1; . . . ;M and

i � M � 1; . . . ; n; �7b�

Xn

i�M�1

zmi6 Tm; m � 1; . . . ;M ; �7c�

zij P 0; i � 1; . . . ; n and j � M � 1; . . . ; n;

�i; j� 2 A: �8�The multiple center arc-constrained CMST now

is given by (1)±(8). The time ¯ow z describes a ¯owof time capacity starting from the respective centernode. The time ¯ow variable zij contains the timecapacity for arc �i; j�, node j and all arcs and nodesthat are part of the remaining subtree beginning innode j. If in a subtree several arcs �i; j� part fromthe same node i, constraints (6) in common with(7) guarantee that the time capacity ¯ow is splitaccording to the capacity requirements of the re-spective succeeding subtrees. It should be notedthat constraints (6) are similar to duration con-straints in a routing model presented in Gavishand Graves (1979)

2.4. A heuristic for the arc-constrained capacitatedminimum spanning tree

The CMST with one center and one capacityconstraint refering only to node weights has been

shown to be NP-hard by Papadimitriou (1978).Thus, the more general arc-constrained CMST isNP-hard, too. In such cases it is common practiceto develop heuristic solution procedures. Further-more, the argument for developing heuristics isstrengthened due to the fact that using the CMSTas a modeling approach within the CARP is heu-ristic by construction. A savings procedure basedon the well-known algorithm of Esau and Wil-liams (1966) produces an initial feasible solution.Then an exchange procedure using the metastrat-egies simulated annealing and tabu search is ap-plied to improve the result.

A savings procedure for the arc-constrainedCMST: For the arc-constrained CMST withmultiple depots or centers a modi®cation of thealgorithm of Esau and Williams (1966) is applied.The modi®cation concerns two points: ®rst, thestarting solution, and second, the way feasibility isdetermined with respect to the maximum allowedtime duration and the demand capacity includingboth edge and node weights. The algorithm ofEsau and Williams uses the so-called star tree asinitialization, i.e., the spanning tree where eachnode is directly connected to the center node. Inthe arc-constrained CMST with multiple centers itis not known to which center a node is assigned to.Thus the savings procedure for the arc-constrainedCMST introduces an arti®cial node X to the givenCMST graph G0 � �V 0;A0�. Each non-center nodei0 2 V 0 is connected to X with an arti®cial arc�i0;X �. The time weight of this arc is computed asthe sum of time weights of all arcs leading fromnode i0 to all center nodes. In our example the timeweight of arc �50;X � is t50X � t5010 � t5020 � 10 �6 � 16. We obtain jV 0j ÿM non-central compo-nents Ci0 � �Vi0 ;Ai0 � � �fi0;Xg; f�i0;X �g�. Also eachcenter de®nes a single component. Thus we haveM central components Cm � �Vm;Am� � �fmg;/�.The union of these components may be viewed asan arti®cial solution, which is of course infeasiblefor the CMST. It is changed stepwise by a savingsalgorithm: in each iteration two components arejoined, i.e., one of the components is cut o� thearti®cial node X and joined to the other compo-nent by the least cost edge (with respect to time). Ifboth components were connected to X the arti®cialedge with maximum cost is deleted. The savings

A. Amberg et al. / European Journal of Operational Research 124 (2000) 360±376 367

Page 9: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

are computed as the cost of the deleted arc minusthe cost of the arc added to join the two compo-nents. In each iteration the joining which yields thehighest savings is chosen.

The components that are formed have to ful®llthe capacity requirements. If a non-center com-ponent (i.e. a component which does not containany center node) is joined with a central compo-nent feasibility is easily checked. But if two non-center components are joined there is no centernode and thus no capacity given. To avoid non-center components that are too big to be feasiblyjoined with a center each non-center componentwith a capacity requirement that exceeds half ofthe maximal free capacity of any center is imme-diately joined to a center component. After n jo-inings a feasible CMST solution is found.

A node exchange improvement procedure for thearc-constrained CMST: To improve the CMSTsolution we propose a node exchange procedurewhich transforms one feasible solution into aneighbor solution by changing the assignment ofthe nodes to subtrees. Such a transformation iscalled move. Subsequently a certain number ofmoves is executed thus trying to ®nd a better ± oreven an optimal ± solution. A metastrategy, liketabu search or simulated annealing as a guidingprocess decides which of the possible moves ischosen and forwards its decision to the applica-tion process which then executes the chosen moveand, in addition, provides some information forthe guiding process (depending on the require-ments of the respective metastrategy) like the re-computed set of possible moves. What is meantto be a move depends on problem structure. In

our algorithm we consider so-called shift moves.A shift move chooses one node and shifts it fromits actual component to another one. Fig. 5(a)shows two subtrees of a CMST. Now supposenode 40 is chosen and moved from subtree 10

(which includes center node 10) to subtree 20. Theresulting neighbor solution is given in Fig. 5(b). Itcan be seen that after changing the assignment ofnodes the recomputation of minimum spanningtrees inside the changed components becomesnecessary.

Contrary to the above move de®nition we maydescribe an approach based on edge exchange. Amove is de®ned as dropping one edge of the so-lution tree and adding another one. The gain of amove is computed as the respective cost di�erence.It is worth noting that the resulting subtrees neednot be minimum spanning trees (de®ned on thecorresponding subset of nodes), and although areoptimization procedure is easy to implement,during the tabu search process the e�ect of a moveis not given by the local cost changes implied by it.Thus, the search may favour a ``wrong'' direction.That is why we prefer de®ning a node exchange asa move (cf. Amberg et al., 1996).

Only feasible moves leading again to feasiblesolutions are allowed, but the cost of a new solu-tion may exceed the cost of the previous one:moves leading to a cost increase are allowed inorder to overcome local optima. Which of theavailable feasible moves should be chosen totransform the current solution? The answer to thisquestion is not clear and various approaches maylead to good solutions. Zhu (1989) uses the meta-strategy simulated annealing as a guiding process;

Fig. 5. (a) A CMST solution; (b) A neighbor solution.

368 A. Amberg et al. / European Journal of Operational Research 124 (2000) 360±376

Page 10: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

our algorithm alternatively uses tabu search. Theprocedure stops after a given time limit.

2.5. Simulated annealing and tabu search

Simulated annealing randomly chooses one ofthe feasible moves and computes its change in cost(in our problem: travel time). If the change is acost decrease the move is accepted. Otherwise, thenew solution is accepted with a certain probability.The probability function usually is logarithmicand, in order to favour good solutions, decreaseswith larger cost increases. It decreases over timethus intensifying the search in the current area ofthe solution space as the computation time in-creases. Nevertheless, a parameter t called starttemperature has to be speci®ed to adapt theprobability function to the actual problem. If thenew solution is rejected the current solution re-mains unchanged in this step. The next iterationtries again to alter the same (current) solution. Formore details see, e.g., Aarts and Korst (1989).Simulated annealing does not require any addi-tional information.

Tabu search examines all feasible moves. Thebest move ± which leads to the highest cost de-crease or the lowest cost increase, respectively ± ischosen and executed. Now suppose that a localoptimum is reached. Without further instructionsthe algorithm could permanently alternate be-tween this local optimum and its best neighbor.For that reason a so-called tabu list is created: toprevent an already explored solution from beingexamined again, all moves that (could) lead tosuch a solution are stored in the tabu list. Deter-mining which moves have to be set tabu is derivedfrom exploring the running list, which contains allperformed moves in their sequence of execution.Both lists have to be updated after each iteration.It is worth noting that one need not store the at-tributes of the explored solutions, rather only theattributes of the moves, which usually requires lessspace.

In the literature there are several distinct waysof deriving the tabu list. They are referred to asstatic tabu search (STS), reverse eliminationmethod (REM) and cancellation sequence method

(CSM) (cf. Glover, 1989, 1990). Some parametershave to be speci®ed to adopt the methods to aspeci®c problem and problem instances (especiallyproblem size and scaling of cost). To be morespeci®c and to make this paper self-containedsome details of our tabu search implementationsare given.

STS is a straightforward approach requiring aparameter s called tabu list length. STS disallowsperforming the complements of the s most recentmoves, where the complement of a move is thatmove which cancels the e�ect of the consideredone. That is, the tabu list (or tabu bu�er) consistsof a (complementary) copy of the s most recentlyperformed moves. Older moves are disregarded.The tabu status derived from the s most recentmoves forces the procedure to perform at least smoves before the explored solution may be reex-plored. Obviously, this approach may disallowmore moves than necessary to avoid returning toan already visited solution. This encourageskeeping s as small as possible. However, if s is toosmall the procedure may return to a local optimumthat was just left, i.e., cycling appears.

The REM and the CSM are based on cancel-lation sequences. In general, any connected part ofthe running list is a cancellation sequence (CS): thesequence of moves between two solutions. It maycontain pairs of complementary moves. A residualCS (RCS) results from a CS by cancelling (i.e.eliminating) some of its moves. REM and CSMdi�er in the way they carry out these cancellationsbut they are the same in their fundamental prin-ciple: Any move that would cancel an RCS is settabu. REM and CSM compute and maintainRCSs in di�erent ways.

In each iteration REM recomputes all RCSsbetween the current and any previous solution.Each iteration starts at the current solution (withthe tabu list and the RCS being empty) and thenstep by step traces in reverse direction through therunning list. At each step an RCS between thecurrent solution and the actually considered oldersolution is computed. Each time the RCS reducesto one move the respective complement is set tabu.It stays tabu only for the iteration immediatelyfollowing. The parameter r is the maximal lengthof the running list and gives the maximum number

A. Amberg et al. / European Journal of Operational Research 124 (2000) 360±376 369

Page 11: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

of iterations considered by the REM. If the run-ning list is considered in its full length each movethat should be tabu is found. Also each move thatis set tabu would in fact lead to an already ex-plored solution. Therefore, no better (or even op-timal) solution can be ``forgotten'' because ofbeing tabu without need.

The CSM embodies the concepts of the staticmethod and the REM. Moves are set tabu in twoways: The static tabu process uses a tabu bu�er c3

which is the length of the tabu bu�er and at thesame time the duration of the tabu status of thestatic tabu process. It corresponds to the tabu listlength s of STS. The value c3� 1 prevents theimmediate return to the just visited solution.Higher values are reasonable, too, because themain CSM tabu process might not ®nd everymove that should be tabu. Usually c3 is smallerthan s because of this additional way of settingtabu. The main tabu process like REM disallowsany move that would cancel an RCS. Contrary toREM, the RCSs are stored and updated in eachiteration: After the execution of an actual moveCSM checks whether the complement of this moveis part of the running list. (Parameter c1 is themaximal length of the running list and corre-sponds to parameter r of the REM.) If this is thecase then two steps follow: First, a new RCS be-tween these complementary moves is created andstored in an extra list already containing elderRCSs. Second, CSM checks whether the comple-ment of this move is contained in any older RCS.If yes, it is cancelled from the respective RCS.Whenever this cancellation reduces the RCS toone move, say Y, to prevent the RCS from beingcompletely cancelled, the complement of Y is de-®ned tabu for the next c2 iterations. c2 is the du-ration of the tabu status of the main tabu process.Contrary to the REM this duration is usuallymore than one iteration. This is done because aftersetting the complement of Y tabu the CSM elim-inates the respective so-called one-move RCS Yfrom further consideration.

In Amberg et al. (1996) we give a more detaileddescription of the tabu search methods with re-spect to the (unit weight) CMST. We restrictourselves to consideration of these tabu searchimplementations, as they seem to perform quite

well on a number of well-known benchmark unitweight instances from the literature, as con®rmedby Gouveia and Martins (1996) and Hall (1996).According to Gouveia and Martins (1996) they areeven able to outperform other known heuristics ofgood quality such as second order heuristics (seee.g., Kershenbaum et al., 1980) and also themethod of Sharaiha et al. (1997) which is a tabusearch approach, too.

2.6. A route optimization procedure

After applying the improvement procedure theobtained CMST solution is transformed into aCARP solution as shown in Section 2.2. TheCARP solution is feasible but it may contain ad-ditional edges that are not needed to form feasibleroutes and could be substituted by short cuts. Thisis done by successively checking each route: ®rstwe try to exchange required edges of the consid-ered route with corresponding additional (andthus non-required) edges of other routes. Hereby,feasibility of the routes has to be taken into ac-count. Now inside this route all non-requirededges are deleted. The remaining subset of re-quired edges of this route has to be reconnectedwith minimal additional time. If the subset isconnected, the resulting problem is a CPP. Oth-erwise, it is a rural postman problem. The RFCSalgorithm does a kind of local enumeration: foreach pair of cycles that were connected with ad-ditional edges each possible connection of the in-cluded required arcs that again leads to a cycle istried and the best one is chosen.

With this reoptimization procedure it is clearthat the improvement in the CARP does not ex-actly correspond to the attained CMST improve-ment.

2.7. Side constraints and additional objective func-tions

In the algorithm some side constraints can beconsidered:· Edges can be ®xed to a speci®c center. This can

be necessary if, e.g., a narrow street needs to be

370 A. Amberg et al. / European Journal of Operational Research 124 (2000) 360±376

Page 12: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

served by a special vehicle, or a vehicle mustpass a load station. By this means, also a ®ctive(``dummy'') path can be ®xed if the start andend node of a route are di�erent. With the ®xingof an edge also the CMST cycle node containingthis edge is ®xed to the respective center.

· Cycles in the CARP graph can be made ``byhand'' and ®xed. Each partitioning then usesthe speci®ed cycle(s). Directed arcs can be in-cluded in ``feasible'' cycles, such that each cyclecan be traversed in one direction and does notcontain arcs with contrary direction. Addition-ally, such cycles can be ®xed to a speci®c center.

· Time windows can be included in a basic formwhere, e.g., each route can be divided into anearlier, high priority part and a second, low pri-ority part or by interpreting the vehicles as timeperiods and ®xing edges with correspondingtime limits.

Following Zhu (1989) we consider two additionalobjective functions:

The ®rst objective is to balance the capacityutilization, especially of demand capacity. It issupposed that an unjust assignment of work maylead to discontent among the sta�. The averageutilization share AU is given as the sum of demandweights of all edges divided by the sum of demandcapacity of all vehicles:

AU �X�i;j�2A

dij

XM

m�1

Dm

,:

The utilization share Um of vehicle m is the sumof demand weights of all edges that are served byvehicle m in route Rm divided by the capacity ofvehicle m:

Um �X�i;j�2Rm

dij

,Dm:

The objective is to minimize the utilization devia-tion DU

DU ����������������������������������������1

M�XM

m�1

�Um ÿ AU�2vuut :

With a weight factor f 2 �0; 1� the minimizationof DU can be embedded in the objective function

of the CARP which becomes: minimize f á (totaltime of additional edges) + (1 ÿ f ) á DU. Thisobjective function can be transformed into theCMST context and thus used in the improvementprocedure.

The second objective is to serve the edges ac-cording to their priority. Assume the existence ofseveral priority classes with large priority weightspij for high priority edges �i; j� and small weightsfor low priority edges. Let stij be the time when theserving of edge �i; j� is started. The objective is tominimize the priority function PF �P�i;j�2A pij �stij:

For the computation of the start times stij theroutes Rm of the M vehicles specifying the se-quence of edges are needed. Therefore, it isimpossible to integrate the minimization of PFinto the CMST problem where only the assign-ment of edges to vehicles but no sequencing isdone. Thus, the minimization of PF is a sub-ordinate objective being part only of the routeoptimization procedure. The algorithm of Zhudoes not allow for raising the total time of ad-ditional arcs or the utilization deviation in orderto lower PF.

2.8. Solution quality

As we have seen each feasible CMST solutioncorresponds to a feasible CARP solution. How-ever, it is not assured that each feasible solution ofthe CARP can be obtained from a CMST solution.This is due to the fact that a CMST cycle node iscompletely assigned to one center node. But ca-pacity constraints could force the splitting of thecycle to obtain the optimal solution. Thus, it isreasonable to build cycles as small as possible.Also, each partitioning should be tried. There arefour reasons for the potential suboptimality of theCARP solution:· The Euler arcs that are ®xed are not part of an

optimal solution.· The partitioning of the Euler graph into cycles is

not optimal.· The CARP optimum needs the splitting of a cy-

cle.· The solution of the CMST is suboptimal.

A. Amberg et al. / European Journal of Operational Research 124 (2000) 360±376 371

Page 13: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

3. Real-world application ± computational results

In this section we consider two real-worldbenchmark problems dealing with planning routesfor winter gritting in the areas of K�onigstein andWennigsen. Furthermore, some comments onbenchmark instances from the literature are given.Our algorithm is implemented in FORTRAN andwas run on a 486 processor with coprocesssor with66 MHz. Within the solution approach for theCMST we used the metastrategies simulated an-nealing and tabu search with their respective pa-rameters:

For CSM and REM we assured the length ofthe active tabu list c1 and the length of the runninglist r to be greater than the iteration number inorder to prevent the loss of information by cuttingthese lists (i.e. all attributes representing yet per-formed moves are stored in a respective way, seeAmberg et al. (1996) for details).

For each problem several partitionings of theEuler graph into a cycle node graph are derived.We refer to them as CMST partitionings or CMSTinstances. For each CMST instance, if a feasiblesolution is found, also a CARP solution is derived.

Tables 1 and 2 give the results of our compu-tations for both problems. The ®rst row gives theresult of our algorithm without applying any im-provement procedure. In the subsequent rows themetastrategies with their parameter values are in-vestigated. The notation of the table is as follows:

Best CARP solution: gives the length of addi-tional edges (including Euler edges) of the bestCARP solution found with the respective method(considering all investigated CMST instances).

Number of best CMST solutions: gives thenumber of times the best objective function valueof any CMST instance is found (as a referencesolution we take the overall best CMST solutionfound by any of the methods considered).

Average CMST improvement: gives the averageimprovement (in %) for the objective functionvalues of the CMST instances obtained with therespective method.

Average time of last improvement: gives thenecessary average CPU time used by any meta-strategy to ®nd the best CMST solution (over thecomplete set of CMST instances) within the giventime limit.

Average iteration number: gives the averagenumber of iterations performed within the giventime limit (again over the complete set of CMSTinstances).

The ®rst problem considers the area ofK�onigstein (for more details see Zhu (1989) orDurth and Hanke (1984)). Six vehicles are sta-tioned in the same depot node but have di�erenttime and demand capacities. One vehicle is ®xed topass a load station and obtains higher demandcapacity. One edge represents a narrow street andis ®xed to a vehicle which is small enough to serveit. The CARP graph consists of 65 nodes and 94edges. For the Euler graph 30 Euler edges with atotal length of 59.5 km are added. Travel time isassumed to be proportional to distance and thusthe objective is to minimize the total distance ofadditional edges. Due to capacity constraints atleast ®ve routes are needed. Thus, in a feasiblesolution ten edges have to be incident with thedepot node. This raises the lower bound for thelength of additional edges in a feasible solutionfrom 59.5 to 68.5 km (cf. Golden and Wong,1981). (A careful consideration of the given CARPinstance reveals that the lower bound may beraised to 76.5 km.) As the number of possiblepartitionings is considerably large (over 50 000) wedecided to select a number of 30 di�erent partiti-onings at random. Each partitioning leads to aspeci®c CMST instance, each having six centersand about 40 non-center nodes. For each instancethe time limit for the improvement procedure is150 seconds. The best solution that we found has®ve routes and a total length of additional edges of

SA t simulated annealing with starttemperature t

STS s static tabu search with tabu listlength s

CSM c1c2c3 cancellation sequence methodwith length of the active tabu listc1, duration of the tabu status c2,and length of the tabu bu�er c3

REM r reverse elimination method withlength of the running list r

372 A. Amberg et al. / European Journal of Operational Research 124 (2000) 360±376

Page 14: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

79.5 km. The best solution found by Zhu (1989)had six routes with 83.5 km total additional edgelength. The computational results are shown inTable 1.

Each metastrategy yields an improvement ofabout 14% over the initial CARP solution showingthe usefulness of the improvement procedures.Each method reaches the best known CARP

Table 1

K�onigstein

Metastrategy with

parameters

Best CARP-

solution (km)

Number of best

CMST solutions

Average CMST

improvement (%)

Average time of last

improvement (s)

Average iteration

number

None 92.5 0 0.00 ÿ ÿSA 10 79.5 2 11.35 16 94673

SA 20 79.5 3 12.91 18 94323

SA 40 79.5 11 16.71 35 96687

SA 80 79.5 14 21.84 53 97502

SA 120 79.5 4 16.97 72 98469

STS 7 79.5 11 20.29 45 849

STS 10 79.5 13 23.19 35 862

STS 12 79.5 15 24.45 49 852

STS 15 79.5 21 24.84 56 869

STS 20 79.5 16 24.58 47 888

STS 25 79.5 14 24.52 57 876

STS 30 79.5 9 22.37 57 891

CSM 1400 7 1 79.5 6 14.69 37 840

CSM 1400 10 1 79.5 6 14.94 40 842

CSM 1400 15 1 79.5 16 21.29 63 858

CSM 1400 20 1 79.5 11 19.31 47 851

CSM 1400 7 2 79.5 10 18.10 46 842

CSM 1400 10 2 79.5 10 17.02 35 846

CSM 1400 15 2 79.5 9 18.70 47 834

CSM 1400 20 2 79.5 12 18.93 46 849

CSM 1400 7 4 79.5 13 19.92 44 847

CSM 1400 10 4 79.5 12 19.20 51 833

CSM 1400 15 4 79.5 16 20.76 61 838

CSM 1400 20 4 79.5 13 19.85 39 839

REM 1500 79.5 10 17.50 51 797

Table 2

Wennigsen

Metastrategy with

parameters

Best CARP

solution (km)

Number of best

CMST solutions

Average CMST

improvement (%)

Average time of last

improvement (s)

Average iteration

number

None 114.2 3 0.00 ÿ ÿSA 20 114.2 9 3.54 0 180039

SA 40 114.2 9 3.54 0 180462

SA 80 114.2 9 3.54 0 181112

SA 120 102.4 13 9.81 7 182444

STS 7 114.2 9 3.54 0 2551

STS 10 102.4 15 12.40 7 2556

STS 15 102.4 17 14.38 8 2440

CSM 4700 7 2 114.2 9 3.54 0 2524

CSM 4700 10 2 102.4 10 4.94 5 2524

CSM 4700 15 2 102.4 11 6.34 11 2508

REM 2700 102.4 12 8.20 15 1835

A. Amberg et al. / European Journal of Operational Research 124 (2000) 360±376 373

Page 15: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

solution having a total length of 79.5 km. To havea more indepth view at the results, we investigatethe CMST instances themselves that were derivedfrom the CARP. Here we get some insight into themethods with respect to their comparative behav-ior. For this purpose the overall best CMST so-lution obtained by any of the methods applied inthe test is taken as a reference solution, i.e., asupper bound (UB).

The number of best CMST solutions (upperbounds) reached is greatly varying for the SAmethods from about 7±48% (i.e., between 2 and 14out of 30 instances). Average improvements of upto 22% are obtained. In addition, the average de-viation from the UBs varies from 26.97% to 11.43%(not directly shown in the table). The CSM resultsshow that the combination of small parametervalues for tabu duration c2 and tabu bu�er c3

performs poorly reaching only 20.69% of the upperbounds (again in absolute values in the table) andabout 22% average deviation from these bounds(see results for CSM 1400 7 1 and CSM 1400 10 1).The best CSM methods are CSM 1400 15 1 andCSM 1400 15 4 both reaching 55.17% of the upperbounds with 12.79% and 13.25% average deviation.STS outperforms CSM and SA with respect to thenumber of best solutions obtained as well as theaverage CMST improvement having values of upto 21 best solutions and an average improvement ofup to 24.84% (see especially values for s within 12and 25). The overall best behaviour is shown bySTS 15. STS results are best in a mean parameterarea (with a large number of di�erent parametervalues giving excellent results) being worst for ashort tabu list length of 7. Thus, a longer tabu listlength should be preferred. REM with 34.48% ofthe upper bounds with a deviation of 18.1% and anaverage improvement of 17.5% is not the worstresult but far from the best methods. Nevertheless,it could be a good choice if there is no time to ex-periment with di�erent parameter settings. Note,however, that these conclusions are drawn from aquite small testbed only and need not be valid ingeneral (compare e.g., Amberg et al., 1996).

Nevertheless, all tested metastrategies reach thebest known CARP solution ± independent fromthe used parameter values but always throughoutthe same partitioning of cycle nodes and only

through this one. Thus, it does not seem to be ofgreatest importance to choose an ``optimal'' pa-rameter constellation as long as it is ``good''. In-stead, closest attention should be given to thechoice of the partitioning. Therefore, we proposeto use the REM because it needs no parametersgiving way to multiplying the number of partiti-onings exploited. Furthermore, it should be triedto investigate a set of partitionings representive tothe total set which probably would be too nu-merous to enumerate. At least it has to be assuredthat no partitioning is chosen twice which might bethe case with random choice as in the consideredalgorithm. Dominated partitionings e.g., contain-ing cycles that could be split in smaller ones can bedropped, bounding rules could be used to tightenthe solution space.

The ®xed running time is exploited with a shareof 10% up to 50% as derived from the average timeof last improvement, and each strategy has amaximal time of last improvement near to therunning time boundary. Thus, we expect furtherimprovements when raising the CPU time.

In the second problem, concerning the area ofWennigsen six vehicles are stationed in two depotnodes (cf. Zhu, 1992). The CARP network has 48nodes and 55 required arcs. The total length of the20 Euler arcs is 64.6 km. The matching lowerbound of Golden and Wong (1981) for additionalarc length is 67.6 km. 17 feasible CMST instanceswith six center nodes and about 20 non-centernodes are derived. The time limit again is 150seconds. The overall best solution has 102.4 km insix routes. Table 2 shows the details.

SA procedures with low start temperature failto ®nd the best CARP solution, they do not evenimprove the initial solution. Regarding the CMSTresults the best method is STS 15 reaching 100% ofthe CMST upper bounds. The average time of lastimprovement is at about 10% of the running time.Thus, further improvements are less likely than inthe K�onigstein example.

In a modi®ed version of the Wennigsen problemwe eliminated four of the required arcs resulting in51 required arcs, 20 Euler arcs of total length 71.9km, a matching lower bound of 74.9 km and anoverall best solution of 104.7 km. Our computa-tions show similar results as in the previous case.

374 A. Amberg et al. / European Journal of Operational Research 124 (2000) 360±376

Page 16: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

The low temperature SA methods fail, SA withhigher temperature (SA 120) and STS 15 performbest. An important question for judging the e�-ciency of solving the CARP via the CMST is asfollows: when our improvement procedures obtaina reduction of the total length of additional edgescompared to the initial CMST solution, what is thechange with respect to the underlying CARP so-lution? Our computations showed that for theK�onigstein data set the ratio of the CARP im-provement (concerning additional edge length) andthe CMST improvement for each metastrategy isinbetween 87.5% and 100%, and for the Wennigsendata set we obtained a ratio of 100% in all cases.Thus we can deduce that reducing the CMST coststrongly in¯uences the edge length of the CARPsolution and that it seems to be a reasonable ap-proach to use the CMST for solving the CARP.

With respect to a detailed investigation otherdata sets from the literature seem to be fairly smalland it might be questionable whether our ap-proach is reasonable in those cases. For instance,Hertz et al. (1997) in a very recent working paperinvestigate the 23 so-called DeArmon instances aswell as randomly generated instances. The ®rst setcontains 20 instances with up to 13 nodes andthree instances with up to 27 nodes; the randomlygenerated instances have up to 19 nodes. We haveapplied our approach to these instances andcompared them to the specialized tabu search al-gorithm of Hertz et al. (1997). As our average re-sults are slightly worse we carefully investigatedthose instances were Hertz et al. (1997) obtainedbetter solutions. It turned out that due to the smallnumber of nodes and the respective structure ofthe instances, the diversity of the CMST partiti-onings is not su�ciently large and we were notable to eliminate the additional Euler edges insome cases. Our approach behaves superior whenthe capacity of a route subsumes a large number ofsmall cycles with a comparatively small number ofnon-required arcs.

4. Conclusions

In this paper we have considered a speci®c arcrouting problem that appears in real-world appli-

cations, e.g., in winter gritting. A route-®rst-clus-ter-second approach incorporating the treatmentof a modi®ed capacitated minimum spanning treeproblem as well as modern heuristic concepts havebeen proposed. As a side-e�ect we have also in-troduced the arc-constrained CMST which is afurther generalization of the well-known CMST.

The heuristic for the arc routing problem iscapable of yielding good solutions but the runningtime is signi®cant. Therefore, a more systematicchoice of the partitioning into cycle nodes, domi-nance criteria and bounding rules could be ap-plied, e.g., within a branch and bound procedure.Furthermore, the possibility of a parallel explora-tion of di�erent partitionings could be consideredor even a distinct, parallel optimization of localareas of the network as one part inside the overalloptimization. This could be of even greater usewhen dealing with a rural postman problem withmultiple depots which the above algorithm is ableto handle with some speci®c adaptation. More-over, we propose the reverse elimination methodas an appropriate metastrategy when running timeis restrictive as no parameter settings are required.

Acknowledgements

The helpful comments of the two referees,which helped to improve the presentation of thepaper, are greatly appreciated.

References

Aarts, E., Korst J., 1989. Simulated annealing and Boltzman

machines. Wiley, Chichester.

Amberg, A., Domschke, W., Voû, S., 1996. Capacitated

minimum spanning trees: Algorithms using intelligent

search. Combinatorial Optimization: Theory and Practice

1, 9±39.

Assad, A.A., Golden, B.L., 1995. Arc routing methods and

applications. In: Ball, M.O., Magnanti, T.L., Monma, C.L.,

Nemhauser, G.L. (Eds.), Network Routing. Handbooks in

OR/MS, vol. 8, Elsevier, Amsterdam, pp. 375±483.

Benavent, E., Campos, V., Corberan, A., Mota, E., 1990. The

CARP ± a heuristic algorithm. Questiio 14 (1±3), 107±122.

Bodin, L.D., 1975. A taxonomic structure for vehicle routing

and scheduling problems. Computers and Urban Society 1,

11±29.

A. Amberg et al. / European Journal of Operational Research 124 (2000) 360±376 375

Page 17: Multiple center capacitated arc routing problems: A tabu search algorithm using capacitated trees

Chapleau, L., Ferland, J.A., Lapalme, G., Rousseau, J.M.,

1984. A parallel insert method for the capacitated arc

routing problem. Operations Research Letters 3, 95±99.

Christo®des, N., 1973. The optimum traversal of a graph.

OMEGA 1, 719±732.

Clarke, G., Wright, J.W., 1964. Scheduling of vehicles from a

central depot to a number of delivery points. Operations

Research 12, 568±581.

Dijkstra, E.W., 1959. A note on two problems in connection

with graphs. Numerische Mathematik 1, 269±271.

Durth, W., Hanke, H., 1984. Optimierte Routenplanung f�ur

den Winterdienst der Straûenmeistereien Reichelsheim,

Alsfeld und K�onigstein. Untersuchungen f�ur das Hessische

Landesamt f�ur Straûenbau, Darmstadt.

Edmonds, J., Johnson, E.L., 1973. Matching, Euler tours and

the Chinese postman. Mathematical Programming 5, 88±

124.

Esau, L.R., Williams, K.C., 1966. On teleprocessing system

design. IBM Systems Journal 5, 142±147.

Gavish, B., 1983. Formulations and algorithms for the capac-

itated minimal directed tree problem. Journal of the

Association for Computing Machinery 30, 118±132.

Gavish, B., Graves, S., 1979. The travelling salesman problem

and related problems. Working paper, Vanderbilt Univer-

sity, Nashville, TN.

Geppert, B., 1986. Tourenplanung bei der innerst�adtischen

Hausm�ullentsorgung. PhD. Thesis, Technical University of

Karlsruhe.

Glover, F., 1989. Tabu search ± part I. ORSA Journal on

Computing 1, 190±206.

Glover, F., 1990. Tabu search ± part II. ORSA Journal on

Computing 2, 4±32.

Golden, B.L., Wong, R.T., 1981. Capacitated arc routing

problems. Networks 11, 305±315.

Golden, B.L., DeArmon, J.S., Baker, E.K., 1983. Computa-

tional experiments with algorithms for a class of routing

problems. Computers and Operations Research 10, 47±59.

Gouveia, L., 1995. A 2n-constraint formulation for the capac-

itated minimal spanning tree problem. Operations Research

43, 130±141.

Gouveia, L., Lopes, M.J., 1995. Using generalized capacitated

trees for designing the topology of local access networks. In:

3rd International Conference on Telecommunication Sys-

tems, Nashville, pp. 320±327.

Gouveia, L., Martins, P., 1996. The capacitated minimal

spanning tree problem: an experiment with a hop-indexed

model. Working paper, Faculdade de Ciencias da Univer-

sidade de Lisboa.

Hall, L., 1996. Experience with a cutting plane algorithm for

the capacitated spanning tree problem. INFORMS Journal

on Computing 8, 219±234.

Hertz, A., Laporte, G., Mittaz, M., 1997. A tabu search

heuristic for the capacitated arc routing problem. Working

Paper, C.R.T., University of Montreal.

Kershenbaum, A., Boorstyn, R.R., Oppenheim, R., 1980.

Second-order greedy algorithms for centralized teleprocess-

ing network design. IEEE Transactions on Communications

28, 1835±1838.

Kruskal, J.B., Jr, 1956. On the shortest spanning subtree of a

graph and the traveling salesman problem. Proceedings of

the American Mathematical Society 7, 48±50.

Kwan, M.-K., 1962. Graphic programming using odd or even

points. Chinese Mathematics 1, 273±277.

Liebling, T.M., 1970. Graphentheorie in Planungs- und Tou-

renproblemen am Beispiel des st�adtischen Straûendienstes.

Springer, Berlin, Heidelberg, New York.

Liebman, J.C., Male, J.W., 1974. Routing of solid waste

collection vehicles. Final report. Appendix B: A heuristic

solution to the M-postmen's problem. Illinois University,

444 Urbana, US Environmental Protection Agency Report

No. 670/2-74-036b.

Papadimitriou, C.H., 1976. On the complexity of edge travers-

ing. Journal of the Association for Computing Machinery

23, 544±554.

Papadimitriou, C.H., 1978. The complexity of the capacitated

tree problem. Networks 8, 217±230.

Pearn, W.L., 1989. Approximate solutions for the capacitated

arc routing problem. Computers and Operations Research

16, 589±611.

Pearn, W.L., 1991. Augment-insert algorithms for the capac-

itated arc routing problem. Computers and Operations

Research 18, 189±198.

Prim, R.C., 1957. Shortest connection networks and some

generalizations. Bell Syst. Techn. Journal 36, 1389±1401.

P�utz, W., 1979. Numerische Untersuchungen zum Chinesischen

Postbotenproblem. Diplomarbeit am Mathematischen In-

stitut der Universit�at K�oln.

Sharaiha, Y.M., Gendreau, M., Laporte, G., Osman, I.H.,

1997. A tabu search algorithm for the capacitated shortest

spanning tree problem. Networks 29, 161±171.

Stern, H.I. Dror, M., 1979. Routing electric meter readers.

Computers and Operations Research 6, 209±223.

Zhu, P., 1989. Ein ¯exibles Verfahren zur L�osung kantenori-

entierter Tourenplanungsprobleme im Straûenbetriebsd-

ienst. PhD. dissertation, Technische Hochschule Darmstadt.

Zhu, P., 1992. Personal Communication.

376 A. Amberg et al. / European Journal of Operational Research 124 (2000) 360±376