View
154
Download
1
Category
Preview:
Citation preview
On the Effects of Inoculation: an Example in Train Scheduling
Y. Semet*, M. SchoenauerINRIAOrsay, France
Research funded by SNCF
*:now with EUROBIOS (complexity science for business problems)
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
2
The problemRecompute railway schedule following a small perturbation: e.g. one train gets delayed for 10 minutesNetwork is a graph: nodes are stations or switchings and edges interconnecting tracksDegrees of freedom : times of arrival and departure a(c,i), d(c,i), track choice r(c,i).Objective : minimize total accumulated delay
Constraints : safety spacing and resource allocationChallenge: Do better than existing MIP algorithms: too slow ; eventually reach real-time performance
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
3
Zoom in: one node…
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
4
Zoom out: Space/Time Diagrams
A global overview of the railway network Visual representation of the phenotypeHelps to graphically visualize constraints
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
5
Initial times
Stopping times
Safety spacing in both tracks and nodesConnecting trainsInter-routes shared resources conflicts: heart of the problem’s combinatorial difficulty
Constraints
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
6
How to solve it ? Using an indirect approach.
Widely used in Evolutionary SchedulingDirect approach impracticalIndirect approach uses a mapping function: permutations + greedy scheduling heuristic
[3 4 5 1 2 6 8 7]
SchedulerOptimization plays with permutations
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
7
Scheduler outline
1.For each train c (following the permutation)
1. For each Node i (in order)
1.For each route r1. Initialize a and d (theoretical values)2. While (conflict)
delay a and d or“kick” obstacles
2.Pick route yielding earliest d (greediness)
Important: semi-greedy instead of actually greedy: optimality is enforced only at the node level, not at the train level
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
8
Solving conflicts: moving forward in time
i
Space
Time
j
Train c’ is already scheduled
α
Train c is being scheduled
Safety spacing threshold
α
a(c,j) : violation !!
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
9
Solving conflicts: moving forward in time
i
Space
Time
j
Train c’ is already scheduled
α
Train c is being scheduled
Safety spacing threshold
α
a(c,j)
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
10
Solving conflicts: “kicking” obstacles out
i
Space
Time
j
Train c’ is already scheduled
Train c is being scheduled
α α
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
11
Solving conflicts : “kicking” obstacles out
i
Space
Time
j
Train c is being scheduled
α α
Kick !
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
12
Solving conflicts : “kicking” obstacles out
i
Space
Time
j
Train c is being scheduled
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
13
Solving conflicts : “kicking” obstacles out
i
Space
Time
j
Train c is now scheduled
Train c’ is being re-scheduled
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
14
Global picture : a (μ+λ) scheme
Sélection
+
μ parentsKeep μ best individuals
λ offspring
= [3 4 5 1 2 6 8 7]
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
15
Global picture : a (μ+λ) scheme
Sélection
+
μ parentsKeep μ best individuals
λ offspring
= [3 4 5 1 2 6 8 7]
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
16
The Swap MutationSwapping 2 close by elements (d<R), T timesT realization of a binomial law Calibrated decrease (cf. simulated annealing)
[ 1 4 3 2 5 6 7 8 ]
[ 1 2 3 4 5 6 7 8 ]
R
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
17
Inoculation : The Art of the Start
Initialization : an excellent way to provide the GA with relevant problem knowledge
3 problems in 1 for the GA : 1. Fixing initial constraint violations2. Finding a reasonable starting permutation3. The actual problem
The Idea : Solving 1. and 2. once and for all How : running the algorithm once with an “empty”
incident (with delay=0) Solving 3. : Initialize population around the best
permutation obtained (the Inoculant I0)
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
18
A large and complex problem
541 trains, several 100s nodes 1 million variables 3 millions constraints
e.g. : 1 train delayed for 10 minutes inside a large connecting node (gare St-Lazare in Paris)Scheduling takes 1s per individual on averageResults average over 11 runsComparisons (GA, CPLEX, GA+CPLEX) over 24 hours
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
19
Algorithmic Settings & Experiments
GA parameters: (10+70 scheme) Evolutionary Programming Tournament Ordered Selection R=12
Inoculation Variants Mass Mutation Gradual Perturbation Layer Initialization
Experimental plan: 2 choices related wrt exploration/exploitation
Which Inoculation variant ? Constant mutation rate or not ?
Results : Easy Instances : Layers + decreasing rate Hard Ones : Mass Mutation + constant rate
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
20
The Benefits of InoculationEasy Instances
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
21
The Benefits of InoculationHard Instances
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
22
The Benefits of InoculationHard Instances
Inoculation & Train Timetabling - Semet&Schoenauer - GECCO'06 - Jul. 12th'06
23
ConclusionsDrawback: a lot of time and efforts as well as large expert knowledge required to design the scheduler : not easy to adapt to other contexts/problemsBut a clear success for this problem: 1. Natural formulation : usable for decision support2. Efficiency : good solutions quickly
Inoculation: from tie/defeat to victory vs. CPLEX1 minute of delay = 1000 $1 incident in 1 city per day = 21.9 million dollars yearly potential savings And, if parallelized, not so far from real-time use{semet,marc}@lri.fr
Recommended