Cite this paper as: Rousseau JM., Desrosiers J. (1995) Results Obtained with Crew-Opt: A Column Generation Method for Transit Crew Scheduling. In: Daduna ...
Results Obtained with Crew-Opt: A Column Generation Method for lhmsit Crew Scheduling
Jean-Marc Rousseau; GIRO Inc, Montreal, (Quebec / Canada) Jacques Desrosiers; GERAD, Universite de Montreal, Montreal, (Quebec /Canada)
Abstract: Crew-Opt is a $et-covering method that uses column-generation to produce nearly optimal solutions to crew scheduling problems. We presented this method at the previous workshops. Since that time, we have been using Crew-Opt in a number of experiments and practical trials for a wide range of situations. We will review the basic principles of this method and report on our work with complex public transit problems. Further development carried out at the University of Montreal (GERAD), together with the rapid increase in computer CPU speed, opens up the possibility of solving large crew scheduling problems optimally with this approach. 1
Introduction
The Crew-Opt methodology for crew scheduling is based on the set-covering (or partioning) formulation of the problem. This formulation is natural and has been used by many authors (see Wren and Rousseau (1993) for a survey). Theoretically, this method requires that all feasible (duties) workdays be generated to guarantee the optimality. In practice, however, this is not possible since there could be millions of such feasible duties. Authors have used several methods to overcome this obstacle: 1
Generating only "good" potential duties for the problem under consideration.
2
Dividing the problems into smaller entities easier to solve.
3
Generating a large number of potential duties and solving the resulting set-covering problems with a heuristic method.
These approaches have been claimed successful in specific applications. Nevertheless, the difficulty remains that while an optimal solution contains mostly efficient duties, a few inefficient duties are needed to complete the puzzle that constitutes a crew scheduling problem. The idea of using a column-generation method in conjunction with the set-covering I partioning formulation was taken up by Martin Desrochers (1986). Two papers (Desrochers (1988) and Desrochers I Gilbert I Sauve I Soumis (1992» were published on this method in previous proceedings of workshops on transit scheduling and one paper appeared in Transportation Science (Desrochers I Soumis (1989». We focus here mainly on the results
J. R. Daduna et al. (eds.), Computer-Aided Transit Scheduling © Springer-Verlag Berlin Heidelberg 1995
350 obtained in various contexts and look at the future direction of research with this method. However, for the sake of completeness, the method is described briefly. Interested readers should consult the papers cited above. Figure I summarizes the various approaches based on the set-covering I partioning formulation of the problem. _ a t . __
---
-.."...at.1""'I_ 5 + h ..
D
1 1f~ Fig. 1: Solving the set partioning (covering) approach to transit crew schedule problem
With the column-generation method, the fIrst objective is to search for the linear programming solution by relaxing the integrality constraint. This is achieved by solving a sequence of LP problems on a subset of feasible duties. An initial solution could either be obtained from an initial set of good duties, or directly from a solution composed only of trippers. After each LP solution, the dual variables are used to generate new duties with negative reduced costs susceptible to improve the current LP solution. When it becomes impossible to fInd a feasible duty with negative reduced cost, the LP optimal is reached. A specialized branch and bound is then initiated. At each step of the branch-process, the column-generation method is also used to solve the LP at the given node of the branch and bound tree. Finally, the problem of generating feasible duties with negative reduced cost is formulated as a shortest path problem with constraints. The network on which the shortest path is generated is illustrated in Figure 2. Nodes represent the task's start and end time (a task is the work to be done between two consecutive relief points). Two types of arcs are generated to represent pieces of work (P) and breaks (b), in addition to the starting and ending arcs of a duty (not represented in the figure).
351 p
p
p
bloc), 1
p
bloc), 2
Fig. 2: Shortest path network
2
Results of utilization and experimentation
The Crew-Opt methodology is distributed exclusively by GIRO Inc. The company participated actively in its development. GIRO currently proposes it to customers to solve smaller problems exactly. This method is particularly fitted for transit operations that assign drivers line-by-line. The Lyon and Toulouse transit companies in France have been using Crew-Opt for several years. We recently tested the methodology on three other real life problems with different characteristics and obtained good results, demonstrating the flexibility of the method.
2.1
The Toulouse and Lyon problems
In a certain number of ways, Toulouse's rules are typical of rules encountered in France. However, Toulouse and Lyon operate on a line-by-line basis. In this context, the cost of not reaching the optimal solution can be very high (if one additional driver is required per line, and if a line uses an average of 20 drivers, the additional cost is 5%). In Lyon the motivation to install an automatic crew scheduling system was the decentralization process that was moving to the various depots the responsibility of performing the bus and crew schedule. The personnel involved has less experience in solving these difficult problems and the management was afraid of the consequences of this lack of experience on the cost and quality of the solution. The goal of the test carried on before the installation of Crew-Opt was to insure that Crew-Opt could generate solutions with the same number of drivers and similar bonuses to the ones generated manually by their experienced schedulers. It was not expected that we could do better. Because the bus schedule was often modified manually to facilitate the solution of the crew schedules, the bus and crew schedules were often adjusted together and tightly coupled. In both the Toulouse and Lyon problems, two types of duty were allowed: straights with a paid break ofless than Ih30 and split duty with an unpaid break of more than Ih30. To allow a reasonable lunch time, it is often prohibited to make any duty that covers entirely the lunch
352
period. The lunch period definition varies but it is most often included in the interval (llh30-14hOO). Lyon is also characterized by the presence of several bonuses and derogation constraints. Bonuses are paid for spread over llhOO and additional bonus for spread over 12hOO. Bonuses for duty time over 6h35 for straight and 8hOO for split are also paid. Split with short mealbreak (between 1h30 and 2hOO) are also compensated by 1.5 minutes per minute below 2hOO. A similar bonus is paid for splits with half-duty of less than 2hOO. Derogation constraints are as follows: o
Maximum 15% of duties with spread over 13h05 (maximum spread 13h45)
o
Maximum 5% of duties with paid time over 8h21
o
Maximum 15% of duties with meals under 2hOO for split
o
Maximum of 15% of duties with half-duty under 2hOO
ManWlI solutJon l.lne I
7 11
16 27 37 51 f - 52 56 57 64 68
Duty 33 6 24 l7 7 17
IS 19 8 9 12 10 36 38 18 23 6 9 18 II 49 19 48 12 47 II 59 16 26 9 10 81 15 17 68 7 Total bonus
A\'er~e
6hSS.03 6h57.39 6hS8.40 6hS8.39 6hS7.00 6hS8.28 6h59.38 6h57.43 6h56.02 6h57.40 6h56.20 6h58.06 6h58.09 6h58.33 6h56.40 6h57.43
6h56.30 6h57.40 6h54.44 6h58.15 6h56.14 6hS7.IS 6b58.25 6b56.25
Cftw-upt aoIution
Bonus 6h20 OhlS 2h03 Sh40 Ihl7 2h37 2h03 01154 3hl2 Ih09 3h45 5h07 IOh33 2h1O 01136 Ih02 8b24 4h50 OIIS2 3h35 3h20
Ohoo
6h04 Oh02 75h50
Tab. 1: La Soie depot
",erage 6h5!!.14 6h57.39 6h57.21 6h50.21 6hSO.OI 6b58.07 6hS7.36 6h57.36 6h5S.37 6h56.13 6hS7.54 6h53.00 6h57.37 6h58.l0 6b5S.13 6h55.27 6h56.44 6h57.40 6h57.00 6h5S.11 5h56.13 6h5S.42 6b5S.l9 6M3.0S
8I)IlWi
4hl4 OhOO
2M3 Sh37 2hOO 2h40 IhSI IhSI 3h08 IblO 3hSI 4MS 101125 2b53 01155 Oh43 6hS3 Sb04 OM8 3h37 3h02 Oh02 5Mb 01102 73h20
353
Table 1 shows an example of the solutions obtained by Crew-Opt compared to solutions obtained by experienced schedulers. In each case, the same number of duties without trippers was obtained and all constraints respected. Similar results were obtained for Toulouse. These results required between 15 minutes and 3 hours of execution time on a 386 PC. 2.2 The Barcelona problem The crew scheduling problem in Barcelona is typical of Mediterranean cities. A large number of straight duties are required overall; 81 % during weekdays, 88% on Saturday, 92% on Sunday and holidays. To be considered as a straight, a duty must have a break of less than 20 minutes; maximum spread is also very low at 10 hours. The crew schedule is built line-by-line. I.Ine
r--HMi'rUS-Mlcm with manual adjustment
Stnllgbt duly I () trippers II 12 19 31 32 33 34 45 76 14 16 20 27 43 64 22 41 Total
12 8 19 12 12 12 (1)25 25 15 27 28
pUt duty
5 4 ~
35 25
5 5 3 5 5 5 2 5 II 7 8 10
2ll
II
17 345
5 101
22 23
Cost 2310 16 10 32 15 2334 2334 1 675 4.0 19 4045 262 1 3.842 4432 4308 3.980 5 695 4.773 5202 2832 59,227
Crew-Opt Strai..:ht duty ()bippn
pUt duty
336
102
t
I
2298 1602 3199 2325 2323 1668 4 020 4.043 2575 3.820 4,392 4.241 3928 5649 4.763 5155 2.824 58)125
nl 1... lgbl duU ..11h H STt...' · \11 nYrnanl1ll: 77.J1JI, nl 1... lglIl dull ..11h CI"t"'opl! 76.7 t;r. lit roductlnn nl d.h . : 1.8 ~ ~ 01 rtductlon nl
'lU
'11 .,,.
.
,
I
I '
'1
'&c.,.
I~u
I
. '
,
..
'''51 ItU
'''"
.
,
It.
.. ,.. ,.... ,
c... I'
"' 1
'1
10\0
" J~ '$I",
"I
.
I"
""
,
1111)
I'
"'1
. ..
"I I 1111
" I I·
>0.
.. .,
,
.
,
'1 I"
,.
.
1,101
l'O)O "09
z....
,
I I"
16.
.. I I'" llO" tlt'l
1111
UUCI
I '1
IAHi ,,11,.
,.g,
• "oN.'",
.
un
1..
1····· .. 1 I'
"," IOU
IN
..
II
,
II
'N
..
,
In:)
,
... ..., ,.. ""
I ....
,
'1\,11011
.ro,I· · .... ······ .. ····1
I
.
",
1t..1I101t9
I"
··11 .. ···· "I
....
..
"I
'.", "51
ml
11
ctl
.. ,..
Zi.
'''1 I· .. · .. ···········11··· .. ····1
'11
"
,
I I
I I
------------------:I 'UI . . . . . .. ",.t.IU.L
,------------------1
Fig. 3: Examples of the types of generated duties
,..
h41
n ..
356 In all cases, drivers must have a minimum break after a maximum of 2h50 of continuous driving. In addition, breaks of 40 minutes must be provided during meal time in the morning, at noon, and in the early evening. As a consequence of the break and mealbreak constraints, workdays are composed of several pieces of work, sometimes up to 6 pieces. Figure 4 gives some examples of the types of duty generated.
....,.
..",
..."
• .,u, lu.nUu_u" 1 . .... .,.,.'1 ~H . . .
IIti
,.tI
.. , n
I
un uu
II
IUJ 'UI
.n' • .,:n n .... 1
1) ' . "
I. . . . .
.",I>""""UII",". IU . ..
,,,,,,,n.,..n.. ,.,, .. ,,.. ,.
I. n "
n'I •• '
"~nl ,,,.
'u
".1
... "."u , IU
nu
.,.n""JOuu.,
un
''''"Jou ••• uu...
.. .. n U n .. n
U,
I"n.
t i l tI,
", I
I •••• j
'" '4 '
''''
.......... n ..
,.,,, .. ,n1>'..... '0. ItU
UII
.... .........
IU1>,:.,nnu,n1>.n
PH l1n
III.
un
lUI
'HO
un " '1
" ,",un" .. "n" ... " UII
""
" nn"",,,,.,Uloe
"",."",nn
,...,. ..u. ,......,. ". . ,,) II "
un u"
"11
" n U ll
...... ,...... 'u .., ...
Ul '
1U I
..""""" ""),.10).,,, .
toO,
""n1> ••• ', UI
'I'
• •• , ••.""),., .. " " , , ,
III
H ....
",1
." ••• ,l"'U,
' ~'1>1>'.1>')""."~
na
JI"
' ..... " •• 1 U",,,UK I. U
)II)
IUJHn.". HU
IU.
un
'ill
I,Jo "",.,uu n
In l nil
"~u.
j'"", ......,,,,, •• ,
41 t
n u n n u u .. ,
II"
" .. ,,,n,,,,,,u .
'1"
"1>",."",,,_.
uu
un
, ••• ",,,..
11K 'U I
,~,
" "..
I I " I '"
14u
... u.n .............. ,
lin 111)
"1' )," . ,,~.
,.n,
"" ".,..... ,u,
IIU
'U'
.n l
til
111 II
""
n'
. . u .... u .... , . . .
••,»" .... , •• ",. .. " " .
.....
lin
Pit
I)t
tJ.~n~~ .. . ,.
... ,"'.10."'1 ... 1 11 I-I
I U~'
. ,'
flI'11..,..
, ........... .0 ••
P~1
" .. n . . . . . . . . . . . . ,
In U ' ,n
AU I II
'u.u.
PH
II"
n).~~","H .. "~n)'~ 1
InH
,,
, ........... nuun
I'n"'.....".,.,.. 1
H-t Inl
.
.....
uu un
'H), , , . H U ) U . ' ' ' ,
lUI
..,
In
I.U
u,..,It••
Uti
It.
.. n ' .... ,
.... uu ......
"It
u.,
.""OU •• HoU...
J.,
U'
... u.~
, ••• , , ..".,.. " •• lue l i n ,,,,
lUI 1IU 1411
UN
., , un
HU
I).
I
In 1U In
. . . · " ,. . . . "'"UHI I f. I lL
...
lU, . . . . . ,
I"
IHI It PII
1"UU"UU,,_ IJIt Ull
l.nuU ....... n. 1111
U
. ",
n"lU I
r
Uti "UU")~H~'"
r ...
,
....
,"1>' •• " h , 1
,,,.
,"U1>U,,).
In;
un
1"'UUh.
. " . UI)
IUII.U
Fig. 4: Examples of the types of generated duties
Although the average working time is 7hlO, this is not a constraint because it seems impossible to reach a higher average with all the other constraints and the train schedules. The objective was thus to reduce the number of drivers without generating any trippers. While we tried the RASTUS-Micro algorithm on these problems and got reasonable solutions, there were always some trippers which was not acceptable for JR.
Crew-Opt method was applied on two problems. It could solve the fIrst problem of 77 workdays directly, while the second problem of 160 workdays had to be decomposed. Results compared with the JR solution are presented in table 4.
357
Solution (Nanbu)
Manual Number of workdays Number of strai I!h IS Number of oycmighL\ Total ~pread Avcral!c creditcd timc Avcragc plaifonn ume AvcraJ!.c spread
77 2S 26 699h36 5hS4 4hlO 9h05
Cr:ew·Opt 65 19 23 625h40 6b57 4b58 9b38
Solutloo (Sobo)
l\fanlJIIJ 162
60 51 l464bl2 6b07 4bl4 9b02
~w..()pt
156 54 51 1379b08 6bl9 4b26 8h50
A.....~ .... calculaltd por wo/iulay.
Tab.4: Results of Crew-Opt on JR's problem
On the smaller problem (Nanbu line), the deviation from the optimal LP solution is very small and we are almost certain to have the optimal solution in terms of the number of drivers. The second problem was decomposed in three subsets of the vehicle schedule and each subset was solved by Crew-Opt. Following the fIrst optimization, the less efficient duties were freed and reoptimized globally with Crew-Opt. In the JR case, we used a heuristic to obtain an integer solution from the LP solution. The method could be called a branch onl y strategy, where at each step of the process, one variable was selected and fIxed to a value of 1 before the problem was reoptimized with column-generation. To understand the large savings that Crew-Opt generated, it is important to note that for JR, rules are understood as lower bounds that cannot be violated. The schedulers attempt within their budget to give the drivers better working conditions. Crew-Opt was thus also used to estimate the impact on the costs of increasing some of the minimum found in the rules. The JR test was done on a very tight schedule which prevented us from improving the methodology and reducing the computer time required to solve the larger problem. Also, we could not use the most computer-efficient version of Crew-Opt, as it was still under development at the University of Montreal. This new version will soon be integrated into RASTUS. The computer time required to solve these large JR problems was in the order of 24 hours on a Sun Spare 10/31. We believe this time could be reduced by a factor of 5 by better calibration and by using the new version of the program. Availability of faster computers will also further reduce the computer time.
3
Conclusion Our experience on the complex JR problem led us to believe that Crew-Opt could solve much larger and more complex problems than previously attempted with the method. In fact, very large airline crew scheduling problems can be solved to near optimality with this approach. Another paper in this conference presents results in the airline context
358
We strongly believe that larger transit crew scheduling problems could be solved to proven optimality in the near future with this approach. GIRO is committed to pursuing in this direction with the research team at the University of Montreal. We will also explore in the near future how Crew-Opt and the standard HASTUS algorithm could be combined to provide the transit industry with even better and more efficient solutions to their crew scheduling problems.
References Desrochers, M. (1986): La fabrication d'horaires de travail pour les conducteurs d' autobus par une m~ de g~nmtion de colonnes. Ph.D. thesis, Report #470, Centre de recherche sur les transports, Universi~
de
Montr~al.
Desrochers, M./Soumis, F. (1988): Crew-Opt: Crew scheduling by column generation. in: Daduna, J.R. I Wren. A. (eds.): Computer-Aided Transit Scheduling. (Springer) Berlin, Heidelberg, New Y