advanced solution methods for real-life optimization problems

24
1 1 Advanced solution methods for real-life optimization problems Frédéric SEMET UVHC Université de Valenciennes et du Hainaut-Cambrésis 2 2. Management in real-time of an emergency vehicle fleet Frédéric SEMET Michel GENDREAU, Gilbert LAPORTE UVHC Université de Valenciennes et du Hainaut-Cambrésis

Upload: others

Post on 09-Jun-2022

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Advanced solution methods for real-life optimization problems

1

1

Advanced solution methods for real-life optimization problems

Frédéric SEMET

UVHC Université de Valenciennes et du Hainaut-Cambrésis

2

2. Management in real-time of an emergency vehicle fleet

Frédéric SEMETMichel GENDREAU, Gilbert LAPORTE

UVHC Université de Valenciennes et du Hainaut-Cambrésis

Page 2: Advanced solution methods for real-life optimization problems

2

3

In real-time context :

- Allocation problem

- Redeployment problem• Allocation problem :Which vehicle must be sent to answer a call?→ Strategies depending on the nature of the calls

• Redeployment problem :Vehicle location model + additional constraints

4

Motivation

• Classical location models have been used for a long time to findwaiting points for emergency vehicles such as ambulances.

• The objective of such models is usually to obtain a good coverageof the area to be serviced to ensure acceptable response times.

Page 3: Advanced solution methods for real-life optimization problems

3

5

Motivation (2)

• Classical models are based on a static vision of the problem.

• They neglect the fact that vehicles become unavailable as they are dispatched to answer calls and that the remaining vehicles must be reallocated among waiting locations to ensure proper coverage ofthe area.

6

Classical approach

• Uses standard location models.• The area to be serviced and the waiting points are described by a graph

on which several optimization models can be defined.• The model usually considers locating only the complete fleet of

available vehicles.

Page 4: Advanced solution methods for real-life optimization problems

4

7

Formalization

• The area is split into zones that correspond to demand points.• V : set of demand points• W : set of waiting points• di : demand of zone i (i∈V)• tij : travel time from waiting point j to demand point i

8

Covering model (I)

• A maximal response time r is given.• A waiting point j covers a zone i if tij≤ r.• For each zone i, one can find the subset Wi of waiting points that cover

this zone .• One looks for an assignment of vehicles to points of W such that there is

at least one vehicle assigned to each subset of Wi.

W)(j 1 or 0 x

V)(i 1x tosubject

x Minimize

j

iWjj

Wjj

∈=

∈≥∑

Page 5: Advanced solution methods for real-life optimization problems

5

9

Maximal coverage

• The previous model neglects the fact that the number of available vehicles is limited (fixed to some value n).

• One must instead look for an assignment of the n vehicles that maximizes the total demand that they cover.

• We define variables yi to indicate whether or not zones are covered and we maximize the total demand covered.

V)(i 1 or 0y

W)(j 1 or 0 x

px

V)(i yx tosubject

yd Maximize

i

j

Wjj

iiWj

j

Viii

∈=

∈=

=

∈≥

10

Integrating the dynamic dimension

• As mentioned before, all vehicles are not available at all times.

• Vehicle locations should thus be based on the number of vehiclescurrently available.

Page 6: Advanced solution methods for real-life optimization problems

6

11

2.1 Management of doctor vehicles

12

Motivation

• Reallocations can become prohibitive when the number of vehicles is small.

• To properly address this issue, it must be considered at the planning stage.

Page 7: Advanced solution methods for real-life optimization problems

7

13

A possible solution

• A possible solution is to determine separately for each value of k(k = 1,…,n) the optimal assignment of vehicles to waiting points.

• But this implies relocating the vehicles after each dispatch or return of a vehicle.

• In many cases, this is highly undesirable.

14

The proposed model

• A maximal coverage model that simultaneously determines the assignment of vehicles to waiting points for all possible values of the number of currently available vehicles, i.e., for k = 1,…, n.

• The number of relocations between the configurations with k and with (k+1) vehicles is constrained by a value αk.

Page 8: Advanced solution methods for real-life optimization problems

8

15

Objective

• On must take into account the fact that all configurations (values of k) are not equally likely.

• If we denote by qk the probability that k vehicles are available, one must maximize

∑ ∑ di qk yik.• We define αk as an upper bound on the number of vehicles moved

when k are available.

16

ikkiVi

n

ky q d ∑∑

∈=1Maximize

subject to :

ikWj

jk y xi

≥∑∈

(i ∈ V, k = 0,…, n)

k xWj

jk =∑∈

(k = 0,…, n)

jkk,jjk u x x ≤− +1 (j ∈ W, k = 1,…, n − 1)

u kWj

jk α≤∑∈

(k = 1,…, n − 1)

{ }0,1x jk ∈ (j ∈ W, k = 0,…, n)

{ }0,1yik ∈ (i ∈ V, k = 0,…, n){ }0,1u jk ∈ (j ∈ W, k = 1,…, n − 1).

The doctor vehicle location model

Page 9: Advanced solution methods for real-life optimization problems

9

17

The values of qk

• The qk’s are fundamental parameters of the model, but we do not know their value a priori. How can it be estimated?

• One can rely on the average availability rate of the vehicles (the probability pn that a given vehicle be available when there are nvehicles) and use a binomial distribution with parameters (n, pn).

18

Computing pn

• One first estimates the average workload from the average service rate µ and the arrival rate of calls λ.

• One then computes the time for breaks, driver changes, etc.

• This gives a simple expression for pn .

Page 10: Advanced solution methods for real-life optimization problems

10

19

Computational experiments

• Data from Montreal island:– 3049 demand points– 64 waiting points– demands proportional to zone populations

• r = 8 minutes

• Case of doctor vehicles with small values of n(between 3 and 6)

• Workload: µ = 1.46 and λ = 1.03.

20

Demands pointsWaiting sites

Demand points and waiting sites in Montreal and Laval

Page 11: Advanced solution methods for real-life optimization problems

11

21

Scenarios

• To evaluate the impact of αk on the coverage probability of a call.• S0: αk = 0• S1: αk = 1• S2: αk = k/2 (rounded up)• S3: αk = k

22

Average response times

n S0 S1 S2 S3

3 10.33 9.93 9.93 9.93

4 8.63 8.63 8.59 8.59

5 8.06 7.51 7.48 7.48

6 7.89 7.42 7.42 7.42

Page 12: Advanced solution methods for real-life optimization problems

12

23

Proportion of calls covered within 8 min.

n S0 S1 S2 S3

3 0.464 0.506 0.506 0.506

4 0.583 0.606 0.614 0.614

5 0.627 0.719 0.724 0.724

6 0.716 0.765 0.766 0.766

24

Conclusions

• Tests show that constraints on vehicle repositioning can be integrated in a maximal coverage model.

• Computational results demonstrate the benefits of relocation in terms of average response time and proportion of calls covered within 8 minutes.

Page 13: Advanced solution methods for real-life optimization problems

13

25

2.2 Real-time management of ambulances

26

Double covering constraints

• All the demand covered by an ambulance within r2 (15) minutes

• A proportion α (90%) of the demand covered within r1 (7) minutes

Page 14: Advanced solution methods for real-life optimization problems

14

27

Double covering constraints

Objective:Allocate ambulances to potential location sites to maximize the demand covered by 2 ambulances within r1 minutes

in a such way that :

(1) the double covering constraints are satisfied ;

(2) p ambulances are deployed.

28

An Ambulance Location Model

G = (V∪W, E) graph where :

V = {v1,...,vn} : demand points ;

W = {vn+1,...,vn+m} : potential location sites ;

E = {(vi,vj): vi,vj ∈ V∪W, i < j} : set of edges.

(λi) : demand vector defined on V.

(tij) : travel time matrix defined on E.

p : total number of ambulances.

Page 15: Advanced solution methods for real-life optimization problems

15

29

subject to :

∑λi

2ii x = f max

1 y j

jij ≥δ∑

∑∑ λα≥λi

ii

1ii x

2i

1i

j x+ x ≥∑ jij yγ

1i

2i x x ≤

p j

=∑ jy

jp ≤jy

1ou 0 x, x 2i

1i =

integer 0, ≥jy W v j+n ∈∀

W v j+n ∈∀

V vi∈∀

V vi∈∀

V vi∈∀

V vi∈∀

30

Main Features of the Tabu Search Algorithm

Solution space :Solution s specified by the number of ambulances located at each vertex of W

may be infeasible / covering constraints.

Objective function :

F(s) = f(s) - M1 f1(s) - M2 f2(s)

with : M1 >> M2>> 1.

Page 16: Advanced solution methods for real-life optimization problems

16

31

Initial solution :

Solve the linear relaxation of the ILP

Upper bound on the optimal value.

Construct an initial solution using a rounding procedure.

Tabu status :

When an ambulance is moved from vn+j to vn+j’ : (j’,j) is tabu for Θ1 iterations.

32

Neighbourhood structure :

Generate a set N(s) of neighbour solutions :

Generate |N(s)| aspiration chains

Aspiration chain:Move a number of ambulances to improve F(s)

Page 17: Advanced solution methods for real-life optimization problems

17

33

Diversification :

When the best known solution f* was not improved for Θ2 iterations:

5 closest neighbours of vn+j→ all vertices of W not among the 5 closest neighbours

Stopping rule :

(f* ≥ 0.99 (initial upper bound))

or (f* was not improved for Θ3 iterations)

34

Step 1 : (Initialization)

Solve the linear relaxation - Build an initial solution

Step 2 : (Neighbour solution)

Generate the best neighbour of the current solution(invoke if necessary the diversification phase)

Step 3 : (Incumbent update and stopping rule)

Update the current solution and the tabu statusUdpate the best known solution if an improvement occurredGoto step 2 while the stopping criterion is not satisfied

Page 18: Advanced solution methods for real-life optimization problems

18

35

Demands pointsWaiting sites

Demand points and waiting sites in Montreal and Laval

36

1851750.9990.99940

2271860.9940.99535

3964030.9960.9953050

29996920.9960.99525

CplexTime

TabuTime

CPLEX2/CPLEX1

TABU/CPLEX1

pm

Page 19: Advanced solution methods for real-life optimization problems

19

37

Ambulance location model + additional constraints

Additional constraints ?

• Move only a limited number of ambulances

• Do not move always the same vehicles

• Avoid repeated round trips between 2 location sites

• Avoid assignments near the end of a shift

• Take into account the breaks of the paramedics

• ...

Redeployment Problem

38

• Additional constraints :

Do not move always the same vehicles

Avoid repeated round trips between 2 location sites

Avoid long trips

Parallel version of the ambulance location heuristic

Page 20: Advanced solution methods for real-life optimization problems

20

39

subject to :

∑−∑ λl

llj, jtji

2ii y M x = f max

1 j

≥∑l

ljij yδ

∑∑ λα≥λi

ii

1ii x

2i

1ij jij x + x y ≥∑γ l

1i

2i x x ≤

1 y j j =∑ l

jj p y ≤∑l

l

1ou 0 x, x 2i

1i =

1or 0 ≥ljy W v j+n ∈∀

W v j+n ∈∀

V vi∈∀

V vi∈∀

V vi∈∀

V vi∈∀

A Dynamic Ambulance Location Model

p,...,1=l

40

• Optimization :

Given a current deployment :

1 - For each site, select which ambulance will be assigned to a call.2 - Compute the relocation decisions associated with the future

assignment of this ambulance.3 - Store this relocation strategy.

• Data updates :

Relocations strategies when an ambulance is again available.

Parallelization strategy

Page 21: Advanced solution methods for real-life optimization problems

21

41

General rule :

Relocation strategies computed according to the increasing order of the values of the objective function.

TS stopping criterion :

Number of iterations / frequency of calls.

Priorities in the computation of the relocation strategies

42

Expected events :

- Assignment to a pending call.- Ends of schifts.

Relocations strategies computed some minutes in advance.

Improvements in the computation of the relocation decisions

Page 22: Advanced solution methods for real-life optimization problems

22

43

Assign the k closest ambulances.

Among the relocation strategies associated to the assigned vehicles,apply the best one.

Try to improve this deployment.If improve, implement the relocation decisions.

Multi-assignment to a call

44

Reassignment conditions :

- Closest ambulance.

- ∃ an ambulance such that the less urgent call will be covered in r2 min. at most.

Strategy :

- When a less urgent call occurs, identify the the second best ambulance.

- While the assigned ambulance is not on scene :

Compute the relocation decision associated tothe second best ambulance.

Udpate the second best ambulance when a new call occurs

Reassignment from a less urgent call to an urgent call

Page 23: Advanced solution methods for real-life optimization problems

23

45

• 4 types of calls :- urgent call - one ambulance : 80%- urgent call - two/three ambulances : 3%- less urgent call : 10%- pending call : 7%

• Radii:- urgent call : r1 = 7 min.- less urgent call : r2 = 15 min.

• Frequency of calls :- population.- day period.

• Ambulances :- number of ambulances / day period.- speed : zone (3)

day period.

Simulation

0%

5%

10%

15%

20%

25%

30%

01:0

0

04:0

0

07:0

0

10:0

0

13:0

0

16:0

0

19:0

0

22:0

0

25:0

0

28:0

0

Time interval between 2 consecutive calls

46

Each simulation : 7 hours on 16 Ultra Sparc Station142 calls and 54 ambulances on average.

Average results on 6 simulations :

• Response times to calls :- All calls covered in less than 15 min.

- Average response time for less urgent calls : 9 min.- 98.5 % of urgents calls covered in less than 7 min.- Average response time for urgent calls : 3 min. 30 sec.

•Relocation strategies :- Ambulances moved in 38% of cases.

- 99.5% of relocations involve less than 5 ambulances.- 2.08 ambulances are moved on average.

- 95 % of relocations strategies were computed.- When not computed, max. available time : 32 sec.

Page 24: Advanced solution methods for real-life optimization problems

24

47

• Radii:- urgent call : r1 = 5 min.- less urgent call : r2 = 10 min.

• Average results on 3 simulations :

- All calls covered in less than 10 min.- Average response time for less urgent calls : 7 min. 10 sec.

- 92 % of urgents calls covered in less than 5 min.- Average response time for urgent calls : 3 min.- 2.25 ambulances are moved on average.

Smaller radii