Branch and Bound - CSUanderson/cs320/slides/Branch and...Branch and Bound-algorithm design...

7
Branch and Bound - algorithm design approach - a tree search strategy to generate all possible solutions to a problem , but with - pruning rules to eliminate regions of the tree that cannot lead to solutions that are better than ones found so far . Three components to a branch and bound algorithm : - search strategy - branching strategy - pruning rules For some problems that cannot be solved with a greedy or dynamic programming algorithm , a branch and bound algorithm may be a good , and perhaps only , approach .

Transcript of Branch and Bound - CSUanderson/cs320/slides/Branch and...Branch and Bound-algorithm design...

Page 1: Branch and Bound - CSUanderson/cs320/slides/Branch and...Branch and Bound-algorithm design approach-a tree search strategy to generateall possible solutions to a problem but with-pruning

Branch and Bound- algorithm design approach

- a tree search strategy to generateall possible solutions to a problem ,but with

- pruning rules to eliminate regionsof the tree that cannot lead to

solutions that are better than ones

found so far .

Three components to a branch and boundalgorithm :

- search strategy- branching strategy

- pruning rules

For some problems that cannot be solvedwith a greedy or dynamic programming

algorithm ,a branch and bound algorithm

may be a good ,and perhaps only , approach .

Page 2: Branch and Bound - CSUanderson/cs320/slides/Branch and...Branch and Bound-algorithm design approach-a tree search strategy to generateall possible solutions to a problem but with-pruning

To design a branch and bound algorithm ,

specify- a search that will enumerate all possible

solutions

- pruning rules that eliminate a subtreeso it does not have to be searched

.

Pruning rules are based on upper and lower bounds

Page 3: Branch and Bound - CSUanderson/cs320/slides/Branch and...Branch and Bound-algorithm design approach-a tree search strategy to generateall possible solutions to a problem but with-pruning

i I 23

o - I Knapsack,

W -

- 10,

w = 6 5 4V = 12 CO 7

-Ordered by decreasing %

Find upper

boundon value of packed knapsack

by considering it a fractional knapsack problemand finding greedy solution

.

Remaining Value inAdd

a

Capacityknapsactc( O O

all of item I 10 .

-6=4 Ot 12=12

W= 6,

ve 12

415 of item 24

-

485=012+41510=20

w=p,r= 10

Best value for fractional knapsack version

=2oSo

, we know a solution to the o - I knapsackwill have value I 20

Page 4: Branch and Bound - CSUanderson/cs320/slides/Branch and...Branch and Bound-algorithm design approach-a tree search strategy to generateall possible solutions to a problem but with-pruning

ab= optimistic oriopperbound

i I 23

V is knapsa.deab

-

- 20 We 6 54V = 12 CO 7value V=o

fusing:} WHO addikml

ab -

- 17

&ipiem, \

ab = 20

✓ =o✓ = 12

W = tow -4

¥¥ skipperygdditem2"dominates

"

ab⇒atoo heavy

=

better v-42than W=4anythingYImssibhskipitmfadydi.tn

's

Page 5: Branch and Bound - CSUanderson/cs320/slides/Branch and...Branch and Bound-algorithm design approach-a tree search strategy to generateall possible solutions to a problem but with-pruning

Bicycle Sharing SystemsStatic Rebalancing Problem :

- Vehicle moves bicycles from one stationto another

- Each station must be visited once andOnly once

.

Typical problem size : Panis 1,258stations13

,820 bicycles

Mathematical Formulations

For Station

io- Ei = number of bicycles•

Ri = minimum requiredRti

= maximum requireddij = travel time between

stations i and jWi = R

-

i- Ei or Ei - Rti

( - . . . - I -1 - --

Ei RI Rt .

' t

Ei

objective : Minimize § wi Cti - to )

ti - to is time that Station i hastoo few an too many bicycles

.

Page 6: Branch and Bound - CSUanderson/cs320/slides/Branch and...Branch and Bound-algorithm design approach-a tree search strategy to generateall possible solutions to a problem but with-pruning

Ways to calculate -

lower bounds :

LB I - allow vehicle to visit a stationmore than once

LBZ,

LB 3 - other simplificationsupper bounds :

UP BI - genetic algorithm searchfor approximate solution

UPBZ - depth - first search of just thechild node with lowest lowerbound .Greedy

.

UP 133 - nearest - neighbor . Constructroute by picking next station

that minimizes travel time.

Page 7: Branch and Bound - CSUanderson/cs320/slides/Branch and...Branch and Bound-algorithm design approach-a tree search strategy to generateall possible solutions to a problem but with-pruning

Experiments :

Tested network sizes to,

. . .

,100

.

< BI best overall

UBI, genetic algorithm best for small networks

,

UBZ,

depth first greedy best otherwise

Found optimal solutions for networks I 30.

in less than 134 hours.

Kadri,

et al .

,

"

A branch - and - boundalgorithm for solving The static rebalancing

problem in bicycle - sharing systems "

,

Computers & Industrial Engineering ( 95 ) 2016,41-52 .