Shuronr

30
An Exact Algorithm for the Capacitated Arc Routing Prob lem using Parallel Branch and Bound Me thod Masaaki Kiuchi (Hirabayash i Lab.) Department of Management Science, Faculty of Engineering, Science University of Tokyo An Experimental Verification on the Effect of Parallelization

Transcript of Shuronr

An Exact Algorithm for the Capacitated Arc Routing Problem using

Parallel Branch and Bound Method

Masaaki Kiuchi (Hirabayashi Lab.)Department of Management Science,

Faculty of Engineering,

Science University of Tokyo

~ An Experimental Verification on the Effect of Parallelization ~

CONTENTS 1: Introduction 2: Capacitated Arc Routing Problem 3: Parallel Tour Construction Algorithm

– 3-1: Lower Bounding Procedure– 3-2: Branching Scheme– 3-3: Constructing a Feasible Solution

4: Computational Experiments 5: Conclusion

1: Introduction Classification of Routing Problems

Node Routing Problem Arc Routing Problem

TSP : Traveling Salesman Proble

m

CPP :Chinese Postman Problem

RPP :Rural Postman Problem

Routing ProblemService activities

are required at Nodes !!

Demand constraint !Demand constraint !

andCapacity constraint !

CARP : Capacitated Arc Routing Problem

Service activities

are required on Arcs !!

Capacity constraint !

VRP :Vehicle Routing Problem

1964: Clarke and Wright ・・・1993: Chang

Heuristic Algorithms

Exact Algorithms1992: Y.Saruwatari et al. ‘‘Tour Construction Algorithm’’

Lower Bounding Procedures1981: Golden and Wong ・・・1992: Y.Saruwatari et al. ‘‘Node Duplication Lower Bounding Procedure’’

Previous Works on the CARPFew relationships between each subproblems! ex. Calculation of a relaxation problem   Branching operation in a subproblem

Branch and Bound

1994: Y.Shinano et al. ‘‘PUBB: Parallelization Utility for Branch and Bound’’

Parallel Branch and Bound

・ Reduction of the Computing Time!・ Application to Larger Instances!

1: Introduction Background of the Study

Improvement by parallelization!

In expectation of ...

2: Capacitated Arc Routing Problem Summary of the Problem

G V E , Graph :

v V0 depot :c e( ) 0cost :q e( ) 0demand :D q e

e E

max capacity :

〒?

depot

demand

How to deliver ?

capacity

distance= 2

333

2cost...

CARP :

K

W W W K G

F E W

i K

K

i i

: positive integer,

: closed walks in

:

1 2

1 2

, , , ,

,

, , , .

find

v V W i K

F E F F

E e E q e

q e D i K

c e

i

ii

K Di j

D

e F

e E Wi

K

i

i

0

1

1

1 2

0

1 2

, , , , ,

, ,

| ,

, , , , ,

(1)

(2)

(3)

is minimum. (4)

sub.to.

Branch and Bound

feasible solution!!

relaxationproblem

2: Capacitated Arc Routing Problem Formulation of the Problem

Continue the calculationto satisfy

the constraint (3).

3: Parallel Tour Construction Algorithm Summary of Our Parallelization

A Framework of theParallel Branch and Bound

Master processor

Slave processors

Each subproblem can besolved independently!

Branch and Bound

feasible solution!!

subproblems

TCP/IP

The Framework of the PUBB: Parallelization Utility for Branch and Bound

Slave Processes・ calculation on subproblems・ branching operationsSlave Buffer Processes・ buffer of each slave processSlave Controller Process・ management of the slave processes on a WS

・ read instance data・ construct Node Duplicated Graph・ construct Modified Graph

・ construct Matching Graph・ solve the MCPM・ branching operation・ generate subproblems

・Modified Graph・ Information about prohibited arcs

Master Process・ management of the search tree・ assignment of subproblems

3: Parallel Tour Construction Algorithm Summary of the Algorithm

Master processor

Slave processors

TCP/IP

3-1: Lower Bounding Procedure What is the Minimum Cost Perfect Matching ?

If no two arcs in a subset M of E are adjacent,then M is called a matching in G=(V,E).

Definition of Matching

Matching

Not all the nodes in G areendpoints of arcs in M.

Perfect Matching

Minimum CostPerfect Matching

5 5

5 +3 +5 +6 =19

32

3 +3 +3 +2 =11

All the nodes in G areendpoints of arcs in M.

All the nodes in G areendpoints of arcs in M,

andthe sum of weights ofarcs in M is minimum.

For example ...

2 3 4

(2,2)

(1,3) (1,3)

(3,1)

(2,2)

(3,3)(3,2)

2 3 4

3 3

21

Duplicate all thenodes in the graph!

Separate all thedemand arcs!

Served by exactly one vehicle!

Control the total cost of routes of some vehicles!

H q e De E

16 4 4/

cost demand

3-1: Lower Bounding Procedure Node Duplication Lower Bounding Procedure

served arcs: demand arcs

passed arcs: demand arcs non-demand arcs

demand

2H

3-1: Lower Bounding Procedure Node Duplicated Graph (perfect graph)

2 3 4

3 3

・ arcs between families:

costs of shortest path

・ arcs in a family: 0 (family of depot: )

・ demand arcs: c e e E( ), cost:

family

then reset the costs of non-demand arcsbetween the two demand arcs .

3-1: Lower Bounding Procedure Modified Graph

2 3 4

3 3

If the sum of demandsof two demand arcs:

2 + 3 = 5

> 4 = D : capacity,

・ arcs between families:

costs of shortest path

・ arcs in a family: 0 (family of depot: )

・ demand arcs: c e e E( ), cost:

3-1: Lower Bounding Procedure Matching Graph

2 3 4

3 3

・ arcs between families:

costs of shortest path

・ arcs in a family: 0 (family of depot: )

・ demand arcs: c e e E( ), cost:

Remove the two noeds which are adjacent to demand arcs fr

om the family of depotand all the arcs which areadjacent to the two nodes.

Minimum Cost Perfect Matching

2 2

Solve the minimum cost perfect matching problem on the matching graph!

3-1: Lower Bounding Procedure Matching Graph

2 3 4

3 3

・ arcs between families:

costs of shortest path

・ arcs in a family: 0 (family of depot: )

・ demand arcs: c e e E( ), cost:

Solve the minimum cost perfect matching problem on the matching graph!

Remove the two noeds which are adjacent to demand arcs fr

om the family of depotand all the arcs which areadjacent to the two nodes.

Minimum Cost Perfect Matching

2 2

(2,2)

(3,1)

(2,2)

(3,3)

(2,2)

(1,3)

(3,1)

(2,2)

(3,2)

(2,2)

(1,3) (1,3)

(2,2)

2 3 4

(2,2)

(1,3)

(1,3)

(2,2)1

2 3 4

2 3 4

2 3 4

: served arcs: passed arcs

3-1: Lower Bounding Procedure Each Delivery Route on the Original Graph (Infeasible!)

(1,3)

The optimal value of a relaxation

problem = lower bound!

If the sum of demands on a route of a vehicle:

2 + 2 + 1 + 3 = 8

> 4 = D : capacity,

then the route does not satisfy the capacity constraint!

1

4

32

notice!

Solve |M| minimum cost perfectmatching problems with

each arc in M is prohibited.

Compare lower bounds , then ...c E c MD

find a branching arc in Mwhich gives the

largest lower bound.

3-2: Branching Scheme Selection of a Branching Arc

2 3 4

3 3

2 2

in which the branching arc is contained as a part of a path of a vehicle.

Construct two subproblems ...

in which the branching arc is prohibited as a part of

a path of a vehicle.

2 3 4

3 3

contained

feasible solution!!

Parallel Branch and Bound

3-3: Constructing a Feasible Solution How to Construct a Feasible Solution ?

prohibited

Select a branching arcin each subproblem,

and construct a tour ofa vehicle to satisfy the

capacity constraint.

contained

Prohibited by thecapacity constraint.

contained

Calculate the sum of demandson the two demand arcs whichare adjacent to a contained arc

2 + 2 = 4.

Add one more demand arcto a path of a vehicle.

If the sum of demands onthe path of a vehicle:2 + 2 + 1 = 4 + 1 = 5

> 4 = D : capacity,

then prohibit the non-demand arcsbetween the path and the demand arc.

2 3 4

3 3

3-3: Constructing a Feasible Solution Prohibiting Arcs

contained

2 3 4

3 3

Since the number of vehiclesis fixed to H in

each relaxation problem,

there may not exist asolution which satisfiesthe capacity constraint.

3-3: Constructing a Feasible Solution Update the Number of Vehicles

in constructing thetours of vehicles,

The sum of demands on a route of a vehicle:

3 + 1 + 2 = 6

> 4 = D : capacity,

so, the route doesnot satisfy the

capacity constraint!

2 3 4

3 3

3-3: Constructing a Feasible Solution Update the Number of Vehicles

Since the number of vehiclesis fixed to H in

each relaxation problem,

there may not exist asolution which satisfiesthe capacity constraint.

in constructing thetours of vehicles,

add one more vehicle!

add two more nodes to the familyof depot and the arcs between

the nodes and all the other nodes.

Then, ...

(2,2)

(3,1)

(2,2)

(3,3)

(2,2)

(1,3)

(3,1)

(2,2)

(3,2)

(2,2)

(1,3) (1,3)

(2,2)

2 3 4

(2,2)

(1,3) (1,3)

(2,2)1

2 3 4

2 3 4

2 3 4

3-3: Constructing a Feasible Solution Each Delivery Route on the Original Graph (Feasible!)

(2,2)

(3,1)

(2,2)

(3,3)

2 3 4

All the routes of vehiclessatisfy the capacity constraint,

: served arcs: passed arcs

1

4

32

5 a feasible solution !

then we obtained ...

An example of a search tree

the early stage

LCU:1

LCU:2

LCU:3

feasible

feasibleA feasible solution with theminimum objective value is

an optimal solution !

3-3: Constructing a Feasible Solution How to Obtain an Optimal Solution?

4: Computational Experiments Computing Environment and Instances

Environment: We used following 6 workstations connected by ether net.           Machine: TOSHIBA SPARC LT           CPU: SPARC           Clock: 25MHz

        Master process: 1 workstation

        Slave processes: 1 process on a WS 1, 3, 5 workstations

       No processes of other users were running on all the workstations.

Consideration: The number of subproblems when we used 1 workstation

as a slave processor is more over 1000. 6 instances.

Instances: We solved 20 instances with 15 demand arcs.

In 20 instances, ...

In 6 workstations, ...

4: Computational Experiments An Example of Computational Results (Hybrid Search, 5-LCU)

opt.value NDLB ratio(%) branched discard updated eliminated total cpu-timeaa1501r 11727 11727 100.0 64 20 2 37 123 50aa1502r 14661 14039 95.8 992 443 2 25 1462 1226aa1503r 9512 9512 100.0 159 79 3 44 285 92aa1504r 7672 7516 98.0 50 11 5 28 94 50aa1505r 8057 7737 96.0 406 188 3 44 641 255aa1506r 15132 12237 80.9 1521 1046 2 9 2578 1572aa1507r 13132 12684 96.6 1945 814 5 74 2838 2558aa1508r 9893 9275 93.8 8233 4457 1 0 12691 6266aa1509r 9320 9320 100.0 94 24 4 47 169 73aa1510r 7633 7633 100.0 321 139 5 60 525 246aa1511r 9497 9497 100.0 135 30 6 81 252 141aa1512r 9831 9831 100.0 383 175 4 76 638 251aa1513r 10470 9856 94.1 6552 4258 2 19 10831 6569aa1514r 13137 13137 100.0 3 2 1 0 6 17aa1515r 12542 10774 85.9 2920 1768 3 20 4711 2778aa1516r 9808 9808 100.0 41 5 2 35 83 43aa1517r 10871 10871 100.0 105 36 4 35 180 81aa1518r 10957 10957 100.0 156 49 5 92 302 104aa1519r 10197 10197 100.0 65 13 4 36 118 51aa1520r 11231 10727 95.5 260 109 2 32 403 243average --- --- 96.8 1220.3 683.3 3.3 39.7 1946.5 1133.3

No.1 No.2 No.3 No.4 No.5 No.60

5000

10000

15000

20000

25000

30000

35000

No.1 No.2 No.3 No.4 No.5 No.6

Hybrid:1

Hybrid:3

Hybrid:5

Depth:1

Depth:3

Depth:5

Bound:1

Bound:3

Bound5

Problem No.

Com

pu

tin

g T

ime

(sec

.)

4: Computational Experiments The Effects on the Computing Times

Hybrid Depth First Best Bound

0.00

2.00

4.00

6.00

8.00

10.00

12.00

14.00

1LCU 3LCU 5LCU

0.00

2.00

4.00

6.00

8.00

10.00

12.00

14.00

1LCU 3LCU 5LCU

0.00

2.00

4.00

6.00

8.00

10.00

12.00

14.00

1LCU 3LCU 5LCU

No.1

No.2

No.3

No.4

No.5

No.6

Sp

eed

up

Rat

io

Number of LCUs Number of LCUs Number of LCUs

65.118.927.1

4: Computational Experiments The Effects on the Computing Times

Hybrid Depth First Best Bound

Number of LCUs Number of LCUs Number of LCUs

0.00

0.20

0.40

0.60

0.80

1.00

1.20

1.40

1.60

1.80

2.00

1LCU 3LCU 5LCU0.00

0.20

0.40

0.60

0.80

1.00

1.20

1.40

1.60

1.80

2.00

1LCU 3LCU 5LCU0.00

0.20

0.40

0.60

0.80

1.00

1.20

1.40

1.60

1.80

2.00

1LCU 3LCU 5LCU

No.1

No.2

No.3

No.4

No.5

No.6

Incr

ease

Rat

io in

th

eN

um

ber

of

Su

bp

rob

lem

s4: Computational Experiments The Effects on the Number of Subproblems

5: Conclusion The Results of the Study

We developed and implemented a new algorithm for the capacitated arc routing problem.

We could obtain an optimal solutions to 20 instances.

Presentations of the study

The results of the study

We considered the computing results and verified the effect of parallelization.

‘‘The Manthly Research Meeting of RAMP,’’ Research Association of Mathematical Programming, Sep. 1995.

‘‘The 1995 Spring National Conference of ORSJ,’’ The Operations Research Society of Japan, Mar. 1995.