Models and Algorithms for Ground Staff Scheduling on Airports

Size: px
Start display at page:

Download "Models and Algorithms for Ground Staff Scheduling on Airports"

Transcription

1 Models and Algorthms for Ground Staff Schedulng on Arports Von der Fakulta t fu r Mathematk, Informatk und Naturwssenschaften der Rhensch-Westfa lschen Technschen Hochschule Aachen zur Erlangung des akademschen Grades enes Doktors der Naturwssenschaften genehmgte Dssertaton von Dplom-Informatker Jo rg Herbers aus Haselu nne Berchter: Unversta tsprofessor Dr. Drs. h.c. Hans-Ju rgen Zmmermann Unversta tsprofessor Dr. rer. nat. Juraj Hromkovc Unversta tsprofessor Dr. rer. nat. Peter Rossmanth Tag der mu ndlchen Pru fung: 14. Ma rz 2005 Dese Dssertaton st auf den Internetseten der Hochschulbblothek onlne verfu gbar.

2

3 Abstract The plannng of arport ground staff gves rse to a number of challengng optmsaton problems. Ground handlng workloads are naturally represented as work tasks, e.g. for baggage unloadng or passenger check-n. These workloads must be covered by approprate employees. Staff schedulng s usually carred out n several stages: In demand plannng, workloads are aggregated and analysed, n shft plannng, approprate shft dutes are generated, and rosterng conssts n generatng lnes of duty for the workers. These phases are strongly nterrelated, and dfferent optmsaton problems have to be solved at each stage. Workforce schedulng models have tradtonally bult upon aggregate labour requrements gven n dscrete tme perods. However, the lterature does not descrbe any models or algorthms for the generaton of approprate workload representatons. Addtonally, t wll not always be suffcent to cover coarse-graned abstractons of workloads. If nformaton on flghts as well as passenger and load fgures are suffcently exact, we wll rather be nterested n drectly coverng ndvdual work tasks. Furthermore, shft schedulng and rosterng approaches have regularly taken specal assumptons or nvestgated smplfed problems, lmtng ther practcal applcablty. In ths work, we tackle optmsaton problems at dfferent plannng stages. We show how n the presence of movable tasks, we can obtan a sutable demand curve representaton of workloads, usng a levellng procedure whch combnes aspects from vehcle routng and resource levellng. Furthermore, we devse two algorthms for task-level shft plannng whch relates to vehcle routng and shft schedulng models. The frst method s an mprovement procedure, buldng upon the results of a constructon phase and dealng wth a complex shft plannng settng. The second algorthm focuses on a subclass of task-level shft plannng and s able to solve many problems to proven optmalty. Fnally, we desgn an algorthm for complex cyclc rosterng on the bass of aggregate workloads. The approach bulds upon a novel model for representng flexble breaks and solves the shft schedulng and rosterng stage smultaneously. Models and algorthms proposed n ths thess are more ntegrated and tackle more complex settngs than prevous approaches. We employ modern constrant programmng and nteger programmng soluton technques, ncludng column generaton and branch-and-prce. For the novel optmsaton problems treated n ths work, we provde complexty results. All algorthms are evaluated on complex large-scale test cases from the practce of arlnes, arports and ground handlng companes.

4

5 Zusammenfassung De Planung von Bodenpersonal an Flughäfen benhaltet ene Rehe anspruchsvoller Optmerungsprobleme. Das Arbetsaufkommen für Abfertgungsdenste wrd typscherwese n Form von Arbetsaufträgen dargestellt, z.b. für de Gepäckentladung oder für Check-n-Denste. Deses Arbetspensum muss durch geegnete Mtarbeter abgedeckt werden. De Planung wrd üblcherwese stufg durchgeführt: In der Bedarfsplanung wrd das Arbetsaufkommen aggregert und analysert, n der Schchtplanung werden geegnete Schchtdenste generert, und n der Denstplanung werden Denstpläne für de Mtarbeter erstellt. De enzelnen Phasen snd dabe eng verzahnt, und auf jeder Stufe müssen verschedene Optmerungsprobleme gelöst werden. Personalplanungsmodelle bauen tradtonell auf aggregerten Bedarfszahlen auf, de n dskreten Zetschrtten angegeben werden. Für de tatsächlche Genererung ener solchen Bedarfskurvenrepräsentaton snd n der Lteratur allerdngs kene Modelle oder Algorthmen beschreben worden. Darüber hnaus st ene Planung auf Bass grober Bedarfszahlen ncht mmer ausrechend. Wenn hnrechend genaue Informatonen über abzufertgende Flüge und Passager-/Gepäckzahlen zur Verfügung stehen, st man velmehr daran nteressert, de enzelnen Arbetsaufträge zu verplanen. Schcht- und Denstplanungsansätze n der Lteratur gehen zudem durchgehend von spezellen Annahmen aus oder behandeln verenfachte Probleme, was hre praktsche Anwendbarket enschränkt. In deser Arbet werden Optmerungsprobleme für verschedene Planungsschrtte gelöst. Es wrd gezegt, we ene geegnete Bedarfskurvendarstellung unter Berückschtgung verscheblcher Aufträge generert werden kann, ndem Elemente des Vehcle Routng und des Resource Levellng kombnert werden. Darüber hnaus werden zwe Algorthmen für de auftragsbaserte Schchtplanung entwckelt, de auf Modellen des Vehcle Routng und des Shft Schedulng aufbauen. De erste Methode st en Verbesserungsverfahren, das auf den Ergebnssen ener Konstruktonsheurstk basert und en komplexes Schchtplanungsproblem behandelt. Der zwete Algorthmus bezeht sch auf ene Telproblemklasse und löst vele praktsche Problemnstanzen bewesbar optmal. Schleßlch wrd en Algorthmus für de Erstellung komplexer Schchträder auf Bass ener aggregerten Bedarfsdarstellung konzpert. Der Ansatz baut auf enem Modell zur mplzten Darstellung flexbler Pausen auf und löst das Shft Schedulng- und Denstplanungsproblem smultan. De Modelle und Algorthmen n deser Arbet snd stärker ntegrert und berückschtgen komplexere Nebenbedngungen als frühere Beträge. Moderne Technken des Constrant Programmng und der ganzzahlgen Programmerung (enschleßlch Spaltengenererungs- und Branchand-Prce-Ansätzen) werden engesetzt. Für de vorgestellten neuartgen Optmerungsprobleme werden Komplextätsuntersuchungen durchgeführt. Alle Algorthmen werden auf großen, komplexen Testfällen aus der Praxs von Fluglnen, Flughäfen und Bodenverkehrsgesellschaften evaluert.

6

7 Acknowledgements Ths work has been carred out at the arport dvson of INFORM Insttut für Operatons Research und Management GmbH. Many people have contrbuted to ths thess n one way or the other. Frst, I would lke to thank my doctoral advsors. Prof. Dr. Drs. h.c. Hans-Jürgen Zmmermann ntally made ths work possble, and I am very grateful for hs valuable support and feedback. Prof. Dr. Juraj Hromkovč was so knd to act as referee even f ths entaled an addtonal burden wth hs new poston at ETH Zürch. I would lke to express my grattude for hs support and comments on earler drafts of ths work. Thanks also to Prof. Dr. Peter Rossmanth for actng as an addtonal co-referee. Specal thanks go to Adran Weler for leadng me to ths challengng feld of research and for hs nterest n my work, and to Thomas Schmdt and Usch Schulte-Sasse for ther encouragement. I am partcularly ndebted to Werner Semes who leads the plannng development group at INFORM s arport dvson. Wthout hs support, ths work would not have been possble. Torsten Fahle provded me wth numerous comments and suggestons, and I am very grateful for the frutful dscussons. Hs extensve proof-readng down to the smallest ndces has consderably contrbuted to the qualty of ths thess. Specal thanks also to Ulrch Dorndorf and Tuomo Takkula for dscussons, suggestons and comments on earler versons of ths work. Chrstan, Danel, Melane and Wolfgang deserve my grattude for further correctons and suggestons. Chrstof, Dmtra, Jula, Smone and Tom were not only colleagues, but have become real frends, and ther support has meant a lot to me. Thanks also to Andrea, Alex, Bernd, Frank, Holger, Melane, Mchael, Oll, Sunl, Clementne and Fch for the pleasant workng envronment, the motvatng atmosphere and the gudance wth the optmsaton problems and the plannng system. Chrstan was an nsprng partner for lunchtme dscussons durng my short return to student lfe. The staff at Dash Optmzaton was very ambtous n provdng me wth suggestons for tunng the cyclc roster algorthm. My sncere grattude goes to my parents who made ths possble, for supportng and encouragng me durng the years. Specal thanks also to my brothers Jens and Ulf for ther support. Last but not least, specal thanks to Katrn for her patence, love and encouragement throughout all ups and downs of my work.

8

9 Contents 1. Introducton Arport Ground Handlng Plannng Processes and Objectves Task Generaton Demand Plannng Shft Plannng Rosterng Related Work on Workforce Schedulng Relatonshp to Vehcle Routng and Schedulng Contrbutons of the Dssertaton Structure of the Document An Annotated Bblography on Workforce Schedulng Introducton Shft Schedulng Approaches Day-Off Schedulng Approaches Shft Assgnment Approaches Tour Schedulng Approaches Nurse Schedulng Approaches Cyclc Roster Approaches Break Placement Flexblty and Implct Modellng Workng Subset Methods Complexty Results Relatonshp to Crew Rosterng Local Search n Constrant Programmng Constrant Programmng Large Neghbourhood Search Constrant-Based Soluton Methods for Vehcle Routng Inserton-Based Methods Partal Path Methods Dsjunctve Methods Workload Levellng n a Vehcle Routng Envronment Introducton Vehcle Routng and Resource Levellng Mathematcal Model Computatonal Complexty Constrant Model Branch-and-Bound Lower Boundng

10 Contents 4.8. Large Neghbourhood Search Preprocessng Expermental Results Conclusons and Future Research An Improvement Algorthm for Complex Shft Plannng Introducton Problem Descrpton Tasks and Shfts Qualfcatons Crews Task Splttng Task Overlappng Shft Number Restrctons Mathematcal Model Shft Creaton Unassgned Task Handlng Constrant Model Domans Shft Temporal Constrants Shft Constrants Crew Constrants Splt Task Constrants Inserton Poston Constrants Avodng Symmetry Objectve Functon Calculaton Lower Boundng Task Look-Ahead Maxmum Restrctons Mnmum Restrctons Branch-and-Bound Large Neghbourhood Search Shft Release Task Release Local Step Setup Overlap Mnmsaton Expermental Results Conclusons and Future Research Column Generaton and Branch-and-Prce Dantzg-Wolfe Decomposton Block-Structured Lnear Programs Branch-and-Prce Lower Boundng Lagrangan Relaxaton Convexfcaton versus Dscretsaton Advanced Performance Issues x

11 Contents 7. Optmal Shft Plannng by Branch-and-Prce Introducton Computatonal Complexty A Flow Model Dantzg-Wolfe Decomposton Column Generaton Branch-and-Prce Problem Decomposton Expermental Results Conclusons and Future Research Implct Modellng of Flexble Break Placement Introducton Basc Set Coverng Formulaton Flexble Break Placement Shft Schedulng wth Breaks Avodng Extraordnary Overlap General Shft Schedulng wth Multple Breaks Acton Tme Transformaton Expermental Results Conclusons and Future Research Cyclc Roster Generaton by Branch-and-Prce Introducton Problem Descrpton Modellng Approaches Encodng Week Transtons Integer Programmng Model Week and Lnk Generaton Integer Branchng Subcycle Branchng Generalsatons Expermental Results Contrbutons and Future Research Summary and Outlook 217 A. Mathematcal Symbols 221 B. Acronyms and Abbrevatons 227 B.1. Acronyms B.2. Abbrevatons C. Overvew of Workforce Schedulng Lterature 229 C.1. Overvew by Models C.2. Overvew by Soluton Methods C.3. Overvew by Anonymous and Named Models C.4. Overvew by Applcaton Areas References 235 x

12 Contents Index 253 Currculum Vtae 259 x

13 Lst of Fgures 1.1. Typcal workloads at an arport over the day Plannng stages n arport ground staff plannng Task generaton Work tasks relatng to arcraft arrvals, departures and groundtmes Tour plannng and demand curve Demand-level shft plannng Task-level shft plannng Weekly roster for three employees Cyclc roster for fve employees Overvew of contrbuted algorthms Basc deas of constrant-based methods for vehcle routng Basc settng of workload levellng: (crew) tasks n tours, demand curve Temporal relaton of crew tasks Structure of the search tree Base hstogram: crtcal, near-crtcal and non-crtcal tasks Temporal nfluence over crew tasks Objectve functon development on scenaro B Structure of a shft wth orgn, destnaton and break tasks Task-level shft plannng Handlng of task crews and subcrews Task splttng Structure of a splt task Temporal propagaton for splt and non-splt tasks and for travel tmes Search tree structure Coverng tasks by empty shft templates Example from scenaro C12: partal soluton before mprovement Example from scenaro C12: partal soluton after mprovement Column generaton process Buldng blocks of shft plannng problem for varable set U := {u 0, u 1, u 2, u 3 } and clauses C := {{u 0, u 1, u 2 }, {u 0, u 1, u 3 }} Soluton of cost 2(p 2 q + pq 2 ) pq + p + q = 94 for the example Network constructon example Blockangular structure of the flow model Example for shfts wth flexble breaks Break attrbuton as a transportaton problem Cuts n the break attrbuton network

14 Lst of Fgures 8.4. Cuts leadng to domnated constrants Example network for equvalence proof of mplct break handlng Graphcal llustraton of varable sets n forward/backward constrants Colourng of a comparablty graph Example for further separaton of shft classes Component segments of shfts and demand perods Demand curve of scenaro C Cyclc roster example Workstretch encodng Week encodng Roster contanng dsconnected subcycles Dsconnected subcycles Transportaton problem for numbers of days on/off Transportaton problem for shft start tmes on successve days Two-dmensonal transportaton problem for week transtons Forward and backward constrants n two dmensons Week lnk encodng Structure of the lnear program Partton of week nto backward net part and forward net part Exemplary expansons n the forward net Weeks and lnks generatng dsconnected subcycles Generalsed week lnk encodng for weekends off xv

15 Lst of Tables 4.1. Scenaro data Preprocessng runtmes and results Results of large neghbourhood search based on GF results Fnal numbers of steps and tasks n large neghbourhood search Overall effect of GF preprocessng Effects on global demand maxma and travel tmes Overvew of task-related varables n the CP model Overvew of shft-related varables n the CP model Scenaro data Scenaro data (contnued) Parameters of release strateges Average mprovement of objectve functon Shft costs and utlsatons Fnal steps and stepwdths Average numbers of parts per splt task Changes n total overlappng Scenaro data Decomposton results Graph constructon Branch-and-prce results Runtme data Shft cost mprovement by LNS and branch-and-prce Comparson of results Scenaro data Demand curve characterstcs Number of demand perods after acton tme transformaton Results of BREAKPARTITIONING and addtonal spltup Szes of LP representatons for dfferent break formulatons Runtmes for LP relaxaton of tour schedulng model Comparson of dfferent cyclc roster formulatons Workng subset reducton Scenaro data Vald successor shft types on days on and off Number of forward/backward net states and potental lnks LP relaxatons before and after week cut Integer soluton data Runtme data Number of branches of dfferent types

16 Lst of Tables Results of runs wth weekend-off constrant C.1. Overvew of publcatons on dfferent models C.2. Overvew of soluton technques C.3. Overvew of publcatons on anonymous and named schedulng C.4. Overvew of applcatons xv

17 1. Introducton The best scentst s open to experence and begns wth romance the dea that anythng s possble. Ray Bradbury 1.1. Arport Ground Handlng Today s arlnes and arports are facng an enormous cost pressure. Several crses have adversely affected the busness, ncludng September 11th, war n Iraq, SARS and the world economc stuaton. Insolvences of major carrers reflect economcal problems whch are partly self-nflcted and partly due to external factors. Increasng ol prces are a new threat to the recovery of the arlne busness. In spte of ths, busness has recently reganed growth rates of earler years. In the frst three quarters of 2004, worldwde ar transport passenger klometres have ncreased by 17.7% and freght tonne klometres by 14.1% over the precedng year [IATA, 2004a]. Low cost carrers and new markets n Asa are the man drvers of growth. By 2010, the Internatonal Ar Transport Assocaton (IATA) expects 2.2 bllon passengers per annum whch s 600 mllon more than n 2003 [IATA, 2004b]. In vew of new compettors and the growth of the ar transport market, arlnes try to cut ther costs and ncrease compettvty. Beneath fuel costs and crew personnel, ground handlng actvtes represent a major cost factor [Brusco et al., 1995]. Handlng tasks can be dstngushed by planesde (ramp) operatons and passenger servces [Ashford et al., 1997]. Tasks on the ramp nclude baggage handlng, arcraft cleanng, refuellng, water servces, bus transportaton, cargo and caterng, load plannng and control, traffc control, towng and de-cng. Passenger servces manly refer to check-n, boardng, tcketng, help desks, sales reservaton offces and backoffce actvtes. Beyond these basc tasks, arcraft mantenance and securty checks must be consdered. At ther base arports, arlnes usually accomplsh these tasks by ther own personnel. Alternatvely, arports and ground handlng companes offer ground handlng servces to arlnes. Wth ncreasng deregulaton, nternatonal handlng companes wth worldwde subsdares see ther market shares growng. Clearly, effcent plannng of staff s crucal n controllng costs. Due to the sze of arport operatons, even small mprovements translate nto large savngs. As an example, Holloran and Byrn [1986] reported savngs of approxmately sx mllon dollars by the ntroducton of an automated staff schedulng applcaton at Unted Arlnes. Further eght mllon dollars per annum have been saved by the ntroducton of an mproved system n 1994 [Brusco et al., 1995]. Ground staff schedulng s a very complex task. Plannng frequently nvolves several hundred employees, several thousand work tasks per week and multtudes of constrants. Arports often work on a contnuous bass wth operatons on 24 hours, seven days a week. Workforce demands are subject to hgh varatons at dfferent tmes of the day. Arlnes often use the hub-and-spoke prncple, meanng that connectng flghts from smaller arports are bundled at larger statons n order to mnmse passenger transfer tmes for long-haul connectons. Ths practce as well as commuter actvty of busness people result n three, four or even more pronounced peak tmes of hgh workload wthn each day (see Fg. 1.1) [Ashford et al., 1997]. 1

18 1. Introducton 06h 07h 08h 09h 10h 11h 12h 13h 14h 15h 16h 17h 18h 19h 20h 21h 22h 23h Fgure 1.1.: Typcal workloads at an arport over the day. Manual schedulng s a tedous and error-prone task, and t frequently takes planners several hours or even days to prepare staff plans by hand [Dowlng et al., 1997] [Yu, 1998]. Processes are dffcult to overvew by planners, and dfferent resources are tghtly coupled [Ashford et al., 1997, p. 185] [Yu, 1998, p. xv]. At large arports, t s normally mpossble to handle staff wthout computer support. All arlnes, arports and ground handlng companes nowadays make use of schedulng systems. In the lterature, several arlne-specfc systems have been reported, e.g. at Ar Canada [Nobert and Roy, 1998], Altala [Felc and Gentle, 2004], Pan Am [Schndler and Semmel, 1993] and Unted Arlnes [Holloran and Byrn, 1986] [Brusco et al., 1995]. Much progress has been made snce the development of the frst ground staff plannng systems. Schedulng software s nowadays requred to flexbly adapt to changng work rules, problem characterstcs and szes of operatons [Dowlng et al., 1997]. Clearly, the development of advanced plannng systems s tself a costly nvestment. Many arlnes, arports and ground handlng companes therefore resort to generc software packages, ncludng advanced optmsaton components and powerful graphcal user nterfaces, see e.g. Khoong and Lau [1992], Khoong et al. [1994] and Dowlng et al. [1997]. Ths work deals wth offlne aspects of ground staff plannng,.e. the estmaton of workloads and the generaton of staff plans several days or weeks before operatons. Ths means that workloads for the plannng perod are calculated from a fxed flght schedule, forecasted passenger and baggage fgures and servce agreements between arlnes and ground handlng departments or companes. We wll not deal wth real-tme aspects,.e. ssues lke short-term schedule changes or nterruptons due to flght delays or llnesses wll not be consdered. The optmsaton models and algorthms developed n ths work are generc and apply to a wde range of ground handlng actvtes. However, some servces may not conform to the general framework and may therefore not be covered (e.g. cargo handlng, caterng and bus transportaton). As dfferent ground handlng actvtes (lke baggage or check-n servces) stll dffer consderably, we am at concevng algorthms whch are robust on a wde range of relevant plannng scenaros. However, we wll also show how problem-specfc features can sometmes be exploted by specal soluton approaches. Ths work has been carred out as a part of an appontment of the author to INFORM Insttut für Operatons Research und Management GmbH, Aachen, Germany. INFORM markets a comprehensve sute of arport applcatons named GroundStar whch s n use at major customers all over the world. Arport users e.g. nclude Berln, Frankfurt and Moscow, ground handlng companes comprse Avapartner, DNATA, ServsAr GlobeGround and Swssport, and arlne customers are e.g. Ar Canada, Ar France, Brtsh Arways, Emrates, Lufthansa and SAS. All optmsaton algorthms descrbed n ths work are part of the staff plannng applcaton of GroundStar. In the followng, we wll gve a short overvew of plannng processes and objectves n arport ground staff plannng. We wll pont out how workforce schedulng s treated n the lterature and 2

19 1.2. Plannng Processes and Objectves task generaton demand plannng shft plannng rosterng Fgure 1.2.: Plannng stages n arport ground staff plannng. show the relatonshp of arport schedulng problems wth vehcle routng. Fnally, we wll gve a survey on contrbutons of ths thess and descrbe ts structure Plannng Processes and Objectves Plannng of ground staff nvolves several stages (Fg. 1.2). Frst, we generate work tasks based on the flght schedule for the plannng perod, forecasted load fgures and servce agreements. These work tasks represent the nput of a demand plannng phase n whch temporal demands are analysed n ther temporal evoluton and wth regard to peak tmes. In a second stage, workloads are covered by sutable shft dutes. Fnally, rosters are bult, specfyng shfts and days off for the workforce at hand. Roster generaton takes ether orgnal workloads or gven shft plans as nput. Vrtually all arport servces adhere to ths general scheme. Plannng can take place on dfferent levels. In operatve plannng, we am at actual staff plans for the day of operatons. If operatve plannng s carred out few days or weeks ahead of tme, nformaton on flghts s generally qute accurate. However, rosters are sometmes prepared for a whole flght season n advance, meanng that plannng s typcally based on a model week wth typcal flght events and arcraft loads. Tactcal plannng e.g. nvolves calculatng prces for dfferent servces, analysng work rules as a preparaton for unon negotatons, and what-f scenaros when acqurng new customers. On a strategcal level, managers wll e.g. be nterested n cost calculatons when extendng busness to new arports. Tactcal and strategcal plannngs are usually based on model weeks of typcal workloads. In the followng, we descrbe the plannng processes n more detal and gve annotatons on the sgnfcance of plannng stages under dfferent condtons Task Generaton Fgure 1.3 shows the basc scheme of task generaton, see also Dowlng et al. [1997]. A frst nput s the flght schedule, coverng flght events that are relevant to the ground handlng company or department. Each flght s made up of an arrval at the arport under consderaton, a departure and the groundtme n between. Alternatvely, flghts may consst of an arrval leg or departure leg only, e.g. f the arcraft stays at the arport for a longer perod of tme. Flght schedules often contan postonng nformaton, e.g. wth regard to arcraft stands, arrval gates and check-n counters. Task generaton often depends on passenger and baggage nformaton. Whle exact load nformaton may be avalable f plannng takes place shortly before operatons, averagng or other statstcal methods can be used to generate relable load nformaton ahead of tme. Engagement standards represent task generaton rules matchng on specfc flght events, e.g. 3

20 1. Introducton flght schedule passenger & baggage fgures engagement standards task generaton work tasks Fgure 1.3.: Task generaton. arrval groundtme departure AF8601 AF3431 examples a. arrvalrelated tasks b. departurerelated tasks c. groundtmerelated tasks baggage unloadng baggage loadng arcraft cleanng Fgure 1.4.: Work tasks relatng to arcraft arrvals, departures and groundtmes. by arlne, arcraft type, routngs, ntervals of baggage loads etc., see also Alvarez-Valdez et al. [1999], Sørensen and Clausen [2002]. As an example, an engagement standard may defne the generaton of eght cleanng tasks of 45 mnutes each for a Boeng , to be carred out wthn the groundtme of the arcraft. Especally tasks on the apron wll usually pertan to sngle flght events,.e. they can be attrbuted to ether arrval, departure or the lnk of both legs. Tmes at whch tasks must be carred out ether refer to the arrval, departure or the groundtme of the arcraft (Fg. 1.4). As an example, an arrval flght may ask for a number of baggage unloadng tasks, startng fve mnutes after touchdown and whose quantty and duratons depend on baggage fgures. In contrast, the above cabn cleanng tasks would refer to the groundtme of the arcraft. Alternatvely, work tasks can be generated for multple flghts n common. A typcal example s check-n personnel whch often serves groups of flghts, e.g. StarAllance Economy passengers. Workloads then result from the numbers of passengers to be served by a group of flghts. Arrval profles specfy how many passengers are expected to arrve n ntervals relatve to the departure tme. Queueng models are then employed to calculate counter and personnel demands, usng nformaton on typcal servce tmes per passenger and acceptable lengths of passenger queues [Schndler and Semmel, 1993] [Brusco et al., 1995]. Workloads can fnally be broken down nto work tasks for check-n personnel. Alternatvely to the aforementoned check-n example, tasks may pertan to several flghts f e.g. baggage unloadng at adjacent arcraft stands can be done by the same staff. Task start tmes and lengths wll then refer to the respectve flght events. A thrd class of work tasks does not make any reference to flght events. As an example, the number of staff at tcket and nformaton counters does not depend on specfc flghts. Work tasks wll then be specfed by absolute start tmes and duratons correspondng to the openng hours of the respectve servce. 4

21 1.2. Plannng Processes and Objectves W t Fgure 1.5.: Tour plannng and demand curve. Regardless of the mode of task generaton, the resultng work tasks have a number of propertes. As mentoned before, tasks have fxed lengths and ether start at fxed tmes (e.g. baggage unloadng tasks) or wthn gven tme wndows (e.g. cabn cleanng tasks). They must be carred out at gven postons, e.g. at an arcraft poston on the apron or at gven check-n counters. Tasks may requre workers to have certan qualfcatons, e.g. for handlng a specfc arcraft or language sklls for check-n and boardng. Cleanng tasks must often be carred out by teams of workers [Stern and Hersh, 1980]. Task generaton s the most basc step n arport staff plannng. Throughout ths work, we wll assume that work tasks for a gven department are readly avalable Demand Plannng Workloads are usually vsualsed as a demand curve,.e. a hstogram of parallel tasks at each tme of the plannng horzon. As each work task requres one employee, ths representaton allows for an easy analyss of workforce requrements. Tmes of hgh workloads are easly analysed, and planners are enabled to assess sutable shft dutes coverng more than one demand peak. Demand curves are also a common abstracton of workloads to be covered n the subsequent shft plannng phase; workloads are then usually dscretsed n steps of 15 or 30 mnutes, see e.g. Brusco et al. [1995]. Smply superposng tasks s generally not suffcent for generatng demand curves. On the one hand, t would not be clear how to fx movable tasks. Furthermore, start tme decsons for dfferent tasks are generally nterdependent snce a worker cannot cover more than one task at a tme. Especally at peak tmes, tasks wll block each other. On the other hand, we must consder that workers must travel between dfferent work task locatons. If we magne dstances between locatons on the apron, such travel tmes may consderably contrbute to workloads. A model coverng tasks by tours s therefore more approprate, see Fg. 1.5 (work tasks are orange, travel tmes are dsplayed n yellow). Each tour can be nterpreted as a sequence of tasks that must be carred out by a vehcle (e.g. a push-back tractor or baggage vehcle) or by one or several workers n turn. Superposng tasks n tours allows for an ncorporaton of mutual nterdependences between tasks and a consderaton of travel tmes (lower part of Fg. 1.5). Clearly, mnmsng the number of tours corresponds to solvng a resource nvestment problem,.e. we determne e.g. the mnmum number of requred vehcles [Brucker et al., 1999]. Especally n staff plannng, we wll be nterested n avodng unnecessary demand peaks. Ths can be acheved by placng movable tasks at tmes of low workload and by avodng travel tmes. In general, a smoother demand curve wll also provde a better bass for demand-based shft plannng as descrbed n the followng secton. The assocated problem of smoothng labour requrements wll be called the workload levellng problem. In the lterature, authors have consstently assumed that work tasks are fxed n tme and gnored travel tmes between dfferent locatons, see e.g. Schndler and Semmel [1993], Brusco et al. [1995] and Dowlng et al. [1997]. Only Nobert and Roy [1998] deal wth the levellng of ar cargo 5

22 1. Introducton workloads. The levellng of labour requrements that are gven by movable tasks at dfferent locatons has not yet been descrbed n the lterature Shft Plannng Shft plannng amounts to coverng workloads by sutable and cost-effcent shft dutes. On arports, employees who are assgned the shft dutes are usually not known n the plannng phase,.e. shft plannng s anonymous plannng. The alternatve replannng of gven shfts or rosters wth gven staff nformaton s less dffcult and wll not be part of ths work. Anonymous plannng e.g. mples that qualfcaton requrements can only be consdered on an aggregate level. Shft types are a basc noton n ground staff plannng. Each shft type defnes a vald startng and endng tme for a shft duty and prescrbes one or several meal or relef breaks, see e.g. Koop [1988]. A gven shft type may be vald on some or all days of the week. Shft type costs reflect actual labour costs or penaltes for undesrable shfts, e.g. nght shfts. Each shft used to cover labour demands thus ncurs costs as gven by ts shft type. Arport shft plannng usually nvolves between 10 and 600 shft types. Due to strongly varyng demands throughout the day, workloads can be covered more effcently f the shft model allows for much schedulng flexblty [Baley and Feld, 1985] [Brusco, 1998]. Shft types and break rules result from state and federal laws, unon agreements, company polces or practcal consderatons [Buffa et al., 1976] [Aykn, 2000]. In the European Unon, the workng tme drectve 93/104/EC of 23 November 1993 wth amendments 2000/34/EC, 2000/79/EC and 2002/15/EC [EU, 1993] [EU, 2000a] [EU, 2000b] [EU, 2002] gves a framework for admssble shft models. Especally relevant to the ground handlng sector s the Councl Drectve 2000/79/EC of 27 November 2000 [EU, 2000a], concernng the organsaton of workng tme of moble workers n cvl avaton. The workforce of arlnes, arports and ground handlng companes s usually made up of fulltme and part-tme employees. The base workload s then covered by full-tme staff wth typcal shft lengths of between eght and eleven hours and up to three meal and relef breaks [Bechtold, 1988]. Planners often try to use full-tme shfts whch cover at least two peak perods wthn the day. In contrast to full-tme staff, the use of part-tme employees s often restrcted by unon regulatons. However, part-tme shfts of typcally four or fve hours length are known to be mportant for flexbly coverng labour requrements [Holloran and Byrn, 1986] [Schndler and Semmel, 1993]. When generatng a shft plan for gven workloads, dfferent overlappng shft types compete n coverng workloads. If an arport operates 24 hours, 7 days a week, shft types not only overlap wthn the day, but also spll over between days. Shft plannng problems for such contnuous operatons are therefore more complex [Ten and Kamyama, 1982]. Shft plannng can ether be based on workloads as gven by a demand curve, or t can be drectly based on work tasks [Ernst et al., 2004]. Demand-level shft plannng ams at coverng workforce requrements per tme perod (e.g. 15 mnutes) by a cost-mnmal set of shfts (Fg. 1.6). Ths vew of shft plannng s well-establshed n the practce of plannng on arports as well as n other servce ndustres, see e.g. Ten and Kamyama [1982], Holloran and Byrn [1986], Schndler and Semmel [1993] and Brusco et al. [1995]. The assgnment of actual work tasks may then be deferred to shortly before operatons [Dowlng et al., 1997]. Demand-level shft plannng s approprate when workloads are not exactly known, e.g. due to mssng nformaton on load data or flghts to be handled. Clearly, aggregate plannng also reduces problem complexty and can be a precondton for tractable optmsaton models. Addtonally, demand-based models often allow for addtonal schedulng flexblty. As an example, planners usually do not fully cover workloads n peak tmes. Such understaffng s easly accounted for n hstogram-based models [Thompson, 1993]. 6

23 1.2. Plannng Processes and Objectves break break break break W t Fgure 1.6.: Demand-level shft plannng. break break break break break Fgure 1.7.: Task-level shft plannng. In contrast, task-level shft plannng (see Fg. 1.7) s more detaled and therefore more complcated. In task-level plannng, shfts represent tours of tasks, startng and endng at a depot and respectng travel tmes between the tasks. Each task must start wthn ts tme wndow, and tours must ft nto the boundares mposed by shft types and lunch and relef breaks. Addtonally, we may have to respect qualfcaton constrants, e.g. lmtng specal skll requrements to few shfts. Tasks for check-n servces or tcket counter personnel often span over the whole day and must be spltted n order to be assgned to shfts. Furthermore, tasks and shfts for teams may have to be placed n parallel. Note that n demand-level plannng, we assume task start tmes and travel tmes to be realsed as n the demand plannng phase. Furthermore, qualfcaton requrements cannot be represented n a sngle demand curve. Decsons for shft types (and consequently, shft start and end tmes) do not take nto account that tasks may not be splttable at the boundares of shfts. However, f tasks are lttle movable, travel tmes are moderate, qualfcaton requrements are rather homogeneous and tasks are splttable, shft plannng based on a demand curve wll provde a good approxmaton to task-level schedulng. In practce, plannng scenaros often come close to these requrements. The decson for demand-based or task-based models depends on a number of factors. If the qualty of workload nformaton s hgh and planners requre hgh-resoluton schedules, shft plans should make reference to sngle work tasks. If the plannng s carred out weeks before actual operatons, demand-based models wll offer suffcent degrees of detal. In ths thess, we argue that demand-based and task-based models can both be approprate n dfferent stuatons, and we wll cover both types of models. It s worth mentonng that task generaton and demand plannng are not always ndependent from shft plannng [Henderson and Mason, 1998]. If demands e.g. result from passenger arrvals and queueng models, movng demands to later tme perods may render the coverage of workloads easer [Mason et al., 1998]. In general however, task generaton can be separated from shft plannng wthout major repercussons. Throughout ths work, we wll assume that tasks can be generated wthout any reference to the shft level. 7

24 1. Introducton Mon Tue Wed Thu Fr Sat Sun employee 1 05:00 13:30 05:00 13:30 05:00 13:30 05:00 13:30 05:00 13:30 employee 2 14:15 23:15 14:15 23:15 14:15 23:15 11:30 20:00 11:30 20:00 employee 3 08:00 17:30 08:00 17:30 08:00 17:30 09:00 18:30 09:00 18:30 Fgure 1.8.: Weekly roster for three employees Rosterng The rosterng problem conssts n sequencng shft dutes and days off nto patterns for ndvdual employees or groups of employees, cf. Fg Unon and legal regulatons (e.g. the aforementoned EU drectves) and company polces mpose a number of constrants. The most frequent work rules nclude mnmum and maxmum bounds on the number of consecutve days on and days off, mnmum rest tmes and start tme dfferences between consecutve shfts, mnmum, maxmum and average workng hours per week and the number of weekends off per perod, see e.g. Bechtold and Showalter [1987], Lau [1994] and Dowlng et al. [1997]. Dfferent knds of rosters are used n practce. Fgure 1.8 shows ndvdual rosters wth a separate schedule for each employee. If concrete employees for each roster lne are known (named rosterng), we can take employee avalabltes, preferences and qualfcatons nto account [Thompson, 1996b]. In arport practce, rosters are usually planned on an anonymous bass. Schedules are then assgned to employees n a subsequent stage. In North Amerca, anonymous rosters are often publshed for bddng,.e. employees choose roster lnes n decreasng order of senorty, see e.g. Holloran and Byrn [1986] and Schndler and Semmel [1993]. Alternatvely, rosters can be cyclc (equvalently, rotatng) and apply to a group of workers (Fg. 1.9). One employee wll then start on each roster week,.e. the length of the roster s equal to the number of employees. When fnshng the frst week, employee 1 swtches to week 2, employee 2 to week 3 etc. whle the worker on the last roster week starts over wth the frst week. Cyclc rosters are always anonymous; only the employee group for the whole roster may be known. Rotatng shft patterns are usually planned for a whole flght season n advance. Clearly, they are less flexble as they do not adapt to fluctuatng demands and absenteesm [Warner, 1976]. However, cyclc rosters provde a maxmum degree of farness snce all employees work on the same pattern. Furthermore, employees can easly foresee ther shft dutes on gven days n the future. Rotatng rosters are often used to cover the bottomlne demand by full-tme workers. Holdays, short-term absences and changes n workloads are consdered only later, e.g. by shft swaps and part-tme staff [Dowlng et al., 1997]. Rosterng often bulds upon gven shfts determned n a precedng shft plannng phase. If however sgnfcant restrctons are mposed on the roster level, t may not be possble to create effcent rosters upon gven shft demands, and t wll be more approprate to ntegrate shft plannng and rosterng. In arport practce, ndvdual rosters are often planned manually or wth strong user nteracton on the bass of gven shft plans. Smlarly, cyclc rosterng s stll lttle automated and usually amounts to applyng small changes to rosters of the precedng flght season. 8

25 1.3. Related Work on Workforce Schedulng Mon Tue Wed Thu Fr Sat Sun week 1 06:00 15:30 06:00 15:30 06:00 15:30 06:00 15:30 11:30 20:00 week 2 11:30 20:00 11:30 20:00 _ 11:30 20:00 11:30 20:00 11:30 20:00 11:30 20:00 week 3 13:00 22:00 13:00 22:00 13:00 22:00 week 4 21:00 07:00 21:00 07:00 21:00 07:00 13:00 22:00 13:00 22:00 week 5 06:00 15:30 06:00 15:30 06:00 15:30 Fgure 1.9.: Cyclc roster for fve employees. Lke shft plannng, rosterng can have dfferent objectves. On an operatve level, planners wll be nterested n effcent rosters for the workforce at hand. Tactcal and strategcal plannng wll typcally nvolve what-f scenaros and may e.g. assess necessary staff szes or evaluate the sutablty of dfferent shft dutes, see e.g. Holloran and Byrn [1986], Dowlng et al. [1997]. Rosterng models usually nclude penalty terms for nconvenent characterstcs of schedules, e.g. wth regard to undesrable shft sequences or days off [Koop, 1988] [Jaumard et al., 1998] Related Work on Workforce Schedulng Snce the frst proposton of an nteger programmng model for shft schedulng by Dantzg [1954], workforce schedulng has receved consderable attenton n the lterature. Shft schedulng and rosterng problems are tackled n many dfferent servce ndustres, ncludng arports and arlnes, ralways, telephone companes, hosptals, emergency servces, toll collecton and banks. Wth only few exceptons, all publcatons am at coverng aggregated workloads gven on an approprate dscretsaton level (often 30 mnutes),.e. models are demand-based wth regard to the above charactersaton. Overvews of applcatons and models can be found n Baker [1976], Ten and Kamyama [1982], Bechtold et al. [1991] and more recently n Ernst et al. [2004]. Staff schedulng problems are usually categorsed nto shft, day-off, and tour schedulng models [Baker, 1976]. Shft schedulng s the problem of specfyng, for a gven day, the startng tmes and duratons of shfts assgned to employees, see Dantzg [1954]. Furthermore, t may nclude the problem of postonng meal and relef breaks wthn each shft [Bechtold and Jacobs, 1990]. Day-off schedulng nvolves the placement of days off nto a cyclc or non-cyclc roster [Tbrewala et al., 1972]. Typcally, target shft numbers per day are gven, mplyng on whch weekdays days off should deally be placed. Besdes demand coverage constrants, typcal restrctons nclude bounds on the number of consecutve days on and the placement of day-off stretches and weekends off. If only one shft type s used, day-off schedulng s equvalent to the overall task of buldng a vald roster. In the multple-shft case, we addtonally face a shft assgnment problem that conssts n attrbutng shfts to the gaps left after day-off schedulng [Bennett and Potts, 1968]. In shft assgnment, we must usually respect mnmum rest tmes between shfts and maxmum offsets between start tmes on consecutve days on [Jacobs and Brusco, 1996] [Lau, 1996b]. Many scentsts have adopted sequental approaches for the soluton of the overall rosterng problem: Frst, target shft numbers for dfferent shft types are determned, then days off are scheduled and fnally, shfts are assgned to the remanng postons n the roster, see e.g. Baley and Feld [1985], Balakrshnan and Wong [1990], Khoong and Lau [1992] and Lau [1996a]. 9

26 1. Introducton However, we have already ponted out that the sngle problems are nterdependent, and t may not be possble at all to fnd a vald roster for the shfts determned n the frst step. Authors have therefore called for ntegrated formulatons subsumed under the noton tour schedulng [Baker, 1976]. Tour schedulng thus nvolves the smultaneous determnaton of shfts and day-off postons n a roster subject to demand coverage constrants. A number of publcatons have dealt wth the generaton of cyclc rosters, e.g. Bennett and Potts [1968], Laporte et al. [1980], Balakrshnan and Wong [1990] and Mason [1999]. To the knowledge of the author, all models n the lterature have bult upon demand fgures per shft type,.e. there have not been any ntegrated approaches for smultaneous shft schedulng and cyclc rosterng. Many scentsts have used nteger programmng or lnear programmng based roundng to solve schedulng and rosterng problems [Ernst et al., 2004]. In Chapter 2, we wll gven an overvew of relevant workforce schedulng lterature wth a focus on models and soluton technques Relatonshp to Vehcle Routng and Schedulng The levellng problem for workforce demands (Secton 1.2.2) s based on placng work tasks n tours such that tme wndow and travel tme constrants are taken nto account. We wll ntally mnmse the number of tours whch are requred to cover the tasks. In a second phase, we wll take levellng effects for movable tasks nto account. The basc settng amounts to a vehcle routng problem wth tme wndows, coverng customers (work tasks) by a set of vehcle routes (tours). Smlar objectves as n workload levellng have been consdered n the lterature on resource levellng [Brucker et al., 1999]. Smlarly, task-level shft plannng conssts n desgnng tours of tasks such that each tour fts nto a shft duty. Addtonally to tme wndow and travel tme constrants, we must respect break and shft type constrants. Task-level shft plannng can therefore be nterpreted as an ntegraton of vehcle routng and shft schedulng. Addtonally, we have to deal wth splttable (preemptve) tasks, crews and qualfcaton constrants. Khoong et al. [1994] and Rekk et al. [2003] have called for an ntegraton of workforce schedulng wth vehcle routng, but no actual work has been done up to now. Related work ncludes the artcle by Baley et al. [1995] who rudmentally ntegrated project schedulng wth shft schedulng and by Berman et al. [1997] who ntegrated shft schedulng wth workflow optmsaton n a mal-processng faclty. From a vehcle routng perspectve, some scentsts have mposed tour length restrctons to deal wth maxmum duratons of drver dutes [Toth and Vgo, 2001a] [Campbell and Savelsbergh, 2004]. Vehcle routng has been a very actve feld of research over several decades. It subsumes a class of problems n whch a number of customers (here: tasks) must be served by a set of vehcles (here: workers, shfts), usng an approprate network for ther movements [Toth and Vgo, 2001a]. Tours start and end at one or several depots. Note that n task-level shft plannng, depots not only have a spacal character, but we can also nterprete shft start and end tmes as depots whch mpose temporal restrctons. Dfferent objectves are consdered n vehcle routng, e.g. mnmsng routng costs or the number of vehcles [Bodn and Golden, 1981]. Clearly, ths s smlar to mnmsng shft costs n task-level schedulng. Furthermore, qualfcaton restrctons n shft plannng can be nterpreted as a specal case of vehcle capacty restrctons. Whle the vehcle routng problem wth tme wndows (VRPTW) usually nvolves vehcle loads and capacty restrctons [Cordeau et al., 2001a], VRPTWs wthout capacty restrctons are usually denoted as multple travellng salesman problems wth tme wndows (m-tsptw) [Desrosers et al., 1993]. If the start tmes of customer vsts are fxed, we deal wth vehcle schedulng problems (VSP) or capactated vehcle schedulng problems (CVSP) [Bodn and Golden, 1981] [Desrosers et al., 1993]. 10

27 1.5. Contrbutons of the Dssertaton Dantzg and Ramser [1959] were the frst to propose a mathematcal programmng formulaton for a real-world vehcle routng applcaton. Clarke and Wrght [1964] mproved upon the Dantzg-Ramser approach and proposed ther classcal savngs algorthm. Overvews of vehcle routng models and algorthms are gven by Bodn et al. [1983], Chrstofdes [1985] and n the excellent artcle of Desrosers et al. [1993]. Further n-depth treatments can be found n the books of Golden and Assad [1988] and more recently n Toth and Vgo [2001b]. Complexty results on dfferent vehcle routng and schedulng problems are summarsed by Lenstra and Kan [1981]. A large varety of soluton technques have been appled to vehcle routng and schedulng problems, ncludng heurstcs (e.g. Solomon [1987]), local search (e.g. Potvn and Rousseau [1995]) and metaheurstcs (e.g. tabu search [Gendreau et al., 1994] [Potvn et al., 1996], evolutonary programmng [Potvn and Bengo, 1996]), nteger programmng (e.g. Desrosers et al. [1984], Desrochers et al. [1992]), constrant programmng (e.g. Klby et al. [2000]) as well as hybrd nteger/constrant programmng approaches (e.g. Rousseau et al. [2002]). Nearly ten years ago, Laporte and Osman [1995] have already collected 500 references n the context of vehcle routng and schedulng. We wll therefore restrct ourselves to an overvew of constrant-based approaches n Chapter Contrbutons of the Dssertaton The goal of ths work s to develop models and effcent algorthms for dfferent stages of arport ground staff plannng. The focus wll be on models whch are more ntegrated than former approaches. Ths s n accordance wth a general tendency toward more ntegrated optmsaton schedulng models n the lterature, see e.g. Cordeau et al. [2001c], Cordeau et al. [2001b] and Sørensen and Clausen [2002]. Clearly, models whch smultaneously deal wth several plannng stages potentally allow for realsng addtonal savngs. However, we wll not restrct our attenton to task-based models, but argue that dependng on the context, demand-level models may also be approprate for shft plannng and rosterng. All models and algorthms wll refer to anonymous schedulng,.e. we do not explctly assgn shfts or rosters to employees. Dependng on the context, we wll deal wth operatonal, tactcal, or strategcal plannng scenaros wth gven or unknown staff szes. In rosterng, we wll allow for plannng wth understaffng. Models and algorthms wll be desgned for potentally contnuous 24 7 operatons whch clearly does not exclude explotng the dscontnuty of partcular problem nstances, e.g. due to nght flyng restrctons on some arports. We wll use state-of-the-art soluton technques to tackle these schedulng problems. Integer programmng (IP) and constrant programmng (CP) have receved consderable attenton n recent years and have proven to be powerful soluton technques for real-world problems. Integer programmng has been the predomnant soluton technques for demand-level shft schedulng and rosterng models. Column generaton s often used to decompose problems nvolvng huge numbers of decson varables. Whle nteger programmng s a powerful soluton technque for obtanng optmal or near-optmal solutons, constrant programmng s partcularly approprate for very complex settngs and non-lnear objectve functons or constrants. Throughout ths thess, both technques wll be used n dfferent contexts. We wll start by concevng a levellng procedure for demand plannng nvolvng movable tasks. Whle the basc settng s a vehcle routng problem wth tme wndows, the goal of workload levellng can be compared to resource levellng problems n project schedulng. Workload levellng s a novel problem that has not yet been dealt wth n the lterature. It wll be shown that the problem s N P-hard. Based on the outcome of a tour-mnmsaton algorthm, we wll conceve an constrant-based local mprovement algorthm amng at avodng unnecessary demand peaks. For the search for mprovng soluton, we wll make use of a novel varant of a restrcted tree 11

28 1. Introducton traversal strategy. Smlarly, a constrant model wll provde the bass for a local mprovement algorthm for complex task-level shft plannng. Integratng shft schedulng wth vehcle routng, task-level shft plannng s an optmsaton problem whch has not yet been treated n the lterature. We wll show how a large number of real-world constrants can be represented n a constrant programmng model, ncludng preemptve tasks, crew and qualfcaton restrctons. Usng large neghbourhoods, the local mprovement algorthm wll provde a remedy for defcences of a precedng heurstc constructon algorthm. In a further part of ths thess, we wll show how task-level shft plannng can be made amenable to optmal soluton technques by focusng on an mportant subclass. We wll show that even a very basc shft plannng settng s N P-complete n the strong sense. For the problem consdered, we wll develop a column generaton formulaton by Dantzg-Wolfe decomposton. In conjuncton wth a prelmnary problem decomposton technque, the resultng branch-and-prce algorthm s able to solve a consderable number of real-world arport plannng problems to optmalty n a reasonable amount of tme. Turnng to demand-based models, we wll gve an llustratve ntroducton to mplct modellng of flexble break placement. We wll extend an exstng model for the representaton of flexble breaks, overcomng an mportant lmtaton that has not yet been explctly dealt wth n the lterature. The resultng model wll provde the bass for a branch-and-prce algorthm for ntegrated cyclc rosterng. In contrast to prevous models, our formulaton wll drectly buld upon workloads per demand perod and ntegrate the shft plannng and rosterng stage. The settng ncludes a multtude of constrants whch are relevant n ground staff rosterng and consderably extends prevous approaches. We wll devse a novel IP formulaton that s solved by multple column generaton and branch-and-prce, yeldng near-optmal solutons on real-world test cases. All modellng approaches and algorthms wll be motvated by lterature revews and ntroductons to soluton technques throughout the work. All algorthms have been realsed as a part of a commercal tool for generc ground staff plannng. They are n use at many arlnes, arports and ground handlng companes or are about to be mplemented at customer stes. The algorthms contrbute to customer satsfacton, realse addtonal savngs and allow for more flexblty n the schedulng of ground staff. Some of the technques n ths work buld upon solutons of heurstc algorthms whch are not descrbed n detal here. The mmedate context of the algorthms n the plannng system s llustrated n Fg. 1.10; contrbutons of ths thess are shaded. Clearly, mplementng the algorthms as a part of a commercal plannng system has nfluenced desgn decsons. Hgh-qualty solutons are an mportant crteron, but robustness on a wde range of dfferent plannng scenaros was deemed at least as mportant. Computng tmes play a role especally when performng what-f analyses. Soluton technques whch offer a tradeoff between runnng tmes and soluton qualty clearly provde an advantage. All algorthms were tested on real-world plannng scenaros representng a wde range of dfferent arport servces. Test cases therefore ncorporate qute dfferent characterstcs, e.g. wth regard to task movablty, skll requrements and schedulng flexblty. Problems often have a very large scale and frequently nvolve consderable numbers of constrants. The evaluaton of the dfferent algorthms wll essentally be based on the same test cases, enablng for a recognton of common problem characterstcs and comparsons between dfferent soluton technques. 12

29 1.5. Contrbutons of the Dssertaton flght schedule passenger and baggage fgures engagement standards task generaton tasks tour plannng levellng demand curve demand-based shft plannng (wthout breaks) task-based shft plannng local mprovement optmal shft plannng (on reduced problem) demand-based shft plan task-based shft plan cyclc roster plannng manual or automatc generaton of non-cyclc rosters cyclc rosters non-cyclc rosters Fgure 1.10.: Overvew of contrbuted algorthms. 13

30 1. Introducton 1.6. Structure of the Document After havng gven an ntroducton to arport ground staff schedulng n ths chapter, we frst gve a comprehensve overvew of workforce schedulng lterature n Chapter 2. A specal focus s put on models and algorthms whch are relevant to arport operatons. We wll furthermore draw analoges of general workforce schedulng to crew schedulng at arlnes and publc mass transport companes. In Chapter 3, we wll ntroduce constrant propagaton technques for the soluton of constrant satsfacton and optmsaton problems. Local search methods n constrant programmng as well as modellng alternatves for CP-based vehcle routng wll be revewed, layng the ground for the two subsequent chapters. Chapter 4 descrbes the constrant-based local mprovement method for workload levellng n demand plannng and proves the N P-hardness of the problem. Dfferent preprocessng technques wll be descrbed to prepare the results of a precedng constructon heurstc for levellng. Complex task-level shft plannng s the subject of Chapter 5. We wll ntroduce the general problem and develop a mathematcal model. A constrant programmng model for the problem wll be descrbed, and t wll be shown how problem-specfc lower bounds can be derved. The resultng local search algorthms s demonstrated to be effcent on a large varety of test cases, provdng a remedy for the flaws of a precedng constructon heurstc. Chapter 6 agan has an ntroductory character. Dantzg-Wolfe decomposton prncple and the resultng column generaton and branch-and-prce technques wll be descrbed. Furthermore, we wll pont out the relatonshp to Lagrangan relaxaton and gve an overvew of recent developments. In Chapter 7, we wll apply Dantzg-Wolfe decomposton to a subclass of the task-level shft plannng problem descrbed n Chapter 5 and solve the resultng model by branch-and-prce. Addtonally, we wll prove that even a very restrcted shft plannng problem s N P-hard n the strong sense. Whle Chapter 2 already comprses a revew of mplct models n IP-based schedulng, Chapter 8 gves an llustratve ntroducton to mplct modellng of break placement flexblty n demand-level schedulng. We wll generalse an mplct model from the lterature, overcomng lmtatons of prevous approaches. The resultng model provdes the bass for the ntegrated cyclc rosterng algorthm of Chapter 9. Revewng dfferent modellng alternatves and potentals for mplct models, we wll develop a new model for the creaton of complex cyclc rosters and devse adapted column generaton algorthms and branchng schemes. Chapter 10 wll gve a summary of contrbutons and an outlook on future developments and research. Chapters wll partly buld upon precedng explanatons. As far as possble, we have used a common mathematcal notaton throughout the thess. An overvew of symbols and abbrevatons can be found n Appendces A and B. Appendx C gves an overvew of workforce schedulng publcatons. 14

31 2. An Annotated Bblography on Workforce Schedulng When the weght of the paperwork equals the weght of the plane, the plane wll fly. Donald Douglas 2.1. Introducton In Chapter 1, we have ntroduced basc notons of workforce schedulng. Accordng to Baker [1976], workforce schedulng problems can be categorsed as ether shft schedulng, day-off schedulng or tour schedulng approaches. Shft schedulng deals wth the determnaton of approprate shft dutes wthn a day n order to cover workforce requrements gven on a sutable dscretsaton level, e.g. 15 or 30 mnutes. Clearly, shft schedulng s trval f shfts do not overlap [Baker, 1976] [Mabert and Watts, 1982] [Emmons and Fuh, 1997]. Day-off schedulng nvolves the determnaton of postons for days off n a cyclc or non-cyclc roster. If only one shft type s nvolved, day-off schedulng s equvalent to the overall task of buldng rosters. In the multple-shft case, we need an addtonal shft assgnment phase n order to match gven shfts nto the remanng roster gaps. Tour schedulng ntegrates these tasks by determnng daly shfts and day-off postons smultaneously. In several publcatons, t has been ponted out that ntegrated formulatons can be mportant n order to avod excessve labour costs [Buffa et al., 1976] [Easton and Rossn, 1991], see also the comparatve evaluatons of McGnns et al. [1978] and Bechtold and Showalter [1987]. However, t should be noted that there s no need for an ntegrated formulaton f there are few restrctons on vald shft transtons from one day to the other or f only one shft type s used [Holloran and Byrn, 1986]. For an overvew of publcatons on dfferent model types (shft, day-off and tour schedulng), the reader s referred to Appendx C. Some publcatons have assumed the sze of the workforce to be gven externally, see e.g. Mabert and Raedels [1977], Bechtold [1988] and Thompson [1996b]. Other researchers ntally solve a workforce allocaton problem of determnng the mnmum staff sze for the gven workloads, see Panton and Ryan [1999] and the combnatoral approaches descrbed n Secton 2.3. However, a majorty of publcatons has treated the determnaton of necessary workforce szes as an objectve n shft, day-off or tour schedulng, see e.g. Henderson and Berry [1976], Morrs and Showalter [1983], Jarrah et al. [1994] and Brusco and Jacobs [2000]. Plannng s often based on cyclc demands, representng exemplary workloads of a model day or week. Demands are then assumed to wrap around,.e. the frst demand perod s assumed to follow the last schedulng nterval [Çezk and Günlük, 2002]. Analogously, employee avalablty s frequently assumed to be cyclc wth employees workng on a repeatng pattern [Morrs and Showalter, 1983] [Jacobs and Brusco, 1996] [Brusco and Jacobs, 1998a]. As descrbed n Secton 1.2.4, cyclcty can also refer to the roster tself, meanng that the roster conssts of a sequence of several weeks on whch workers rotate (cyclc rosters) [Baker, 1976] [Mason, 1999]. 15

32 2. An Annotated Bblography on Workforce Schedulng Tour schedulng generally refers to the non-cyclc case (even f demands and employee avalabltes can be cyclc), whle publcatons on cyclc roster generaton are more scarce. All cyclc roster approaches n the lterature are non-ntegratve,.e. they buld upon demand fgures per shft type. As mentoned n Secton 1.2.3, we can further dstngush named and anonymous schedulng approaches [Ten and Kamyama, 1982] [Khoong et al., 1994]. Named schedulng mples that ndvdual employees are explctly assgned to shfts and tours, meanng that nformaton on sklls, avalabltes and preferences can be taken nto account, see e.g. Love and Hoey [1990]. In contrast, employee attrbuton s not part of anonymous schedulng. Whle named schedulng s e.g. frequent n nurse schedulng and arlne crew rosterng (see Sectons 2.6 and 2.11), arport planners usually employ anonymous schedules. Clearly, cyclc rosters are always anonymous. Appendx C gves an overvew of lterature on named and anonymous schedulng. Tour schedulng scenaros are frequently categorsed as ether contnuous or dscontnuous. Organsatons workng on a contnuous bass are confronted wth labour requrements on 24 hours a day, 7 days a week. Shfts for contnuous operatons usually overlap from one day to the other. In contrast, dscontnuous models nvolve less-than-24-h operatons. Dscontnuty ntroduces a specal structure nto mathematcal programmng formulatons of schedulng problems, meanng that such problems are often easer to solve [Jarrah et al., 1994] [Brusco and Jacobs, 1995] [Brusco and Johns, 1996]. Schedulng flexblty also vares wth other factors. The workforce may be made up of only full-tme employees (e.g. Morrs and Showalter [1983], Bechtold et al. [1991], Brusco and Jacobs [1993b]) or a mx of full-tme and part-tme workers (e.g. Bennett and Potts [1968], Easton and Rossn [1991], Brusco [1998]). Whle n some organsatons, t may be possble to start shfts at any tme of the day wthn a gven dscretsaton, other companes may only be able to use a small number of dfferent shft types [Thompson, 1995] [Rekk et al., 2003]. Furthermore, one or several lunch and relef breaks may have to be consdered at fxed tmes wthn the shfts or wthn gven tme wndows [Aykn, 2000]. In tour schedulng, shfts on consecutve days may be constraned to equal start tmes and duratons (see e.g. Laporte et al. [1980], L et al. [1991]) whle n other settngs, start tmes are allowed to vary freely (e.g. Baley [1985]) or wthn gven bands (e.g. Jacobs and Brusco [1996]). Work rules may constran days off to be taken consecutvely or allow for sngle days off [Bechtold, 1981]. If shft duratons are dentcal and the number of shfts per week s gven, the number of workng hours s fxed (see e.g. Glover and McMllan [1986], Thompson [1993] and Çezk et al. [2001]). In other problems, average workng hours per week are explctly taken nto account, see e.g. Mason and Smth [1998]. Dfferent degrees of flexblty are usually due to legal or unon regulatons. Addtonally, specal assumptons can be taken for computatonal reasons [Laporte et al., 1980] [L et al., 1991]. However, Jacobs and Bechtold [1993] have emprcally shown that hgher degrees of schedulng flexblty often allow for a better labour utlsaton. Shft, day-off and tour schedulng can be represented by a generalsed set coverng formulaton whch s orgnally due to Dantzg [1954], see also Morrs and Showalter [1983] and Baley and Feld [1985]: mn j J c j X j (2.1) subject to a j X j d I (2.2) j J X j 0 and nteger j J (2.3) 16

33 2.2. Shft Schedulng Approaches In the context of shft schedulng, coeffcents and decson varables have the followng meanngs: X j number of employees assgned to shft j; c j cost of shft j; d number of employees requred to work n the th tme perod; I set of tme perods n a day; J set of daly shft types; = 1 f tme perod s a work perod n daly shft type j (0 otherwse). a j For day-off schedulng, parameters and varables are nterpreted as follows: X j number of employees assgned to day-off pattern j; c j cost of day-off pattern j; d number of employees requred on the th day of the week; I set of operatng days per week; J set of day-off patterns to be consdered; = 1 f day s a work day n the day-off pattern j (0 otherwse). a j In tour schedulng, varables and columns n the constrant matrx represent tours of shfts: X j number of employees assgned to tour j; c j cost of tour j; d number of employees requred to work n the th tme perod; I number of tme perods to be scheduled over the week; J number of tour types to be consdered; = 1 f tme perod s a work perod n tour j (0 otherwse). a j Most models for shft, day-off and tour schedulng mplctly or explctly rely on ths model, see e.g. Keth [1979], Morrs and Showalter [1983], Brusco and Jacobs [1993a] and Aykn [2000]. As wll become clear n the sequel, many authors have used nteger programmng (IP) approaches or lnear programmng based roundng heurstcs to solve ths problem, see also Ernst et al. [2004]. Several authors have noted that the aforementoned lnear programmng (LP) formulaton generally exhbts advantageous nteger propertes (see e.g. Baley [1985], Baley and Feld [1985]). Furthermore, the LP relaxaton s known to be very tght and therefore lends tself well for nteger soluton methods by branch-and-bound [Henderson and Berry, 1976] [Morrs and Showalter, 1983]. The followng overvew of workforce schedulng publcatons focuses more on models and soluton technques than prevous surveys (lke Ernst et al. [2004]). Furthermore, t concentrates on publcatons wth relevance to arport ground staff plannng. The presentaton wll manly be structured by the aforementoned problem classes. Two modellng features have receved attenton on ther own rght and wll be descrbed separately: the modellng of flexble break placement as well as workng subset approaches, amng at reducng the number of used shft types. Furthermore, nurse schedulng s descrbed as a specal case of named schedulng. Complexty results n workforce schedulng problems are summarsed n a separate secton. At the end of the chapter, we wll gve annotatons on smlartes of general workforce schedulng wth arlne crew rosterng and drver schedulng n publc mass transport. Wthn each secton, publcatons wll be cted n chronologcal order f groupng contrbutons by afflaton s not more approprate Shft Schedulng Approaches Dantzg [1954] was the frst to propose the above set coverng formulaton for shft schedulng of toll booth staff. He noted that usng the smplex method often naturally yelds nteger solutons 17

34 2. An Annotated Bblography on Workforce Schedulng and proposed to round up fractonal values n order to obtan feasble nteger solutons. Furthermore, Dantzg called for ntegratng breaks nto the formulaton by settng the correspondng matrx coeffcents to 0. Bennett and Potts [1968] used ths explct representaton of breaks for shft schedulng of toll collectors wth a gven rato of full-tme and part-tme employees. Amng at mnmsng excess labour, the set coverng model was solved by a multple-step nteger programmng procedure. Plannng of telephone operator dutes was a popular doman of applcaton n the 1970 s. Segal [1972] proposed a network flow model, usng the out-of-klter method. In hs approach, labour demands are ncorporated n lower bounds on so-called forward arcs whle backward arcs represent feasble shfts. Breaks are scheduled n a second phase, possbly resultng n labour shortages whch are added to the demands of the orgnal problem. Buffa et al. [1976] descrbed how to forecast telephone operator workloads, usng hstorcal data and a queueng model. Ther heurstc shft schedulng algorthm allows for understaffng and overstaffng and used local estmatons of devatons between operator avalablty and forecasted demands. Shfts are then heurstcally assgned to operators, takng shft and day-off preferences nto account. Henderson and Berry [1976] proposed an LP approach for telephone operator schedulng, usng dfferent roundng heurstcs and local search. The formulaton uses a workng subset of shft types whch are heurstcally selected n a frst step. In another LP approach to telephone operator schedulng, Keth [1979] allowed for two-level understaffng and overstaffng whch s penalsed n the objectve functon. He proposed to round fractonal solutons to the nearest nteger, subsequently applyng several mprovement steps. Gaballa and Pearce [1979] used queueng models to forecast weekly workloads n sales reservaton offces at Qantas. Daly shft schedulng problems are solved by nteger programmng, ncorporatng breaks by a dstnct set of varables. Weekly rosters are bult n a second step, agan usng nteger programmng. In another arlne applcatons, Stern and Hersh [1980] descrbed the schedulng of arcraft cleanng crews, usng non-overlappng shft types and flexble breaks. In ther settng, workloads for each job at an arcraft are gven as man-hours to be worked by a crew of workers. The applcaton leads to a specal shft schedulng model to be decomposed and solved by nteger programmng. In an nterestng paper, Barthold et al. [1980] analysed a class of cyclc staffng problems, coverng shft and day-off schedulng settngs. Cyclc staffng problems lead to set coverng formulatons n whch the columns (rows) of the constrant matrx contan cyclcally consecutve ones. The authors showed how to solve ths class of problems effcently ether by varable transformaton and a network flow formulaton or by lnear programmng and cumulatve roundng. These results were generalsed by Barthold III [1981] who presented another optmal LP-based round-off algorthm for column (row) crcular matrces. For problems wth non-consecutve ones n the constrant matrx, a qualty bound was gven n terms of the number of blocks of ones. Also based on ths work, Karp and Orln [1981] descrbed the transformaton of cyclc staffng problems nto parametrc shortest path problems and presented a polynomal-tme soluton algorthm. Vohra [1988] proposed a heurstc algorthm for cyclc problems allowng for more than one block of consecutve ones when blocks of ones have equal lengths. The qualty of the heurstc depends on demand devatons from the maxmum workload, ensurng optmalty only f all requrements are equal. In the context of shft schedulng wth fxed breaks, Baley and Feld [1985] stressed the mportance of usng dfferent shft lengths to cover workloads effcently. The LP-based roundng algorthm of Barthold III [1981] was shown to be superor to the heurstc approach of McGnns et al. [1978] proposed n the context of tour schedulng (see Secton 2.5). Love and Hoey [1990] descrbed the development of a system for named shft plannng n fast-food restaurants, takng employee avalabltes nto account and tryng to balance skll levels between dfferent workng areas. The problem s decomposed nto a set coverng formulaton for 18

35 2.3. Day-Off Schedulng Approaches shft schedulng and an employee assgnment phase, both of whch are solved by network flow algorthms. Shft schedulng for full-tme and part-tme staff at Pan Am was descrbed by Schndler and Semmel [1993]. The model was solved by nteger programmng, consderng lunch breaks n a second phase. Thompson [1996b] developed a model for named shft schedulng wth lmted employee avalabltes. A specal set coverng model wth sets of shfts for each employee and mult-level penaltes for understaffng and overstaffng was presented and solved by smulated annealng (SA). Expermentally evaluatng dfferent local search operators, the SA approach was shown to yeld solutons whch are only slghtly worse than optmal IP solutons. Berman et al. [1997] ntegrated the schedulng of shfts and workflow of a mal processng faclty n an nteger programmng model. On the personnel schedulng level, full-tme and parttme employees as well as breaks and qualfcatons were taken nto account. Workflow was subjected to tme wndow and capacty constrants. In the arport cargo handlng applcaton of Nobert and Roy [1998], workloads are gven as klos of freght to be processed n gven tme ntervals. The authors ntegrated the levellng of these workloads wth shft schedulng nto an nteger programmng formulaton. Usng test data from Ar Canada, the levellng approach was shown to be superor to lnear or no levellng. Sørensen and Clausen [2002] expermentally nvestgated the effects of decentralsng ground staff plannng for Brtsh Arways operatons at London-Heathrow arport. Ther model ntegrates a so-called zonng problem wth the allocaton of arcraft stands and cyclc shft schedulng. Whle the soluton approach uses smulated annealng on the zonng and stand level, the shft schedulng problems employ only lmted numbers of shfts and can be solved heurstcally. It was shown that ncreasng the number of zones and decentralsng plannng processes can lead to consderable excess workforce and a declne n the qualty of stand allocatons. By applcaton of hstorcal flght delay data, the robustness of stand allocatons and staff plans was evaluated. Muslu et al. [2004] descrbed a weekly shft schedulng problem, avodng an excessve use of dfferent shft types over the week. The authors proposed a tabu search algorthm whch explots problem-specfc knowledge. The algorthm s part of a commercal schedulng system Day-Off Schedulng Approaches As mentoned before, day-off schedulng conssts n determnng the placement of days off n cyclc or non-cyclc rosters. Mabert and Raedels [1977] formulated a day-off schedulng problem for part-tme bank tellers as a set coverng model. In ther formulaton, workloads of dfferent branches of the bank are aggregated, the resultng problem solved by nteger programmng and subsequently dsaggregated. An alternatve heurstc procedure was shown to be computatonally advantageous, but nferor wth regard to soluton qualty. Based on ths work, Bechtold [1988] presented a day-off schedulng model and heurstc algorthms for dfferent goal sets, lmts on the number of consecutve days on and employees workng ether at a sngle or at multple locatons. The algorthms were shown to outperform the alternatve heurstc method of Mabert and Raedels [1977]. Most publcatons on day-off schedulng are more restrctve wth regard to the gven demand fgures and the work rules consdered. Many authors have proposed sequental approaches, startng by determnng lower bounds on the workforce sze. Afterwards, days off are assgned accordng to gven rules, resultng n polynomal tme algorthms for solutons usng the mnmum workforce sze. Emmons and Burns [1991] call ths the combnatoral approach. Whle early publcatons refer to only one shft type, the combnatoral approach has later been extended to multple shfts. Snce demand fgures are gven per shft type, these models are not ntegrated as 19

36 2. An Annotated Bblography on Workforce Schedulng n tour schedulng. Demands and employee avalabltes are generally assumed to be cyclc. In the settng of Tbrewala et al. [1972], varable demand fgures are gven for a sngle shft type over a week. The authors demonstrated how to arrve at a mnmum workforce sze, allowng for one or two days off per week. In the cyclc model of Baker [1974], varable shft demand fgures are to be covered exactly by a mx of full-tme staff wth two consecutve days on per week and part-tme staff avalable to work sngle shfts. Baker showed that a proposed tableau algorthm was always able to determne a soluton usng the mnmum number of part-tme staff. Brownell and Lowerre [1976] studed necessary workforce szes when demands for a sngle shft type are equal on all weekdays and on weekend days. Wth employees workng fve days each week, closed-form expressons for the mnmum workforce sze as well as optmal algorthms for dfferent work polces (e.g. consecutve days off, every other weekend off) were presented. Lowerre [1977] refned these results, analysng the lengths of workstretches (number of consecutve days on) and addng two further polces for cyclc rosters. Baker and Magazne [1977] bascally treated the same settng wth only cyclc demands, but relaxed the condton of Brownell and Lowerre [1976] of weekend demands to be lower than weekday requrements. Burns [1978] allowed for a maxmum of sx days on as well as varable demands wth every other weekend off n a cyclc settng. Baker et al. [1979] treated the case of equal demands on all days wth employees workng fve days each week and a maxmum of sx consecutve days on. Concentratng on an A-outof-B weekends off constrant, they studed the consequences of dfferent work polces on the workforce sze. Bechtold [1981] allowed for arbtrary demands and presented algorthms for one or two days off per week. He showed that hs algorthm s easer and more effcent than the comparable algorthm of Tbrewala et al. [1972]. However, t was noted that the latter algorthm yelds better dstrbutons of surplus labour whle hs own approach turned out to better dsperse slack than the round-off procedure of Barthold et al. [1980]. In cyclc rosterng, Emmons [1985] treated the case of a mnmum workforce whch s equal on weekdays and on weekend days, grantng two days off per week, A out of B weekends off and workstretches of between two and four days. Burns and Carter [1985] extended ther earler studes on constructve algorthms by consderng varable demands, fve workdays per week, maxmum workstretches of sx days and A out of B weekends off n non-cyclc schedulng. Workers of dfferent skll rankngs were consdered by Emmons and Burns [1991], assumng that workforce requrements for each class of workers are constant throughout all days of the week. Employees were granted A out of B weekends off. Ther method frst determnes necessary workforce szes, then dstrbutes weekends off and other days off and fnally assgn shfts, mnmsng the use of hghly-qualfed staff. A last sngle-shft model for non-cyclc schedulng was presented by Emmons and Fuh [1997]. Labour requrements were assumed to be constant throughout weekdays and weekend days. Two types of part-tme workers were consdered, the one entalng lower costs than full-tme employees and a more expensve but unlmted pool of part-tme staff. Burns and Koop [1987] were the frst to extend prevous combnatoral approaches to a multple shft case wth three non-overlappng shfts and equal demands on weekdays and lower but equal demands on weekends. Shft changes wthn workstretches were dsallowed and A out of B weekends off granted. Based on closed-form expressons for the mnmum workforce sze, ther algorthm bulds rosters on the bass of so-called modules,.e. predetermned patterns of one or several weeks. The slots of these modules are then flled by approprate shft dutes. Koop [1988] studed another cyclc roster settng wth multple shfts and shft change restrctons. It was shown how to determne lower bounds on the workforce sze. The author proposed a network model for cyclc rosterng and formulated condtons for the exstence of a crculaton. Addtonally, some specal cases of shft change constrants were consdered. Hung consdered a smlar multple-shft case wth equal demands on weekdays and week- 20

37 2.4. Shft Assgnment Approaches end days for each shft [Hung, 1993] [Hung, 1994a] [Hung, 1994b]. As n other combnatoral approaches, closed-form expressons for the mnmum workforce sze as well as constructve optmal algorthms were gven for three [Hung, 1993], four [Hung, 1994a] and alternatng three/four [Hung, 1994b] shfts per week. These approaches were extended by Burns and Narasmhan [1999], provdng control over maxmum lengths of workstretches. Optmal workforce szes were determned, days off allocated and fnally shfts assgned wthout consderng restrctons on shft successons. All combnatoral approaches are restrcted to specal cases and usually do not generalse to dfferent work polces. Emmons and Burns [1991] note that an nteger programmng formulaton can more easly ncorporate addtonal constrants, and be extended to more general models. However, combnatoral models have often ncorporated constrants whch have not yet been represented n full detal n more general soluton approaches Shft Assgnment Approaches Shft assgnment s concerned wth the attrbuton of shfts of gven types to the gaps left after day-off schedulng. Clearly, t only apples to sequental approaches whch decompose the rosterng problem nto a day-off and shft assgnment phase. Two of the aforementoned publcatons already comprse a shft assgnment part, namely Emmons and Burns [1991] and Burns and Narasmhan [1999]. Van den Berg and Panton [1994] nvestgated two shft assgnment problems for cyclc rosters. One problem constrans shfts on consecutve days to have equal types whle the other allows for forward-rotatng assgnments,.e. shfts rotate from earler to later start tmes. Dfferent exstence condtons for such assgnments were presented and subproblems solved by heurstcs and network flow algorthms. Lau nvestgated a smlar problem denoted as changng shft assgnment problem, prescrbng vald shft transtons by a matrx. Whle the overall problem was shown to be N P-hard [Lau, 1996b], greedy and network flow approaches were proposed for some easer subclasses n Lau [1994], Lau [1996a] and Lau [1996b]. In a named schedulng model, Jackson et al. [1997] compared dfferent approaches for assgnng gven shfts wth qualfcaton requrements to employees. Greedy and random greedy algorthms resulted n satsfactory results whle dfferent teratve mprovement approaches lke tabu search dd not compare favourably Tour Schedulng Approaches Rtzman et al. [1976] were the frst to propose a smultaneous approach for shft and day-off schedulng n an applcaton to a mal sortng faclty. Integratng the plannng of workforce and workflow between dfferent operatons, full-tme and part-tme staff was scheduled by dedcated decson rules and smulaton. Several publcatons have ponted out the mportance of ntegrated models. McGnns et al. [1978] showed an ntegrated heurstc algorthm to outperform a sequental approach, consstng n shft schedulng, day-off schedulng and shft assgnment. In an nteger programmng approach to dscontnuous tour schedulng, Baley [1985] showed that consderable savngs can be obtaned from an ntegrated formulaton. Bechtold and Showalter [1987] demonstrated the superorty of a heurstc tour schedulng algorthm over an LP-based two-phase approach. A lnear programmng roundng procedure for contnuous tour schedulng was proposed by Morrs and Showalter [1983]. In ther soluton method, fractonal solutons are frst rounded down before restorng feasblty by successvely addng tours. The algorthm was shown to yeld 21

38 2. An Annotated Bblography on Workforce Schedulng a maxmum devaton of 1% wth regard to the LP relaxaton and to compare favourably to the roundng heurstcs of Henderson and Berry [1976] and Barthold III [1981]. Glover et al. [1984] presented a model for dscontnuous named tour schedulng, takng preferences nto account and ncorporatng full-tme and part-tme employees. As a precursor of tabu search, a local search algorthm was descrbed, allowng for steps nto the nfeasblty regon of the search space. A smlar approach was proposed by Glover and McMllan [1986] for named tour schedulng wth restrcted employee avalabltes, full-tme and part-tme staff, dfferent skll levels, flexble breaks and restrctons on the number of weekly workng hours. The approach was tested successfully on shft schedulng problems arsng n fast-food restaurants. Holloran and Byrn [1986] descrbed the development of a schedulng system for Unted Arlnes sales reservaton offces and passenger servces. Ther approaches uses queueng models for the generaton of typcal weekly workloads. These are covered by monthly tours wth equal shfts n each workstretch, usng the LP-based roundng scheme of Henderson and Berry [1976]. Separate modules are used to reduce the number of employed shft start tmes and to ensure contguty between monthly work schedules. Further applcaton-orented papers were contrbuted by Andrews and Parsons [1989] and Taylor and Huxley [1989]. Andrews and Parsons [1989] descrbed the evaluaton of commercal schedulng systems for telephone operators at a mal-order sales company, ncludng demand forecastng models and tour schedulng algorthms. Taylor and Huxley [1989] descrbed the realsaton of a schedulng system for the San Francsco Polce Department. A prmal-dual nteger heurstc was developed to solve a tour schedulng problem wth relatvely strct restrctons on the dstrbuton of shfts and days off. Bechtold et al. [1991] compared dfferent tour schedulng algorthms, ncludng the LP-based roundng approaches of Henderson and Berry [1976], Keth [1979] and Morrs and Showalter [1983] as well as the heurstc algorthms of Buffa et al. [1976], McGnns et al. [1978] and Bechtold and Showalter [1987], usng a tour schedulng settng whch s amenable to all of these soluton technques. On a set of artfcal test problems, the technque of Bechtold and Showalter [1987] turned out to be compettve wth LP-based approaches whle the roundng heurstcs of Keth [1979] and Morrs and Showalter [1983] outperformed alternatve soluton technques. Easton and Rossn [1991] descrbed a column generaton algorthm for tour schedulng. Only tours of nonzero values n the LP relaxaton were subjected to an nteger programmng formulaton. The authors showed that ths method often fnds optmal overall solutons and outperforms LP-based roundng or mprovement algorthms. In an applcaton to a lockbox department of a bank, L et al. [1991] nterpreted constrant coeffcents of a set coverng formulaton as employee productvtes. For a dscontnuous tour schedulng formulaton for full-tme and part-tme employees, they proposed LP-based roundng based on the methods of Barthold III [1981] and Showalter and Mabert [1988]. Loucks and Jacobs [1991] presented a named tour schedulng problem arsng n a fast-food restaurant, nvolvng employee avalabltes, sklls and task assgnments. Ther formulaton s based on goal programmng, amng at mnmsng overstaffng and devatons from targeted work hours for each employee. However, a goal programmng soluton method was deemed too costly, and constructon and mprovement heurstcs were used nstead. In two publcatons, Brusco and Jacobs proposed smulated annealng approaches for tour schedulng scenaros nvolvng flexble breaks. Brusco and Jacobs [1993b] appled SA to dscontnuous tour schedulng and allowed for start-tme float wthn the tours. In contrast, the SA algorthm of Brusco and Jacobs [1993a] refers to contnuous tour schedulng wth equal start tmes on all days and fve consecutve days on per tour. Both approaches buld upon an ntal heurstc soluton and use a neghbourhood whch conssts n droppng and rebuldng tours. Brusco and Jacobs [1993b] showed that smulated annealng s faster than LP-based methods whle obtanng solutons whch are wthn a maxmum devaton of 1.95% from the LP relaxatons. Brusco and 22

39 2.5. Tour Schedulng Approaches Jacobs [1993a] showed that SA outperforms the LP-based roundng technques of Keth [1979] and Morrs and Showalter [1983]. A number of publcatons s based on these smulated annealng algorthms, ncludng Brusco and Jacobs [1995], Brusco and Johns [1995], Brusco et al. [1995], Brusco and Jacobs [1998b] and the shft schedulng approach of Thompson [1996b] descrbed above. Brusco and Jacobs [1995] conducted experments on a tour schedulng formulaton for a mxed full-tme/part-tme workforce. They showed that applyng a dscontnuous formulaton to contnuous problems entals substantal excess labour costs f the use of part-tme staff s lmted. Brusco and Johns [1995] showed how to treat the even dsperson of surplus labour as a secondary goal n the tour schedulng model of Easton and Rossn [1991], usng the above SA algorthm and the LP-based roundng approach of Morrs and Showalter [1983]. The development of a PC-based personnel schedulng system for full-tme and part-tme workers at Unted Arlnes was descrbed n Brusco et al. [1995]. In ths applcaton, the above smulated annealng algorthm bulds upon ntal tour schedules generated by the system of Holloran and Byrn [1986]. Major savngs were reported usng the new system. The authors ncorporated an LP-based technque for reducng the number of shft startng tmes whch was descrbed by Brusco and Jacobs [1998b] (cf. Secton 2.9). Equally based on data of Unted Arlnes operatons, Brusco and Jacobs [1998a] showed how the number of columns n the IP formulaton of a contnuous tour schedulng problem can be reduced by some smple observatons. Jacobs and Bechtold [1993] conducted a comprehensve study on the effcency of tour schedulng wth dfferent degrees of flexblty, usng the nteger programmng formulaton of Baley [1985] and the break model of Bechtold and Jacobs [1990] (descrbed n Secton 2.8). On a set of dfferent requrement patterns, they found out that flexblty wth regard to tour lengths and break placement are major sources of schedule effcency. Whle shft type flexblty (start tmes and lengths) had consderable effects, start-tme float wthn the tours and day-off flexblty were only mnor factors. Furthermore, t was noted that a dfferent extent of labour requrements throughout the day has consderable mpact on roster effcency. Whle the ampltudes of demands are further mportant factors, mean requrements were not found out to be sgnfcant. In a smple tour schedulng envronment, Thompson [1993] conducted a smulaton analyss on the consequences of dfferent requrement representatons. Alternatvely to at-least staffng levels, a servce operaton was modelled by target staffng models, allowng for staff shortages and overcoverages. Target staffng levels as well as stepwse lnear costs of understaffng and overstaffng were calculated from dfferent customer arrval patterns, servce tmes and customer dssatsfacton costs. Usng the LP-based roundng technques of Henderson and Berry [1976] and Keth [1979], Thompson [1993] concluded that more exact representatons of demands and the admttance of supply shortage results n lower overall costs. Bechtold and Brusco [1994a] proposed a sequental approach for dscontnuous tour schedulng of full-tme and part-tme staff whch s amenable to the soluton by a personal computer. For the soluton of the underlyng shft schedulng problems, they combned the algorthm of Showalter and Mabert [1988] wth an mprovement phase by Henderson and Berry [1976], favourng the use of few shft start tmes across the days. The procedures of Bechtold [1981] and Bechtold [1988] were subsequently used for day-off schedulng. In comparson to the method of Easton and Rossn [1991], the approach was shown to yeld slghtly worse results on easy test problems whle results were better on larger scenaros and requred less computng tme. Inspred by Burns and Carter [1985] and Bechtold and Jacobs [1990], Jarrah et al. [1994] combned seven daly shft schedulng formulatons nto an nteger programmng model for dscontnuous tour schedulng, usng specalsed branchng rules on aggregate features. The effectveness of the approach was demonstrated on test cases of the U.S. Postal Servce. Baley et al. [1995] proposed an ntegrated nteger programmng model for project and tour schedulng. Only lttle nformaton was gven on modellng detals and soluton methods. 23

40 2. An Annotated Bblography on Workforce Schedulng Brusco and Johns [1996] exploted the specal structure of dscontnuous tour schedulng problems. Ther method s based on successve fxatons of tour varables n an LP formulaton, startng wth tours whose shfts start n the frst or last perod of the days. On settngs wth only full-tme workers, the authors showed that ths approach nearly always fnds optmal solutons and outperforms the technques of Keth [1979] and Morrs and Showalter [1983]. Usng the reducton technque of Easton and Rossn [1991] for experments on a mxed workforce, the algorthm turned out to perform consstently better than the method of Bechtold and Brusco [1994b]. A system for monthly ground staff rosterng at a large arport was descrbed by Dowlng et al. [1997]. Allocatng actual work tasks as late as one day before operatons, a smulated annealng algorthm was used to solve the tour schedulng problem on the demand-curve level. Brusco [1998] proposed to use the Gomory dual all-nteger cuttng plane to solve a dscontnuous tour schedulng problem nvolvng full-tme and part-tme employees. On schedulng envronments wth dfferent degrees of flexblty, the approach was shown to be superor to a commercal branch-and-bound code for nteger programmng. In a call centre applcaton, Henderson and Mason [1998] consdered the determnaton of labour requrements as an ntegral part of schedulng. They proposed to repeatedly terate between shft or tour schedulng by nteger programmng and the smulaton of customer arrvals by a queueng model, generatng new demand constrants for the schedulng model. Alvarez-Valdez et al. [1999] developed a tabu search algorthm for contnuous tour schedulng of a mxed workforce at a Spansh arcraft fuellng company. In ther contrbuton, schedules refer to one week, but respect constrants wth regard to the precedng week as well as global work balances. The proposed algorthm frst only determnes shft classes for each day. Schedules are then assgned to employees and approprate shfts flled n. The method was compared to a commercal nteger programmng package at equally restrcted runtmes. However, the tabu search approach stll yelded solutons exceedng IP results by 2% and more. Mason and Nelsen [1999] descrbed a named tour schedulng algorthm. The procedure s part of a commercal software package whch has been mplemented n call centres, at an arport Customs authorty and for nurse rosterng. Ther model nvolves qualfcatons and staff preferences and was solved by heurstc decomposton and column generaton Nurse Schedulng Approaches The schedulng of nurses and physcans has receved partcular attenton n the lterature. Whle ths applcaton area s closely related to other domans of workforce schedulng, models usually bear some specal characterstcs. Nurse schedulng generally belongs to the class of named schedulng models, ncorporatng preferences and avalabltes, see e.g. Warner [1976] and Dowsland [1998]. Furthermore, several researchers have consdered nurses of dfferent skll classes [Arthur and Ravndran, 1981] [Jaumard et al., 1998]. Requrements are usually gven per shft type,.e. nurse schedulng refers to the sequental or smultaneous determnaton of day-off and shft postons. Most publcatons assume three non-overlappng shft types, namely mornng, evenng and nght shft [Arthur and Ravndran, 1981]. Breaks are not consdered, but models may nclude the assgnment of nurses to functons, see Schaerf and Mesels [1999]. Soluton methods sometmes only am at fndng feasble solutons [Berrada et al., 1996] [Jaumard et al., 1998] [Schaerf and Mesels, 1999]. Alternatvely, t may be known that requrements cannot be met at all [Warner, 1976], or nurse preferences are consdered more mportant than meetng demands [Arthur and Ravndran, 1981]. As most nurse schedulng models are feasblty-drven, soluton methods are often dfferent from general workforce schedulng and e.g. nclude constrant programmng and tabu search. The class of problems arsng n nurse schedulng s sometmes subsumed under the term employee tmetablng problems [Mesels et al., 1997] [Schaerf and Mesels, 24

41 2.6. Nurse Schedulng Approaches 1999]. We wll shortly survey the relevant lterature; two further publcatons on nurse schedulng wll be descrbed n the subsequent secton on cyclc rosterng. Mller et al. [1976] presented a local search scheme for nurse schedulng wth only one shft type. Ther algorthm ams at meetng mnmum and preferred staffng levels as well as nurse preferences. The method was mplemented n a number of hosptals n the U.S. and Canada, yeldng results whch were superor to the schedules used by the hosptals before. In the model of Warner [1976], nurses were allowed to specfy ther preferences on score cards, dstrbutng penalty ponts for nconvenent assgnments. Dfferent skll classes were consdered. A multplechoce nteger programmng formulaton was used to generate 14-day schedules for each nurse wth costs reflectng preferences. The optmsaton approach was mplemented at the Unversty of Mchgan Hosptal. Arthur and Ravndran [1981] descrbed a sequental approach for nurse schedulng. Whle weekends off were granted accordng to nurse preferences, other days off were scheduled by a goal programmng approach. Shfts of three skll classes were then assgned separately, agan takng preferences nto account. Musa and Saxena [1984] used a goal programmng formulaton for day-off schedulng of nurses. Goals ncluded the coverage of workloads as well as meetng weekend-off preferences and weekly work hours. A specal soluton technque, nspred by the addtve algorthm of Balas [1965], was appled to a small example. Based on the tour schedulng approach of Baley [1985], Ozkarahan and Baley [1988] presented a goal programmng model for nurse schedulng wth a fxed staff sze. Demands were gven per tme perod, and goals ncluded meetng the workforce requrements as well as matchng the derved shft numbers to tours. A sequental soluton approach was used, determnng daly schedules after day-off schedulng. Tests were carred out on real-world data, and sgnfcant savngs were reported wth regard to the manual plannng method used before. Wel et al. [1995] developed a constrant programmng (CP) model for nurse schedulng, usng a smple search strategy on a small real-world example. In a strongly constraned settng ncludng preassgned shfts, Cheng et al. [1997] presented another CP method for nurse schedulng. Redundant modellng was used, couplng two alternatve constrant programmng models by socalled channellng constrants. The technque was successvely appled to real-world data from a Hong Kong hosptal. Mesels et al. [1997] descrbed the development of a nurse schedulng system nvolvng a combned CP/knowledge-based approach. Qualfcaton and shft compatblty constrants were ncorporated as well as nurse preferences. The settng of Berrada et al. [1996] consders constrants on the number of consecutve and weekly workng days as well as restrctons on the placement of days off and preferences. The model was solved by nteger programmng and tabu search. Contrary to Berrada et al. [1996], Dowsland [1998] regarded demands for non-overlappng shfts as hard constrants. An nvolved two-phase tabu search algorthm was proposed, usng strategc oscllaton and chan neghbourhoods. Tabu search was reported to be more robust than smulated annealng or random descent. Jaumard et al. [1998] descrbed a general framework for the soluton of nurse schedulng problems by branch-and-prce. Ther settng s closer to general workforce schedulng as demand fgures are gven by so-called demand perods and shfts are allowed to overlap. Preferences and sklls are consdered as well as understaffng. Addtonally, the model ncludes matchng condtons for contguty between schedulng perods. The authors used a column generaton formulaton, representng workng hours, weekends off, consecutve days on, holdays and shft type constrants as constraned resources n a shortest path subproblem. Prelmnary tests on data from a Montréal hosptal ndcated rather hgh runnng tmes. Another approach for tour schedulng n a nursery applcaton was descrbed by Mason and Smth [1998]. Smlarly to Jaumard et al. [1998], demand fgures are gven per segment n whch no shfts start and end, and column generaton was used n an nteger programmng formulaton. The model ncludes constrants on the number of days on and off as well as preferences wth regard 25

42 2. An Annotated Bblography on Workforce Schedulng to the choce of shfts, shft transtons and general workstretch features. A column generator generates mnmum-cost workstretches and combnes them nto roster lnes, usng a network flow formulaton and dynamc programmng. Furthermore, t was shown how workng hour constrants can be respected. Schaerf and Mesels [1999] used generalsed local search to fnd an assgnment of nurses to shfts and functons such that the least number of constrants s volated. Ther model ncludes nurse avalabltes as well as qualfcatons. Carter and Laperre [2001] summarsed schedulng technques for emergency room physcans n hosptals around Montréal. A multtude of relevant restrctons was descrbed. It was shown how schedules used n two hosptals could be slghtly mproved by manual changes and smple tabu search technques. Most recently, Bellant et al. [2004] descrbed a monthly nurse schedulng problem n an Italan hosptal. The model ncludes preferences as well as holdays. Startng wth the assgnment of holdays, requested days off and nght shfts, a greedy algorthm bulds an ntal soluton. Soluton mprovement by tabu search and terated local search yelded solutons whch were superor to manually created schedules, but none of the two mprovement methods turned out to strctly outperform the other Cyclc Roster Approaches A lmted number of publcatons deal wth cyclc rosters on whch workers rotate n a cyclc fashon, cf. Secton The man advantage of cyclc rosters s ther farness because all employees work on the same pattern [Bennett and Potts, 1968]. However, rotatng schedules ental an equal coverage for every week for whch they are unrolled, meanng that t s not possble to adapt to changng labour demands [Baker, 1976] [Ernst et al., 2004]. Some publcatons whch refer to cyclc rosters have already been cted before, namely the combnatoral approaches for day-off schedulng by Lowerre [1977], Emmons [1985], Burns and Koop [1987] and Koop [1988] as well as the shft assgnment problems treated n van den Berg and Panton [1994], Lau [1994], Lau [1996a] and Lau [1996b]. Although cyclc rosterng s a specal case of tour schedulng, t s nterestng to note that no publcaton has treated cyclc rosterng n an ntegrated way, determnng daly shfts and shft/day-off schedules smultaneously. Bennett and Potts [1968] devsed a two-step approach for cyclc schedulng of bus drvers and operators, sequentally assgnng days off and shfts of gven types. Specal goals for the dstrbuton of days off were partly solved to optmalty by combnatoral analyss. In an applcaton to polce and fre departments, Laporte et al. [1980] developed an nteger programmng approach for generatng cyclc rosters. In ther model, shft changes between three non-overlappng shfts are dsallowed wthn workstretches. Integer programmng was used for the selecton of buldng blocks among the set of all feasble workstretches, and solutons contanng dsconnected subcycles were cut off by addtonal constrants. An alternatve nteger programmng approach for cyclc nurse schedulng wth only one shft type was proposed by Rosenbloom and Goertzen [1987] who generated vald weekly sequences of days off and shfts n a frst step and defned a matrx of week transtons respectng all constrants. An nteger program was then used to choose among the vald transtons. Balakrshnan and Wong [1990] presented a cyclc rosterng problem wth a gven workforce sze and demand fgures per shft type. Shft changes wthn workstretches were dsallowed, and the frst workstretch was assumed to start on a Monday n order to break cyclcty. Incorporatng coverage constrants n a Lagrangan relaxaton approach, the subproblem was formulated and solved as a network flow model. The possble dualty gap was closed by the soluton of a K- shortest path problem. Panton [1991] dvded a cyclc roster of fxed sze nto modules of several weeks. The day-off 26

43 2.7. Cyclc Roster Approaches schedulng and shft assgnment problems were then solved wthn each module. In ther heurstc soluton approach, weekends off are assgned frst, and labour requrements are evenly dvded between the modules. Days off are scheduled by complete enumeraton, respectng matchng condtons between weeks. Fnally, shfts are assgned usng the out-of-klter algorthm for network flows. The approach was evaluated on schedulng problems for Casno securty offcers. Several publcatons descrbe the development of a schedulng system named ROMAN, developed at the Sngapore Informaton Technology Insttute. The system ncorporates algorthms for cyclc and non-cyclc named rosterng. Chew [1991] gave a descrpton the underlyng cyclc roster algorthm n an applcaton to arport baggage servces. Due to specal rules, the model only allows for a small number of feasble workstretches. Chew [1991] formulated an nteger program on the workstretch level, but outlned only a manual soluton procedure, assgnng shfts one by one wth non-ncreasng start tmes. System overvews and applcatons to the health care and transportaton sector were reported n Khoong and Lau [1992] and Khoong et al. [1994]. Khoong and Lau [1992] also descrbed a sequental approach for cyclc roster generaton, startng wth the determnaton of requred shft numbers and the necessary workforce sze. Subsequently, days off and shfts were assgned, usng dfferent heurstc methods, branch-and-bound search and allowng for user nteracton on dfferent levels. Khoong et al. [1994] addtonally mentoned a module for ndvdual rosterng whch e.g. ncorporates employee preferences. The system allows for the defnton of work rules n a specfcaton language and provdes means for what-f analyses of work polces, employment levels, demand levels and deployment profles. Khoong et al. [1994] shortly surveyed solutons methods, ncludng heurstcs, local search, branch-and-bound, graph algorthms and manual nteracton on dfferent subproblems. Mason et al. [1998] descrbed the development of another rosterng system for the Customs authorty at Auckland arport. Ther methods starts by determnng labour requrements per tme perod, usng heurstcs and terated smulaton of passenger arrvals. A shft schedulng formulaton s then used to cover demands by full-tme and part-tme staff. Fnally, full-tme shfts are postoned n a cyclc roster by a method descrbed by Panton [1991]. Buldng upon the work of Balakrshnan and Wong [1990], Mllar and Kragu [1998] presented a network flow model for cyclc and non-cyclc anonymous nurse rosterng. As only two nonoverlappng shft types are used, all feasble workstretches can be enumerated and represented as nodes n a flow formulaton. Incorporatng shft coverages as well as constrants on weekends off and weekly workng hours, the model was solved by a commercal nteger programmng package. One of the best recent references for cyclc rosterng s gven by Mason [1999]. The author revewed IP models for the generaton of cyclc rosters for gven shft numbers. He proposed to represent workstretches by columns, takng dfferent shft types and shft changes wthn workstretches nto account. In order to avod dsconnected solutons, a novel three-way branch was presented whch seems to be more powerful than the cuttng scheme of Laporte et al. [1980]. Takng a half-automatc heurstc approach, Muslja et al. [2000] solved a cyclc rosterng problem for gven workforce szes and shft requrements. After determnng lengths of work blocks, blocks of shfts and days off are dstrbuted subject to weekend-off constrants. Fnally, vald sequences of shfts are generated and assgned to the work blocks. The algorthm s part of a commercal software package. Felc and Gentle [2004] descrbed an nteger programmng algorthm for cyclc rosterng at Altala, usng a formulaton whch ntally exhbts strong symmetry. A number of vald nequaltes was derved n order to tghten the LP bound, makng use of specal problem structures wth regard to weekends off and days on and off. Specalsed branchng strateges am at breakng symmetry. Real-world test problems were used for the expermental evaluaton. 27

44 2. An Annotated Bblography on Workforce Schedulng 2.8. Break Placement Flexblty and Implct Modellng Specal attenton has been gven to the representaton of relef and lunch breaks n shft and tour schedulng. Aykn [1996] notes that n shfts of at least nne hours, employees usually receve one lunch break of 30 or 60 mnutes and two relef breaks of 15 mnutes each. Other authors report on settngs n whch only one lunch breaks s requred, e.g. Brusco and Johns [1996]. Furthermore, some organsatons use splt shfts whch Thompson [1992] defnes as shfts wth a meal break of at least 1.5 hours, see also Segal [1972], Holloran and Byrn [1986] and Jacobs and Bechtold [1993]. Clearly, workers are not avalable for coverng workloads durng ther break. Breaks are usually restrcted to take place wthn certan tme ntervals whch can e.g. be governed by canteen openng hours [Bechtold and Jacobs, 1990]. The placement of breaks then provdes flexblty whch can be exploted n schedulng [Dantzg, 1954] [Segal, 1972]. The consderaton of flexble breaks n shft and tour schedulng based on the above set coverng model has attracted consderable research. A straghtforward approach for the ncorporaton of breaks conssts n replcatng shft varables for each vald break placement [Dantzg, 1954]. The columns n the set coverng formulaton (2.1)-(2.3) then only equal 1 f none of the breaks s taken at the gven moment. Consderng more than one break mples creatng one shft varable for each combnaton of break start tmes. If breaks can only be taken wthn rather lmted ntervals, ths s a feasble approach, see e.g. Bennett and Potts [1968], Thompson [1990] and Brusco [1998]. Wth larger degrees of freedom, the explct ncorporaton of breaks s generally judged ntractable [Bechtold, 1988]. Keth [1979] and Schndler and Semmel [1993] propose to consder break placement only n a second step. Other authors completely gnore breaks (e.g. Morrs and Showalter [1983], Baley and Feld [1985] and Brusco and Jacobs [2001]) or use only fxed breaks (e.g. Brusco and Jacobs [1993b], Brusco and Johns [1995]). However, Showalter and Mabert [1988] and Jacobs and Bechtold [1993] have shown that break placement flexblty plays an mportant role n the creaton of effcent shft plans and rosters. Clearly, flexble breaks can be more easly ncorporated n heurstc soluton approaches, see e.g. Henderson and Berry [1976]. For shft schedulng scenaros wth three breaks, Panton and Ryan [1999] and Mehrotra et al. [2000] proposed to use column generaton to enumerate break combnatons and showed that ths approach s compettve wth other models. However, t does not explot sze advantages related to so-called mplct formulatons. Gaballa and Pearce [1979] were the frst to use sets of break varables. A dstnct break varable s attrbuted to each shft and break start tme. Break varables reduce workforce avalabltes n the tme perods covered by the breaks. By one constrant per shft, the sum of breaks s restrcted to be equal to the numbers of shfts. Bechtold and Jacobs [1990] mproved ths basc dea by sharng break varables between dfferent shfts. A set of so-called forward and backward constrants and one equalty constrant ensures the avalablty of suffcent breaks for all shfts. In a post-processng step, breaks are matched to the shfts. The equvalence of ths model to a formulaton ncorporatng breaks explctly n the shft varables was proved by Bechtold and Jacobs [1996]. In comparson to Gaballa and Pearce [1979], the approach of Bechtold and Jacobs [1990] reduces the number of constrants consderably. However, t only apples to less-than-24h operatons and makes rather restrctve assumptons: shfts contan only one break, all break duratons are equal, and break tme wndows do not exhbt so-called extraordnary overlap. These restrctons do not apply to the approach of Aykn [1996] who generalsed the Gaballa/Pearce model by usng one set of break varables for each of three breaks n a shft. In Aykn [1998], ths model was appled to cyclc shft schedulng problems. More recently, Aykn [2000] showed that even f hs formulaton requres more break varables, the number of nonzeros 28

45 2.8. Break Placement Flexblty and Implct Modellng n the constrant matrx s less than n the extended formulaton of Bechtold and Jacobs [1990]. On a set of artfcal shft schedulng problems, optmal solutons were shown to be obtaned n lower runtmes. However, Aykn dd not make use of a constrant substtuton dea gven n Bechtold and Jacobs [1990] whch reduces the number of nonzero elements n the constrant matrx. Topaloglu and Ozkarahan [1998] compared the break schedulng approaches of Bechtold and Jacobs [1990] and Aykn [1996] on a tour schedulng formulaton based on Baley [1985], generalsng the Bechtold/Jacobs model to several breaks per shft. A comparatve evaluaton showed that on many tour schedulng settngs, the Bechtold/Jacobs approach entals lower computaton tmes. Other researchers have also adopted the Bechtold/Jacobs approach for representng flexble breaks, ncludng Jarrah et al. [1994], Thompson [1995] and Thompson [1996a]. Brusco and Jacobs [2000] showed how to overcome the restrcton to dscontnuous operatons by the ntroducton of so-called wrap-around break varables. Rekk et al. [2003] gave a new nterpretaton of the forward/backward constrants of Bechtold and Jacobs [1990] by Benders reformulaton and elmnaton of redundant constrants. Furthermore, they showed the equvalence of the models of Bechtold and Jacobs [1990] and Aykn [1996]. Rekk et al. [2003] remarked that the Bechtold/Jacobs formulaton bears sze advantages especally f shfts have many break start tmes n common. Implct modellng has been used n other shft and tour schedulng applcatons as well. The basc dea of mplct models conssts n usng several categores of varables whch are coupled by constrants, avodng redundancy when shfts or tours share common propertes. Couplng constrants encode feasblty condtons on the assgnment of dfferent classes of objects, leavng the generaton of actual solutons for a postprocessng step, see e.g. Baley [1985], Bechtold and Jacobs [1990] and Thompson [1995]. Moondra [1976] proposed an mplct model for representng start tme flexblty n shft schedulng. Thompson [1995] combned ths dea wth the mplct break model of Bechtold and Jacobs [1990]. Doubly mplct shft schedulng was also used by Thompson [1996a] n order to evaluate the effects of dfferent numbers of acton tmes whch consst of shft and break start and end tmes. Implct shft models are restrcted to settngs wth large schedulng flexblty and assume shft costs to be proportonal to the number of covered tme perods [Mehrotra et al., 2000]. Thompson [1995] showed that the mplct shft model exhbts substantal sze advantages f a shft schedulng settng conforms wth these assumptons. Baley [1985] presented a model for mplct handlng of start tme flexblty (float) n tour schedulng. He showed that f dfferent shft types are allowed n a weekly tour, feasble day-on/off patterns can be represented by a dstnct set of varables whch s coupled to varables determnng the shfts per day. If these assumptons are too general, t may stll be suffcent to restrct weekly shfts to an nterval of admssble start tmes. An mplct model for overlappng start-tme bands was descrbed by Jacobs and Brusco [1996]. Restrctng each tour to a set of start tmes, the authors coupled the tour varables to shft varables of the respectve start-tme band. In Brusco and Jacobs [2000], ths formulaton was ntegrated wth the mplct break placement formulaton of Bechtold and Jacobs [1990]. Rekk et al. [2003] proposed a doubly mplct formulaton for start-tme bands and break placement flexblty. They showed how to overcome a lmtaton of Brusco and Jacobs [2000], allowng for overlappng start-tme bands between the days by the ntroducton of wrap-around shft varables. Thompson [1990] developed an mplct model for the handlng of lmted employee avalabltes n named shft schedulng. So-called regons represent sets of shfts (and equvalently ntervals of tme) n whch more than one employee s avalable. Employees are assgned to regons, and the set of regon varables s coupled to the shft varables. Thompson [1992] conducted a study on usng servce personnel for blocks of controllable work (e.g. mantenance or cleanng tasks) when no uncontrollable work (due to customer arrvals) has to 29

46 2. An Annotated Bblography on Workforce Schedulng be carred out. In ther approach, a set of varables represents start tmes for blocks of controllable work. Two nteger programmng formulatons were compared whch are very smlar to the break models of Gaballa and Pearce [1979] and Bechtold and Jacobs [1990]. By a computatonal study on artfcal test problems, the second formulaton was shown to be superor n terms of model szes and soluton tmes. Çezk et al. [2001] coupled seven daly shft schedulng formulatons nto a dscontnuous tour schedulng formulaton, restrctng shfts on consecutve days by forward and backward constrant systems as n Bechtold and Jacobs [1990]. In another nterestng paper, Çezk and Günlük [2002] gave a general nterpretaton of mplct models by projectng out varables of a bpartte flow formulaton. They showed how dfferent assumptons lead to dfferent representatonal complextes. Ther analyss was llustrated wth the mplct break model of Bechtold and Jacobs [1990] and the tour schedulng formulaton of Çezk et al. [2001] Workng Subset Methods Besdes mplct modellng, scentsts have proposed to use workng subsets of the shft types to reduce problem szes. Some of these propostons have already been mentoned throughout the precedng exposton. Several authors have treated the mnmsaton of dfferent shft types as mplct or explct objectves n shft or tour schedulng models, see Holloran and Byrn [1986], Bechtold and Brusco [1994a], Brusco et al. [1995] and Muslu et al. [2004]. Mabert and Watts [1982] mentoned that the use of workng subsets not only reduces computatonal complexty, but s also convenent for the staff. Brusco and Jacobs [2001] ponted out that restrctons on shft startng tmes avod admnstratve burden and ease the organsaton of brefng sessons for employees. Thompson [1996a] evaluated the mpact of acton tmes (.e. shft and break start and end tmes) on servce organsatons. In the followng, we shortly summarse publcatons whch explctly tackle workng subset problems. Henderson and Berry [1976] replcated shft varables n the classcal set coverng formulaton for each possble placement of three breaks. From the resultng shft realsatons, they chose a workng subset by selectng a frst random shft and repeatedly addng shfts of hghest dfferences wth regard to the number of covered perods. They showed that for low workng subset szes, ths method s superor to random selecton of shfts. Furthermore, Henderson and Berry [1976] stated that only 40 to 50 shfts wth fxed breaks are generally suffcent to fnd effcent solutons. In a tour schedulng applcaton for part-tme staff n a bank, Mabert and Watts [1982] proposed a heurstc reducton method for the number of shfts. A pror, shfts of 4, 5 and 6 hours were admtted wth respectve numbers of 5, 4 and 3 shfts per tour. Usng relatve frequences of shfts n the soluton of a weekly shft schedulng formulaton, Mabert and Watts [1982] selected workng subsets of shft types and workdays by based samplng. Easton and Rossn [1991] used column generaton to mplctly represent tours wth a hgh degree of schedulng flexblty. In ther contrbuton, only tours wth nonzero values n the LP relaxaton are used for a tour schedulng algorthm. The authors showed that ths method s superor to the approaches of Henderson and Berry [1976] and Mabert and Watts [1982] as well as LP-based roundng technques. A comparatve evaluaton of dfferent workng subset methods was presented by Bechtold and Brusco [1994b], solvng dscontnuous tour schedulng problems by nteger programmng. They dstngushed between structural methods usng only nformaton on the shfts (lke n Henderson and Berry [1976]) and demand-based procedures (as n Mabert and Watts [1982]). In addton to the aforementoned technques, the authors proposed two further structural methods and one demand-based method. It was shown that best results for dfferent workng subset szes from 10 to 50 shfts are obtaned by ether the new structural or the new demand-based method. Furthermore, 30

47 2.10. Complexty Results t was demonstrated that global optmal solutons can usually be obtaned wth workng set szes of 40 or 50 shfts. Bechtold and Brusco [1994b] mentoned that structural and demand-based workng subset methods could be combned wth the refnement procedure of Easton and Rossn [1991]. The Unted Arlnes schedulng system descrbed by Brusco et al. [1995] ncorporates another method for shft start tme selecton whch Brusco and Jacobs [1998b] presented n more detal. The method s based on the superposton of daly demands, resultng n a shft schedulng formulaton. Ths problem s solved by a heurstc column generaton algorthm, usng dynamc sets of admssble start tmes, dfferent shft selecton rules and random elements. The subsequent smulated annealng algorthm for tour schedulng only employs shfts used n the shft schedulng soluton. Brusco and Jacobs [1998b] showed that ths method yelds results whch exceed the LP relaxaton only slghtly. Based on the algorthm of Brusco [1998], Brusco and Jacobs [2001] evaluated the mpact of the numbers and choces of shft startng tmes n contnuous tour schedulng. Restrctng all shfts n a tour to start at the same tme, they extended the basc IP formulaton by startng tme constrants. By an expermental evaluaton wth dfferent work polces on demand profles from servce ndustres, they found out that effcent schedules can often be found wth as lttle as three to fve startng tmes. However, t was also stated that the number of startng-tme subsets whch are capable of provdng optmal workforce szes s often small, and poor selectons can lead to substantal penaltes. Furthermore, a case study for a call centre was descrbed, usng heurstc startng tme selecton procedures n a spreadsheet applcaton Complexty Results A number of authors have shown that classes of problems arsng n workforce schedulng are N P-hard. Barthold III [1981] proved that cyclc staffng wth ntermttently avalable resources s N P-hard. Ths problem e.g. covers shft schedulng problems wth breaks and cyclc employee avalablty as well as cyclc tour schedulng problems. However, Barthold III [1981] also showed that cyclc staffng problems are solvable n polynomal tme f the columns n a cyclc set coverng formulaton contan contguous blocks of ones. Vohra [1988] gave a polynomaltme algorthm for problems wth equal demands. The combnatoral approaches descrbed n Secton 2.3 represent further classes of polynomal subproblems. Van den Berg and Panton [1994] analysed the contnuous shft assgnment problem (CoSA) whch conssts n attrbutng gven shfts to gaps n a cyclc roster such that consecutve days are attrbuted equal shft types. By a reducton from the PARTITION problem, they showed that ths problem s N P-hard. Closely related s the changng shft assgnment problem (CSAP) of Lau [1994], prescrbng vald pars of shft types on consecutve days. CSAP was shown to be N P- hard by Lau [1994] and Lau [1996b] even under restrctve assumptons, usng a reducton from 3SAT. Both publcatons provde a further proof for the N P-hardness of cyclc rosterng. Kortsarz and Slany [2001] studed the relaton of the mnmum shft desgn problem consdered n Muslu et al. [2004] to the mnmum edge-cost flow problem. The problem nvolves the choce of shft types and the determnaton of the number of employees assgned to each shft. Kortsarz and Slany [2001] showed that the mnmum shft desgn problem s N P-hard. Furthermore, they stated that there s a constant c < 1 such that approxmatng the shft desgn problem wthn c ln n s N P-hard. 31

48 2. An Annotated Bblography on Workforce Schedulng Relatonshp to Crew Rosterng Related to general workforce schedulng s the rosterng of arlne crews,.e. plots, flght engneers and attendants. Much attenton has been gven to crew rosterng snce cabn personnel s usually the second most mportant cost factor for arlnes (after fuel costs) [Anbl et al., 1992]. Overvews on arlne crew schedulng and rosterng can be found n Bodn et al. [1983], Teodorovć [1989] and, more recently, n Kohl and Karsch [2004]. For annotatons on parallels between general workforce and crew schedulng, see also Dowlng et al. [1997], Rekk et al. [2003] and Ernst et al. [2004]. Crew rosterng problems are usually solved n two stages [Ryan, 1992]. In a frst step, the flght legs (sngle nonstop flghts, also segments) are grouped nto so-called parngs (equvalently, rotatons). A parng s a sequence of flght legs whch can be carred out by one crew, startng and fnshng at a crew base [Anbl et al., 1992]. Whle parngs for short-haul flghts usually span over one or two days, long-haul flghts often ental parngs of three or four days. Unon and legal regulatons usually mpose mnmum rest tmes between workng days as well as workng hour constrants [Vance et al., 1997]. Crew parng optmsaton s usually formulated as a set parttonng problem 1 and solved by nteger programmng, see e.g. Anbl et al. [1992], Hoffman and Padberg [1993] and Vance et al. [1997]. In the subsequent crew rosterng phase, gven parngs are covered by rosters [Ernst et al., 2004]. In contrast to crew parng, crew rosterng s usually carred out on a named bass,.e. employees for the sngle roster lnes are known. Soluton approaches usually take preassgned actvtes lke ground dutes, tranngs and smulator sessons nto account, see e.g. Gamache and Soums [1998] and Day and Ryan [1997]. Addtonally, staff qualfcatons may be explctly consdered [Gamache et al., 1999]. The alternatve bdlne approach whch s most frequent n North Amerca assumes that rosters are anonymous [Kohl and Karsch, 2004]. Each crew member then chooses a roster lne n order of senorty. A thrd possblty s preferental bddng, meanng that the anonymous roster generaton method takes preference scores nto account, usually weghted by senorty. Crew rosterng problems often decompose by crew base and arcraft type snce e.g. plots are usually only qualfed for one arcraft type [Gamache et al., 1998]. The schedulng horzon s usually four weeks or a month [Ryan, 1992] [Gamache et al., 1999]. As crew parng, crew rosterng s usually formulated as a generalsed set parttonng model (e.g. Ryan [1992], Gamache et al. [1999]): subject to m mn c r X r j 1 r R j m j=1 a pr X r = b p p {1,..., n} (2.4) r R j X r = 1 j {1,..., m} (2.5) r R j m X r {0, 1} r R j (2.6) where n s the number of parngs and m the number of employees. R j denotes s an ndex set for feasble roster lnes for employee j. The bnary decson varables X r choose among the 1 Set parttong problems can be stated as P j J cjxj subject to P j J c j R + and a j {0, 1}. j=1 ajxj = 1 I, Xj {0, 1} j J wth 32

49 2.11. Relatonshp to Crew Rosterng roster lnes such that each employee s assgned exactly one roster lne (constrants (2.5)) and each parng s assgned the requred number b p of crew members (crew complement, constrants (2.4)). The enumeraton of feasble roster lnes s often treated as a separate problem [Chrstou et al., 1999] [Kohl and Karsch, 2004]. The predomnant soluton method for the above model s nteger programmng, often n conjuncton wth column generaton, see e.g. Ryan [1992], Day and Ryan [1997], Gamache et al. [1998] and Gamache et al. [1999]. Fahle et al. [2002] and Sellmann et al. [2002] have proposed soluton methods combnng nteger programmng wth constrant programmng. More recently, crew rosterng has been appled to ralway applcatons, see e.g. Caprara et al. [1997], Caprara et al. [1998] and Ernst et al. [2000]. The basc settng s closely related to arcrew rosterng. In a frst step, round trps (parngs) are generated for dfferent crew bases whch are rostered n a second step. However, the schedulng horzon s usually one week, rosters are anonymous and can be cyclc or non-cyclc [Ernst et al., 2000]. In the cyclc roster applcatons descrbed by Caprara et al. [1997] and Caprara et al. [1998], one crew starts on each day of the roster nstead of attrbutng one worker or crew to each roster week (as n the cyclc rosters of Secton 2.7). At frst sght, there are consderable smlartes between crew rosterng and general workforce schedulng. Both settngs mpose smlar constrants lke mnmum rest tmes, restrctons on consecutve days on and off as well as workng hour constrants. Whle workforce schedulng problems are often formulated as set coverng programs, set parttonng models and algorthms are the predomnant bass for crew rosterng approaches. In both settngs, column generaton approaches have receved consderable attenton n recent years. However, there are some mportant dfferences. Whle n general workforce schedulng, employees may only be scheduled wthn gven lmts of shft lengths and start tmes, crew dutes result from the gven parngs. Breaks are not explctly consdered, but result from rest tmes (sts) between subsequent trps. Crew schedulng furthermore ncorporates lnkng constrants whch guarantee geographc contguty [Dowlng et al., 1997]. Fnally, crew schedulng generally refers to named schedulng, and rosters are non-cyclc wth exceptons n ralcrew rosterng. A further applcaton of anonymous rosterng s the schedulng of bus drvers whch s also referred to as run-cuttng n North Amerca. A large number of contrbutons was presented on nternatonal workshops on computer-aded schedulng of publc transport [Wren, 1981] [Rousseau, 1985] [Daduna and Wren, 1988] [Desrochers and Rousseau, 1992] [Daduna et al., 1995] [Wlson, 1999]. An overvew on bus drver schedulng can e.g. be found n Wren and Rousseau [1995]. A bus schedule defnes so-called vehcle blocks,.e. daly tours of a bus, startng and endng at a depot. Furthermore, t defnes relef ponts whch correspond to stopovers away from the depot at whch drvers may change. Trps between such relef ponts buld basc tasks to be covered by the drver schedule. The problem s ether stated as a set parttonng model (e.g. Falkner and Ryan [1992] or as a set coverng relaxaton wth one coverage constrants for each task, see e.g. Smth and Wren [1988] or Desrochers and Soums [1989]. Overcoverage of tasks s treated n a subsequent step or accepted as so-called deadheadng wth drvers as passengers. Falkner and Ryan [1992] have proposed a model for smultaneous schedulng of vehcles and drvers. As for arcrew schedulng (see e.g. Kohl and Karsch [2004]), much progress n bus drver schedulng results from the development of commercal systems lke HASTUS and CREW-OPT n North Amerca [Blas and Rousseau, 1988] [Desrochers and Soums, 1989], IMPACS n the Unted Kngdom [Smth and Wren, 1988] and HOT n Germany [Daduna and Mojslovc, 1988]. As n arlne and ralway crew rosterng, bus drver schedulng s drven by the tasks of the bus schedule, and there s no noton of shft types lke n general workforce schedulng [Wren and Rousseau, 1995]. Meal breaks are usually taken nto account [Smth and Wren, 1988] [Desrochers and Soums, 1989]. Furthermore, models sometmes nclude shft overtme and splt shfts, consstng of two spells separated by a break of several hours [Wren and Rousseau, 1995]. 33

50 2. An Annotated Bblography on Workforce Schedulng 34

51 3. Local Search n Constrant Programmng All ntellgent thoughts have already been thought; what s necessary s only to try to thnk them agan. Johann Wolfgang von Goethe In the followng, we gve a short ntroducton to constrant programmng whch has become a popular soluton method for dscrete optmsaton problems. We wll start by descrbng fundamental concepts. Whle constrant programmng usually uses branch-and-bound search, we wll revew work on constrant programmng n a local search context. Furthermore, we wll descrbe dfferent methods for representng vehcle routng problems n a constrant programmng framework. In Chapters 4 and 5, these technques wll be appled to two problems arsng n arport workforce plannng Constrant Programmng Constrant programmng (CP) s a paradgm whch ams at solvng combnatoral optmsaton problems [Baptste et al., 2001]. Lke other soluton methods, CP comprses two components: a search strategy and a search space reducton strategy. Constrant programmng uses a technque called constrant propagaton for search space reducton whle branch-and-bound s the predomnant soluton technque. Constrant propagaton s based on the formulaton of combnatoral search problems as constrant satsfacton problems (CSP). The mage nterpretaton settngs of Huffman [1971], Clowes [1971] and Waltz [1975] were the frst publcatons on constrant satsfacton problems. For surveys on CSP solvng, see Meseguer [1989] and Kumar [1992], for an n-depth treatment of constrant processng e.g. Tsang [1993] and Dechter [2003]. Formally, a CSP can be descrbed by a trple P = (V, DOM, CONS): V = {x 1,..., x n } s a fnte set of varables; DOM = {D(x) x V } s a set of domans wth D(x) contanng all values that can be assgned to x; CONS = {c 1,..., c m } s a set of constrants. Domans are usually fnte. A constrant c CONS s a functon c : D(x 1 )... D(x k ) {true, false} on a base set V = {x 1,..., x k }. V s called the arty of the constrant. For a set V = {x 1,..., x n }, an assgnment s an element of D(x 1 )... D(x n ). If c CONS s a constrant wth base set V = {x 1,..., x n }, an assgnment a D(x 1 )... D(x n ) satsfes c ff c(a 1,..., a n ) = true. Solvng a CSP P = (V, DOM, CONS) s equvalent to fndng an assgnment a whch satsfes all constrants c CONS. Constrant satsfacton problems are often represented as (hyper-)graphs wth the node set V, node labels from DOM and a (hyper-)edge on the base set V of each constrant c CONS. If all constrants n CONS are bnary ( V = 2), the constrant graph wll be an ordnary undrected graph. 35

52 3. Local Search n Constrant Programmng Whle for constrant satsfacton problems, we seek a feasble soluton, the task assocated wth a constrant optmsaton problem (COP) conssts n fndng an optmal feasble soluton wth regard to an objectve functon z. z s a functon z : D(x 1 )... D(x n ) R, attrbutng a value z(a) to each assgnment. Wthout loss of generalty, t can be assumed that z s to be mnmsed. A COP nstance P can thus be descrbed by a quadruple P = (V, DOM, CONS, z). General CSP and COP solvng s N P-hard [Dechter, 2003]. Clearly, fnte doman CSPs or COPs can be solved by full enumeraton, generatng all possble assgnments for the varables. However, ths wll only be a practcal approach for very small examples. Constrant propagaton provdes a more evolved search space reducton technque. The basc dea of constrant propagaton s to elmnate nconsstent varable assgnments by repeated applcaton of mplct constrants, the so-called consstency tests. For the applcaton of consstency tests, we mantan varable-specfc subsets δ(x ) D ( x ) (x V ) or hgher-order workng sets δ(x 1,..., x l ) D(x 1 )... D(x l ). A consstency test has a condton part A and an nstructon part B: Each tme A s satsfed, execute B whch possbly restrcts the workng subset of combned domans. Dfferent levels of consstency can be acheved by consstency tests. Montanar [1974] ntroduced the basc notons of node, arc, and path consstency, relatng to problems wth only bnary constrants. Imagne that domans δ(x) are mantaned for each sngle varable x V. Node consstency s smply acheved f the values n each varable s doman satsfy the constrants on that varable. A constrant network s arc consstent f for every value n δ(x ), there s a value n the doman δ(x j ) of each varable x j x such that the combned assgnment obeys all constrants. Fnally, a model s path consstent f for each par (x, x j ) of varables, each consstent assgnment from δ(x ) δ(x j ) and each thrd varable x k, there s a value n the doman δ(x k ) such that the combned assgnment satsfes all bnary constrants on the varables. If we nclude hgher-order (non-bnary) constrants, the noton of generalsed arc consstency can be used to descrbe the state of a constrant model. A varable x s then called generalsed arc-consstent relatve to a constrant c CONS nvolvng x ff for any value from δ(x ), there s an assgnment from δ(x j ) for each varable x j x nvolved n c such that c s fulflled. The constrant model s sad to be arc-consstent f each of ts varables s arc-consstent wth regard to all constrants [Dechter, 2003]. More general s the noton of k-consstency [Freuder, 1978]. We say that a partal assgnment (a 1,..., a k ) s k-feasble f t satsfes all constrants whch at most contan these varables. Algorthms for obtanng k-consstency mantan sets of combned assgnments for varable subsets of order k 1. k-consstency s then acheved f for any (k 1)-feasble assgnment from δ(x 1,..., x k 1 ) D(x 1 )... D(x k 1 ) and for any further varable x k, there exsts an assgnment for x k taken from a set δ(x k ) D(x k ) such that the combned assgnment s k- feasble. However, managng (k 1)-dmensonal workng subsets s only practcal for small values for k. Therefore, the concept of doman consstency has been ntroduced whch only necesstates onedmensonal subsets δ(x ) D(x ) for each varable x V [Dorndorf et al., 2000]. A problem s k-d-consstent f for all varable sets V := {x 1,..., x k 1 } of order k 1 and every varable x k, every nstantaton a k δ(x k ) of x k can be extended to a feasble assgnment,.e. there s a k-feasble assgnment (a 1,..., a k ) wth a j δ(x j ). Note that k-d-consstency corresponds to generalsed arc consstency f the maxmum arty over the constrants s less or equal to k. If domans are mantaned by ntervals δ(x ) = [l, r ] := [l, l +1,..., r ] (gven D(x ) N 0 ), we speak of bound consstency. The defnton of bound consstency s analogous to doman consstency: The workng subsets δ(x ) are k-b-consstent ff for all varable subsets V := {x 1,..., x k 1 } of order k 1, for every k th varable x k and each a k [l k, r k ], there are values a 1 δ(x 1 ),..., a k 1 δ(x k 1 ) such that (a 1,..., a k ) s k-feasble. In some contexts, domans can be naturally defned by ntervals, meanng that doman and bound consstency 36

53 3.1. Constrant Programmng concde. The repeated applcaton of consstency tests can be nterpreted as a fxed pont teraton. Unqueness of the fxed pont can be proved f consstency tests are monotonous, see e.g. Dorndorf et al. [2000]. Constrant programmng systems usually mplement some combnaton of doman and bound consstency and normally only guarantee k-consstency for k = 2 (arc consstency). A seres of algorthms for achevng arc consstency (AC-3, AC-5, etc.) have been proposed, see Dechter [2003] for an overvew. Algorthm 1 shows the basc scheme of the AC-3 algorthm. A queue Q s used to mantan pars of varables whch must be checked for consstency. The REVISE procedure (Algorthm 2) s repeatedly called to delete nconsstent values. If a doman s changed, all constrants nvolvng the respectve varable are re-evaluated. Algorthm 1 AC-3(V, DOM, CONS) for all pars (x, x j ) V V do Q Q {(x, x j ), (x j, x )} end for whle Q do select and delete (x, x j ) from Q f REVISE(x, x j ) = true then Q Q {(x k, x ) k, k j} end f end whle More evolved algorthms mantan values supportng the possble assgnments to a varable. Constrant programmng systems usually use some varant of the AC-5 algorthm [Hentenryck et al., 1992]. Consstency tests are usually only trggered on specfc events of the nvolved domans: doman events (any change to the doman), range events (change of the mnmum or maxmum value) and bound events (a sngle value remans n the doman). A consstency test for enforcng dfference between two varables e.g. only trggers on bound events because as long as there s more than one value n a varable s doman, nothng can be concluded wth regard to the other doman. Algorthm 2 REVISE(x, x j ) deleted false for all a δ do for all constrants c x x j on (x, x j ) do f there s no a j δ j such that c x x j (a, a j ) = true then delete a from δ deleted true end f end for end for return deleted The concepts of constrant satsfacton and propagaton are often part of specal programmng languages ( constrant logc programmng ) lke PROLOG, CHIP and ECLPSe. Addtonally, programmng lbrares and modellng envronments n C++ and Java have become avalable (e.g. Ilog Solver or Coalog Solver). Clearly, there s a tradeoff between achevng hgher consstency and the complexty of consstency tests. Hgher consstency results n less search effort, but may be costly. On the other 37

54 3. Local Search n Constrant Programmng hand, f consstency s low, branch-and-bound search wll often run nto dead-ends of nconsstent varable assgnments. In practce, consstency tests are usually desgned to have low polynomal tme complexty. Constrant programmng systems often provde global constrants,.e. hgh-level abstractons for modellng complex combnatoral problems n a natural way. Global constrants often make use of specalsed algorthms lke flow or matchng algorthms. The most promnent example s the alldfferent constrant whch ensures that all varables n a gven set are assgned parwse dfferent values [Régn, 1994] Large Neghbourhood Search Constrant programmng s a very successful soluton technque for complex dscrete optmsaton problems. It allows for an easy ncorporaton of a multtude of sde constrants. In realstc problems, sometmes not all constrants are known n advance, and further restrctons may come up wth the refnement of optmsaton models. Tradtonal algorthmc paradgms are often lmted n ths case because the ncorporaton of addtonal constrants would ental a complete redesgn. In CP-based algorthms, addtonal constrants usually pose no problems and may even allow for a more effcent soluton. Constrant models are often used n powerful branch-and-bound algorthms for the exact soluton of problems [Tsang, 1993]. However, exact soluton approaches are generally very costly, and consequently, constructon heurstcs are most frequently used to tackle large-scale optmsaton problems. These can be combned wth a soluton mprovement phase. The mprovement phase often nvolves local exchanges lke the classcal 2-opt, 3-opt or Or-opt exchanges [Ln, 1965] [Or, 1976] whch are powerful for smple travellng salesman and vehcle routng settngs. Generalsatons to more complex problems, e.g. nvolvng tme wndows, are sometmes possble, cf. e.g. Potvn and Rousseau [1995]. Generally, the classcal operators fal on more constraned problems because local exchanges do not always fnd mprovng solutons whch obey all constrants. The dea of large neghbourhood search (LNS) s the repeated relaxaton of some of the decsons made n the constructon phase and a subsequent reoptmsaton, usng CP-based branchand-bound. Each sngle relaxaton and reoptmsaton can be seen as a local step n a possbly very large neghbourhood. In comparson to classcal local mprovement operators, the number of relaxed decsons wll generally be much larger. Addtonally, reoptmsaton s done wth the full freedom of tree-based search and not accordng to a fxed scheme. The underlyng constrant model helps n mantanng feasblty, and the advantages of CP-based algorthms mentoned above reman vald. In strongly constraned problems, a search n large neghbourhoods wll be the only possblty to fnd mprovng steps at all. Constrant-based local mprovement was frst ntroduced for the soluton of job-shop schedulng problems. Applegate and Cook [1991] presented a shuffle technque whch was nspred by the shftng bottleneck procedure n Adams et al. [1988]. Another mplementaton of CP-based reoptmsaton for job-shop schedulng can be found n Caseau and Laburthe [1995]. More specfcally to a travellng salesman/vehcle routng context wth tme wndows, Pesant and Gendreau showed how to renterpret classcal local search operators n a CP framework. They devsed a specal neghbourhood CP model for the local move whch s coupled by nterface constrants to the master model [Pesant and Gendreau, 1996] [Pesant and Gendreau, 1999]. The approach s appled to a drecton-preservng 3-opt neghbourhood for the TSPTW (and n Pesant and Gendreau [1999] to a physcan schedulng problem). Whle the approach remans restrcted to classcal operators, the authors make out a trend towards the exploraton of larger neghbourhoods. In an applcaton to vehcle routng, Shaw [1998] developed an nvolved scheme for constrant- 38

55 3.3. Constrant-Based Soluton Methods for Vehcle Routng based reoptmsaton and was the frst to use the noton of large neghbourhood search. In each local step, decsons for a set of nterdependent vsts are relaxed, usng a measure of relatedness. Random elements are used to dversfy the search. Instead of usng full branch-and-bound, lmted dscrepancy search (LDS) s used n order to heurstcally lmt the sze of the search tree [Harvey and Gnsberg, 1995]. The approach s evaluated on a number of standardsed VRP and VRPTW problem nstances ncludng Solomon s VRPTW nstances [Solomon, 1987]. The ntal soluton s bult by usng one vehcle per vst. The approach s shown to be hghly compettve and often superor to leadng soluton technques, yeldng the best-known results for some of the test problems. Klby et al. [2000] have conducted a detaled study of the mpact of the number of constrants on the qualty of dfferent constructon and mprovement methods. For the soluton constructon, the tradtonal savngs heurstc of Clarke and Wrght [1964] and two constrant-based nserton heurstcs are used. For soluton mprovement, LNS was compared to tradtonal operators from the VRP lterature. These methods were appled to vehcle routng problems wth and wthout tme wndows and wth addtonal precedence and same-tour constrants. For soluton constructon, the constrant-based methods are shown to be superor to the savngs heurstc. Whle on smple VRP problems, the tradtonal exchange operators are almost as good as LNS for soluton mprovement, large neghbourhood search s shown to be clearly superor on strongly constraned test problems. In [Klby et al., 1998], mplementaton detals for the two aforementoned publcatons were gven. Caseau and Laburthe embedded local search n a constructon method for VRP and VRPTW problems, mnmsng the number of tours and travel dstances [Caseau and Laburthe, 1999]. Constructon and mprovement are based on constrant programmng n order to address complex constrants ncludng capacty restrctons, but the local steps are classcal 2-opt and 3-opt exchanges. For the mnmsaton of the number of vehcles n the VRPTW, an addtonal relaxand-reoptmse algorthm s devsed whch uses lmted dscrepancy search. The method s shown to be hghly compettve, often outperformng the tabu search reference of Rochat and Tallard [1995] when the travellng dstance s mnmsed. The followng two chapters wll descrbe applcatons of large neghbourhood search. Chapter 4 wll present an algorthm for levellng workloads arsng n workforce plannng on arports, usng a non-lnear objectve functon. In Chapter 5, a complex shft plannng problem based on routng and schedulng problems s tackled by CP-based local search Constrant-Based Soluton Methods for Vehcle Routng Before enterng nto these algorthms, we wll shortly revew dfferent constrant-based soluton methods for vehcle routng problems wth tme wndows (VRPTWs). In vehcle routng, we are gven a set I of customers whch must be served by a set K of vehcles. The vst at customer I must be carred out wthn a tme nterval [a, b ]. Early arrval s allowed, but entals watng untl the earlest servce tme a. Between two customers and j, we have a travel tme of d,j. We wll assume that travel tmes obey the trangle nequalty, d 1, 3 d 1, 2 + d 2, 3 1, 2, 3 I. We wll not consder capacty restrctons for the moment beng. In vehcle routng, dfferent goals can be pursued, e.g. the mnmsaton of the number of vehcle routes or the mnmsaton of travel dstances [Toth and Vgo, 2001a]. Constrant-based methods for tme-constraned vehcle routng problems can follow dfferent approaches. Each formulaton entals dfferent sets of constrant varables, consstency tests and search algorthms. Dependng on characterstcs of the problem at hand (e.g. the magntude of travel tmes, the wdths of tme wndows, further constrants), one or the other method wll be approprate. We wll shortly revew dfferent technques used n the lterature. 39

56 3. Local Search n Constrant Programmng a. nserton-based models b. partal path models c. dsjunctve models Fgure 3.1.: Basc deas of constrant-based methods for vehcle routng Inserton-Based Methods Probably the most ntutve approach for vehcle routng s gven by nserton-based methods (see Fg. 3.1a, nodes n orange colour represent vsts, grey bars are vehcle routes). The basc dea s to nsert vsts one by one nto an emergng set of vehcle routes. Customers are therefore explctly assgned to vehcles, and partal solutons conssts of ncomplete vehcle routes along wth unassgned vsts. Clearly, nserton-based models are not restrcted to beng solved by constrant programmng. In fact, nserton-based methods have mostly been mplemented by ad-hoc data structures and procedures. An example whch has ganed much attenton s the nserton heurstc of Solomon [1987] who uses a mx of travel tme and temporal crtera to select customers for nserton. Based on Solomon s heurstc, Potvn and Rousseau [1993] propose a parallel route buldng algorthm. We wll show how an nserton-based approach can be followed n the constrant programmng paradgm, usng a model whch s smlar to the one descrbed by Klby et al. [2000]. We ntroduce a temporal doman δ t = [α, β ] denotng the nterval of vald servce tmes for customer 1. δ t s naturally ntalsed to the orgnal tme wndow for customer ([α, β ] := [a, b ]). δ veh K wll denote the set of vehcles by whch can be covered. π I and σ I represent the customers whch precede and succeed customer n a gven (partal) set of tours. As suggested by the notaton, π and σ are no doman varables n the proper sense, but change ther values upon nserton of addtonal customers. Furthermore, we let δ p I denote the set of vald nserton postons of. Wthout loss of generalty, we wll assume that δ p represents vald successor vsts,.e. j δ p f can be nserted before j. Note that n contrast to the model of Klby et al. [2000], we assume that δ p not only contans nserted vsts, but n general also comprses stll unnserted vsts whch may fnally become the successor of. If s nserted, δ p thus contans σ as well as unassgned customers whch can be nserted between and σ. If I s a customer whch has already been nserted nto a route, the followng rules descrbe vald updates for the temporal domans of and ts surroundng vsts: α + d,σ > α σ = α σ := α + d,σ (3.1) β d π, < β π = β π := β d π, (3.2) Whle (3.1) descrbes the forward propagaton of s earlest start tme to ts successor, (3.2) s the backward propagaton of latest start tmes. We wll thus create on consstency tests for 1 As ndcated by the notaton, we wll treat domans as unts n ther own rght wthout makng reference to the orgnal varables (lke x n the above presentaton). 40

57 3.3. Constrant-Based Soluton Methods for Vehcle Routng each customer, performng the updates accordng to rules (3.1) and (3.2) and trggerng upon the range events of δ t. The update of the earlest start tme of σ wll then trgger the respectve test for σ, possbly updatng the earlest start tme of σ σ and so on. Smlarly, updates of latest start tmes are propagated by a lnear backward pass over the route. Ths propagaton scheme s known as push-forward/push-backward propagaton [Solomon, 1987] [Caseau and Laburthe, 1999]. After propagatng all temporal constrants, the domans δ t = [α, β ] are consstent for all, and each customer can realse any servce tme wthn ts temporal doman. A vst can therefore be nserted between two scheduled vsts j 1 and j 2 (j 1 := π j2 f α j1 + d j1, β max(α j1 + d j1,, α ) + d,j2 β j2 (3.3) Ths observaton can be used to update the set δ p of vald nserton postons of,.e. we remove j 2 from δ p f (3.3) s not fulflled. Clearly, the basc decsons of a search algorthm correspond to nsertng vsts nto the routes. Note that nsertng nto a route k amounts to settng δ veh to {k} and specfyng the predecessor and successor vsts π := j 1 and σ := j 2, respectvely. In the model of Klby et al. [2000], nserton decsons are only taken extrnscally,.e. nsertons are not trggered by constrant propagaton. However, f the nserton of one vst leaves only one possble nserton poston for another vst, ths could be exploted mplctly. We therefore ntroduce boolean domans δ ns for each I. δ ns s ntally set to {true, false} and reduced to {true} when s nserted. We can now conceve a consstency test whch trggers as soon as {j δ p δj ns = {true} = 1,.e. there s only one remanng nserton poston for. We then nsert n the correspondng route and nserton poston. Addtonally, we revse the nserton postons doman of : δ p := {j δ p δj ns = {true, false} j = σ } Note that nserton also actvates temporal propagaton for the nserted vst (rules (3.1) and (3.2)). In nserton methods, the sequence of trps s explctly resolved. Furthermore, vsts are assgned to dedcated vehcles. If vehcles cannot be dstngushed, ths ntroduces symmetry because assgnng a tour to any of the vehcles results n somorphc solutons. However, dfferent vehcle characterstcs or multple depots can be easly accounted for. Campbell and Savelsbergh [2004] have recently noted that complcatng sde constrants lke shft tme lmts, varable delvery volumes and multple routes per vehcle can be easly ncorporated n nserton-based methods Partal Path Methods As nserton-based formulatons, partal path methods are based on a prevous/next representaton for sequences of vsts. However, vsts are not explctly assgned to routes. Basc decsons correspond to fxng the predecessors or successors, lnkng chans of trps (see Fg. 3.1b). To llustrate a constrant logc for partal path methods, we let δ succ I and δ pred I denote the vald successors and predecessors of vst, respectvely. As above, δ t = [α, β ] denotes the nterval of vald start tmes for. Note that we do not use any vehcle domans. We wll gve examples of typcal consstency tests n partal path methods. Temporal propagaton can be carred out by usng the followng rules: mn j δ pred (α j + d j, ) > α = α := mn j δ pred (α j + d j, ) (3.4) max (β j d,j ) < β = β := max (β j d,j ) (3.5) j δ succ j j δ succ j In contrast to the update rules (3.1) and (3.2) n nserton-based methods, (3.4) and (3.5) requre mnmsaton or maxmsaton operatons over all vald predecessors or successors. Whle ths 41

58 3. Local Search n Constrant Programmng potentally yelds a hgher degree of consstency, t entals O( I ) runtme for each executon. Clearly, analogous update rules could also be realsed n nserton-based methods f predecessor and successor domans (lke the above δ p ) were used. However, ths would sacrfce the runtme advantage of push-forward/push-backward propagaton. Usng temporal nformaton, we can adapt the successor doman δ succ for each as follows: α + d,j > β j = j / δ succ In a fnal soluton, each vst can only appear n one successor doman. We therefore mpose an alldfferent constrants on the successor doman δ succ [Focacc et al., 2002]. Predecessors and successors are then synchronsed by the followng rules: / δ pred j j / δ succ Note that these updates are not as strong as the above nserton checks (3.3) for nserton-based methods. To the knowledge of the author, partal path methods have only been appled to travellng salesman problems wth and wthout tme wndows (TSP/TSPTW), see e.g. Caseau and Laburthe [1997], Pesant et al. [1998] and Focacc et al. [2002]. In ths class of problems, one can make use of the fact that we buld only a sngle path. Addtonal propagatonal effect can then be ganed by mantanng sets of vsts whch must precede or succeed a gven customer [Langevn et al., 1993] [Pesant et al., 1998]. In travellng salesman and vehcle routng settngs, we face the problem of subtours,.e. closed crcuts returnng to a gven customer or cty [Dantzg et al., 1954] [Lawler et al., 1985]. Caseau and Laburthe [1997] and Pesant et al. [1998] ndependently proposed a nocycle constrant whch keeps track of the begnnng β and endng vst ɛ of the path n whch each I s nvolved. Wth ths nformaton, we can mpose δ succ = {j} = β / δ ɛj n order to avod the end of the path to become connected to ts begnnng. Clearly, the problem of dsconnected solutons s only mportant f temporal restrctons are loose. If tme wndows are tght, the temporal orentaton of vsts wll make subtours unlkely, and the addtonal cost of nocycle may not pay off. Extendng partal path methods to vehcle routng settngs s possble, but requres addtonal effort. Imposng restrctons on the vehcle level s more dffcult snce paths are ntally bult wthout any reference to vehcles. Basc decsons n search algorthms amount to fxng predecessor and successor varables. Whle nserton-based methods allow for nsertng customers between two scheduled vsts, predecessor and successor decsons are rather myopc [Caseau and Laburthe, 1997]. If we am at mnmsng travel tmes, powerful lower bounds can be used, e.g. by assgnment and mnmum spannng tree relaxatons [Pesant et al., 1998] [Focacc et al., 2002] or the Lagrange method [Caseau and Laburthe, 1997] Dsjunctve Methods Whle the above methods have been developed n the feld of vehcle routng and travellng salesman problems, dsjunctve schedulng has ts roots n research on job-shop schedulng [Roy and Sussman, 1964]. If travel tmes are nterpreted as sequence-dependent setup tmes (see e.g. Allahverd et al. [1999]), dsjunctve schedulng also apples to routng problems [Beck et al., 2002]. Dsjunctve constrants prevent the smultaneous or overlappng processng of actvtes (vsts) wthout specfyng ther exact order. The basc dea corresponds to enforcng two customers, j 42

59 3.3. Constrant-Based Soluton Methods for Vehcle Routng whch are assgned to the same vehcle to be placed ether before j or j before (Fg. 3.1c). Usng exemplary consstency tests, we shortly llustrate how ths dea can be represented n constrant models. For an ntroducton to dsjunctve schedulng, see e.g. Baptste et al. [2001]. We only need two domans δ veh K and δ t = [α, β ] for each vst I. If for two vsts, j, we have b + d,j a (b j + d j, a j ), can only be placed before (after). Otherwse, there s a dsjunctve constrant between and j whch becomes operatonal by an approprate consstency test. Ths test becomes actve as soon as and j are assgned to the same vehcle (δ veh = {k} = δ veh j ): α + d,j > β j = α := max(α, α j + d j, ) (3.6) α j + d j, > β = α j := max(α j, α + d,j ) (3.7) Rule (3.6) reflects the fact that f cannot be placed before j, t must take place after j. The tme wndow of s then reduced accordngly. Update (3.7) apples to the symmetrc stuaton, placng before j. We therefore choose among the two dfferent orders of and j f one of the rules apples [Carler and Pnson, 1989]. If we know that and j cannot be placed on behnd the other, we can enforce that and j are assgned to dfferent vehcles. If we assume that e.g. s bound to vehcle k (δ veh = {k}), we can apply the followng update: α + d,j > β j α j + d j, > β δ veh = {k} = δ veh j := δ veh j \ {k} (3.8) It should be mentoned that the above rules do not always ensure suffcent consstency for assgnment feasblty. Imagne three customers 1, 2 and 3 wth ntal start tme wndows [a j, b j ] = [0, 1] j {1, 2, 3} and travel tmes of 1 between all vsts (d j1, j2 = 1 j 1 j 2 ). If 1, 2 and 3 are assgned to the same vehcle, the reader can easly verfy that none of the rules (3.6), (3.7) or (3.8) has any effect. However, t s clear that the trps cannot be carred out by the same vehcle. A search algorthm must therefore take explct dsjuncton decsons for customers whose order has not been mplctly defned by propagaton. The above basc scheme can be refned by generalsng dsjunctons to sets of actvtes [Caseau and Laburthe, 1994] [Caseau and Laburthe, 1995]. A revew of consstency tests and degrees of consstency n dsjunctve schedulng can be found n Dorndorf et al. [2000]. Whle nserton-based formulatons assgn customers to vehcles and fx ther sequence at the same tme, dsjunctve methods take these decsons separately. Lke n nserton methods, t s easy to ncorporate constrants on the vehcle level. Dsjunctve schedulng has yelded qute mpressve results on shop and machne schedulng problems, see e.g. Carler and Pnson [1989] and Baptste et al. [1995]. Beck et al. [2002] have recently descrbed how vehcle routng and open shop schedulng problems can be mutually reformulated. Usng constrant programmng lbrares for job-shop schedulng (usng dsjunctve methods) and routng problems (usng prevous/next representatons) on orgnal and reformulated problems, the authors argue that each technology performs best on the class of problems for whch t has orgnally been developed. For the followng two chapters, we have therefore opted for nserton-based methods. As we wll see, these technques are able to ncorporate multtudes of relevant constrants n arport demand and shft plannng. 43

60 3. Local Search n Constrant Programmng 44

61 4. Workload Levellng n a Vehcle Routng Envronment What s chefly needed s skll rather than machnery. Wlbur Wrght Usng the technques descrbed n the precedng chapter, we now tackle the workload levellng problem whch was shortly descrbed n Secton Its goal s the smoothng of a demand curve whch s the superposton of tasks planned n tours. Whle workload levellng s based on the vehcle routng problem wth tme wndows (VRPTW), the objectve functon ams at avodng sharp demand peaks whch are dffcult to cover by staff. We wll show that the problem s N P- hard and present an algorthm for soluton mprovement by repeated relaxaton and CP-based reoptmsaton Introducton Demand plannng s a frst and mportant step n the management and schedulng of ground handlng workforce and equpment. Planners frequently try to get an overvew of workforce demands by vsualsng the temporal superposton of all work tasks. The vsualsaton of a hstogram of workloads n ther temporal evoluton ( demand curve ) s helpful for an analyss of the magntude of workload at dfferent tmes of the day and week; an analyss of peak tmes wth hgh workforce demand and traffc congeston; the determnaton of the temporal extent of workload wthn the day and the tmes n whch nothng has to be done (e.g. n the nght); an estmaton of the necessary workforce sze or equpment dmenson; an assessment of the ablty of dfferent shft types to cover peak tmes (tmes of hghest workload) effcently. Demand plannng can also be seen as a preparatory step for shft plannng. On the one hand, an analyss of demands can gve an dea of how to cover the bottom-lne demand by full tme workers and peak demands by addtonal part-tme staff. On the other hand, shft plannng and rosterng models usually am at coverng workloads gven n dscrete ntervals. Furthermore, coverng demand-based workloads can gve a good approxmaton to task-level shft plannng f the characterstcs of the handlng tasks are suffcently homogeneous (see Secton 1.2.3). The workload s ntally gven as a set of tasks whch s the result of matchng task generaton rules (engagement standards) to flght events. Each task s defned by a length, a locaton and an nterval of admssble start tmes. Between the tasks, the equpment or worker possbly has to move from one locaton to another. We wll always assume that the trp between tasks s performed drectly before startng the latter tasks. Tme wndows are hard constrants: A worker 45

62 4. Workload Levellng n a Vehcle Routng Envronment W t Fgure 4.1.: Basc settng of workload levellng: (crew) tasks n tours, demand curve. arrvng too early must wat untl the task s earlest start tme, and a task must not start after ts latest start tme. When plannng moble equpment lke baggage vehcles, push-back tractors or caterng trucks, we have a typcal vehcle routng settng: Vehcles start a central depot, perform a set of tasks wthn the bounds of ther tme wndows and return to the depot. We wll not mpose any capacty constrants: Whle some of the vehcles (lke push-back tractors) are not used to carry goods, others (lke baggage lorres) are confgured ad-hoc to the necessary sze for the gven baggage. Snce equpment s constantly avalable, a global tour model seems approprate,.e. the extent of tours equals the gven plannng tme horzon whch s typcally one week (see the upper part of Fg. 4.1). Ths global tour model s also a good approxmaton for plannng workforce demands. Lke moble equpment, workers must carry out tasks, drvng from one locaton to the other. Especally on the apron, travel tmes can be consderable and should not be neglected n the estmaton of workloads. The work tasks for staff wll also be planned n global tours, and we wll account for work and travel tmes n the demand curve. Clearly, ths only gves an approxmaton of actual workloads because workers are not constantly avalable. The global tour model wll generally underestmate travel tmes because real workers start and end ther shfts at prescrbed tmes. In contrast to equpment tasks, workforce tasks may be grouped nto blocks of crew tasks whch whch wll be carred out by teams of workers. Such crew tasks must be performed as much n parallel as possble. Workng n teams s common e.g. n the cleanng of arcraft cabns. The basc settng for demand plannng s thus the vehcle routng problem wth tme wndows (VRPTW) wth addtonal crew constrants. Especally when plannng equpment, we wll be nterested n a mnmsaton of the number of tours, gvng a mnmum number of devces whch must be acqured. Ths s the objectve of an algorthm whch has already been used n the plannng system before, see Kwasnok [1994]. It solves the routng problem as an assgnment problem by a network flow algorthm for fxed tasks [Desrosers et al., 1993] and by the classcal Solomon nserton heurstc for movable tasks [Solomon, 1987]. If a scenaro only contans fxed tasks, we cannot do much more except for mnmsng travel tmes. In workforce plannng, the tour model s manly used to get an approxmaton of travel tmes, and we wll be more nterested n the temporal evoluton of workforce demands. Demand peaks should be avoded by performng movable tasks at tmes of lower workload. Whle the mnmsaton of the number of tours tends to mnmse the overall demand peak, t s not suffcent for avodng local peaks. As a consequence, t does not make use of the freedom of fxng tasks at dfferent tmes of ther tme wndows. Generally speakng, we am at a demand curve whch s as smooth as possble n order to mnmse the necessary workforce. Ths wll avod workforce actvaton problems related to sudden ncreases or decreases of workloads. The assocated problem wll be called the workload levellng problem (WLP), see also Fg When levellng workloads, we wll generally not be wllng to ncrease the number of tours. The smoothng procedure wll therefore be based on the result of tour mnmsaton. We can then 46

63 4.2. Vehcle Routng and Resource Levellng try to fx the tasks to start tmes whch gve a levelled demand. The result of ths ntal phase can be mproved by consderng reattrbutons of tasks to dfferent tours, gvng them hgher temporal degrees of freedom. Local search s a good means for ths task. Whle well-known local exchange operators lke 2-opt and 3-opt have proven to helpful n basc travellng salesman and vehcle routng problems, ther usefulness s lmted for the tme wndow case [Caseau and Laburthe, 1999]. For more complex scenaros lke the workload levellng problem (e.g. requrng crew task parallelsm), the exploraton of larger neghbourhoods s more approprate. In order to enlarge the degrees of freedom n local search, large neghbourhood search (LNS) has proved to be a successful optmsaton technque, see Secton 3.2. Large neghbourhood search combnes advantages of local search methods wth those of constrant programmng. Whle good solutons can already be obtaned n lttle tme, LNS yelds hgh-qualty solutons f more runtme can be nvested. Furthermore, constrant-based algorthms generally do not requre a fundamental redesgn f further constrants (e.g. precedence or dfferenttour constrants) come nto play whch s often the case n real-world optmsaton problems. The procedure not only needs to be robust wth regard to future constrants. Plannng scenaros on arports effectvely exhbt qute dfferent characterstcs. As an example, the number of tasks wll range from an order of 10 3 to 10 5, tasks can be movable only over some mnutes or several hours, all tasks or none of the tasks can be grouped n crews of dfferent szes, and travel tmes can be absent or reach duratons of up to one hour. The goal of ths work s thus the development of an algorthm whch s robust n terms of soluton qualty on a wde range of test cases. The chapter s structured as follows: we frst show that the workload levellng problem bears strong smlartes to the resource levellng problem n project schedulng. Afterwards, a mathematcal defnton of workload levellng wll be gven. Paragraph 4.4 shows that the workload levellng problem s N P-hard, justfyng the search for approprate heurstc algorthms. We present a constrant model for workload levellng whch s the bass of a branch-and-bound algorthm, makng use of powerful lower bounds. The overall local search scheme wll be descrbed n Secton 4.8, and Secton 4.9 shows how the results of the precedng tour mnmsaton phase can be preprocessed for the local mprovement phase. Expermental results on realstc arport plannng scenaros are gven n Secton The chapter concludes by gvng a summary and some future research drectons Vehcle Routng and Resource Levellng A task whch s smlar to workload levellng s nvestgated unter the term resource levellng n project schedulng. Resource levellng does not refer to a unque objectve functon; accordng to Brucker et al. [1999], a project schedulng problem s of a resource levellng type f the objectve functon to be mnmsed represents some measure of the varaton of resource utlsaton 1. Ths comprses the followng objectves: 1. Reducton of fluctuatons n the pattern of resource usage [Easa, 1989]; 2. Mnmsaton of the devaton from a target resource level [Brucker et al., 1999]; 3. Mnmsaton of the excesson of a target resource level [Brucker et al., 1999]; 4. Makng the resource utlsaton approach a rectangular shape [Harrs, 1990]; 5. Gradual buldup of resource requrements towards a sngle peak and subsequent declne [Ahuja, 1976]. 1 In contrast, the mnmsaton of the number tours n vehcle routng can be compared to the resource nvestment problem, see Brucker et al. [1999]. 47

64 4. Workload Levellng n a Vehcle Routng Envronment Objectve (1) s usually grasped by mnmsng the sum of the squares of resource requrements [Zmmermann and Engelhardt, 1998], (2) can be tackled by the sum of the squares of the absolute dfferences between requrements n consecutve perods. The sum of the postve dfferences wll tend towards objectve (3) [Brucker et al., 1999]. For objectve (4), the sum of the absolute values of the dfferences can be taken [Neumann and Zmmermann, 1999], objectve (5) s acheved by mnmsng the sum of the squares of resource changes [Ahuja, 1976]. All of these objectve functons are non-regular because ther value may decrease wth hgher makespans. Therefore, the mnmum makespan s calculated n a frst step and fxed n resource levellng. Lkewse, we wll base workload levellng on an exstng algorthm for tour mnmsaton and mpose an upper bound on the number of tours used n workload levellng. Basc consderatons of resource levellng were presented by Ahuja [1976]. The basc problem was descrbed wth the objectve to attan a parabolc resource profle whch gradually bulds up and declnes after a peak. A varance measure of the dfference n resource usage from one perod to the other s mnmsed by shftng non-crtcal tasks wthn ther tme wndows. A brute-force approach for very small examples as well as a smple greedy heurstc are presented, fxng one actvty after the other. Easa [1989] devsed an exact nteger programmng approach for mnmsng the absolute devatons from a target resource level. The decson varables are the shfts of the non-crtcal tasks wthn ther tme wndows. The algorthm seems approprate only for very small examples. No expermental results are presented. The heurstc algorthm of Harrs [1990] conssts of sequentally fxng all tasks wth the objectve of makng the hstogram of a sngle resource approach a rectangle. Base ntervals n whch movable actvtes must take place are scheduled frst to have a better gudance for the algorthm. Sebert and Evans [1991] conduct a comprehensve study of mportant consderatons n project schedulng wth regard to the temporal evoluton of resource demands, usng early-start/late-start resource curves. The authors stress the mportance of resource levellng especally n plannng staff to avod short-term hrng and frng wth negatve cost effects. A project schedulng software package s used for generatng a levelled resource usage curve; ts qualty s measured by the sum of the squares of resduals to an ntally assumed resource profle. Bandellon et al. [1994] descrbe a dynamc programmng algorthm for resource levellng, mnmsng the squared devatons of requrements from ther mean. The method starts by buldng a graph expressng nterdependences between noncrtcal actvtes due to successon relatonshps or objectve functon nteractons. The components of ths graph are successvely splt up by fxng start tmes of actvtes wth few nteractons. Resource levellng wth mnmum and maxmum tme lags and wth or wthout resource lmts (restrcted resource levellng) s treated by Zmmermann and Engelhardt [1998]. The study refers to dfferent objectve functons lke maxmum resource usage, sum-of-squares, devaton from a target level and absolute dfferences n requrements of consecutve tme perods. The authors develop powerful lower bounds for the case of unrestrcted resources and devse a branch-andbound algorthm. The search tree s heurstcally cut by fltered beam search. Test cases of up to 200 actvtes and fve dfferent resources are solved. Neumann and Zmmermann [1999] show that resource levellng wth mnmum and maxmum tme lags s N P-hard on the set of objectve functons already used n Zmmermann and Engelhardt [1998]. Heurstc algorthms are presented to solve the restrcted and unrestrcted case by fxng actvty start tmes one by one. A clever dea allows to reduce the complexty from pseudopolynomalty n the tme wndow wdths to a polynomal runtme n the number of actvtes. For the restrcted case, already fxed actvtes may have to be revsed. Expermental results show that actvtes should be fxed n decreasng szes of ther tme wndows and on the bass of resource demands ncludng base tme ntervals of near-crtcal actvtes. 48

65 4.3. Mathematcal Model More specfc to arport staff plannng, Nobert and Roy [1998] ntegrate the levellng of arcargo workloads n a shft schedulng model. Workloads are gven by klograms of freght whch can be processed wth nterruptons. After solvng the LP relaxaton, resultng demands are rounded up. The resultng standard shft schedulng problem s then solved by nteger programmng. To the knowledge of the author, no artcles have been publshed on workload levellng n a vehcle routng scenaro. One possble reason for ths s that vehcle routng and project schedulng were nvestgated separately for a long tme. Proposng an algorthm for the workload levellng problem wll be a step n combnng deas from project schedulng and vehcle routng. Stll, the workload levellng problem dffers from resource levellng n some aspects. Resources are normally levelled over the whole span of a project wth a day as the smallest tme unt [Ahuja, 1976]. If resources refer to sklled workers, resource levellng s used because staff needs tranng for a job, and operatons wll not be effcent f personnel s frequently employed or set free [Sebert and Evans, 1991]. In contrast, workload levellng wll be used on a more tactcal or operatonal level. It deals wth workload fluctuatons over a day or a week and wll usually be performed on a mnute dscretsaton. For workload levellng, mnmsng the sum of the squares of workloads seems approprate. Wth ths objectve, potentally overlappng tasks wll be fxed n a way to avod local demand peaks (wthn the lmts of ther tme wndows and tours). The global demand maxmum may also be decreased because the objectve of the algorthm mentoned n Secton 4.1 s tour mnmsaton, and t s heurstc n nature. Snce we wll consder travel tmes n the demand curve, the workload levellng algorthm wll also tend to avod unnecessary travel tmes. Because the man source of mprovement les n the fxaton of task start tmes, workload levellng wll only be appled to scenaros contanng movable tasks. Typcal arport applcatons comprse cabn cleanng or operatons departments. Whle transferrng deas from resource levellng (lke tme wndow propagaton and search strateges) can be frutful, none of the approaches n the lterature appears to be suffcent for workload levellng. Many approaches n the lterature are restrcted to very small test cases. More mportant s the dfference n problem complexty: n project schedulng, temporal relatons between actvtes are fxed,.e. there s a fxed graph of potental temporal nfluences between actvtes. Ths s not the case n workload levellng snce temporal dependences are a consequence of the attrbuton of tasks to postons n tours. We therefore have two degrees of freedom: The attrbuton of tasks to tours and the temporal fxng of tasks wthn ther tours. These decsons are nterdependent snce a task s tme wndow s restrcted by ts surroundng tasks. Expermental results wll ndcate that reattrbutng tasks to dfferent tours has a strong mpact on soluton qualty Mathematcal Model We now gve a mathematcal descrpton of the workload levellng problem. Let I be the set of tasks and R the tours as gven by the result of the prelmnary tour mnmsaton algorthm. T s the (dscretsed) tme horzon, coverng all tasks. Each tour wll start at an artfcal orgn task and end at a destnaton task; I o and I d wll denote the sets of all orgn and destnaton tasks, respectvely. Some or all tasks may be grouped nto blocks C I of crew tasks; the set of all crews wll be denoted by C 2. We ntroduce the followng parameters: 2 Note that the uppercase letter C suggests that crews are sets of tasks, see also Appendx A. 49

66 4. Workload Levellng n a Vehcle Routng Envronment [a, b ] T start tme wndow of task I I o I d l length of task I I o I d (0 for delmter tasks) travel tme between tasks I I o, j I I d d,j Orgn tasks I o wll be fxed to the scenaro start (a = b = mn T ), destnaton delmters I d to the scenaro end (a = b = max T ). Note that by fxng the depot travel tmes d,j for I o or j I d, we only allow for sngle-depot models. The followng varables are used: R succ pred T tour of task I I o I d successor of I I o predecessor of I I d start tme of I I o I d Tours of delmter tasks I o I d are fxed n advance snce each tour has unque orgn and destnaton tasks. Note that the varable nformaton s somewhat redundant snce f all predecessors are fxed, we also know the successors and tours. Schedules Σ are gven by the fxaton of predecessor, successor, tour and start tme for each work task,.e. Σ = {(R, (pred, succ ), T ) I}. For a gven schedule Σ, the number of tasks (workforce demand) whose travel tmes or work duratons take place at t T s W (t) := { I T d pred, t < T + l }, see also Fg We now defne the workload levellng problem as mn z = t T W (t) 2 (4.1) subject to Tours Tme wndows Tour temporal relaton R R I I o I d (4.2) T [a, b ] I I o I d (4.3) T + l + d,succ T succ I I o (4.4) Predecessor-successor consstency pred = j succ j = I I d, j I I o (4.5) Predecessor-tour consstency j : pred = j R = r R j = r I I d (4.6) Tour dfference Crew temporal relaton R R j, j C, j, C C (4.7) T j T + (a j a ) T j + l j T + l + (a j a ) C C,, j C : j, l l j (4.8) Constrant (4.2) restrcts tasks to use the gven tours. Start tmes are restrcted n terms of tme wndows and successor/predecessor relatons by (4.3) and (4.4). Equatons (4.5) and (4.6) 50

67 4.3. Mathematcal Model a. b. c. d. Fgure 4.2.: Temporal relaton of crew tasks. ensure consstency between predecessors and successors as well as between predecessors and tours. Equaton (4.7) constrans crew tasks to be placed n dfferent tours. The parallelsm of crew tasks s expressed by (4.8). Let us consder the effect of constrant (4.8) on the temporal relaton of two tasks, j C of the same crew C C (Fg. 4.2). Let frst, j have equal lengths l = l j and same earlest start tmes a = a j. Then (4.8) constrans, j to be placed n parallel (see Fg. 4.2a). Let now the duraton of the frst task be greater (l > l j ) but the start tmes stll be equal. Then (4.8) says that j should start after but should end before j,.e. j s to be placed under (Fg. 4.2b). We now consder the case of dentcal duratons but dfferent start tmes. W.l.o.g. let a j > a. Then j must take place exactly a j a tme unts later than (Fg. 4.2c),.e. a j a s an offset between and j. If fnally l > l j and a j > a (Fg. 4.2d), then j must be placed wthn a tme wndow dentcal to the length of, but wth an offset of a j a wth regard to s tme wndow. Constrants (4.8) thus ensure that crew tasks wth a = a j take place as much n parallel as possble. If a j a 0, the dfference a j a can be nterpreted as an offset for the relatve poston of the tme wndows. A typcal applcaton s a supervsor arrvng somewhat earler at a workng locaton to prepare jobs for a group of e.g. cabn cleaners. The offset n the orgnal earlest start tmes a, a j then always entals an equal offset n the planned start tmes T, T j. For the realsaton of constrants (4.8), crew tasks wll be sorted by decreasng duratons. Nevertheless, (4.8) stll descrbes a number of constrants whch s quadratc n the number of crew tasks. Let, j, k C be parwse dfferent tasks of C C wth l l j l k. Then constrants (4.8) for the task pars (, j) and (j, k) read as and It follows T j T + (a j a ) T j + l j T + l + (a j a ) T k T j + (a k a j ) T k + l k T j + l j + (a k a j ) T k T j + (a k a j ) T + (a j a ) + (a k a j ) = T + (a k a ) T k + l k T j + l j + (a k a j ) T + l + (a j a ) + (a k a j ) = T + l + (a k a ) whch are exactly the constrants (4.8) for the task par (, k). As a consequence, the crew temporal relaton s transtve, and t suffces to defne constrants for adjacent tasks n an orderng by decreasng lengths,.e. we need 2( C 1) constrants for a crew C C. 51

68 4. Workload Levellng n a Vehcle Routng Envronment 4.4. Computatonal Complexty General resource levellng s known to be N P-hard [Neumann and Zmmermann, 1999]. Smlarly, the N P-hardness of workload levellng can be shown. Theorem 1. The workload levellng problem (WLP) s N P-hard. Proof. The decson problem correspondng to WLP s: Is there a schedule Σ wth objectve functon value z(σ) B? To show that WLP s N P-hard, we wll use a polynomal transformaton from the PARTITION problem whch s N P-hard [Garey and Johnson, 1979]. The PARTITION problem s: Gven a fnte set E and a sze s(e) N 0 for each e E, s there a subset E E such that s(e) = e E e E\E s(e) For the WLP, the tme horzon s chosen as T = [0, 2[, all travel tmes d,j are 0. For each gven e wth sze s(e) N 0, we buld a crew of s(e) tasks all of whch have a start tme wndow [0, 1] and a length of 1. Note that ths set of crew tasks has an offset of 0 and thus has to be placed n parallel. Clearly, for each e wth s(e) = 1, we construct a sngle non-crew task. It s evdent that ths transformaton s polynomal. We now set B := 2 ( E 2 ) 2. For a gven partton of E nto E and E \ E, we can buld a soluton to WLP by fxng all tasks correspondng to elements n E to start tme 0 and tasks of E \ E to 1. Ths gves a schedule Σ for WLP wth objectve functon value z(σ) = B. Conversely, f z(σ) B for the gven problem wth h := e E s(e) tasks, ths (optmal) soluton must be gven by h 2 tasks beng fxed to start tme 0 and h 2 tasks fxed to 1, respectvely. Let E be the tasks correspondng to the crews (or sngle tasks) fxed to 0 (note that a block of crew tasks starts at ether 0 or 1). Now E and E \ E s a partton of E wth e E s(e) = h 2 = e E\E s(e). Because WLP s N P-hard, we cannot expect that a polynomal tme algorthm exsts whch solves the problem exactly. Emprcal experence shows that typcal test cases are very demandng as well, justfyng the search for powerful heurstcs Constrant Model We wll now devse a constrant model for the workload levellng problem. It wll be based on an nserton logc, nsertng tasks sequentally nto an emergng set of shfts (see Secton 3.3). Travel tmes can be asymmetrc (e.g. due to one-way connectons on the apron), but are assumed to obey the trangle nequalty. The followng domans wll be used, gven wth the correspondng decson varable n the mathematcal model: Name mathematcal varable CP doman start tme T δ start = [α, β ] nserted varable δ ns current predecessor pred π current successor succ σ predecessor varable pred δ pred nserton postons succ δ p tour varable R δ tour 52

69 4.5. Constrant Model The doman δ start gves the start tme wndow of task. It s ntalsed to δ start = [α, β ] := [a, b ] and wll be adapted f tme wndows are restrcted by nserted tasks. The bnary varable doman δ ns wll be {false, true} for relaxed tasks and wll become {true} upon nserton. An nserted task has current predecessor and successor tasks π and σ n ts tour. As descrbed n Secton 3.3.1, π and σ are no constrant varables n the proper sense. Instead of shrnkng monotoncally, these varables gve the (ntermedary) predecessors and successors n the partal schedule, contanng sngle values whch change wth new nsertons. For relaxed tasks, π and σ are set to NIL. In contrast, δ pred gves the potental predecessor tasks: for nserted tasks, ths ncludes the actual predecessor n the tour as well as unscheduled tasks whch may be placed before the task. For tasks whch are not nserted, the doman gves the tasks whch may become predecessors of n a tour. Smlar to the predecessor varable, δ p gves the potental successors for an unnserted task. Whle δ pred converges to the predecessor n the fnal schedule, δ p becomes empty when s nserted. Inserton postons are thus only temporarly used for tasks whch are not yet nserted. The reason for ths asymmetry s propagaton effcency. The evaluaton of nserton postons whch are feasble wth regard to the tme wndows s most effcently done from the unscheduled task s perspectve. As soon as a task s nserted, these nserton checks wll be dsabled by settng the nserton postons δ p to. Vald nserton postons are prmarly stored as successors because a set of successors can effcently be synchronsed wth the predecessor doman of another task (cf. the nserton postons test below). Contrastng to the nserton postons varable, we need full predecessor nformaton n δ pred whch always ncludes the actual predecessor. Ths nformaton wll be used for the schedulng of potental travel tmes (see Secton 4.7). Fnally, δ tour gves the potental tours to whch may be attrbuted. For scheduled tasks, ths doman wll contan a sngle value equal to the task s actual tour. In the followng, we wll descrbe the consstency tests. It wll become clear that the nsertonbased model s partcularly well-suted for local reoptmsaton whch can e.g. be exploted for an effcent evaluaton of nserton postons. For each local step, the nserton and start tme decsons for a set I rel of work tasks wll be released, and for each I rel the possble nserton postons wll be evaluated. Let Φ() := {(j 1, j 2 ) j 1, j 2 I \ I rel, α j1 + l j1 + d j1, b max(α j1 + l j1 + d j1,, a ) + l + d,j2 β j2 } be the set of pars of tasks between whch can be nserted and Φ := Irel Φ() the set of all nserton postons. We wll express the tme complexty of consstency tests n terms of the cardnaltes I rel and Φ. Note that because a task can always be nserted at ts former poston, we have I rel Φ. Tour temporal relaton For each work task I, we have the followng update rules: α π + l π + d π, > α = α := α π + l π + d π, β d π, l π < β π = β π := β d π, l π The consstency test wll be executed upon each change of δ start, π or σ. Its tme complexty s n O(1) for each task. Crew temporal relaton Let C = ( 1,..., n ) C be a crew such that l j l j+1 for all j. 53

70 4. Workload Levellng n a Vehcle Routng Envronment The start tmes of adjacent crew tasks j, j+1 are updated by the followng rules: α j + (a j+1 a j ) > α j+1 = α j+1 := α j + (a j+1 a j ) α j+1 (l j l j+1 ) (a j+1 a j ) > α j = α j := α j+1 (a j+1 a j ) + (l j+1 l j ) β j + (l j l j+1 ) + (a j+1 a j ) < β j+1 = β j+1 := β j + (l j l j+1 ) + (a j+1 a j ) β j+1 (a j+1 a j ) < β j = β j := β j+1 (a j+1 a j ) Ths consstency test s executed upon the range events of δ start j and δ start j+1. As for the tour temporal relatons, ts tme complexty s constant for each par ( j, j+1 ). Inserton postons We evaluate nserton postons for all released tasks I rel. The potental successor set δ p s dvded nto a set of unscheduled tasks Γ() and a set of nserted tasks, defnng pars Ξ() of tasks between whch may be nserted: Γ() := {j 2 j 2 δ p, δns j 2 = {false, true}} Ξ() := {(j 1, j 2 ) j 2 δ p, δns j 2 = {true}, j 1 = π j2 } Note that the predecessors j 1 n Ξ() are the nserted tasks of δ pred. The sets Γ del () and Ξ del () gve the unnserted tasks whch cannot be successors of and the pars of nserted tasks between whch cannot be nserted due to temporal restrctons: Γ del () := {j 2 Γ() α + l + d,j2 > β j2 } Ξ del () := {(j 1, j 2 ) Ξ() α j1 + l j1 + d j1, > β, max(α j1 + l j1 + l j1, α ) + l + d,j2 > β j2 } The potental successors and predecessors are updated as follows: δ p δ pred := δ p := δ pred \ (Γ del () {j 2 (j 1, j 2 ) Ξ del ()}) \ {j 1 (j 1, j 2 ) Ξ del ()} Ths check must be performed upon changes of the start tme wndows δj start of potental predecessors and successors, upon ther nsertons (δj ns doman events) and upon changes of s start tme wndow δ start. The cost of the test s n O( Φ ). Predecessor update Predecessor nformaton s adjusted upon updates of nserton poston domans. All tasks whch are not nserted and do not allow for as successor can be removed from δ pred : δ pred := δ pred \ { δ pred δ ns = {false, true}, / δp } If s nserted, we wll addtonally remove all scheduled predecessors except for ts actual predecessor π : δ ns = {true} = δ pred := δ pred \ { δ pred δ ns = {true}, π } Note that ths consstency test s undrectonal and does not remove potental successor tasks from an nserton postons doman. One predecessor update constrant s used for each task n I rel I rel{j 2 (j 1, j 2 ) Φ()}. The test wll be trggered for each change of δ p j 1 for j 1 such that (j 1, j 2 ) Φ() as well as upon nserton of (δ ns doman event). The complexty of the test s n O( Φ ) f contanment n δ p can be checked n constant tme (e.g. by a bt vector representaton). 54

71 4.5. Constrant Model Dfferent tours Each crew task must be nserted nto a dfferent tour. An alldfferent({δ tour C}) global constrant s used for every crew C C. The alldfferent constrant wth ncremental updates trggers on all doman events and has a runtme n O( C 2 R 2 ) for a complete branch of the search tree [Régn, 1994] [Régn, 2000]. Tour-task consstency Whle nserton postons and predecessors are restrcted by the nserton postons constrant, tour domans may be constraned by the dfferent tours test. Ths nformaton must be made consstent. If a task s nserted, nothng has to be done. If δ ns = {false, true}, we perform the followng updates: δ p δ pred δ tour := δ p := δ pred \ {j δ p δj tour = {r}, r / δ tour := {r δ tour \ {j δ pred j δ p δ tour j : δ ns j } = {r}, r / δ tour = {true}, δj tour } = {r}} The test could be made somewhat stronger by deletng nserton postons j such that δj tour δ tour =, but for effcency reasons, the rule propagates for δj tour = 1. It s therefore only trggered on the bound events of the tour varables of nserton postons (predecessors and successors) and on doman events of δ tour and δ p. Because for unnserted tasks, δp and δ pred are always conform n gvng the same nserton postons, trggerng on δ pred would be redundant. Note that the rule for updatng δ tour only consders nserted tasks j. Ths s correct because f there s no nserted task j n tour r before whch can be nserted, can never be attrbuted to r. For the same reason, there s no meanng n trggerng the constrant upon nsertons of potental predecessors and successors of. The consstency test adapts the predecessor nformaton n δ pred, but because the predecessor update rule descrbed above s undrectonal, ths nformaton wll never become propagated to other tasks successor domans δ p j. What may seem a consstency gap wll be lttle harmful n practce because nserton postons are only evaluated for unnserted tasks j. Because the tour varable δj tour of unnserted tasks rarely becomes bound, we wll not expect that hardly ever such a task j has to be deleted from δ pred. Agan assumng set contanment checks to run n constant tme, the predecessor and successor update run n O( Φ ) tme each. Because the number of possble tours for cannot be greater than ts nserton postons, the tour doman update has the same complexty, yeldng an overall runtme n O( Φ ). Task nserton When the set {j δ p δj ns = {true}} of nserton postons for reduces to a sngle task j 2, can be nserted between j 1 := π j2 and j 2, entalng the followng updates: := := {r} := {true} π := j 1 σ := j 2 σ j1 := π j2 := δ p δ tour δ ns The constrant only trggers on doman events of δ p. Addtonal trggerng upon nsertons of any of the j δ p would be redundant because an ncrease n the number of nserted successors can never result n an nserton of. The man purpose of the task nserton constrant s to trgger the temporal propagaton for. Its cost s n O( Φ ). 55

72 4. Workload Levellng n a Vehcle Routng Envronment nserton postons start tmes Fgure 4.3.: Structure of the search tree. Only the nserton postons, predecessor update and tour-task consstency tests trgger upon doman changes of tasks whch depend on the set of relaxed tasks or on the nserton postons. We wll therefore dynamcally add these constrants for each local step, regsterng the tests only on the respectve domans of nserton postons (taken from Φ()). Ths avods redundant executons of consstency tests as far as possble. Note that even f the task nserton test s only necessary for released tasks, we can make t a statc part of the constrant model because t wll effectvely only be trggered for released tasks. The constrant model presented above exhbts some symmetry whch can deterorate the effcency of branch-and-bound algorthms. One symmetry s wth regard to the tours: The chans of tasks n a soluton can be assgned to any of the R tours, yeldng equvalent solutons (see also Secton 3.3.1). Ths symmetry s not harmful n local search because we wll never release a total tour, and the task context n a tour wll always break the symmetry. Another potental symmetry relates to the tasks. Especally crew tasks often have dentcal tme wndows, lengths and take place at the same locaton. Every sngle task can be attrbuted to any permutaton of the tours, yeldng somorphc solutons. To avod ths symmetry, tasks of dentcal tme wndows, lengths, locatons and crews (or non-crew tasks) are grouped. A partal orderng s defned on the tasks and tours such that the tasks of each such group are assgned n non-decreasng order to the tours. Ths assgnment wll be ensured by a specal consstency test, preventng the search algorthm from repeatedly evaluatng somorphc stuatons Branch-and-Bound As descrbed n Secton 3.2, large neghbourhood search (LNS) conssts of the repeated relaxaton of decsons and reoptmsaton. Whle the relaxaton amounts to resettng tour attrbutons of tasks and ther tme wndows, reoptmsaton wll consst of a restrcted branch-and-bound search. Before t s shown how the search tree can be heurstcally restrcted to promsng parts of the soluton space, the basc branch-and-bound scheme wll be descrbed. For each of the relaxed tasks, two types of decsons must be taken: Tasks have to be nserted nto the plan, and they must be fxed n tme. Because a task s tme wndows can be restrcted by nserton, we wll frst nsert tasks and then fx start tmes. As a consequence, the search tree wll be structured nto two levels: an upper level where nserton decsons are taken and a lower level on whch tasks are fxed to start tmes (cf. Fg. 4.3). The basc branch-and-bound search s outlned by Algorthm 3. The nput s a partal schedule ˆΣ (the result of relaxng task decsons) and an ncumbent soluton Σ of value z whch s dent- 56

73 4.6. Branch-and-Bound cal to the schedule before relaxaton. The algorthm uses a stack N of tree nodes whch stll have to be processed. Algorthm 3 WLP branch-and-bound. 1: N (ˆΣ) 2: whle there are nodes on N do 3: pop a partal schedule Σ from N 4: f there are unnserted tasks n Σ then = {false, true} do 7: perform tral nserton of before j (δ p 8: calculate lower bound LB(Σ, δ p 5: choose task wth δ ns 6: for all nserton postons j δ p 9: end for 10: for all nserton postons j δ p 11: create a chld of Σ, assgnng δ p 12: push chld on node stack N 13: end for 14: else f there are unfxed tasks then 15: choose a task wth δ start > 1 16: for all start tmes τ δ start do 17: perform tral fxaton of δ start := {j}) := {j}) such that LB(Σ, δ p := {j} to t 18: calculate lower bound LB(Σ, δ start := {t}) 19: end for 20: for all start tmes t δ start := {j}) < z do such that LB(Σ, δ start := {t}) < z do 21: create a chld of Σ, assgnng δ start := {t} 22: push chld on node stack N 23: end for 24: else f z(σ ) < z then 25: Σ Σ 26: z z(σ ) 27: end f 28: end whle Constrant propagaton s performed throughout the search tree,.e. after each nserton or fxaton of start tmes, the consequences on other varables are propagated. Ths may fx decsons for further tasks. As an example, when a crew task s fxed n tme, all of ts adjacent crew tasks wll become fxed f all tasks have equal lengths. Most of the consstency tests descrbed above turned out to have lttle mmedate cost consequences. For the tral nsertons and fxatons (lnes 7 and 15 of the algorthm), propagaton was therefore restrcted to the temporal consstency tests. Some desgn decsons were left open so far. In lnes 5 and 13, decsons for tasks whch are to be nserted or fxed are taken. The order of task nsertons and fxatons has a consderable mpact on the algorthm s performance. Dynamc varable orderng wll be used,.e. these decson wll depend on the state of the constrant model [Dechter, 2003]. In both cases, varants of the fal-frst prncple wll be used, meanng that we should frst take tasks whose nserton postons or start tmes are most restrcted [Haralck and Ellott, 1980]. For task nsertons, we wll frst nsert tasks belongng to larger crews because larger crew blocks wll be more restrctng. Wthn the tasks of same crew sze, tasks wth few nserton postons are preferred,.e. tasks are sorted by ncreasng szes of δ p. If these are stll equal, tasks 57

74 4. Workload Levellng n a Vehcle Routng Envronment wth smaller tme wndows δ start are preferred. Remanng tes are broken arbtrarly. When fxng start tmes, tasks wth smaller tme wndows δ start are taken frst. In case of tes, tasks of larger crews are preferred. Remanng ambgutes are resolved arbtrarly (e.g. by task order). Furthermore, we must specfy n whch order the chldren of a search node are explored,.e. n whch order they are wrtten on the node stack (lnes 10 through 13 and 20 through 23 of Algorthm 3). Because the lower bound whch wll be descrbed n Secton 4.7 gves good hnts of promsng branches, ths lower bound s always used as a frst crteron. For te breakng, the mnmum objectve functon resultng from an nserton or start tme fxaton has shown to provde good gudance. Even for modestly szed sets of relaxed tasks, a complete branch-and-bound search would be too costly n terms of computaton tme. Addtonally, each tree search only represents one local exchange whle consderable mprovements on large-scale scenaros can only be acheved by many local steps. The sngle steps should then not necesstate too much tme. Among the dfferent schemes to prune the search space heurstcally, lmted dscrepancy search (LDS) proposed by Harvey and Gnsberg [1995] s one of the most successful technques n recent years. The basc observaton whch has led to the development of LDS s that pure constructon heurstcs, takng decsons one by one, often lead to good solutons. On some nstances, optma may be reached, whle on others, only few decsons of the heurstc are wrong. Interpreted n a tree search context, a constructon heurstc corresponds to a descent on the best branches of the tree f the chldren at each node are ordered by the heurstc crteron. If now the heurstc fals to fnd a better soluton, the ntuton says that we should follow ts decsons at all but one decson pont. Ths dscrepancy from the best path can be taken at any node. If there s no mprovement, we should try two dscrepances and so on. If the best decsons correspond to left branches, we thus allow a lmted number of devatons to the rght. Note that ths frst corresponds to a depth-frst tree traversal on the leftmost branch whle the breadth of search s teratvely ncreased. For a tree search wth dscrepancy D, we vst leaves n whch a maxmum of D dscrepances from the best decsons s summed up over all of the decson ponts. Lmted dscrepancy search now ncreases the number D of allowed dscrepances up to a gven lmt L D, startng wth D = 0 whch corresponds to followng the best valuaton at all decson ponts. Ths of course means that n a run for a gven D, the parts of the search trees for D = 0,..., D 1 wll be revsted. But because we may have found good solutons n precedng runs, the gan n upper bound qualty usually outweghs the extra effort. It can be easly verfed that despte of repettons, complexty of LDS s n O(n L D) f n s the number of decson ponts. From a local search vewpont, LDS allows the exploraton of a neghbourhood n a tme whch s polynomal n the number of relaxed tasks f the dscrepancy lmt L D s fxed. Clearly, the runtme s stll exponental n L D. Frst experments have shown that when low dscrepancy lmts were used, the algorthm often faled to fnd mprovng solutons. On the other hand, soluton tmes grew rapdly wth hgher lmts. A varaton of the basc LDS schema was therefore used: Instead of consumng dscrepances for all devatons from the best path, dscrepancy s only accounted f the frst decson on a branch results n a feasble mprovng soluton. Ths means that each tme an mprovng soluton s found, ths fact s backpropagated to all decson ponts whch have led to the soluton. When the next alternatve at a decson pont s evaluated, dscrepancy s only consumed f the precedng branch was marked as successful. As a consequence, an mprovng soluton can always be found wth a dscrepancy lmt of L D := 0. The lmt L D thus has a strong mpact on the number of mprovng solutons whch are explored. For an mprovement method of the workload levellng problem, ths approach seems very approprate because the startng soluton was created wthout consderng levellng crtera. As a consequence, mprovng solutons can be found very quckly n the frst steps whle later on, mprovements can only be found by nvestng more search effort. 58

75 4.7. Lower Boundng a. W t b. W t c. W Fgure 4.4.: Base hstogram: crtcal, near-crtcal and non-crtcal tasks. t 4.7. Lower Boundng The use of good lower bounds s crucal for the performance of branch-and-bound type algorthms. If the lower bound of a partal soluton Σ s already greater or equal to the value of the ncumbent soluton, the current branch can be abandoned. In ths way, large portons of the search tree can be pruned f lower bounds are tght. Addtonally, lower bounds can be used to gude the tree search as descrbed above. A basc lower bound could be calculated by superposng the demands of all tasks whch are nserted and whose start tmes are fxed. We can do better by a smple observaton. Fg. 4.4 dstngushes three basc stuatons for a task s tme wndow (gven by dotted brackets). Tasks whch are fxed n tme (Fg. 4.4a) can be totally accounted n the demand curve (sketched below the task). If a task s start tme s not yet fxed, we may stll have the stuaton of Fg. 4.4b: If the latest start tme of a task s less than ts earlest completon tme, we already know that t must take place wthn a certan base nterval [Harrs, 1990] [Neumann and Zmmermann, 1999]. Only f the tme wndow s very large (case 4.4c), nothng can be done. The resultng demand profle wll be called base hstogram. In analogy to project schedulng termnology, tasks wth fxed tme wndows wll be called crtcal and unfxed tasks wth a nonempty base nterval near-crtcal 3. In the context of workload levellng, we must nclude travel tmes whch are placed drectly before the start tmes of the tasks. In a partal schedule Σ as gven by the constrant model n a search node, the fnal travel tmes are not known for all tasks because some of the tasks may not yet be nserted. For lower bound calculaton, we can nevertheless nclude a mnmum travel tme d mn whch must be performed before a task : d mn := mn j δ pred For a current start tme wndow δ start = [α, β ] and the mnmum travel tme d mn, the base tme nterval of task wll be [β d mn, α + l [. The number Ŵ (t) of tasks whch must be 3 In project schedulng, actvtes are crtcal f there s no slack, cf. e.g. Zmmermann [2005]. d j, 59

76 4. Workload Levellng n a Vehcle Routng Envronment performed at a tme t T can thus be defned as Ŵ (t) := { I β d mn t < α + l } Usng ths demand, a frst lower bound on the fnal objectve functon value of a partal schedule Σ s gven by ẑ(σ ) := Ŵ (t) 2 t T By the nserton of tasks and start tme decsons, the tme wndows wll be narrowed n the course of soluton constructon, ncreasng the szes of the base ntervals. ẑ(t) wll fnally converge toward the fnal objectve value z(t) for a full schedule. For a partal schedule Σ, let I I be the set of tasks whch are not yet fxed n tme,.e. I := { I α < β }. Smlarly to Zmmermann and Engelhardt [1998], these tasks can be used to strengthen the lower bound. Note that we have already scheduled a workload of max(α + l (β d mn ), 0) for all tasks I. If we do not want to tackle nterdependences of start tme decsons for tasks I explctly, we can regard the remanng task mnutes w := l + d mn max(α + l (β d mn ), 0) as a unform workload whch wll be attrbuted untwse to tmes of lowest demands. It s clear that the total workload W := I w must be carred out wthn the tme nterval [ [ T = [A, B[= mn (α I d mn ), max (β I + l ) The workload wll be dstrbuted n steps of ncreasng ntervals wth the left boundary A beng fxed. The tasks I are sorted by latest end tmes β + l. Let 1 be the task wth lowest latest end tme. The workload w 1 s now dstrbuted untwse over the nterval T 1 := [A, β 1 + l 1 ], each tme ncreasng Ŵt at the tme t of lowest workload. The workload w 2 of the next task n order s then dstrbuted over the nterval T 2 := [A, β 2 + l 2 ] and so on. In ths way, the total workload s unformly scheduled n ncreasng ntervals. By constructon, t s clear that the value z(σ ) := W t T t obtaned from the fnal hstogram W t s stll a lower bound. If perods are stored by ther demand Ŵt, the procedure can be mplemented n O( T + W ) tme (and O( T ) space) complexty. The qualty of the lower bound depends on the tme perod T covered by the tasks n I. The qualty of the bound wll normally be better f a small number of tasks s unscheduled whch s true for large neghbourhood search. Even f t s helpful n gudng the search tree traversal, the lower bound z(σ ) calculated before any tour attrbutons and temporal fxatons wll generally not gve a good ndcaton of the optmal objectve functon value Large Neghbourhood Search The local search algorthm conssts of repeated steps of decson relaxaton and reoptmsaton. In Secton 4.6, the renserton and fxng of tasks by branch-and-bound was descrbed. We wll now present the choce of tasks whose nserton and start tme decsons are relaxed. Tasks should be chosen as to allow for an objectve functon mprovement when beng reoptmsed. It wll thus not make sense to relax tasks whch are far away from each other because nserton and fxaton decsons for such tasks wll not be nterdependent. We should prefer tasks whch are somehow related. As n Shaw [1998], a relatedness measure wll be used for the choce of task sets. Note that the choce of task sets for relaxaton s related to clusterng methods [Tallard, 1993]. 60

77 4.8. Large Neghbourhood Search Crew tasks generally have a strong nteracton: If e.g. crew tasks have same lengths, the total crew block wll be fxed when the start tme of one of the tasks s fxed. We wll therefore always relax whole blocks of crew tasks. Furthermore, the symmetry constrants descrbed n Secton 4.5 mpose consderable restrctons for the tour attrbuton. Non-crew tasks wll therefore only be relaxed along wth ther symmetry group. The procedure wll consst n choosng a frst task and then collectng a set of related tasks. Because most mprovements wll stem from start tme changes (and not from changes n travel tme), only movable tasks are consdered n the frst step. Dfferent cost-based crtera lke regretbased selecton were tred for the selecton of a frst task. Astonshngly, none of these crtera could clearly outperform a random task selecton. Selecton crtera cannot generally grasp the mprovement potental of a task s surroundngs and wll therefore be very local n nature. Snce the LNS algorthm quckly fnds local mprovements, such crtera wll only bas the search when tasks have been moved to ther locally optmal soluton. The frst task s therefore chosen wth a unform dstrbuton over the set of movable tasks. Along wth the frst task, ts crew or symmetry group tasks are chosen. Because only tasks whch are near n tme nteract wth the frst task, the further choce s restrcted to tasks whch can overlap wth a tme wndow [α T D, α + l + T D] around the frst task where T D s a parameter. Note that all tme wndows are fxed when selectng tasks for relaxaton,.e. α = β I. A relatedness measure REL(, j) between two tasks, j s used whch s a weghted sum of four terms: REL(, j) := λ T W T W (, j) + λ OL OL(, j) + λ DIST DIST (, j) + λ T T T T (, j) A hgher relatedness means that these tasks are assumed to have a better chance of mprovng the soluton when beng released. All terms are desgned to be commutatve n ther arguments: T W (, j) s the sze of the (orgnal) tme wndows: T W (, j) := (b a ) + (b j a j ) OL(, j) gves the current overlap between and j: OL(, j) := max(mn(α + l, α j + l j ) max(α, α j ), 0) DIST (, j) s a measure of the dstance between the tasks (DIST fx s a parameter of the algorthm): { 1 α DIST (, j) := j α + (α j +l j ) (α +l ) f α j α + (α j + l j ) (α + l ) > 0 DIST fx else T T (, j) gves a (symmetrc) dstance between and j (wth parameter T T fx ): { 1 t T T (, j) := j +t j f t j + t j > 0 T T fx else If I rel are the tasks chosen so far, the valuatons Irel REL(, j) are calculated for all tasks j I \ I rel whch are near to the frst tasks. The tasks are then sorted by decreasng valuatons. Ths means that tasks whch are near n tme or space to the tasks chosen so far, whch overlap wth them or have large tme wndows wll come frst. Let RS be the number of elements n ths sortng. If we reled too much on the relatedness sortng, we would possbly mss sets of tasks whch can mprove the soluton. As proposed n Shaw [1998], some random nfluence s ntroduced n order to dversfy the search. A random number µ [0, 1[ s chosen, and wth a choce randomness parameter CR N, an ndex κ := RS µ CR 61

78 4. Workload Levellng n a Vehcle Routng Envronment s calculated. We now choose the κ th element n the relatedness sortng (along wth ts crew or symmetry group tasks) to be relaxed. If CR s hgh, µ CR wll be close to 0, and we wll choose one of the frst elements n the relatedness sortng. If CR s rather low, the nfluence of randomness wll be greater. Ths task selecton procedure I rel s repeated untl no more tasks can be chosen wthout exceedng a gven lmt on the number of tasks. The tasks n I rel are then relaxed,.e. ther start tme, tour and scheduled domans are reset; the current predecessor/successor values are set to NIL. We then evaluate possble nserton postons Φ() n the tours. These nserton postons are recorded n the nserton postons and predecessor domans of the relaxed tasks as well as n the predecessor domans of the nserton postons. As descrbed above, the nserton postons, predecessor update and tour-task consstency tests are added dynamcally to the formulaton, and tasks are renserted and fxed by the LDS algorthm descrbed above. Fnally, we must specfy how the neghbourhood sze,.e. the number of relaxed tasks, s controlled. Clearly, the most costly step n large neghbourhood search s the renserton procedure whose complexty scales wth the number of relaxed tasks. For effcency reasons, we should try to gan mprovements by the least number of tasks. The procedure therefore starts wth only one relaxed task at a tme. After a certan number of steps, no further mprovements wll be possble. To avod stallng, the step sze s ncreased by one after a number SWI of steps whch do not yeld any mprovement. Clearly, there s a tradeoff: Instead of acceptng many non-mprovng steps at a low stepwdth, t may pay off to force hgher numbers of tasks to be relaxed n order to gan substantal mprovements. A general advantage of large neghbourhood search s that the soluton qualty smoothly scales wth the nvested runtme: Whle wth lttle runtme, reasonable results are obtaned, the results gradually get better f more tme s avalable. If arbtrarly large neghbourhood szes and dscrepances can be used, LNS amounts to a complete search for the gven optmsaton problem Preprocessng As descrbed before, the levellng procedure s preceded by a tour mnmsaton algorthm. The mprovement phase wll buld upon the task attrbuton as gven by the precedng tour mnmsaton phase. We stll have some degrees of freedom for fxng tasks wthn ther remanng tme wndows. Before the mplementaton of the levellng procedure, tasks were fxed to ther earlest possble start tmes, neglectng the possblty of shftng tasks wthn ther tours n order to level demands. Ths earlest start soluton s a possble startng pont for the levellng algorthm. However, a better startng soluton can be generated by lettng a preprocessng phase decde at whch tmes the tasks are scheduled. Assume frst that the scenaro does not contan crew tasks. Consder a tour whose tasks are not yet fxed n tme, contanng a set of tasks I r n fxed order. If the tour s traversed tmewse, the possble start tmes of a task 2 only depend on the fxaton of the precedng task 1. Ths means that a dynamc programmng (DP) algorthm wth state space I r T can be appled. The cheapest objectve functon value for each state ( 2, t 2 ) s calculated by mnmsaton over the start tmes t 1 of the predecessor 1 = π 2 such that t 1 + l 1 + d 1, 2 t 2. At each node, the ncrease n objectve functon by fxng 2 to t 2 s added. Ths dynamc programmng algorthm can make use of the constrant model, see also Focacc and Mlano [2001]. When a DP state ( 1, t 1 ) s expanded to possble start tmes for successor task 2, ths can be done by settng δ start 1 := {t 1 } and propagatng. The resultng objectve functon s recorded, and each of the start tmes n δ start 2 s tred and propagated. If the best value at state ( 1, t 1 ) plus the objectve functon ncrease s less than the current value at the state ( 2, t 2 ), ts best 62

79 4.9. Preprocessng 1 2 Fgure 4.5.: Temporal nfluence over crew tasks. value s updated. Ths procedure can be optmsed for start tmes t 1 of 1 wth t 1 +l 1 +d 1, 2 < a 2,.e. when the fxaton of 1 to t 1 does not have any nfluence on possble start tmes for 2. We can then frst mnmse over the states ( 1, t 1 ) wth the aforementoned property and then expand to all start tmes t 2 [a 2, b 2 ] of 2. Ths procedure provdes local optma for a sngle tour n a specfed context as gven by the tasks n other tours. The context should be as expressve as possble. Imagne that no other tasks are recorded n the demand curve. Then the tourwse dynamc programmng as descrbed above wll yeld dentcal costs for every possble fxaton. On the other hand, f the tasks of all other tours are fxed, the optmsaton may have a very local character, meanng that we cannot expect much mprovement. Two dynamc programmng schemes were evaluated: We use the gven task attrbuton, but let the tme wndows open. Base tme ntervals of all tasks are recorded as descrbed n Secton 4.7,.e. we start from a base workload hstogram. The tours are then fxed one by one by the above dynamc programmng procedure. Ths successve fxng procedure wll be referred to as SFDP. We take the earlest start tme fxaton. For each tour n turn, the start tmes for all tasks n the tour are relaxed and reoptmsed by dynamc programmng. Ths s repeatedly done on all tours untl no more mprovement s possble,.e. we have reached a local optmum. Ths s the case f no mprovement was possble for R tours. We wll refer to ths procedure as repeated local dynamc programmng (RLDP). Note that RLDP wll traverse more tours than SFDP, but the extra runtme may pay off because the fxaton of a tour s evaluated n dfferent contexts. For SFDP, the context n whch a tour s optmsed wll be less expressve, especally for the frst tours whch are fxed. If the scenaro contans crew tasks, some extra effort must be spent. In the RLDP scheme, start tme decsons should be relaxed for complete crews because otherwse, a crew task would have lttle or no degrees of freedom. Potental problems for dynamc programmng arse from the more complex temporal relatons between the tasks: Whle wthn the tours, possble start tmes for a task 2 only depend on ts predecessor 1, vald start tmes for 2 may addtonally be nfluenced by tasks before 1 va crew task relatons. An example can be found n Fg. 4.5 where tasks of the same colours represent blocks of crew tasks and temporal nfluences are sketched by arrows. In such cases, the optmal start tmes determned n dynamc programmng may not be feasble. In practcal scenaros, ths phenomenon wll be rare, and we wll smply dscard the DP results n such cases. For comparson wth the dynamc programmng approaches, a thrd greedy fxng (GF) method s evaluated. All tme wndows are left open, and fxng s done on the bass of the base hstogram. All tasks are traversed n order of ncreasng tme wndows,.e. decsons for tasks wth most degrees of freedom are left untl the end. Each task n turn s fxed to ts (locally) optmal start tme. Ths approach was successfully appled to resource levellng [Harrs, 1990] and corresponds to the fal-frst prncple [Haralck and Ellott, 1980]. The best soluton of these preprocessng algorthms wll gve a hnt of whch objectve functon values can be attaned wthn the gven attrbuton of tasks to tours. The degree by whch the local 63

80 4. Workload Levellng n a Vehcle Routng Envronment No. days tasks movable average task crews crew range of tours groups tasks tme wndow mnutes tasks travel tmes A [0,7] A [0,7] A [0,0] B [0,11] B [0,8] B [0,10] B [0,10] B [0,24] B [0,18] B [0,29] B [0,54] B [0,12] B [0,0] B [0,0] B [0,1] B [0,1] B [0,3] Table 4.1.: Scenaro data. search algorthm s able to mprove the soluton wll furthermore gve an ndcaton of how much the qualty of tour attrbutons contrbutes to overall soluton qualty Expermental Results All of the aforementoned algorthms were mplemented n Vsual C The toolkt ctk was used for the mplementaton of constrant propagaton and the branch-and-bound algorthm. Tests were carred out on a personal computer wth AMD Athlon processor (1.67 MHz), 512 MB man memory and operatng system Wndows XP SP1. Snce workload levellng s a novel optmsaton problem whch s especally relevant to arport operatons, realstc arport plannng scenaros were chosen for the evaluaton. Scenaros cover seven or eght days wth a dscretsaton of one mnute and often have a large scale as can be seen from Table 4.1. Test cases of class A represent pure equpment plannng scenaros whle class B scenaros apply to staff plannng. The number of tasks vary between 229 (scenaro A01) and (scenaro B09) of whch an average of 59.9% are movable (column tasks ncludes movable tasks n Table 4.1). Whle n some scenaros, nearly all tasks are movable, only 2.8% of the tasks are movable n scenaro B03, meanng that the potental for levellng wll be rather low. The average tme wndows as gven n Table 4.1 refer to movable tasks only. As can be seen from the problem data, the tasks are partly hghly movable wth a tme wndow of up to 269 mnutes. Tasks have average lengths of between 5.4 and mnutes. 10 out of 17 scenaros contan crew tasks wth average crew szes between 2 and 12. Some of the scenaros have vanshng travel tmes whle others use travel duratons of up to 54 mnutes. It can be seen that the test cases cover a wde range of dfferent characterstcs wth regard to the number of tasks, ther movabltes, duratons and the use of crews. The fgure tours gves the result of the ntal tour mnmsaton algorthm. Note that whle scenaro A01 comprses only 4 tours, 789 tours are needed to cover the tasks of scenaro B09. The column groups refers to the symmetry breakng descrbed n Secton 4.5. It can be seen that especally the test cases nvolvng crew tasks exhbt strong symmetry. In other scenaros, there s no or nearly no advantage n usng symmetry breakng constrants. As an example, each task 64

81 4.10. Expermental Results No. EST SFDP RLDP GF obj. fct. obj. fct. mprovement runtme (sec.) obj. fct. mprovement runtme obj. fct. mprovement runtme (sec.) A % % % 1.14 A % % % 1.14 A % % % 0.31 B % % % 0.17 B % % % 0.03 B % % % 0.02 B % % % 0.55 B % % % 0.18 B % % % 0.48 B % % % 0.59 B % % % 5.18 B % % % B % % % 0.44 B % % % 1.26 B % % % 1.99 B % % % 1.49 B % % % 0.26 Table 4.2.: Preprocessng runtmes and results. bulds ts own group n scenaro A01. Table 4.2 shows results and runtmes (n seconds) of the three preprocessng algorthms SFDP, RLDP and GF n comparson to earlest start fxng (EST). It can be seen that SFDP domnates RLDP n soluton qualty. The dsappontng results of RLDP can be explaned by ts local character snce t reoptmses only one tour at a tme wth all other tours beng fxed. Ths prevents RLDP from overcomng local optma. In contrast to expectatons, SFDP s not faster than RLDP on all scenaros. Nevertheless, SFDP only consumes more tme on scenaros on whch results are clearly superor to RLDP,.e. RLDP termnates early because no further mprovements can be found. Astonshngly, the results of GF preprocessng are compettve wth the SFDP results. Whle on most scenaros, the qualty of GF results s slghtly below the SFDP outcome, t s even better on 4 of the 17 scenaros. Even f the fxng dea of GF s smple, the orderng of tasks by ncreasng tme wndows seems to pay off, confrmng the experence of Harrs [1990] n the resource levellng context. GF needs only lttle computaton tme whle SFDP consumes up to more than 30 mnutes for preprocessng. The hgh runtmes of SFDP are due to the testwse fxatons and propagatons of start tme decsons n dynamc programmng. On average, SFDP consumes more than 67 tmes the runtme of GF. As expected, the mprovements by preprocessng are generally hgher on scenaros nvolvng many tasks wth wde tme wndows. The results of GF preprocessng were taken as a startng pont for large neghbourhood search. In prelmnary experments, the parameters for the choce of release tasks and for renserton were tuned. The maxmum dstance T D for tasks whch can be relaxed around the frst chosen task was set to 180 mnutes. The relatedness weght parameters λ T W, λ OL, λ DIST and λ T T were all set to 1,.e. the crtera are equally weghted. The values DIST fx and T T fx were fxed to 10. A value of 50 was used for the choce randomness parameter CR, meanng that the nfluence of randomness s rather low. As descrbed n Secton 4.6, the search depth can be controlled by the dscrepancy lmt L D. Astonshngly, a lmt of L D = 0 provded best results on average. As a consequence, only one mprovng soluton s explored n every teraton. Clearly, t becomes more and more dffcult to fnd mprovng solutons when the qualty of the ncumbent soluton gradually ncreases. A planner may sometmes not be able to nvest too much runtme. To show how the soluton qualty scales wth the nvested runtme, Table 4.3 gves results for runs wth a lmt of 10, 20 and 60 mnutes runtme. The runtmes nclude the GF preprocessng, mprovement fgures are gven relatve to the GF results. Dfferent values were used for the parameter SWI, denotng the number 65

82 4. Workload Levellng n a Vehcle Routng Envronment No. GF result runtme 10 mn. runtme 20 mn. runtme 60 mn. obj. fct. avg. obj. fct. mprovement rel. σ avg. obj. fct. mprovement rel. σ avg. obj. fct. mprovement rel. σ A % 0.14% % 0.41% % 0.18% A % 0.57% % 0.17% % 0.13% A % 0.30% % 0.19% % 0.11% B % 0.12% % 0.12% % 0.12% B % 0.22% % 0.30% % 0.62% B % 0.04% % 0.08% % 0.08% B % 0.12% % 0.09% % 0.15% B % 0.35% % 0.21% % 0.14% B % 0.98% % 0.48% % 0.33% B % 0.36% % 0.27% % 0.22% B % 2.09% % 1.67% % 0.55% B % 0.02% % 0.02% % 0.03% B % 0.22% % 0.05% % 0.04% B % 0.34% % 0.09% % 0.28% B % 0.33% % 0.15% % 0.36% B % 0.10% % 0.08% % 0.09% B % 0.14% % 0.16% % 0.26% Table 4.3.: Results of large neghbourhood search based on GF results. of steps wthout mprovement after whch the number of relaxed tasks s ncreased: For the 10, 20, and 60 mnute runs, SWI was set to 20, 50, and 100, respectvely. Ths means that for the longer runtmes, smaller neghbourhoods are explored more thoroughly. Each result s an average over 5 runs wth dfferent random seeds. To show the closeness of results wth dfferent ntalsatons of the random number generator, an estmaton σ = n =1 (z z) 2 n 1 for the standard devaton was calculated wth z beng the results of the dfferent runs, z the average results as gven n Table 4.3 and n := 5 the number of runs. The relatve standard devaton n Table 4.3 s equal to σ z. Addtonally to the LNS results n Table 4.3, Table 4.4 shows how many steps are performed on average and how many tasks are relaxed n the fnal steps. From Table 4.3, t can be seen that the LNS procedure mproves the preprocessng results consderably. If we assume that the freedom of fxng tasks wthn ther tours s well exploted by preprocessng, ths means that the reattrbuton of tasks to dfferent tours s a consderable source of mprovement. Ths however vares between the scenaros. As an example, scenaro B04 s mproved by 4.33% n preprocessng, but LNS only fnds an addtonal 0.43% ameloraton. In contrast, LNS mproves scenaro B08 by 23.56% whle the mprovement of preprocessng can nearly be neglected. Other scenaros (lke scenaro B07) are substantally levelled by preprocessng and LNS. The results of LNS were agan subjected to the tour-wse dynamc programmng reoptmsaton used n RLDP preprocessng. On none of the scenaros further mprovement could be realsed, demonstratng the qualty of start tme decsons n LNS. From the results for dfferent runtmes, t can be seen that much of the mprovement can generally be acheved n relatvely low runtmes. After a certan number of steps, large neghbourhood search hardly yelds any mprovement. Fg. 4.6 shows the typcal evoluton of soluton qualty on a LNS run on scenaro B08. The tme after whch saturaton occurs dffers from scenaro to scenaro. As an example, the best soluton for scenaro B01 comprsng lttle movable tasks s already found after 10 mnutes runtme. Relatve standard devatons for the dfferent runs are generally qute low. As expected, devatons dmnsh wth hgher runtmes: Whle the 10 mnutes results have an average devaton of 0.38%, the 20 mnutes and 60 mnutes results exhbt relatve standard devatons of 0.27% and 0.22%, respectvely. 66

83 4.10. Expermental Results No. runtme 10 mn. runtme 20 mn. runtme 60 mn. avg. steps avg. tasks avg. steps avg. tasks avg. steps avg. tasks A A A B B B B B B B B B B B B B B Table 4.4.: Fnal numbers of steps and tasks n large neghbourhood search objectve functon tme (sec.) Fgure 4.6.: Objectve functon development on scenaro B08. 67

84 4. Workload Levellng n a Vehcle Routng Envronment 10 mn. 20 mn. 60 mn. GF EST GF EST GF EST A A A B B B B B B B B B B B B B B Table 4.5.: Overall effect of GF preprocessng. The fnal numbers of steps and tasks as gven n Table 4.4 reflect the dfferent characterstcs of the test cases. As an example, large neghbourhood search on the large-scale scenaro B09 conssts of repeated relaxatons and reoptmsatons of only one task. It can be clearly expected that the results on ths scenaro wll mprove f further runtme s nvested. On the other end of the scale, up to steps are performed on scenaro B08, and up to 28 tasks are released n a run on scenaro B04. To measure the overall effect of GF preprocessng, large neghbourhood search was run an addtonal fve tmes on the ntal soluton n whch all tasks are fxed to ther earlest possble start tmes. Table 4.5 contrasts the average 10, 20, and 60 mnutes results wth earlest start tme fxng (EST) to the GF/LNS results. It can be seen that the GF mprovements are quckly reconstructed by pure large neghbourhood search. After only 10 mnutes, the GF/LNS results are better on only 12 of the 17 scenaros whle on average, EST/LNS results are stll 0.26% above the GF/LNS outcomes. After 20 and 60 mnutes, the average gap s 0.19% and 0.12%, respectvely, and preprocessng does not pay off any more. Addtonally to the objectve functon summng up quadratc workloads, t s nterestng to observe the effects of levellng on the overall workload maxmum and travel tmes even f these are no explct optmsaton crtera. A summary of demand peaks and travel tmes before (wth EST fxng) and after optmsaton (ncludng GF preprocessng) s gven n Table 4.6. As before, optmsaton results are averaged over fve runs wth 60 mnutes of runtme. Obvously, workload levellng s also benefcal for global demand maxma. On 8 out of 17 scenaros, the demand maxmum can be lowered by the levellng procedure. It s nterestng to note that the large-scale scenaro B09 fgures among these 8 scenaros; n one run, the global maxmum s even reduced from 129 to 125. A vsual nspecton of ths scenaro shows that the levellng results are better than the maxmum 0.95% objectve functon mprovement (over EST fxng) mght suggest. 68

85 4.11. Conclusons and Future Research No. demand maxmum travel tmes before optmsaton after optmsaton before optmsaton after optmsaton A A A B B B B B B B B B B B B B B Table 4.6.: Effects on global demand maxma and travel tmes. The algorthm also tends to reduce travel tmes. A reducton can be observed on 9 of the 14 scenaros nvolvng travel tmes whle on three scenaros, travel tmes slghtly ncrease. Travel tme reductons rase up to a 69.4% mprovement on a scenaro B08 run. Clearly, t must be noted that travel tmes are not an optmsaton crteron of the ntal tour buldng algorthm Conclusons and Future Research We have presented a novel workload levellng problem n a vehcle routng envronment. Its objectve s the smoothng of workloads arsng as work tasks for moble staff and equpment on arports. Superpostonng work tasks and travel tmes as a demand curve, workload levellng explots the freedom of postonng movable tasks at tmes of low workloads. Unnecessary demand peaks are therefore avoded. The resultng demand curve provdes a sutable bass for realstc estmatons of workforce demands and for the plannng of staff and equpment. We have shown that workforce levellng s closely related to resource levellng n project schedulng. Lke resource levellng bulds upon the result of a makespan optmsaton algorthm, workload levellng starts from the outcome of a tour mnmsaton procedure. Consequently, workload levellng has been conceved as a soluton mprovement algorthm. Furthermore, we have proved that workload levellng s N P-hard, justfyng the search for heurstc algorthms. We have shown that constrant propagaton s a good choce for capturng the temporal nterdependences between the tasks as well as the non-lnear objectve functon. Addtonally, CP allows for an easy ncorporaton of constrants whch may come up n the future. We have presented a large neghbourhood search algorthm whch repeatedly relaxes and reoptmses nserton and start tme decsons. A new varant of lmted dscrepancy search has been used for reoptmsaton, explotng a powerful lower bound. The soluton scheme gradually explores larger neghbourhoods and provdes easy means of weghng runtme aganst soluton qualty. As an nterface between tour mnmsaton and local search, three dfferent greedy and local 69

86 4. Workload Levellng n a Vehcle Routng Envronment dynamc programmng procedures for the ntal fxng of start tmes have been presented. The algorthms has been tested on a wde range of real-world scenaros of dfferent szes and characterstcs. Surprsngly, the greedy preprocessng algorthm has shown to be the best bass for soluton mprovement, provdng compettve results wthn very low runtmes. Large neghbourhood search has been able to mprove consderably upon the preprocessng results, showng that a consderable potental for mprovement les n the reattrbuton of tasks. Whle wth short runtmes, preprocessng stll pays off, comparable results can be acheved by pure large neghbourhood search f more runtme s nvested. The overall algorthm has been shown to be robust n provdng level demand curves on qute dfferent test cases. Furthermore, overall demand maxma and travel tmes have been reduced on many plannng scenaros. The workload levellng procedure s part of a commercal software applcaton and has proven to be a very valuable tool for demand plannng and for the preparaton of workloads for staff plannng. In general, one can expect that levelled workloads provde a better bass for demand-level plannng of shft dutes. If, however, shft plannng s the only focus of workload levellng, the model may be refned. As an example, the length of tours could be restrcted such that tours ft nto shfts [Ernst et al., 2004]. A dsadvantage of the separaton of workload levellng and (demandbased) shft plannng s that levellng does not always schedule tasks at postons whch are most approprate wth regard to shft plannng. A theoretcal defcency s that the demand-level shft plannng approach does not provde a lower bound for task-level shft plannng. Further experments wth large neghbourhood search could e.g. evaluate the effcency of alternatve heurstc prunng technques. Dfferent alternatves to lmted dscrepancy search have been proposed n recent years, ncludng mproved lmted dscrepancy search [Korf, 1996], depthbounded dscrepancy search [Walsh, 1997] and nterleaved depth-frst search [Meseguer, 1997]. 70

87 5. An Improvement Algorthm for Complex Shft Plannng The art of flyng s to throw yourself at the ground and mss. Douglas Adams Shft plannng at arports can be carred out n dfferent ways. Models n the lterature regularly buld upon workforce demands gven n dscrete tme perods, see Chapter 2. If nformaton on flghts and passenger/load fgures s lttle detaled, ths s also an approprate approach for ground staff plannng. If, however, we are nterested n an operatve plannng whch s carred out shortly before operatons, shft plannng should am at coverng the ndvdual work tasks (see also Secton 1.2.3). Task-level shft plannng s a novel optmsaton problem whch combnes aspects of vehcle routng and shft schedulng. Addtonally, our scenaro requres the handlng of preemptve tasks and crew constrants. In the past, a heurstc constructon method has been used to tackle the large scale and consderable complexty of arport shft plannng problems. Whle ths method generally provdes good solutons, t sometmes lacks robustness and exhbts defcences on ndvdual plannng nstances. In the followng, we wll develop a mathematcal descrpton of task-level shft plannng and descrbe the desgn and mplementaton of a constrantbased method for local reoptmsaton of shft plans Introducton Ground handlng companes and arlne ground handlng departments face the problem of coverng large sets of work tasks wth approprate staff. Handlng tasks nclude baggage loadng and unloadng, arcraft cleanng, fuellng as well as check-n and boardng servces. In the precedng chapter on workload levellng, t was shown how tasks can be prepared for a graphcal demand analyss as well as demand-based schedulng. We wll now deal wth coverng work tasks by approprate shft dutes whch are assgned to workers n a downstream step. For a gven department, we wll assume a set of tasks to be gven, spannng over a plannng horzon whch wll frequently be one week. Each task s bascally charactersed by a wndow of possble start tmes, a length and a locaton at whch t takes place. The goal of shft plannng s to cover these tasks by shfts of any of a set of gven types. Shft types defne start and end tmes wthn the day and gve nformaton on the duraton and placement of one or several breaks (e.g. relef or lunch breaks). Tasks must be placed one after the other such that tme wndow and break placement restrctons are met and suffcent tme for travel between locatons s avalable. Ths basc scenaro s often enrched by further constrants. Workers lke arcraft cleanng staff are often planned n crews or teams, mposng constrants on the parallelsm of tasks and shfts. Some of the tasks can be preemptve or splttable, meanng that the task s handed over to another person at some tme. Some tasks may have to be covered by staff wth specal sklls lke language sklls (for check-n and boardng servces) or beng traned for a specal arcraft type (e.g. for baggage loadng/unloadng). Further restrctons affect the mx of shft types n the fnal plan, reflectng the numbers of workers wth dfferent contracts and worktme agreements. 71

88 5. An Improvement Algorthm for Complex Shft Plannng Task-level shft plannng conssts n buldng tours of tasks, obeyng tme wndow constrants. Ths can be nterpreted as a specal vehcle routng problem wth tme wndows (VRPTW) wth the shft types mposng restrctons on the tours. Crews and splttable (preemptve) tasks ntroduce novel modellng aspects whch are partcularly challengng for the desgn of optmsaton algorthms. Task-level shft plannng s thus an ntegraton of classcal shft schedulng wth vehcle routng and further complcatng constrants. Only a lmted number of publcatons s loosely related to ths problem. Thompson [1992] descrbes the schedulng of blocks of controllable work whch can be nterpreted as splttable tasks. Baley et al. [1995] descrbe a shft schedulng settng n whch workloads are gven as actvtes n a project schedulng envronment whle n Nobert and Roy [1998], workforce demands relate to the weght of arcargo. Campbell and Savelsbergh [2004] lmt the extent of tours by a gven length wthout explctly takng shft types or breaks nto account. Crew and drver schedulng relates to task-level schedulng n coverng trps by shfts dutes (see Secton 2.11). However, drver and crew dutes are drven by the placement and lengths of trps, and there s no noton of shft types. In the followng, we wll show how all aspects of complex task-level shft plannng can be represented n an optmsaton model and how effcent algorthms can be desgned, yeldng robust solutons on a large varety of staff schedulng scenaros. Realstc arport shft plannng s often carred out on a very large scale. Frequently several thousand tasks wth partly wde tme wndows must be covered, and several hundred shft types may be used. Furthermore, several dozens of qualfcatons and related restrctons are used. Due to 24 7 operatons, t may not be possble to decompose larger schedulng horzons wthout sacrfcng optmsaton qualty. In Chapter 7, t wll be shown that even a very restrcted verson of the shft plannng problem s N P-hard. Whle scenaros usng lttle constrants can stll be solved to optmalty (see Chapter 7), we cannot expect to obtan optmal solutons on larger and more complex scenaros. Nevertheless, the use of advanced optmsaton algorthms pays off because wth the large scale of arport operatons, small mprovements translate to large savngs. Heurstc methods allow for the constructon of solutons of good qualty n low runtmes. In the past, a constructon method has successfully been used for several years. The algorthm makes use of the approxmaton of workloads by a workload hstogram and ntally solves a set coverng formulaton of the demand-level shft schedulng problem by lnear programmng and heurstc roundng. The levelled workload hstogram of Chapter 4 provdes a startng pont for ths ntal phase whch consders only a small subset of the constrants. In a second phase, the tasks are nserted nto the shfts of the frst phase one by one. Because the workload hstogram only provdes an approxmaton to actual workloads, further shfts may have to be created n a fnal phase to cover all tasks. Each task s handled only once n the course of soluton constructon, entalng low runtmes even for large-scale scenaros. Snce the algorthm was used and tuned for several years, the solutons generally exhbt a farly good qualty and were generally well-accepted by customers. Nevertheless, the algorthm shares typcal trats wth constructon heurstcs: Whle on average, good solutons are provded n lttle runtme, solutons can have consderable defcences on selected scenaros. The more obvous such flaws are, the less planners wll accept the algorthm. Tunng of parameters sometmes helps, but changng parameters generally mproves results on some scenaros whle qualty decreases on others. The goal of ths work was thus the concepton and mplementaton of an algorthm whch mproves the ntal soluton by local reoptmsaton, compensatng for the flaws of the constructon phase. By desgnng an mprovement procedure, we can beneft from the generally good qualty of the constructon algorthm and from other advantageous features of ntal solutons lke the groupng of tasks of smlar qualfcatons. The algorthm should be generc and robust on a wde range of real-world plannng scenaros. As descrbed n Chapter 3, soluton technques based on constrant programmng are partc- 72

89 5.2. Problem Descrpton ularly approprate for problems comprsng many constrants. We wll therefore develop a constrant model representng the multtude of constrants whch make up the shft plannng problem. On ths bass, a relax-and-optmse approach smlar to the soluton approach of the workload levellng problem wll be devsed. Constrant programmng has the addtonal advantage of an easy ncorporaton of addtonal constrants whch are lkely to come up n the future, e.g. by model refnements or customer-specfc requrements. The algorthm wll allow for the determnaton of good solutons n reasonable runtmes. Wth further nvested runtme, soluton qualty ncreases further, resultng n shft plans that are partly consderably better than the startng solutons. The chapter s organsed as follows: In the subsequent secton, the shft plannng problem s descrbed formally, provdng a bass for the mathematcal model n Secton 5.3. Sectons 5.4 and 5.5 present basc consderatons for the desgn of a CP-based optmsaton algorthm. The constrant model s descrbed n Secton 5.6. The calculaton of lower bounds presented n Secton 5.7 provdes a bass for the restrcted branch-and-bound algorthm of Secton 5.8 whle Secton 5.9 deals wth desgn decsons for the mplementaton of large neghbourhood search. The mnmsaton of task overlaps whch are partly allowed n the optmsaton model s the subject of Secton Secton 5.11 presents expermental results. A summary concludes the chapter Problem Descrpton In the followng, we wll characterse basc enttes n task-level shft plannng and ntroduce some notaton. We wll furthermore descrbe how task splttng, overlappng and crews are handled. An overvew of mathematcal symbols can be found n Appendx A Tasks and Shfts Workloads are gven as a set I of (work) tasks. A task I s charactersed by an nterval [a, b ] of possble start tmes (start tme wndow) and a length l. All tmes are assumed to be gven as nteger numbers on an approprate dscretsaton level (typcally mnutes). The output of the shft plannng process s a set S of shfts. Dfferent constrants apply on the shft level. Shft types K specfy when shfts can start and end. A shft type k K can be realsed on days N k N where N s the set of all days of the plannng horzon (often one week). The realsaton of shft type k K on a day n N k starts at a tme st kn and ends at et kn. Note that a shft s always attrbuted to the day on whch t starts. It wll be assumed that shft types cover at most 24 hours. For a shft of type k K, costs of c k are ncurred. Shft costs wll often be proportonal to ther length. Addtonally, nght shfts may ental hgher costs. Furthermore, a shft type defnes up to three break rules for the lunch or relef breaks a shft must contan (see Fg. 5.1). In practce, shfts wll often contan a lunch break of 30 or 60 mnutes length and up to two relef breaks of 15 mnute length [Schndler and Semmel, 1993] [Aykn, 2000]. The (possbly empty) early, man and late break rules of a shft type k are denoted by brk eb, brk mb and brk lb, respectvely. If a shft type prescrbes the use of less breaks, t wll be assumed that the correspondng break rules have the value NIL (e.g. brk eb = NIL). The set of all break rules wll be denoted by BR. A break rule br BR s defned by a start tme wndow [a br, b br ] relatve to the shft start and a length l br. A shft s S can be regarded an nstance of a shft type k K on a day n N k, see e.g. Koop [1988]. The shft start and end tmes of a shft s are then gven by st kn and et kn. An orgn task o s and a destnaton task d s wll delmt the start and end of a shft s. The start tme wndows of these tasks are naturally defned as [a o s, b o s ] := [st kn, st kn ] and [a d s, b d s ] := [et kn, et kn ]. The sets of all orgn and destnaton tasks wll be denoted by I o and I d, respectvely. 73

90 5. An Improvement Algorthm for Complex Shft Plannng early break man break late break shft start orgn task early break buffer late break buffer shft end destnaton task Fgure 5.1.: Structure of a shft wth orgn, destnaton and break tasks. A shft can have up to three breaks as defned by the break rules of ts shft type. Shfts of type k wll contan one break task for each break rule of k. The break rules of shft type k thus nduce up to three break tasks Is break = { eb s, mb s, lb s } n a shft s. Start tme wndows of break tasks are defned by the break rules relatve to the start tme st kn of the shft type realsaton (k, n): [a eb s, b eb [a mb s, b mb s ] := [st s kn + a br eb k ] := [st kn + a br mb k, st kn + b br eb] k, st kn + b br mb k [a lb s, b lb s ] := [st kn + a br lb k, st kn + b br lb k ] Analogously, break task lengths are gven by the break rules: l eb s l mb s l lb s := l br eb k := l br mb k := l br lb k Whle the shft attrbutons of work tasks I wll be decson varables of the optmsaton process, the shft assgnment of break tasks s fxed. The set of all break tasks wll be denoted by I b := s S Ib s. A man break rule br := brk mb can furthermore defne break buffer tmes bb eb br and bblb br. Whle defnes the mnmum tme between the end of the early break and the start of the man break, bb eb br bb lb br s a mnmum buffer tme between man and late break. Tasks can take place at dfferent locatons, entalng travel tmes between the tasks. If a task I I d s placed n a shft wth a predecessor work task j I, a travel tme d j, must be performed drectly before s start. Whle n vehcle routng settngs, the mnmsaton of travel dstances s often an explct objectve (see Secton 1.4), they only mpose feasblty condtons n our settng. Clearly, tme wndows must be respected,.e. an arrval at before ts earlest start tme a entals watng tme. Shfts start and end at a central depot. Depot travel tmes are gven by d o s, and d, d s for I. Breaks wll take place at the locaton of ther predecessor work tasks,.e. there are no travel tmes before breaks. We wll therefore defne d,j = 0 f j I b. Because the predecessor of a break can be another break, the determnaton of travel tmes of tasks after breaks may requre a recourse over several break tasks. If pred denotes the predecessor of a task n a shft, we defne the frst regular predecessor rpred() I I o of a task I I b I d as { pred f pred rpred() := I I o rpred(pred ) else Wth ths defnton, the travel tme whch must be accomplshed before a task (possbly a break task) s d rpred(),. As n Chapter 4, travel tmes are assumed to obey the trangle nequalty. The goal of shft plannng conssts n coverng all work tasks by shfts of approprate shft types. The set S of shfts along wth the shft type K s and day N s for each shft s S are thus decson varables of the optmsaton process 1. Furthermore, S wll denote the shft attrbuton of task 1 As n Chapter 4, we wll represent decson varables by uppercase letters wth ndces for the enttes to whch they refer (e.g. K s, N s, S ), see also Appendx A. ] 74

91 5.2. Problem Descrpton break break break break break Fgure 5.2.: Task-level shft plannng. I I b I o I d. Note that for break and delmter task, ths shft attrbuton s fxed. As n Chapter 4, we wll use an nserton-based model and therefore mantan the predecessor pred and successor task succ for each I I b I o I d. The start tmes T for each I wll also be regarded as decson varables even f they do not have any mpact on the objectve functon. The general settng of shft plannng s sketched n Fg In the upper part, the (possbly movable) work tasks are dsplayed whch are the nput of the optmsaton process. The output s a set of shfts (shown n the lower part), ncludng travel tmes (yellow) between the tasks. Note that there are no travel tmes before breaks Qualfcatons Each work task can have qualfcaton requrements, correspondng to basc sklls whch a worker must meet. Each task I thus requres a set Q Q of qualfcatons where Q s the set of all elementary qualfcatons. A shft derves ts qualfcaton requrements from ts tasks. Clearly, f a task requres the worker to have a certan skll, a person workng a shft must cover all qualfcaton requrements of tasks n the shft. The qualfcaton profle Q s of a shft s s thus gven by Q s = I S =s Snce sklled workers are generally scarce, the combnaton of qualfcaton requrements n shfts must generally be restrcted. Frst of all, ths wll be done by restrctng the number of qualfcatons per shft by a constant q max N ( Q s q max ). Note that ths qualfcaton restrcton s closely related to capacty constrants n vehcle routng (see e.g. Toth and Vgo [2001a]). Ths mples that all tasks must obey ths lmt ( Q q max ) snce otherwse, a task could never be assgned to a shft. Furthermore, we ntroduce an objectve functon term for penalsng the use of scarce qualfcaton combnatons. Ths term should be regarded an approxmaton for obtanng solutons reflectng the sklls of the workforce at hand. More exact approaches lmtng shfts along workforce restrctons may be subject of future research. Qualfcaton penaltes wll be a subordnate objectve,.e. we wll not accept better qualfcaton combnatons f ths entals addtonal shft costs. We wll assume that qualfcaton preferences qp(q ) [0, 1] can be gven for each set Q Q wth qp( ) = 1 and qp(q 1 ) qp(q 2 ) f Q 1 Q 2. Qualfcaton preferences should reflect the relatve frequences of skll combnatons among the staff,.e. scarce qualfcaton combnatons should have low preference values. Note that whle an analyss of ways to obtan approprate Q 75

92 5. An Improvement Algorthm for Complex Shft Plannng and consstent values s beyond the scope of ths work, the determnaton of preferences must be regarded a dffcult problem n tself. Qualfcaton combnatons Q wth qp(q ) = 0 wll be nterpreted as ncompatble qualfcatons,.e. such qualfcatons must not be combned n shfts. A typcal example for ncompatble qualfcatons are water and faeces servces on arports whch are not combned for hygenc reasons. Some tasks n a scenaro may requre qualfcatons whch can only be covered by few employees. A wde-spread use of such specal qualfcatons may prevent a shft plan from beng covered by approprate staff. Knowng the number of staff wth dfferent sklls, planners can often specfy maxmum lmts on the numbers of shfts contanng a specfc qualfcaton. Ths wll be represented by qualfcaton restrctons QR. A qualfcaton restrcton qr QR s defned by a qualfcaton q qr Q and a lmt m qr N on the number of shfts requrng q qr. Imposng strct maxmum lmts may prevent an algorthm from fndng feasble solutons. We wll therefore use a large penalty M QR f a qualfcaton lmt s exceeded Crews The plannng practce on arports sometmes requres workers to be planned n crews (teams). Ths comprses the task parallelsm constrants whch have already been descrbed n Secton 4.3 for the workload levellng problem. A shft plannng scenaro may thus defne a number of task crews C (correspondng to the crews of Secton 4.3) wth C I C C. Sometmes t may already be suffcent to mpose temporal restrctons on crew tasks. In other cases, we may not only want the tasks to be performed n parallel, but due to legslatve or unon regulatons, the staff may work n fxed groups on parallel shfts, performng groups of parallel tasks durng ther shfts. For a gven shft plannng scenaro, the sze cs N of each crew of workers wll be fxed. If thus a scenaro wth cs > 1 s gven, the set of shfts S wll consst of groups of cs shfts each. A typcal example s the plannng of cabn cleanng personnel [Stern and Hersh, 1980]. The staff n cleanng departments often conssts of crews of sze cs = 4. We thus have to create blocks of four shfts each whch we wll call shft crews. Each shft crew H H, H S s thus a group of cs shfts. The crew sze cs generally corresponds to the sze of typcal task groups. In the above cabn cleanng example, we would thus expect that tasks are usually blocked as groups of four tasks because the cleanng of a typcal arcraft may requre ths number of workers. To avod splttng up staff crews, each such task group should always be assgned n total to a shft crew. Clearly, crews should not only work on shfts of parallel types, but ther blocks of tasks should also be performed as much n parallel as possble. However, the task parallelsm constrants of task crews are often mposed on larger blocks of tasks. As an example, a wde-body arcraft may requre two crews of four people to work n parallel n order to accomplsh the cleanng work wthn the groundtme. Task parallelsm would then refer to a group of eght tasks whle blocks of four tasks are assgned to parallel shfts. A task crew C C may thus be splt up nto one or several subcrews each of whch has a maxmum sze of cs. If all tasks n a task crew have dentcal tme wndows and lengths, task crews may be splt arbtrarly. However, ths s not the case n general. If cs > 1, we wll therefore assume that a set B of subcrews s gven such that each subcrew B B s a subset of the tasks of a task crew. Note that f cs = 1, a scenaro can contan task crews wthout any subcrews,.e. only task parallelsm constrants are mposed. We wll restrct each subcrew B B to be assgned to a block H H of shft crews. Note that subcrews can have szes less than cs, and crew plannng scenaros may even comprse sngle non-crew tasks. We wll allow such ungrouped tasks to be covered ether by crew shfts or by 76

93 5.2. Problem Descrpton break break break break break break break break Fgure 5.3.: Handlng of task crews and subcrews. break break break Fgure 5.4.: Task splttng. sngleton shfts whch are not grouped n crews. Crew plannng scenaros wth gven crew sze cs wll therefore generally nvolve blocks of crew shfts of order cs and sngle shfts. Even f each crew member can cover dfferent sets of tasks, we wll restrct the breaks of shft crews to take place n parallel. Fgure 5.3 llustrates the handlng of crew tasks for a department wth cs = 4. In the example, seven tasks buld a task crew whose tasks are placed n parallel. The task crew conssts of two subcrews each of whch s placed n a block of crew shfts of sze 4. Note that not only the crew tasks are placed n parallel (assumng that the tme wndows are not fxed a pror), but also the break tasks Task Splttng Due to ther lengths, some tasks may not ft nto any shft type. As an example, occupatons for tcketng or check-n counters or help desks frequently span over the whole day, but shft types typcally have maxmum lengths of 8 to 12 hours. Nevertheless, t may not be oblgatory to attrbute such tasks to a sngle person. Thus t s possble to splt t at some pont n tme and assgn the resultng task parts to dfferent shfts, ntroducng the concept of preemptve tasks. Fgure 5.4 shows the basc dea: A long task s nterrupted at the start tme of the break of the frst shft. Whle the thrd part of the task s agan attrbuted to the same shft, the break tme nterval and the fnal part are attrbuted to separate shfts. Planners on arports usually know whch types of tasks must be splt n order to ensure that a feasble shft attrbuton can be found. Preemptve tasks should generally not be splt nto arbtrary many parts snce a frequent swtchng between dfferent workers dsrupts operatons. We therefore assume that for each task, a mnmum splt length msl s gven, denotng the mnmum length of a task part after splttng. If msl =, we wll assume that cannot be splt. Crew tasks wll always be non-preemptve. We could try to determne approprate splt parts (parts whch result from splttng) before shft plannng,.e. the splt parts would already be nput of the algorthm. Ths would clearly fx the number of splt parts, ther lengths and splt ponts. These fgures should however depend on the shft types and the context gven by surroundng tasks. Task splttng s therefore ntegrated nto shft plannng,.e. the tmes at whch tasks are splt wll be decson varables of the optmsaton 77

94 5. An Improvement Algorthm for Complex Shft Plannng process. For each task wth msl <, we wll determne the number of splt parts beforehand, replacng by ts splt parts n the nput task set I. The number of generated splt parts wll be taken to be an upper bound on the number of effectvely used splt parts n a schedule. The obvous upper bound l /msl on the number of splt parts s generally too weak. Ths number can be reduced f we take some consderatons about meanngful splt ponts wth regard to the shft types nto account. In practce, planners often try to cover a long task prncpally by one shft, only takng out the tme span of a break (for an example, cf. to the frst shft n Fg. 5.4). We wll determne the shft type that covers the longest part of the task wthout takng care of breaks, but respectng dsplacements of the task wthn ts start tme nterval. For each break, we assume that one addtonal splt part has to be created. If leaves a part whch does not ft nto any shft type, the procedure s repeated for the remanng task duraton. If a and b are earlest and latest start tmes and l s a length (ntally, a, b and l wll be equal to a, b and l ), we can calculate the part of a task whch s covered by shft type k on day n: mn(et kn d, d, max(st kn + d o k k,, a) + l) cov(, k, n, a, b, l) := max(st kn + d d k,, a) f st kn b 0 else If nb(t 1, t 2 ) s the number of breaks n the tme nterval [t 1, t 2 ] 2, the number of splt parts for task wth earlest start tme a =: a, latest start tme b =: b and length l =: l s teratvely calculated as 0 f l = nb(st, st + tcov) + sparts(st + cv, st + cv, l cv) sparts(a, b, l) := wth cv := max k,n cov(k, n, a, b, l) (k, n) := argmax k,n cov(k, n, a, b, l) else st := max(a, st kn ) Knowng the number m := sparts(a, b, l ) of parts to be created from an orgnal task, we create n splt parts 1,..., m. Each of these parts wll have the same start tme nterval [a j, b j ] := [a, b ] as the orgnal task. Addtonally, we defne an ordered sequence of the splt parts P := ( 1,..., m ) denoted as splt task of total length l P := l. Splt parts wll nhert the locaton of the orgnal task,.e. travel tmes from and to splt parts are defned as for. Splt task and splt parts replace the orgnal task as part of the nput data. The set of all splt tasks wll be denoted by P. The lengths of the sngle splt parts wll be varable, and there s no meanng n attrbutng lengths l j to splt parts j. We therefore set l j = 0 j P, P P. The splt task P nherts the mnmum splt part length from the orgnal task: msl P := msl. For a splt part j of P, we wll wrte j P, and the splt task P j P {NIL} of a I wll be P f P for a P P and NIL otherwse. Splt ponts wll be represented by the start tmes T j of the sngle splt parts. Ther end tmes are equal to the start tme of the next splt part,.e. T j+1 also represents the end tme of j. Note that whle the start tmes of nteror splt parts are generally not fxed, the start of the frst splt part and the end of the last splt part are movable f and only f the orgnal task s movable. If these outer tmes are movable, they are stll constraned to obey a dstance whch s equal to the length of the orgnal task. In order to defne an end tme for the last splt part m, a delmtng pseudo splt part pseudo P s defned for each splt task P P. The start tme T pseudo of ths task represents the end P 2 We take a pessmstc approach and defne a break task b s to be n tme nterval [st, et] ff max(st, a b s ) < mn(et, b b s + l b s ). 78

95 5.2. Problem Descrpton splt parts 1 2 n-1 n pseudo P start tme 1 start tme 2 start tme n-1 start tme = end tme 1 = end tme n = end tme n pseudo P splt task length l P Fgure 5.5.: Structure of a splt task. tme of splt part m. Note that the pseudo splt part s only ntroduced for convenence reasons snce T pseudo = T 1 + l P. The start tme wndow of the pseudo task s [a P pseudo, b P pseudo] = P [a 1 + l P, b 1 + l P ]. Snce pseudo P s not a real task, we defne S pseudo P a splt task s llustrated n Fg We defne the splt part successor ssucc of a splt part as j+1 f P = ( 1,..., m ) and = j, j < n ssucc := pt P f P = ( 1,..., m ) and = m NIL f = pseudo P for a P P and the splt part predecessor spred as NIL f P = ( 1,..., m ) and = 1 spred := j 1 f P = ( 1,..., m ) and = j, j > 1 m f = pseudo P for a P P := NIL. The structure of The length of a splt part can be calculated from ts start tme T and the start tme T ssucc of ts splt part successor. The actual length al() of a task I s therefore defned as { l f P al() := = NIL T ssucc T else Task Overlappng The lengths of work tasks on arports are hardly determnstc. Especally n peak tmes, employees are often encouraged to work harder, perform several tasks n parallel or n shorter tmes. In a determnstc model, ths practce cannot be represented n full detal. To defuse some of the strct character of determnstc models, a task I wll be allowed to overlap up to a maxmum task-dependent duraton of tol max mnutes. Ths maxmum overlap can depend on task attrbutes lke the staff group by whch t wll be performed. For easer handlng, we wll generalse tol max to a maxmum overlap ol max for general tasks I I b I o I d. Because an overlap wth orgn, destnaton or break tasks would mean performng parts of a task wthn a break or outsde a shft, we set ol max = 0 for all I b I o I d. Furthermore, no more than two tasks should overlap, meanng that the overlap ol max of work tasks I should be lmted by half the length of the task. 79

96 5. An Improvement Algorthm for Complex Shft Plannng For splt parts, the task length s a consequence of the start tmes of adjacent splt parts. Snce allowed overlaps wll normally be substantally shorter than mnmum splt part duratons, we wll relate the overlap lmt to the mnmum splt part length. Ths leads to the followng defnton: 0 f I ( ) b I o I d l2 ol max := mn mn tol max, ( tol max, f I and P = NIL ) mslp 2 f I and P NIL If possble, overlap should be avoded. Because we wll generally accept overlap f shft costs can be lowered, we wll not try to handle overlap mnmsaton as part of the optmsaton model. Instead, overlap wll be mnmsed as a part of a post-processng step, cf. Secton Shft Number Restrctons Dfferent employment categores among the workforce often mpose consderable restrctons, and solutons wll fall short of planners requrements f these are not represented. As an example, t may be advantageous to create many short shfts to cover the demand n peak tmes,.e. perods of hgh workload. In general, short shfts can only be covered by part tme staff, and part tme workers are only avalable to a certan extent due to unon and legal regulatons, see e.g. Bennett and Potts [1968], Schndler and Semmel [1993] and Brusco et al. [1995]. We therefore ntroduce shft number restrctons, lmtng the numbers of shfts of certan types, ncludng mnmum and maxmum as well as relatve and absolute restrctons. Each absolute restrcton r Rabs mn (r Rmax abs ) mposes a mnmum (maxmum) lmt of m r N shfts on shft type realsatons from K r N r where K r and N r are sets of reference shft types and days. In contrast, a relatve shft number restrcton r Rrel mn (r Rrel max ) defnes a mnmum (maxmum) proporton of p r R + on the number of shfts from K r N r wth regard to all shfts on the reference days N r (.e. shfts from K N r ). Whle mnmum restrctons can always be obeyed, t may not be possble to obey maxmum lmts, and we wll mpose a large penalty M SNR f a maxmum shft number restrcton (absolute or relatve) cannot be obeyed Mathematcal Model We are now ready to defne the shft plannng problem by summarsng ts parameters and decson varables and defnng constrants and optmsaton crtera. The parameters (nput) of the algorthm are gven by: I set of work tasks [a, b ] N start tme wndow of task I l N length of task I Q Q qualfcatons of task I ol max N maxmum overlap for I I b I o I d P set of splt tasks C, B sets of task crews, subcrews d 1, 2 N travel tme between 1 I I o and 2 I I d K set of shft types c k R + cost of shft type k K N k N days of valdty of shft type k K st kn, et kn N start and end tme of shft type realsaton k K on day n N k 80

97 5.3. Mathematcal Model k BR early, man and late break rule for shft type k K [a br, b br ] N break start tme relatve to shft start gven by break rule br l br N break length gven by break rule br q max N maxmum number of qualfcatons n shfts qp(q ) R + qualfcaton penaltes for qualfcaton set Q QR qualfcaton restrctons m qr N maxmum lmt gven by qualfcaton restrcton qr QR Rabs mn, abs absolute shft number restrctons Rrel mn, Rrel max relatve shft number restrctons m r N mnmum/maxmum lmt for absolute shft restrctons r Rabs mn abs p r R + mnmum/maxmum proportons for relatve shft restrctons r Rrel mn Rrel max brk eb, brmb k, brlb The followng are the decson varables: S K s K N s N H S S pred I I o I b succ I I d I b T T set of shfts shft type for each shft s S day for each shft s S shft crews shft for each task I predecessor of task I I d I b successor of task I I o I b start tme of task I I b Note that whle the objectve functon wll not depend on the start tmes, the start tme varables T are used for valdty checks and are useful as part of the output. Equally, an output of realsed travel tmes and qualfcaton profles Q s of the shfts can be nterestng. As descrbed above, shft costs are the man optmsaton crteron. The planner may furthermore want to optmse the qualfcaton mx n the shfts. As descrbed n Secton 5.2.2, qualfcaton penaltes are regarded a subordnate objectve,.e. objectves are lexcographcally ordered. The qualfcaton penalty term wll therefore be normalsed by means of the mnmum postve qualfcaton preference qp mn := mn qp(q ) Q Q qp(q )>0 By multplcaton wth a weght w QP, we keep a means of adjustng the relatve sgnfcance of qualfcaton preferences 3. As descrbed above, exceedng the upper lmts of qualfcaton or maxmum shft number restrctons s penalsed by large values M QR and M SNR, respectvely. Sometmes t may not be possble to place all tasks n shfts, e.g. f there are no shft types coverng the total duraton of a task. Splttng may be a remedy, but there could be tmes of the day whch are not covered by any shft types at all, or splttng may not be desred. If task splttng s allowed, we want to assgn as many task mnutes as possble. We therefore mpose a penalty M UT for each task mnute whch s not assgned to a shft. M UT wll be chosen such that coverng a task pays off even f qualfcaton or shft restrctons are exceeded. The shft plannng problem s defned by 3 The equvalent weghts technque for lexcographcally ordered objectves was orgnally proposed by Sheral [1982], see also Berrada et al. [1996] for a workforce schedulng applcaton. 81

98 5. An Improvement Algorthm for Complex Shft Plannng { mn c Ks (5.1) s S + w QP qp mn S + M QR qp(q s ) 1 (5.2) s S max ( {s S q qr Q s } m qr, 0) (5.3) qr QR + M SNR max {s S K s = k, N s = n} m r, 0 (5.4) r Rabs max k K r n N r + M ( SNR max {s S K s = k, N s = n} (5.5) r Rrel max k K r n N r p r ) {s S K s = k, N s = n}, 0 } k K n N r + M UT al() (5.6) I S =NIL subject to Tme wndows Shft temporal relaton T [a, b ] I I b I o I d (5.7) T ssucc + d rpred(succ ),succ mn(ol max, olsucc max ) T succ f P NIL T + l + d rpred(succ ),succ mn(ol max, olsucc max ) T succ else (5.8) I I b I o Crew temporal relaton } T j+1 T j + (a j+1 a j ) T j+1 T j + l j + (a j+1 a j ) C = ( 1,..., m ) C, 1 j < n (5.9) Shft type days Shft start and end tmes Break buffers N s N Ks s S (5.10) T o s = st KsN s T d s = et KsN s } s S (5.11) T eb s T mb s + l eb s + l mb s + bbeb br T mb s + bb eb br T lb s Predecessor-successor consstency s S : brk eb s NIL brk mb s =: br s S : br := brk mb s NIL brk lb (5.12) s Shft-predecessor consstency pred = j succ j = I I b I o (5.13) pred = j S = s S j = s I I b I o (5.14) 82

99 5.3. Mathematcal Model Shft dfference Subcrew attrbuton S 1 S 2 C C, 1, 2 C, 1 2 (5.15) H H : S 1, S 2 H B B, 1, 2 B, 1 2 (5.16) Crew shft types K s1 = K s2 N s1 = N s2 } s 1, s 2 S, H H : s 1, s 2 H (5.17) Crew break parallelsm Splt task length T eb s 1 T mb s 1 T lb s1 = T eb s 2 Mnmum splt part lengths Shft qualfcaton profles = T mb s 2 = T lb s2 T 1 + l P = T pseudo P s 1, s 2 S, H H : s 1, s 2 H (5.18) T + msl P T ssucc f ssucc succ T = T ssucc else Maxmum qualfcaton requrements Incompatble qualfcatons P = ( 1,..., m ) P (5.19) } I : P NIL (5.20) Q s = I Q (5.21) S =s Q s <= q max s S (5.22) Q s Q Q Q : qp(q ) = 0, s S (5.23) Absolute mnmum shft number restrctons k K r n N r {s S K s = k, N s = n} m r r R mn abs (5.24) Relatve mnmum shft number restrctons {s S K s = k, N s = n} k K r n N r p r k K n N r {s S K s = k, N s = n} r Rrel mn (5.25) The objectve functon term (5.1) descrbes the shft costs as nduced by the shft types whle (5.2) mposes qualfcaton penaltes. Snce the number of used shfts should not an mpact, the sum of the nverted qualfcaton preferences s dvded by the number S of shfts. Note that all qualfcaton preferences are strctly postve due to constrant (5.23). For normalsaton, the 83

100 5. An Improvement Algorthm for Complex Shft Plannng qualfcaton penalty term s multpled by qp mn. Consequently, the qualfcaton term has values n [0, 1], renderng tunng of qualfcaton nfluences va w QP easer. Terms (5.3), (5.4) and (5.5) mpose large penaltes f qualfcaton or maxmum shft number restrctons cannot be obeyed. Fnally, (5.6) accounts for task mnutes whch cannot be assgned to shfts, makng use of the actual length al() defned n Secton Equaton (5.7) restrcts all tasks (ncludng orgn, destnaton and break tasks) to start wthn ther start tme wndow. Constrant (5.8) enforces tasks to be placed one behnd the other n shfts. Whle for non-preemptve tasks, the end tme s gven by the start tme plus ts length, the end of splt parts s gven by the start tme T ssucc of the splt part successor. Tasks are allowed to overlap by at most mn(ol max 1, ol max 2 ) tme unts. Crew tasks should be placed as much n parallel as possble as descrbed by equatons (5.9). Agan, t suffces to use a lnear number of constrants for adjacent pars ( j, j+1 ) of crew tasks, cf. Secton 4.3. The dfference a j+1 a j between the orgnal start tmes of adjacent crew tasks s nterpreted as an offset for the realsed start tmes. Equaton (5.10) restrans a shft to be on a day whch s vald for ts shft type K s, and (5.11) synchronses the shft type realsaton wth the shft start and end tmes. Constrants (5.12) mpose mnmum buffer tmes between early/man and man/late break whle equatons (5.13) and (5.13) guarantee consstency between predecessor, successor and shft varables. To ensure a far assgnment of the work tasks to the members of a team, no more than one task of a subcrew s assgned to the same worker as descrbed by (5.15) (note that ths s often mplct n (5.9). Whle subcrews are part of the nput, the shfts are grouped nto shft crews, and subcrews are always assgned to such blocks of shfts (equaton (5.16)). All shfts of a shft crew ask for the same shft type realsaton (constrants (5.17)), and ther breaks take place n parallel (constrants (5.18)). Splt parts must cover the total length of ther splt task whch s ensured by constrants (5.19). Each splt part has a mnmum length as gven by the value msl P (constrants (5.20)). Note that the mnmum dstance between start tmes s only mposed f two splt parts are not successors n a shft. Splt parts whch are placed as successors n a shft are nterpreted as a sngle effectve part. A soluton to the shft plannng problem can thus use less effectve parts than the logcal parts whch were orgnally generated. The start tmes of splt parts whch are placed one behnd the other are assumed to be equal. Equaton (5.21) relates shft qualfcaton profles to the qualfcaton requrements of the tasks, and (5.22) restrcts qualfcaton requrements to a maxmum sze q max. Constrant (5.23) forbds the use of ncompatble qualfcatons. Absolute and relatve mnmum shft number restrctons are represented by (5.24) and (5.25). Whle n the bulk of the lterature on shft plannng, the workload s represented by a hstogram of workforce requrements per tme nterval, model (5.1)-(5.25) covers a set of work tasks. The shfts contan tours of tasks. Problem (5.1)-(5.25) can thus be nterpreted as a specalsed vehcle routng problem wth tme wndows (VRPTW). Instead of usng an ntermedate hstogram abstracton, the tasks are drectly attrbuted to a set of approprate shfts n an ntegrated approach. To the knowledge of the author, ths s the frst tme that task-level shft plannng s addressed. The basc VRPTW problem s not only enrched by restrctons referrng to the shfts, but also by complcatng task-level constrants, ncludng qualfcatons, task splttng, overlappng and crews. The crew temporal constrants (5.9) and break parallelsm constrants (5.18) refer to tasks n dfferent shfts. Therefore, they ntroduce vertcal relatons between the shfts whle the classcal shft temporal relatons (5.8) have a horzontal character. Task splttng (preemptve tasks) add further vertcal constrants to the problem snce start tme decsons for splt parts generally nvolve two shfts. In Chapter 7, t wll be shown that even a smple subproblem of the shft plannng problem 84

101 5.4. Shft Creaton s N P-hard n the strong sense. Whle we wll see that smple classes of shft plannng problems can stll be solved to optmalty, ths cannot be expected for general large-scale scenaros nvolvng many constrants. Before ths work, a constructon heurstc for the shft plannng problem has been used wth success. Whle ths algorthm generally produces good results n very low runtmes, soluton qualty sometmes suffers from evdent flaws whch has adverse effects on customer satsfacton. It was therefore searched for a procedure whch s able to provde a remedy for the defcency of the ntal algorthm. Ths was supposed to be done wthout sacrfcng benefcal propertes of the constructon algorthm lke ts performance and soluton propertes lke the groupng of tasks of dfferent qualfcatons. It was therefore decded to mplement a soluton mprovement algorthm, usng the result of the ntal algorthm as a startng pont. By repeated local steps, obvous flaws of the soluton were supposed to be overcome and the general soluton qualty enhanced. Because local steps only change small parts of the solutons, many propertes of the ntal soluton can be conserved. Tradtonal local search operators could not be expected to provde reasonable means for the mprovement of shft plans. The good experence wth the levellng algorthm of Chapter 4 was the reason for optng for a soluton by a CP-based relax-and-optmse approach. Clearly, constrant programmng s the method of choce for representng the complex constrants of the shft plannng problem (5.1)-(5.25). Large neghbourhood search gves a framework for the relaxaton and reoptmsaton of parts of a gven soluton, usng a restrcted branch-and-bound scheme. In the followng, we wll frst develop a constrant programmng model for the shft plannng problem descrbed above. Ths model s not restrcted to the local search context, but some desgn decsons make t partcularly approprate for the reoptmsaton settng. As n Chapter 4, we use an nserton-based model whch allows for an effcent propagaton of start tmes [Caseau and Laburthe, 1999] and s flexble n ncorporatng further constrants whch may come up n the future [Campbell and Savelsbergh, 2004]. For performance reasons, we wll accept a somewhat lower degree of consstency wth regard to the determnaton of nserton postons. Effectvely, a full evaluaton would mean that some of the consstency tests would have to trgger on many events. Before explanng the domans and consstency tests, we wll descrbe some general deas wth regard to the creaton of shfts and the handlng of unassgned tasks Shft Creaton Our goal s to fnd a set S of shfts coverng the tasks I at mnmum costs. In order to represent the complex constrants of task-level shft plannng, we wll use a constrant programmng model. As n Chapter 4, dfferent domans and consstency tests wll pertan to the basc enttes. As an example, we wll use a start tme doman for each task. Smlarly, we need domans and consstency tests for the shfts. As an example, we wll represent vald start tmes of break tasks as well as qulafcaton profles of shfts by approprate doman varables. Such domans and consstency tests cannot be generated dynamcally, but must be created beforehand. For the work tasks, ths does not mpose any problems snce the tasks are part of the nput data. In contrast, the set of shfts s part of the decson varables of the problem, and the composton of a good set of shfts s not obvous. We therefore have to create domans and consstency tests for a set of shfts whch s not known n advance. As a remedy, we wll create so-called shft templates. These templates should be chosen such that any possbly optmal soluton can be represented by the related domans and consstency tests. We therefore need upper bound approxmatons on the number of requred shfts of dfferent types. For the calculated shft numbers, we then domans and consstency tests. Clearly, we can leave shft templates empty, meanng that such shfts are not part of the fnal soluton. 85

102 5. An Improvement Algorthm for Complex Shft Plannng The startng soluton for the mprovement procedure clearly gves an ndcaton for creatng a sutable set of shft templates, but we wll generally requre addtonal shfts of other types. We wll thus only make use of the set of tasks for determnng an upper bound on the number of requred shfts. Snce there s no obvous way to determne whch combnatons of tasks wll be covered by the same shfts, we wll take the worst-cast approxmaton of coverng each task by a separate shft. In a frst approach, we could create one set of templates for each shft type realsaton. Many constrants effectvely relate to the shft type realsaton. As an example, ths would fx the shft start and end tmes and defne ntal start tme domans for the break tasks. Nevertheless, the approach has some dsadvantages. Frst, the upper bound approxmaton for the number of requred shft templates wll be poor: For each task, we would have to create a shft template for each shft type/day combnaton coverng, resultng n a huge number of shft templates. Second, the consequences for the logc of a soluton algorthm are unfavourable. In practce, shfts can often be shortened or prolonged wthn the set of gven shft types wthout affectng key fgures lke the number of breaks. If now the shft type s fxed for each template, the use of longer or shorter shft types requres a reattrbuton of all tasks to another shft template. Instead of fxng shft types, we frst only settle the day N s = n s on whch a shft template s starts and leave ts actual shft type open. Ths means that the start tme domans of orgn, destnaton and break tasks are ntalsed to rather general values. As an example, the start tme doman of an orgn task ncorporates all start tmes of the vald shft types for the template. Addtonally, the ntal break start tme domans wll contan all possble start tmes for any of the possble shft types. Ths means that we have to adapt the set of possble break tmes as soon as the shft type s known. Clearly, ths can be carred out by a consstency test. Smlarly, we wll need consstency tests to ensure possble break buffer tmes. Snce the consstency tests for a shft template cannot change dynamcally, we must choose the set of possble shft types such that the basc nformaton on breaks (break duratons, buffer tmes) s fxed for a template. As can be easly observed, all of ths nformaton relates to the set of break rules of the shft type. Consequently, we wll fx the set of break rules for each shft template,.e. a gven shft template can be fxed to any shft type k on day n s wth the same set of break rules. To formalse ths dea, we ntroduce the noton of break rule days BRD. A break rule day brd BRD s defned as a par brd := (n brd, BR brd ) of a reference day n brd and a possbly empty set BR brd of break rules such that each break rule type (early, man, late break) occurs at most once n the set. We furthermore defne a set K brd of all shft types whch are covered by a break rule day brd: K brd := {k K n brd N k {br eb k, brmb k, brlb k } = BR brd} We defne the earlest start tme st brd for a break rule day brd as the mnmum start tme over ts shft type realsatons (st brd := mn k Kbrd st knbrd ) and the latest end tme et brd as the maxmum over the end tmes (et brd := max k Kbrd et knbrd ). Each shft template s wll have a fxed break rule day brd s (and therefore also a fxed day N s = n brd ) whle ts shft type K s wll be determned n the course of the algorthm. Wth these consderatons and defntons, an easy temporal checkng of tasks can be performed: A task may be covered by a shft s of break rule day brd := brd s f st brd b mn(st brd + d o,, a ) + l + d, d et brd where d o, and d, d are travel tmes from and to the depot. Note that wth ths defnton, we neglect that there may be breaks preventng the task from beng covered. To avod checkng all shft types of a break rule day, we wll neglect the effect of breaks. 86

103 5.5. Unassgned Task Handlng Two cases have to be dstngushed. If the crew sze cs s 1, the scenaro wll not comprse subcrews, and no shft crews must be created. We can therefore determne the number cnt brd of shfts for each break rule day brd as cnt brd := { I st brd + d o, b max(st brd, a ) + l + d, d et brd } If there are splt tasks n the nput data (P = ), splt parts whch have vanshng lengths l wll also be counted n ths term. Whle cnt brd remans a vald upper bound on the shfts to be created, we may seek for more exact approxmatons for splt tasks, e.g. takng mnmum splt part lengths nto account. But snce mnmum lengths are only obeyed f splt parts are placed n dfferent shfts, we wll content ourselves wth the above defnton. If the crew sze cs s greater than 1, we must create blocks of cs shfts. Whle most of the tasks wll generally be grouped n subcrews n a such scenaro, there may be sngleton tasks whch are not attrbuted to subcrews. Clearly, we do not need a whole shft crew to cover sngleton tasks. We therefore count the number of shfts whch are needed for non-crew tasks separately: cnt sngle brd := { I / B B B st brd + d o, b max(st brd, a ) + l + d, d et brd } When checkng f a subcrew mght ft nto a break rule day, we must check f all tasks of the subcrew can be placed n the break rule day,.e. we use the mnmum over all latest start tmes and the maxmum over all earlest end tmes for temporal checks wth the break rule day. Thus, the number cnt crew brd of shft crews to be created for subcrew tasks s cnt crew brd := {B B st brd mn B (b d o,) max B (max(st brd, a ) + l + d, d) et brd } In total, we wll create cnt sngle brd + cnt crew brd cs shft crews for a break rule day brd, each consstng of cs shft templates. Because each of the shfts can fnally be fxed to dfferent shft types, the break rule day approach creates consderably less shfts than fxed shft type method. The more shft types requre the same sets of break, the clearer the savngs wll be. We wll never create more templates than n the fxed shft type approach. If many break rule combnatons are used n the shft types, memory requrements may stll be hgh. If ths s the case, we can heurstcally ntroduce upper bounds on the number of created templates per day or per break rule day. Note that even f shft templates are used, only those shfts whch fnally comprse work tasks wll be part of the output of the algorthm. Nevertheless, we wll let S denote the set of all shft templates Unassgned Task Handlng As descrbed n Secton 5.3, t may not be possble to assgn all tasks to shfts. If a task remans unassgned (S = NIL), a penalty of M UT al() proportonal to ts actual length s mposed. Allowng tasks not to be assgned to any shft can be cumbersome n algorthmc handlng. We wll therefore create a dummy shft s = s dummy for each task whch can be left unassgned. 87

104 5. An Improvement Algorthm for Complex Shft Plannng If the task cannot be covered by a regular shft, ths wll be represented by the assgnment to ts dummy shft: S := s dummy. Note that f a task whch can be covered s left unassgned n the ntal soluton, ths must be regarded a flaw the constructon algorthm. Furthermore, f splttng s used, t may be possble to assgn larger portons of a splt task than n the startng soluton. In general, we can assume that only a small amount of the tasks s unassgned n the ntal soluton. We frst treat the case of non-splt tasks. For each such task, a dummy shft s dummy s created. Furthermore, we create a specal dummy shft type k dummy l for each unassgned task length l and assgn dummy shfts to the correspondng shft type: K s dummy = k dummy l. The cost of a dummy shft type k dummy l s gven by c k dummy l = M UT l, reflectng the unassgned task penaltes. The start and end tmes of dummy shft types are set to lmts whch guarantee that every task can be placed nto a shft of the shft type,.e. they only have one realsaton and wll generally be longer than 24 hours. For splt parts, we cannot account unassgned task penaltes va dummy shft types snce lengths are not fxed. We wll defne one dummy shft per splt task, meanng that logcally unassgned splt parts of the same splt task P are placed n the same dummy shft s dummy P. To avod penaltes on the shft level, these dummy shfts have a fxed shft type k dummy 0 of costs = 0. Penaltes for unassgned splt parts wll thus be accounted separately. c k dummy 0 A specal break rule day brd dummy BRD s defned to cover all dummy shft types. All dummy shfts are assgned to ths break rule day: brd s dummy := brd dummy. Dummy shfts wll not be regarded parts of the shft set S because they requre a dedcated handlng Constrant Model We now come to the descrpton of detals of the constrant model. After showng whch doman varables are used, we wll descrbe the consstency tests whch are used to propagate nformaton on tasks, shfts, qualfcatons and so on. The man novelty of the model les n the temporal propagaton. In comparson to the model of Chapter 4, we not only have to ncorporate shft types and breaks, but we must also devse rules whch cover regular work tasks as well as splt parts Domans We start by descrbng the domans used n the CP model. The possble start tmes of each task are mantaned n a doman δ start whch s represented by a range δ start = [α, β ]. For work tasks I, the start tme doman s naturally ntalsed to [a, b ]. The ntal tme wndows of orgn, destnaton and break tasks are ntalsed to the extent of the break rule day of the shft: δ start o s = δ start d s = δ start eb s = δ start mb s = δ start lb s := [st brds, et brds ] The length of a splt part s the consequence of the values of two adjacent temporal varables δ start and δssucc start of and ts splt task successor ssucc, respectvely. To provde control over the length of a splt part, we ntroduce a splt part length doman δ sl. Agan, possble lengths can be represented as a range whch s ntalsed to δ start j := [0, l P ] for each part j of a splt task P P. Note that several parts of a splt task can be superposed, representng only one effectve splt part. Only the last part of such a task chan wll then have a 88

105 Name Mathematcal varable CP doman start tme T δ start splt task part length δ sl runnng predecessor pred π runnng successor succ σ shft assgnment S δ shft predecessor task pred δ pred nserted flag δ ns 5.6. Constrant Model Table 5.2.: Overvew of task-related varables n the CP model. postve length. The last splt part m of a splt task P wll therefore always have a postve length, and ts length varable s ntalsed to δ start m := [msl P, l P ] As an nserton-based model s used, we wll keep track of current predecessors and successors n a varable π for each task I I b I d and the current successor σ for each task I I b I o. π and σ are not constrant varables n the proper sense as they contan sngle values whch are adapted wth nsertons (see also Secton 4.5). Wth a gven ntal shft plan, the ntalsaton of predecessor and successor varables s straghtforward. For empty shfts, orgn, break and destnaton task buld a chan of predecessor and successor tasks. For each task I I b I o I d, the set of shfts to whch t may be assgned s mantaned n a doman δ shft. Whle for the startng soluton the shft assgnment s gven, we wll show n Secton how the set of shfts s rentalsed wthn local search. Clearly, the shft doman s fxed for orgn, destnaton and break tasks. Addtonally to the shft assgnment, we keep track of potental predecessor tasks n a doman. Whle the current predecessor task π denotes the unque current predecessor after all nsertons made so far, the predecessor varable δ pred specfes all tasks after whch may be nserted n a shft (f s not yet nserted) or all tasks whch may stll be nserted n front of (f was already nserted). The predecessor domans wll be rentalsed for each local step. The boolean doman δ ns wll ndcate f s nserted nto a shft. Orgn, destnaton and break tasks are always nserted (δ ns := {true}) whle domans of work tasks are ntalsed to δ ns := {false, true} when ther assgnment s relaxed n a local step. All task-related domans wth ther equvalents n the mathematcal model are gven n Table 5.2. Turnng to shft-related domans, δs K wll specfy the shft types whch may be attrbuted to a shft s; note that the day s fxed for each shft template. Intally, all potental shft types of brd s are part of the shft type doman: δ pred δ K s := K brds The shft type of dummy shfts s dummy s always fxed to the dummy shft type whch corresponds to s length: := {k dummy l } δ K s dummy Snce shft costs only arse for shfts contanng work tasks I, we keep track of used shft templates s va boolean domans δs used. As shft templates are ntally empty, we ntalse δs used := {false, true}. As soon as a work task I s nserted nto the shft, the value false wll be removed from the doman. 89

106 5. An Improvement Algorthm for Complex Shft Plannng Name Mathematcal varable CP doman shft type K s δs K shft used flag δs used qualfcatons Q s δs Q qualfcaton penalty qp(q s ) 1 δs qp Table 5.3.: Overvew of shft-related varables n the CP model. a. Non-splt task b. Splt task c. Travel tme Fgure 5.6.: Temporal propagaton for splt and non-splt tasks and for travel tmes. The qualfcaton doman δs Q descrbes the set of qualfcaton requrements for each shft s S. Snce CP domans shrnk monotoncally and qualfcaton requrements augment wth each task nserton, δs Q wll represent the nverse of the qualfcaton requrements,.e. Q \ Q s. Snce empty shfts do not have qualfcaton requrements, δs Q s ntalsed to the set Q of all qualfcatons. A further doman δs qp s ntroduced for the calculaton of qualfcaton penaltes accordng to objectve functon term (5.2). The doman s represented as a range between the actual penalty (qp(q s ) 1 ) and the maxmum value qp 1 mn wth qp mn defned as n Secton 5.3. Because qp( ) = 1, we ntalse δs qp to δs qp = [1, qp 1 mn ] for empty shfts. Addtonally to calculatng actual qualfcaton penaltes, δs qp wll be used to cause a search falure when a task nserton results ncompatble qualfcatons n a shft. The decson s then automatcally revsed (cf. Secton 5.6.3). All shft-related domans are summarsed n Table Shft Temporal Constrants Predecessor and successor relatonshps defne temporal relatons between subsequent tasks n shfts. We wll now defne rules for updatng start tme wndows upon changes of the temporal nformaton of other tasks. We wll use push-forward/push-backward propagaton rules whch allow for the update of tme wndows by a lnear forward pass for earlest start tmes and a lnear backward pass for latest start tmes. Checks for possble nserton postons can then be done n constant tme, see also Secton Due to splt parts, the temporal propagaton wll be more complcated than n the CP model for the workload levellng problem. Accordng to Fg. 5.6, the followng cases must be dstngushed: The tme wndow of a non-splt task s updated; such an update s typcally due to a task nserton (orange task n Fg. 5.6a). We must propagate ths nformaton forward to the successor task σ and backward to the predecessor task π n the shft. 90

107 5.6. Constrant Model The tme wndow of a splt part s restrcted (Fg. 5.6b). Note that the tme wndow δ start of a splt part denotes the start tme wndow of one task (orange task n lower shft) as well as the end tme of ts splt part predecessor spred (orange task n upper shft). Consequently, we must propagate the temporal update backward to the predecessor π of task and forward to the successor σ spred of ts splt part predecessor spred. A further constrant between the start and end tme wndows of a splt part wll guarantee that mnmum splt part lengths are observed (see below). Upon each travel tme change, ths means that the mnmum dstance between two subsequent task may have ncreased (Fg. 5.6c). Ths must be propagated forward from the frst to the second task and backward from the second to the frst. Snce breaks take place at the locaton of ther predecessor work task, we must pay specal attenton to tasks after breaks whose travel tmes can change when a task s nserted before the break. We wll defne buldng blocks for start tme propagaton n these dfferent cases. The forward propagaton rule FWDPROP( 1, 2 ) descrbes the earlest start tme propagaton from a task 1 (non-splt task or splt part) to the earlest start tme of 2. Symmetrcally, BWDPROP( 1, 2 ) wll propagate changes of the latest start tme of task 2 to the latest end tme of task 1 (agan, 1 may be splt part or not). As mentoned before, we must be careful wth the nteracton of breaks and travel tmes. If the drect predecessor of a break task s another break task, the determnaton of travel tmes can mean a recourse to a work task over several breaks. When a task s nserted nto a shft, not only ts own travel tme s changed, but also the travel tme of the frst successor task whch s not a break. For travel tme propagaton, we defne a frst work task predecessor wpred() and a frst work task successor wsucc() as { π f π wpred() := I I o wpred(π ) f π I b { σ f wsucc() := I I d wsucc(σ ) f I b Furthermore, we have to take nto account that the mnmum dstance between subsequent tasks 1 and 2 can be relaxed by an overlap whch s lmted by mn(ol max 1, ol max 2 ). The forward propagaton FWDPROP( 1, 2 ) for tasks 1 I I b I o and 2 I I b I d s thus gven by [ FWDPROP( 1, 2 ) : P 1 = NIL P 2 = NIL P 1 P 2 = t := α1 + l 1 + d wpred(2 ), 2 mn(ol max 1, ol max ] 2 ) > α 2 = α 2 := t f P 1 = NIL t := α ssucc1 + d wpred(2 ), 2 mn(ol max 1, ol max 2 ) > α 2 = α 2 := t f P 1 NIL The backward propagaton BWDPROP( 1, 2 ) of latest end tmes s defned symmetrcally: [ BWDPROP( 1, 2 ) : P 1 = NIL P 2 = NIL P 1 P 2 = t := β2 d wpred(2 ), 2 l 1 + mn(ol max 1, ol max ] 2 ) < β 1 = β 1 := t f P 1 = NIL t := β 2 d wpred(2 ), 2 + mn(ol max 1, ol max 2 ) < β ssucc1 = β ssucc1 := t f P 1 NIL Some comments are n place to understand these buldng blocks. As a frst observaton, both FWDPROP( 1, 2 ) and BWDPROP( 1, 2 ) wll ental updates only f not both 1 and 2 are splt parts of the same splt task P 1 = P 2. Otherwse, 1 and 2 are subsequent splt parts of the same splt task, and other consstency tests wll apply. The propagaton rules descrbe how temporal nformaton s transferred between the end of 1 and the start of 2. Whle the tme wndow δ start 2 always descrbes the doman of start tmes for 91

108 5. An Improvement Algorthm for Complex Shft Plannng 2, we have to make a dstncton for the determnaton of 1 s end tme. If 1 s a non-splt task (P = NIL), the range of end tmes can be calculated by addng the length l 1 to the start tme wndow δ start 1 = [α 1, β 1 ]. If however 1 s a splt part (P 1 NIL), the range of end tmes s retreved from δssucc start 1. Note also that a travel tme d wpred(2 ), 2 s used n the propagaton rules. Effectvely, 1 may be a break task, meanng that t nherts the locaton of the frst work task predecessor. If 2 s a break task, d wpred(2 ), 2 s 0 by defnton. We can now come to the descrpton of consstency tests for the dfferent settngs of Fg Non-splt task temporal relaton For each non-splt task I I b I o I d (P = NIL), start tmes are updated as follows: / I o, π NIL = BWDPROP(π, ) / I d, σ NIL = FWDPROP(, σ ) Ths consstency test wll be performed each tme the start tme doman δ start, the predecessor π or the successor σ change. For each, the tme complexty s n O(1). Splt part temporal relaton For each splt part I (P NIL), start tmes are adapted by π NIL = BWDPROP(π, ) spred NIL, σ spred NIL = FWDPROP(spred, σ spred ) Latest start tme are propagated backward as for non-splt tasks. Forward propagaton however affects the splt part predecessor and ts shft successor f s not the frst part of ts splt task. The rule trggers upon reductons of δ start as well as on changes of s predecessor π and spred s successor σ spred, executng n O(1) runtme for each. When a task s nserted, the temporal nformaton between and ts predecessor and successor s already completely propagated by the consstency tests descrbed before. If breaks are nvolved, we addtonally need the followng update rule. Travel tme propagaton For each break task b I b, surroundng start tmes are adapted by π b NIL = { FWDPROP(wpred( b ), wsucc( b )) BWDPROP(wpred( b ), wsucc( b )) Ths test clearly trggers on changes of π b. As for the tests above, the tme complexty s n O(1). The temporal propagaton rules descrbed so far reflect the shft temporal constrants (5.8) Shft Constrants In the course of reoptmsaton, task nsertons wll ental restrctons of the temporal domans δ start o and δ start of orgn and destnaton tasks, respectvely. Clearly, ths also restrcts the set of s d s vald shft types whch s mantaned n domans δs K. Vce versa, earlest and latest start tmes of orgn and destnaton tasks can be updated usng the set of vald shft types. 92

109 5.6. Constrant Model Shft types For a shft s S, the set δs K of vald shft types and the shft boundares gven by δ start o and δ start wll be updated as follows: s d s K vald s := {k δs K α o s st kns β o s α d s et kns β d s } = δs K := Ks vald mn st kns > α o k Ks vald s = α o s := mn st kns k Ks vald max st kns < β o k Ks vald s = β o s := max st kns k Ks vald mn et kns > α k Ks vald d s = α d s := mn et kns k Ks vald max et kns < β d s = β d s := max k K vald s The test s trggered upon changes of δ K s, δ start o s k K vald s et kns, δ start. Its complexty s n O( K ). Because shft templates do not have fxed shft types, the start tme domans δ start of break b tasks b I b were ntalsed to rather unspecfc values (cf. Secton 5.6.1). In the course of the algorthm, break start tme wndows wll be adapted wth further nformaton on vald shft types becomng avalable. In the opposte drecton, task nsertons around breaks generally cause changes to ther start tme domans whch can also affect vald shft types. As break rules defne break wndows wth reference to the shft start, the followng break wndow constrants nvolve the start tme varables of orgn and break tasks. Break wndows Let s S be a shft of break rule day brd s. For each break rule br BR brds, the followng updates are appled to the start tme wndows of the orgn task o s and the break task b correspondng to br, usng the break tme wndow [a br, b br ] gven by br relatve to the shft start: α o s + a br > α b = α b := α o s + a br β o s + b br < β b = β b := β o s + b br α b b br > α o s = α o s := α b b br β b a br < β o s = β o s := β b a br The update trggers on changes of δ start o and δ start, usually caused by some task nserton. s b The test runs n constant tme for each break. Furthermore, mnmum buffer tmes may be defned between early and man or man and late break. These can be formulated as consstency tests between the start tme domans of the nvolved break tasks. The man dfference between break wndow and break buffer constrants s that the former lmts mnmum and maxmum dstances whle the latter only defnes mnmum buffer tmes. Break buffers Let s S be a shft wth early, man and late break,.e. d s BR brds = {brs eb, brs mb, br lb and let bb eb br and bblb br be the early and late break buffer tmes defned by the man break rule br := brs mb. Then the followng reducton rules apply to the start tme domans δ start = eb s [α eb, β s eb ], δstart = [α s mb s mb, β s mb] and δ start = [α s lb s lb s, β lb s ] of the break tasks: α eb s β mb s α mb s β lb s + l eb s + bbeb br > α mb s bb eb br l eb s + l mb s bb lb br l mb s < β eb s + bb lb br > α lb s < β mb s = α mb s = β eb s = α lb s = β mb s s } := α eb s := β mb s := α mb s := β lb s + l eb s + bbeb br bb eb br l eb s + l mb s + bb lb br bb lb br l mb s 93

110 5. An Improvement Algorthm for Complex Shft Plannng If we only have an early or a late break, only one par of reducton rules s used. The test s trggered upon changes of the nvolved start tme domans and entals an O(1) runtme for each shft. Ths consstency test mplements the break buffer constrants (5.12) of the mathematcal model. As descrbed above, the qualfcaton penaltes are calculated va domans δs qp. Ths varable wll be updated upon each change of the nverse qualfcaton profle δs qp for each shft s. Qualfcaton combnatons Let s S be a shft and qp mn as defned n Secton 5.3. The qualfcaton penalty doman δs qp s recalculated from δs Q as follows: { δs qp δ qp s \], qp(q \ δs Q ) := 1 [ f qp(q \ δs Q ) > 0 and Q \ δs Q q max δs qp \], qp 1 mn + 1[ else Wth an approprate representaton of qualfcaton sets, the test executes n constant runtme. The rule bascally calculates qualfcaton penaltes as defned by the objectve functon term (5.2). If the shft s qualfcaton profle Q \ δ Q s contans ncompatble qualfcatons (.e. qp(q \ δs Q ) = 0) or f the sze of the qualfcaton profle exceeds the lmt q max, the new mnmum of δs qp s set to qp Because the maxmum of the qualfcaton penalty doman δqp s was ntalsed mn to qp 1 mn (cf. Secton 5.6.1), δqp s wll then become empty. Consequently, f a task nserton entals combnng ncompatble qualfcatons or exceedng the lmt for the qualfcaton profle sze, the state of the constrant model becomes nvald. In constrant programmng, nvald assgnments are dscarded and ental backtrackng,.e. the nserton decson causng falure wll be revsed. The consstency test thus addtonally assures that constrants (5.22) and (5.23) are observed. Note that the propagaton of ncompatble qualfcatons and maxmal qualfcaton profle szes could be stronger by adaptng shft domans of unnserted tasks. However, ths would mean costly checks of potental qualfcaton profles. Furthermore, consstency tests trggerng on many events would have to be used. Because n practce, ncompatble qualfcatons and qualfcaton profle szes are not very lmtng, t was decded to use less costly a-posteror checks as descrbed above Crew Constrants Addtonally to the horzontal relatons between subsequent tasks n shfts, crews defne vertcal dependences between tasks n dfferent shfts. These can be effcently represented f crew tasks are sorted by length, cf. Secton 4.3. Addtonally to crew tasks, the breaks of a shft crew must be placed n parallel. In fact, temporal restrctons on crew tasks and breaks are equvalent f breaks have equal lengths and earlest start tmes, cf. to constrants (5.9) and (5.18) n the mathematcal model. But snce the shfts of a shft crew have equal shft types, ther break rules wll be dentcal. Ths means that ther lengths are n fact equal. Furthermore, snce break start tmes were ntalsed usng break rule days (cf. Secton 5.6.1), ther ntal start tmes also correspond. We can thus use the same consstency test for the mplementaton of constrants (5.9) and (5.18). Crew temporal relaton Let C = ( 1,..., m ) C {s 1,...,s n} H { } ( eb s 1,..., eb s n ), ( mb s 1,..., mb s n ), ( lb s 1,..., lb s n ) be a tuple of crew tasks or break tasks of crew shft, and let j, j+1 C be adjacent tasks n the sortng of C by decreasng lengths (l j l j+1 ). Then the followng doman reducton 94

111 5.6. Constrant Model rules apply for 1 j < n: α j + (a j+1 a j ) > α j+1 = α j+1 := α j + (a j+1 a j ) β j+1 (a j+1 a j ) < β j = β j := β j+1 (a j+1 a j ) α j (l j+1 l j ) + (a j+1 a j ) > α j+1 = α j+1 := α j (l j+1 l j ) + (a j+1 a j ) β j+1 + (l j+1 l j ) (a j+1 a j ) < β j = β j := β j+1 + (l j+1 l j ) (a j+1 a j ) If a shft crew does not contan a full set of early, man and late breaks, the update s only performed for the breaks whch are defned by the break rules. The test s performed upon each change of the nvolved varables δ start j and δ start j+1 and has O(1) tme complexty for each par (j, j + 1). Addtonally to the temporal constrants, there are further restrctons on crew tasks. The followng test mplements the above constrant (5.15). Dfferent shfts The tasks of each crew C C must be placed n dfferent shfts. Ths s enforced by an alldfferent({δ shft C}) global constrant of complexty O( C 2 S 2 ) for a whole branch of the search [Régn, 1994] [Régn, 2000]. Furthermore, all tasks of a subcrew B B must be assgned to the same shft crew H H (constrant 5.16). Ths s assured by the followng consstency test: Subcrew attrbuton Let B B be a subcrew and S(B) := {s S B : δ shft = {s}} the set of regular shfts to whch tasks of B are already assgned. If s S(B), we can enforce the assgnment of all tasks B to the same shft crew by δ shft > 1 = δ shft := δ shft H s It should be noted that the set S(B) wll not nclude dummy shfts s dummy. Because the consstency test s performed each tme the shft doman of a subcrew task s bound to a value, the set S(B) wll only contan shfts of the same shft crew. We can therefore use an arbtrary shft s to determne ths shft crew H s and prevent all other tasks of the subcrew to be assgned to shfts whch are not part of H s. Wth an approprate mplementaton of set operatons, the test consumes ( B ) runtme for each subcrew B B. By defnton, all shfts of a shft crew have dentcal break rule days. But we must also ensure that all crew shfts fnally have same shft types (constrant (5.17)). We may update all shft type domans each tme one of them changes, but ths would amount to costly set operatons. Instead, we note that a shft type k K can be unquely determned from gven start and end tmes st = st kn and et = et kn for a fxed day n and ts set of break rules. Snce the set of break rules of a shft template s follows from ts break rule day brd s, we can acheve full consstency of shft types by synchronsaton of the start tme domans δ start o s and δ start d s. 95

112 5. An Improvement Algorthm for Complex Shft Plannng Shft start tmes For each shft crew H H, the start tme doman δ start o for each s H are s updated as follows: max s H α o s mn s H β o s The test trggers on changes of δ start o. s > α o s = α o s := max s H α o s < β o s = β o s := mn s H β o s Shft end tmes For a shft crew H H and each shft s H, we update the temporal domans of the destnaton tasks d s as follows: max s H α d s mn s H β d s > α d s = α d s := max s H α d s < β d s = β d s := mn s H β d s The rule trggers on changes of the δ start. Both tests have O( H ) runtme complexty. d s In conjuncton wth the shft type consstency test descrbed above, these tests ensure that the domans δs K of all shfts n H correspond. For shft cost accountng, shft templates are marked as used va a doman δs used as soon as a task s nserted. In crew handlng, we must consder that a shft crew can only be used as a unt. We wll therefore mark all crew shfts as used as soon as a task s nserted nto one of them. Shft crew accountng Let H H be a shft crew. The followng update rule s used to account for full shft crews: s H : δ used s = {true} = delta used s := {true} s H Ths update s executed each tme one of the flag varables δs used O( H ) runtme. s set to {true}, consumng Splt Task Constrants Splt parts requre specal attenton snce ther lengths are varable. Several splt parts can be placed one behnd the other n a shft, representng only one effectve splt part. If we do not mpose further restrctons on the successve placement, several states of the model wll represent the same logcal stuaton snce redundant splt parts can be pled up n dfferent ways. Such symmetres should be avoded snce they nflate the search space. We wll therefore restrct the successon of splt parts to the end of a splt task P = ( 1,..., m ),.e. f two parts j and j+1 are drect successors n a shft and no further task wll be placed between them, we enforce that all tasks j wth j > succeed. Vce versa, f two parts cannot be placed one behnd the other, none of the tasks j wth j < wll be placed as successors n shfts. Shft successon of splt parts nteracts wth ther lengths: If we know that two parts are placed one behnd the other, the frst part s restrcted to a length of 0. If the tasks cannot succeed, the mnmum splt length msl P has to be obeyed. These two aspects are represented by the followng consstency test, trggerng on changes of the predecessor doman δ pred : 96

113 5.6. Constrant Model Splt part successon Let P = { 1,..., m } a splt task and P, 1, one of ts splt parts. The followng update rules apply: δ pred = {spred [ } = ] ssucc pseudo P δssucc pred := {} δspred sl := δspred sl \]0, [ spred [ / δ pred = ] spred spred NIL δ pred spred := δ pred spred \ {spred spred } δspred sl := δspred sl \], msl P [ The test s executed upon changes of δ pred and has constant runtme. If the predecessor domans δ pred spred or δssucc pred are updated by the splt part successon rule, ths wll cause the executon of the same consstency test for spred or ssucc, respectvely. Therefore, decsons for shft successons are propagated backward whle decsons for dfferent shfts wll be propagated toward the end of a splt task. Symmetrcally to the splt part successon rule, a further test s devsed whch trggers on changes of the length doman δ sl : If the mnmum n ths doman s greater than 0, we know that we cannot superpose wth ts splt successor ssucc n the same shft. Vce versa, f the maxmum length falls below msl P, ssucc must be placed behnd. Splt part length Let P = { 1,..., m } P be a splt task and P, m, one of ts splt parts. Usng the values δ sl = [sl mn, sl max } of s length doman, the followng updates are performed: sl mn > 0 = δssucc pred := δssucc pred \ {} < msl P = δssucc pred := {} sl max The test s trggered upon changes of δ sl and has O(1) runtme. The splt part length s synchronsed wth the temporal domans: Splt part length synchronsaton For a splt part I, the followng reducton rules synchronse the splt part length δ sl = [sl mn, sl max ] wth the temporal domans δ start and δssucc start of and ts splt part successor ssucc : α + sl mn > α ssucc = α ssucc := α + sl mn β + sl max < β ssucc = β ssucc := β + sl max α ssucc sl max > α = α := α ssucc sl max β ssucc sl mn < β = β := β ssucc sl mn α ssucc β > sl mn = sl mn := α ssucc β β ssucc α < sl max = sl max := β ssucc α The consstency test trggers changes of δ start, δssucc start and δ sl and has O(1) complexty. The combnaton of the splt part successon test and the length synchronsaton rule guarantees that mnmum lengths accordng to constrant (5.20) are observed. Addtonally to synchronsng splt part lengths, we must guarantee that the lengths of all splt parts sum up to the total length l P of the splt task P = ( 1,..., m ). Ths s realsed by a temporal constrant between the start tme domans of the frst and the pseudo splt part: 97

114 5. An Improvement Algorthm for Complex Shft Plannng Splt task length Let P = ( 1,..., m ) P be a splt task, 1 ts frst splt part and pseudo P the delmtng pseudo splt part. The followng test expresses that P must observe a total length of l P : α 1 + l P > α pseudo = α P pseudo := α 1 + l P P β 1 + l P < β pseudo = β P pseudo := β 1 + l P P α pseudo P β pseudo P The test trggers on changes of δ start 1 l P > α 1 = α 1 := α pseudo P l P < β 1 = β 1 := β pseudo P l P l P and δ start and has O(1) runtme complexty. pseudo P Inserton Poston Constrants Wthn large neghbourhood search, we wll repeatedly relax the nserton decsons for a set I rel I of tasks. For each I rel, the possble nserton postons Φ() wll be determned. Let Φ := Irel Φ() be the set of all nserton postons for the relaxed tasks. The complexty of the followng consstency tests wll be gven wth reference to the fgures I rel and Φ. Secton wll show how the sets Φ() are determned. In the constrant model, nserton postons are mantaned on the task level (δ pred ) and as shfts (δ shft ). Dfferent constrants apply to the two levels both of whch are coordnated by the followng rule. Shft-predecessor consstency For each task I, the predecessor and shft domans δ pred and δ shft are synchronsed as follows: δ pred δ shft := δ pred := {s δ shft \ {j δ pred δ shft j = {s} s / δ shft j δ pred : δ ns j } = {true} δ shft j = {s}} From δ pred, we remove all nserted tasks whch are assgned to shfts whch are not vald cannot be used to cover f there s none of ts tasks. Note that the rule could be made somewhat stronger by deletng nserted δ shft j =, but ths would nvolve more costly set operatons. for. Furthermore, a shft n δ shft s part of δ pred predecessors j wth δ shft Wth careful mplementaton, the test has O( Φ ) tme complexty. A central part of the propagaton logc s the decson to nsert a task nto a shft. The shft attrbuton δ shft of a task does not unquely determne ts poston n the shft. We must therefore resolve the successon relatonshp va the predecessor doman δ pred. The set of predecessors contans tasks whch are already nserted as well as unnserted tasks. The exact nserton poston of s unquely determned when δ pred contans only one nserted task. Task nserton Let I be a work task and Ψ ns () := { δ pred δ ns = {true}} the set of nserted possble predecessors of. For the nserton of nto a shft, we perform 98

115 5.6. Constrant Model the followng update: δ ns {true} Ψ ns () = { pred } succ := σ pred δ shft = {s} = pred δ pred succ := δpred succ \ { δ pred succ δ ns = {true}} δ pred := δ pred \ { δ pred pred δ ns = {true}} δ pred := δ pred \ {} I I b I o I d, succ, δ ns = {true}, δ pred > 1 π := pred, σ := succ, π succ :=, σ pred := δ shft := {s} δ ns := δ ns \ {false} δs used := δs used \ {false} δs Q := δs Q \ Q The test s trggers upon each a change of δ pred. The cost of the update s n O( I rel + Φ + Q ). The set Ψ ns () of nserted predecessors of wll generally contan at least one task because otherwse, δ pred would only contan tasks whch are not nserted. But we cannot expect that can be nserted after the nserton of one of ts predecessors, say, snce then, δ pred would have to contan at least one of the nserted predecessors of. Consequently Ψ ns () = means that we cannot nsert at all. The nserton rule performs a number of updates. It sets predecessor domans, adapts runnng predecessors and successors, sets the shft and nserted domans of the task as well as the shft s used doman and updates the qualfcaton doman. Note that δs Q contans the nverse of a shft s actual qualfcaton profle,.e. all qualfcatons whch are not requred by the shft. In order to exclude all other nserton postons, the test traverses all nserted tasks wth unbound predecessor varables whch are not equal to the actual successor succ. To make ths update more effcent, the set { I I b I o I d δ pred > 1} can be mantaned n a global constrant varable. Each tme the predecessor doman δ pred of a task becomes bound to a value, the global doman wll be updated by a smple consstency test. Some comments on the constrant model are n place. Frst of all, the model uses an nsertonbased logc,.e. tasks are nserted one by one nto an emergng shft plan. The current state of the nsertons s mantaned n the current predecessor and successor varables π and σ. The nserton test descrbed before s responsble for settng these varables, trggerng the temporal propagaton wthn shfts. The effcent propagaton of tme wndows by forward/backward passes s a man advantage of the model. Note that whle the predecessor/successor varables are not constrant varables n the proper sense, they preserve monotoncty of temporal propagaton. Because the trangle nequalty s obeyed, the length and travel tme of a newly nserted task sums up to a duraton whch s at least as long as the temporal dstances accounted before nserton. Possble nserton postons for tasks are mantaned n predecessor and shft domans. In contrast to the model for the workload levellng problem, there are no ntermedate checks for temporal valdty of nserton postons. Instead, the search strategy wll evaluate whch of the nserton postons are vald wth regard to temporal and other constrants (lke compatblty of qualfcatons). Ths lower degree of consstency was accepted because refned models requre more costly consstency tests trggerng on many events. Prelmnary tests showed that ths does not generally pay off for the shft plannng problem. An explanaton can be found by an analyss of possble effects of predecessor doman reductons. The best we can expect from a deleton of nserton postons s the nserton of further tasks. But ths wll only happen f a sngle nserted task remans n a predecessor doman. However, a task can generally be nserted n many places, ncludng at least one empty shft template. As a 99

116 5. An Improvement Algorthm for Complex Shft Plannng consequence, we cannot expect substantal effects from addtonal consstency tests, and runtme seems to be better nvested n the addtonal cost of a systematc search space exploraton Avodng Symmetry Especally when plannng scenaros comprse crews, there are often several tasks of dentcal characterstcs. Every permutaton of these tasks then results n an somorphc soluton. Such symmetres should be avoded to prevent the search from evaluatng equvalent solutons (see also Secton 4.5). These symmetres do not affect splt parts whch are varable n length. We therefore buld groups of non-splt tasks havng dentcal tme wndows, lengths, task crews and subcrews (or are non-crew tasks), locatons (.e. travel tmes to surroundng tasks), maxmum overlaps and qualfcaton profles. It should be clear that all tasks of each such group are somorphc. Partal orders are then mposed on the tasks of each group and all shfts. By a specal consstency test, the tasks of a group are restrcted to be assgned to shfts n ncreasng order, resolvng the aforementoned symmetry Objectve Functon Calculaton We can now specfy how the objectve functon value can be calculated from the constrant model. A gven state (schedule) Σ of the model wll represent a complete soluton f All tasks are assgned to shfts (possbly dummy shfts),.e. the domans δ shft are bound to sngle values for all I. The shft types of all used shfts are fxed,.e. δ used s = {true} δ K s = 1 Whle n smple cases, we can always fx the shft type domans to the cheapest vald shft type, shft number constrants ental nterdependences, requrng an adequate search procedure for the determnaton of an overall best soluton. The lengths of splt parts whch are assgned to ther dummy shft are fxed,.e. ther length doman δ sl s bound. Agan, there are nterdependences between decsons for dfferent tasks, and an easy fxng to the shortest possble lengths (avodng penaltes for unassgned task mnutes) s not possble. Note that the specfcaton of a full soluton does not requre the fxng of start tme varables, meanng that a search algorthm wll only have to fx the above domans. The objectve value z of a complete schedule Σ wll be the sum of fve components: δ start z(σ) := z SC (Σ) + z UT (Σ) + z QP (Σ) + z QR (Σ) + z SNR (Σ) 100

117 5.6. Constrant Model z SC s the shft cost component. Snce n the CP model, we use possbly empty shft templates, only used shfts are consdered,.e. shfts for whch δs used = {true}. In partal solutons, we can determne mnmum shft costs usng nformaton on vald shft types: z SC (Σ) := s S δs used ={true} mn k δ K s Va costs of dummy shft types, z SC (Σ) already contans unassgned task penaltes for nonsplt tasks (cf. Secton 5.5). Meanwhle, unassgned splt parts must be penalsed separately. Ther lengths are retreved from the domans δ sl whch s bound n a complete soluton. If sl mn s the mnmum length (complete soluton: effectve length) of a splt part (mnmum value of δ sl), the unassgned splt part penalty zut (Σ) of a schedule Σ s z UT (Σ) := M UT c k sl mn I:P NIL δ shft ={s dummy P } Penaltes for qualfcaton combnatons are summed up by z QR (Σ). As descrbed above, the ndvdual penaltes for the shfts are mantaned n domans δs qp. Snce empty shft templates account for penaltes of 1, a correcton term s used. We furthermore normalse qualfcaton penaltes by the sum of used shfts and the mnmum qualfcaton preference qp mn,.e. ( ) z QP (Σ) := w QP qp mn {s S δs used qp mn s {s S δs used = {true}} = {true}} where qp mn s s the mnmum value n the doman δs qp. The calculaton of penaltes for exceedng qualfcaton restrctons s straghtforward: z QR (Σ) := M QR max( {s S q qr / δs Q } m qr, 0) qr QR In ths term, only used shfts are consdered because only then Q \ δs Q possbly contans a qualfcaton q qr. Shft number restrctons mpose constrants on the composton of a shft plan. Mnmum restrctons can always be observed by addng empty shfts to a soluton. In the model, we can smply add the cost c K mn(r) := mn c k k K r of the cheapest shft type n the reference set K r for each shortage. Meanwhle, maxmum restrctons mpose large penaltes M SNR for each extra shft. All shft number restrctons can therefore be represented as objectve functon components. For penalty calculaton, the actual number ACT (r) of shfts for a shft restrcton r s defned as: ACT (r) := {s S δ used s = {true}, n s N r, k K r : δ K s = {k}} Relatve shft number restrctons r Rrel mn Rrel max defne mnmum and maxmum proportons of shfts of types n K r relatve to all shfts on the respectve days. To calculate penaltes for shortage (mnmum restrctons) and surplus shfts (maxmum restrctons), we addtonally need the number of all reference shfts REF (r) on the affected days: s S REF (r) := {s S δ used s = {true}, n s N r } 101

118 5. An Improvement Algorthm for Complex Shft Plannng When a shft plan s flled up n order to observe a relatve mnmum restrcton r R mn rel, we must consder that each addtonal shft also changes REF (r). The number ρ of addtonal shfts to be created should be chosen to obey ACT (r) + ρ p r (REF (r) + ρ) pr REF (r) ACT (r) (5.26) = ρ 1 p r The mnmum number ρ of addtonal shfts s thus pr REF (r) ACT (r) ρ := 1 p r Wth these consderatons, the shft restrcton penalty term z SNR (Σ) can be calculated as z SNR (Σ) := M SNR max(act (r) m r, 0) + (5.27) c K mn(r) r Rabs max r Rabs mn M SNR c mn k (r) r Rrel max r R mn rel max(m r ACT (r), 0) + (5.28) max(act (r) (p r REF (r)), 0) + (5.29) ( pr REF (r) ACT (r) max 1 p r ), 0 (5.30) A drawback of ths term s that t can only be calculated for complete solutons. Only then all shft types are fxed and numbers of actual and reference shfts for relatve restrctons are known. Clearly, we should also have gudance for the search when a soluton s not complete. The followng secton descrbes how ths can be acheved Lower Boundng The exstence of good lower bounds,.e. lower estmatons on the fnal objectve functon value of a partal soluton, s crucal for the performance of branch-and-bound algorthms. In addton to prunng large parts of the search tree, lower bounds can be used to gude the search, ndcatng whch branches are promsng and should be followed. Some of the above terms for the evaluaton of the objectve functon value already try to antcpate costs. The shft cost term z SC already consders cheapest vald shft types, and the unassgned task penalty z UT takes mnmum task lengths nto account. On the other hand, the term z SNR for shft number restrctons s rather weak because t can only be evaluated for a complete soluton. However, t wll be essental to take promsng decsons n early stages of the search f t s meant to fnd a shft mx observng all restrctons. Ths requres good measures for penaltes arsng n complete solutons. Addtonally, t wll be shown that nformaton on unnserted tasks can be used to antcpate further shft costs Task Look-Ahead Imagne a task whch s not yet nserted but can be attrbuted to shfts whch are not used so far,.e. δs used = {false, true} s δ shft. Then wll cause addtonal shft costs upon nserton. In the local steps of large neghbourhood search, tasks wll be forbdden to be nserted nto dummy shfts n order to reduce the number of unassgned tasks. We can therefore nfer addtonal costs for unnserted tasks by the set of regular shft types. Clearly, t must be consdered that two 102

119 5.7. Lower Boundng such tasks may be covered by the same shft. The resultng nterdependences wll be mplctly represented by the followng approach. Imagne that the cost of a shft type s dstrbuted over ts length, resultng n mnutewse costs for the shft type. Dfferent shft types can cause dfferent costs for coverng the same mnute. We can defne mnmum mnutewse costs mc(t) for a tme perod t as mc(t) := mn k K,n N k st kn t<et kn c k et kn st kn If s a non-splt task, ts nserton wll ental costs of at least t <t+l mn t δ start t =t mc(t ) Coverng a splt part by an empty shft results n costs of at least mn t δ start t <t+msl P t =t mc(t ) These costs can be added to the shft costs for each fulfllng the above condtons, resultng n a stronger lower bound Maxmum Restrctons For absolute maxmum restrctons, the calculaton of lower bounds s easy. ACT lb (r) := ACT (r) s effectvely a lower bound on the number of actual shfts n a complete soluton. The term M SNR r R max abs max(act lb (r) m r, 0) (5.31) s thus a lower bound on the penaltes for absolute maxmum restrctons. Note that the bound could be refned by usng an actual number ACT (r) := {s S δs used = {true} δs K K r }. ACT (r) s however more costly to evaluate, and we wll content ourselves wth the above expresson (5.31). For relatve maxmum restrctons, we addtonally need an upper bound REF ub (r) on the number of reference shfts. We wll frst nclude all used shfts on days N r. In a partal soluton, some tasks may not yet be assgned to shfts and wll be covered by stll empty shft templates. We wll assume that each of these tasks wll be covered by one shft. For a gven restrcton r Rrel max, t suffces to consder tasks whch can be covered by shfts startng on one of the days N r. Because a shft cannot cover more than 24 hours, we defne the set I SNR (r) of relevant tasks for r as I(r) := { I (P = NIL t 1 + d o, b a + l + d, d t 2 ) (P NIL t 1 + d o, b a ssucc + d, d t 2 )} where [t 1, t 2 ] s the tme range of the set n N r {n, n + 1} of days and d o, and d, d are depot travel tmes. The number NT (r) of not nserted tasks on the days affected by r s then NT (r) := { I(r) δ ns {true} } (5.32) and REF ub (r) := {s S δ used s = {true}, n s N r } + NT (r) 103

120 5. An Improvement Algorthm for Complex Shft Plannng gves an upper bound on the number of reference shfts. REF ub (r) decreases monotoncally because each tme one of the tasks s nserted, one task less s accounted, but there s at most one addtonal used shft on the affected days. Because all tasks are assgned n a complete soluton, REF ub (r) converges to REF (r). A lower bound on the penaltes for relatve maxmum restrctons s thus gven by M SNR max(act lb (r) (p r REF ub (r)), 0) (5.33) r R max rel By addtonal constrant varables, REF ub (r) can be effcently calculated as a part of the CP model. We therefore ntroduce global domans contanng the unused shft templates for each day. Because the number of shft templates for each day s fxed, the frst part of the formula for REF ub (r) can be calculated from these domans. The second part can be retreved from varables storng all unassgned tasks for each day on whch these can take place Mnmum Restrctons We now come to the handlng of absolute mnmum restrctons. From (5.28), we may thnk of calculatng an upper bound on ACT (r) to obtan a lower bound on the penaltes for absolute mnmum restrctons. But because penaltes for mnmum restrctons are related to shft type costs (c K mn (r) := mn k K r c k ), stronger bounds can be obtaned. The basc dea s that costs for volated mnmum restrctons are mposed anyway: If a mnmum restrctons r falls short of ts lmt and a yet unnserted task s covered by a shft n K r, ths wll ental costs of at least mn k Kr c k n the shft cost term. If another shft type s used, the same costs wll arse for the volated restrcton r n the penalty term (5.28). We can thus use the orgnal number ACT (r) of used shfts n K r N r and bascally mpose costs of c K mn(r) max(m r ACT (r), 0) r R mn abs (cf. (5.28)) for absolute mnmum restrctons. However, we must take care about the nteracton of shft costs and restrcton penaltes. In the shft cost term z SC, we have already accounted mnmum costs for used shfts. As long as not all of the shft types are not fxed, we do not know f a shft wll fnally realse a type K r. We have to avod accountng such shfts twce,.e. n the shft cost and restrcton terms. The followng shfts DA(r) are concerned: DA(r) := {s S δ K s K r, n s N r, δ K s > 1, δ used s = {true}} Because ths problem only exsts when usng mnmum shft number restrctons, we wll not try to refne the shft cost term, but realse the remedy as a part of restrcton penaltes. Imagne a shft s 1 n DA(r) wth c shft mn (s 1) := mn k δ K s1 c k mn k Kr c k =: c snr mn (r),.e. ts current shft costs are already hgher than the mnmum costs for shft types n K r. Snce the costs c shft mn are realsed anyway, the error can be attrbuted to the addtonal penalty of csnr mn (r) whch should be subtracted from the restrcton penaltes. For a shft s 2 DA(r) wth c shft mn (s 2) < c snr mn (r), we would locate the flaw n the shft costs cshft mn (s 2) because f s 2 fnally has a shft type n K r, t wll ncur costs of at least c snr mn (r). Now magne that a partal soluton contans both s 1 and s 2, and a restrcton r Rabs mn asks for a mnmum number of one shft of types n K r. We have to take a pessmstc approach and subtract the hghest costs to obtan a vald lower bound on the penalty costs (5.28). If (s 1, s 2,..., s n ) are all of the shfts n DA(r) ordered by decreasng mnmum costs c shft mn (s ), we would take the 104

121 shfts of hghest costs and subtract mn(c shft mn (s 1), c snr mn the penaltes. The number of shft costs to be deducted s We could thus use (r)), mn(cshft ν = mn( DA(r), max(m r ACT (r), 0)) c snr mn(r) max(m r ACT (r), 0) ν = Lower Boundng mn (s 2), c snr mn (r)) etc. from mn(c shft mn (s ), c snr mn(r)) (5.34) as a lower bound approxmaton on the penaltes for r. The drawback of ths term s ts computatonal complexty. Such penalty costs would have to be recalculated upon each change of DA(r) due to the boundng of one of the shft types or because shfts are newly used. Furthermore, the term would have to be updated after each change to the shft costs c shft mn (s ) or the number ACT (r) of actual shfts. Equaton (5.34) defnes penaltes wth deductons for doubly accounted shfts. An alternatve conssts n penalsng less shfts,.e. to defne deductons on the number of shfts and not on the cost level. Usng c snr mn (r) mn(cshft mn (s ), c snr mn (r)), the above penalty term can be relaxed: c snr mn (r) max(m r ACT (r), 0) ν =1 c snr mn(r) c snr mn (r) (max(m r ACT (r), 0) ν) = c snr mn (r) max(m r ACT (r) DA(r), 0) Because the determnaton of DA(r) nvolves costly calculatons of set ntersectons, DA(r) s replaced by a smpler set DA (r) of used and unfxed shfts whose break rule days allow for a fxng to one of the types K r on days N r : DA (r) := {s S K brds K r, n s N r, δs K > 1, δs used = {true}} DA(r) We must be sure that monotoncty propertes stll hold. Assume the case that a task s nserted nto a shft of one of the break rule days BRD(r) := {brd BRD K brd K r } If the shft type s not drectly bound, the shft wll be part of DA (r), and f r s not yet observed, one penalty less wll be accounted. Snce the shft s newly used, t causes an ncrease of at least mn k Kbrds c k n the shft cost term, but wth the defnton above, the shft restrcton penaltes would decrease by c snr mn (r) at the same tme. If the new mnmum shft costs cshft mn (s) are less than c snr mn (r), the sum of shft costs and restrcton penaltes would decrease whch s not desrable. To gan a better formulaton, we wll partly account for costs of less than c snr mn (r) for shfts fallng short of the mnmum lmt. We therefore defne the mnmum costs of all shfts whch may later be bound to one of the shft types K r, usng the break rule days BRD(r) as defned above: c brd mn(r) := mn brd BRD(r) k K brd Clearly, we have c brd mn (r) csnr mn (r) because the mnmum s taken over a superset of shft types. In general, the dfference n costs wll not be hgh because shft restrctons frequently c k 105

122 5. An Improvement Algorthm for Complex Shft Plannng apply to classes of shft types whch are strongly related (e.g. shfts for full-tme staff) and are lkely to be grasped by one break rule day. Snce the above monotoncty problems only arse when tasks are nserted nto unused shfts, lower costs of c brd mn (r) only have to be accounted as long as there are unnserted tasks. We mght therefore determne the tasks fttng nto shft types n BRD(r). But because the error resultng from a rougher approxmaton s low, we smply take the number NT (r) of not nserted tasks on the days affected by r as defned n equaton (5.32). Wth the number NP abs (r) := max(m r ACT (r) DA (r), 0) of penaltes to be ncurred by r Rabs mn, a lower bound on the penaltes for absolute mnmum restrctons s gven by r R mn abs c snr mn(r) mn(np abs (r), NT (r)) + c snr mn(r) max(np abs (r) NT (r), 0) (5.35) It should be noted that (5.35) s not a lower bound on the penaltes (5.28) n tself, but has lower bound propertes n combnaton wth shft costs. Effectvely, (5.35) may decrease whle the sum wth the shft costs ncreases monotoncally. Because DA (r) and NT (r) are empty n a complete soluton, t s clear that (5.35) converges towards (5.28). The lower bound approxmaton for relatve mnmum restrctons s based on the consderatons for absolute mnmum restrctons. The man dfference s the determnaton of the number NP rel (r) of penaltes. It s mportant to note that each addtonal shft contrbutng to ACT (r) also ncreases the number REF (r) of reference shfts. However, we must keep n mnd that the tme when we know that a shft s used and counts for the reference shfts dffers from the tme when t s consdered an actual shft of a type n K r. For the calculaton of addtonal shfts for relatve mnmum restrctons, the lower bound approxmaton REF lb (r) := REF (r) = {s S δ used s = {true}, n s N r } on the number of reference shfts s used. To cover the mnmum requrement of p r REF lb (r) shfts, we wll frst assume that COV (r) := max(mn( p r REF (r) ACT (r), DA (r) ), 0) shfts from DA (r) wll fnally contrbute to r. Whle the shfts of DA (r) are already counted n REF lb (r), we must take nto account that each shft beyond DA (r) also ncreases the number of reference shfts. Furthermore, we must consder that we have already taken COV (r) shfts from DA (r),.e. the number of actual shfts s ACT (r) + COV (r). Therefore, the number ρ of addtonal shfts obeys ACT (r) + COV (r) + ρ p r (REF lb (r) + ρ) ρ pr REF lb (r) (ACT (r)+cov (r)) 1 p r Consequently, the (mnmum) number NP rel (r) of penaltes s ( pr REF lb ) (r) (ACT (r) + COV (r)) NP rel (r) := max, 0 1 p r Wth ths fgure gven, the penaltes for relatve mnmum restrctons can be calculated analogously to absolute mnmum restrctons: c brd mn(r) mn(np rel (r), NT (r)) + c snr mn(r) max(np rel (r) NT (r), 0) (5.36) r R mn rel 106

123 5.8. Branch-and-Bound The man dfference between absolute and relatve mnmum restrctons s that the mnmum lmt mposed by relatve restrctons ncreases wthn the shft plan constructon. Snce the lmt ncreases monotoncally, we are sure not to volate the lower bound property. The sum of equatons (5.31), (5.33), (5.35) and (5.36) represents the shft number restrcton penalty whch s used as a lower bound to z SNR n the course of the shft plan reoptmsaton, convergng to z SNR for a complete soluton Branch-and-Bound As descrbed before, we am at mprovng an ntal soluton by a relax-and-optmse approach. Under the term large neghbourhood search, Klby, Prosser and Shaw [1998] and Shaw [1998] have proposed a framework whch was already used for the soluton of the workload levellng problem n Chapter 4. Before descrbng how decsons are relaxed, we descrbe the restrcted branch-and-bound scheme of the reoptmsaton phase. Accordng to the defnton of a complete soluton n Secton 5.6.8, the search conssts of the followng: 1. Inserton of relaxed tasks nto shfts; 2. fxng of shfts to shft types; 3. fxng of lengths of splt parts whch are assgned to ther dummy shft. Suppose that a task s to be nserted between two tasks 1 and 2. In order to trgger ths nserton, all nserted tasks except for 1 are deleted from the predecessor doman δ pred : δ pred := δ pred \ { δ pred δ ns = {true}, 1 } entalng the executon the task nserton rule descrbed n Secton The fxng of shft types and splt part lengths s smply done by settng shft type and splt part length domans δs K and δ sl to sngle values, respectvely. Note that splt parts n dummy shfts cannot smply be fxed to ther shortest possble lengths because there can be nterdependences va temporal relatons va other tasks and shfts. Decsons are taken n the above order,.e. frst all tasks are nserted, then the shft types of used shfts are fxed and fnally the lengths of logcally unassgned splt parts are determned. The search tree thus conssts of three layers correspondng to the dfferent decsons, cf. Fg Other orderngs would be possble, but are less promsng. As an example, there s no advantage n fxng shft types earler because we already account for mnmum shft costs. Fxng shft types can restran possble lengths of splt parts n dummy shfts, but ths nterdependency can be estmated not to be too strong. Generally, t should be tred to keep related decsons e.g. for shft types or for splt part lengths close to each other, lmtng the depth of backtrackng when some of the decsons prove to be bad. Ths s clearly accomplshed by the layered approach. As long as there are tasks whch are not nserted (I rem := { I δ ns {true}} = ), we choose the task I rem wth the least number of remanng nserton postons,.e. the task for whch the number { δ pred δ ns = {true}} of nserted tasks s mnmal. Ths corresponds to the fal-frst prncple [Haralck and Ellott, 1980]. If for several tasks, the number of nserton postons s equal, we take the task whch s least movable,.e. for whch δ start s mnmal. Tral nsertons are then performed for each possble nserton poston. The resultng objectve values are lower bounds on the fnal objectve functon value, gvng hnts on how promsng an nserton s. Branches correspondng to low values are thus explored frst. 107

124 5. An Improvement Algorthm for Complex Shft Plannng task nsertons shft types splt part lengths Fgure 5.7.: Search tree structure. After nsertng all tasks nto shfts, we consecutvely choose shfts from S rem := {s S δ used s = {true}, δ K s > 1} for shft type fxng. Under the followng condtons, the fxng of shft types s easy: 1. The break rule day of the shft s not nvolved n a shft number restrcton,.e. none of the shft type realsatons (k, n brd ) for k K brds s contaned n K r N r for a shft number restrcton r. 2. There are no vertcal nterdependences wth other shfts (whch could be affected by shft number restrctons),.e. the shft does not contan crew tasks or splt parts. If these condtons hold, the shft type decson does not nterfere wth other shfts, and s can smply be fxed to the cheapest possble shft type. For such shfts, shft type decsons wll be taken before all other shfts. For all other shfts, the number of potental nterdependences s determned,.e. the number of shft number restrctons and the dfferent splt tasks and crews whch make shft type fxng dffcult. The shfts are then traversed n order of ncreasng numbers of nterdependences. A tral fxng to each of the shft types n δs K s performed, and the resultng objectve functon values are used to order subnodes,.e. cheapest alternatves are chosen frst. Fnally, we fx the splt parts whch are logcally unassgned,.e. SP rem := { I P NIL, δ ns = {true}, δ shft = {s dummy }, δ sl > 1} Splt parts are traversed n decreasng order of the szes δ sl of ther length domans. The subnodes are traversed n order of ncreasng task lengths snce shorter duratons generally result n lower costs. Clearly, the lower bound descrbed n Secton 5.7 s not only used for the assessment of task nserton and shft type decsons, but also for prunng the search space. As soon as the lower bound exceeds the valuaton of a prevous best soluton, the current state of the model cannot result n an mprovement. Consequently, the branch s pruned, and search contnues by explorng other assgnments. 108

125 5.9. Large Neghbourhood Search Snce even the search trees for local steps are often too complex to be fully explored, we use lmted dscrepancy search (LDS) [Harvey and Gnsberg, 1995] n order to heurstcally reduce the search space. We thus lmt the number of dscrepances wth regard to the best search path n the tree by a constant L D. In contrast to the LDS algorthm for workload levellng (Secton 4.6), all branches wll be counted for the dscrepances and not only branches resultng n a dead end. Dscrepances are aggregated over all layers, ncludng nserton, shft type and length decsons. For the fnal levels representng unassgned splt part decsons, we wll account for more than one dscrepancy for each devaton from the best path because length decsons are generally less nterdependent Large Neghbourhood Search In large neghbourhood search, we wll repeatedly select sets of tasks for relaxaton and reoptmsaton by CP-based branch-and-bound descrbed before. Each of the steps can be regarded a local exchange whch systematcally explores a large neghbourhood. The local steps are performed untl termnaton condtons lke maxmum runtmes or maxmum numbers of steps are met. Intally, we try to acheve mprovements n lttle computaton tme by reassgnng sngle tasks. As soon as a gven number SWI of steps s performed wthout mprovng the objectve functon, the number of relaxed tasks s ncreased by one etc. The steps therefore gradually become more complex and tme-consumng, but are able to repar hgher-order defcences. In each step, a fxed number nt rel of tasks s released. Clearly, the effectveness of the algorthm heavly depends on the determnaton of task sets whch promse to yeld mprovements. Two basc strateges for task selecton are concevable: Roll back the nserton decsons for all tasks n a shft such that the shft s no longer used and accounted for. A local step based on ths dea ams at removng neffcent shfts from the shft plan, tryng to use cheaper shfts to cover the tasks. Revse the shft decsons for strongly nterdependent tasks n dfferent shfts. An mprovement could then stem from a shft beng shortened or the qualfcaton mx becomng better. We wll make an alternate use of these two strateges. The frst strategy wll be called shft release and the latter task release. Note that both deas nclude the rollback of nserton decsons of tasks. For each step, we choose the shft release strategy wth probablty p. Otherwse, we use the task-orented strategy (wth probablty 1 p). The two strateges work as follows: Frst, one shft/task s selected n an envronment whch may yeld an mprovement. Further shfts/tasks are retreved from a fxed nterval around the frst shft/task because f there s no temporal dependency between relaxed decsons, there s no advantage n revse the tems n common. Clearly, shfts and tasks are only released f the maxmum number nt rel of tasks s obeyed. Local steps can nclude tasks whch were assgned to ther dummy shfts. As long as there are tasks n dummy shfts, t wll be probable that these wll be chosen n a shft release step because ths strategy takes shft costs nto account. If however a task cannot be assgned at all, e.g. because a tme perod s not covered by any of the shft types, we should forbd such tasks to be chosen. We therefore devse a preprocessng step determnng whch tasks cannot be covered. Furthermore, we only allow one logcally unassgned task to be ncluded n any local step Shft Release We start wth the descrpton of the shft release strategy. For the choce of a frst shft, the followng valuatons are used: 109

126 5. An Improvement Algorthm for Complex Shft Plannng A reverse utlsaton RUT IL(s): The utlsaton of a shft s the quotent of the sum of task task lengths (ncludng break tasks) and travel tmes dvded by the shft s duraton. The reverse utlsaton s then 100% mnus the utlsaton. The margnal shft cost MCOST (s),.e. the reducton of costs f the shft s not used. Ths ncludes shft type costs as well as margnal shft restrcton penaltes as far as the correspondng shft type s nvolved n a shft number restrcton. Clearly, a shft wth hgh values for these terms wll more probably lead to an mprovement. A weghted sum of the two terms s bult, and all shfts are sorted by decreasng combned costs. If SN s the number of shfts, CR N s a measure of choce randomness, and µ s a random number n [0, 1[, the ndex κ of the chosen shft n the sorted array s calculated as follows (cf. Klby et al. [2000]): κ := SN µ CR (5.37) If CR s hgh, µ CR wll be close to 0, and we wll frequently take the frst shft whose valuaton s most promsng. For smaller values of CR, the nfluence of randomness wll ncrease, dversfyng the search. After the choce of a frst shft s 1, two further valuatons are evaluated for all shfts n S: The temporal dstance to s 1 : If a shft s starts before s 1, the temporal dstance DIST (s 1, s) s the tme between the end of s and the start of s 1. If s 1 s before s, the temporal dstance s the dfference between the start of s and the end of s 1. If the shfts overlap, we have SDIST (s 1, s) = 0. The overlap SOL(s 1, s) of the two shfts. The total valuaton SREL(s) for a shft s s then the weghted sum of the above reverse utlsaton and margnal shft cost together wth the temporal dstance and overlap wth the frst shft. The next shfts are agan chosen accordng to (5.37) wth all shfts beng sorted accordng to ther combned valuaton. Each tme an addtonal shft s s chosen, the valuatons DIST (s, s) and OL(s, s) are added to the total valuaton SREL(s) of all shfts. Consequently, f S rel are the shfts chosen so far, the valuaton SREL(s) of a shft s S \ S s SREL(s) := λ UT IL RUT IL(s) + λ MCOST MCOST (s)+ λ SDIST SDIST (s, s) + λ SOL SOL(s, s) s S rel s S rel Prelmnary tests have shown that the temporal dstance valuaton DIST (s, s) does not suffcently prevent shfts wth hgh temporal dstances from beng chosen. Therefore, the added temporal dstances s S rel DIST (s, s) of commonly chosen shfts are lmted by a constant T D shfts. The procedure contnues as long as there are shfts whch can be chosen wthout exceedng the maxmum number nt rel of tasks. 110

127 5.9. Large Neghbourhood Search Task Release The task-orented release strategy bascally works the same. One aspect has specal mportance n the context of the task release method: If tasks are n subcrews, releasng a sngle task has only lttle benefts because the task wll have to be placed n the same shft crew as adjacent crew tasks. Therefore, subcrews are always relaxed as a whole. Consequently, we must ensure that when a crew task s chosen, all of ts subcrew tasks can also be released wthn the lmt of nt rel tasks. For the choce of a frst task, dfferent strateges were tred, but n the end, choosng a task 1 from a unform dstrbuton over all tasks turned out to be the best strategy. Agan, releasng tasks whch are far away from each other s lttle promsng. Further tasks are therefore lmted to overlap wth a nterval of T D tasks tme unts around the frst task, defned relatve to ts start and end. If the frst task s a crew task, the range s defned from the earlest start and latest end over all subcrew tasks. All further tasks are chosen as descrbed above: The tasks wthn the range are sorted accordng to decreasng valuatons expressng a relatedness wth the tasks whch were relaxed so far. Further tasks are then chosen accordng to (5.37). If the task s a crew task, the total subcrew s released whle non-crew tasks are released along wth ther group of symmetrc tasks (cf. Secton 5.6.7). Ths procedure contnues as long as the maxmum lmt nt rel of relaxed tasks can be obeyed. The relatedness T REL between two tasks comprses the followng terms: The overlap T OL( 1, 2 ) whch s defned as the mnmum overlap resultng from a movement of tasks wthn n ther remanng tme wndows. The temporal dstance T DIST ( 1, 2 ) summng up the absolute dstances between earlest start tmes and latest end tmes. The afflaton ST ( 1, 2 ) to the same splt task whch s 1 f P 1 = P 2 NIL and 0 otherwse. The afflaton CREW ( 1, 2 ) to the same task crew whch s 1 f there s a C C such that 1, 2 C. Note that a task crew may consst of several subcrews. Then ths term wll favour subcrews of the same task crew to be chosen. The smlarty QUAL( 1, 2 ) of qualfcaton profles whch s the cardnalty of the ntersecton of the tasks qualfcaton requrements: QUAL( 1, 2 ) := Q 1 Q 2. As above, the valuatons are aggregated over all tasks whch are released so far: If I rel s the set of chosen tasks, T REL() s calculated as T REL() := λ T OL T OL(, ) + λ T DIST T DIST (, )+ I rel I rel λ ST ST (, ) + λ CREW CREW (, )+ I rel I rel λ QUAL QUAL(, ) I rel Note that ndependently from the chosen strategy (task or shft release), we wll determne a set I rel of tasks to be relaxed. Nevertheless, we wll also revse decsons whch do not relate to tasks (lke shft types). 111

128 5. An Improvement Algorthm for Complex Shft Plannng Local Step Setup For settng up the CP model for a local step, t s not suffcent to revse nserton decsons for tasks. If a shft becomes empty, e.g. by revson of nserton decsons n the shft release strategy, we should also reset the used as well as the shft type doman, assurng that shft costs are no longer ncurred. Even f not the ensemble of all tasks n a shft are relaxed, we wll want to have the flexblty of shortenng or prolongng the shft by relaxng the shft type doman. We thus have to devse a procedure to determne all tems (tasks and shfts) whch potentally nterfere wth the nserton decsons of the tasks to be relaxed. Startng from the set I rel, we wll buld sets of dependent tasks I dep and shfts S dep. For all tasks n I dep, we wll bascally reset the tme wndows (but not the nserton decsons as for the tasks n I rel I dep ). For the shfts S dep, we wll revse all decsons relatng to the shft type,.e. we wll enable the shft to be fxed to another shft type n the course of the local step. If a task I rel s a crew task, we know that s nserton could have caused temporal restrctons on ts adjacent crew tasks. The same s true f s a splt part. The propagaton to related tasks of the same task crew or splt task may have entaled decsons for shft types, and these decsons should also be rolled back. Clearly, f a shft s part of a shft crew, we should reset the shft types of all crew shfts snce otherwse, we would not open any degrees of freedom. The set I dep s therefore recursvely defned as the smallest set for whch the followng holds: I rel I dep I rel C C : C C I dep I rel P NIL P I dep s S dep δ shft = {s} I dep Note that ths defnton makes use of the set S dep (whch reversely depends on I dep ) snce all tasks n dependent shfts are defned to be dependent themselves. Ther tme wndows should be reset because the decson for a specfc shft type may have entaled tme wndows reductons. Ths s especally true for the orgn, destnaton and break tasks because wthout resettng these tasks, the shft would not gan any degrees of freedom. The set S dep of dependent shfts s the smallest set for whch the followng condtons hold: I dep δ shft = {s} s S dep s S dep H H : s H H S dep The two sets can be calculated by a fxed pont teraton, startng from the set I dep := I rel and successvely addng dependent tasks and shfts to I dep and S dep. We then reset CP domans pertanng to tasks and shfts n I dep and S dep. For each dependent task I dep, δ start s reset to the orgnal tme wndow [a, b ]. For all relaxed tasks I rel, we addtonally perform the followng steps (note that I rel I dep ): The successor σ π of the predecessor π of s set to ts successor σ whle the predecessor π σ of the successor task σ s set to π ; π and σ are subsequently reset to NIL; δ ns s set to {false, true}; δ pred and δ shft are temporarly reset to empty sets because the determnaton of nserton postons can only be done n a subsequent step. For all shfts s S dep, the followng domans are reset: δ K s s set to all shft types K brds allowed by the shft s break rule day brd s ; 112

129 5.10. Overlap Mnmsaton break break break Fgure 5.8.: Coverng tasks by empty shft templates. δ used s s reset to {false, true}; δqual s s rentalsed to the set Q of all qualfcatons; δ qp s s set to [1, qp 1 mn ]. After rollng back the domans to ther orgnal states, a local repropagaton s performed n order to make the consequences of unrevsed nserton decsons vsble. Therefore, all consstency tests relatng to dependent tasks and shfts are propagated. Afterwards, the tme wndows reflect the current state of nsertons, and the shft type and cost nformaton as well as qualfcaton profles wll be consstent. Subsequently we can evaluate the postons nto whch relaxed tasks can be renserted. All shfts whch could cover a task I rel are traversed. If can be nserted between two tasks 1 and 2 (ncludng orgn, destnaton and break tasks), ( 1, 2 ) wll be part of the set Φ() of nserton postons ntroduced above. The task 1 s then added to δ pred of potental predecessors of, s added to δ pred 2, and the shft s of 1 and 2 to δ shft. Bascally the same s done for empty shft templates cover the tasks. Clearly, f a task can be attrbuted to an empty shft s, t can be covered by any template of the same break rule day. In order to avod symmetry, we add only one empty shft per break rule day to the shft doman of a task. If a further task can be covered by the same break rule day, we must consder that an empty shft may fnally be used to cover both tasks. We therefore allow the task to be assgned to the frst empty shft as well as to another empty shft template of the break rule day. For each task fttng nto a break rule day, we thus nclude an addtonal empty shft, cf. Fg Note that f subcrews are used, the same argument apples to the shft crew level. The nserton postons are entered nto the respectve varables δ pred and δ shft. A repropagaton ensures consstency before startng the reoptmsaton by the branch-and-bound algorthm descrbed before Overlap Mnmsaton As descrbed n Secton 5.2.5, two subsequent tasks 1, 2 n a shft are allowed to overlap by a maxmum amount of mn(ol max 1, ol max 2 ), ncludng the travel between 1 and 2. The constrant mposng mnmum dstances between the start tmes of such tasks 1 and 2 was therefore relaxed by ths amount. Overlap was ntroduced to soften the strct determnstc character of the model. It reflects the plannng practce to pack tasks somewhat tghter n order to ncrease the shft utlsaton. Clearly, overlap should be avoded f possble. Overlap mnmsaton s not explctly ncluded n the optmsaton model for two reasons. On the one hand, t s a subordnate objectve,.e. we wll accept more overlap f shft costs can be lowered. On the other hand, the determnaton of overlaps requres determnng task start tmes. However, ths would make the search more costly because we would have to fx all start tme domans as a part of the tree search. 113

130 5. An Improvement Algorthm for Complex Shft Plannng When handlng overlap mnmsaton as a secondary objectve, we can stll explot the degrees of freedom whch are left after local mprovement, consstng of the start tmes of movable tasks and the lengths of splt parts. Ths can be compared to the fnalsng procedures of Campbell and Savelsbergh [2004]. Our goal wll be the mnmsaton of the sum of overlaps on all tasks. If no crews or splt tasks are used, the best soluton can easly be found by a dynamc programmng pass over the tasks n every shft. As descrbed n Secton 5.3, crews and splt tasks ntroduce vertcal temporal relatons,.e. ther start tme decsons affect more than one shft. As a consequence, overlap mnmsaton s not straghtforward anymore. A smple greedy method s therefore used for fxng start tmes. The procedure passes once over all shfts and the tasks they contan. For each task, the start tmes from δ start are tred and the (local) consequences on task overlaps determned. The best start tme s then entered nto the constrant model and propagated before turnng to the next task. For each non-splt task, we can smply determne the overlaps wth the predecessor and successor tasks pred and succ. If s a splt part, we calculate the overlap wth the predecessor pred and the mnmum overlap wth ts successor succ, assumng that wll have a mnmum length as gven by δ sl. If s the frst splt part of a splt task (.e. spred = NIL), the end tme of the last splt part can be determned by addng the total splt task length to the start tme. We therefore addtonally nclude the overlap of the last splt part wth ts successor and ts predecessor, usng the task s mnmum length. If s not the frst splt part, s start tme s also the end tme of spred. We can therefore determne the overlap of spred wth ts successor and ts predecessor, usng the mnmum length from δ sl spred. Often there are tes n choosng the start tme causng least overlaps. Non-splt tasks are then fxed to the earlest start tme whle splt parts are fxed such that the frst splt part has the longest possble length. Consequently, only the start tme of the frst splt part s fxed to the earlest value whle start tmes of all other parts are fxed to latest start tmes. Ths corresponds to a sequental vew of task splttng: the longest possble part of a splttable task s assgned to a shft, and f the task does not ft completely, t s nterrupted at the latest possble tme Expermental Results We wll evaluate the performance of the large neghbourhood search algorthm on a number of real-world scenaros from the practce of ground handlng companes and arlnes. Basc nformaton on the test cases s summarsed n Tables 5.4 and 5.5. Scenaros belong to one of the three classes B, C and D. Test set B corresponds to the staff plannng scenaros used n the workload levellng procedure of Chapter 4. Scenaros of set C use only lmted constrants and nvolve only fxed tasks; these scenaros wll also be used for the experments of Chapter 7. Scenaros of class D partly nvolve rcher sets of constrants whle only a lmted number or none of the tasks are movable. Most test cases span over one week or eght days. Some scenaros have a very large scale wth up to tasks (scenaro B09) and 2380 shft types (scenaro D14). 15 out of 62 test cases allow for splttng of a subset of the tasks wth mnmum splt part lengths between 30 and 300 mnutes; orgnal tasks n Table 5.4 refers to the number of tasks before splttng. Task overlappng up to 2 mnutes s only admtted on fve scenaros. 15 scenaros comprse task crews of whch 8 scenaros nvolve crew plannng wth subcrews of szes 2 or scenaros nvolve qualfcatons, but n many cases, qualfcaton constrants are very loose. As an example, scenaro B02 allows for four qualfcatons per shft whch exactly equals the number of nvolved qualfcatons. Seven test cases comprse qualfcaton restrctons. Absolute shft number restrctons are present n ten scenaros whle only two test fles nclude relatve restrctons. Whle the number shft types s partly consderable (scenaros D14, D22), the number of break rule days s mostly moderate wth 114

131 5.11. Expermental Results only few exceptons (e.g. B09 and B10). The algorthm was mplemented n Vsual C Tests were carred out an AMD Athlon computer (1.67 GHz) wth 512 MB RAM and operatng system Wndows XP SP1. For the mplementaton of constrant propagaton and branch-and-bound, the ctk toolkt was used. The mprovement phase bulds upon solutons of the constructon heurstc whch was descrbed n Secton 5.1. For all tests, we have set w QP = 5, M QR = M SNR = 500 and M UT = 10. The relaxaton strateges were tuned n prelmnary tests. Wth a probablty of 70%, the task release strategy s used, but results turned out to be robust over a wde range of dfferent values. The parameters for the task and shft release strategy are gven n Table 5.6. A dscrepancy lmt of L D = 8 turned out to be a good compromse between search depth and processng tmes of ndvdual steps. Dscrepancy s accounted for over all search tree layers representng task nserton and shft fxaton decsons. Shfts whch do not nvolve vertcal nterdependences due to splt or crew tasks are heurstcally fxed to ther cheapest avalable shft types (.e. a dscrepancy of 0 s used). Equally, logcally unassgned splt parts are always fxed to ther shortest possble lengths by accountng for 8 dscrepances for each devaton from the best branch. Addtonally to mposng a dscrepancy lmt, t turned out to be advantageous to lmt the number of branches leadng to propagaton falures to a maxmum of Falures usually arse when the value of a partal soluton exceeds the value of the ncumbent, but can also result from nconsstent assgnments (e.g. due to ncompatble qualfcatons). The performance of the algorthm was evaluated at runtmes of 5 and 30 mnutes. The 5 mnute lmt s typcal of stuatons n whch solutons must be obtaned wthn low response tmes whle a 30 mnute run wll generally be started for offlne executon. For the 5-mnute tests, SWI (steps wthout mprovement before stepwdth ncrementaton) was set to 10. For the 30 mnute runs, SWI was equal to 60, meanng that smaller neghbourhoods are nvestgated more thoroughly. Results wth regard to objectve functon mprovements are summarsed n Table 5.7. Results of the LNS runs represent averages over fve runs wth dfferent random seeds. As can be seen, local search mproves ntal shft plans by an average of 3.07% (5 mnutes) and 3.88% (30 mnutes). Hghest mprovements are attaned on scenaros B13 (47.07%), D09 (19.67%) and D31 (17.87%). On scenaros B13 and D31, these mprovements manly stem from coverng stll unassgned tasks. Whle on some scenaros, all or nearly all mprovement s accomplshed wthn fve mnutes (e.g. B02, B13, D01), savngs on other scenaros are consderably hgher wth addtonal runtme (e.g. B03, C04, D03). Relatve standard devatons for the dfferent runs (see Secton 4.10) amounted to an average of 0.39% for the 5-mnute experments and 0.46% for the 30-mnute tests. Whle the objectve functon comprses several terms, Table 5.8 gves results n terms of shft costs. As can be seen, savngs rase up to a maxmum of 15.94% on scenaro B06. On fve scenaros, more than 10% mprovement are acheved; on average, savngs amount to 2.15% (5 mnutes) and 2.74% (30 mnutes). Improvements on scenaros nvolvng movable tasks are often hgher, especally f crews are nvolved. On scenaro B09, shft costs ncrease slghtly because addtonal shfts are needed to cover stll unassgned tasks. Furthermore, Table 5.8 ndcates shft utlsatons whch result from dvdng total task mnutes by total shft duratons wthout breaks [Jacobs and Bechtold, 1993]. Utlsatons before local mprovement amount to 56.8% wth a mnmum of 20.9% (B04) and a maxmum of 99.7% (D21). Whle the average utlsaton s typcal of arport operatons (see e.g. Dowlng et al. [1997]), the mnmum utlsaton shows that n scenaro B04, shft types do not seem be well-desgned for coverng the workload. In the 30-mnute runs, shft utlsatons are ncreased by up to 9.1% (B06) wth an average of 1.4%. Whle these savngs are already consderable n vew of the large scale of arport operatons, a man beneft of the local mprovement algorthm conssts n offerng a remedy for defcences of the constructon algorthm. Whle scenaros frequently comprse work tasks whch cannot be covered by any of the gven shft types, the constructon phase sometmes leaves tasks unassgned 115

132 5. An Improvement Algorthm for Complex Shft Plannng No. days orgnal splttable avg. tme avg. task avg. mn. max. max. crew task avg. sze subcrews avg. sze tasks tasks wndow wdth length splt part length travel tme overlap sze crews task crews subcrews B B B B B B B B B B B B B B C C C C C C C C C C C C C C C C C D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D Table 5.4.: Scenaro data. 116

133 5.11. Expermental Results No. qual- avg. qual. qual. pref. max. qual. qualfcaton shft break rule range of avg. breaks avg. shft abs. shft restr. rel. shft restr. fcatons per task range per shft restrctons types days shft lengths per shft type type cost (mn./max.) (mn./max.) B [0,1] [390,510] /0 0/0 B [0.42,0.73] [510,510] /0 0/0 B [0,1] [390,510] /57 0/0 B [1,1] [360,720] /0 0/0 B [1,1] [480,480] /0 0/0 B [1,1] [360,600] /0 0/0 B [1,1] [360,600] /0 0/0 B [1,1] [470,490] /0 0/0 B [1,1] [180,660] /68 0/0 B [0.2,1] [360,540] /0 0/0 B [1,1] [240,570] /0 0/0 B [1,1] [240,600] /0 0/0 B [1,1] [240,600] /0 0/0 B [1,1] [240,600] /0 0/0 C [1,1] [240,480] /0 0/0 C [1,1] [240,510] /0 0/0 C [1,1] [240,510] /0 0/0 C [1,1] [240,510] /0 0/0 C [1,1] [240,510] /0 0/0 C [1,1] [240,510] /0 0/0 C [1,1] [484,484] /12 0/0 C [1,1] [484,484] /8 0/0 C [1,1] [384,484] /12 0/0 C [1,1] [501,501] /0 0/0 C [1,1] [456,471] /0 0/0 C [1,1] [456,471] /0 0/0 C [1,1] [360,720] /35 0/0 C [1,1] [360,720] /0 0/0 C [1,1] [360,600] /0 0/0 C [1,1] [360,600] /0 0/0 C [1,1] [480,600] /0 0/0 D [1,1] [240,640] /0 0/0 D [1,1] [240,640] /0 0/0 D [1,1] [240,640] /0 0/0 D [1,1] [240,510] /0 0/0 D [1,1] [240,510] /0 0/0 D [1,1] [240,480] /0 0/0 D [1,1] [240,480] /0 0/0 D [1,1] [240,480] /0 0/0 D [0.42,1] [390,510] /0 0/0 D [0,1] [510,510] /0 0/0 D [0,1] [390,510] /7 0/0 D [0,0.63] [390,510] /7 0/0 D [0,1] [240,630] /0 0/0 D [0,1] [240,645] /0 0/7 D [0,0.55] [360,960] /0 0/0 D [1,1] [360,720] /0 0/0 D [1,1] [360,720] /0 0/0 D [1,1] [195,600] /0 0/0 D [0.04,1] [480,510] /0 0/0 D [0,1] [240,720] /0 0/0 D [0,0.54] [240,720] /0 0/0 D [1,1] [180,480] /0 0/0 D [0,1] [240,480] /0 0/0 D [0,1] [240,480] /0 0/0 D [0.04,1] [240,750] /0 0/0 D [0.03,0.03] [270,570] /0 0/0 D [0,1] [360,540] /0 0/0 D [1,1] [240,600] /0 0/0 D [0.94,1] [240,600] /9 0/7 D [0,1] [240,600] /0 0/0 D [0.91,0.91] [240,570] /0 0/0 Table 5.5.: Scenaro data (contnued). shft release task release CR 10 T D tasks 480 T D shfts 480 λ T OL 100 λ UT IL 20 λ T DIST 10 λ MCOST 10 λ ST 10 λ SDIST 100 λ CREW 10 λ SOL 10 λ QUAL 100 Table 5.6.: Parameters of release strateges. 117

134 5. An Improvement Algorthm for Complex Shft Plannng No. ntal 5 mn. 30 mn. obj. fct. obj. fct. mprovement obj. fct. mprovement B % % B % % B % % B % % B % % B % % B % % B % % B % % B % % B % % B % % B % % B % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % D % % Table 5.7.: Average mprovement of objectve functon. 118

135 5.11. Expermental Results No. ntal soluton 5 mn. 30 mn. shft costs utlsaton shft cost mprovement utlsaton shft cost mprovement utlsaton B % % 45.1% % 45.2% B % % 29.1% % 29.1% B % % 52.9% % 53.7% B % % 21.8% % 22.0% B % % 35.8% % 36.2% B % % 56.1% % 57.1% B % % 55.1% % 56.0% B % % 60.4% % 61.1% B % % 48.0% % 48.0% B % % 38.2% % 38.3% B % % 50.1% % 50.2% B % % 55.0% % 56.5% B % % 51.8% % 53.7% B % % 52.8% % 53.0% C % % 54.5% % 54.6% C % % 71.2% % 71.3% C % % 51.7% % 51.7% C % % 58.2% % 58.8% C % % 55.2% % 55.3% C % % 57.9% % 58.1% C % % 59.8% % 59.8% C % % 66.6% % 66.8% C % % 56.0% % 56.0% C % % 68.5% % 68.6% C % % 59.0% % 59.0% C % % 51.1% % 51.3% C % % 34.1% % 34.1% C % % 33.3% % 33.6% C % % 19.8% % 20.0% C % % 41.6% % 42.4% C % % 37.7% % 37.8% D % % 53.6% % 53.6% D % % 54.3% % 54.4% D % % 25.0% % 25.3% D % % 65.6% % 66.5% D % % 74.6% % 74.6% D % % 65.0% % 65.0% D % % 59.2% % 59.6% D % % 35.3% % 36.0% D % % 35.5% % 35.9% D % % 53.8% % 54.5% D % % 47.8% % 48.0% D % % 94.4% % 94.4% D % % 86.8% % 87.4% D % % 79.4% % 79.7% D % % 76.7% % 77.2% D % % 64.3% % 64.8% D % % 55.1% % 55.5% D % % 77.3% % 77.4% D % % 68.9% % 69.3% D % % 98.1% % 98.3% D % % 99.8% % 99.8% D % % 77.1% % 77.4% D % % 71.5% % 71.7% D % % 84.9% % 85.0% D % % 58.0% % 58.0% D % % 36.2% % 36.1% D % % 54.3% % 54.6% D % % 84.0% % 84.3% D % % 69.1% % 69.3% D % % 78.7% % 78.8% D % % 75.0% % 75.5% Table 5.8.: Shft costs and utlsatons. 119

136 5. An Improvement Algorthm for Complex Shft Plannng No. 5 mn. 30 mn. steps tasks steps tasks B B B B B B B B B B B B B B C C C C C C C C C C C C C C C C C No. 5 mn. 30 mn. steps tasks steps tasks D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D Table 5.9.: Fnal steps and stepwdths. whch could be covered. As an example, large neghbourhood search assgns addtonal 63 tasks n scenaro B13 and addtonal 14 tasks n scenaro D31. Furthermore, the ntal algorthm s sometmes not able to avod maxmum restrcton volatons due to ts heurstc nature. Such defcences are quckly resolved by local mprovement. As an example, LNS avods up to two qualfcaton restrcton volatons on scenaro D29 and ten volatons on scenaros B03 and D09. Furthermore, on scenaros B09 and D29, one and two more maxmum shft number restrctons are obeyed after local mprovement. Runtme nformaton s gven n Table 5.9. Whle on some large-scale scenaros, all mprovement s attaned by releasng one task at a tme (scenaros D24 and D30), up to 31 tasks were relaxed n one run on scenaro B08. The number of steps over the dfferent 30-mnute runs ranged from 124 (one run on D05) to 3079 (one run on B13). In Table 5.10, we can study the development of task splts on scenaros comprsng preemptve tasks. Fgures ndcate the average number of splt parts per splt task n the ntal soluton and after 30 mnutes (averages over fve runs). It can be seen that even f we do not penalse splttng, the average number of splt parts consstently decreases by local mprovement. Table 5.11 compares total task overlaps (n mnutes) n the ntal solutons and after local 120

137 5.11. Expermental Results No. before LNS after LNS (30 mn.) B D D D D D D D D D D D D D D Table 5.10.: Average numbers of parts per splt task. No. before LNS after LNS (30 mn.) B D D D D Table 5.11.: Changes n total overlappng. mprovement and applcaton of the algorthm of Secton 5.10; only scenaros allowng for overlappng are shown. As can be seen, changes n overlaps are hghly problem-dependent. Whle on scenaros D15, D29 and D30, overlaps decrease by 90.6%, 94.0% and 72.6% on average, scenaros B14 and D28 use 22.4% and 646.7% more overlap after local mprovement. On the latter scenaros, overlap s effectvely used for a tghter packng of tasks n order to reduce shft costs. The results of local mprovement are generally very satsfactory. The algorthm has been mplemented as a part of a commercal staff schedulng system and meets customer demands. Defcences of ntal heurstc solutons are quckly levelled out, and addtonal mprovement can be obtaned by nvestng more runtme. Results of the combned constructon/mprovement algorthm are more robust, and the algorthm scales well to large problem nstances. However, we wll shortly menton some shortcomngs of the local mprovement scheme. Frst, the algorthm has turned out to be senstve to dfferent knds of shft models and shft costs. If many shft types are used, the algorthm can explot more degrees of freedom to shorten or prolong shfts. If shft costs are proportonal to shft lengths (whch s often the case n practce), the algorthm yelds much mprovement already n small neghbourhoods. If n contrast only few shft types are present, local search must be appled to much larger neghbourhoods snce mprovng the soluton wll often necesstate swaps of many tasks. If shft costs are ndependent from ther lengths (e.g. f unt costs are used for all shfts), ths means that mprovement can 121

138 5. An Improvement Algorthm for Complex Shft Plannng Fgure 5.9.: Example from scenaro C12: partal soluton before mprovement. Fgure 5.10.: Example from scenaro C12: partal soluton after mprovement. usually only be acheved by savng shfts. As an example, scenaro D17 uses shft costs whch are proportonal to shft lengths. In the above experments, local search acheved average shft cost savngs of 1.58% and ncreased shft utlsaton by 0.9%. In an experment wth all shft costs set to 1, shft cost mprovements wthn 30 mnutes amounted to an average of 0.61% whle utlsaton was ncreased by only 0.2%. Clearly, ths can be ntentonal f the number of shfts s the only optmsaton crteron. In fact, the number of shfts was decreased by a maxmum of one shft wth proportonal shft costs whle up to four shfts were saved wth the unt-cost model. Another defcency of large neghbourhood search les n the asymmetry of task selecton and renserton procedures: Whle relaxed tasks are optmsed by powerful branch-and-bound search, ther choce s based on smple heurstc rules. However, we may necesstate larger and more complex neghbourhoods n order to acheve more global mprovement. However, these are generally not easy to fnd. Fgure 5.9 shows an extract of scenaro C12. In order to save one shft n the gven soluton, all tasks whch are marked yellow must be relaxed (tasks n shfts whch are also nvolved n the local step are marked green, breaks have red colours). The result of the local step s gven n Fg Note that the yellow tasks represent the mnmum task set whch s requred for ths local step. Whle the branch-and-bound procedure of Secton 5.8 mmedately fnds the mprovement, such complex neghbourhoods are not easy to determne. Prelmnary experments wth LP-based relaxaton strateges turned out to be successful, but requred excessve computaton tmes when teratvely appled for fndng mnmum neghbourhoods. A more effcent soluton approach wll be presented n the next chapter. 122

139 5.12. Conclusons and Future Research Conclusons and Future Research We have tackled a complex task-level shft plannng problem on arports. Whle most lterature focuses on coverng a demand curve of labour requrements, we have developed a mathematcal descrpton for shft plannng on the level of sngle work tasks, ntegratng shft schedulng wth vehcle routng. Task-level shft plannng s an approprate model for detaled operatve plannng, ncorporatng a multtude of constrants wth regard to shfts and qualfcatons. Crew restrctons and preemptve tasks represent further outstandng features of the model. We have shown how task-level shft plannng can be ncorporated n a constrant programmng model. We have demonstrated how classcal forward/backward schemes for temporal propagaton can be extended to handle crews and preemptve tasks. Shft type flexblty was handled by ntroducng the noton of break rule days. Furthermore, we have shown how qualfcaton and shft number restrctons can be dealt wth. We have descrbed a constrant-based local mprovement algorthm whch bulds upon solutons of a constructon heurstc, resolvng defcences of ntal solutons whle preservng advantageous features. Dfferent strateges have been descrbed for the choce of sets of tasks to be reoptmsed. Renserton s then accomplshed by restrcted branch-and-bound search, explotng problem-specfc lower bounds. The combned constructon-mprovement approach offers the possblty of weghng runtme aganst soluton qualty. Whle good solutons even for largescale scenaros are avalable wthn rather low runtmes, better solutons can be obtaned f more runtme can be nvested. Expermental results have shown that the mprovement algorthm s effectve and effcent on a wde range of real-world test cases. Results of the ntal algorthm could partly be mproved consderably. The algorthm provdes a remedy for flaws of the constructon phase, ncludng uncovered tasks and volatons of shft number and qualfcaton restrctons. As a part of a commercal staff schedulng package, the algorthm s used by arlnes, arports and ground handlng companes. Because t provdes locally optmal and robust solutons on a very general settng, the method has consderably ncreased customer satsfacton and mproved the qualty of shft plans. Constrant programmng has turned out to be a very flexble framework for complex shft plannng. The mprovement algorthm has already been generalsed to dfferent settngs, ncludng plannng wth fxed shfts and partally fxed assgnments, optmsng shft plans for lkely flght delays, cross-utlsng shft plans of dfferent departments and checkng gven shft plans for restrcton volatons. The constrant model mght further be enrched n the future, e.g. by addtonal qualfcaton constrants, representng the sklls of the workforce at hand. Whle the algorthm has proven an nvaluable tool n practce, a mnor defcency of large neghbourhood search s the asymmetrc nature of ts relaxaton and reoptmsaton strateges. Several enhancements are concevable for the future. On the one hand, t may be promsng to combne constrant-based search wth tabu search or smulated annealng n order to overcome local optma wth moderate neghbourhood szes. Furthermore, the constrant model descrbed n ths chapter could be used for a new constructon algorthm. An alternatve approach, usng nteger programmng global search, wll be descrbed n Chapter

140 5. An Improvement Algorthm for Complex Shft Plannng 124

141 6. Column Generaton and Branch-and-Prce The purpose of mathematcal programmng s nsght, not numbers. Arthur M. Geoffron In the precedng chapters, we have used constrant programmng to solve the workload levellng problem as well as complex task-level shft plannng problems. Constrant programmng s a very powerful technque for the handlng of multtudes of constrants as well as lnear and non-lnear objectve functons. In general, CP s very strong n representng feasblty aspects of dscrete optmsaton problems. In contrast, lnear programmng based methods focus on the optmsaton aspect [Grönkvst, 2002]. In the followng, we wll ntroduce column generaton and branch-andprce technques whch have become popular soluton technques n nteger programmng. The descrpton wll lay the ground for the algorthms of Chapters 7 and 9. Column generaton was orgnally proposed by Ford and Fulkerson [1958] and Dantzg and Wolfe [1960] and ndependently by Glmore and Gomory [1961]. Apart from the orgnal publcatons, Chvátal [1983], Barnhart et al. [1998] and Desrosers and Lübbecke [2003] gve excellent surveys of Dantzg-Wolfe decomposton, column generaton and branch-and-prce technques. A good overvew of mplementaton ssues and speedup technques can be found n Desaulners et al. [2001]. Lübbecke and Desrosers [2004] summarse some recent developments n column generaton. Another valuable source of nformaton s the PhD thess of Lübbecke [2001]. The followng exposton s manly based on Chvátal [1983] and Barnhart et al. [1998]. Frst, the general decomposton dea s presented, leadng to a column generaton scheme for the mplct handlng of large numbers of varables. Dantzg-Wolfe decomposton s shown to be partcularly approprate for block-structured lnear programs. Furthermore, we descrbe how ntegralty can be acheved by branch-and-prce. We shortly sketch the relatonshp between column generaton and Lagrangan relaxaton. Fnally, some advanced performance ssues are dealt wth Dantzg-Wolfe Decomposton Inspred by an dea of Ford and Fulkerson [1958], Dantzg and Wolfe [1960] presented a decomposton method for lnear programs. The dea of Dantzg-Wolfe decomposton s to separate the constrant system nto a set of complcated couplng constrants and easer-to-handle local constrants. The reformulaton leads to a master program contanng the complcated constrants whle the local constrants are mplct n the newly defned varables. The master program has less constrants, but many more varables than the orgnal compact formulaton. The dea of column generaton s to deal mplctly wth the set of varables (see Ford and Fulkerson [1958]), restrctng the master program to a subset of the varables and generatng addtonal varables on demand va dual varable nformaton. Glmore and Gomory [1961] proposed a smlar scheme for the cuttng stock problem for whch the column generaton formulaton arses naturally. In the followng, we wll assume that we are gven a mnmsaton problem. We therefore start 125

142 6. Column Generaton and Branch-and-Prce from a lnear program subject to mn c T X (6.1) A 1 X b 1 (6.2) A 2 X b 2 (6.3) X 0 (6.4) where A 1 R m1 n and A 2 R m2 n are coeffcent matrces, b 1 R m 1, b 2 R m 2 the correspondng rde-hand sdes and c R n a cost vector. Program (6.1)-(6.4) wll be called the compact formulaton. Accordng to the theorems of Weyl and Mnkowsk (cf. Nemhauser and Wolsey [1988]), every pont of a non-empty polyhedron X := {X R n + A 2 X b 2 } can be expressed as a convex combnaton of the extreme ponts {x q } q Q plus a nonnegatve lnear combnaton of the extreme rays {x p } p P of X : X = λ q x q + λ p x p λ q 0 q Q, λ p 0 p P, λ q = 1 q Q p P q Q Note that the smplex method systematcally enumerates basc feasble solutons (the extreme ponts of X ) or yelds a basc feasble drecton (an extreme ray of X ) of the soluton space whch s spanned up by ts constrant system [Chvátal, 1983]. X thus observes A 2 X b 2 f and only f X = q Q λ q x q + p P λ p x p, q Q λ q = 1 Representng the orgnal varables X by the extreme ponts and extreme rays of the polyhedron defned by the constrant system A 2 X b 2, the lnear program (6.1)-(6.4) can be rewrtten as mn c T λ q x q + λ p x p q Q p P subject to or, rearrangng the terms, as A 1 λ q x q + λ p x p b 1 q Q p P λ q = 1 q Q λ q 0 q Q λ p 0 p P mn (c T x q )λ q + q Q p P(c T x p )λ p (6.5) subject to q Q(A 1 x q )λ q + p P (A 1 x p )λ p b 1 (6.6) 126

143 6.1. Dantzg-Wolfe Decomposton λ q = 1 (6.7) q Q λ q 0 q Q (6.8) λ p 0 p P (6.9) whch s called the master program assocated wth (6.1)-(6.4). We wll denote ts cost vector by ĉ, the constrant matrx (ncludng the convexty constrant (6.7)) by  and the rght-hand sde by ˆb := [b 1 1] T. The decson varables of the master program are the λ q and λ p, and the columns of the constrant matrx correspond to extreme ponts and extreme rays of X. The master program nvolves less constrants, but many more varables than the compact formulaton. However, the columns of (6.5)-(6.9) need not be fully enumerated when usng the revsed smplex method [Orchard-Hays, 1968]. Instead, we can use a restrcted master program (RMP) whch contans only a subset of the columns and varables of the master program. Addtonal columns wll be mplctly prced out by a subproblem (or prcng problem), and columns wth negatve reduced costs wll be added to the restrcted master program. Accordng to the smplex crteron, we must choose an enterng column wth negatve reduced costs n each teraton. In the optmal soluton to a gven restrcted master program, let π R m 1 denote the dual values assocated wth constrants (6.6) and µ the dual value of the convexty constrant (6.7). To fnd an enterng column â of Â, the followng subproblem s solved: subject to mn (c πa 1 )X (6.10) A 2 X b 2 (6.11) X 0 (6.12) If the subproblem has an optmal soluton x such that (c πa 1 )x µ < 0, x s a basc feasble soluton wth negatve reduced costs and corresponds to one of the extreme ponts x q. The column ( A â := 1 x ) (6.13) 1 of  can thus be added to the RMP wth the correspondng cost coeffcent n ĉ set to cx. In the master program, â can be used as an enterng column. If the subproblem (6.10)-(6.12) s unbounded, we fnd a basc feasble drecton x such that (c πa 1 ) x < 0. x then corresponds to one of the extreme rays x p, and the column â := ( ) A1 x 0 (6.14) of  can be added to the restrcted master program wth cost coeffcent c x. Because ts reduced costs are negatve, t can be used as an enterng column. If fnally the problem (6.10)-(6.12) has an optmal soluton x of value (c πa 1 )x µ 0, we know that each extreme pont x q satsfes (c πa 1 )x q µ 0, and every extreme ray x p obeys (c πa 1 )x q 0. Snce every column â of  follows ether form (6.13) or (6.14), there are no columns wth negatve reduced costs, and the soluton of the restrcted master program s optmal. Secton 7.4 wll descrbe a subproblem whose polyhedron s only spanned up by extreme rays,.e. t does not have non-trval extreme ponts. Then upper bounds can be ntroduced on the varables of the subproblem, cuttng the rays. Note that any multple of an extreme ray represents the same ray. 127

144 6. Column Generaton and Branch-and-Prce restrcted master program lnear program dual prces columns prcng problem e.g. dynamc programmng, network flow models Fgure 6.1.: Column generaton process. When solvng model (6.5)-(6.9) by column generaton, we start from a restrcted master program whch guarantees a feasble soluton. The two-phase smplex algorthm can be used for ths purpose, or a known heurstc soluton can be entered as a startng soluton [Barnhart et al., 1998] [Desrosers and Lübbecke, 2003]. Note that the ntal dual values whch are used for column generaton wll be better when a good startng soluton s known. Alternatvely, a good dual soluton can be used to start the column generaton process, see du Merle et al. [1999], Lübbecke and Desrosers [2004]. The restrcted master program s then solved to optmalty, and the optmal dual values are transferred to the subproblem. If a column wth negatve reduced costs can be found, t s added to the RMP. The restrcted master program s then reoptmsed, resultng n new dual values for the subproblem. The algorthm termnates when no more columns wth negatve reduced costs are found. Fg. 6.1 shows the teraton between master program and subproblems. It s noteworthy that t s not necessary to fnd the column wth most negatve reduced costs as proposed by the Dantzg rule. Instead, any column wth negatve reduced costs s a canddate for mprovng the soluton and can thus be added to the master program. Column generaton algorthms tend to converge faster f several negatve reduced cost columns are added n each teraton [Desrosers et al., 1984] Block-Structured Lnear Programs Clearly, the separaton of the constrant matrx nto parts A 1 and A 2 should be guded by the problem structure. Dantzg-Wolfe decomposton s often appled to block-angular lnear programs n whch the constrant matrx exhbts the followng structure: A 1,1 A 1,2 A 1,K A 2,1 A 2,2... A 2,K (A 1,1... A 1,K )X = b 1 are then called couplng (or lnkng) constrants whle the subproblem defned by the block-dagonal matrx A 2 decomposes nto separate problems for each A 2,k. In fact, each of the constrant systems A 2,k X 2 b 2,k defnes a dstnct polyhedron on the set X k of decson varables correspondng to A 2,k (and b 2,k the correspondng rght-hand sde). Each 128

145 6.2. Block-Structured Lnear Programs such polyhedron can be separately represented by ts extreme ponts {x k q q Q k } and extreme rays {x k p p P k }, and the master program wll contan one convexty constrant q Q k λk q = 1 for each subproblem k. If the restrctons on all subsets are equal (.e. A 2,k 1 = A 2,k 2, b 2,k 1 = b 2,k 2 k 1 k 2 ), only one subproblem has to be solved, and the convexty constrants generalse to K k=1 p P k λk p = K [Barnhart et al., 1998]. As an example, the multcommodty flow problem (see e.g. [Ahuja et al., 1993]) gves rse to a block-structured lnear program. It was ths problem whch orgnally nspred Ford and Fulkerson [1958] to propose dealng mplctly wth the columns of a master program. As Desrosers and Lübbecke [2003] pont out, many problems n vehcle routng and crew rosterng have multcommodty flow problems as an underlyng structure. Other applcatons gve rse to block-structured lnear programs as well, see Lübbecke and Desrosers [2004] for an overvew. In the context of block-structured programs, the decomposton prncple has an nterestng economc nterpretaton as decentralsed plannng wth ncomplete nformaton at the centre, see Lasdon [1970] and Chvátal [1983]. Whle Dantzg and Wolfe orgnally supposed the subproblems to be solved by lnear programmng, column generaton does not prescrbe the prcng method. Subproblems can often be naturally formulated as shortest path problems or resource-constraned shortest path problems whch are usually solved by dynamc programmng or network flow algorthms [Vanderbeck, 2000] [Desaulners et al., 2001]. Not always s column generaton the result of applyng Dantzg-Wolfe decomposton. As an example, Glmore and Gomory [1961] orgnally proposed ther column generaton scheme for the cuttng stock problem wthout any reference to a compact formulaton. Vlleneuve et al. [2003] have recently shown that under relatvely mld condtons, a compact formulaton exsts for every column generaton model. However, the compact formulaton does not need to be unque, cf. Valéro de Carvalho [2002]. Even f a column generaton formulaton s sometmes more natural, the compact formulaton can gve addtonal nsght for the nteger soluton of column generaton models as wll be seen n the sequel. Column generaton models often avod problem symmetres whch are dffcult to crcumvent n the compact formulaton [Barnhart et al., 1998]. As an example, the straghtforward compact formulaton for the cuttng stock problem whch s due to Kantorovch [1960] exhbts strong symmetry whch s not present n the column generaton formulaton [Valéro de Carvalho, 2002]. Another example for avodng symmetres by column generaton wll be gven by the rosterng applcaton n Chapter 9. Another argument for column generaton models s the qualty of the LP lower bound whch s partcularly mportant when solvng nteger models by branch-and-bound. Snce column generaton models result from a reformulaton, ther LP bounds are at least as good as n the compact formulaton. For many problems, the column generaton bounds are substantally tghter due to the ncorporaton of ntegralty constrants n the subproblem. Agan, the cuttng stock problem provdes a good example: Whle the Kantorovch model provdes a poor LP bound (as shown by Valéro de Carvalho [2002]), the column generaton formulaton s known to be very tght, provdng an approprate bass for exact soluton approaches by branch-and-bound, see e.g. Vance et al. [1994]. In fact, the subproblems of the cuttng stock problem are solved as knapsack problems, meanng that the column generaton only admts lnear combnatons of nteger solutons to the subproblems. If however the subproblem s naturally nteger,.e. the LP relaxaton only yelds nteger solutons, the bounds of the compact and column generaton formulaton concde [Geoffron, 1974]. 129

146 6. Column Generaton and Branch-and-Prce 6.3. Branch-and-Prce So far, we have focused our attenton on the decomposton of lnear programs whch often arse as LP relaxatons of dscrete optmsaton problems. When Dantzg-Wolfe decomposton s appled to nteger programs whch are to be solved by LP-based branch-and-bound, t does not suffce to generate columns at the root node. The ntal column set may not provde an optmal nteger soluton or even an nteger-feasble soluton. We must therefore generate columns throughout the search tree [Desaulners et al., 2001]. It s nterestng to note that not only s column generaton requred after branchng, but branchng may also be requred n order to generate all potental varables n the subproblem, see Vlleneuve et al. [2003] for an example. The combnaton of branch-and-bound wth column generaton s known as branch-and-prce or nteger column generaton [Barnhart et al., 1998] [Vanderbeck and Wolsey, 1996] [Vanderbeck, 2000]. The frst applcaton of branch-and-prce for a routng problem was presented by Desrosers et al. [1984]. Snce ths frst publcaton, many authors have descrbed successful branch-andprce mplementatons, see Lübbecke and Desrosers [2004] for a survey. Applcaton areas nclude routng and schedulng (see Desrosers et al. [1984], Desrochers et al. [1990], Dumas et al. [1991], Desrochers et al. [1992] and for an overvew Desrosers et al. [1993]), the aforementoned cuttng stock problem (e.g. Vance et al. [1994]), crew parng and rosterng (e.g. Desrochers and Soums [1989], Ryan [1992], Vance et al. [1997], Gamache et al. [1999]), tour schedulng (e.g. Mason and Smth [1998], Mason and Nelsen [1999], Mason [1999]) and generalsed assgnment (Savelsbergh [1997]). A man focus of branch-and-prce research s on the desgn of branchng rules. Appelgren [1969] was the frst to note that classcal varable branchng s not compatble wth column generaton. Assume that n a bnary problem (lke e.g. crew schedulng), a varable X j takes on a fractonal value 0 < f < 1 n the relaxed optmal soluton. Branchng by varable dchotomy would then enforce X j = 0 on one branch and X j = 1 on the other. The 0 branch corresponds to forbddng the varable to be part of the soluton. In column generaton, however, the subproblem s lkely to create ths varable agan after branchng. Ths clearly has to be prevented. After n branchng decsons, n varables must be forbdden f we follow the 0 branches. Ths s generally not easy to represent n the subproblem structure. If e.g. the subproblem s a shortest path problem, we must forbd whole paths to be generated. Varable branchng therefore destroys the subproblem structure and s generally regarded ncompatble wth column generaton [Barnhart et al., 1998]. One of the most frequently appled branchng rule n nteger column generaton s Ryan-Foster constrant branchng [Ryan and Foster, 1981] whch apples to bnary set parttonng problems. Applcatons of set parttonng models nclude the aforementoned crew schedulng, cuttng stock and vehcle routng problems. Let A be the bnary constrant matrx of the restrcted master program of a set parttonng formulaton, and suppose that the basc soluton λ to Aλ = 1, λ 0 s fractonal. Then there exst two rows r, s such that 0 < λ k < 1, k:a rk =1,a sk =1 see Ryan and Foster [1981] for a proof. When we have determned two such rows r, s, we can enforce k:a rk =1,a sk =1 λ k = 0 on one of the branches (e.g. the left branch) whle on the rght branch, we set k:a rk =1,a sk =1 λ k = 1. Consequently, we enforce the two tems correspondng to r and s to be covered by the same varable on the rght branch whle on the left branch, r and s must be covered by dfferent varables. In general, ths rule can be easly transferred to the subproblem by an adaptaton of the underlyng graph structure, see Barnhart et al. [1998]. Applcatons of ths branchng rule can e.g. be found n Desrochers and Soums [1989], Dumas et al. [1991], Ryan [1992], Anbl et al. [1992] and Vance et al. [1994]. The basc dea of Ryan- 130

147 6.4. Lower Boundng Foster branchng can also be transferred to set coverng problems f only rows are consdered for whch the coverng constrants are fulflled at equalty, see Grönkvst [1998]. Generalsatons to non-bnary nteger programs and general rght-hand sdes can be found n Vanderbeck and Wolsey [1996] and Vanderbeck [2000]. However, these nteger branchng rules suppose the subproblems to be solved by mxed nteger programmng whch can be very costly. More generally, t has been proposed to branch on the varables of the compact formulaton, see e.g. Gamache et al. [1999] and Vlleneuve et al. [2003]. In fact, the orgnal varables are part of the subproblem, meanng that branchng decsons on these varables can be easly transferred to the subproblem wthout destroyng ts structure. Ryan-Foster branchng s a specal case of ths general rule when the rows r, s correspond to adjacent nodes n a flow formulaton wth branchng appled to the varable representng the flow between r and s Lower Boundng Assumng that we are gven a mnmsaton problem, the soluton value at a branch-and-prce node only represents a lower bound f no more columns wth negatve reduced costs can be found,.e. when we have solved the LP relaxaton. Lasdon [1970], Farley [1990] and Vanderbeck and Wolsey [1996] descrbe lower bounds on the fnal objectve functon whch can be calculated before column generaton has termnated. As we wll see, these lower bounds can be used to termnate column generaton even f negatve reduced cost columns are stll avalable. The lower bound of Lasdon [1970] does not make specal assumptons on the type and structure of the lnear program. However, Lasdon s descrpton only apples to the case of dfferent restrctons on the subsets,.e. A 2,k 1 = A 2,k 2, b 2,k 1 = b 2,k 2 k 1 k 2 (see Secton 6.2). Furthermore, Lasdon assumed that convexty constrants q Q k λk q = 1 are present n the master program whch s not the case f the subproblem polyhedra are only spanned up by extreme rays. In the followng, we wll show how the Lasdon bound can be generalsed to the case of dentcal restrctons on the subsets when an upper bound on the sum of the varables s known. We therefore formulate the master program as mn z = k K c k pλ k p (6.15) p P subject to k K p P k â k pλ k p = b (6.16) λ k p 0 (6.17) wth â k p denotng the master program column correspondng to varable λ k p. Furthermore, we assume that we know an mplct bound L on the sum of the varables: k K p P k λ k p L (6.18) We multply the constrants (6.16) by ther dual values π R m and subtract ther sum from (6.15), gvng z πb = λ k p(c k p πb) (6.19) k K p P k 131

148 6. Column Generaton and Branch-and-Prce The value c k p πb =: c k p s exactly the reduced cost of varable p n subproblem k. The k th subproblem n fact calculates mn p P k c k p. Usng ths mnmum n (6.19), we obtan z πb ( ) λ k p mn ck k K p P k p P k p = z πb ( ) mn ck p P k K k p λ k p p P k = z πb mn c k p λ k p k K p P k k K p P k where mn k K c k p s easly calculated by a mnmsaton over the optmal solutons of the subproblems. Usng the upper bound L (equaton (6.18)), we can deduce p P k z mn c k p L + πb k K p P k Because ths nequalty holds for every value of z whch can be obtaned from (6.15)-(6.17), t s also vald for the mnmum value of z. We therefore have mn z mn c k p L + πb (6.20) k K p P k From LP dualty theory, we know that πb s the objectve functon value z B of the current bass. Inequalty (6.20) therefore expresses that z lb := z B + mn c k p L k K p P k s a lower bound on the fnal objectve functon whch can be easly calculated from the data whch s avalable at each column generaton teraton. Assume that the objectve functon value of an nteger soluton to (6.15)-(6.17) s always nteger. We can then termnate column generaton as soon as z lb z B because generatng further columns wll not mprove the lower bound nformaton at the current node. Ths sometmes help to avod the so-called talng-off effect whch descrbes the slow convergence of column generaton algorthms near the optmum [Lübbecke and Desrosers, 2004]. If we know an upper bound z ub on the optmal objectve functon value of (6.15)-(6.17), we can furthermore prune the current branch f z lb z ub. Farley [1990] proposes another lower bound for a specal class of lnear programs wth only constrants and non-negatve objectve functon coeffcents. The bound of Vanderbeck and Wolsey [1996] s a mnor strengthenng of Lasdon s bound for dentcal subproblems when lower and upper bounds on the decson varables are known Lagrangan Relaxaton Whle column generaton s an ntrnscally prmal method, Lagrangan relaxaton can be regarded an equvalent dual method whch s often used to solve nteger programs [Geoffron, 1974] 132

149 6.6. Convexfcaton versus Dscretsaton [Lemaréchal, 2001]. Several researchers have compared column generaton and Lagrangan relaxaton, see e.g. Lübbecke and Desrosers [2004]. The dea of Lagrangan relaxaton appled to nteger programs s to relax a set A 1 X b 1 of constrants whch are ntegrated nto the objectve functon, weghted by a vector u 0 of Lagrange multplers. Ths results n the Lagrangan subproblem L(u) := mn X X ct X u T (A 1 X b 1 ) (6.21) wth X := {X A 2 X b 2, X 0, X nteger}. Solvng (6.21) s algorthmcally equvalent to solvng the subproblem descrbed above wth the dual values replaced by Lagrange multplers. L(u) s a lower bound on the optmal value z of the above problem snce L(u) mn(c T X u T (A 1 X b 1 ) A 1 X b 1 ) z. The best lower bound can be found by solvng the Lagrangan dual problem: L := max L(u) (6.22) u 0 Imagne that the best set u of dual multplers has been determned by solvng (6.21). Accordng to the defnton of the Lagrangan subproblem, we have A 2 X b 2 and by complementary slackness, t can be shown that u T (A 1 X b 1 ) = 0. We only have to check that A 1 X b 1. If one of these constrants s volated, prmal feasblty must be recovered by some approprate repar algorthm [Desrosers and Lübbecke, 2003]. The Lagrangan dual (6.22) s most often solved by subgradent optmsaton whch s smple and easy to mplement, see e.g. Geoffron [1974]. More recent proposals nclude bundle methods [Hrart-Urruty and Lemaréchal, 1993] and the analytc centre cuttng plane method [Goffn and Val, 2002]. Alternatvely, magne that X s replaced by conv(x ) whch does not change the optmal soluton value. Ths turns the Lagrangan dual nto a lnear program. In fact, the Lagrangan dual wll yeld the same value as the lnear program above [Geoffron, 1974], and the optmal Lagrange multplers wll correspond to the dual varables of the restrcted master program [Barnhart et al., 1998]. Lagrangan relaxaton and column generaton are therefore equvalent, and the choce for one of these methods s manly due to performance ssues. Whle for a long tme, Lagrangan relaxaton has found wde-spread use, column generaton s nowadays consdered superor due to the advent of effcent smplex codes [Barnhart et al., 1998]. However, there are approaches to combne column generaton wth Lagrangan relaxaton [van den Akker et al., 2002], and dual solutons obtaned by Lagrangan relaxaton can be useful to start column generaton [Lübbecke and Desrosers, 2004] Convexfcaton versus Dscretsaton In Dantzg-Wolfe decomposton, the soluton space of a constrant subset s represented by a convex-lnear combnaton of the extreme ponts and rays. When solvng nteger programs, we wll usually clam the subproblem solutons (.e. the extreme ponts and rays) to be nteger. The underlyng soluton space s then a convexfcaton of all nteger feasble solutons [Lübbecke and Desrosers, 2004]. The optmal nteger soluton can be stuated n the nteror of the soluton space, beng a convex-lnear combnaton of the extreme ponts and rays. We wll therefore only requre ntegralty on the orgnal varables whle the derved varables λ q and λ p can stll be fractonal. Imagne the multcommodty flow problem wth the subproblem beng a shortest path problem (see e.g. Assad [1978]). The elementary paths generated by the subproblem are combned to complex flows n the master program. Integralty s only requred on the orgnal flow varables. If we are nterested n the ndvdual paths, these ntegral flows can be recomposed accordng to 133

150 6. Column Generaton and Branch-and-Prce the flow decomposton theorem (e.g. Ahuja et al. [1993]). Note that these derved paths need not be dentcal wth the paths whch are generated as subproblem solutons. In other problems however, we may want the new varables λ q and λ p to be nteger. As ponted out by Vanderbeck [2000], the resultng program s not equvalent to the convex program defned above. As opposed to convexfcaton, the decomposton wll be based on a dscretsaton of the soluton space. Effectvely, the subproblem must be able to generate nteror nteger ponts of the soluton space. The decomposton s then based on the followng theorem (see Nemhauser and Wolsey [1988]): Theorem 2. Let P := {X R n A 2 X b 2, X 0} and X = P Z n. Then there exsts a fnte set of nteger ponts {x q } q Q and a fnte set of nteger rays {x p } p P of P such that X = x q λ q + x p λ p λ q = 1, λ N Q + P 0 q Q p P q Q Ths theorem s the nteger analogon of the theorems of Weyl and Mnkowsk, and the decomposton based on dscretsaton s analogous to Dantzg-Wolfe decomposton. In the specal case of an empty set of nteger rays, all of the λ q, q Q wll be bnary, and solvng the master program s equvalent to selectng one of the subproblem solutons. Note that as long as the lnear programmng relaxaton s solved, convexfcaton and dscretsaton concde. Furthermore, f the orgnal varables are bnary, both approaches are equvalent snce the soluton space does not nclude nteror ponts [Lübbecke and Desrosers, 2004]. Whle the dstncton between convexfcaton and dscretsaton s theoretcally mportant, t s often neglected n practce. Effectvely, enforcng ntegralty on the orgnal varables often entals ntegralty on the derved varables. The desgn of branch-and-prce algorthms mostly ams at developng branchng rules whch are emprcally suffcent n order to produce nteger solutons, see Mason [1999] for an example Advanced Performance Issues In recent years, several technques have been proposed to speed up column generaton and branchand-prce algorthms, see Desaulners et al. [2001] for a survey. Some approaches have already been mentoned, e.g. usng heurstc prmal or dual solutons as a startng pont. Furthermore, we have descrbed n Secton 6.4 how lower bounds can be used for early termnaton of column generaton. A further speedup dea conssts n fxng the orgnal varables of the compact formulaton by usng lower and upper bounds. As Desrosers and Lübbecke [2003] note, dual varable nformaton on the orgnal varables whch s not avalable n the master program can be obtaned from the ultmate soluton of the prcng problem before reachng the optmum. Fxng orgnal varables corresponds to reduced-cost fxng n lnear programmng, see Padberg and Rnald [1991]. Another approach whch has newly attracted attenton n general mxed nteger programmng s the use of cuttng planes, see Johnson et al. [2000], Martn [2001] and Marchand et al. [2002]. The combned use of cuttng planes and branchng s known as branch-and-cut, and addng column generaton results n branch-and-prce-and-cut approaches. Cuttng planes generally help n fndng good lower bounds [Barnhart et al., 1998]. Up to now, only lttle publcatons on branchand-prce-and-cut applcatons have been publshed, see Nemhauser and Park [1991], Kohl et al. [1999] and Barnhart et al. [2000]. As Irnch [2002] notes, all of these approaches restrct cuttng planes to be separated after prcng has converged. Combnng prcng and cuttng plane separaton n a more flexble way (e.g. ncludng lftng of cuttng planes [Marchand et al., 2002]) wll certanly be subject of future research. 134

151 6.7. Advanced Performance Issues Column generaton corresponds to cut generaton n the dual program and s thus equvalent to Kelley s cuttng plane method for the dual model [Kelley, 1960]. Valéro de Carvalho [2002] has proposed to ntroduce addtonal dual cuts,.e. cuts whch are vald for the dual model, representng varables of the prmal formulaton. In an applcaton for the cuttng stock problem, he has shown how dual cuts wth an ntutve nterpretaton speed up column generaton. Whle the defnton of dual cuts depends on the problem, t may be possble to transfer ths dea frutfully to other applcatons. It has been observed that dual values often do not converge smoothly, and oscllatons prevent column generaton from a fast convergence [Lübbecke and Desrosers, 2004]. Ths has led to the proposton of dfferent stablsaton technques. The dea of the BOXSTEP method of Marsten et al. [1975] s to restrct dual values to a box around ther current values. If the new duals are stuated on the boundary, the box s relocated. Otherwse, the optmum has been reached n the nteror of the box. Wentges [1997] and Neame [2000] stablse the evoluton of dual values by usng a convex combnaton of the current dual values and the values of the precedng teraton. Du Merle et al. [1999] propose a combnaton of prmal and dual strateges. As n the BOXSTEP approach, a box s put around the dual values; exceedng the bounds s allowed but penalsed. These penaltes translate nto perturbatons for the prmal constrants, and volatng the constrants s penalsed as gven by the lmts on the dual varables. By dynamc updates, devatons from the orgnal model are drven out of the soluton. As column generaton and branch-and-prce algorthms are actve felds of research, further acceleraton deas wll certanly come up n the future. 135

152 6. Column Generaton and Branch-and-Prce 136

153 7. Optmal Shft Plannng by Branch-and-Prce That s the trouble wth flyng: We always have to return to arports. Thnk of how much fun flyng would be f we ddn t have to return to arports. Henry Mnzburg In Chapter 5, we have ntroduced complex task-level shft plannng whch combnes elements from shft schedulng and vehcle routng. The problem was complcated by preemptve tasks as well as crew and qualfcaton constrants. In ths chapter, a subclass wll be tackled, consstng n coverng a gven set of non-preemptve tasks wth fxed start tmes by approprate shft dutes. Smplfed shft plannng therefore combnes classcal shft schedulng wth elements from vehcle schedulng and can be nterpreted as a specalsed multple depot vehcle schedulng problem (MDVSP). We wll show that smplfed shft plannng s N P-hard n the strong sense whch also proves that general task-level shft plannng s N P-hard. Furthermore, we wll use Dantzg-Wolfe decomposton to derve a branch-and-prce algorthm whch solves many real-world test cases to proven optmalty whle consumng moderate computaton tmes Introducton General task-level shft plannng as descrbed n Chapter 5 s a complex optmsaton problem. It can nvolve movable tasks, preemptve tasks, crew constrants as well as qualfcaton and shftlevel restrctons. The mprovement algorthm of Chapter 5 was desgned to tackle all of these constrants, provdng a means for generatng robust solutons for a multtude of scenaros. Whle all of these features can be helpful n general arport ground handlng, practcal shft plannng often nvolves only a small subset of the modellng aspects. As an example, many plannng scenaros comprse only tasks whch are fxed n tme. Task splttng s often helpful for the plannng of passenger servces (lke check-n, boardng and tcketng) whle on the apron, handlng tasks usually have short duratons, and task nterruptons are not desred. Smlarly, crew plannng s often used for arcraft cleanng personnel whle most other arports servces can be scheduled wthout any parallelsm constrants. Fnally, severe qualfcaton restrctons are usually only mposed n the plannng of hghly specalsed servces lke operatons departments. Ths justfes the search for specalsed algorthms for a smaller class of shft plannng problems, explotng specal structures whle stll beng suffcently general. In ths chapter, we wll restrct our attenton to shft plannng wth tasks whch are non-preemptve and fxed n tme. Furthermore, task overlappng, crew plannng, qualfcatons as well as break buffers and relatve shft number restrctons wll not be supported. The resultng shft plannng problem thus conssts n coverng tasks of gven start tmes and lengths by a cost-mnmal set of shfts whch can be of any of the gven types. Note that whle work tasks are fxed n tme, we can have several movable breaks n each shft. Travel tmes wll 137

154 7. Optmal Shft Plannng by Branch-and-Prce be consdered, and absolute mnmum and maxmum restrctons can be mposed on arbtrary sets of shft types. Whle the general shft plannng of Chapter 5 s based on the vehcle routng problem wth tme wndows (VRPTW), the fxed task case s called the vehcle schedulng problem (VSP) [Desrosers et al., 1993]. Addtonally to the basc VSP settng, shft types restrct the start and end tmes of tours. Each shft type can be regarded as a depot, mposng temporal restrctons on the departures and arrvals of vehcles. Fxed task shft schedulng can thus be regarded a specal case of the multple depot vehcle schedulng problem (MDVSP). In Chapter 5, t was shown that some shft plannng nstances are dffcult to tackle by local mprovement. Ths s especally the case f few shft types are used or shft costs are ndependent from ther lengths. Then very large neghbourhoods must be reoptmsed n order to acheve mprovements, and mprovng sets of tasks are dffcult to fnd. Our goal wll be the development of an algorthm overcomng these defcences whch are typcal of local search approaches. The local mprovement algorthm presented n Chapter 5 dd not make assumptons on the structure of the problem nstances. In fact, the complexty of local steps depends more on the neghbourhood sze than on the scale of the overall scenaro. In practce, a consderable number of arports must obey nght flyng restrctons. Addtonally, there may be tme perods of low workload wthn the days. In both cases, realstc scenaros may naturally decompose nto separate days or even smaller plannng horzons. Ths can be exploted by decomposton, makng the separate problems amenable to an exact soluton approach. The algorthms of Chapters 4 and 5 were based on constrant programmng. As descrbed n Secton 3.1, CP has ts orgns n the soluton of constrant satsfacton problems. Wth a focus on feasblty aspects, t s a technque whch s approprate for problems whch are strongly constraned or whch nvolve non-lnear restrctons or objectves. In contrast, lnear programmng whch s the predomnant optmsaton method n the Operatons Research communty s especally powerful n tacklng cost aspects whle t s lmted n the ncorporaton of complex and non-lnear sde constrants. For extensve comparsons of strengths and weaknesses of CP and LP approaches, the reader s referred to Hepcke [1999] and Lustg and Puget [2001]. In ths chapter, an nteger programmng approach for the smplfed shft plannng problem s developed. It wll be shown how the structure of a compact network flow formulaton of the smplfed shft plannng problem can be exploted by Dantzg-Wolfe decomposton. The resultng column generaton model wll be solved by repeated teratons between a master program and subproblems. By branchng on the orgnal flow varables, nteger solutons can be effcently obtaned n a way whch s compatble wth the subproblems. In order to generate optmal solutons, column generaton s appled throughout the search tree. As wll be shown, real-world shft plannng problems often decompose nto several components whch can be optmsed separately. Even f smplfed shft plannng s shown to be N P-hard, the branch-and-prce approach s able to provde optmal solutons for many real-world test cases n reasonable tmes. Throughout the chapter, bascally the same notatons as n Chapter 5 wll be used. Each work task I wll be gven along wth a start tme a = b and a length l. Between two tasks, j, a travel tme of d,j tme unts must be performed. Travel tmes can be asymmetrc, but are assumed to obey the trangle nequalty. Shfts start and end at a central depot, and breaks take place at the locaton of ther predecessor work task. Day ndces n wll be omtted from the formulaton, assumng that gven problems span over only one day. The generalsaton to several days s straghtforward and wll be presented n Secton 7.7. A shft type k K wll thus be charactersed by a start tme st k, an end tme et k and costs c k. An absolute shft number restrcton r Rabs mn (r Rmax abs ) mposes a mnmum (maxmum) lmt of m r N shfts on a shft type set K r. For ease of exposton, we wll assume that all shft number restrctons are hard constrants and can be obeyed. Imposng penaltes for exceedng maxmum lmts as n Chapter 5 wll be straghtforward. We wll furthermore suppose that all 138

155 7.2. Computatonal Complexty tasks can be covered by shfts. The presentaton wll be structured as follows: Secton 7.2 shows that smplfed shft plannng s N P-hard. Secton 7.3 presents a flow formulaton for smplfed shft plannng whch s submtted to Dantzg-Wolfe decomposton n Secton 7.4. In Secton 7.5, t s shown how the reformulated problem can be solved by column generaton. Integer branchng s the subject of Secton 7.6. Secton 7.7 shows how realstc shft plannng scenaros can often be decomposed nto ndependent optmsaton problems. Expermental results are gven n Secton 7.8, and a summary (Secton 7.9) concludes the presentaton Computatonal Complexty The smplfed shft plannng problem can be nterpreted as a specal multple depot vehcle schedulng problem (MDVSP) [Desrosers et al., 1993] wth the depots correspondng to orgndestnaton pars for each shft type. The general MDVSP s known to be N P-hard, see Bertoss et al. [1987] or the alternatve proof of Löbel [1997]. Stll we cannot conclude that the smplfed shft plannng problem s N P-hard because t exhbts a specal cost and depot structure whch may render the problem easy. We wll therefore show the N P-hardness of smplfed shft plannng n the sequel. The proof wll be based on a reducton from the ONE-IN-THREE 3SAT problem wth unnegated lterals whch can be stated as follows: Gven numbers q 3 and p 1, a set U := {u 0,..., u q 1 } of q boolean varables and a set C := {C 0,..., C p 1 } of p clauses over U such that each C h C has only unnegated varables (lterals) and C h = 3 h, s there a truth assgnment tr : U {true, false} such that each clause C h C has exactly one true varable? The ONE-IN-THREE 3SAT problem wth unnegated lterals s known to be N P-hard n the strong sense [Garey and Johnson, 1979]. Theorem 3. The smplfed shft plannng problem s N P-hard n the strong sense even f no travel tmes, shft restrctons or breaks are present. Proof. We wll frst prove that smplfed shft plannng s N P-hard. We therefore have to show how a shft plannng problem can be constructed for a gven nstance of the ONE-IN-THREE 3SAT problem wth unnegated lterals. The tme axs wll be structured nto tme slces of 2q tme unts for each clause C h, startng at tme 0. An addtonal perod of 2(p 1)q + 1 tme unts s added after the end of the clause tme slces. Furthermore, one tme unt s added before start tme 0,.e. the tme scale starts at 1. Note that tmes could be made postve by addng one tme unt. The task set I wll be made up of a dsjont unon of lteral tasks I lt, fllng tasks I fll and clause tasks I cl : For each varable u g occurrng as a lteral n clause C h, a lteral task I lt wth start tme a := 2hq + g and length l := q s created. The set of lteral tasks correspondng to a varable u g wll be denoted by I lt g. If varable u g occurs as a lteral n clause C h1 and ts next occurrence s n C h2, a fllng task I fll wth start tme a := (2h 1 + 1)q + g and length l := (2(h 2 h 1 ) 1)q s created,.e. s a task whch starts at the end of one lteral task and ends at the start of the next lteral task of the same varable. If u g occurs n C h1 for the frst tme, a fllng task I fll wth start tme a := 1 and length l := 2h 1 q + g + 1 s created,.e. starts at 1 and ends at the start tme of the frst lteral task of the u g. If u g occurs n C h2 for the last tme, a fllng 139

156 7. Optmal Shft Plannng by Branch-and-Prce C 0 C 1 u 0 u 1 u 2 clause tasks lteral and fllng tasks u 3 T shft types F shft type fllng shft types C 0 C 1 Fgure 7.1.: Buldng blocks of shft plannng problem for varable set U := {u 0, u 1, u 2, u 3 } and clauses C := {{u 0, u 1, u 2 }, {u 0, u 1, u 3 }}. task I fll wth start tme a := (2h 2 + 1)q + g and length l := (2(p h 2 ) 1)q g s created,.e. starts at the end of the last lteral task and ends at 2qp. The set of all fllng tasks for a task u g wll be denoted by Ig fll. For each clause C h, a clause task I cl wth a := 2(h + 1)q 1 and length l := 2q(p 1) + 2 s created. The set K of shft types conssts of several T shft types K T, a sngle F shft type k F and fllng shft types K fll : For each clause C h, a T shft type k K T s created wth start tme st k := 2hq and end tme et k := 2(p + h)q + 1. The F shft type k F has start tme st k F := 1 and end tme et k F := 2pq. For each fllng task I fll, there s a fllng shft type k K fll whch exactly covers the fllng task,.e. t has st k := a and et k := a + l. The cost c k of each shft type k K s defned to equal ts length et k st k. It should be clear that ths transformaton s polynomal. Fgure 7.1 llustrates the shft plannng problem whch results from ONE-IN-THREE 3SAT problem wth U := {u 0, u 1, u 2, u 3 } and C := {{u 0, u 1, u 2 }, {u 0, u 1, u 3 }} (example taken from Löbel [1997]). The upper part gves the clause tasks (blue) for each C h C and the blocks Ig lt Ig fll of lteral (red) and fllng tasks (green) for each u g U. The shft types (each of whch can be used by several shfts) are gven by grey bars n the lower part. On the vertcal axs, the tme slce of 2q = 8 tme unts for each clause C h are sketched. The problem s well-defned snce all of the tasks can be covered by shfts. Some deas of the constructon shall be gven: The sets of lteral and fxng tasks Ih lt Ifll h for a varable h exactly ft nto a shft of the F shft type k F wthout any watng tme. Alternatvely, fllng tasks can be covered by ther correspondng fllng shft type wthout any watng tme. 140

157 7.2. Computatonal Complexty C 0 C 1 Fgure 7.2.: Soluton of cost 2(p 2 q + pq 2 ) pq + p + q = 94 for the example. At a pont n tme at whch a lteral task Ih lt ends, no other tasks from Ilt I fll end. There s exactly one fllng task from I fll h whch starts at ths pont n tme, and no other lteral or fllng tasks start at ths tme. Smlarly, there s at most one fllng task whch ends at each pont n tme. If I fll h s a fllng task whch s not a fnal fllng task (endng at 2pq), then there s exactly one task n I lt I fll startng at ths tme, namely a lteral task Ih lt. Two observatons follow: 1. None of the lteral tasks I lt can be covered wthout watng tme by a fllng shft type. s covered by the F shft type kf, watng tme can only be created for the 2. If a lteral task Ih lt avoded f the shft contans all of the lteral and fllng tasks I lt varable u h. h Ifll h Each par, j I lt of lteral tasks pertanng to the same clause overlaps by at least one tme unt,.e. lteral tasks of a clause cannot be covered by the same shft. Each clause task can only be covered by exactly one of the T shft types and none of the other shft types. Coverng a clause task by a T shft type leaves a gap whch can be used to cover further tasks. The gap s equal to the tme slce for the correspondng clause,.e. t starts at 2kq and has a length of 2q 1. Only lteral tasks ft nto ths gap note that fllng tasks always cover the tme perod 2k q 1 for a k. Snce lteral tasks of a clause C k always cover perod (2k + 1)q 1, no more than one lteral task wll ft nto the gap. T shft types cannot cover tasks wthout watng tmes. Wth these observatons, t s easy to see that the total work task mnutes amount to (2pq + 1)q + p(2q(p 1) + 2) = 2(p 2 q + pq 2 pq + p) + q. It s now clamed that there exsts a soluton of cost 2(p 2 q + pq 2 ) pq + p + q for ths shft plannng problem f and only f the gven nstance (U, C) of the ONE-IN-THREE 3SAT problem wth unnegated lterals has a soluton. If. Suppose a varable assgnment tr : U {true, false} exsts such that each clause contans exactly one true varable. We then buld one shft for each of the p clause shft types. The shft for clause C h covers the task whch corresponds to the true lteral n the respectve clause and the only clause task whch fts nto the shft type. Each fllng tasks Ig fll whose varables u g s assgned the value true s matched to ts fllng shft type wthout any watng tme. The blocks Ig lt Ig fll of tasks for all g wth tr(u g ) = false are assgned to shfts of the F shft type k F, agan wthout any gaps. Now all tasks are covered. Fgure 7.2 shows the shft plan for the above example wth U := {u 1, u 2, u 3, u 4 }, C := {{u 1, u 2, u 3 }, {u 1, u 2, u 4 }}. 141

158 7. Optmal Shft Plannng by Branch-and-Prce The only watng tme n the plan stems from the clause shft types and amounts to p(q 1). Because the cost of the shft types s equal to ther lengths, the cost of the resultng shft plan s the sum of work and watng tme: (2(p 2 q +pq 2 pq +p)+q)+p(q 1) = 2(p 2 q +pq 2 ) pq +p+q. Only f. Imagne an optmal shft plan of cost 2(p 2 q + pq 2 ) pq + p + q for the above shft plannng scenaro. We wll show that we can deduce a truth assgnment for the ONE-IN-THREE 3SAT problem such that each clause has exactly one true lteral. For coverng the clause tasks, the shft plan must contan at least one shft of each T shft type, amountng for costs of p(2pq + 1). By constructon, the clause shfts can addtonally cover one lteral task at most (and only lteral tasks). These tasks wll be the lterals whch are assgned the value true. Note that each T shft type corresponds to a dfferent clause. Even f all of the gaps of the p shfts wth T shft types are used for coverng lteral tasks, the remanng tasks wll amount to (2(p 2 q + pq 2 pq + p) + q) p((2q(p 1) + 2) + q) = 2pq 2 pq + q task mnutes. Because we have already used shfts of cost p(2pq + 1), these must be covered by shfts of maxmum costs 2(p 2 q + pq 2 ) pq + p + q (2p 2 q + p) = 2pq 2 pq + q,.e. the remanng shft costs equal the remanng task mnutes. On the one hand, ths means that we cannot have more than the p shfts of the T shft types because these always ental watng tmes. Consequently, exactly one lteral n each clause wll be assgned the value true. On the other hand, t means that all other lteral tasks are assgned to F shfts together wth ther fllng tasks. We wll assgn the value false to all lterals correspondng to these lteral tasks. Snce we cannot afford watng tmes, all tasks n I lt g 1 wll be assgned to the s not covered by an can be covered by an F shft,.e. we assgn consstent values to same shft f u g1 wll be assgned the value false. If thus a lteral task I lt g 2 F shft, none of the tasks n I lt g 2 for a varable u g2 wth tr(u g2 ) = true can be covered wthout watng tmes by ther fllng shft types. Snce the proof does not make use of travel tmes, shft restrctons or breaks, ths shows that even basc shft plannng s n fact N P-hard. To show that smplfed shft plannng s N P-hard n the strong sense, we have to prove that even f the szes of all enttes are polynomally bounded n the length of the nput, the problem remans N P-hard, see e.g. Hromkovč [2001, p. 151]. We frst note that the ONE-IN-THREE 3SAT problem wth unnegated lterals s N P-hard n the strong sense snce t does not nvolve any numbers [Garey and Johnson, 1979]. The only numbers whch are nvolved n shft plannng wthout travel tmes are the lengths of tasks and shfts. But n the above proof, tasks and shfts have maxmum duratons of 2pq + 1. Lengths are therefore bounded by a polynomal n the nput length, showng that smplfed shft plannng s N P-hard n the strong sense, see also Garey and Johnson [1979, Chapter 4]. all varables. Note that the fllng tasks I fll g 2 The proof uses the basc dea of Löbel [1997] of channg tasks (vsts) whch are consstently assgned the value false. However, Löbel s proof s based on the network structure of the multcommodty flow problem assocated wth a specal MDVSP arsng n duty schedulng of publc transport,.e. there s no temporal structure (and clearly no shfts or shft types) A Flow Model The smplfed shft plannng problem wll now be formulated as a network flow model. For ease of exposton, t wll frst be assumed that each shft type k K defnes exactly one break. Later, generalsatons to shft types wth several or no breaks are dscussed. The formulaton wll use a dstnct network G k for each shft type k. The constructon ensures that every path n the network for shft type k represents a vald shft of type k, coverng a (possbly empty) set of the tasks. For each task I, a start tme a and a length l are gven. Each shft type k K wll be delmted by an orgn task k o and a destnaton task k d wth fxed tme wndows [a k o, b k o ] = {st k} 142

159 7.3. A Flow Model and [a k d, b k d ] = {et k }, respectvely. The unque break task k b of shft type k has a length of l k b and a start tme wndow [a k b, b k b ] such that a k o a k b and b k b + l k b b k d. Note that n contrast to Chapter 5, depot and break tasks are defned per shft type (and not per shft). The network G k = (V k, E k ) for shft type k K s constructed as follows: The orgn and destnaton tasks of shft type k wll be represented by an orgn and a destnaton node v k o and v k d, respectvely. For each task I, one node s created for each poston n the shft (before or after the break) nto whch fts. A task fts between orgn and break task f a k o + d k o, a a + l b k b If ths condton s true, V k wll thus contan a node for. A further node s created f also fts between break and shft type end,.e. f a k b + l k b a a + l + d, k d b k d The set of nodes for task and shft type k s denoted by V k and wll be empty f does not ft nto k. For the break k b, one node s created for each possble predecessor task (ncludng the orgn task) and each start tme whch ths predecessor task admts. For each possble predecessor and each start tme n [max(a + l, a k), b b k], the break node set V k b b for shft type k wll thus contan one node. The multplcaton of break nodes by possble predecessors makes t possble to attrbute a break node to the locaton of ts predecessor. The constructon of the edge set E k s straghtforward. If v k and vk j are nodes for work tasks and j (v k V k, vk j V j k), then there s an edge (vk, vk j ) Ek f and only f a + l + d,j a j. If v k s a node for a task fttng nto the frst part of k (before the break), E k contans edges (vo k, v k) and (vk, vk b ) for each break node vk b whch was created for predecessor. If vk s a node for task and the poston n k after the break, edges (v k, vk d ) and (vk b, vk ) are ncluded n Ek f the predecessor task j and start tme t assocated wth vb k are such that t + l k + d j, a. To b allow for empty frst and second shft parts, E k contans all arcs (vo k, vb k) f vk b s a break node for predecessor vo k and edges (vb k, vk d ) for all break nodes vk b. The result of the constructon s a network ( ) G k = V k {vo k, vd k } V b k, Ek I for each shft type k. In the flow formulaton, all edges have a capacty of 1. An example can be found n Fg In the upper part of the fgure, three tasks and a shft type k are sketched. The shft type defnes a break whch must take place wthn a tme wndow (ncludng the break s length) as gven by the brackets. For compactness of presentaton, the tme axs s assumed to be dscretsed such that the break can only realze three dfferent start tmes. Whle tasks 1 and 3 only ft nto the frst and second part of the shft, respectvely, task 2 can be placed n ether part. Consequently, the network shown n the lower part contans two nodes 2a and 2b. For each admssble start tme and predecessor ( k o, 1 or 2a), the graph contans a break node. Note that the network does not contan any node b 2a 1 because task 2 does not allow for a break placement at ts frst possble poston. From the constructon, t should be clear that every unt flow (or path) from vo k to vd k n Gk represents a shft of type k, coverng some possbly empty set of tasks. In fact, t can be easly verfed that each path passes through a break node and travel tmes can be correctly covered. Furthermore, no path can pass through more than one node of a set V k because tasks are fxed n tme. The notons of paths and shfts wll thus be used nterchangeably n the sequel. 143

160 7. Optmal Shft Plannng by Branch-and-Prce break 2a 2a b 3 2a b 2 1 b 3 k v o 1 1 b 2 3 k v d 1 b 1 2b k o b 3 k o b 2 k o b 1 Fgure 7.3.: Network constructon example. If T W s the maxmum wdth of the break tme wndows (T W := max k b k b a k b + 1), the total number of nodes s n O( K I T W ),.e. the constructon s pseudo-polynomal n the break wndow szes. The number of break nodes can be somewhat reduced f several tasks take place at the same locaton. Then t suffces to multply the break nodes by predecessor locatons (nstead of by the predecessors themselves). When formulatng the shft plannng problem as a network flow model, we are nterested n the mnmsaton of shft costs. As a shft corresponds to a path from orgn node v k o to destnaton node v k d, the costs c k ncurred by shft type k can be attrbuted to the edges emanatng from the orgn node. The costs c k vw of an edge (v, w) E k wll thus be defned as c k vw := { c k f v = v k o 0 else The mnmsaton of shft costs s a regular objectve functon snce t does not depend on the task start tmes. For ths class of objectve functons, the networks above can be smplfed by creatng break nodes only for the earlest possble start tmes. In Fg. 7.3, the nodes b k o 2, b k o 3, b 1 2, b1 3 and b 2a 3 thus become redundant. The network flow model for the shft plannng problem combnes the flow formulatons for the dfferent shft types. The decson varables are the flows Xvw k on the edges (v, w) E k. Addtonally to flow restrctons, the model wll nclude absolute mnmum and maxmum shft number restrctons Rabs mn and Rabs max. A mnmum (maxmum) restrcton r Rmn abs Rmax abs mposes a lower (upper) lmt of m r N on the shfts of types n K r. If δ (v) and δ + (v) are the n- and outedges of a node v, the flow formulaton reads as mn c k vwxvw k (7.1) k K (v,w) E k 144

161 7.4. Dantzg-Wolfe Decomposton subject to (w,v) δ (v) k K v V k (v,w) δ + (v) k K r X k vw = 1 I (7.2) X k vo kw m r r Rabs mn (7.3) (vo k,w) δ+ (v o k) X k vo k w m r r Rabs max (7.4) k K r (vo k,w) δ + (vo k ) X k wv (v,w) δ + (v) Xvw k = 0 k K, v Vb k V k (7.5) I Xvw k 0 and nteger k K, (v, w) E k (7.6) Constrants (7.2) ensure that each task s covered exactly once by a shft. (7.3) and (7.4) are the mnmum and maxmum shft number restrctons, respectvely. Equatons (7.5) are the flow conservaton constrants for nner nodes of the networks. (7.6) mposes nonnegatvty and ntegralty on the flow varables. Note that the flow varables are generally non-bnary because n order to obey the mnmum restrctons (7.3), we may need several empty shfts of the same type. Model (7.1)-(7.6) s closely related to so-called three-ndex formulatons for vehcle routng problems [Toth and Vgo, 2001a]. Generalsng the model to shft types wth more than one break or no break at all s straghtforward. Note that f more than one break s present, addtonal node nstances for the possble postons (between the breaks, at the start or end of the shft) for each task must be created. Because we assume travel tmes to obey the trangle nequalty and the objectve does not depend on the gaps between the tasks, t s not necessary to restrct tasks to be covered exactly once. Effectvely, f a shft plan covers a task several tmes, we can smply take out all but one task nstance from the plan. The set parttonng constrants (7.2) can therefore be relaxed to set coverng constrants ( 1) [Toth and Vgo, 2001a] whch are numercally more stable [Barnhart et al., 1998] [Desaulners et al., 2001]. Lübbecke and Desrosers [2004] addtonally note that relaxng set parttonng to set coverng constrants halves the dual soluton space snce dual varables of coverng constrants are restrcted to be nonnegatve. Note that whle a soluton may cover some of the tasks more than once, an mnmum cost soluton wll never use multple nstances of a whole path. Equatons (7.1) through (7.6) descrbe an nteger multcommodty flow problem wth addtonal quanttatve restrctons [Assad, 1978] [Bertoss et al., 1987]. Actually, the shft types can be nterpreted as commodtes each of whch must be routed on a dedcated network. Constrants (7.2) through (7.4) are couplng constrants whch potentally span over all of the ndvdual flow models (block [A 1 A K ]X b n Fg ). In contrast, the flow constrants 7.5 are local to the flow models. The constrant system thus has a blockangular structure (blocks B k X = 0 n Fg. 7.4) wth dfferent restrctons on the subsets, cf. Secton Dantzg-Wolfe Decomposton As mentoned before, the flow model of the shft plannng problem gves rse to the blockstructured lnear program (7.1)-(7.6). We wll explot ths specal structure by applyng Dantzg- Wolfe decomposton to the compact formulaton. For related work on the multple-depot vehcle routng and schedulng problems, the reader s referred to Desrosers et al. [1993], Rbero and Soums [1994] and Desaulners et al. [1998]. For the tme beng, we wll relax the ntegralty condtons of (7.6). 1 Note that also the maxmum shft number restrctons can be formulated as constrants by multplyng wth

162 7. Optmal Shft Plannng by Branch-and-Prce A 1... A k... A K 1 B 1 = 0 = 0... = 0 = 0 B k = 0 = 0... = 0 = 0 B K = 0 Fgure 7.4.: Blockangular structure of the flow model. As descrbed n Secton 6.1, the Dantzg-Wolfe decomposton s based on the representaton of the convex polyhedra gven by the blocks of local constrants by ther extreme ponts and rays. Appled to problem (7.1)-(7.6), (7.2) through (7.4) are the couplng constrants and thus reman n the master program. The flow conservaton constrants (7.5) along wth the nonnegatvty constrants (7.6) buld the subsystems. Snce constrants (7.5) defne a homogeneous polyhedron, the polyhedra of these subsystems do not have extreme ponts and can be represented by a lnear combnaton of the extreme rays. Let {(x k vwp (v, w) E k ) p Ω k } be the set of extreme rays for shft type k. Each extreme ray (x k vwp (v, w) E k ) represents a sngle path (shft) because t obeys the flow conservaton constrants. Note that f (x k vwp (v, w) E k ) was a combnaton of several shfts, t could not be an extreme ray. Wthout loss of generalty, we can assume that x k vwp {0, 1}. By the theorems of Weyl and Mnkowsk, the orgnal varables X k vw can be represented by a lnear combnaton of the extreme rays: X k vw = p Ω k x k vwpλ k p (λ k p 0) [Nemhauser and Wolsey, 1988]. The followng formulaton results from replacng all of the orgnal varables n formulaton (7.1)-(7.6): mn k K p Ω k (v,w) E k c k vwx k vwp λ k p (7.7) subject to k K p Ω k k K r p Ω k k K r p Ω k v V k (v,w) δ + (v) x k vwp (v k o,w) δ+ (v k o ) x v k o wp (v k o,w) δ+ (v k o ) x v k o wp λ k p 1 I (7.8) λ k p m r r Rabs mn (7.9) λ k p m r r R max abs (7.10) λ k p 0 k K, p Ω k (7.11) 146

163 7.4. Dantzg-Wolfe Decomposton The decson varables of ths problem are the coeffcents λ k p for the extreme rays of the polyhedra gven by the flow conservaton constrants. We wll now ntroduce new dentfers for the objectve functon and constrant coeffcents whch were already grouped by brackets. Let c k p := (v,w) E k c k vwx k vwp be the cost coeffcent for extreme ray p Ω k. As mentoned above, an extreme ray s a sngle path from the orgn to the destnaton node. Furthermore, we only account for shft costs on the outedges of orgn nodes whle all other edge weghts are 0. Therefore, c k p s equal to the shft type cost c k. The coverage coeffcents n constrants (7.8) wll be denoted by g k p for each I and p Ωk : g k p := v V k (v,w) δ + (v) Wth p beng a shft, ths coeffcent wll be equal to 1 f p traverses a node belongng to task and 0 otherwse. The coeffcents gp k thus ndcate whch work tasks are covered by a shft p of type k,.e. (gp k I) s the characterstc vector of the set of covered work tasks. Fnally, we analyse the coeffcent (v k o,w) δ+ (v k o ) x v k o wp n the shft restrctons 7.9 and (7.10). Ths sum equals 1 f p s a shft of type k and wll be 0 otherwse. Snce the sums n (7.9) and (7.10) only run over p Ω k, the coeffcent can be omtted. Wth these observatons and defntons, the master program reads as subject to k K x k vwp mn c k pλ k p (7.12) k K p Ω k gpλ k k p 1 I (7.13) p Ω k λ k p m r r Rabs mn (7.14) p Ω k λ k p m r r Rabs max (7.15) p Ω k λ k p 0 k K, p Ω k (7.16) k K r k K r Ths lnear program has a natural nterpretaton. The decson varable λ k p represents the proporton of a shft p used n the soluton. Shft costs are derved from ther shft types. In the constrant system, the column for a shft p ndcates whch tasks are covered. The shft restrctons sum up all shfts whch are affected by the restrctons. Because the coeffcents of the extreme rays were chosen to be bnary, we wll regan ntegralty f the varables λ k p are constraned to be bnary. Then the program (7.12)-(7.16) corresponds to selectng a subset of all possble shfts such that all tasks are covered and the shft restrctons are obeyed. Whle the orgnal formulaton (7.1)-(7.6) expresses the flow problem n terms of the flows on the edges, the Dantzg-Wolfe formulaton (7.12)-(7.16) bulds solutons by combnatons of paths (unt flows) from orgn to destnaton nodes. Dantzg-Wolfe decomposton on ths problem thus corresponds to an applcaton of the flow decomposton theorem, cf. Ahuja et al. [1993]. 147

164 7. Optmal Shft Plannng by Branch-and-Prce 7.5. Column Generaton The soluton of (7.12)-(7.16) by lnear programmng n prncple requres a full enumeraton of all possble shfts coverng subsets of the tasks. In practce, ths wll only be possble on very small test cases. The dea of column generaton s to mantan only a restrcted subset Ω Ω := k K Ωk of varables n the master program and assume λ k p = 0 for all p Ω \ Ω. The restrcted master program s solved to optmalty on the restrcted column set, usng the smplex method. In the subproblems, the optmal dual values are then used to generate new shfts (extreme rays) whch may mprove the soluton. The generated columns are added to the restrcted master program whch s then resolved. Ths process terates untl no more mprovng columns are found n the subproblems. In the prcng problems, we generate extreme rays of the polyhedra defned by the constrant systems whch are not represented n the master program. Accordng to the smplex method, we should generate extreme rays (shfts) whose reduced costs are negatve. Let π and µ r be the dual values assocated wth the coverng and shft restrcton constrants n an optmal soluton to the restrcted master program. If the Dantzg rule s used for the choce of an enterng varable, we seek for a column p such that the reduced cost c k p := c k p gpπ k ρ r (k)µ r ρ r (k)µ r (7.17) I r R mn abs r R max abs s mnmal. In ths formulaton, ρ r s a functon ρ r : K {0, 1} whch ndcates f a gven shft number restrcton r Rabs mn Rmax abs refers to a shft type: { 1 f k Kr ρ r (k) := 0 else The dual values π and µ r can be nterpreted as shadow prces for coverng a task and usng a shft type n K r, respectvely. For mnmum shft restrctons, these prces wll be nonnegatve whle for the maxmum restrctons, the dual values wll be nonpostve. If coverng a task or obeyng a shft restrcton represents a bottleneck n a restrcted master program, the dual values wll be dfferent from 0. Interpretng term (7.17), we thus seek for a shft of a pror costs c k p = c k whch gets a reward for coverng bottleneck tasks or mnmum restrctons and whch gets penalsed for usng shft types of bottleneck maxmum restrctons. From the subproblem vewpont, the coverage and shft restrctons are represented by a reward/penalty mechansm va dual values of the master program whle the flow conservaton constrants are represented explctly. As descrbed above, the gp k and the contrbutons to the shft restrctons are fxed for the master program. For the subproblems, they are calculated from the decson varables whch are the edge flows Xvw. k As descrbed above, the flow formulaton decomposes nto ndvdual models for each shft type k. As a consequence, the one prcng problem s solved for each shft type. The shft wth mnmum reduced costs can then be retreved by mnmsaton over the results for each k. The prcng problem for shft type k s subject to mn c k vwxvw k π (v,w) E k I v V k ρ r (k)µ r ρ r (k)µ r (w,v) δ (v) r R mn abs X k wv (v,w) δ + (v) r R max abs X k vw = 0 (v,w) δ + (v) v V k b X k vw I V k (7.18) 148

165 7.6. Branch-and-Prce In the objectve functon (7.18), the term c k := ρ r (k)µ r r R mn abs X k vw {0, 1} (v, w) E k r R max abs ρ r (k)µ r for the shft restrctons s constant for a gven k. The coverng prces π can be attrbuted to the edges by defnng new edge costs c k vw: { c k c k vw := vw π f v V k else Wth these defntons, the prcng problem for shft type k can be reformulated as subject to (w,v) δ (v) X k wv mn c k + c k vw (v,w) δ + (v) (v,w) E k c k vwx k vw X k vw = 0 v V k b I X k vw {0, 1} (, j) E k Ths s a shortest path problem on the modfed edge costs c k vw whch can e.g. be solved by the Djkstra algorthm or by dynamc programmng [Cormen et al., 2001]. Alternatvely, t can be solved by the smplex method for lnear programmng snce shortest path problems are naturally nteger [Ahuja et al., 1993]. The lower bounds of the LP relaxatons of the compact and the column generaton formulaton therefore concde as descrbed n Secton 6.3. As descrbed above, we can obtan the best new shft by mnmsng over the results for all shft types. If the resultng shft has negatve reduced costs, t s added as a new column to the restrcted master program. The master program s then resolved, provdng the prcng problems wth new dual values n the next teraton. Ths process terates untl no more reduced cost columns can be found n whch case the optmal soluton to the relaxed problem has been found, see also Fgure 6.1 n Secton 6.1. It should be noted that n the prcng problems, t suffces to fnd shfts wth negatve reduced costs nstead of mnmum cost solutons. Column generaton schemes tend to converge faster f several negatve reduced cost columns are added n each teraton [Desrosers et al., 1984]. Note also that by subproblem prcng, all possble shfts are mplctly represented n the master program. Nevertheless, the smplex algorthm wll only explore a small subset of the total number of shfts on ts way to the optmum soluton. If several shfts of a shft type have equal reduced costs, we always choose a non-domnated shft,.e. a shft nto whch no further tasks can be nserted wthout ncreasng reduced costs. Toth and Vgo [2001a] have called such columns ncluson-maxmal. By ths procedure, we nclude a maxmum number of tasks wth vanshng dual costs to the shft. Ths accounts for the fact that such tasks can be a bottleneck n later teratons. We can therefore expect that less columns must be generated f we always add non-domnated shfts, see also Lübbecke and Desrosers [2004]. V k 7.6. Branch-and-Prce Up to now, the ntegralty restrctons of the orgnal problem were dropped and only the LP relaxaton of the shft plannng problem was solved. Set coverng formulatons are generally known to 149

166 7. Optmal Shft Plannng by Branch-and-Prce exhbt advantageous nteger propertes, see e.g. Baley [1985] and Mehrotra et al. [2000]. In order to tackle fractonaltes, we wll devse an LP-based branch-and-bound algorthm. We wll thus repeatedly branch on fractonal values, mposng new ntegralty cuts on the branches. Branchng decsons may render new varables advantageous, meanng that column generaton should be performed throughout the search tree. As ponted out n Secton 6.3, branchng should be appled to the varables of the compact formulaton [Vlleneuve et al., 2003],.e. on the edge flow varables Xvw k = p Ω k xk vwpλ k p [Desrochers et al., 1992]. Snce these flow varables are part of the prcng problems, ths does not destroy the subproblem structure. Snce we enforce ntegralty only on the orgnal varables, the branch-and-prce approach s based on the convexfcaton of the soluton space, see Secton 6.6. In the orgnal formulaton, the set parttonng (= 1) constrants were relaxed to set coverng constrants ( 1). As a consequence, the edge values p Ω k xk vwpλ k p can assume hgher-order fractonal values. Let p Ω k xk vwpλ k p = y wth y > 1 and fractonal. We would then create two new branches, mposng p Ω k xk vwpλ k p y on one branch and p Ω k xk vwpλ k p y on the other. But on the branch, p Ω k xk vwpλ k p may later have a fractonal value 0 < y < y, and we would have to branch agan. Ths branchng s clearly redundant because we can mplctly assume the set parttonng structure. Wthout loss of generalty, the values p Ω k xk vwpλ k p can be constraned to the range [0, 1]. If p Ω k xk vwpλ k p assumes a fractonal value y, we can therefore create two branches wth constrants p Ω k xk vwpλ k p = 0 and p Ω k xk vwpλ k p = 1, respectvely. Ths corresponds to Ryan-Foster constrant branchng, see Secton 6.3. In the shft plannng context, the branch p Ω k xk vwpλ k p = 0 means that we forbd the use of edge (v, w) n network G k,.e. the nodes v and w must not be covered by the same shft of type k. Ths can be mplemented by forcng all shfts usng (v, w) to 0 and removng edge (v, w) from G k n the subproblems. The branch p Ω k xk vwpλ k p = 1 says that v and w must be covered once by the same shft of type k. Ths s realsed by removng all shfts coverng v or w but not both and removng all edges (v, w ) wth w w from the prcng problems. Even f the λ k p wll never exceed 1 n an optmal soluton, the constrant p Ω k xk vwpλ k p = 1 must be explctly added to the master program because t constrans the orgnal varable Xvw p to [0, 1] whch was not orgnally assumed. Ths constrant yelds an addtonal dual value whch must be subtracted from the edge cost n the prcng problem. For the mplementaton descrbed below, branchng was appled on a more aggregate level. Instead of branchng on the edges of the ndvdual shft types, ntegralty s enforced on the level of consecutve tasks n shfts of arbtrary types, see also Desrochers and Soums [1989]. We thus search for task pars (, j) such that the sum of the shfts coverng and j consecutvely s fractonal. The branchng rule s then appled to all edges n V k Vj k for all shft types k K. Clearly, the number of potental task par branches s less than for edge level branchng. Note however that task par branchng s not complete n general,.e. fractonaltes may reman even f all task pars are nteger. Nevertheless, t revealed to be suffcent on all test cases. In order to avod a destructon of the current master program soluton, branchng s appled to task pars (, j) wth values less than 1 as long as possble. We always branch on the par (, j) whose value s closest to 1. Because such a soluton suggests to cover tasks (, j) consecutvely and by the same shft, the = 1 branch s explored frst. A smlar branchng scheme has been proposed by Ryan [1992]. It could be observed that ths rule often allows for fndng an optmal soluton wth a sngle descent n the search tree,.e. the frst nteger soluton s already optmal. The overall branch-and-prce scheme s gven by Algorthm 4. The result of the shft plannng constructon heurstc descrbed n Chapter 5 s used as a startng soluton Σ. Σ thus provdes the master program wth a frst column set and gves an ntal upper bound z. It s mportant to note that the LP value z LP does not provde a lower bound as long as mprovng columns can be 150

167 7.7. Problem Decomposton found. Algorthm 4 Branch-and-prce 1: ntalsaton wth heurstc startng soluton Σ of value z 2: whle there are branch-and-bound nodes to be processed do 3: take a node 4: solve the restrcted master problem 5: solve the prcng problems on the current optmal dual values 6: f there are columns wth negatve reduced cost then 7: add columns to the master problem 8: else f z LP z then 9: abandon node 10: else f soluton nteger then 11: new best soluton: Σ Σ LP, z z LP 12: else 13: branchng: create successor nodes 14: end f 15: end whle The search tree s frst traversed n depth-frst order. Because we cannot gve a new lower bound before column generaton has termnated, a node ntally nherts ts parent s lower bound. Addtonally to the LP lower bound z LP, a global lower bound s used whch s equal to the mnmum over the lower bounds on all nodes whch are stll to be processed. If ths value s greater or equal to the value z of the ncumbent soluton, we can termnate the search because we wll not fnd better solutons. In the shft plannng problem, the best soluton s frequently found very early wth the global lower bound provng optmalty. We have ntally conducted experments wth the generalsed Lasdon lower bound of Secton 6.4. Ths lower bound can be used for early termnaton of column generaton and to prune the search space. For the calculaton, we have used the number I of tasks as an upper bound approxmaton to the number of fnal shfts. However, no performance mprovements could be observed. On the one hand, the qualty of the bound was often poor. On the other hand, the LP lower bound was very close to the optmum throughout large parts of the search tree. Addtonally, the talng-off effect of column generaton was not very strong. We have therefore decded not to use the Lasdon bound for the expermental results presented below. The prunng n Algorthm 4 was refned by some smple observatons. If all shft type costs are nteger, an mproved shft plan must save costs of at least one,.e. we can prune a node f z LP + 1 z. If there are non-nteger shft type costs, determnng the dfference between the ncumbent and an mprovng soluton amounts to solvng a subset sum problem [Martello and Toth, 1990]. Whle subset-sum s an N P-hard problem, buldng all combnatons of shft type costs can easly be accomplshed by a pseudo-polynomal dynamc programmng algorthm. In most cases, only fractons of a second were taken to determne the current stepwdth Problem Decomposton For the above formulaton, t was assumed that the shft plannng problem decomposes nto separate days. Consequently, day ndces for shft types and shft restrctons were omtted. It should be clear that the model can easly be generalsed to several days by replacng each shft types k by a shft type realsaton (k, n) wth n denotng the day. If K r s the set of shft types and N r 151

168 7. Optmal Shft Plannng by Branch-and-Prce the set of days of a shft restrcton r Rabs mn Rmax abs, r refers to the set K r N r of shft type realsatons. In the practce of arports, there are often tmes of lttle or no traffc (e.g. durng nght),.e. operatons are dscontnuous, see also Secton Shft plannng problems then ndeed decompose nto ndependent problems. Each of these problems typcally covers one day and sometmes even spans over shorter tme perods due to low workloads between peak tmes. In the sequel, t wll be shown how gven problems can be automatcally decomposed nto ndependent components. The ndvdual problems are then solved separately and afterwards composed nto a complete soluton. Decomposton s often crucal for makng a scenaro amenable to an exact soluton approach, and even f a complete scenaro could be solved by the above branch-and-prce approach, shft plannng by decomposton s more effcent. Note that ths s generally not true for the local mprovement algorthm of Chapter 5 because the complexty of local reoptmsaton steps essentally depends on the neghbourhood szes and not on the sze of the overall problem. When problems could be decomposed by day, the daly problems were often very smlar due to the resemblance of flght schedules and task generaton rules. We wll use a constrant graph G = (V, E) for decomposton. The node set V comprses all shft type realsatons (k, n) on the dfferent days,.e. V = {(k, n) k K, n N k } wth N k beng the vald days of shft type k. We then check whch shft type realsatons may cover each task I, takng breaks nto account. For each task, we ntroduce edges n G such that the nodes of shft type realsatons coverng nduce a complete subgraph (clque). Analogously, we ntroduce edges between all shft type realsatons n K r N r for each shft restrcton r Rmax abs wth reference shft types K r and days N r. R mn abs It should be clear that n the resultng graph, two nodes are connected f and only f decsons for the assocated shft type realsatons are nterdependent. Consequently, the connected components of G represent ndependent optmsaton problems. For each component, we buld one subproblem consstng of the shft type realsatons assocated wth ts nodes and the tasks whch can be covered by them. Each subproblem s then consecutvely submtted to the above algorthm. Note that ths assures that tasks whch cannot be covered by the gven shft types are never used as an nput for the branch-and-prce algorthm Expermental Results The above algorthm has been mplemented n Vsual C++ 7.1, usng lbrares of the open software ntatve COIN-OR (Common Optmsaton Interface for Operatons Research) [Ralphs and Ladány, 2001] [Lougee-Hemer, 2003]. CLP of COIN-OR was used as LP solver, and BCP (Branch, Cut & Prce) provded the bass for the branch-and-prce mplementaton. OSI (Open Solver Interface) bulds the brdge between BCP and CLP. CLP proved to be robust and suffcently effcent on the test cases. By means of OSI, the mplementaton s ndependent of the LP solver whch may be exchanged n the future. Orgnally, BCP dd not provde a handlng of global lower bounds as descrbed n Secton 7.6, so ths feature was mplemented as a part of ths work. In fact, branch-and-bound could often be termnated prematurely usng global lower bound checks. For the tests, the shft plannng constructon heurstc descrbed n Chapter 5 was used to provde the branch-and-prce algorthm wth a startng soluton. An optmsed dynamc programmng algorthm was used for the subproblems. In every teraton, one shft s added to the master program for each shft type for whch a reduced cost column exsts. Integralty s acheved by aggregate branchng on task pars. Tests were carred out on a AMD computer (1.67 GHz) wth 512 MB man memory and operatng system Wndows XP SP1. Table 7.1 summarses basc fgures of the scenaro set C (see also Chapter 5) whch comprses 152

169 7.8. Expermental Results No. days tasks task travel tme shft abs. mn. abs. max. mnutes range types restrctons restrctons C [0,0] C [0,13] C [0,26] C [0,26] C [0,19] C [0,26] C [0,0] C [0,0] C [0,0] C [0,0] C [0,0] C [0,0] C [0,6] C [0,13] C [0,1] C [0,28] C [0,3] Table 7.1.: Scenaro data. exactly the scenaros to whch the branch-and-prce algorthm apples. For the number of tasks and task mnutes (sum of the task lengths) n Table 7.1, tasks whch cannot be assgned to any of the shft types were omtted. The orgnal scenaros C01 through C06 and C14 through C16 defne huge numbers of shft types (up to 270). Ths makes soluton by the above algorthm dffcult because all possble alternatves of coverng tasks by dfferent shft types would have to be evaluated n a huge number of subproblems. Note that the local mprovement procedure of Chapter 5 does not suffer from ths problem f the number of break rule days s low. However, the use of many dfferent shft types n a plan s often not desred, and the constructon heurstc descrbed n Secton 5.1 effectvely tends to employ only a small subset of the shft types. As descrbed n Secton 2.9, t s common practce to use only a workng subset of the shft types for plannng, see e.g. Easton and Rossn [1991], Bechtold and Brusco [1994b] and Brusco and Jacobs [2001]. Sørensen and Clausen [2002] have noted that consderable admnstratve burden s assocated wth usng many shft types. For the experments on test cases C01 through C06 and C14, the sets of shft types was restrcted to those used n the ntal heurstc soluton; these numbers are gven n the shft type column of Table 7.1. Note that ths means that f a shft type s used on one of the days, t wll be avalable for all days of the scenaro. As a consequence, the numbers of shft types are partly stll consderable (up to 198). However, t should be mentoned that the selecton bases the soluton procedure towards the outcome of the constructon heurstc whose shft type decsons may not be optmal. The evaluaton of alternatve workng subset methods may be subject of future research. To all of the scenaros, the decomposton procedure of Secton 7.7 was appled. Results are summarsed n Table 7.2, gvng the number of components and the average number of tasks and shft type realsatons (shft types unfolded per day) per component. Comparng the number of components to the scenaro days gven n Table 7.1, t can be seen that scenaros often decompose by day or even nto smaller unts. However, three of the scenaros (C14, C15 and C17) do not 153

170 7. Optmal Shft Plannng by Branch-and-Prce No. components average number average number of of tasks shft type realsatons C C C C C C C C C C C C C C C C C Table 7.2.: Decomposton results. decompose at all. Effectvely, these scenaros are test cases from arports wth 24 7 operatons. Whle the ntal scenaros were partly huge, the number of tasks and shft type realsatons s usually moderate after decomposton. Scenaros C02, C14, C15 and C17 are stll challengng due to the numbers of tasks (up to an average of 2256 tasks per component) and shft type realsatons (up to an average of 785). As descrbed n Secton 7.3, one flow model s bult for each shft type realsaton. Average graph szes per shft type realsaton are gven n Table 7.3. Due to breaks, each task may be represented by several nodes wth 1.18 nodes per task on average. Note that the number of edges per shft type graph can be consderable when a graph contans many nodes, wth a maxmum of edges n one of the components of scenaro C13. Dfferences n the node number can be partly explaned by dfferent task lengths (e.g. tasks n scenaro C13 have average lengths of 40 mnutes, tasks n scenaro C16 average lengths of more than 70 mnutes) and shft types (e.g. shft type duratons are 5804 mnutes on average n scenaro C13 and 479 mnutes n scenaros C15 and C16). Each component was separately submtted to the branch-and-prce procedure wth a runtme lmt of two hours. Table 7.4 presents soluton data, summng up over all components of each scenaro whle the runtme data of Table 7.5 s gven as averages over the components. Runnng tmes are gven n seconds. Astonshngly, the values of the LP relaxaton are often equal to the value of the optmum soluton a maxmum gap of 0.29% on one component of scenaro C09 (Table 7.4). On all but four cases, optmalty wth regard to the workng subset of shft types could be proven for the best soluton found by the branch-and-prce algorthm. The algorthm ran nto the runtme lmt on all components of scenaro C02 and one component of scenaros C03, C13 and C14, respectvely. As a comparson of the numbers of explored nodes and the search tree depths suggests (Table 7.5), optmal solutons were nearly always found wth a sngle descent. The only excepton among the scenaros for whch optmalty was proven s bult by one component of each of the scenaros C01, 154

171 7.8. Expermental Results No. average average average tasks task nodes edges C C C C C C C C C C C C C C C C C Table 7.3.: Graph constructon. C09 and C17. Ths shows the excellent qualty of the branchng rule whch bascally conssts n roundng up edge flows close to 1. On the components for whch optmalty could not be proven, best known results were often obtaned by the frst descent n the search tree. The man dffculty of the affected components of scenaros C02, C03, C13 and C14 les n the gap between the value of the LP relaxaton and the value of the encountered soluton. Whle the gaps show that the best solutons are wthn 0.37% and 0.16% of the optmal value, t s possble that parts of these solutons are n fact optmal. Hoffman and Padberg [1993] have noted that larger set parttonng problems often exhbt worse nteger propertes and lower bounds than smaller problem nstances; the same mght be true for the above set coverng model. It s nterestng to note that test cases C02 and C14 are among the scenaros wth the hghest numbers of shft type realsatons per component. The adverse effect hgh numbers of potental shfts can also be seen from the tme for solvng the LP relaxaton (Table 7.5). Whle the lower bound qualty plays an essental role, we can also observe an nfluence of subproblem complexty on the runtmes (Table 7.5). Scenaros C07 and C13 whch ask for the hghest number of edges n the subproblem graphs are among the scenaros consumng most runtme. Note however that these tmes do not stem from the soluton of the subproblems whose runtmes can nearly be neglected. Instead, computaton tme s manly consumed by solvng the potentally large lnear programs whch result from the problem complexty. Especally near the optmum, t wll not be possble to generate columns wth negatve reduced costs for all subproblems. As can be seen from Table 7.5, subproblems yeld an average of 0.5 columns per call whch are added to the restrcted master program. The hghest runtme among the scenaros solved to optmalty s consumed by scenaro C17 whch contans the hghest number of tasks snce t cannot be decomposed. Ths shows the mportance of problem decomposton. Problems C11, C15 and C16 turned out to be very easy to solve wth a maxmum of 28 search nodes for one component of scenaro C11. In total, runtmes 155

172 7. Optmal Shft Plannng by Branch-and-Prce No. ntal soluton LP relaxaton optmum best soluton C C C C C C C C C C C C C C C C C Table 7.4.: Branch-and-prce results. were rather moderate, and many real-world problem nstances turn out to be wthn the reach of the optmal algorthm whch was not expected before ths work. Ths also shows that worst-case complexty results lke n Secton 7.2 do not always admt conclusons on the soluton of practcal problem nstances. Table 7.6 compares mprovements acheved by the local mprovement method of Chapter 5 and branch-and-prce. Results of large neghbourhood search (LNS) are gven as averages over fve runs after 30 mnutes runtme. It should be noted that branch-and-prce sometmes necesstates much more runtme. It can be seen that whle local mprovement often yelds moderate mprovements, branch-and-prce fnds solutons whch save average shft costs of 8.95%. Especally on scenaros wth very few shft types (e.g. C13), LNS fals to fnd substantal mprovement. In contrast, scenaros C15 and C16 nvolve multtudes of shfts, and results are nearly equvalent. Ths shows that whle local search s an approprate method for the handlng of general large-scale scenaros, branch-and-prce s a sutable technque for scenaros wth lmted constrants. Further detals for the comparson of ntal solutons and branch-and-prce results are gven n Table 7.7. The number of shfts s effectvely reduced by up to 30.8%. Furthermore, the shft utlsaton (task mnutes dvded by shft mnutes wthout breaks) whch s rather low n some test cases could be ncreased by up to 16.9%. In total, the branch-and-prce algorthms has shown to be very effcent n solvng real-world shft plannng problems wth restrcted constrants. The decomposton procedure makes problems amenable to exact soluton, and many scenaros can effectvely be solved to optmalty. Ths s manly due to the qualty of the LP lower bound and the success of the branchng rule. The fact that the best soluton was nearly always found wthn a sngle descent suggests that the algorthm could also be used heurstcally by restrctng the tree search to the left-most branch, see also Grönkvst [1998]. Results were very satsfyng and show that nteger column generaton s an approprate approach for restrcted ground staff plannng. 156

173 7.8. Expermental Results No. total tme to column generator number of tme for search search tme LP relaxaton calls generated varables subproblems nodes depth C C C C C C C C C C C C C C C C C Table 7.5.: Runtme data. No. ntal LNS branch-and-prce soluton soluton mprovement soluton mprovement C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % Table 7.6.: Shft cost mprovement by LNS and branch-and-prce. 157

174 7. Optmal Shft Plannng by Branch-and-Prce No. ntal soluton branch-and-prce soluton number of shft shft mnutes shft number of shft shft mnutes shft shfts mnutes wthout breaks utlsaton shfts mnutes wthout breaks utlsaton C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % C % % Table 7.7.: Comparson of results Conclusons and Future Research We have tackled a restrcted shft plannng problem, comprsng tasks whch are fxed n tme, shfts wth breaks and absolute shft number restrctons. A consderable number of practcal plannng nstances s covered by ths problem class, justfyng the search for effcent algorthms explotng specfc problem structures. Restrcted shft plannng s bascally a combnaton of classcal vehcle and shft schedulng problems. We have shown that coverng fxed tasks by an effcent set of shft dutes can be nterpreted as a specal multple depot vehcle schedulng problem (MDVSP) or, more generally, as a multcommodty flow problem. We have proven that smplfed shft plannng s N P-hard n the strong sense whch also means that general task-level shft plannng s computatonally hard. We have shown how the problem can be represented by a specalsed flow model. The resultng block-structured constrant matrx can be exploted by Dantzg-Wolfe decomposton. We have therefore derved a column generaton formulaton n whch columns can be naturally nterpreted as vald shft dutes. For achevng ntegralty, a branchng rule was devsed whch s compatble wth the shortest path subproblems. On arports wth nght-flyng restrctons or very low workloads wthn the days, shft plannng problems often naturally decompose. Ths has been exploted by a decomposton procedure on the bass of a constrant graph that expresses nterdependences between decsons. It was shown how most test cases can be solved to proven optmalty by branch-and-prce. In vew of the N P-hardness result, ths s remarkable and was not expected before ths work. Compared to an ntal heurstc algorthm, shft costs can be decreased by up to 22.7%. Addtonally, soluton tmes are mostly moderate. The algorthm s part of a commercal staff schedulng system and has proven to be a very powerful tool n practce. Whle results were very satfyng, there are stll possbltes for mprovement. Dual values are known to oscllate heavly n column generaton approaches wth an adverse effect on convergence [Desrosers and Lübbecke, 2003]. Prelmnary tests wth the stablsaton schemes of du Merle et al. [1999] and Neame [1999] have shown that parameter tunng s qute dffcult n these methods, and stablsaton dd not have the desred effect. Nonetheless, a systematc exploraton or 158

175 7.9. Conclusons and Future Research enhancements mght reveal that computaton tmes can stll be mproved. For two problem nstances, optmalty of the solutons could not be proven. A possble remedy s the use of cuttng planes n order to mprove the lower bound stll further, resultng n a branchand-prce-and-cut approach. Whle some separaton procedures for strong cuts n set coverng formulatons have been proposed (see Cornuéjols and Sassano [1989], Sassano [1989] and Nobl and Sassano [1989]), these are computatonally expensve, and lttle has been reported on ther computatonal success. However, future progress may make ths approach practcal. In an applcaton to the cuttng stock problem, Valéro de Carvalho [2002] has shown that the ntroducton of addtonal dual cuts can speed up column generaton. Whle the desgn of dual cuts s hghly problem-dependent, the approach may also be nterestng for routng and schedulng applcatons. However, results were beyond expectatons, and future drectons manly refer to enrchments of the model. When tme wndows are ncluded nto the model, we have to avod negatve reduced costs cycles n the subproblems [Cordeau et al., 2001a]. Each subproblem s then an elementary shortest path problem whch s N P-hard n the strong sense [Dror, 1994]. Dfferent soluton approaches have been proposed, see e.g. Kohl et al. [1999] and Irnch and Vlleneuve [2003]. Addtonally, we may nclude qualfcaton restrctons by mposng resource constrants n the subproblems. The resultng resource-constraned shortest path problems are usually solved by pseudo-polynomal dynamc programmng algorthms, see also Secton 9.6. However, the representatonal complexty n mantanng aggregated qualfcaton sets ncreases exponentally n the number of nvolved qualfcatons. More flexblty for the ncorporaton of further constrants seems to be offered by methods combnng constrant programmng wth nteger programmng. Dfferent schemes have been proposed, ncludng constrant-based column generaton [Fahle et al., 2002] [Rousseau et al., 2002] and cost-based doman flterng [Focacc et al., 1998] [Focacc et al., 1999]. The basc dea of these technques s to represent complex constrants n a CP model whle the search s guded by lnear programmng. Clearly, ths s also a promsng approach for task-level shft plannng. 159

176 7. Optmal Shft Plannng by Branch-and-Prce 160

177 8. Implct Modellng of Flexble Break Placement Tea breaks do not need to be scheduled. Adel Gaballa, Wayne Pearce, Telephone Sales Manpower Plannng at Qantas, Interfaces Vol. 9, 1979 In Chapters 5 and 7, we have descrbed models and algorthms for task-level shft plannng, ntegratng aspects of shft schedulng and vehcle routng. We now turn to shft and tour schedulng models whch am at coverng a demand curve of workloads gven n dscrete tme perods. Whle task-level plannng s more detaled, hstogram-based schedulng s suffcent n many plannng stuatons (see also Chapter 1). On the one hand, coverng a demand curve yelds a good approxmaton to task-level schedulng f tasks are lttle movable and few constrants are mposed on the task level. On the other hand, schedulng tasks may be over-detaled n long-term plannng when nformaton on flght events, passenger and load fgures s less detaled. The nteger programmng model developed n ths chapter wll provde the bass for an algorthm for cyclc roster generaton. Cyclc rosters are usually desgned several weeks or months ahead of tme and are usually vald for a whole flght season. It s therefore approprate to buld soluton algorthms upon a curve of aggregated workloads. As descrbed n Dowlng et al. [1997], the actual assgnment of tasks can then be deferred to shortly before the day of operatons. As cyclc rosters are rotatng patterns such that each assgned employee works on any shft duty at a gven tme, workloads must also be homogeneous. Demand-level schedulng s not only well-accepted and ntutve to staff planners, but also allows for addtonal plannng flexblty. In practce, planners often do not fully cover workloads, but accept slght understaffng n perods of peak requrements [Gaballa and Pearce, 1979] [Dowlng et al., 1997]. From a techncal vewpont, demand-level schedulng allows for effcent models and soluton technques and s often the only way to make shft schedulng and rosterng problems computatonally tractable [Ernst et al., 2004]. As descrbed n Chapter 2, nearly all lterature on shft and tour schedulng buld upon demand curves of aggregate workloads. We can suppose that levelled workforce requrements provde a more approprate bass for demand-level shft plannng and rosterng. We wll therefore assume that the followng models and algorthms buld upon the results of the levellng procedure of Chapter Introducton In ths chapter, we wll develop a weekly shft schedulng formulaton whch serves as a bass for the cyclc rosterng algorthm of Chapter 9. We therefore assume that gven workforce requrements are cyclc,.e. the frst day follows the last day of the one-week schedulng horzon. Snce rosters are usually created for a longer perod n advance, plannng should be based on a model week wth typcal flght events and passenger and baggage load fgures. Our model wll be desgned for potentally contnuous operatons wth shfts overlappng from one day to the other. The formulaton wll be based on the standard set coverng formulaton of Dantzg [1954] and solved by LP-based methods. 161

178 8. Implct Modellng of Flexble Break Placement In task-level shft plannng, breaks can be handled smlarly to work tasks, see Secton For demand-based schedulng, dfferent models have been proposed for the handlng of flexble breaks (see Secton 2.8). Snce the publcaton of Bechtold and Jacobs [1990], flexble breaks have mostly been represented by mplct models whch consderably reduce the sze of LP formulatons. The orgnal model of Bechtold and Jacobs [1990] s restrcted to dscontnuous operatons wth one break per shft and equal break duratons. Furthermore, break tme wndows must not exhbt a property named extraordnary overlap (EO). Aykn [1996] proposed an alternatve mplct model whch s more wdely applcable and ncorporates multple breaks. Whle the formulaton of Bechtold and Jacobs [1990] generally necesstates less break varables, Aykn [2000] clamed that hs formulaton requres less nonzero constrant coeffcents and showed ts computatonal superorty on a set of cyclc shft schedulng problems. However, Aykn [2000] dd not make use of a substtuton dea of Bechtold and Jacobs [1990], reducng the number of nonzero constrant coeffcents. In the tour schedulng experments of Topaloglu and Ozkarahan [1998], the Bechtold/Jacobs formulaton generally performed better, see also the annotatons n Mehrotra et al. [2000]. Rekk et al. [2003] noted that the Bechtold/Jacobs model should be superor on problems n whch many break varables can be shared among the shft types. Most of the restrctve assumptons gven n Bechtold and Jacobs [1990] have been relaxed by extensons of the basc model. Brusco and Jacobs [2000] and Aykn [2000] proposed to use wrap-around break varables to overcome the lmtaton to less-than-24h operatons. Topaloglu and Ozkarahan [1998] and Aykn [2000] showed how more than one break can be ncorporated n the formulaton of Bechtold and Jacobs [1990]. Analogously, more than one break duraton can be accounted for. The extraordnary overlap condton has receved far less attenton whch s possbly due to the fact that EO s not very frequent n real-world shft plannng [Aykn, 2000]. In ths chapter, we wll show how the Bechtold/Jacobs model can be generalsed to scenaros n whch break wndows exhbt extraordnary overlap. Furthermore, t wll be descrbed how the number of nonzero matrx elements can be further reduced by a parttonng of shft and break varables. We wll show that the resultng formulaton outperforms the Aykn [1996] model on a number of real-world arport test cases. For the set coverng formulaton, the plannng horzon s usually dvded nto perods of equal lengths, see e.g. Henderson and Berry [1976], Morrs and Showalter [1983], Dowlng et al. [1997], Brusco and Jacobs [1998b] and Rekk et al. [2003]. For computatonal reasons, the dscretsaton s often very coarse-graned wth perod lengths of 15, 30 or 60 mnutes, see Thompson [1995]. We wll show how workforce requrements can be represented more flexbly, adaptng to the granularty of shft types and breaks of the scenaro at hand. The proposed method allows for a more compact representaton wthout sacrfcng granularty at tmes requrng more representatonal detal. The chapter wll be structured as follows: In Secton 8.2, we wll revew the basc set coverng formulaton for shft schedulng. Secton 8.3 gves an llustratve ntroducton to mplct break modellng, leadng to the nteger programmng formulaton of Secton 8.4. Secton 8.5 contrbutes the new approach for avodng extraordnary overlap to be ncorporated n the extended model of Secton 8.6 whle Secton 8.7 deals wth the compact representaton of labour requrements. Secton 8.8 ponts out emprcal advantages, and Secton 8.9 concludes wth a summary Basc Set Coverng Formulaton We wll start by ntroducng the generalsed set coverng formulaton for shft schedulng, gong back to Dantzg [1954]. Labour demands d t N 0 are gven per dscrete tme perod t T = {1,..., T } and cover one week. As before, the set of shft types s denoted by K. The set of 162

179 8.3. Flexble Break Placement days on whch a shft type k K can be realsed s gven by N k N where N := {1,..., 7} s the set of all days of the one-week schedulng horzon. The costs of shft type k K are gven by c k. S kn s a decson varable denotng the number of shfts of shft type realsaton (k, n). In the sequel, the term shfts wll be used nterchangeably wth shft type realsatons; note that shft nstances are not dstngushable f we do not attrbute tasks. The formulaton wll be cyclc,.e. shfts startng on the last day can wrap around to the frst day. We use a constrant matrx [a tkn ] wth a tkn = 1 f shft (k, n) (k K, n N k ) covers demand perod t T and a tkn = 0 otherwse. Ground handlng companes and arlnes usually do not try to fully cover demands. In perods of hgh workloads, planners accept slght understaffng [Gaballa and Pearce, 1979] and rely on temporary employment companes to cover short-term shortages. In the cyclc roster algorthm whch wll be descrbed n Chapter 9, we wll ntroduce upper lmts on the workforce sze, meanng that the staff at hand may not be able to fully cover requrements. We therefore ntroduce shortage varables O t, t T, whch are penalsed by costs of c sht n the objectve functon, see e.g. Baker [1976], Keth [1979], Baley [1985], Thompson [1993], Mason and Nelsen [1999] and Rekk et al. [2003]. These penaltes should reflect actual costs of temporary staff as well as possble. We wll also assume that shortage costs exceed average shft costs per tme perod. Wth these defntons, the cyclc weekly shft schedulng problem reads as subject to mn c k S kn + c sht O t (8.1) k K t T n N k a tkn S kn + O t d t t T (8.2) t T S kn 0 and nteger k K, n N k (8.3) O t 0 and nteger t T (8.4) Objectve functon (8.1) seeks for a cost-mnmal set of shft types, possbly acceptng understaffng. S kn gves the number of shfts of each realsaton. The correspondng column n the constrant matrx ndcates whch perods are covered. If we magne the rght hand sde d t to be 1 for all t and the decson varables S kn to be bnary, the rows can be nterpreted as a set whch must be covered by subsets wth the columns representng characterstc vectors of the subsets [Hromkovč, 2001]. Allowng d t and S kn to be greater than 1 corresponds to a generalsaton to multsets. The resultng model s sometmes termed general (or generalsed) set coverng formulaton, see e.g. Jacobs and Bechtold [1993] Flexble Break Placement Work regulatons usually prescrbe that shfts for full-tme staff must contan at least one meal break and possbly further relef breaks. Clearly, workers are not avalable to cover workloads wthn the duraton of ther breaks. Unon and legal regulatons or company polces usually prescrbe breaks to be taken wthn the lmts of gven tme wndows, specfyng earlest and latest break start tmes (cf. Secton 5.2.1). In the followng presentaton, we wll frst restrct ourselves to the case of exactly one break per shft. Furthermore, we wll assume that breaks of dfferent shft types have equal duratons. A frst approach to handle break placement flexblty s to defne one decson varable for each shft and each possble break placement,.e. to replcate shft varables for each break placement [Dantzg, 1954]. The matrx entres n formulaton (8.1)-(8.4) then contan a 0 for all tme ntervals 163

180 8. Implct Modellng of Flexble Break Placement shft varables S 1 S 2 S 3 break break break break break break break break break B 1 B 2 B 3 B 4 B 5 break varables Fgure 8.1.: Example for shfts wth flexble breaks. n whch the correspondng break takes place. If breaks are not movable or break wndows are tght, ths s a feasble approach. In practce however, break wndows frequently cover one or several hours, blowng up the LP formulaton. Gaballa and Pearce [1979], Bechtold and Jacobs [1990] and Aykn [1996] have proposed to use a dstnct set of break varables to handle break placement flexblty. A break varable then ndcates the number of breaks of a specfc type. Whle Gaballa and Pearce [1979] and Aykn [1996] use one break varable for each break start tme and shft, Bechtold and Jacobs [1990] share break varables among shfts and defne a break varable B l for each possble break start tme. Instead of encodng the attrbuton of breaks to shfts explctly, Bechtold and Jacobs [1990] have shown how to formulate a set of forward and backward constrants. Under a number of condtons, these constrants ensure suffcent breaks to be avalable for all shfts. The actual attrbuton of breaks to shfts s then part of a downstream step. The (nteger) lnear program only encodes exstence condtons on the attrbuton of breaks nstead of ncorporatng complete nformaton on break placement. Instead of repeatng the formal defnton and proof of Bechtold and Jacobs [1990] and Bechtold and Jacobs [1996], we wll gve an ntutve ntroducton to mplct break handlng. Fg. 8.1 shows three shfts, each consstng of fve tme perods, allowng for a break of one perod n the second, thrd or fourth perod of the shft. The number of breaks at each of the resultng fve postons s represented by break varables B 1 through B 5. Note that for the moment beng, we wll omt the day ndces from the shft varables S 1 through S 3. If adequate numbers of shfts and breaks are gven, the attrbuton of breaks to shfts can be nterpreted as a transportaton problem wth restrcted topology [Ford and Fulkerson, 1962] [Rekk et al., 2003]. For the above example, the correspondng bpartte graph s shown n Fg. 8.2: The nodes V := {v 1, v 2, v 3 } represent the shfts for whch a supply equal to the number S k of shfts s gven. The nodes W := {w 1,..., w 5 } represent breaks wth demands correspondng to the break numbers B l. Between each shft node v V, there s an edge toward break node w W f and only f the break tme wndow admts the correspondng break. The costs of transportaton on these edges wll be 0. Transportaton problems can be expressed as network flow algorthms, see e.g. Ahuja et al. [1993]. We therefore ntroduce an addtonal source node s and a snk (target) node t n the bpartte graph of Fg The source node s lnked to all nodes n V by an edge of capacty equal to the number S k of shfts assocated wth v. All nodes w W are lnked to the snk node by an edge of capacty B l. The attrbuton edges between V and W have nfnte capactes. The resultng graph for the above example s sketched n Fg Our goal s the formulaton of constrants between the varables whch ensure that a feasble attrbuton of breaks to shfts exsts. Let us frst assume that we are gven numbers S k and B l of shfts and breaks such that ths attrbuton s possble. The numbers of shfts and breaks must clearly be equal, and we wll set N := k S k = l B l. A feasble attrbuton of breaks to shfts 164

181 8.3. Flexble Break Placement v 1 w 1 v 2 w 2 v 3 w 3 w 4 w 5 Fgure 8.2.: Break attrbuton as a transportaton problem. then corresponds to a flow of cardnalty N n the above network,.e. a flow whch saturates the edges n {s} V and W {t}. We therefore have to ensure the exstence of such a maxmum flow. Çezk and Günlük [2002] call the underlyng problem bpartte flow feasblty problem. A cut s defned as a partton of the nodes {s, t} V W nto two parts C and C. Note that a cut can also be dentfed wth the arcs between C and C [Ahuja et al., 1993]. An s-t cut s a cut C such that s C and t C. Accordng to the mn-cut max-flow theorem, the maxmum flow n a network corresponds to the capacty of the s-t cut of mnmum capacty [Ford and Fulkerson, 1962]. In order to ensure that a flow of sze N exsts, we wll requre all s-t cuts to have capactes of at least N. Clearly, any cut ncludng edges between V and W has nfnte capacty and wll not lmt the flow. Settng C := {s}, we cut all edges between s and V whose sum equals k S k. The resultng cut capacty condton s k S k N whch s true by defnton. Analogously, settng C = {s, t} V W ( C = {t}) results n the trval nequalty l B l N. Now magne the non-trval cut shown as red dotted lne n Fg. 8.3a whch corresponds to the cut set C = {v 1, w 1, w 2, w 3 }. Comprsng only edges from {s} V and W {t}, ts capacty s easly determned as S 2 + S 3 + B 1 + B 2 + B 3. As before, we requre ths sum to be at least N. Usng 3 =1 S = N, ths can be formulated as S 1 + B 1 + B 2 + B 3 0 (8.5) n whch N no longer appears. Includng further nodes from W n the cut set or excludng nodes of V from C only leads to weaker constrants. As an example, take the cut of Fg. 8.4a, leadng to S 1 + B 1 + B 2 + B 3 + B 4 0 whch s domnated by (8.5). As a second example, consder the cut of Fg. 8.3b. Enforcng the cut capacty S 1 + S 2 + B 3 + B 4 + B 5 to be larger or equal to N leads to the constrant S 3 + B 3 + B 4 + B 5 0 (8.6) As mentoned before, we must pay attenton not to nclude any of the edges between V and W n a cut. As an example, magne we would have ncluded v 2 n the cut set of Fg. 8.3a,.e. C = {v 1, v 2, w 1, w 2, w 3 }. Snce ths cut ncludes the edge (v 2, w 4 ) of nfnte capacty, the cut capacty s trvally greater than N. We have already seen that the cut of Fg. 8.4a leads to a domnated constrant. Ths s equally true for cuts of the type gven n Fg. 8.4b. In ths example, the cut C = {v 1, w 1, w 2, w 3, w 4, w 5 } leads to a constrant S 1 + B 1 + B 2 + B 3 + B 4 + B

182 8. Implct Modellng of Flexble Break Placement a. v 1 w 1 v 2 w 2 s v 3 w 3 t w 4 w 5 b. v 1 w 1 v 2 w 2 s v 3 w 3 t w 4 w 5 Fgure 8.3.: Cuts n the break attrbuton network. a. v 1 w 1 v 2 w 2 s v 3 w 3 t w 4 w 5 b. v 1 w 1 v 2 w 2 s v 3 w 3 t w 4 w 5 Fgure 8.4.: Cuts leadng to domnated constrants. 166

183 8.4. Shft Schedulng wth Breaks whch s agan domnated by (8.5). Effectvely, only constrants of the types gven n Fg. 8.3 lead to non-domnated constrants. Includng more and more nodes from V and the correspondng nodes of W n cuts of Fg. 8.3a leads to a set of forward constrants. In the same way, we can gradually nclude more nodes n cut sets of Fg. 8.3b, startng from the last node of V, n order to to obtan a set of backward constrants. Addng the equalty constrant on shfts and breaks, ths leads to the followng set of constrants for the above example: S 1 +B 1 +B 2 +B 3 0 S 1 S 2 +B 1 +B 2 +B 3 +B 4 0 S 3 +B 3 +B 4 +B 5 0 S 2 S 3 +B 2 +B 3 +B 4 +B 5 0 S 1 S 2 S 3 +B 1 +B 2 +B 3 +B 4 +B 5 = Shft Schedulng wth Breaks Wth ths llustraton, we are now ready to gve a formal defnton of the mplct break model. Let [est b kn, lstb kn ] denote the break start tme wndow of shft (k, n). Break wndows wll not be regarded as cyclc,.e. f a shft startng on the seventh day admts breaks on the followng day, we wll assume that these breaks start on an magnary eghth day. For each possble start tme n k K [est b kn, lstb kn ], one break varable B l s used, ndexed by l L n order of start tmes. n N k Break ndces assocated wth earlest break start tmes n the tme wndows of dfferent shfts are denoted by L est, and the set of breaks assocated wth latest start tmes L lst. By l est := mn L est, we denote the overall earlest break and by l lst := max L lst the latest break. For each break l L, we defne the set L B (l) := {l L l l } of breaks startng no earler than l. The correspondng set of shfts whose break tme wndows are subsets of L B (l) s K B (l) := {(k, n) k K, n N k, [est b kn, lstb kn ] LB (l)}. Analogously, we defne a set L F (l) := {l L l l} of breaks startng no later than l and the set K F (l) := {(k, n) k K, n N k, [est b kn, lstb kn ] LF (l)} of related shfts. In the extended set coverng formulaton wth breaks, the workload coverage by shfts s reduced by breaks. We therefore ntroduce a coeffcent matrx [b tl ] wth b tl = 1 f break l covers perod t and b tl = 0 otherwse. For these coverage coeffcents, break tmes are consdered as cyclc,.e. a break on the eghth day reduces the coverage on the frst day. Consequently, shfts startng on the frst and last day of the one-week schedulng horzon use dfferent break varables even f these breaks refer to the same actual start tmes. Ths dea of wrap-around break varables was ndependently proposed by Aykn [2000] and Brusco and Jacobs [2000]. Based on model (8.1)-(8.4), the set coverng formulaton ncludng breaks reads as mn c k S kn + c sht O t k K n N k subject to a tkns kn k K l L n N k (k,n) K F (l) b tl B l + O t d t t T (8.7) S kn + S kn + B l 0 l L lst \ {l lst } (8.8) l L F (l) (k,n) K B (l) l L B (l) B l 0 l L est \ {l est } (8.9) 167

184 8. Implct Modellng of Flexble Break Placement v 1 w 1 v 2 w 2 v 3 w 3 s v 4 w 4 t v 5 w 5 w 6 w 7 Fgure 8.5.: Example network for equvalence proof of mplct break handlng. S kn k K n N k B l = 0 (8.10) l L S kn 0 and nteger k K, n N k (8.11) B l 0 and nteger l L (8.12) O t 0 and nteger t T (8.13) Inequaltes (8.7) are the coverage constrants. (8.8) and (8.9) are sets of forward and backward constrants, spannng over successvely more break and shft varables n forward and backward drecton, respectvely. Constrant (8.10) ensures that shft numbers match break numbers. All varables are nonnegatve and nteger ((8.11), (8.12), (8.13)). Bechtold and Jacobs [1996] prove that forward and backward constrants and the equalty constrant are suffcent condtons for the exstence of a break attrbuton f no extraordnary overlap (EO) exsts. Let (k 1, n 1 ) and (k 2, n 2 ) be two shfts. The break start tme wndows [est b k 1 n 1, lst b k 1 n 1 ] and [est b k 2 n 2, lst b k 2 n 2 ] of (k 1, n 1 ) and (k 2, n 2 ) exhbt extraordnary overlap f the break start tme wndow of (k 1, n 1 ) completely les n the nteror of the break start tme wndow of (k 2, n 2 ) (or vce-versa),.e. est b k 2 n 2 < est b k 1 n 1 and lst b k 1 n 1 < lst b k 2 n 2. We wll shortly llustrate basc deas of the proof n Bechtold and Jacobs [1996] whch we wll refer to n Secton 9.4. We must show that suffcent numbers of breaks are avalable for each set of shfts. Any set of shfts can be dvded nto assocated sets of shfts whch compete for breaks whch are contaned n the break wndows of both shfts. Snce each set of shfts s made up of dsjont sets of assocated shft whch do not mutually compete for breaks, t s suffcent to show that for each assocated set of shfts, suffcent numbers of breaks are avalable. Related to a gven set of assocated shfts s a number of breaks. We wll now extend the shft set by all shfts whose vald breaks are subsets of ths set of breaks. As an example, take the assocated set {S 1, S 3 } and the respectve set {v 1, v 3 } of nodes n Fg These shfts compete for breaks {B 1,..., B 5 } correspondng to the nodes {w 1,..., w 5 }. However, S 2 also competes for these breaks. Provng the suffcency of breaks for the extended set of shfts effectvely provdes a stronger condton than usng the orgnal shft set. If the enlarged assocated set of shfts appears n a forward or backward constrant, nothng remans to be shown. As an example, the set {S 1, S 2, S 3 } n the above example makes part of a forward constrant. Let us therefore take the assocated set {S 2, S 3, S 4 } correspondng to the nodes {v 2, v 3, v 4 } n Fg The correspondng break set s {B 2, B 3, B 4, B 5, B 6 }. One forward and one backward constrant span around ths set of breaks, namely the forward constrant B 1 + B 2 + B 3 + B 4 + B 5 + B 6 S 1 + S 2 + S 3 + S 4 168

185 8.4. Shft Schedulng wth Breaks + forward constrant backward constrant constrant on varable subset Fgure 8.6.: Graphcal llustraton of varable sets n forward/backward constrants. and the backward constrant B 2 + B 3 + B 4 + B 5 + B 6 + B 7 S 2 + S 3 + S 4 + S 5 Subtractng from the equalty condton 5 k=1 S k = 7 l=1 B l yelds the nequaltes B 7 S 5 and B 1 S 1. Due to the constructon of forward and backward constrants, the sets of break varables n both of these constrants must be dsjont. Furthermore, t can be shown that by the absence of EO, the sets of shft varables have to be dsjont. We can therefore add the latter constrants and substtute n the equalty constrant, yeldng B 2 + B 3 + B 4 + B 5 + B 6 S 2 + S 3 + S 4 Ths shows that suffcent numbers of breaks are avalable for the gven set of shfts. The proof thus bascally combnes forward and backward constrants, makng use of the fact that the complementary sets of shft and break varables are dsjont f EO s absent. Ths dea s llustrated n Fg Each box represents one varable, e.g. a break varable. Boxes whch are covered by the respectve constrants have blue colour. The complementary varable sets (shown n lght yellow) are n fact dsjont, and we can combne a forward and backward constrant to generate a new mplct constrant on a varable subset (represented by the boxes on the rght). We wll get back to ths llustraton n Secton 9.4 where we wll show that ths no longer holds when generalsng mplct modellng to two dmensons. To show the effect of extraordnary overlap, magne that n the above example, shft S 3 only admts a break of type B 3,.e. the edges (v 3, w 4 ) and (v 3, w 5 ) would not be part of the network n Fg Ths ntroduces EO snce the break wndow ({B 3 }) of S 3 s completely contaned n the break wndow of S 2 ({B 2, B 3, B 4 }). Then forward and backward constrant do not generally ensure a feasble assgnment. As an example, t can be easly verfed that settng S 2 = 1, S 3 = 1, B 2 = 1 and B 4 = 1 (and all other decson varables to 0) obeys all forward and backward constrants wthout admttng a feasble break assgnment to S 3. In fact, the complementary varable sets of the forward constrant B 1 + B 2 + B 3 S 1 + S 3 and the backward constrant B 3 + B 4 + B 5 + B 6 + B 7 S 3 + S 4 + S 5 are no longer dsjont, and the necessary constrant B 3 S 3 s not mplct. An nterestng alternatve proof for the suffcency of forward/backward constrants has been gven by Rekk et al. [2003]. It s based on an explct formulaton of the transportaton problem wth varables denotng the number of breaks of gven types assgned to a specfc shft. Rekk et al. [2003] apply Benders reformulaton to ths model and retreve exstence condtons for the break assgnment as cuttng constrants on the rays of the dual program. It s then shown that most nequaltes are domnated by others when EO s absent whle the remanng condtons buld the forward/backward constrant set. 169

186 8. Implct Modellng of Flexble Break Placement A number of researchers have used the aforementoned formulaton to represent flexble break placement, ncludng Jarrah et al. [1994], Thompson [1995] and Brusco and Jacobs [2000]. It allows for a formulaton wth only one varable for each break start tme f all break duratons are equal and f EO s absent. Furthermore, the number of forward and backward constrants s lnear n the number of shfts. Alternatvely, Gaballa and Pearce [1979] have proposed to use one break varable for each start tme and each shft. Aykn [1996] generalses ths dea, usng one set of break varables for each of three breaks n a shft. In order to match break and shft numbers, one equalty constrant s created for each shft. As n the model of Bechtold and Jacobs [1990], the number of constrants s lnear n the number of shfts. However, many more break varables are needed n general. A man advantage of the model of Gaballa and Pearce [1979] and Aykn [2000] s ts generalty snce t naturally ncorporates multple breaks of dfferent duratons. Furthermore, t s not restrcted to settngs wthout extraordnary overlap. Aykn [2000] shows that whle hs model uses more break varables, t often entals lower numbers of nonzeros n the constrant matrx. On a set of cyclc shft schedulng problems, he demonstrates the computatonal superorty of hs approach. However, Topaloglu and Ozkarahan [1998] showed that on a set of tour schedulng problems, the Bechtold/Jacobs model generally performed better. Aykn [2000] does not make use of an dea gven by Bechtold and Jacobs [1990], reducng the number of nonzero elements n the constrant matrx. To explan ths transformaton, let S kn + B l 0 (k,n) K F (l) l L F (l) be the forward constrant for an l L lst \ {l lst }. Addng the equalty constrant (8.10) (and multplyng by 1) yelds the complementary constrant (k,n) K\K F (l) n N k S kn + l L\L F (l) B l 0 whch may nvolve less nonzero coeffcents. The analogous transformaton can be appled to backward constrants. It s lkely that ths dea would have resulted n better results on the test cases consdered by Aykn [2000]. It s worth mentonng that mplct modellng s not restrcted to break representaton. As summarsed n Secton 2.8, other applcatons nclude mplct models of flexble shft start tmes [Moondra, 1976] [Thompson, 1995], tour schedulng [Baley, 1985] [Çezk et al., 2001] and starttme bands n tour schedulng [Jacobs and Brusco, 1996] [Brusco and Jacobs, 2000], lmted employee avalablty [Thompson, 1990] and flexble placement of blocks of controllable work [Thompson, 1992]. A general methodology for mplct models has been gven by Çezk and Günlük [2002], ncludng an analyss of representatonal complextes under dfferent assumptons Avodng Extraordnary Overlap Several publcatons have shown how to overcome restrctons of the Bechtold/Jacobs model. As descrbed above, wrap-around break varables can be used to break cyclcty [Aykn, 2000] [Brusco and Jacobs, 2000]. If shfts contan more than one break, Topaloglu and Ozkarahan [1998] and Aykn [2000] propose to employ several sets of break varables and forward/backward constrants. Analogously, dfferent break duratons can be tackled by ntroducng separate varables and constrants for each duraton [Rekk et al., 2003]. 170

187 8.5. Avodng Extraordnary Overlap Surprsngly, the extraordnary overlap condton has receved far less attenton. Ths s probably due to the fact that EO s not very frequent n real-world schedulng problems. Aykn [2000] notes that break lengths and start tme wndows usually do not change wth the shft types. Usng the termnology of Chapter 5.2.1, real-world scenaros often use few break rules whch defne break duratons and tme wndows relatve to shft startng tmes. Bechtold and Jacobs [1996] note that even f break wndows exhbt some extraordnary overlap, nsuffcent break avalabltes are not very frequent even f forward/backward constrants do not guarantee the exstence of an assgnment. Çezk and Günlük [2002] show that when EO s present, we can use a set of constrants whch s quadratc n the number of shfts. Rekk et al. [2003] propose to add break constrants dynamcally from Benders reformulaton of the transportaton problem, ensurng feasblty even f EO s present. However, ths soluton s rather costly and potentally generates many domnated constrants. Another remedy conssts n usng the break model of Gaballa and Pearce [1979] and Aykn [1996] whch does not suffer from problems wth extraordnary overlap. However, ths model generally requres many more break varables. Furthermore, we would not explot the fact that EO s not very frequent n practce. In the followng, we wll show how EO can be explctly handled wthn the model of Bechtold and Jacobs [1990]. The basc dea s to partton the set of shfts such that break wndows n each shft class do not exhbt extraordnary overlap. We can then use one set of break varables and forward/backward constrants (and one equalty constrant) for each shft class. Let G = (V, E) be a drected graph representng extraordnary overlap relatons. We create one node v for each shft (k, n) and assocate the break wndow [est b kn, lstb kn ] =: [estb v, lst b v] wth v. G contans one edge for each par (v 1, v 2 ) such that the break wndow assocated wth v 1 covers the break wndow of v 2 n the sense of extraordnary overlap,.e. E := {(v 1, v 2 ) est b v 1 < est b v 2, lst b v 2 < lst b v 1 } The graph constructon clearly necesstates O( V 2 ) operatons. We note that extraordnary overlap s a transtve relaton,.e. f (v 1, v 2 ) E and (v 2, v 3 ) E, then also (v 1, v 3 ) E. If (v 1, v 2 ) E, the break wndow assocated wth v 2 s strctly tghter than the nterval of vald break start tmes of v 1, meanng that G does not contan cycles. If the edges are nterpreted as undrected, the EO graph s a comparablty graph, and the drected edges n E represent a transtve orentaton [Golumbc, 1980]. Our goal s to fnd a partton of V nto parwse dsjont subsets V 0,..., V m 1 such that m 1 =0 V = V and there s no edge between any two vertces n a subset,.e. shft classes are EO-free. Ths problem s closely related to the graph colourng problem f we nterprete edges as undrected: Partton the set V of vertces nto classes V 0,..., V m 1 (nodes n V are assgned colour ) such that adjacent vertces are n dfferent classes (have dfferent colours). Whle t s well-known that the colourng of general graphs s an N P-hard problem, Golumbc [1977] shows that comparablty graphs can be coloured n O( E ) tme f a transtve orentaton s known. In fact, the transtve orentaton nduces a natural partal orderng on the vertces of a comparablty graph. We can therefore assgn a heght h(v) to each vertex v. If v s a snk (.e. no edges emanate from v), we set h(v) := 0. Otherwse, we assgn h(v) := 1 + max{h(w) (v, w) E}. All vertces of equal heght are then assgned the same colour. Clearly, the resultng colourng s feasble snce adjacent vertces are assgned dfferent colours. Furthermore, there must be a drected path of length max v V h(v) n G. Because E s transtve, the vertces of ths longest path 171

188 8. Implct Modellng of Flexble Break Placement heght 4 1 [4,20] 7 [0,10] V 0 heght 3 2 [6,17] 8 [1,8] V 1 heght 2 [8,12] 3 [3,5] 9 10 [3,4] V 2 heght 1 [9,11] 4 5 [9,14] V 3 heght 0 6 [10] V 4 Fgure 8.7.: Colourng of a comparablty graph. buld a clque n the undrected graph correspondng to G, showng that the colourng s mnmal. The heght functon h : v N 0 can be determned n O( E ) tme by a recursve depth-frst search [Golumbc, 1977]. As an example, take the graph of Fg The graph contans two connected components. Edges whch follow from transtvty are not shown. Next to the nodes, the break wndows [est b v, lst b v] are gven. Nodes are attrbuted to fve layers correspondng to the colours. Due to transtvty, the path of vertces {1, 2, 3, 4, 6} bulds a clque n the undrected varant of the graph. Consequently, the chromatc number (mnmum number of colours) of the graph equals fve. We now get back to our break representaton problem. If the break wndows of two shfts exhbt extraordnary overlap, these shfts share breaks of equal start tmes. Separatng shfts and attrbutng a dstnct set of breaks to each shft class therefore amounts to replcatng varables for common breaks. As an example, vertces 2 and 5 n Fg. 8.7 share break start tmes 9 through 14. Snce the nodes are lnked by an edge, we would use separate break varables for all of these start tmes. Consequently, we should try to place shfts whch ask for common break start tmes n same shft classes. Mnmsng the number of requred break varables, we look for an m N and a partton of V nto classes V 0,..., V m 1 such that t S v V [estb v,lst b v] { v V : t [est b v, lst b v]} (8.14) s mnmsed. Clearly, the goal of graph colourng s advantageous toward ths end. However, we can see from Fg. 8.7 that the heght functon always assgns vertces to the bottommost layer (node 5 s attrbuted a heght of 1). It can furthermore be observed that nodes 1, 2, 3, and 5 ask for break start tme 12. Wth the above colourng, ths start tme would be present on four layers. In contrast, attrbutng node 5 to layer (heght) 2 results n only three break varables for start tme 12. It thus seems to be advantageous to algn nodes on the topmost layers. Ths s exactly done by Algorthm 5. The EO graph G = (V, E) s presented as nput, and the parttonng of V nto EO-free classes V, = 0,..., m 1, bulds the output of the algorthm. In the descrpton, δ (v) E and δ + (v) E denote the n- and outedges of v V. In comparson to the procedure for determnng the heght functon, the order n whch nodes are assgned to layers s reversed. The procedure bascally amounts to mposng a topologcal order on the graph. Keepng track of the number of unvsted nedges d[v] for each v V, the algorthm starts by assgnng vertces wthout predecessors to layer 0. In each teraton, we vst 172

189 8.5. Avodng Extraordnary Overlap Algorthm 5 BREAKPARTITIONING 0 d[v] δ (v) V 0 {v V d[v] = 0} repeat for all (v, w) v V δ + (v ) do d[v] d[v] 1 f d[v] = 0 then V +1 V +1 {w} end f end for + 1 untl V = the outedges of the nodes on the current layer and decrease the number of unvsted edges for adjacent nodes. In each teraton, the next layer s bult by the vertces whose predecessors have completely been assgned to prevous levels. Snce each node ether has an empty predecessor set or can be reached va a path from a node wthout predecessors, all nodes n V wll be covered by exactly one of the sets V. Clearly, f the shft types of the orgnal break parttonng problem do not exhbt extraordnary overlap, BREAKPARTITIONING degenerates, and V 0 wll be equal to V. Assumng an adjacency lst representaton of the graph, the ntalsaton phase of Algorthm 5 requres O( V ) steps. The man loop handles each edge exactly once and thus requres O( E ) operatons. The overall BREAKPARTITIONING algorthm therefore runs n O( V + E ) = O( E ) tme. It should be clear that BREAKPARTITIONING provdes alternatve colourng algorthm for comparablty graphs. In contrast to the heght procedure, vertex 5 n the above example (Fg. 8.7) s assgned to layer V 2 (heght 2). It s nterestng to note that the procedure does not make use of the break tme wndows assocated wth the nodes. Nevertheless, we can show that the resultng shft classes use the mnmum possble number of breaks. Theorem 4. BREAKPARTITIONING solves the break parttonng problem to optmalty. Proof. We have to prove that t S v V [estb v,lst b v] { v V : t [est b v, lst b v]} s mnmal n the soluton of BREAKPARTITIONING. Toward ths end, we prove the stronger property that { v V : t [est b v, lst b v]} s mnmal for each t. For a gven t, let v V be a node whose break wndow covers t (.e. t [est b v, lst b v]). Let v be on level n the result of BREAKPARTITIONING (v V ). Then there s a path v 0, v 1,..., v = v such that v V = 0,...,,.e. each level contans exactly one of the nodes. If v s the only node of ts component on level V (e.g. node 6 n Fg. 8.7), ths s obvous. If level V comprses several nodes n parallel (as for node 5), the clam follows from the fact that BREAKPARTITIONING places v on the uppermost possble level. Because the tme wndows of all predecessors n the path must be supersets of [est b v, lst b v], all levels V 0,..., V comprse start tme t. Let max be the last level contanng a node v wth t [est b v, lst b v]. By transtvty, the path v 0,..., v max = v wth v V s a clque f the graph s nterpreted as undrected. Therefore, 173

190 8. Implct Modellng of Flexble Break Placement v 1 w 1 v 2 w 2 w 3 v 3 w 4 v 4 w 5 w 6 Fgure 8.8.: Example for further separaton of shft classes. we need at least max + 1 EO-free classes to cover t. But ths s exactly the number of parttons used by BREAKPARTITIONING. For each shft class, we wll use one set of break varables and constrants. Snce there s no extraordnary overlap between shfts n a class, forward and backward constrants ensure assgnment feasblty for breaks and shfts. Usng Algorthm 5, the resultng number of break varables s mnmsed. Snce we stll share break varables between dfferent shfts, the number of varables wll generally be lower than n the approach of Gaballa and Pearce [1979] and Aykn [1996]. However, as the experments of Aykn [2000] ndcate, the sparsty of the constrant matrx also seems to play an mportant role n soluton effcency. Addtonally to complementng forward and backward constrants as descrbed n Secton 8.4, we wll make use of a further dea to reduce the number of nonzero constrant coeffcents. Shft classes determned by BREAKPARTITIONING wll usually be made up of subsets of shfts whch do not share any breaks. Ths s especally true when usng a one-week schedulng horzon snce break wndows of shfts startng on dfferent days are often dsjont. As an example, magne that a shft class exhbts the structure shown n Fg The shfts assocated wth v 1 and v 2 only compete for breaks w 1 through w 3 whle shfts relatng to v 3 and v 4 ask for breaks from {w 4, w 5, w 6 }. It s clear that such shft classes can be broken up, creatng one constrant system for each set of assocated shfts. Ths not only reduces the number of nonzero coeffcents n the constrant matrx, but also reduces the number of constrants. In the example, the combned system would necesstate seven constrants (three forward and backward constrants, one equalty constrant) whle after separaton, we only need sx constrants (one forward, backward and equalty constrant for each subsystem) General Shft Schedulng wth Multple Breaks Up to now, we have assumed that each shft contans exactly one break and that all breaks have equal duratons. If a shft contans more than one break, we can smply use one set of break varables and constrants for each break type (e.g. early, man and late break), see Topaloglu and Ozkarahan [1998] and Aykn [2000]. Analogously, f several duratons are used for the same break type (e.g. 30 and 60 mnute man breaks), the break system can be splt up further [Rekk et al., 2003]. We wll therefore solve one break parttonng problem for each break type and duraton. If there are subclasses of shfts whch do not mutually compete for break varables, the resultng shft classes can be decomposed. 174

191 8.7. Acton Tme Transformaton The result of ths decomposton procedure s a set R of break classes. In order to llustrate the complete set coverng model, we wll extend the above dentfers by a break class ndex r. The set of all breaks for class r R wll be denoted by L r whle K r are the shfts assocated wth r. Note that a shft can be part of several classes f t contans more than one break. The sets of earlest and latest break start tmes n the tme wndows of shfts n K r are denoted by L est r and L lst r, respectvely. lr est := mn L est r and lr lst := max L lst r are the earlest and latest overall break start tmes n class r R. For a break l L r, L B r := {l L r l l } and L F r (l) := {l L r l l} are the sets of breaks startng no earler and no later than l, respectvely. Kr B (l) and Kr F (l) are the correspondng sets of shfts whose break wndows are completely covered by L B r and L F r. B rl s the decson varable for break l n class r. The coverage reducton coeffcents are gven by b trl whch equal 1 f t s a perod covered by break l n class r and 0 otherwse. For reasons whch wll become clear n the sequel, the followng set coverng model for the weekly shft schedulng problem uses dstnct shortage costs c sht t for each tme nterval t T. subject to a tkns kn k K r R l L n N k mn c k S kn + c sht t O t (8.15) k K t T n N k b trl B rl + O t d t t T (8.16) S kn + B rl 0 r R, (k,n) Kr F (l) l L F r (l) l L lst r S kn + B rl 0 r R, (k,n) Kr B (l) l L B r (l) l L est r (k,n) K r S kn \ {l lst r } \ {l est r } (8.17) (8.18) B rl = 0 r R (8.19) l L r S kn 0 and nteger k K, n N k (8.20) B rl 0 and nteger r R, l L r (8.21) O t 0 and nteger t T (8.22) As descrbed before, the break constrants (8.17) through (8.19) only guarantee suffcent numbers of breaks for all shfts. To generate an actual shft plan, the break assgnment problem must be solved. One possblty s to use the transportaton problem assocated wth the shfts and breaks of each break class, e.g. by the network flow formulaton used n Secton 8.3. Alternatvely, Bechtold and Jacobs [1990] descrbe a smple sngle-pass procedure Acton Tme Transformaton Up to now, we have tactly assumed that the one-week schedulng horzon s dvded nto demand perods of equal lengths. Whle the workload levellng experments n Chapter 4 were based on a mnute dscretsaton, t wll generally be suffcent to represent aggregated workloads on a more coarse-graned level, e.g. 15 mnutes, reducng the number of coverage constrants. Ths s n accordance wth the workforce schedulng lterature proposng 15, 30 or even 60 mnute dscretsatons, see e.g. Henderson and Berry [1976], Morrs and Showalter [1983], Thompson [1995], Dowlng et al. [1997], Brusco and Jacobs [2000] and Rekk et al. [2003]. Whle a 15- or 30-mnute dscretsaton wll generally be suffcent throughout tmes of low actvty, we mght opt for a fner structure n perods n whch shfts or breaks start and end. In fact, shft start and end tmes may not concde at all wth gven nterval boundares. In models 175

192 8. Implct Modellng of Flexble Break Placement 8:00 am 9:00 am 11:00 am 12:00 am 1:00 pm 2:00 pm 4:00 pm component segments Fgure 8.9.: Component segments of shfts and demand perods. wthout breaks, Mason and Smth [1998] and Jaumard et al. [1998] ndependently proposed to dvde the plannng horzon nto component segments (Jaumard et al. [1998]: modfed demand perods) n whch no shfts start and end. In such segments, the shft coverage wll be unform. Instead of usng fxed-length tme perods, the schedulng horzon s then segmented nto ntervals of varable duratons, see Fg Not only shft start and end tmes, but also startng and endng tmes of breaks defned acton tmes [Thompson, 1996a]. If breaks can start wthn gven tme wndows, we can assume a sutable dscretsaton for break start tmes, e.g. fve mnutes. Each nterval between acton tmes wll then represent a demand perod t n model (8.15)-(8.21). In general, there wll be many tmes wthn the day wthout any shft or break start and end tmes, and a formulaton based on modfed demand perods wll usually be more compact than a model wth fxed length ntervals. Furthermore, an acton tme transformaton flexbly adapts to the gven scenaro, usng more detal n tmes of many acton tmes and less granularty n tmes of low actvty. We defne the workforce demand of a modfed demand perod to be the maxmum over the correspondng one mnute ntervals of the orgnal demand curve. If no understaffng s used, coverng the modfed demand perods s equvalent to coverng the orgnal workload hstogram (assumng a one mnute dscretsaton for breaks). If shortage s admtted, we wll defne the := κc sht f κ s the length of the demand perod. However, the transformed model wll only approxmate shortage costs f the orgnal demands wthn the segment are not unform. In fact, the model assumes all orgnal workloads to be equal to the maxmum over the nterval. understaffng cost c sht t of the modfed demand perod t as c sht t One remedy conssts n defnng addtonal acton tmes for each change n workload. Ths ntroduces many addtonal demand ntervals whle the error by a coarser-graned model s not mportant f segments are not too long. We wll therefore adopt a mxed approach. Frst, the orgnal tme horzon s dvded nto segments n whch acton tmes are only defned by shft and break start and end tmes. Break start tmes are dscretsed and algned to even fve mnute ntervals to ncrease the chance of several acton tmes to concde. Only f a break tme wndow does not admt a placement at an even fve mnute tme (f e.g. start tmes between 10:02 and 10:04 are admtted), we let ts (uneven) earlest start nduce an acton tme. In a second step, segments are subdvded f they do not exhbt unform workforce demands. Each 15-mnute subsegment defnes a separate demand perod f t contans a change n labour requrements. If the demand does not change over a perod of more than 15 mnute, ths larger nterval defnes a segment. By ths approach, we avod large declnes n approxmaton qualty for shortage costs. 176

193 8.8. Expermental Results No. shft types shfts shfts wth dfferent average break breaks break duratons wndow wdth B B C C C C C D D D D D D D D D Expermental Results Table 8.1.: Scenaro data. We now evaluate the above model on real-world arport plannng scenaros. A set of 16 test cases was selected whch wll also be used for the tests of the cyclc roster algorthm presented n the followng chapter. Further crtera for choosng these scenaros wll be gven n Secton We frst analyse the mpact of the acton tme transformaton on the number of demand perods. Afterwards, we compare the above break model whch generalses the mplct formulaton of Bechtold and Jacobs [1990] to the approach of Gaballa and Pearce [1979] and Aykn [1996] who used one set of break varables for each shft. For the tests, only man breaks have been consdered snce the supplementary relef breaks (usually of 15 mnutes lengths) have turned out to have only mnor mpact (see also Schndler and Semmel [1993]). All scenaros cover a one week horzon, startng on Monday. Basc propertes of the test cases are summarsed n Table 8.1. Wth exceptons n scenaros D25 and D26, the shft types of all scenaros can be realsed on all days of the week. Whle on some scenaros, all shfts nclude a man break, fve scenaros do not contan any breaks at all, and we wll use these scenaros only for an evaluaton of the temporal transformaton. The break wndow wdths ndcate the average number of admssble break start tmes over all shfts. It can be seen that scenaros B03 and D10 through D12 only comprse fxed breaks whle other scenaros ncorporate substantal break placement flexblty wth a largest break wndow of 496 mnutes n scenaro D25. As descrbed n Secton 1.1, workloads on arports usually exhbt strong varatons over the day and over the week. The dfferent requrement profles are descrbed by Table 8.2. Whle average demands over the one week plannng horzon are often moderate, peak demands rase up to 59 workers n scenaros C13 and D15. The standard devaton 1 reflects the demand fluctuatons. As an example, Fg shows the demand curve of scenaro C13. It can be seen that there are fve peak tmes wthn each day wth slghtly lower demands on the weekend. 1q P t T (dt d) 2 when d denotes the average workload. 177

194 8. Implct Modellng of Flexble Break Placement No. average demand maxmum demand standard devaton B B C C C C C D D D D D D D D D Table 8.2.: Demand curve characterstcs day 1 day 2 day 3 day 4 day 5 day 6 day 7 Fgure 8.10.: Demand curve of scenaro C

195 8.8. Expermental Results No. after shfts after and breaks hstogram B B C C C C C D D D D D D D D D Table 8.3.: Number of demand perods after acton tme transformaton. Results of the acton tme transformaton are gven n Table 8.3. The second column shows the number of demand perods after defnng acton tmes for shft and break start tmes. As explaned above, breaks are defned n fve mnute steps f they can be flexbly placed. It can be seen that especally on scenaros wth hgh break flexblty, the number of demand perods s already consderable. Scenaro D09 exhbts the hghest number of 1442 demand perods after ths frst step, correspondng to an average demand perod length of 7 mnutes. For the results gven n the thrd column, addtonal acton tmes were defned n 15 mnute steps f perods comprse demand changes. It can be seen that hstogram acton tmes add only few addtonal demand perods f the frst step already entals a hgh resoluton. However, on scenaros whch do not comprse breaks (B05, C14, C16, D16 and D27), hstogram acton tmes are the most relevant factor for the number of demand perods. On average, the resultng demand perods have lengths of lttle more than 18 mnutes. As a consequence, the adaptve acton tme transformaton of Secton 8.7 on average yelds less demand perods than the most fne-graned models n the lterature, usng 15-mnute demand ntervals. At the same tme, the transformed tme bass s able to ncorporate shfts whch do not start and end n even 15-mnute ntervals and makes use of a fner-graned break resoluton. As we use only one break, the number of BREAKPARTITIONING problems for the above problems s equal to the number of break duratons gven n Table 8.1. Results for the scenaros ncorporatng breaks are gven n Table 8.4. The second column gves the sums of edges for the dfferent break parttonng problems,.e. the number of break wndows exhbtng extraordnary overlap. Conformng wth statements of Bechtold and Jacobs [1990] and Aykn [2000], extraordnary overlap s qute rare n these real-world test cases, and only scenaros D09 and D26 exhbt EO at all. The thrd column gves the number of shft (and break) classes (layers) as a sum over the dfferent BREAKPARTITIONING runs. On scenaros wthout extraordnary overlap, ths number s equal to the number of BREAKPARTITIONING problems solved. On scenaros D09 and D26 n whch EO s present, we only need two layers, meanng that extraordnary overlap does not ental 179

196 8. Implct Modellng of Flexble Break Placement No. edges layers break classes B C C C D D D D D D D Table 8.4.: Results of BREAKPARTITIONING and addtonal spltup. No. wthout spltup wth spltup breaks per shft type varables constrants nonzeros varables constrants nonzeros varables constrants nonzeros B C C C D D D D D D D Table 8.5.: Szes of LP representatons for dfferent break formulatons. too many varable replcatons. The last column of Table 8.4 ndcates the number of break classes after spltup by assocated shfts and breaks. It can be seen that the ncrease upon the number of classes after BREAKPARTI- TIONING s consderable. Ths means that the formulaton after spltup uses many more systems of break varables and constrants. On scenaros admttng only one break start tme per shft, each shft class s only made up of one shft. We now compare the extended varant of the Bechtold/Jacobs break model wth the approach of Gaballa and Pearce [1979] and Aykn [1996] (Table 8.5). The frst two sets of columns n Table 8.5 ndcate key fgures of the Bechtold/Jacobs approach. For the second set of columns, shfts and breaks were splt up as descrbed before. The fgures relate to the above acton tme transformaton,.e. varables for flexble breaks are created wth a fve mnute dscretsaton. Whle the number of varables wth and wthout spltup s equal, the number of constrants s reduced by an average of 40.4%. Especally f shfts comprse only one break, the model wthout spltup uses sets of forward and backward constrants n an order of the number of shfts. In contrast, the advanced model uses only one equalty constrant. In such cases, the break formulaton s trval f shfts allow for only one break start tme. However, when lookng for a generc approach for a wde range of realstc scenaros, the superorty of the spltup approach s mportant. The advantage of the spltup dea becomes especally clear from the number of nonzero coeffcents n the constrant matrx. In both cases, the constrant substtuton of Bechtold and Jacobs 180

197 8.8. Expermental Results No. extended Bechtold/Jacobs model Gaballa/Pearce/Aykn model C C C D D D Table 8.6.: Runtmes for LP relaxaton of tour schedulng model. [1990] for reducng the number of nonzeros has been appled (see Secton 8.4). The spltup procedure effectvely reduces the number of nonzeros by an average of 92.8%. Clearly, usng one set of break varables for each shft type (thrd set of columns n Table 8.5) results n more break varables than n the aforementoned model; on average, 47.5% more varables are used. On scenaros contanng only fxed breaks, the number of varables s equal. Wth regard to the number of constrants, none of the models offers a clear advantage. Whle the model of Gaballa and Pearce [1979] and Aykn [1996] uses exactly one equalty constrant for each shft whch ncludes a break, the above model (after spltup) sometmes uses more constrants whle on other scenaros, sharng break varables between shfts results n a lower number of constrants. Note that even f the numbers of constrants (or even the number of nonzeros) are equal, the types of constrants can be dfferent. Wth regard to the number of nonzeros, the extended Bechtold/Jacobs model (wth spltup) seems to be slghtly superor. Comparng the approaches on the seven scenaros allowng for flexble breaks, the model wth one set of break varables per shft necesstates an average surplus of 29.2% nonzeros. However, none of the formulatons strctly domnates the other: Whle on scenaro D26, the latter model uses 168.8% more nonzeros, t entals a reducton of 47.9% n the number of nonzero matrx elements on scenaro C01. However, the assumpton of Aykn [2000] that hs model s generally superor wth regard to the number of nonzeros s not vald f the above advanced model s appled to typcal arport plannng scenaros. On the scenaros on whch the two models yeld dfferent constrant systems (sx scenaros), we have addtonally evaluated LP soluton tmes. Runnng tmes for model (8.15)-(8.21) have been generally too low to yeld expressve results. As the above model s meant as a frst step towards a cyclc roster algorthm, the soluton tmes for the LP relaxaton of the cyclc roster algorthm of Chapter 9 were taken for comparson. The exact test condtons and roster constrants wll be gven n Secton The algorthm has been mplemented n Vsual C++ 7.1, usng BCP of COIN-OR and XPRESS-MP Release 2004 of Dash Optmzaton as LP solver [Dash, 2004]. The experments were carred out on an AMD Athlon computer wth 2.16 GHz, 1 GB man memory and operatng system Wndows XP SP1. Computaton tmes are gven n Table 8.6 (n seconds). It can be seen that on fve of the sx scenaros, the proposed break model yelds better runtmes than the model usng one set of varables and constrants per shft. On average, the Gaballa/Pearce/Aykn model consumes 5.7% more runtme. Only on scenaro C01, the latter model yelds a better result. In our experments, we could observe that the performance of the dfferent models also depends on the roster parameters (see also Secton 9.10). In practce, the extended Bechtold/Jacobs model nearly always outperformed the Gaballa/Pearce/Aykn model, makng t the method of choce as a generc approach for modellng break placement flexblty. 181

198 8. Implct Modellng of Flexble Break Placement 8.9. Conclusons and Future Research In ths chapter, we have ntroduced mplct models for the handlng of flexble breaks n a weekly shft schedulng problem. We have shown that the attrbuton of breaks to shfts can be represented as a transportaton problem. Whle the resultng formulaton already ncorporated generalsatons of the orgnal shft schedulng model of Bechtold and Jacobs [1990], we have ponted out that an elementary assumpton named extraordnary overlap has only rudmentally been tackled up to now. We have developed a polynomal-tme algorthm whch separates the sets of shfts and breaks such that each resultng class does not ncorporate extraordnary overlap. It has been shown that by an addtonal spltup dea, the number of constrants and nonzero matrx elements can be sgnfcantly reduced. Usng these consderatons, the weekly shft schedulng formulaton has been generalsed to the case of multple breaks wth dfferent duratons. We have shown that by takng shft and break start and end tmes nto account, the tme scale can be transformed n an ntellgent way. Ths transformaton yelds a reducton n the number of demand perods wthout sacrfcng modellng detal at tmes of hgh schedulng flexblty, e.g. due to breaks. By emprcal analyss on real-world plannng scenaros, we have demonstrated the effcacy of the acton tme transformaton. In an evaluaton of the break model, we have shown that splttng up shfts and breaks by assocated sets s crucal n developng effcent representatons. The extended break formulaton has been shown to be superor to an alternatve formulaton not only n terms of the number of varables, but also wth regard to the sparsty of the constrant matrx. Computatonally, the new procedure mostly performs better than the alternatve approach. Whle the test cases ncorporated ether no break, a fxed break or rather large break wndows, the scenaros are representatve of arport staff plannng problems. On such scenaros, the extended Bechtold/Jacobs model s not only theoretcally superor by sharng break varables, but also seems to be approprate as a generc approach n real-world ground staff plannng. The weekly shft schedulng model could be extended by further constrants, e.g. by the shft restrctons of Secton Whle n practce, the model often naturally yelds nteger solutons, we have not descrbed a systematc approach for arrvng at nteger solutons. Instead of enhancng the solated shft schedulng formulaton, we wll use the model as a bass for an ntegrated cyclc rosterng algorthm n the followng chapter. Acknowledgements I would lke to thank Torsten Fahle for the dscussons and deas on the effcency of the BREAK- PARITITIONING algorthm. 182

199 9. Cyclc Roster Generaton by Branch-and-Prce Tower: Lufthansa 893, number one, check for workers on the taxway. Plot: Roger... (after a short whle) We ve checked the workers, they are all workng. from a rado message In the prevous chapter, we have ntroduced a basc model for demand-level schedulng ncludng flexble breaks. Even f we have consdered a cyclc weekly schedulng horzon, we have not explctly bult roster lnes for the ndvdual employees. The settng was therefore a shft schedulng problem whch addtonally consders shft overlappng between the days. In contrast to shft schedulng, rosterng takes constrants on vald sequences of shfts nto account (see Chapter 2). In the followng, we wll buld upon the formulaton of Chapter 8 and develop a novel model and algorthm for ntegrated cyclc rosterng Introducton Cyclc rosters (equvalently, shft patterns or rotatng schedules) represent sequences of shfts desgned for a group of employees. One worker starts on each week on the roster, swtchng cyclcally from one week to the next. The basc prncple s most easly descrbed by an example. In the roster of Fg. 9.1, two shft types A and B are used; sgnfes a day off. Four employees work on ths schedule. After fnshng one week, each worker swtches to the subsequent week whle worker four turns to the frst week. All workers therefore rotate over the pattern for a gven perod of tme, e.g. a flght season. The lower part of Fg. 9.1 shows the shft coverage,.e. the number of shfts of types A and B for each day of the week. Clearly, the coverage s constant for the whole season for whch the roster s unrolled. Naturally, all staff workng on a roster must have equal contract types wth regard to weekly work hours and dentcal sklls. Cyclc rosters are frequently used to schedule Mon Tue Wed Thu Fr Sat Sun 1 A A A A A 2 A A B B B 3 B B A A A 4 B B B B B A B Σ Fgure 9.1.: Cyclc roster example. 183

200 9. Cyclc Roster Generaton by Branch-and-Prce full-tme staff at arlnes and arports, but also n call centres, hosptals, emergency servces and n publc transport, see e.g. Bennett and Potts [1968], Khoong et al. [1994] and Çezk et al. [2001]. Many of these organsatons are facng contnuous labour requrements on seven days a week, 24 hours a day. On the one hand, cyclc rosters are qute rgd and nable to adapt to changes n labour requrements. Restrcted avalabltes of employees, e.g. due to tranngs, llnesses or vacaton, cannot be acounted for. However, they offer a maxmum degree of farness n the dstrbuton of shfts [Mllar and Kragu, 1998]. Furthermore, workers can foresee ther dutes for a whole plannng season n advance. Arports are frequently oblged to use cyclc rosters due to unon regulatons or company polces. Short-term demand peaks or staff absences are usually compensated by shft swaps or part-tme staff. For planners, cyclc roster generaton s a very demandng task. Two classes of constrants have to be consdered [Ernst et al., 2004]: Demand constrants: The roster should cover the workforce demands gven per tme perod or per shft type. Unon and legal regulatons: These typcally specfy mnmum and maxmum consecutve workdays, the number of weekends off, f sngle days off can be gven, etc. The objectve n roster constructon can be the sze of the workforce, labour costs, measures relatng to roster qualty (lke weekends off, consecutve workdays, etc.) or combnatons of these. Due to the large scale of arport rosterng problems and the multtude of restrctons, manual roster creaton s burdensome and error-prone. Glover and McMllan [1986] menton an example of planners takng between 8 to 15 hours to create a schedule for 70 to 100 employees. On arports, t s frequent practce to reuse rosters from one season to the next wth only slght modfcatons for changes n labour requrements. As n the precedng chapter, we wll assume requrements to be gven by a demand curve. As cyclc rosters are not able to adapt to fluctuatng demands, requrements should be based on a model week wth typcal workloads [Gaballa and Pearce, 1979]. Clearly, demands must be cyclc. For several reasons, demand-level schedulng s partcularly approprate for cyclc roster generaton. On the one hand, rotatng schedules are created for a whole plannng season n advance, and actual task-level workloads are generally not exactly known. On the other hand, all workers must cover the qualfcaton requrements of all work task,.e. workloads naturally have to be homogeneous. The creaton of cyclc rosters nvolves dfferent lnked aspects, ncludng the determnaton of approprate daly shfts, the sequencng of shfts and days off and the cyclc closure. As shown n Chapter 2, many authors have taken sequental approaches, frst solvng shft schedulng problems for each day and subsequently assgnng days off and shfts, see e.g. Bennett and Potts [1968], Emmons [1985] and Lau [1994]. Whle nowadays, non-cyclc rosterng problems are usually solved n an ntegrated way (e.g. Jarrah et al. [1994], Brusco and Jacobs [2000], Rekk et al. [2003]), there has not been any publcaton on ntegrated cyclc tour schedulng to the knowledge of the author. In fact, all references for cyclc rosters buld upon demand fgures per shft type, see e.g. Balakrshnan and Wong [1990], Mason [1999], Muslja et al. [2000] and Felc and Gentle [2004]. Cyclc roster approaches have regularly taken specal assumptons. Whle some models (e.g. Laporte et al. [1980]) only allow for equal shfts on subsequent workdays, other approaches provde no control over shft successons [Çezk et al., 2001]. Models frequently allow for only one shft type [Rosenbloom and Goertzen, 1987] or one shft length, meanng that constrants on weekly workng hours are mplct n the number of shfts, see e.g. Mason [1999]. Most publcatons do not ncorporate meal and rest breaks and do not represent weekend-off constrants 184

201 9.2. Problem Descrpton [Balakrshnan and Wong, 1990]. Other approaches are very heurstc n nature (e.g. Khoong and Lau [1992], Khoong et al. [1994]) or apply only to specal restrctons (e.g. Felc and Gentle [2004]). In ths work, we propose a more generc model and algorthm for cyclc roster generaton whch apples to a large varety of scenaros. Mason and Nelsen [1999] note that t s very dffcult to develop a sngle truly generc package that can be used for all rosterng problems. As ths s also true for plannng practce on arports, we have tred to defne a settng whch covers most typcal restrctons. The resultng model s stll more general and covers more constrants than any approach before. The formulaton wll be ntegrated n determnng daly shfts and shft and dayoff postons smultaneously. It wll apply to contnuous as well as dscontnuous operatons and wll ncorporate one or multple flexble breaks per shft. Furthermore, t wll allow for operatve plannng wth gven workforce szes as well as what-f analyses wth flexble staff szes. Especally n recent years, most soluton approaches for cyclc and non-cyclc staff schedulng problems have bult upon lnear or nteger programmng [Chew, 1991] [Ernst et al., 2004]. We wll devse a branch-and-prce approach for cyclc rosterng whch bulds upon the generalsed set coverng formulaton of the precedng chapter. The soluton method wll based upon prevous propostons but use a new representaton of rosters n order to overcome lmtatons of alternatve approaches. We wll furthermore gve some annotatons on the use of mplct models n roster generaton. The chapter wll be structured as follows: In the next secton, we descrbe the constrants for our cyclc roster approach. Dfferent modellng approaches wll be revewed n Secton 9.3 whle Secton 9.4 descrbes how a week-based representaton of cyclc rosters can be extended for our complex settng. The full model s presented n Secton 9.5, usng column generaton to mplct represent varables (Secton 9.6). In Sectons 9.7 and 9.8, we wll show how connected nteger solutons are obtaned by sutable branchng strateges. Secton 9.9 wll descrbe some generalsatons of the model. Fnally, we wll gve expermental results (Secton 9.10) and a summary (Secton 9.11) Problem Descrpton The cyclc roster problem conssts n determnng a shft pattern of several weeks subject to restrctons on the valdty of shft and day-off sequences, coverng gven workforce requrements as well as possble. Two dfferent plannng scenaros are magnable. In most cases, the planner wll create an operatonal roster for the next season, mplyng that the staff sze s fxed whle and understaffng may be acceptable. In other cases, the planner may be nterested n a what-f analyss of mnmum workforce szes to cover gven demands. A possble scenaro s the estmaton of staff costs due to the acquston of addtonal clents. To provde maxmum flexblty, we wll assume mnmum and maxmum lmts w mn and w max for the number of roster weeks to be gven. Fxed staff sze plannng then corresponds to the case w mn = w max. As n the prevous chapter, shft types wll be denoted by K. Each shft type can be realsed on a set N k N of days of the one-week plannng horzon N := {1,..., 7}. Shft type realsatons (k, n) (k K, n N k ) wll also be referred to as shfts and ental costs of c k. Shfts are attrbuted to the day on whch they start. Whle we allow for dfferent shft types on consecutve days, bad shft transtons should generally be avoded. As an example, a nght shft should not be followed by an early shft. Such transtons can be avoded by prescrbng mnmum rest tmes between shfts. Addtonally, shfts on consecutve days are often constraned to start at the same tme or to follow a forward creepng pattern, meanng that start tmes on subsequent days are nondecreasng. We wll therefore restrct shft startng tmes to a gven nterval around the start tme on the precedng day. Mn- 185

202 9. Cyclc Roster Generaton by Branch-and-Prce mum rest tmes and start-tme offsets can be aggregated by defnng G k K to be the set of vald predecessor shft types for k K. Inconvenent transtons from a shft type k 1 to k 2 wll be penalsed by a nonnegatve value τ k1,k 2. We wll assume that k G k for each k K. τ k1,k 2 wll be calculated as a lnear measure of the start tme dfference between k 1 and k 2,.e. τ k,k = 0 k K. A smlar constrant refers to shft successons over days off. In general, a sequence of nght shft, day off and early shft s not admssble snce the tme off would be too short. A day off s generally defned as an off-duty perod of at least 24 + h hours where h s usually between 0 and 12 hours. More generally, a day-off stretch of κ days must ensure a perod of 24κ + h hours off duty. We wll aggregate ths nformaton, defnng H k K to be the set of vald day off predecessors of shft type k K. No penaltes wll be mposed for day-off transtons. Consecutve days on buld so-called workstretches whch wll be restrcted to mnmum and maxmums numbers of m on mn and mon max shfts, respectvely. Analoguously, day-off stretches wll be lmted to a mnmum and maxmum of m off mn and moff max days off, respectvely. Sngle days off can e.g. be avoded by settng m off > 1. We wll assume that mon mn 7 and moff max 6 mn whch s suffcent n all realstc cases. In practce, shft types usually have lengths whch are multples of e.g. 30 or 60 mnutes. To provde control over weekly workng hours, we assume that a shft type k K covers a number of u k N work unts each of whch e.g. corresponds to 30-mnute tme perod. We wll restrct each roster week to comprse between u mn and u max work unts. Snce labour contracts prescrbe weekly workng hours, we wll ensure that a roster s made up of an average number of u avg weekly work unts up to a gven tolerance of u tol unts. The user can furthermore specfy an A-out-of-B weekends-off constrant. Snce blocked weekends are vrtually always undesrable, ths wll automatcally mply an even spreadng of weekends off. In accordance wth most workforce schedulng publcatons (see e.g. Koop [1988], Thompson [1993], Ernst et al. [2004]), we wll follow a multobjectve approach. Our prmary goal wll be the mnmsaton of labour shortages. Among solutons entalng equal shortages, we wll mnmse shft costs. We wll therefore defne shortage penaltes whch exceed average shft type costs per tme perod. Note that when the number of roster weeks s not fxed, less roster weeks ental lower shft costs f shft costs are reasonably defned. Addtonally, shft costs provde means for avodng e.g. nght shfts. Inconvenence costs for shft type transtons are regarded a subordnate objectve. We wll therefore assume max k1,k 2 τ k1,k 2 mn k c k. The aforementoned cyclc rosterng problem s N P-hard whch follows from the complexty results of Barthold III [1981] for cyclc staffng problems wth ntermttently avalable resources. Furthermore, the changng shft assgnment problem analysed by Lau [1994] and the contnuous shft assgnment problem of van den Berg and Panton [1994] buld N P-hard subclasses of the above settng Modellng Approaches In the followng, we wll revew dfferent column generaton models for the cyclc roster problem. The formulatons wll be analysed wth regard to ther sutablty to cover the above restrctons as well as constrants whch may come up n the future. For ease of exposton, we wll assume demand fgures to be gven per shft. The cyclc roster formulaton wll later be based on the set coverng formulaton from the precedng chapter, meanng that labour requrements wll be gven per tme perod. A set of equalty constrants wll be used to couple shft and roster models. In nteger programmng formulatons of the cyclc roster problem, columns (varables) represent subsequences (buldng blocks) of shfts. In the dfferent formulatons, these buldng blocks represent ether workstretches, weeks or sngle days. Dfferent constrants are mposed n the ln- 186

203 9.3. Modellng Approaches X 1 X 2 X 3 X 4 X 5 Mon A B Tue A B Wed A 1 1 B Thu A B Fr A 1 1 B Sat A 1 1 B 0 Sun A 1 1 B 0 Mon = 4 Tue = 4 Wed = 4 Thu = 4 Fr = 4 Sat = 4 Sun = 4 Fgure 9.2.: Workstretch encodng. ear program n order to match these basc blocks and to form a vald roster. For llustraton, we wll show how the roster of Fg. 9.1 s represented n the dfferent models. Two shft types A and B wth demand fgures as gven n the lower part of the table wll be used. The shfts are planned n a cyclc roster of four weeks length wth every other weekend off. Laporte et al. [1980], Chew [1991], Lau [1996b] and Mason [1999] have proposed to dvde rosters nto workstretches 1. For the purpose of ths model, workstretches are defned as sequences of consecutve shfts along wth the followng block of days off. Constrant coeffcents represent the shfts and days off whch are covered by the workstretch, and nteger varables denote the number of chosen workstretches of dfferent types. Cost coeffcents typcally represent labour costs or penaltes for nconvenent workstretches. The nteger program therefore chooses a costmnmal set of compatble workstretches to cover workloads. Fg. 9.2 shows a restrcted nteger program for the workstretch scheme. As an example, the frst column n program represents a workstretch startng on Monday, consstng of four shfts of type A and two subsequent days off. The upper part of Fg. 9.2 represents shft coverage constrants. Addtonally, we must ensure that each day of the roster s covered w tmes f w s a gven number of roster weeks [Mason, 1999]. Ths s accomplshed by the constrant system n the lower part. Note that workstretches contrbute to the day equaltes wth days on and days off. If there are no restrctons wth regard to shfts surroundng days off, rosters naturally decompose by workstretches, see e.g. Koop [1988]. Alternatvely, varables and columns of the nteger program may represent roster weeks, see Fg Whle shft transtons wthn the week are ncorporated n the gven week patterns, 1 Workstretches have also been denoted as basc patterns [Chew, 1991], stnts [Mllar and Kragu, 1998] or work blocks [Muslja et al., 2000]. 187

204 9. Cyclc Roster Generaton by Branch-and-Prce X 1 X 2 X 3 X 4 Mon A B Tue A B Wed A 1 1 B Thu A B Fr A 1 1 B Sat A 1 1 B 0 Sun A 1 1 B 0 weeks = 4 Fgure 9.3.: Week encodng. specal attenton must be gven to the valdty of transtons between the weeks. Rosenbloom and Goertzen [1987] ntroduce specal transton varables to ensure valdty wth regard to mnmum and maxmum days on and off at week boundares. We could also use smaller buldng blocks. As an example, Çezk et al. [2001] and Çezk and Günlük [2002] solve seven daly shft schedulng models and combne these nto a tour schedulng formulaton. Feasblty wth regard to start tme dfferences on consecutve days s ensured by explct lnk varables or, projectng out the lnk varables, by a constrant system smlar to the mplct break constrants descrbed n Secton 8.3. Larger buldng blocks are concevable as well. When we have to grant A out of B weekends off, t can be advantageous to buld unts of B weeks wthn the column generator. Ths dea relates to Emmons [1985] and Burns and Koop [1987] who propose to buld rosters by combnaton of blocks of B weeks. However, ths approach entals the largest potental number of varables. Furthermore, the optmal or gven roster length may not always be a multple of B, or there may be no weekend-off constrant at all. For these reasons, we wll not further pursue ths approach. Whle t may seem natural to solve the above models by column generaton, specfc settngs may allow for a complete enumeraton of buldng blocks, see e.g. Laporte et al. [1980] and Rosenbloom and Goertzen [1987]. In more general settngs however, complete enumeraton becomes prohbtve. In the followng, we wll assume that problems are decomposed when workstretch or week encodng are used, addng columns dynamcally va a column generator subproblem (cf. e.g. Easton and Rossn [1991], Gamache and Soums [1998] and Mason and Smth [1998]). Clearly, the workstretch representaton easly ncorporates mnmum and maxmum bounds on the number of workdays and days off. Furthermore, mnmum rest tmes between shfts are easly handled wthn the column generator. Mnmum temporal dstances between shfts over days off are dffcult to take nto account and would requre specal constrant systems lke n Çezk and Günlük [2002]. Whle average workng hours can be represented by an addtonal constrant n the master program (and a larger search space n the subproblem), mnmum and maxmum weekly workng hours cannot be taken nto account. In contrast, ths task s easy f weeks are taken as buldng blocks. But whle observng bounds on consecutve days on and off s easy wthn weeks, specal care has to be gven to transtons 188

205 9.3. Modellng Approaches X 1 X 2 X 3 X 4 Mon Tue Wed Thu Fr Sat Sun Mon = 4 Tue = 4 Wed = 4 Thu = 4 Fr = 4 Sat = 4 Sun = 4 Fgure 9.4.: Roster contanng dsconnected subcycles. Mon Tue Wed Thu Fr Sat Sun Fgure 9.5.: Dsconnected subcycles. between the weeks. The same s true for mnmum rest tmes between shfts and over days off at the week boundary, creatng a feasblty problem for week transtons n two dmensons. Çezk et al. [2001] only show how weeks of fve workdays can be extracted from an mplct model combnng daly set coverng formulatons. In contrast, bounds on workdays and days off cannot be easly ncorporated. Mnmum tmes between shfts and over days off could be respected va an mplct constrant system. Whle average workng hours could be covered va an addtonal constrant, there s no easy way to guarantee adherence to mnmum and maxmum workng hours per week. In week and workstretch formulatons, mnmum numbers of weekends off over the complete roster can be easly respected va an addtonal constrant. Nevertheless, weekends off generally have to be equally dstrbuted whch s not easy to represent. Another problem n all formulatons arses from dsconnected subcycles [Laporte et al., 1980] [Mason, 1999]. Fgure 9.4 gves an example for a workstretch formulaton. For ease of exposton, only one shft type s used. The roster comprses four workstretches Mon Tue, Wed Sun, Thu Fr, Sat Wed. As can be easly verfed, all constrants are observed, but the workstretches cannot be composed nto a sngle rotaton. Fgure 9.5 shows workstretches as arcs, leadng from ther frst day to the day after ther last day; weekday nodes are shown as lnes. From ths graph, t becomes clear that Mon Tue/Wed Sun and Thu Fr/Sat Wed form dsconnected subcycles. The problem of dsconnected subcycles s closely related to the subtour problem n IP representatons of vehcle routng and travellng salesman problems, see e.g. Dantzg et al. [1954], Fsher 189

206 9. Cyclc Roster Generaton by Branch-and-Prce sngle shfts workstretches weeks Consecutve dffcult easy easy wthn weeks, days on/days off dffcult between weeks Mnmum rest tmes dffcult easy easy wthn week, between shfts dffcult between weeks Mnmum rest tme dffcult dffcult easy wthn week, over day off dffcult between weeks Mnmum and maxmum dffcult dffcult easy workng hours per week Average workng hours easy easy easy per week Dstance between dffcult dffcult dffcult weekends off Dsconnected subcycles may exst may exst may exst Table 9.1.: Comparson of dfferent cyclc roster formulatons. and Jakumar [1981] and Lawler et al. [1985]. Dsconnected subcycles may arse n all of the above models, but are less lkely to occur n week and sngle-day formulatons. Laporte et al. [1980] and Mason [1999] show how to elmnate dsconnected subcycles by means of cuts and branchng, respectvely. Other authors buld several cyclc rosters from the subcycles (e.g. Burns and Koop [1987]) or mplctly tolerate ther exstence (Rosenbloom and Goertzen [1987], Çezk et al. [2001]). We wll assume that subcycles are undesred snce attrbutng employees to separate rosters sacrfces farness of shft attrbutons. Table 9.1 summarses advantages and dsadvantages of workstretch, week and sngle-shft encodng. Obvously, the Çezk et al. [2001] model of combnng daly set coverng formulatons nto a tour schedulng formulaton s not approprate for the settng descrbed above. The man flaw of the workstretch model s ts dffculty to represent mnmum and maxmum workng hours per week. If the above settng s enrched by further constrants n the future, these are lkely to refer to weeks; Rosenbloom and Goertzen [1987] even state that vrtually all labour restrctons concern weekly schedules. We wll therefore adopt the week formulaton and show how all aforementoned constrants can be represented. We wll assume that a work week starts on Monday and ends on Sunday. Whle the column generaton approach of Chapter 7 was developed from a compact formulaton, the compact model for the above problem would amount to defnng one varable per roster poston. However, weeks n cyclc rosters are somorphc, and attrbutng varables to specfc weeks entals symmetry problems [Felc and Gentle, 2004]. In contrast, the column generaton formulaton does not attrbute weeks to specfc postons and therefore naturally avods symmetry. We wll thus only make reference to the compact formulaton n nteger branchng (Secton 9.7) Encodng Week Transtons In the precedng secton, we have seen that many roster constrants are easy to obey n the week formulaton. However, t becomes more dffcult to ensure valdty between roster weeks. We therefore have to ensure that the nteger program chooses weeks such that the shft sequence 190

207 9.4. Encodng Week Transtons 1 4 end of week days on days off days on days off days on start of week Fgure 9.6.: Transportaton problem for numbers of days on/off. at the end of one week matches at least one other week start,.e. weeks can be lnked wthout volatng constrants. Before descrbng the generaton of weeks n more detal, we wll analyse the restrctons governng valdty of week transtons. For the moment beng, we wll neglect weekend-off constrants. Frst, we must observe mnmum and maxmum lmts on the number of consecutve days on and off. As an example, let [m on mn, mon max] = [3, 5] and [m off mn, moff max] = [1, 2]. Ths means that f e.g. a week ends on a sngle day on, there must be another week startng wth at least two and at most four days on. If a week ends on e.g. three days on, t can be lnked to ether a week startng on a maxmum of two days on or to a week commencng on one or two days off. Analoguously, only weeks obeyng certan startng condtons can follow a week endng on days off. Sequences of days on and off at week boundares represent feasblty condtons whch must be sutably encoded. Fgure 9.6 shows the basc stuaton. Nodes on the left-hand sde represent week endngs on dfferent numbers of days on (blue) and off (red). Nodes for week starts are shown on the rghthand sde. Vald week transtons are represented by edges. The attrbuton of matchng numbers of days on and off can be nterpreted as a transportaton problem, matchng supples of week endngs to demands of week starts. It s easy to observe that the problem of ensurng matchng numbers of weeks s equvalent to the shft-break attrbuton problem of Secton 8.3. By constructon, t s obvous that the network does not exhbt extraordnary overlap (EO) as defned n Secton 8.4. However, there are addtonal restrctons n our approach. Shft types on consecutve days on must be chosen such that start tmes only dffer by a lmted tme. The basc stuaton s llustrated n Fg Nodes on the left-hand sde correspond to start tmes of Sunday shfts whle rghthand sde nodes represent start tmes of Monday shfts. In the example, start tmes are allowed to devate by at most one hour. Agan, matchng condtons could be encoded by mplct constrant. In ths way, Çezk et al. [2001] couple seven daly shft schedulng formulaton to a tour schedulng model. Usng ths dea only at week boundares would be a means of ensurng start tme valdty. Whle the above example can be seen to obey the extraordnary overlap condton, ths s generally not true f addtonal mnmum rest tmes must be observed between shfts. Analoguously, lmtng shft transtons over days off can ental extraordnary overlap. We therefore cannot use the lnear-sze constrant system of Bechtold and Jacobs [1990]. Instead, we would have to resort to a quadratc number of constrants (see Çezk and Günlük [2002]) or use the separaton logc of Secton 8.5. Furthermore, shft transtons not only mply feasblty condtons, but can also ental nconvenence costs. However, as opposed to shft successons wthn weeks, transtons at 191

208 9. Cyclc Roster Generaton by Branch-and-Prce 8:00 8:00 shft start on Sunday 9:00 10:00 11:00 9:00 10:00 11:00 shft start on Monday 12:00 12:00 Fgure 9.7.: Transportaton problem for shft start tmes on successve days. week endngs week starts Fgure 9.8.: Two-dmensonal transportaton problem for week transtons. week boundares may not be too crtcal, and t may be acceptable to neglect transton penaltes between weeks. To ensure matchng numbers of weeks, we must obey both lmts on the numbers of days on and off and restrct shft transtons, creatng a matchng problem n two dmensons (Fg. 9.8). In analogy to Fg. 8.6, Fgure 9.9 vsualses the sets of varables whch are covered by forward and backward constrants n two dmensons (blue boxes). In Secton 8.4, we have sketched the proof of Bechtold and Jacobs [1996] for the suffcency of forward and backward constrants to ensure assgnment feasblty. The basc dea of the proof conssts n combnng forward and backward constrants whose complementary varable sets are dsjont f extraordnary overlap s absent. However, we see that n Fg. 9.9, the varables represented by the lower left and the upper rght (yellow) boxes are present n the complementary sets of both forward and backward constrant. Ths means that even f there s no extraordnary overlap, complementary varable sets wll not be dsjont n two dmensons. The proof of Bechtold and Jacobs [1996] therefore does not apply, and forward and backward constrants wll generally not be suffcent to encode matchng condtons between weeks. forward constrant backward constrant Fgure 9.9.: Forward and backward constrants n two dmensons. 192

209 9.4. Encodng Week Transtons week start junctons week end junctons week start junctons weeks lnks Fgure 9.10.: Week lnk encodng. Usng a quadratc number of constrants n each dmenson (accordng to Çezk and Günlük [2002]) would be a remedy. The resultng number of constrants could be mplctly dealt wth, generatng transton cuts dynamcally; Çezk and Günlük [2002] descrbe how cuts can be separated by determnng mnmum flow capactes. However, prelmnary experments have shown that even f only non-domnated cuts were generated, the overall performance of the approach was poor. Dealng explctly wth successon feasblty between weeks amounts to ntroducng addtonal varables representng the numbers of week transtons of each type. Each such lnk varable s related to gven numbers of days on or off and shft types at week starts and endngs. We wll refer to the characterstcs of week starts or endngs as junctons. A juncton can be represented by a par (k, m) K N and an addtonal ndcaton of the juncton type (day-on/day-off). As a example, let (k, m) be a week start juncton. If t s a day-on juncton, k refers to the shft on Monday and m to the number of days on at the week start. If (k, m) represents a week start off-day juncton, k denotes the frst shft n the week and m the number of days off at the week start. The valdty of week transtons can be checked usng only nformaton on the junctons. If e.g. (k 1, m 1 ) s a week end day-on juncton and (k 2, m 2 ) a week start day-on juncton, the two correspondng weeks follow each other f k 1 G k1 and m 1 + m 2 [m on mn, mon max]. Weeks can then be nterpreted as connectng week start and end junctons whle lnks buld brdges between week end and start junctons. Shft type transton penaltes τ k1,k 2 can be accounted for n the costs of lnks. The basc dea s sketched n Fg Red nodes represent week start (equvalently, lnk end) junctons, blue nodes week end (equvalently, lnk start) junctons; week start junctons are replcated on the rght sde. The order of weeks n the example s gven on the week edges. Lnk varables enable us to explctly represent feasble week transtons n a lnear program by enforcng the numbers of week start junctons to match the number of target junctons of lnks and week endngs to equal the numbers of lnks startng on the respectve junctons. Rosenbloom and Goertzen [1987] use smlar transton varables n a smple settng admttng only few feasble weeks and lnks encodng feasblty wth regard to bounds on days on and off. In our settng, we wll not only generate weeks dynamcally, but also defer lnk varable generaton to a column generator. Ths allows for dealng mplctly wth lnk varables whose potental number s bquadratc n the number of days on/off and shft types. Because we assumed m off max 6, each week wll comprse at least one shft. Consequently, valdty of shft transtons can always be ensured at the nterface between subsequent week. Snce 193

210 9. Cyclc Roster Generaton by Branch-and-Prce furthermore m on max 7, a workstretch cannot span over more than one week. Consequently, a week wth seven days on must be preceded and followed by days off, and encodng feasblty wth regard to the length of workstretches does not nvolve more than two adjacent weeks. It s nterestng to note that the mplct formulaton descrbed above can be obtaned from an explct model by projectng out lnk varables, see Çezk and Günlük [2002]. Clearly, the resultng model s only equvalent f all lnk varables have costs of 0 whch s not the case n the above model. Theoretcally, t s also possble to use half-mplct approaches, e.g. by usng a separate mplct constrant system to encode shft type transtons for each combnaton of days on/off at week starts/endng. Ths potentally results n a quadratc number of lnear-complexty constrant systems. It remans to be nvestgated f mxed-mplct approaches are compettve wth pure mplct or explct approaches. Regardless of the model used, we may face the subcycle problem descrbed n Secton 9.3. The explct formulaton wll generally be more susceptble to dsconnected solutons snce t leaves lower degrees of freedom for matchng week starts and endngs. We wll defer ths problem to Secton 9.8 where we wll descrbe how dsconnected solutons can be cut off by specalsed branchng rules Integer Programmng Model The followng column generaton formulaton for the cyclc roster problem s based on the weekly shft schedulng model of Secton 8.6. Addtonal week and lnk varables wll be coupled to the shft varables and represent the sequencng aspect of rosterng. Whle coverage and break constrants are consdered as before, addtonal roster constrants apply to the level of weeks and lnks. By combnng these models, we arrve at an ntegrated model for cyclc tour schedulng. As before, the model ncorporates decson varables for shfts (S kn for k K, n N k ), breaks (B rl for break class r R and break ndex l) and shortages (O t for tme perod t T ). Shfts of type k ental costs of c k whle shortages are penalsed by perod-dependent costs of c sht t. a tkn and b trl are shft and break coverage coeffcents for perod t. Break ndex sets for forward and backward constrants are denoted by L lst r and L est r whle lr lst and lr est are the latest and earlest breaks per break class. We newly ntroduce ndex sets I and J for vald weeks and lnks, respectvely. A week varable ϑ ndcates how many weeks of type I are used n a soluton. Analoguously, λ j denotes the number of lnks of type j J. Shft transton costs (τ k1,k 2 ) wthn each week are aggregated n a cost coeffcent c w for each week I. Analoguously, lnk costs c l j, j J, ncorporate transton costs f j represents a day-on lnk; note that day-off transtons do not ental penaltes. In order to respect bounds on the number of roster weeks and to account for average workng hours, we ntroduce an addtonal varable W denotng the number of roster weeks. Each dynamcally generated varable contrbutes a column to the constrant matrx. For week varables, we defne shft coeffcents s kn wth s kn = 1 f week covers shft (k, n) and 0 otherwse. By u, we wll denote the number of work unts aggregated over the week (u = k K n N k s kn u kn ). Furthermore, we must specfy the start and end junctons for each week I. We defne ws km,on = 1 f starts wth m days on and ncorporates shft type k on Monday (ws km,on = 0 otherwse). If starts wth m days off and shft type k on the frst workday of the week, we set ws km,off = 1 (ws km,off = 0 otherwse). Symmetrcally, we defne coeffcents we km,on and we km,off for week endngs on days on and off, respectvely. As descrbed above, lnks are counterparts of weeks, connectng week end (lnk start) junctons to week start (lnk end) junctons. We therefore defne ls km,on j = 1 f lnk j J matches a week end juncton wth m days on and shft type k on Sunday (ls km,on j = 0 otherwse). Analoguously, 194

211 9.5. Integer Programmng Model equals 1 f j starts on a juncton specfyng m days off and shft type k on the last workday of a week. Lnk end (week start) juncton coeffcents le km,on j and le km,off j are defned symmetrcally. The ntegrated cyclc roster model reads as ls km,off j subject to mn c w ϑ + c l jλ j + c k S kn + c sht t O t (9.1) I j J k K t T n N k a tkns kn k K r R l L n N k (k,n) K F r (l) b trl B rl + O t d t t T (9.2) S kn + l L F r (l) B rl 0 r R, l L lst r \ {l lst r } (9.3) S kn + B rl 0 r R, l L est r \ {lr est } (9.4) (k,n) Kr B(l) l L B r (l) S kn B rl = 0 r R (9.5) (k,n) K r l L r I I I I S kn + I ws km,on ϑ le km,on j J ws km,off ϑ le km,off j J we km,on ϑ ls km,on j J we km,off ϑ ls km,off j J s kn ϑ = 0 k K, n N k (9.6) j λ j = 0 k K : 1 N k, m m on max j λ j = 0 k K : m + 1 N k, m m off max j λ j = 0 k K : 7 N k, m m on max j λ j = 0 k K : 7 m N k, (9.7) (9.8) (9.9) (9.10) m m off max ϑ W = 0 (9.11) I u ϑ u avg W u tol (9.12) I u ϑ u avg W u tol (9.13) I w mn W w max and nteger (9.14) ϑ 0 and nteger I (9.15) λ j 0 and nteger j J (9.16) S kn 0 and nteger k K, n N k (9.17) B rl 0 and nteger r R, l L r (9.18) O t 0 and nteger t T (9.19) Objectve functon (9.1) vses at mnmsng a mx of shft costs, shft transton penaltes (gven week and lnk coeffcents) and understaffng penaltes. As n the model of Secton 8.6, (9.2) s a set of coverage constrants whle (9.3), (9.4) and (9.5) are forward, backward and equalty constrants for breaks. Constrant set (9.6) matches shft varables shfts used n the weeks. Whle (9.7) and (9.8) match the numbers of week start/lnk end junctons, (9.9) and (9.10) enforce equalty of junctons for week starts and lnk endngs. (9.11) determnes the number of roster weeks whch are restrcted by constrants (9.14). The roster week varable s addtonally employed n 195

212 9. Cyclc Roster Generaton by Branch-and-Prce nequaltes (9.12) and (9.13), enforcng average workng hours to be obeyed up to a gven tolerance. (9.15) through (9.19) are nonnegatvty and ntegralty constrants for week, lnk, shft, break and shortage varables. Whle parts of the work rules are explctly represent n model (9.1)-(9.19), other restrctons (e.g. mnmum and maxmum weekly workng hours) are mplct n the defnton of the ndex sets I and J. We wll thus only nclude vald weeks and lnks. The column generaton formulaton of the cyclc roster problem s based on representng only subsets I I and J J of the varables n a restrcted master program correspondng to (9.1)-(9.19). Vald weeks and lnks wll then be generated dynamcally and added to the master program. Wth regard to the classfcaton of Secton 6.2, (9.1)-(9.19) s a column generaton formulaton wth dentcal restrctons on the subsets. We wll shortly ndcate relatons to models proposed n the lterature. Model (9.1)-(9.19) uses an mplct representaton of weeks, usng shfts as gven by a dstnct set of shft varables. Ths strongly relates to the mplct model for non-cyclc tour schedulng of Baley [1985]. However, the above model specfes shfts explctly, provdng more control over shft sucessons than n the Baley model. Work hour constrants lke (9.12) and (9.13) have been ncorporated n the non-cyclc tour schedulng models of Jaumard et al. [1998], Mason and Smth [1998] and Mason and Nelsen [1999]. Two-dmensonal lnk encodng n a column generaton approach s a novel proposton. An llustraton of the block-angular structure of model (9.1)-(9.19) s gven n Fg For clarty reasons, nonnegatvty and ntegralty constrants and bounds on roster weeks are not represented Week and Lnk Generaton Snce the number of week and lnk varables n model (9.1)-(9.19) s very large, we only represent subsets I I and J J of the weeks and lnks n a restrcted master program. New weeks and lnks wth negatve reduced costs are then generated on demand. In order to solve the LP relaxaton, we wll frst drop the ntegralty restrctons n constrants (9.14) through (9.19). Secton 9.7 wll descrbe how nteger solutons can be obtaned by usng compatble branchng rules. Generatng lnk varables wth negatve reduced costs s farly easy and bascally amounts to enumeratng feasble combnatons of day-on/day-off stretches and shft types at the nterface between weeks. Let γk,m on and γoff k,m for week start (lnk end) junctons and η on be the dual prces assocated wth constrants (9.7) and (9.8) k,m and ηoff k,m be the dual prces of equaltes (9.9) and (9.10) for week end (lnk start) junctons. As an example, let (k 1, m 1 ) be the juncton for a week endng on m 1 days on wth shft type k 1 on Sunday. Analoguously, let (k 2, m 2 ) be the juncton of a week startng on m 2 days on and shft type k 2 on Monday. If k 1 G k2 and m 1 + m 2 [m on max], the week startng on (k 2, m 2 ) s mn, mon a vald successor of the week endng on (k 1, m 1 ). The reduced cost c on,on j of the correspondng lnk j s calculated by subtractng the nner product of dual prces and constrant coeffcents from the actual (penalty) costs. For the example, we obtan c on,on j := τ k1,k 2 + η on k 1,m 1 + γ on k 2,m 2 Analoguously, we can calculate reduced costs for vald day-off/day-off, day-on/day-off and day-off/day-on lnks. Note however that no penalty costs are ncurred for transtons over days off. Calculatng the mnmum cost lnk therefore amounts to determnng 196

213 9.6. Week and Lnk Generaton shft break shortage week lnk roster varables varables varables varables varables weeks coverage constrants [dt] mplct break constrants = shft 1 1 equalty = 0 constrants week start = 0 junctons week end 1 1 = 0 junctons 1 1 week equalty = 0 constrants uavg utol unt uavg utol Fgure 9.11.: Structure of the lnear program. 197

214 9. Cyclc Roster Generaton by Branch-and-Prce { mn mn (k 1,m 1 ),(k 2,m 2 ),k 1 G k2 m 1 +m 2 [m on mn,mon max] mn (k 1,m 1 ),(k 2,m 2 ),k 1 H k2 m 1 +m 2 [m off mn,moff max] mn (k 1,m 1 ),(k 2,m 2 ),k 1 H k2 m 1 [m on mn,mon max ] m 2 [m off mn,moff mn ] mn (k 1,m 1 ),(k 2,m 2 ),k 1 H k2 m 1 [m off mn,moff max] m 2 [m on mn,mon max ] τ k1,k 2 + η on k 1,m 1 + γ on k 2,m 2, η off k 1,m 1 + γ off k 2,m 2, η on k 1,m 1 + γ off k 2,m 2, } η off k 1,m 1 + γk on 2,m 2 (9.20) The calculaton can be accelerated by predetermnng mnmum dual values over start and end junctons. If e.g. a lnk start juncton cannot ental negatve reduced cost even f the mnmum end juncton cost s taken, we do not need to evaluate any of the combnatons nvolvng the start juncton. By solvng (9.20), we determne one or several lnks of mnmum reduced costs whch are added to the restrcted master program. The correspondng cost coeffcent c l j s set to τ k 1,k 2 for day-on transtons and 0 otherwse. The calculaton of (9.20) s lnear n the number of shft types and the wdths of the day-on and day-off wndows ([m on mn, mon max] and [m off mn, moff max]). The problem of fndng vald weeks wth negatve reduced costs and corresponds to solvng a specal resource-constraned shortest path problem (RCSP). Resources represent the number of consecutve days on and off and aggregated work unts over the shfts. The RCSP s N P-hard [Dror, 1994] and s usually solved by pseudo-polynomal dynamc programmng (DP) algorthms, see e.g. Desrosers et al. [1993], Jaumard et al. [1998]. For the generaton of weeks, we bascally defne DP states for each day, shft type and gven resource consumptons. States are unfolded n the order of weekdays, respectng vald shft transtons and mnmum/maxmum bounds on the number of days on and off. However, encodng week transtons by lnks and junctons ntroduces an aspect whch dstngushes the generaton of weeks from standard resource-constraned shortest path problems. In our model, we are gven dual prces for week start and end junctons, specfyng the frst and last shft type of the week and the number of ntal or fnal days on or off. Week start and end junctons defne startng and endng condtons for weeks. In contrast, there are no startng condtons n standard RCSPs,.e. resource counters are ntalsed e.g. to 0 at the start of the dynamc program and aggregated n the course of unfoldng the underlyng network. In our settng, we also have to provde control over the number of days on/off and shft type at the start of the week n order to consder dual prces of start junctons. Together wth the endng condtons as gven by end juncton prces, we are gven a two-sded resource-constraned shortest path problem. We wll therefore solve the RCSP n two steps: Day-on start juncton prces wll be handled by a frst dynamc program termed backward net. As day-on start junctons specfy the number of ntal days on n the week, the backward net wll nclude a counter for the number of remanng days on. After creatng ths frst stretch of days on, states are expanded va a day-off transton nto a forward net. Whle remanng days on decrease n backward net expansons, states n the forward net comprse a counter for the number of days on used so far. Whle the backward net only ncorporates day-on transtons, the forward net ncludes day-on and day-off state expansons. Whle day-on start junctons provde startng condtons for the backward net, day-off junctons represent weeks startng on days off. Day-off start juncton prces are therefore drectly consdered n the forward net. The basc dea s sketched n Fg The backward net s responsble for creatng the frst 198

215 9.6. Week and Lnk Generaton Mon Tue Wed Thu Fr Sat Sun A A A A - B B B A B B - - A - A A A - A A - - A A A A A Fgure 9.12.: Partton of week nto backward net part and forward net part. workstretch of each week (marked n blue) whle further stretches of days on and off are handled by the forward net (shown n orange colour). Addtonally to the prces of (week) start and end junctons (denoted as above), we have to ncorporate further dual values. The dual value π k,n assocated wth each of the constrants (9.6) gves a prce for shft type k on day n. The dual prces for constrants (9.12) and (9.13) ndcate the cost of a work unt; ther sum wll be denoted by ω. Fnally, each week contrbutes to the number of roster weeks, and φ wll denote the dual prce assocated wth the week equalty constrant (9.11). We start wth the descrpton of the backward net. Let P (k, n, m, u) represent the accumulated costs for a partal shft sequence wth shft type k on day n, remanng workdays m and aggregated work unts u, ncludng the work unts of shft (k, n). As mentoned before, the backward net only covers day-on transtons for the frst stretch of workdays. In the followng formula, we wll assume that prces γk,m on and γoff k,m equal for nvald start junctons, e.g. f 1 / N k for a day-on start juncton. Furthermore, we wll set P (k, n, m, u) = for nvald states. The DP recurrence for the backward net s then gven by P (k, n, m, u) := γk,m+1 on π k,n n = 1, u = u k mn [P (k (9.21), n 1, m + 1, u u k ) + τ k k,k] π k,n n > 1, u > u k G k : n 1 N k The frst term consders day-on juncton prces for states on the frst day (Monday) and subtracts the dual prce of the correspondng shft. Whle the counter u for the work unts equals u k after the frst shft, m denotes the remanng days on and s decremented for each day. The second term refers to all further days, assumng that DP states are evaluated n order of weekdays. For a gven state (k, n, m, u), mnmsaton runs over all states n the precedng layer (n 1) f remanng days and unts match. Addtonally to consderng dual costs for the current shft (π k,n ), the shft transton penalty τ k,k s accounted for. The recurrence equaton for the forward net s smlar, but ncludes addtonal day-off transtons and uses m as a counter for workdays accomplshed so far (nstead of countng remanng days down). Q(k, n, m, u) represents the accumulated costs of a state wth shft k on day n as the m th consecutve day on and aggregated work unts u. The forward net covers only shfts after an ntal stretch of workdays (from the backward net) or days off (usng start junctons) and therefore starts on the second day (n = 2). Agan, we wll assume Q(k, n, m, u) = for unknown states, e.g. f n <

216 9. Cyclc Roster Generaton by Branch-and-Prce work hours 56h 48h from backward net or start juncton 40h 32h 16h 8h 0h Mon Tue Wed Thu Fr Sat Sun days Fgure 9.13.: Exemplary expansons n the forward net. Q(k, n, m, u) := γ off k,n 1 π k,n [ mn mn P (k, n, 0, u u k ), k H k n n 1 [m off mn,moff max] mn k H k,n n 1 [m off mn,moff max] m [m on mn,mon max] ] Q(k, n, m, u u k ) π k,n m = 1, u = u k mn [Q(k m > 1,, n 1, m 1, u u k ) + τ k k G,k] π k,n k u > u k m = 1, u > u k (9.22) Agan, some words of explanaton are n place. The frst lne nserts day-off juncton values nto the forward net, usng shft k on day n and accountng for a frst day on (m = 1) and the work unts of shft type k (u = u k ). Lnes two and three refer to day-off transtons (m = 1), expandng states from the backward and forward net. Backward net expansons are restrcted to states n whch no further workdays have to be taken (P (k, n, 0, u u k )) whle for forward net states, the number of days on n the workstretch must be n [m on mn, mon max]. In both cases, the number of days off must be wthn the gven lmts [m off mn, moff max]. Addtonally to summng up work unts, dual shft costs π k,n are subtracted. The last lne refers to transtons between consecutve days on, takng shft costs as well as transton penaltes (τ k,k) nto account. In the defntons of P (k, n, m, u) and Q(k, n, m, u), we have tactly assumed that only states are evaluated whch can result n a vald soluton. A state (k, n, m, u) s e.g. nvald f n / N k, u > u max or m m on max n the forward net. An llustraton for the evaluaton of forward net states can be found n Fg The state space s only dsplayed wth regard to workng hours (work unts) and days of the week whle shft types and the day-on counter were left out. The above recurrence formulae evaluate states by referrng back to prevous states ( pullng ). However, (9.21) and (9.22) wll be typcally mplemented by expandng states n forward drecton ( reachng ). By the reachng strategy, we naturally evaluate only vald states whose number s qute moderate n practce. The dynamc programs wll thus be evaluated n order of ncreasng weekdays, expandng each state to the next layer(s). Dual values of week start junctons are ntally nserted nto the backward net (for day-on junctons) or forward net (for day-off junctons). 200

217 9.6. Week and Lnk Generaton Addtonally, fnal backward net states (for m = 0) wll be expanded to the forward net. Analysng the complexty of the above operatons, we frst note that the workstretches created by backward and forward net are dsjont. We can therefore gve bounds on the common complexty of both dynamc programs. The number of states s n the order of K m on max u max for each weekday ( N = 7), but ther exact number vares between the days. On the one hand, the possble values of m depend on the weekday. As an example, the forward net only contans states for m = 1 on Tuesday, for m {1, 2} on Wednesday etc. On the other hand, only a lmted number of dfferent sums of work unts are vald on each day. On Monday, the mnmum work unts amount to mn k K u k, and Saturday states whch may lead to a vald week wll have between max(u mn max k K u k, 0) and u max mn k K u k work unts. If we addtonally take restrctons on workstretch lengths nto account, ths can be used to addtonally prune the search space. In realstc test cases, we can furthermore assume that only very few sums of work unts wll be generated. In the extreme case of equal work unts for all shft types, the unt dmenson n the above dynamc programs degenerates, and aggregated unts wll reflect the number of workdays so far. The number of operatons for each vald state depends on ts type. Each node wll ether allow for day-on transtons (backward net states and forward net states wth m > 1) or for day-off transtons (forward net states wth m = 1). Day-on transtons necesstate G k operatons f k s the shft type of the state. Day-off transtons ental operatons n the order of H k (m off max m off mn + 1), but the exact complexty agan depends on the weekday. Addtonally, we have to take start juncton prces nto account, namely at backward net states for n = 1 and forward net states for m = 1 and n 1 m off max. It remans to be shown how weeks wth negatve reduced costs can be obtaned from the backward and forward net calculatons. Nodes of both dynamc programs (9.21) and (9.22) may represent fnal states of a week. Addtonally to subtractng dual values for week end junctons, we must consder costs of work unts and roster weeks. Fndng a mnmum cost week amounts to evaluatng { ( mn mn k K u [u mn,u max] mn [P (k, n, 0, u) η off n {7 m off k,7 n ], max,...,6} P (k, 7, 0, u) ηk,7 on, mn n {max(2,7 m off max),...,6} m [m on mn,mon max] mn Q(k, 7, m, u) ηon m [1,m on k,m max ] Q(k, n, m, u) η off k,7 n, ) } uω φ (9.23) where the second lne (P (k, 7, 0, u) ηk,7 on ) s only taken f the settng allows for seven days on (m on max = 7), meanng that the backward net contans workstretches of seven days. The frst two lnes retreve fnal states from the backward net, assumng that all prescrbed workdays from the start junctons have been carred out (m = 0). For n 6, the week wll end on days off, and we wll subtract the correspondng day-off juncton value. For n = 7 (f vald), we retreve a week whch s only made up of workdays and ends on a day-on juncton. Analoguously, we retreve weeks endng on days off from the forward net (thrd lne) f the number of workdays s n the vald range. The fourth lne corresponds to forward net states correspondng to week endngs on days on. In every case, dual costs of week unts (uω) and roster weeks (φ) are consdered. Let us shortly analyse the complexty of the above operatons. Day-off end junctons from the backward net (frst lne of (9.23)) are retreved by mnmsaton over shft types, unts and fnal days off n the order of K (u max u mn +1) m off max. For day-on endngs from the backward net (second lne), we mnmse over shft types and unts (complexty K (u max u mn +1)). Day-off 201

218 9. Cyclc Roster Generaton by Branch-and-Prce endngs from the forward net (thrd lne) addtonally requre a mnmsaton over vald numbers of days on ( K (u max u mn +1) (m on max m on mn +1) moff max). Fnally, day-on end junctons from the forward net (fourth lne of (9.23)) are retreved n the order of K (u max u mn + 1) m on max operatons. Actual reduced cost weeks are retreved by tracng back over the states whch have led to the respectve fnal state. The week s then added to the restrcted master program (9.1)-(9.19). The cost coeffcent c w j s calculated as the sum of hft transton penaltes accounted for n (9.21) and (9.22). Note that actual shft costs are coeffcents of the shft varables S kn and are only transferred to the column generaton subproblem va dual costs π k,n. Some loosely related approaches have been descrbed n the lterature. Mason and Smth [1998] consder weekly workng hours n column generaton for named rosterng. In the soluton of an RCSP for nurse schedulng, Jaumard et al. [1998] nclude matchng condtons wth regard to the prevous plannng perod. However, there s no need for a two-sded dynamc program n ther case. A smlar dynamc programmng formulaton can be found n Çezk et al. [2001] who however use explct nodes for days off. The two-sded backward/forward DP scheme s a novel contrbuton whch becomes necessary by the specal encodng of week lnks. The above subproblems for generatng lnks and weeks frequently yeld multple optmal solutons. In such cases, all resultng columns are added to the master program. It should be noted that the LP relaxaton of (9.1)-(9.19) s ntally nfeasble f no startng soluton can be provded. The volated constrants (9.12) and (9.14) for unts and roster weeks are therefore relaxed by ntroducng slack varables. By attrbutng hgh costs to the slack varables, we quckly reach feasblty wth regard to the orgnal problem whch s retaned afterwards Integer Branchng After descrbng the subproblems, we now return to the master program whch s bascally a set coverng formulaton. Many authors have noted that set coverng models exhbt advantageous nteger propertes and provde tght lower bounds, see e.g. Baley [1985], Jacobs and Bechtold [1993], Aykn [1996] and Mehrotra et al. [2000]. As a consequence, they lend themselves very well for soluton by LP-based branch-and-bound procedures. If a soluton s fractonal, we frst check f the value f of the roster week varable W s nteger. If not, we apply a branch and mpose W f on the frst branch and W f on the second branch. Ths knd of branchng turned out to have strong ntegersng effects, see also Smth and Wren [1988] and Gamache and Soums [1998] for smlar applcatons n crew schedulng. Note that under most realstc cost structures, shft costs wll ncrease monotoncally wth the number of roster weeks snce weekly workng hours are fxed (up to a gven tolerance). Conversely, f n the LP relaxaton at a search node, the value of the roster week varable s greater than f, t s reasonable to assume that the search node wll lead to a roster of at least f weeks. Ths justfes followng the roundup branch frst (see also Secton 9.10). Addtonally, we can branch on the shft varables S kn. If a gven varable S kn has a fractonal value f, we enforce S kn f on one of the branches and S kn f on the other. Branchng on varables whch are closest to an nteger value turned out to be advantageous n order to quckly fnd solutons of hgh qualty. However, rounddown branches turned out to ental rather slow convergence. We therefore search for the shft whose value s closest to the next hgher nteger value and frst follow the roundup branch. Clearly, roundng up s more constructve and therefore allows to obtan nteger solutons more quckly. When devsng branchng rules for remanng fractonaltes, we must respect compatblty wth the column generaton procedures descrbed before. In the shft plannng problem of Chapter 7, branchng rules were based on varables of the compact formulaton. Here we can follow 202

219 9.8. Subcycle Branchng a smlar approach. In analogy to the task par branchng of Secton 7.6, we branch on fractonal shft transtons wthn weeks. For each used shft transton (k 1, n 1 ) (k 2, n 2 ) between consecutve days on or over days off, we sum up the values ϑ of all weeks ncorporatng ths transton. If the sum for any shft transton has a fractonal value, say f, we branch and enforce the sum to be f on one branch and f on the other ( constrant branchng ). Clearly, ths can be easly ncorporated n the structure of the week subproblem by attrbutng the correspondng dual value to the shft transtons n the backward and forward net. As for shft branchng, we prefer roundup branches. If all week values are ntegral, lnks wll also be nteger because the related transportaton problem s naturally nteger, see e.g. Ahuja et al. [1993]. However, branchng on lnk varables s stll helpful f solutons are stll fractonal. Smlarly to shft transton branchng wthn the weeks, we search for fractonal transtons descrbed by lnks, preferrng roundup branches. Snce lnk column generaton bascally corresponds to complete enumeraton, dual values of lnk transton cuts can be easly ncorporated f some attenton s gven to the speedup dea of Secton 9.6. After applyng these branchng rules, week and lnk varables were always nteger. However, the break varables can stll be fractonal. Aykn [1996] notes that break fractonaltes are qute rare whch s confrmed by our experments. If fractonal values reman, these can be easly cut off by branchng accordng to the aforementoned rules. Note that these branch types do not gve an absolute guarantee for fndng nteger solutons. In contrast to the approach of Chapter 7, our nteger programmng model s based on a dscretsaton of the search space. We therefore am at renderng the derved varables ϑ, I, and λ j, j J, nteger. However, branchng bascally apples to the orgnal flow varables. In practce, t s common to devse branchng rules whch are emprcally suffcent for obtanng nteger solutons, see e.g. Mehrotra et al. [2000]. It should be clear that the above branchng rules leave only lttle room for fractonaltes. In practce, the above branch types were always suffcent for obtanng nteger solutons Subcycle Branchng As descrbed n Secton 9.3, resultng nteger solutons can stll contan dsconnected subcycles. An example s gven n Fg It can be seen that the used lnks match the weeks, but stll no contguous cyclc roster can be bult snce weeks {1, 2} and {3} are dsconnected. Under typcal roster restrctons, subcycles are even lkely to occur: Typcal basc patterns n rosters are e.g. made up fve workdays wth equal shft types and two days off. It s clear that week endngs of such patterns wll often be vald successors of ther own starts. Laporte et al. [1980] propose to cut off exactly one nteger soluton f subcycles arse. Clearly, ths s the weakest possble remedy for dsconnectedness. Mason [1999] provdes a revew on subcycle problems and descrbes a more nvolved three-way branch for a formulaton based on a workstretch representaton. In the followng, we wll analyse the connectedness of week-lnk solutons and derve a novel branchng scheme for the above soluton approach. We frst recall some notons of graph theory on drected graphs (dgraphs). A path v 1 v 2 n a dgraph G = (V, E) s a sequence v 1, v 2,..., v n of vertces such that (v, v +1 ) E for all = 1,..., n 1 and no edge s used more than once. A path v 1 v n that starts and ends at the same vertex (v 1 = v n ) s called crcut. A dgraph s strongly connected f for any two vertces v 1, v 2 V, there s a path v 1 v 2 and a path v 2 v 1. If a dgraph s not strongly connected, t contans more than one connected component. A path whch contans every edge of a dgraph exactly once s called an Euler path, and an Euler path startng and endng at the same vertex s an Euler crcut. As n prevous chapters, edges wth orgn (destnaton) node v are called outedges (nedges) of v. The number of outedges (nedges) of v s called the ndegree (outdegree) of v. 203

220 9. Cyclc Roster Generaton by Branch-and-Prce week start junctons week end junctons week start junctons weeks lnks Fgure 9.14.: Weeks and lnks generatng dsconnected subcycles. Now magne an nteger soluton to the cyclc roster problem. From the gven weeks and lnks, we must buld a closed cyclc roster. We defne V 1 and V 2 to be sets of vertces representng week start and end junctons, respectvely. In the example of Fg. 9.14, V 1 corresponds to the red nodes and V 2 to the blue nodes. For each week I whch s part of the soluton, we create ϑ edges between the junctons correspondng to ts start and end,.e. weeks are represented by edges n V 1 V 2. Analoguously, we nsert λ j edges between the week end and week start node correspondng to the orgn and destnaton of the lnk, respectvely. Lnks thus correspond to edges n V 2 V 1. The result s a bpartte roster graph. A cyclc roster now corresponds to an Euler crcut n the roster graph,.e. a crcut whch uses each edge exactly once. Accordng to a promnent result of graph theory, a dgraph contans an Euler crcut f and only f 1. the dgraph s strongly connected and 2. the ndegree of each vertex equals ts outdegree, see e.g. Wlson [1996]. Condton 2 exactly corresponds to constrants (9.7) through (9.10) of the cyclc roster problem, enforcng equalty of week and lnk junctons. We therefore only have to ensure that the roster graph s strongly connected. Subcycle problems are also treated n nteger programmng models of the vehcle routng and travellng salesman problems. When usng LP-based soluton methods, subtour elmnaton constrants are often added dynamcally to the model, see Lawler et al. [1985, p. 26]. The man dfference n cyclc roster generaton les n the fact that the ctes (junctons) to be vsted are not fxed n advance. In fact, junctons whch are used by a gven LP soluton do not need to be present n an optmal soluton. The necessary subcycle breakng restrctons cannot be formulated as lnear constrants. We wll therefore resort to a branchng scheme. Assume that an nteger soluton to model (9.1)-(9.19) s gven. We can then determne strongly connected components of the assocated roster graph, e.g. by Tarjan s algorthm [Tarjan, 1972]. If the graph s dsconnected, each strongly connected component represents one subcycle. Let V 1 V 1, V 2 V 2 be the week start and end junctons nvolved n the largest subcycle. By I V I, 1 V 2 we wll denote the set of weeks startng on a juncton assocated wth one of the nodes n V 1 and endng on a juncton whch s not assocated wth one of the nodes n V 2. Analoguously, the set J wll denote the all lnks startng n V 2 and endng on a juncton whch s not n V 2. J V 2 V 2 I V 1 V 2 (J V 2 V 1 ) represents all weeks (lnks) startng on a juncton n V 1 (V 2 ). Fnally, J V 2 V 1 and J V 2 V 1 are the sets of junctons whch do not end or start n V 1 or V 2, respectvely. 204

221 9.8. Subcycle Branchng We can now create a four-way branch wth the followng restrctons: 1. λ j 1 j J V 2 V 1 2. ϑ 1 I V 1 V 2 3. λ j = 0 j J V2 V 1 4. j J V 2 V 1 λ j = 0 Branch 1 and 2 enforce at least one lnk or week to emanate from the gven subcycle. Clearly, a fnal soluton mght not at all use junctons from V 1 or V 2. These cases are therefore covered by branch 3 and 4, forbddng lnks usng the correspondng junctons. Clearly these condtons could also be mposed on the week varables snce the junctons of lnks and weeks are synchronsed by constrants (9.7) through (9.10). It should be clear that the subcycle between V 1 and V 2 s not vald on any of the branches. Let us analyse the mpact of the above constrants on the structure of the subproblems. The constrants on branches 1, 3, and 4 refer to lnks. As lnks are bascally generated by complete enumeraton, these restrctons are easly ncorporated f some care s taken wth regard to the speedup procedure of Secton 9.6. The second branch s somewhat more complcated as t refers to the generaton of weeks by the backward/forward net approach. The constrant mples that we must be able to prce out combnatons of start and end junctons. Costs of weeks from V 1 to V 2 must therefore be reduced by the dual value of the branchng constrant. Ths however ntroduces nterdependences between week start and end juncton decsons. These are resolved by the followng approach: We frst execute the backward/forward dynamc programs as descrbed n Secton 9.6. If a resultng soluton lnks V 1 to V 2, we subtract the dual value of the branchng constrant. As ths dual value may render further reduced costs negatve, we run the two-sded RCSP algorthm for a second tme, allowng only for start junctons n V 1 and end junctons n V 2. Ths clearly means that followng the second branch entals n addtonal subproblem executons on the n th search tree level. Because the constrants on branches 1, 3, and 4 are much easer to ncorporate, we heurstcally prefer these lnk branches n the branch-and-bound procedure. Up to now, we have assumed that subcycle branches are only appled to nteger solutons. In practce, t wll be very dffcult to arrve at connected solutons f many ntegralty condtons have been mposed before. In the above exposton, we have used a roster graph, usng one edge for each sngle week and lnk. However, we can equvalently check connectvty on a graph whch uses only one edge for each week or lnk whch s part of the soluton,.e. we collapse multple edges to sngle ones. Clearly, ths connectvty graph s connected f and only f the roster graph s connected. If we are gven a fractonal soluton, we can buld the connectvty graph by ntroducng an edge for each postve week and lnk varable. Clearly, ths s an optmstc assumpton for connectvty snce we cannot expect each of these weeks and lnks to be part of a fnal soluton. However, ths enables us to render fractonal solutons connected. In the mplementaton, we apply nteger branches only to connected solutons,.e. we generate subcycle branches as long as solutons are not connected. 205

222 9. Cyclc Roster Generaton by Branch-and-Prce It s worth mentonng that other branches of lower order are concevable 2. However, the above four-way branch offers two dstnct advantages: On the one hand, t separates the complcatng week branch 2 from the easer lnk branches. On the other hand, t exhbts advantageous nteger propertes because the rght-hand sdes of branches 1 and 2 equal 1. Ths means that the subcycle branch wll often save us from an addtonal nteger branch on fractonal lnks. In frst experments, the above four-way branch has shown to outperform alternatve bnary or three-way branches. Imagne that we have arrved at a connected nteger soluton. Fndng an actual cyclc roster amounts to buldng an Euler crcut n the roster graph. Algorthms for ths task date back to the 19th century and were proposed by Herholzer [1873] and Fleury [1883]. Herholzer s algorthm s not only more effcent, but s also very ntutve. It bascally conssts n buldng edge-dsjont crcuts, each tme startng at a node whose outedges are not yet completely covered. Because we assume ndegrees to match outdegrees of each node, all edges can be covered by such crcuts. Due to connectedness, all of these crcuts can be lnked nto a sngle Euler crcut coverng all edges. The computatonal complexty of Herholzer s algorthm s n Θ( E ), see also Jungnckel [2002]. For the overall problem of buldng a roster, we addtonally have to assgn breaks as gven by the break varables. As descrbed n Secton 8.6, ths can be done by a smple sngle-pass procedure proposed by Bechtold and Jacobs [1990] Generalsatons In the followng, we wll descrbe some possble extensons to the above model whch refer to addtonal constrants whch may be requred n some rosterng settngs. Roster scenaros often specfy an A-out-of-B weekends-off constrant. Snce blocked weekends are vrtually always undesrable, ths automatcally mples that weekends off must be evenly spread over the roster. We wll only consder the case A = 1,.e. each B th weekend s a weekend off; generalsng to A > 1 s straghtforward. In order to evenly spread weekends off, t does not suffce to ntroduce an addtonal constrant n the master program. Instead, we decompose rosters nto blocks of B weeks at maxmum, see Emmons [1985], Burns and Koop [1987] and Panton [1991] for related approaches. Roster generaton wll then assgn each week to a week poston from {1,..., B} wthn these blocks. Each week n the B th poston s enforced to nclude a weekend off. Note that regardless of ts poston, each week covers shft demands of the unque model week. Addtonally to assgnng weeks to postons, we replcate the junctons. Junctons wll generally connect weeks of subsequent postons n cyclc order. The basc dea s sketched n Fg. 9.9, assumng B = 2,.e. each second weekend s a weekend off. The settng ncludes two week postons, entalng two systems of start and end junctons; the second set of end junctons s replcated on the left-hand sde. Lnks mostly connect weeks of subsequent week postons. However, the length of a roster may not be dvsble by 2, meanng that we also have to allow for shorter stretches between weekends off. Ths s done by admttng 2 The reader may verfy that the bnary branch wth condtons X j J V 2 V 1 λ j + X I V 1 V 2 ϑ 1 2w max 0 X j J V 2 V 1 λ j + X I V 1 V 2 ϑ 1 C A and X j J V2 V 1 λ j = 0, X j J V 2 V 1 λ j = 0 also nvaldates the current subcycle wthout cuttng off vald solutons. 206

223 9.10. Expermental Results week start junctons week end junctons week start junctons week end junctons lnks weeks wth/wthout weekend off lnks weeks wth weekend off week poston 1 week poston 2 Fgure 9.15.: Generalsed week lnk encodng for weekends off. lnks between each system of week end junctons and the start junctons of the last week poston. As an example, Fg. 9.9 shows a roster of fve weeks, ncludng a lnk between an end juncton of poston 2 and another start juncton of a week n poston 2. Consequently, the consecutve roster weeks 4 and 5 both nclude a weekend off. Introducng weekend-off constrants not only entals a replcaton of juncton systems and constrants, but also results n a lnear growth of the number of week and lnk subproblems to be solved. Addtonally, subcycle branches have to be generalsed. Another possble generalsaton regards the smultaneous creaton of several rosters. Rosters then relate to dfferent worker categores, and dfferent restrctons can apply to each roster. Workloads are covered by all rosters n common, accountng for nterdependences between the rosters. Dfferent subsets of shft types may be vald for the dfferent worker categores [Alvarez-Valdez et al., 1999]. When generatng multple rosters, we must take care wth the roundup cut for the number W of roster weeks descrbed n Secton 9.7. In general, we wll not be able to mpose lower lmts on the weeks of sngle rosters. In practce however, roundup cuts may stll be helpful n obtanng nteger solutons f we keep n mnd that they render the approach heurstc. Up to now, we have assumed that one worker s assgned to each roster week. However, f employees work n crews, more than one worker may be attrbuted to each roster week, meanng that demands are covered n multples of the crew sze [Laporte et al., 1980] [Chew, 1991]. The number of workers on each week s also known as the blockng factor of the roster. If all rosters whch are planned smultaneously have dentcal blockng factors, ths can be easly ncorporated by dvdng (and roundng up) demand fgures. If blockng factors are dfferent, we can stll dvde demands by ther greatest common dvsor. Remanng factors are consdered by lettng each week contrbute more than one shft coverage n the equalty constrants (9.6) Expermental Results The cyclc roster algorthm has been mplemented n Vsual C++ 7.1, usng BCP of COIN-OR for the mplementaton of branch-and-prce [Ralphs and Ladány, 2001]. XPRESS-MP Release 2004 was used as LP solver [Dash, 2004]. Basc data for the test cases was already gven n the evaluaton of the dfferent break models n Chapter 8. The scenaros were chosen by dfferent crtera. Frst, t was checked by vsual observaton f demands were typcal of a model week. Scenaros 207

224 9. Cyclc Roster Generaton by Branch-and-Prce No. orgnal used shft types n shft shft types schedulng LP relaxaton B B C C C C C D D D D D D D D D Table 9.2.: Workng subset reducton. had to span over at least seven days, and scenaros n whch workloads dffered substantally from day to day were left out. Furthermore, we have not ncluded scenaros wth crew tasks because t would not have been clear f we should use cyclc rosters wth blockng factors (see Secton 9.9) to cover such workloads. Addtonally, we have excluded scenaros whch obvously ask for a mxed workforce wth dfferent qualfcatons. These selecton rules resulted n the choce of 16 test cases. The scenaros were then restrcted to seven days, reachng from Monday to Sunday. Scenaros ncludng movable tasks were submtted to the levellng procedure of Chapter 4. Snce convergence of the branch-and-prce algorthm proved to be senstve especally to the number of shft types, we have restrcted the shft types to workng subsets. Whle n Chapter 7, we have used the ntal heurstc soluton for the choce of shft types, ths dd not seem to be approprate for demand-level plannng. We have therefore bascally used the approach of Mabert and Watts [1982] and Brusco and Jacobs [1998b] who propose to generate workng subsets by solvng the analoguous shft schedulng formulaton. The shft types employed by the resultng shft plan are then used for the soluton of the tour schedulng problem. In contrast to Brusco and Jacobs [1998b], we have not projected the weekly problem on a sngle day, but solved the weekly shft schedulng formulaton as descrbed n Chapter 8. By ths approach, we account for the fact that the days of the week may requre dfferent shft types n order to effcently cover demands. Table 9.2 shows the orgnal numbers of shft types and the numbers of shft types used n the shft schedulng soluton. It can be seen that the number of effectvely used shft types s generally qute moderate. It s worth mentonng that the shft schedulng solutons were nearly always nteger,.e. the shft type selecton s often based on actual demand-level shft plans. Scenaros C01, D16 and D26 stll asked for 33, 51 and 30 shft types, respectvely. In order to obtan moderately szed workng subsets, we have heurstcally restrcted these scenaros to the 20 most frequent shft types n the shft schedulng soluton. Clearly, t s not evdent that workng subsets from a shft schedulng model are also approprate 208

225 9.10. Expermental Results No. shft shfts pad shft duratons shft costs acton demands types mn. max. avg. mn. max. avg. tmes avg. max. std. dev. B B C C C C C D D D D D D D D D Table 9.3.: Scenaro data. for tour schedulng and cyclc rosterng problems. In practce however, t has frequently been observed that workng subset reductons do not severely affect soluton qualty f the reduced number of shft types allows for suffcently schedulng flexblty, see e.g. Easton and Rossn [1991], Bechtold and Brusco [1994b] and Brusco and Jacobs [1998b]. Brusco and Jacobs [2001] show that as few as three to fve shft types can be suffcent f ther choce s taken carefully. One possble explanaton for these observatons s that schedulng formulatons often allow for several alternatve optmal solutons, see e.g. Segal [1972], Thompson [1993] and Brusco and Johns [1995]. Workng subset methods not only make scenaros amenable to complex roster algorthms. Lmtng the number of used shft types s often also desred by planners, and many approaches have been descrbed whch treat shft type restrctons as mplct or explct objectves n rosterng, see e.g. Gaballa and Pearce [1979], Holloran and Byrn [1986], Schndler and Semmel [1993] and Brusco et al. [1995]. Another reason for usng lmted shft type sets s the admnstratve burden and the dffculty of managng brefng sessons when many shft start tmes are allowed [Brusco and Jacobs, 2001]. Snce organsatons usng cyclc rosters usually face strong unon regulatons, t s natural to assume that only a lmted set of shft types can be exploted. Workng subset methods then represent effcent means of determnng effcent sets of shft types before enterng nto the soluton of the roster problem, see also Secton 2.9. Table 9.3 summarses data on the resultng test cases. Besdes the numbers of shft types and shfts, we ndcate mnmum, maxmum and average shft costs and lengths. Note that these enttes refer to pad duratons,.e. unpad breaks are subtracted from the shft lengths. Furthermore, the table gves the numbers of acton ntervals (as defned n Secton 8.7) and nformaton on workloads throughout the week (average and maxmum demands as well as standard devaton). These scenaros were also used for the evaluaton of the break model n Chapter 8; further nformaton on the numbers of breaks and acton tmes can be found n Secton 8.8. We have used the cyclc roster algorthm to generate cyclc rosters of varable lengths whch cover labour requrements as completely as possble. We have therefore set w mn to 1 and w max to 150 whch was suffcent for coverng workloads n all test cases. Some scenaros contan workloads n perods whch are not covered by any shft type, meanng that shortage penaltes cannot be avoded. For all test cases, we have set the lmts [m on mn, mon max] on the number of 209

226 9. Cyclc Roster Generaton by Branch-and-Prce No. average number of average number of day on successors day off successors B B C C C C C D D D D D D D D D Table 9.4.: Vald successor shft types on days on and off. consecutve days on to [2, 6] and [m off mn, moff max] to [2, 4]. Shft type lengths were subjected to a dscretsaton of 30 mnutes,.e. work unts are counted n multples of half hours. Each roster week was constraned to comprse between 28 (.e. u mn = 56) and 52 (.e. u max = 104) work hours, the average work tme was set to 40 hours (.e. u avg = 80) wth a tolerance of 4 hours over the whole roster (u tol = 8). Between two shfts, we have mposed a mnmum rest tme of eght hours; the addtonal rest tme over days off (see Secton 9.2) was chosen as sx hours. Shft start tme dfferences between consecutve days were lmted to 120 mnutes. As explaned n Secton 9.2, we mpose transton penaltes for consecutve shfts wth dfferent start tmes. These penaltes were chosen to be lnear n the start tme dfferences. To ensure that penaltes are treated as a subordnate objectve, we normalse them wth the mnmum shft costs. For the tests, we have lmted transton penaltes for backward-creepng shft start tmes (e.g. start tme 10h on Monday, 8h on Tuesday) to 20% of the mnmum shft costs. For forward-creepng start tmes (e.g. 8h on Monday, 10h on Tuesday), we have used maxmum relatve penaltes of 5%. Perod shortages were penalsed by a factor of 1000 for each uncovered mnute, meanng that shortages are avoded whenever possble. Table 9.4 shows the numbers of successor shft types as averages over all shfts. It can be seen that the above parameter choces generally lead to consderable schedulng flexblty. Table 9.5 shows the number of states n the forward and backward dynamc programs as descrbed n Secton 9.6. In the rght column, the potental number of lnk varables s gven. Whle on some scenaros (e.g. C13, C17), the number of lnks s qute moderate, scenaros C01, D10, D17 and D28 ask for more than potental lnk varables. Clearly, representng these varables statcally n the master program would consderably slow down the smplex prcng. To speed up convergence of column generaton, we have slghtly perturbed the costs of weeks and lnks by attrbutng margnal costs to day-on and day-off stretches of dfferent lengths, see also Mason and Nelsen [1999]. In the above settng, we have added 0.01 to the costs of weeks and lnks nvolvng stretches of fve days on, 0.02 to four-day stretches and so on. Analoguously, we have attrbuted ncreasng costs to shorter day-off stretches. Note that ths not only mposes 210

227 9.10. Expermental Results No. number of states n potental number forward/backward net of lnks B B C C C C C D D D D D D D D D Table 9.5.: Number of forward/backward net states and potental lnks. cost perturbatons, but should also have a slght effect on preferrng longer stretches of days on and off whenever possble. Branchng decsons were taken as follows: If at the root node, the roster week varable W has a fractonal value, say f, then we apply the cut W f. If W s fractonal at a deeper search node, we apply a branch on the number of roster weeks as descrbed n Secton 9.7. If the roster weeks are nteger, we check for subcycles and apply the connectvty branch of Secton 9.8 f necessary. For the remanng branches, prelmnary experments have shown that shft transton branches (for week varables) and lnk branches more quckly yeld nteger solutons than branches on the shft varables S kn. However, mposng shft branches only after all other branches dd not seem to be advantageous ether. We have therefore adopted a mxed approach: If any fractonalty of at least 0.9 (e.g. 3.9) s found among the shft transtons or lnks, we create the correspondng roundup branch. Otherwse, we check for shft fractonaltes of 0.9 and more before fallng back to 0.8 fractonaltes. Branches on fractonal break varables (see Secton 9.7) are only mposed f necessary. The search tree s traversed n depth-frst order untl a frst connected nteger soluton s found. Afterwards, we swtch to best-frst search,.e. we always choose the search node wth the least lower bound value for processng. We sometmes encountered convergence problems wth column generaton after applyng some branches. We therefore termnate column generaton prematurely as soon as the dfference between the current objectve functon value and the exponentally smoothed objectve functon (wth coeffcent 0.5) falls below In ths case, we drectly apply the next branch ( early branchng, see also Desaulners et al. [2001]). In order to obtan lower bounds even f early branchng s appled, we have used the generalsed Lasdon lower bound of Secton 6.4. Note that the parameter w max provdes a predefned lmt on the number of roster weeks and on the number of lnks as requred by the lower bound calculaton. Table 9.6 shows LP relaxaton results for test runs on an AMD Athlon computer wth 2.16 GHz, 1 GB man memory and operatng system Wndows XP SP1. The left set of columns re- 211

228 9. Cyclc Roster Generaton by Branch-and-Prce No. frst LP relaxaton LP relaxaton after week cut gap obj. fct. roster runtme obj. fct. roster runtme weeks (secs.) weeks (secs.) B % B % C % C % C % C % C % D % D % D % D % D % D % D % D % D % Table 9.6.: LP relaxatons before and after week cut. fer to the orgnal LP relaxaton, the rght set gves nformaton on the LP relaxaton after applyng the frst cut on the number of roster weeks. Note that the orgnal LP relaxaton exactly corresponds to the experments conducted for comparng the dfferent break models (n Secton 8.8). It can be seen that soluton tmes for the LP relaxatons are generally qute moderate. As expected, scenaros nvolvng more complex column generators (see Table 9.5) generally result n hgher runtmes. The gap between the soluton values before and after applyng the week cut s mostly qute tght. We have termnated the subsequent branch-and-prce search as soon as the gap between the latter lower bound and the best known soluton s less than 0.5%. In addton, we have mposed a three hour tme lmt on all runs. From Table 9.7, we can see that ths runtme lmt has never been reached. In an average runtme of less than 572 secs., we could fnd solutons whch are wthn an average of 0.1% of the second lower bound (after applyng the week cut). On scenaro B03, the frst lower bound proves the optmalty of the found soluton (wth regard to the workng subset of shft types). The numbers of weeks of the resultng rosters were mostly equal to the supposed optmal values ndcated n Table 9.6. The best soluton for scenaro D09 requred one more roster week, scenaro C01 even fve more roster weeks. Nevertheless, the gap to the frst LP relaxaton s stll very low on these scenaros. Ths can be explaned by the shft cost structure; scenaros C01 and D09 n fact contan some costly nght shfts. Ths means that we may be able to avod the use of nght shfts f more roster weeks are employed. Clearly, ths also mples that applyng the roster week cut n the root node (nstead of branchng on fractonal week values) has to be regarded a heurstc measure. Whle we have used the second lower bound (after applyng the week cut) as a termnaton crteron, we must assess the qualty of the generated rosters by comparng the fnal objectve functon values to the orgnal lower bounds. From Table 9.7, we can see that these gaps are generally very low and amount to only 0.79% on average. However, the gaps on scenaros B05, D12, D13 and especally C16 are somewhat hgher. On these scenaros, we have addtonally 212

229 9.10. Expermental Results No. obj. fct. roster runtme gap frst gap relaxaton weeks (secs.) relaxaton after week cut B % 0.00% B % 0.31% C % 0.08% C % 0.00% C % 0.01% C % 0.09% C % 0.13% D % 0.44% D % 0.26% D % 0.04% D % 0.13% D % 0.00% D % 0.03% D % 0.01% D % 0.05% D % 0.01% Table 9.7.: Integer soluton data. conducted tests wth a full branchng strategy,.e. we have replaced the week roundup cut n the root node by a full branch. Wthn sx hours runtme, we could prove that on all of these scenaros, the lower bound after week roundup s ndeed a vald global lower bound. Ths means that these problems n fact exhbt worse LP lower bounds, and the best soluton of these scenaros s n fact wthn less than 0.5% of the optmal value. Ths shows that the second lower bound s a good measure for the potental qualty of an optmal roster, justfyng ts use as a termnaton crteron. Table 9.8 gves addtonal detals on the experments. From the comparson of search nodes and the maxmum search depth, t can be seen that on ten test cases, the best solutons could be found wth a sngle descent n the search tree. In contrast, we requre consderable search effort for scenaros C16, C17 and D13. Table 9.8 also ndcates the number of column generaton teratons. As the numbers of generated week and lnk varables show, we often fnd several varables wth dentcal reduced costs n each teraton whch are all added to the restrcted master program. In comparson to overall runtmes, the soluton tmes for the subproblems are very moderate. Table 9.9 ndcates the numbers of dfferent branches whch are requred to arrve at the best known soluton. Note that the test cases usng roster week branches on the way to the best soluton (C01, D09) are exactly the scenaros n whch the fnal number of roster weeks exceeds the value of the second LP relaxaton. As can be seen, we have never requred break varable branchng. The number of subcycle branches gves an ndcaton of the dffculty n arrvng at connected solutons. Whle on many scenaros, only few connectvty branches were needed, scenaros D10 and D13 requred as many as 14 and 20 subcycle branches, respectvely. For the evaluaton of the weekend-off model of Secton 9.9, we have enforced every thrd weekend off on the above scenaros. Results are gven n Table As expected, the weekend-off constrant substantally ncreases the number of requred roster weeks. Note that the weekend-off constrant not only cuts the workload coverage on weekends, but also restrcts the set of feasble workstretches between two weekends off. Whle on most scenaros, the runtme lmt of three hours has been the lmtng factor, we can see that the algorthm yelds results of very hgh qualty. Gaps toward the second lower 213

230 9. Cyclc Roster Generaton by Branch-and-Prce No. search max. search teratons week varable generator lnk varable generator nodes depth generated runtme generated runtme varables (secs.) varables (secs.) B B C C C C C D D D D D D D D D Table 9.8.: Runtme data. No. nteger branches subcycle roster weeks transtons lnks shfts breaks branches B B C C C C C D D D D D D D D D Table 9.9.: Number of branches of dfferent types. 214

231 9.11. Contrbutons and Future Research No. frst LP relaxaton LP relaxaton after week cut total best soluton gap gap obj. fct. roster runtme obj. fct. roster runtme runtme obj. fct. roster runtme frst relaxaton after weeks (secs.) weeks (secs.) (secs.) weeks (secs.) relaxaton week cut B % 1.05% B % 1.16% C % 0.00% C % 0.18% C % 2.98% C % 0.00% C % 0.04% D % 2.47% D % 0.72% D % 0.97% D % 5.90% D % 0.00% D % 2.18% D % 0.03% D % 3.09% D % 1.15% Table 9.10.: Results of runs wth weekend-off constrant. bound (after applyng the roster week cut) amount to an average of 1.37% wth a maxmum of 5.9% on scenaro D13. Accordng to our experments, the qualty of the lower bounds seems to be somewhat worse when weekend-off constrants are mposed. Whle the above results are already very satsfactory, nvestgatons on mprovng the lower bound qualty are part of ongong research Contrbutons and Future Research We have proposed a novel approach for ntegrated cyclc rosterng. Whle all lterature bulds upon demand fgures gven per shft type, the new model ntegrates the daly shft schedulng problems wth the determnaton of shft postons and days off. The model covers more constrants than any cyclc roster approach before. Revewng dfferent representatons, we have shown that the gven settng s most approprately tackled by a formulaton n whch decson varables represent roster weeks. The resultng problems of encodng feasblty of week successons was analysed wth regard to mplct and explct approaches. We have proposed a novel nteger programmng formulaton whch s based on encodng week transtons by explct lnk varables. Both roster weeks and lnks are generated dynamcally wthn a column generaton approach. Whle the generaton of reduced cost lnks bascally corresponds to enumeratng feasble transtons, weeks are generated by solvng a two-sded resource-constraned shortest path problem. We have shown how ntegral solutons can be obtaned by constrant branchng on fractonal shft transtons and statc varables of the master program. Specal attenton has been gven to the problem of dsconnected solutons. We have developed a specalsed subcycle breakng strategy for the week-lnk encodng scheme. Furthermore, we have demonstrated how fnal rosters can be bult by determnng Euler crcuts n a roster graph. Dfferent generalsatons of the basc model have been descrbed, ncludng the ncorporaton of weekend-off constrants and blockng factors as well as the creaton of multple rosters. In an expermental evaluaton, we have shown that the algorthm s effectve and effcent on real-world plannng scenaros. Shft types have been restrcted to workng subset whch not only speeds up calculatons, but s also frequently desred by staff planners. For these workng subsets, we have shown that the algorthm fnds near-optmal solutons n very moderate runtmes. Addtonally, we have conducted experments wth weekend-off constrants. Whle computaton tmes were somewhat hgher, solutons could agan be proven to be very close to optmalty. Dfferent refnements could be subject of future research. On some problem nstances, we have 215

232 9. Cyclc Roster Generaton by Branch-and-Prce encountered numercal dffcultes wth column generaton. We already employ dfferent methods to tackle these problems, ncludng cost perturbaton and early branchng. Experments wth the stablsaton method of du Merle et al. [1999] have not yet yelded compettve results, but further nvestgatons may provde more nsght nto promsng technques. Brusco [1998] and Brusco and Jacobs [2001] have successfully used the Gomory all-nteger cuttng plane for the soluton of compact nteger programmng formulatons of dscontnuous tour schedulng problems. Whle t s not clear f ths method generalses well to column generaton, the use of cuttng planes may be successful n mprovng the qualty of lower bounds. Cordeau et al. [2001c] and Cordeau et al. [2001b] have successfully employed Benders decomposton for models n whch two types of varables are generated dynamcally. The generaton of lnk varables could therefore be submtted to a reformulaton whch mght render the overall approach stll more effcent. The model tself could also be further generalsed. Alternatvely to lmtng weekly work unts, we may use the unt counter to mpose restrctons on the number of weekly shft dutes. Addtonally to creatng several cyclc rosters n parallel, we may allow for the creaton of parallel non-cyclc rosters or even use a pure shft schedulng model for some worker categores. The dea of juncton systems could be generalsed n order to encode contguty of subsequent plannng perods n lnear rosterng. We beleve that further research on mplct modellng s very promsng. In ths work, we have already descrbed possble applcatons for representng flexble breaks and for encodng week transtons. A possble future applcaton s cyclc roster generaton based on a gven shft plan,.e. wth demand fgures gven per shft type. A more flexble ntegratve approach should explot the freedom of prolongng shfts f ths makes shfts easer to cover by a roster (e.g. due to workng hour constrants). The resultng problem of generatng roster shfts whch subsume a gven set of planned shfts agan exhbts the typcal transportaton structure of mplct models. 216

233 10. Summary and Outlook Takeoffs are optonal. Landngs are mandatory. sayng among plots In ths thess, we have conceved models and desgned effcent algorthms for ground staff schedulng on arports. It was shown that contrbutons n the lterature only partally fulfl requrements of arport staff planners. Up to now, shft schedulng and rosterng models have bult upon labour demands gven n dscrete tme perods (demand-level plannng). However, workloads n ground handlng are bascally made up of work tasks at dfferent locatons on the arport, ntroducng a vehcle routng aspect to workforce schedulng (task-level plannng). We have argued that dependng on the plannng context and the detal of avalable flght nformaton, ether task-level or demand-level plannng are approprate. New models and nterfaces have been proposed to provde a unfyng vew on arport staff plannng. Contrbutons of ths work are threefold: We have proposed more ntegrated models and soluton methods, ncludng two algorthms for task-level shft plannng (Chapters 5 and 7), combnng shft schedulng wth vehcle routng, and the cyclc roster algorthm, solvng shft schedulng and rosterng problems smultaneously (Chapter 9). We have provded a mssng lnk between task-level schedulng and demand-based plannng when work tasks can be carred out wthn gven ntervals, see the workload levellng algorthm of Chapter 4. We have desgned more complex models and algorthms than n prevous contrbutons to accommodate for the complexty of real-world ground staff plannng, see e.g. the shft plannng applcaton of Chapter 5, the mplct break model of Chapter 8 and the cyclc roster algorthm of Chapter 9. Apart from nvestgatng novel problems and contrbutng new models and algorthms, we have provded real-world applcatons of modern constrant programmng and branch-and-prce soluton technques. Most recent contrbutons have been consdered and enhanced for the gven optmsaton problems. On the theoretcal sde, we have provded complexty results for workload levellng and task-level shft plannng. In Chapter 4, we have tackled the workload levellng problem whch arses n demand plannng of arport ground staff and equpment. Its goal s to avod unnecessary peaks n workforce demands by placng movable tasks at tmes of low workloads. Coverng work tasks by tours, travel tmes and tme wndows are taken nto account. Whle the bass of workload levellng s a vehcle routng problem wth tme wndows, we have shown that the problem s closely related to resource levellng n project schedulng. We have gven an N P-hardness proof and conceved a CP-based local mprovement algorthm buldng upon the results of an ntal tour mnmsaton algorthm. The soluton method was shown to be effectve and effcent on a wde range of realworld plannng scenaros. The resultng demand curves provde a sutable bass for demand-level shft plannng and rosterng and have been used for the tests of Chapters 8 and

234 10. Summary and Outlook Complex task-level shft plannng was the subject of Chapter 5. We have developed a mathematcal formulaton for the shft plannng problem, ncludng shft type and break restrctons, qualfcaton and crew constrants and preemptve tasks, to name just a few. It was shown how ths complex settng can be ncorporated n a constrant programmng model. On ths bass, we have desgned an mprovement algorthm whch provdes a remedy for flaws of an ntal constructon heurstc. The method was shown to be effcent and robust even on large-scale test cases and strongly constraned scenaros. Especally f shft types allow for suffcent flexblty, CP-based local search yelds major mprovements whch translate nto consderable cost savngs for ground handlng companes. Both of the algorthms of Chapters 4 and 5 have used a constrant programmng based soluton technque termed large neghbourhood search (LNS). However, motvatons for usng LNS were qute dfferent. Whle the workload levellng procedure naturally bulds upon the outcome of a tour mnmsaton algorthm, the local mprovement algorthm for shft plannng was desgned to account for defcences of a gven constructon algorthm. We have then turned to lnear programmng based algorthms. As we have ntroduced basc concepts of constrant programmng n Chapter 3, Chapter 6 has gven an overvew of recent developments n column generaton and branch-and-prce technques. In Chapter 7, we have focused on an mportant subclass of task-level shft plannng. It has been shown that even basc shft plannng s N P-hard n the strong sense. Usng Dantzg-Wolfe decomposton, we have reformulated an ntal flow formulaton as a column generaton model. A problem decomposton method has been proposed to make real-world arport plannng scenaros amenable to soluton by branch-and-prce. The algorthm has been shown to provde optmal or near-optmal results on a set of real-world plannng scenaros. It has turned out to be very successful especally on scenaros on whch the local search algorthm of Chapter 5 fals to fnd substantal mprovement, makng t a complementary soluton technque. In Chapter 8, we have ntroduced mplct models for the consderaton of flexble breaks n nteger programmng models for demand-level schedulng. We have shown how an effcent approach from the lterature can be extended to be applcable to arbtrary problems. A parttonng algorthm has been proposed to account for so-called extraordnary overlap of break tme wndows. By emprcal comparson wth an alternatve approach, we have demonstrated that the new formulaton can generally be solved more effcently. Based on ths formulaton, we have developed a model and an algorthm for cyclc rosterng (Chapter 9). Revewng dfferent modellng alternatves, we have shown that a formulaton n whch decson varables represent roster weeks s most approprate for the gven settng. The roster-level model has been coupled to the shft schedulng model of Chapter 8, resultng n a formulaton for smultaneous shft schedulng and rosterng. A novel branch-and-prce formulaton has been developed, and approprate column generators and branchng strateges have been desgned. Tacklng more constrants than any approach before, the algorthm has been shown to be effectve and effcent on dfferent test cases wth qute dfferent characterstcs. All algorthms have been mplemented as a part of a commercal software package for arport ground staff schedulng. The contrbutons of ths thess provde solutons to new schedulng problems and allow for a more ntegrated vew on dfferent plannng stages. Beng mportant new elements of the plannng system, they have proven to be effectve and effcent on real-world settngs and have consderably ncreased customer satsfacton. Revewng the soluton technques, constrant programmng has shown to be approprate for the ncorporaton of complex constrants and non-lnear objectve functons. In practce, t s also mportant that constrant-based soluton methods are easly extendble to new constrants. Local search has taken advantage of the search space reducton by constrant propagaton, usng large neghbourhoods to fnd mprovements n strongly constraned problems. Nevertheless, we have 218

235 also ponted out some lmtatons of large neghbourhood search (Chapter 5) whch are manly due to the heurstc nature of neghbourhood selecton rules. Experments wth LP-based release strateges have been conducted, but pure nteger programmng approaches have yelded better performance on the problems consdered. Our experments have confrmed the success of Dantzg-Wolfe decomposton and column generaton technques for schedulng problems. Lnear programmng frequently yelds very tght lower bounds, makng formulatons partcularly approprate for branch-and-bound soluton methods. Integer programmng models have shown to provde a very good vew on global optmalty. Clearly, nteger programmng models are more lmted wth regard to the ncorporaton of many constrants. Furthermore, large problems sometmes have to be heurstcally reduced n order to reduce the search space. Even f ths can frequently be done wthout sacrfcng soluton qualty, the proposed nteger programmng algorthms are more senstve to characterstcs of the gven problems and requre careful parameter tunng. One of the most promsng subjects of future research s the applcaton of hybrd constrant programmng/nteger programmng methods to the aforementoned problems. Frst contrbutons have e.g. been provded by Focacc et al. [1998] and Focacc et al. [1999] ( cost-based doman flterng ) as well as Fahle et al. [2002] and Rousseau et al. [2002] ( constrant-based column generaton ). The basc dea of these technques s to represent complex constrant n a constrant programmng model whle lnear programmng gudes the search. Especally task-level shft plannng should provde an nterestng feld of applcaton. Further nvestgatons could am at analysng nteractons between dfferent plannng stages. As an example, we may examne the relatonshp between demand-level and task-level schedulng n more detal. Ths may nclude models and algorthms for creatng demand curves whch explctly am at approxmatng task-level plannng problems or provdng lower bounds. However, one of the most mportant felds of future research should be the robustness of plans wth regard to flght delays and other nterruptons. Statstcs on flght delays are e.g. avalable from the Assocaton of European Arlnes (AEA) and the Central Offce for Delay Analyss (CODA) of Eurocontrol. As an example, more than 20% of the ntra-european flght departures were delayed by more than 15 mnutes n the thrd quarter of 2004 [AEA, 2004]. Other sources of uncertanty may also be mportant to consder, e.g. employee llness [Dowlng et al., 1997]. In the practce of ground staff plannng, such problems are usually tackled by ad-hoc and best-practce methods on the day of operatons, e.g. by usng overtme and standby staff [Stern and Hersh, 1980] [Dowlng et al., 1997]. Research on explctly consderng uncertanty n the plannng stage s stll at ts begnnng, see e.g. Bolat [2000] and Yan et al. [2002] for applcatons n arcraft stand assgnment. Dependng on the causes of uncertanty and the type of avalable nformaton, dfferent theores wll be sutable for modellng uncertanty [Zmmermann, 2000]. We are currently nvestgatng the robustness of gven task-level shft plans by smulaton analyss, usng statstcal flght delay data [Sørensen and Clausen, 2002]. Furthermore, we have conducted frst experments wth a specalsaton of the local mprovement algorthm of Chapter 5, dstrbutng gaps between the tasks evenly over the shft plan. In general, ths wll make conflcts due to flght delays less lkely [Bolat, 2000]. To make demand-level plans more robust, t may be helpful to consder mnmum and maxmum workforce demand profles under dfferent realsatons of task start tmes, see the resource envelope approach of Muscettola [2002]. 219

236 10. Summary and Outlook 220

237 A. Mathematcal Symbols Sets N natural numbers N 0 natural numbers ncludng 0 R real numbers R + nonnegatve real numbers Z nteger numbers Tasks and shfts I tasks t T tme perods of the plannng horzon n N days of the plannng horzon [a, b ] T start tme wndow of task l N length of task d,j N travel tme between tasks and j s S shfts Shft types and breaks k K shft types n N k vald days of shft type k st kn, et kn N start/end tme of the realsaton of shft type k on day n c k R + cost of shft type k brk eb, k, brlb k BR early, man and late break rule of shft type k l br N length of break defned by break rule br bb eb br, bblb br N early/late buffer defned by break rule br [est b kn, lstb kn ] T break start tme wndow of shft (k, n) Shft number restrctons r Rabs mn r Rrel mn K r K N r N m r N 0 p r R + Graphs Rmax abs R max rel G = (V, E) graph v, w V vertces E edge set δ (v) E nedges of v δ + (v) E outedges of v absolute mnmum/maxmum shft number restrctons relatve mnmum/maxmum shft number restrctons reference shft type set for shft number restrcton r reference days of shft number restrcton r lmt for absolute shft number restrcton r lmt for relatve shft number restrcton r 221

238 A. Mathematcal Symbols Workload levellng r R tours C C crews I o, I d orgn and destnaton tasks d mn N mnmum travel tme before task R R P I S I T T W (t) N I rel I Θ() I I δ start δ ns tour of task predecessor of task successor of task start tme of task workload at tme t set of relaxed tasks nserton postons of task = [α, β ] start tme doman of task boolean nserted doman of task predecessor doman of task nserton poston doman of task tour doman of task current predecessor of task current successor of task δ pred δ p δ tour π σ D N 0 L D N 0 dscrepancy dscrepancy lmt Shft plannng local mprovement al() N o s I o d s I d eb s, mb s, lb s I b C C B B cs N H H P P l P N msl, msl P N P P P pseudo spred, ssucc I tol max ol max actual length of task orgn tasks for the shfts destnaton tasks for the shfts early, man, late break task of shft s task crews subcrews crew sze shft crews splt tasks total length of splt task P mnmum splt length for task /splt task P splt task of splt part pseudo splt part of splt task P splt part predecessor/successor of splt part N maxmum overlap for (non-splt) task N derved maxmum overlap for task Q set of all qualfcatons Q Q qualfcaton requrements of task Q s Q qualfcaton requrements of shft s q max N maxmum number of qualfcatons per shft qp(q ) R + qualfcaton preference for set Q 222

239 qp mn R + \ {0} qr QR q qr Q m qr N T T S S pred, succ K s K N s N w QP R + M QR R + M SNR R + M UT R + brd BRD n brd N BR brd BR K brd K s dummy k dummy l brd dummy δ start δ sl mnmum postve qualfcaton preference qualfcaton restrctons reference qualfcaton for restrcton qr lmt for restrcton qr start tme of task shft of task predecessor/successor of task shft type of shft s day of shft s qualfcaton penalty weght penalty for volatng qualfcaton restrctons penalty for volatng shft number restrctons penalty for unassgned task mnutes break rule days day of break rule day brd set of break rules of break rule day brd shft type of break rule day brd dummy shft for unassgned task pseudo shft type for task length l pseudo break rule day = [α, β ] start tme doman for task splt part length doman for splt part π, σ predecessor, successor of task δ shft shft doman of task δ pred predecessor doman of task nserted doman of task δ ns δs K δs used δs Q δs qp I rel I I dep I S dep S shft type doman of task used doman of task qualfcaton doman of task qualfcaton penalty doman of task tasks to be relaxed dependent tasks dependent shfts Shft plannng by branch-and-prce q N p N U = {u 0,..., u q 1 } C = {C 0,..., C p 1 } tr : U {false, true} I lt I fll I cl K T K F number of varables number of clauses boolean varables clauses truth assgnment lteral tasks fllng tasks clause tasks T (true) shft types F (false) shft types 223

240 A. Mathematcal Symbols K fll k o k d k b G k = (V k, E k ) vo k vd k Vb k c k vw Xvw k fllng shft types orgn task of shft type k destnaton task of shft type k break task of shft type k flow graph for shft type k orgn node of shft type k destnaton node of shft type k break nodes of shft type k cost of edge (v, w) of graph G k flow on edge (v, w) of graph G k p Ω k extreme rays for subproblem k Ω set of all extreme rays x k vwp edge flow on (v, w) for ray p of subproblem k λ k p decson varable for ray p of subproblem k c k p R + cost coeffcent of ray p of subproblem k gp k N coverage coeffcent for constrant of ray p of subproblem k π dual value for coverage constrant µ r dual value for shft number restrcton r c k p reduced cost of ray p of subproblem k ρ r (k) ndcator functon for shft number restrcton r c k derved reduced cost assocated wth shft type k derved reduced cost of edge (v, w) of subproblem k c k vw Implct break modellng l L break ndces r R shft/break classes L est, L est r set of earlest start tmes over all break wndows (n class r) L lst, L lst r set of latest start tmes over all break wndows (n class r) l est, lr est earlest overall break (n class r) l lst, lr lst latest overall break (n class r) L B (l), L B r (l) set of breaks (n class r) startng no earler than l K B (l), Kr B (l) set of shfts (n class r) assocated wth L B (l) L F (l), L F r (l) set of breaks (n class r) startng no later than l K F (l), Kr F (l) set of shfts (n class r) assocated wth L F (l) d t N 0 workforce demand n perod t a tkn N 0 coverage coeffcent for shft (k, n) n perod t b tl N 0 coeffcent for break l n perod t c sht, c sht t R + shortage cost (for demand perod t) Cyclc rosters [w mn, w max ] N 0 lmts on the number of roster weeks G k K vald day-on predecessor shft types of shft type k H k K vald day-off predecessor shft types of shft type k τ k1,k 2 R + shft transton penalty between k 1 and k 2 [m on mn, mon max] N lmts on the number of consecutve days on [m off mn, moff max] N lmts on the number of consecutve days off u k N work unts of shft type k 224

241 [u mn, u max ] N 0 lmts on the number of work unts per week u avg N average work unts per week u tol N tolerance for average work unts per week I ndex set for week varables J ndex set for lnk varables ϑ number of weeks of type λ j number of lnks of type j c w R + cost of week c l j R+ cost of lnk j u N work unts of week s kn {0, 1} shft coverage coeffcent of week for shft (k, n) m N number of consecutve days on/off ws km,on, ws km,off coeffcents for start juncton (k, m) of week we km,on, we km,off coeffcents for end juncton (k, m) of week ls km,on j, ls km,off j coeffcents for start juncton (k, m) of lnk j le km,on j, le km,off j coeffcents for end juncton (k, m) of lnk j γk,m on k,m dual prces assocated wth week start/lnk end constrants ηk,m on k,m dual prces assocated wth week end/lnk start constrants π k,n dual prce assocated wth shft equalty constrants ω dual prce assocated wth work unts φ dual prce assocated wth roster week constrant P (k, n, m, u) value of backward net state for shft (k, n), m remanng days on and u work unts Q(k, n, m, u) value of forward net state for shft (k, n), m days on and u work unts 225

242 A. Mathematcal Symbols 226

243 B. Acronyms and Abbrevatons B.1. Acronyms BCP COIN-OR COP CP CSP CVSP DAG DP EO GF IP LDS LNS LP MDVSP OSI RCSP RLDP RMP SA SFDP TSP TSPTW VRP VRPTW VSP WLP branch, cut and prce common optmsaton nterface for Operatons Research constrant optmsaton problem constrant programmng constrant satsfacton problem capactated vehcle schedulng problem drected acyclc graph dynamc programmng extraordnary overlap greedy fxng nteger programmng lmted dscrepancy search large neghbourhood search lnear programmng multple-depot vehcle schedulng problem open solver nterface resource-constraned shortest path problem repeated local dynamc programmng restrcted master program smulated annealng successve fxng by dynamc programmng travellng salesman problem travellng salesman problem wth tme wndows vehcle routng problem vehcle routng problem wth tme wndows vehcle schedulng problem workload levellng problem B.2. Abbrevatons abs. avg. cf. e.g. etc. fg..e. ff mn. absolute average confer for example (exempl grata) et cetera fgure that s (d est) f and only f mnmum 227

244 B. Acronyms and Abbrevatons max. maxmum No. number obj. fct. objectve functon p. page pref. preference qual. qualfcaton rel. relatve secs. seconds std. dev. standard devaton w.l.o.g. wthout loss of generalty 228

245 C. Overvew of Workforce Schedulng Lterature In the followng, an overvew of the relevant lterature cted n Chapter 2 wll be gven. Publcatons wll be categorsed by model types, soluton technques, named and anonymous models as well as applcaton areas. C.1. Overvew by Models Table C.1 summarses references wth regard to dfferent models, ncludng shft, day-off and tour schedulng, shft assgnment and cyclc rosterng. Specal nurse schedulng models whch often do not fall nto these categores are mentoned separately. Wthn each secton, publcatons are lsted chronologcally. It should be noted that not all publcatons can be categorsed wthout ambgutes. As an example, some of the day-off approaches refer to cyclc rosters, e.g. Emmons [1985]. Furthermore, Bennett and Potts [1968] whch s a classcal reference on cyclc rosters effectvely uses a sequental day-off and shft assgnment approach. Smlarly, all shft assgnment references except for Jackson et al. [1997] refer to cyclc rosters. If publcatons explctly refer to more than one model type, these are lsted more than once, e.g. Mllar and Kragu [1998]. Barthold et al. [1980], Barthold III [1981], Karp and Orln [1981] and Vohra [1988] treat a class of cyclc staffng problems. Whle these also cover day-off schedulng models, ther focus s on shft schedulng to whch we have attrbuted these publcatons. C.2. Overvew by Soluton Methods In Table C.2, we categorse workforce schedulng publcatons by soluton approaches. Overvews of parts of these references can also be found n Bechtold et al. [1991], Thompson [1992], Brusco and Jacobs [1993b], Thompson [1993] and Thompson [1995]. Ernst et al. [2004] menton that the lterature s heavly skewed torwards mathematcal programmng and metaheurstc approaches. However, the employed technques also dependend on the applcaton and settng. Whle e.g. no constrant programmng approaches have been proposed for anonymous schedulng, CP seems to be approprate for more constraned models n named nurse schedulng. Whle Table C.2 separately lsts greedy optmal algorthms, t should be noted that combnatoral approaches also belong to the class of polynomal-tme optmal algorthms, see Secton 2.3. Integer programmng models comprse some column generaton (Easton and Rossn [1991], Panton and Ryan [1999]) and branch-and-prce approaches (Mason and Smth [1998], Mason [1999], Mason and Nelsen [1999], Mehrotra et al. [2000]). References for graph algorthms comprse publcatons usng several or mxed approaches (Lagrangan relaxaton n Balakrshnan and Wong [1990], heurstcs n Panton [1991] and van den Berg and Panton [1994], and smulaton n Mason et al. [1998]). Other soluton approaches n Table C.2 refer to the addtve algorthm of Balas [Musa and Saxena, 1984], goal programmng [Ozkarahan and Baley, 1988] and a half-automatc constrant-based approach [Muslja et al., 2000]. 229

246 C. Overvew of Workforce Schedulng Lterature shft schedulng day-off schedulng tour schedulng Dantzg [1954] Tbrewala et al. [1972] Rtzman et al. [1976] Bennett and Potts [1968] Baker [1974] McGnns et al. [1978] Segal [1972] Brownell and Lowerre [1976] Mabert and Watts [1982] Buffa et al. [1976] Mller et al. [1976] Morrs and Showalter [1983] Henderson and Berry [1976] Baker and Magazne [1977] Glover et al. [1984] Moondra [1976] Lowerre [1977] Baley [1985] Gaballa and Pearce [1979] Mabert and Raedels [1977] Glover and McMllan [1986] Keth [1979] Baker et al. [1979] Holloran and Byrn [1986] Barthold et al. [1980] Burns and Carter [1985] Bechtold and Showalter [1987] Stern and Hersh [1980] Emmons [1985] Showalter and Mabert [1988] Barthold III [1981] Burns and Koop [1987] Andrews and Parsons [1989] Karp and Orln [1981] Bechtold [1988] Taylor and Huxley [1989] Baley and Feld [1985] Koop [1988] Bechtold et al. [1991] Vohra [1988] Emmons and Burns [1991] Easton and Rossn [1991] Bechtold and Jacobs [1990] Hung [1993] L et al. [1991] Love and Hoey [1990] Hung [1994a] Loucks and Jacobs [1991] Thompson [1990] Hung [1994b] Brusco and Jacobs [1993b] Thompson [1992] Emmons and Fuh [1997] Brusco and Jacobs [1993a] Schndler and Semmel [1993] Burns and Narasmhan [1999] Jacobs and Bechtold [1993] Thompson [1995] Thompson [1993] Thompson [1996a] shft assgnment Bechtold and Brusco [1994a] Thompson [1996b] Lau [1994] Brusco et al. [1995] Aykn [1998] van den Berg and Panton [1994] Brusco and Jacobs [1995] Nobert and Roy [1998] Lau [1996a] Brusco and Johns [1995] Panton and Ryan [1999] Lau [1996b] Brusco and Johns [1996] Aykn [2000] Jackson et al. [1997] Jacobs and Brusco [1996] Mehrotra et al. [2000] Dowlng et al. [1997] Çezk and Günlük [2002] cyclc rosters Brusco [1998] Sørensen and Clausen [2002] Bennett and Potts [1968] Brusco and Jacobs [1998a] Muslu et al. [2004] Laporte et al. [1980] Brusco and Jacobs [1998b] Rosenbloom and Goertzen [1987] Henderson and Mason [1998] named schedulng for Balakrshnan and Wong [1990] Jaumard et al. [1998] nurses/physcans Chew [1991] Mason and Smth [1998] Mller et al. [1976] Panton [1991] Mllar and Kragu [1998] Warner [1976] Khoong and Lau [1992] Topaloglu and Ozkarahan [1998] Arthur and Ravndran [1981] Mason et al. [1998] Alvarez-Valdez et al. [1999] Musa and Saxena [1984] Mllar and Kragu [1998] Mason and Nelsen [1999] Ozkarahan and Baley [1988] Mason [1999] Brusco and Jacobs [2000] Wel et al. [1995] Muslja et al. [2000] Brusco and Jacobs [2001] Berrada et al. [1996] Çezk et al. [2001] Çezk et al. [2001] Cheng et al. [1997] Felc and Gentle [2004] Çezk and Günlük [2002] Mesels et al. [1997] Rekk et al. [2003] Dowsland [1998] Schaerf and Mesels [1999] Carter and Laperre [2001] Bellant et al. [2004] Table C.1.: Overvew of publcatons on dfferent models. 230

247 C.2. Overvew by Soluton Methods nteger programmng LP/roundng combnatoral approaches Bennett and Potts [1968] Dantzg [1954] Tbrewala et al. [1972] Warner [1976] Henderson and Berry [1976] Baker [1974] Mabert and Raedels [1977] Moondra [1976] Brownell and Lowerre [1976] Gaballa and Pearce [1979] Keth [1979] Baker and Magazne [1977] Laporte et al. [1980] Barthold et al. [1980] Lowerre [1977] Stern and Hersh [1980] Barthold III [1981] Burns [1978] Baley [1985] Morrs and Showalter [1983] Baker et al. [1979] Rosenbloom and Goertzen [1987] Baley and Feld [1985] Bechtold [1981] Bechtold and Jacobs [1990] Holloran and Byrn [1986] Burns and Carter [1985] Easton and Rossn [1991] L et al. [1991] Emmons [1985] Thompson [1992] Thompson [1990] Burns and Koop [1987] Jacobs and Bechtold [1993] Bechtold et al. [1991] Bechtold [1988] Schndler and Semmel [1993] Thompson [1993] Koop [1988] Thompson [1995] Bechtold and Brusco [1994a] Emmons and Burns [1991] Brusco and Johns [1996] Hung [1993] Jacobs and Brusco [1996] smulated annealng Hung [1994a] Thompson [1996a] Brusco and Jacobs [1993b] Hung [1994b] Aykn [1998] Brusco and Jacobs [1993a] Emmons and Fuh [1997] Brusco [1998] Brusco et al. [1995] Burns and Narasmhan [1999] Brusco and Jacobs [1998a] Brusco and Jacobs [1995] Henderson and Mason [1998] Brusco and Johns [1995] other greedy Mason and Smth [1998] Thompson [1996b] optmal approaches Nobert and Roy [1998] Dowlng et al. [1997] Vohra [1988] Topaloglu and Ozkarahan [1998] Brusco and Jacobs [1998b] Chew [1991] Mason [1999] Sørensen and Clausen [2002] Mason and Nelsen [1999] heurstcs Panton and Ryan [1999] tabu search Buffa et al. [1976] Aykn [2000] Glover et al. [1984] Mller et al. [1976] Brusco and Jacobs [2000] Glover and McMllan [1986] Rtzman et al. [1976] Mehrotra et al. [2000] Berrada et al. [1996] McGnns et al. [1978] Brusco and Jacobs [2001] Jackson et al. [1997] Arthur and Ravndran [1981] Çezk et al. [2001] Dowsland [1998] Bechtold and Showalter [1987] Çezk and Günlük [2002] Alvarez-Valdez et al. [1999] Taylor and Huxley [1989] Rekk et al. [2003] Carter and Laperre [2001] Loucks and Jacobs [1991] Felc and Gentle [2004] Bellant et al. [2004] Khoong and Lau [1992] Muslu et al. [2004] Lau [1994] graph algorthms, Lau [1996a] network flows other local search approaches Lau [1996b] Segal [1972] Mller et al. [1976] Barthold et al. [1980] Schaerf and Mesels [1999] other approaches Karp and Orln [1981] Musa and Saxena [1984] Balakrshnan and Wong [1990] constrant programmng Ozkarahan and Baley [1988] Love and Hoey [1990] Wel et al. [1995] Muslja et al. [2000] Panton [1991] Cheng et al. [1997] van den Berg and Panton [1994] Mesels et al. [1997] Mason et al. [1998] Table C.2.: Overvew of soluton technques. 231

248 C. Overvew of Workforce Schedulng Lterature C.3. Overvew by Anonymous and Named Models Whle anonymous plannng refers to staff schedulng on an aggregate level, named models attrbute shfts and tours to employees. Named models can ncorporate sklls, avalabltes as well as preferences. Cyclc models as well as combnatoral approaches belong to the class of anonymous models. An overvew can be found n Table C.3. C.4. Overvew by Applcaton Areas Table C.4 lsts references by applcaton areas f these are explctly mentoned. Agan, there are nterdependences wth the aforementoned categores. As an example, fast-food and nurse schedulng models generally belong to the class of named models. 232

249 C.4. Overvew by Applcaton Areas anonymous schedulng (contnued) named schedulng Dantzg [1954] Brusco and Jacobs [1993b] Mller et al. [1976] Bennett and Potts [1968] Hung [1993] Warner [1976] Segal [1972] Jacobs and Bechtold [1993] Arthur and Ravndran [1981] Tbrewala et al. [1972] Schndler and Semmel [1993] Glover et al. [1984] Baker [1974] Thompson [1993] Glover and McMllan [1986] Baker [1976] Bechtold and Brusco [1994b] Thompson [1990] Brownell and Lowerre [1976] Bechtold and Brusco [1994a] Wel et al. [1995] Henderson and Berry [1976] Hung [1994a] Berrada et al. [1996] Moondra [1976] Hung [1994b] Cheng et al. [1997] Rtzman et al. [1976] Jarrah et al. [1994] Jackson et al. [1997] Baker and Magazne [1977] Lau [1994] Mesels et al. [1997] Lowerre [1977] van den Berg and Panton [1994] Dowsland [1998] Mabert and Raedels [1977] Brusco et al. [1995] Jaumard et al. [1998] McGnns et al. [1978] Brusco and Jacobs [1995] Mason and Smth [1998] Baker et al. [1979] Brusco and Johns [1995] Mason and Nelsen [1999] Gaballa and Pearce [1979] Thompson [1995] Schaerf and Mesels [1999] Keth [1979] Aykn [1996] Carter and Laperre [2001] Barthold et al. [1980] Bechtold and Jacobs [1996] Bellant et al. [2004] Laporte et al. [1980] Brusco and Johns [1996] Stern and Hersh [1980] Jacobs and Brusco [1996] anonymous schedulng and Barthold III [1981] Lau [1996a] subsequent assgnment Mabert and Watts [1982] Lau [1996b] Buffa et al. [1976] Ten and Kamyama [1982] Thompson [1996a] Baley and Feld [1985] Morrs and Showalter [1983] Thompson [1996b] Love and Hoey [1990] Musa and Saxena [1984] Dowlng et al. [1997] Alvarez-Valdez et al. [1999] Baley [1985] Emmons and Fuh [1997] Burns and Carter [1985] Brusco [1998] named and Emmons [1985] Brusco and Jacobs [1998a] anonymous schedulng Holloran and Byrn [1986] Brusco and Jacobs [1998b] Khoong and Lau [1992] Burns and Koop [1987] Henderson and Mason [1998] Khoong et al. [1994] Bechtold and Showalter [1987] Mason et al. [1998] Rosenbloom and Goertzen [1987] Mllar and Kragu [1998] Bechtold [1988] Nobert and Roy [1998] Koop [1988] Topaloglu and Ozkarahan [1998] Ozkarahan and Baley [1988] Burns and Narasmhan [1999] Vohra [1988] Mason [1999] Andrews and Parsons [1989] Panton and Ryan [1999] Taylor and Huxley [1989] Aykn [2000] Balakrshnan and Wong [1990] Brusco and Jacobs [2000] Bechtold and Jacobs [1990] Mehrotra et al. [2000] Bechtold et al. [1991] Muslja et al. [2000] Chew [1991] Brusco and Jacobs [2001] Easton and Rossn [1991] Çezk et al. [2001] Emmons and Burns [1991] Çezk and Günlük [2002] L et al. [1991] Sørensen and Clausen [2002] Loucks and Jacobs [1991] Rekk et al. [2003] Panton [1991] Felc and Gentle [2004] Thompson [1992] Muslu et al. [2004] Brusco and Jacobs [1993b] Table C.3.: Overvew of publcatons on anonymous and named schedulng. 233

250 C. Overvew of Workforce Schedulng Lterature arport ground handlng bus drvers bank applcatons Chew [1991] Bennett and Potts [1968] Moondra [1976] Khoong and Lau [1992] Mabert and Raedels [1977] Schndler and Semmel [1993] call centres Mabert and Watts [1982] Khoong et al. [1994] Andrews and Parsons [1989] L et al. [1991] Brusco et al. [1995] Henderson and Mason [1998] Dowlng et al. [1997] Mason and Nelsen [1999] physcan schedulng Brusco and Jacobs [1998a] Brusco and Jacobs [2000] Carter and Laperre [2001] Brusco and Jacobs [1998b] Brusco and Jacobs [2001] Sørensen and Clausen [2002] Çezk et al. [2001] nurse schedulng Felc and Gentle [2004] Mller et al. [1976] telephone operators Warner [1976] arcraft cleanng Segal [1972] Arthur and Ravndran [1981] Stern and Hersh [1980] Buffa et al. [1976] Musa and Saxena [1984] Henderson and Berry [1976] Rosenbloom and Goertzen [1987] arcraft refuellng McGnns et al. [1978] Ozkarahan and Baley [1988] Alvarez-Valdez et al. [1999] Keth [1979] Khoong and Lau [1992] Khoong et al. [1994] arport passenger servces toll collectors Wel et al. [1995] Schndler and Semmel [1993] Dantzg [1954] Berrada et al. [1996] Brusco et al. [1995] Bennett and Potts [1968] Cheng et al. [1997] Jacobs and Brusco [1996] Mesels et al. [1997] arlne sales reservaton offces Dowsland [1998] Gaballa and Pearce [1979] fast-food restaurants Jaumard et al. [1998] Holloran and Byrn [1986] Glover and McMllan [1986] Mason and Smth [1998] Love and Hoey [1990] Mllar and Kragu [1998] arport Customs/mmgraton authorty Loucks and Jacobs [1991] Mason and Nelsen [1999] Mason et al. [1998] Thompson [1996a] Schaerf and Mesels [1999] Mason and Nelsen [1999] Bellant et al. [2004] mal faclty ar cargo termnal Rtzman et al. [1976] polce patrol offcers Nobert and Roy [1998] Jarrah et al. [1994] Taylor and Huxley [1989] Table C.4.: Overvew of applcatons. Casno securty offcers Panton [1991] 234

251 Bblography J. Adams, E. Balas and D. Zawack. The shftng bottleneck procedure for job shop schedulng. Management Scence, 34: , AEA, European Arlne Delays n 3rd Quarter Assocaton of European Arlnes, H. N. Ahuja. Constructon Performance Control by Networks. John Wley & Sons, R. K. Ahuja, T. L. Magnant and J. B. Orln. Network Flows Theory, Algorthms, and Applcatons. Prentce Hall, A. Allahverd, J. N. D. Gupta and T. Aldowasan. A revew of schedulng research nvolvng setup consderatons. Omega, 27: , R. Alvarez-Valdez, E. Crespo and J. Tamart. Labour schedulng at an arport refuellng nstallaton. Journal of the Operatonal Research Socety, 50: , R. Anbl, R. Tanga and E. L. Johnson. A global approach to crew-parng optmzaton. IBM Systems Journal, 31:71 78, B. H. Andrews and H. L. Parsons. L. L. Bean chooses a telephone agent schedulng system. Interfaces, 19:1 9, L. H. Appelgren. A column generaton algorthm for a shp schedulng problem. Transportaton Scence, 3:53 68, D. Applegate and W. Cook. A computatonal study of the job-shop schedulng problem. ORSA Journal on Computng, 3: , J. L. Arthur and A. Ravndran. A multple objectve nurse schedulng model. AIIE Transactons, 13:55 60, N. Ashford, H. P. M. Stanton and C. A. Moore. Arport Operatons, 2nd edton. McGraw-Hll, A. A. Assad. Multcommodty network flows: A survey. Networks, 8:37 91, T. Aykn. Optmal shft schedulng wth multple break wndows. Management Scence, 42: , T. Aykn. A composte branch and cut algorthm for optmal shft schedulng wth multple breaks and break wndows. Journal of the Operatonal Research Socety, 49: , T. Aykn. A comparatve evaluaton of modelng approaches to the labor shft schedulng problem. European Journal of Operatonal Research, 125: , J. Baley. Integrated days off and shft personnel schedulng. Computer and Industral Engneerng, 9: ,

252 Bblography J. Baley, H. Alfares and W. Y. Ln. Optmzaton and heurstc models to ntegrate project task and manpower schedulng. Computers and Industral Engneerng, 29: , J. Baley and J. Feld. Personnel schedulng wth flexshft models. Journal of Operatons Management, 5: , K. R. Baker. Schedulng full-tme and part-tme staff to meet cyclc requrements. Operatonal Research Quarterly, 25:65 76, K. R. Baker. Workforce allocaton n cyclcal schedulng problems: A survey. Operatonal Research Quarterly, 27: , K. R. Baker, R. N. Burns and M. Carter. Staff schedulng wth day-off and workstretch constrants. AIIE Transactons, 11: , K. R. Baker and M. J. Magazne. Workforce schedulng wth cyclc demands and day-off constrants. Management Scence, 24: , N. Balakrshnan and R. T. Wong. A network model for the rotatng workforce schedulng problem. Networks, 20:25 42, E. Balas. An addtve algorthm for solvng lnear programs wth zero-one varables. Operatons Research, 13: , M. Bandellon, M. Tucc and R. Rnald. Optmal resource levelng usng non-seral dynamc programmng. European Journal of Operatonal Research, 78: , P. Baptste, C. Le Pape and W. Nujten. Incorporatng effcent Operatons Research algorthms n constrant-based schedulng. In Proceedngs of the Frst Internatonal Jont Workshop on Artfcal Intellgence and Operatons Research P. Baptste, C. Le Pape and W. Nujten. Constrant-Based Schedulng. Kluwer, C. Barnhart, C. A. Hane and P. H. Vance. Usng branch-and-prce-and-cut to solve orgndestnaton nteger multcommodty flow problems. Operatons Research, 48: , C. Barnhart, E. L. Johnson, G. L. Nemhauser, M. W. P. Savelsbergh and P. H. Vance. Branchand-prce: Column generaton for huge nteger programs. Operatons Research, 46: , J. J. Barthold, J. B. Orln and H. D. Ratlff. Cyclc schedulng va nteger programs wth crcular ones. Operatons Research, 28: , J. J. Barthold III. A guaranteed-accuracy round-off algorthm for cyclc schedulng and set coverng. Operatons Research, 29: , S. E. Bechtold. Work force schedulng for arbtrary cyclc demands. Journal of Operatons Management, 1: , S. E. Bechtold. Implct optmal and heurstc labor staffng n a multobjectve, multlocaton envronment. Decson Scences, 19: , S. E. Bechtold and M. J. Brusco. A mcrocomputer-based heurstc for tour schedulng of a mxed workforce. Computer and Operatons Research, 21: , 1994a. S. E. Bechtold and M. J. Brusco. Workng set generaton methods for labor tour schedulng. European Journal of Operatonal Research, 74: , 1994b. 236

253 Bblography S. E. Bechtold, M. J. Brusco and M. J. Showalter. A comparatve evaluaton of labor tour schedulng methods. Decson Scences, 22: , S. E. Bechtold and L. W. Jacobs. Implct modelng of flexble break assgnments n optmal shft schedulng. Management Scence, 36: , S. E. Bechtold and L. W. Jacobs. The equvalence of general set-coverng and mplct nteger programmng formulatons for shft schedulng. Naval Research Logstcs, 43: , S. E. Bechtold and M. J. Showalter. A methodology for labor schedulng n a servce operatng system. Decson Scences, 18:89 107, J. C. Beck, P. Prosser and E. Selensky. On the reformulaton of vehcle routng problems and schedulng problems. In Proceedngs of the 5th Internatonal Symposum on Abstracton, Reformulaton and Approxmaton, LNCS 2371, pages Sprnger Verlag, F. Bellant, G. Carello, F. D. Croce and R. Tade. A greedy-based neghborhood search approach to a nurse rosterng problem. European Journal of Operatonal Research, 153:28 40, B. T. Bennett and R. B. Potts. Rotatng roster for a transt system. Transportaton Scence, 2:14 34, O. Berman, R. C. Larson and E. Pnker. Schedulng workforce and workflow n a hgh volume factory. Management Scence, 43: , I. Berrada, J. A. Ferland and P. Mchelon. A mult-objectve approach to nurse schedulng wth both hard and soft constrants. Soco-Economc Plannng Scence, 30: , A. A. Bertoss, P. Carrares and G. Gallo. On some matchng problems arsng n vehcle schedulng models. Networks, 17: , J.-Y. Blas and J.-M. Rousseau. Overvew of HASTUS current and future versons. In J. R. Daduna and A. Wren, edtors, Computer-Aded Transt Schedulng, pages L. Bodn and B. Golden. Classfcaton n vehcle routng and schedulng. Networks, 11:97 108, L. Bodn, B. Golden, A. Assad and M. Ball. Routng and schedulng of vehcles and crews The state of the art. Computer and Operatons Research, 10:63 211, A. Bolat. Procedures for provdng robust gate assgnments for arrvng arcrafts. European Journal of Operatonal Research, 120:63 80, W. S. Brownell and J. M. Lowerre. Schedulng of work forces requred n contnuous operatons under alternatve labor polces. Management Scence, 22: , P. Brucker, A. Drexl, R. Möhrng, K. Neumann and E. Pesch. Resource-constraned project schedulng: Notaton, classfcaton, models, and methods. European Journal of Operatonal Research, 112:3 41, M. J. Brusco. Solvng personnel tour schedulng problems wth the dual all-nteger cuttng plane. IIE Transactons, 30: , M. J. Brusco and L. W. Jacobs. A smulated annealng approach to the cyclc staff-schedulng problem. Naval Research Logstcs, 40:69 84, 1993a. 237

254 Bblography M. J. Brusco and L. W. Jacobs. A smulated annealng approach to the soluton of flexble labour schedulng problems. Journal of the Operatonal Research Socety, 44: , 1993b. M. J. Brusco and L. W. Jacobs. Cost analyss of alternatve formulatons for personnel schedulng n contnuously operatng organzatons. European Journal of Operatonal Research, 86: , M. J. Brusco and L. W. Jacobs. Elmnatng redundant columns n contnuous tour schedulng problems. European Journal of Operatonal Research, 111: , 1998a. M. J. Brusco and L. W. Jacobs. Personnel tour schedulng when startng-tme restrctons are present. Management Scence, 44: , 1998b. M. J. Brusco and L. W. Jacobs. Optmal models for meal-break and start-tme flexblty n contnuous tour schedulng. Management Scence, 46: , M. J. Brusco and L. W. Jacobs. Startng-tme decsons n labor tour schedulng: An expermental analyss and case study. European Journal of Operatonal Research, 131: , M. J. Brusco, L. W. Jacobs, R. J. Bongorno, D. V. Lyons and B. Tang. Improvng personnel schedulng at arlne statons. Operatons Research, 43: , M. J. Brusco and T. R. Johns. Improvng the dsperson of surplus labor n personnel schedulng solutons. Computers and Industral Engneerng, 28: , M. J. Brusco and T. R. Johns. A sequental nteger programmng method for dscontnuous labor tour schedulng. European Journal of Operatonal Research, 95: , E. S. Buffa, M. J. Cosgrove and B. J. Luce. An ntegrated work shft schedulng system. Decson Scences, 7: , R. Burns and R. Narasmhan. Multple shft schedulng of workforce on four-day workweeks. Journal of the Operatonal Research Socety, 50: , R. N. Burns. Manpower schedulng wth varable demands and alternate weekends off. INFOR, 16: , R. N. Burns and M. W. Carter. Work force sze and sngle shft schedules wth varable demands. Management Scence, 31: , R. N. Burns and G. J. Koop. A modular approach to optmal multple-shft manpower schedulng. Operatons Research, 35: , A. M. Campbell and M. Savelsbergh. Effcent nserton heurstcs for vehcle routng and schedulng problems. Transportaton Scence, 38: , A. Caprara, M. Fschett, P. Toth, D. Bgo and P. L. Guda. Algorthms for ralway crew management. Mathematcal Programmng, 79: , A. Caprara, P. Toth, D. Vgo and M. Fschett. Modelng and solvng the crew rosterng problem. Operatons Research, 46: , J. Carler and E. Pnson. An algorthm for solvng the job-shop problem. Management Scence, 35: , M. W. Carter and S. D. Laperre. Schedulng emergency room physcans. Health Care Management Scence, 4: ,

255 Bblography Y. Caseau and F. Laburthe. Improved CLP schedulng wth task ntervals. In P. van Hentenryck, edtor, Proceedngs of the 11th Internatonal Conference on Logc Programmng. MIT press, Y. Caseau and F. Laburthe. Dsjunctve schedulng wth task ntervals. Techncal report, Laboratore d Informatque de l Ecole normale Supéreure, Y. Caseau and F. Laburthe. Solvng small TSPs wth constrants. In Proceedngs of ICLP Y. Caseau and F. Laburthe. Heurstcs for large constraned vehcle routng problems. Journal of Heurstcs, 5: , T. Çezk and O. Günlük. Reformulatng lnear programs wth transportaton constrants wth applcatons to workforce schedulng. Optmzaton Onlne, T. Çezk, O. Günlük and H. Luss. An nteger programmng model for the weekly tour schedulng problem. Naval Research Logstcs, 48: , B. Cheng, J. Lee and J. Wu. A nurse rosterng system usng constrant programmng and redundant modelng. IEEE Transactons on Informaton Technology n Bomedcne, 1:44 54, K. L. Chew. Cyclc schedule for apron servces. Journal of the Operatonal Research Socety, 42: , N. Chrstofdes. Vehcle routng. In E. L. Lawler, J. K. Lenstra, A. H. G. R. Kan and D. B. Shmoys, edtors, The Travelng Salesman Problem: A Guded Tour of Combnatoral Optmzaton. Wley, I. T. Chrstou, A. Zakaran, J.-M. Lu and H. Carter. A two-phase genetc algorthm for large-scale bdlne-generaton problems at Delta ar lnes. Interfaces, 29:51 65, V. Chvátal. Lnear Programmng. W. H. Freeman & Company, G. Clarke and G. W. Wrght. Schedulng of vehcles from a central depot to a number of delvery ponts. Operatons Research, 12: , M. B. Clowes. On seeng thngs. Artfcal Intellgence, 2: , J. Cordeau, G. Desaulners, J. Desrosers, M. M. Solomon and F. Soums. VRP wth tme wndows. In P. Toth and D. Vgo, edtors, The Vehcle Routng Problem, pages Socety for Industral and Appled Mathematcs, 2001a. J.-F. Cordeau, F. Soums and J. Desrosers. Smultaneous assgnment of locomotves and cars to passenger trans. Operatons Research, 49: , 2001b. J.-F. Cordeau, G. Stojkovć, F. Soums and J. Desrosers. Benders decomposton for smultaneous arcraft routng and crew schedulng. Transportaton Scence, 35: , 2001c. T. H. Cormen, C. E. Leserson, R. L. Rvest and C. Sten. Introducton to Algorthms, 2nd edton. McGraw-Hll, G. Cornuéjols and A. Sassano. On the 0,1 facets of the set coverng polytope. Mathematcal Programmng, 43:45 55,

256 Bblography J. R. Daduna, I. Branco and J. P. Paxão, edtors. Computer-Aded Transt Schedulng. Sprnger Verlag, J. R. Daduna and M. Mojslovc. Computer-aded vehcle and duty schedulng usng the HOT programme system. In J. R. Daduna and A. Wren, edtors, Computer-Aded Transt Schedulng, pages Sprnger Verlag, J. R. Daduna and A. Wren, edtors. Computer-Aded Transt Schedulng. Sprnger Verlag, G. Dantzg, D. Fulkerson and S. Johnson. Solutons of large-scale travelng-salesman problems. Operatons Research, 2: , G. B. Dantzg. A comment on Ede s Traffc delays at toll booths. Journal of the Operatons Research Socety of Amerca, 2: , G. B. Dantzg and J. H. Ramser. The truck dspatchng problem. Management Scence, 6:80 91, G. B. Dantzg and P. Wolfe. Decomposton prncple for lnear programs. Operatons Research, 8: , Dash, Xpress-Optmzer Reference Manual Release 15. Dash Optmzaton, P. R. Day and D. M. Ryan. Flght attendant rosterng for short-haul arlne operatons. Operatons Research, 45: , R. Dechter. Constrant Processng. Morgan Kaufmann, G. Desaulners, J. Desrosers and M. M. Solomon. Acceleratng strateges n column generaton methods for vehcle routng and crew schedulng problems. In C. C. Rbero and P. Hansen, edtors, Essays and Surveys n Metaheurstcs, pages Kluwer, G. Desaulners, J. Lavgne and F. Soums. Mult-depot vehcle schedulng problems wth tme wndows and watng costs. European Journal of Operatonal Research, 111: , M. Desrochers, J. Desrosers and M. M. Solomon. Usng column generaton to solve the vehcle routng problem wth tme wndows. In Operatonal Research 90 Selected Papers from the Twelfth IFORS Internatonal Conference on Operatonal Research, pages Pergamon Press, M. Desrochers, J. Desrosers and M. M. Solomon. A new optmzaton algorthm for the vehcle routng problem wth tme wndows. Operatons Research, 40: , M. Desrochers and J.-M. Rousseau, edtors. Computer-Aded Transt Schedulng. Sprnger Verlag, M. Desrochers and F. Soums. A column generaton approach to the urban transt crew schedulng problem. Transportaton Scence, 23:1 13, J. Desrosers and M. E. Lübbecke. A prmer n column generaton. Techncal report, Technsche Unverstät Berln, Germany, J. Desrosers, M. M. Solomon and F. Soums. Tme constraned routng and schedulng. In Handbooks of Operatons Research and Management Scence, volume 8, pages North- Holland,

257 Bblography J. Desrosers, F. Soums and M. Desrochers. Routng wth tme wndows by column generaton. Networks, 14: , U. Dorndorf, E. Pesch and T. Phan-Huy. Constrant propagaton technques for the dsjunctve schedulng problem. Artfcal Intellgence, 122: , D. Dowlng, M. Krshnamoorthy, H. Mackenze and D. Ser. Staff rosterng at a large nternatonal arport. Annals of Operatons Research, 72: , K. A. Dowsland. Nurse schedulng wth tabu search and strategc oscllaton. European Journal of Operatonal Research, 106: , M. Dror. Note on the complexty of the shortest path models for column generaton n VRPTW. Operatons Research, 42: , O. du Merle, D. Vlleneuve, J. Desrosers and P. Hansen. Stablzed column generaton. Dscrete Mathematcs, 194: , Y. Dumas, J. Desrosers and F. Soums. The pckup and delvery problem wth tme wndows. European Journal of Operatonal Research, 54:7 22, S. M. Easa. Resource levelng n constructon by optmzaton. Journal of Constructon Engneerng and Management, 115: , F. F. Easton and D. F. Rossn. Suffcent workng subsets for the tour schedulng problem. Management Scence, 37: , H. Emmons. Work-force schedulng wth cyclc requrements and constrants on days off, weekends off, and work stretch. IIE Transactons, 17:8 16, H. Emmons and R. N. Burns. Off-day schedulng wth herarchcal worker categores. Operatons Research, 39: , H. Emmons and D.-S. Fuh. Szng and schedulng a full-tme and part-tme workforce wth offday and off-weekend constrants. Annals of Operatons Research, 70: , A. T. Ernst, H. Jang, M. Krshnamoorthy, H. Nott and D. Ser. Ral crew schedulng and rosterng: Optmsaton algorthms. In Computer-Aded Schedulng of Publc Transport, 8th Internatonal Conference, Berln, Germany A. T. Ernst, H. Jang, M. Krshnamoorthy and D. Ser. Staff schedulng and rosterng: A revew of applcatons, methods and models. European Journal of Operatonal Research, 153:3 27, EU, Councl Drectve 93/104/EC. Councl of the European Unon, EU, 2000a. Councl Drectve 2000/79/EC. Councl of the European Unon, EU, 2000b. Drectve 2000/34/EC of the European Parlament and of the Councl. European Parlament and Councl of the European Unon, EU, Drectve 2002/15/EC of the European Parlament and of the Councl. European Parlament and Councl of the European Unon, T. Fahle, U. Junker, S. E. Karsch, N. Kohl, M. Sellmann and B. Vaaben. Constrant programmng based column generaton for crew assgnment. Journal of Heurstcs, 8:59 81,

258 Bblography J. C. Falkner and D. M. Ryan. EXPRESS: Set parttonng for bus crew schedulng n Chrstchurch. In M. Desrochers and J.-M. Rousseau, edtors, Computer-Aded Transt Schedulng, pages Sprnger Verlag, A. A. Farley. A note on boundng a class of lnear programmng problems, ncludng cuttng stock problems. Operatons Research, 38: , G. Felc and C. Gentle. A polyhedral approach for the staff rosterng problem. Management Scence, 50: , M. L. Fsher and R. Jakumar. A generalzed assgnment heurstc for vehcle routng. Networks, 11: , M. Fleury. Deux problèmes de géométre de stuaton. Journal de mathématques élémentares, pages , F. Focacc, A. Lod and M. Mlano. Cost-based doman flterng. In J. Jaffar, edtor, Prncples and Practce of Constrant Programmng, pages Sprnger Verlag, F. Focacc, A. Lod and M. Mlano. A hybrd exact algorthm for the TSPTW. INFORMS Journal on Computng, 14: , F. Focacc, A. Lod, M. Mlano and D. Vgo. Solvng TSP through the ntegraton of OR and CP technques. In Proceedngs CP98 Workshop on Large Scale Combnatoral Optmsaton and Constrants F. Focacc and M. Mlano. Connectons and ntegratons of dynamc programmng and constrant programmng. In Proceedngs of the Internatonal Workshop on Integraton of AI and OR technques n Constrant Programmng for Combnatoral Optmzaton Problems L. R. Ford and D. R. Fulkerson. A suggested computaton for maxmal mult-commodty network flows. Management Scence, 5:97 101, L. R. Ford and D. R. Fulkerson. Flows n Networks. Prnceton Unversty Press, E. C. Freuder. Syntheszng constrant expressons. Communcatons of the ACM, 21: , A. Gaballa and W. Pearce. Telephone sales manpower plannng at Qantas. Interfaces, 9:1 9, M. Gamache and F. Soums. A method for optmally solvng the rosterng problem. In G. Yu, edtor, Operatons Research n the Arlne Industry, pages Kluwer, M. Gamache, F. Soums, G. Marqus and J. Desrosers. A column generaton approach for largescale arcrew rosterng problems. Operatons Research, 47: , M. Gamache, F. Soums, D. Vlleneuve, J. Desrosers and É. Gélnas. The preferental bddng system at Ar Canada. Transportaton Scence, 32: , M. R. Garey and D. S. Johnson. Computers and Intractablty: A Gude to the Theory of NP- Completeness. Freeman, M. Gendreau, A. Hertz and G. Laporte. A tabu search heurstc for the vehcle routng problem. Management Scence, 40: ,

259 Bblography A. M. Geoffron. Lagrangean relaxaton for nteger programmng. Mathematcal Programmng Study, 2:82 114, P. C. Glmore and R. E. Gomory. A lnear programmng approach to the cuttng-stock problem. Operatons Research, 9: , F. Glover and C. McMllan. The general employee schedulng problem: An ntegraton of MS and AI. Computers and Operatons Research, 13: , F. Glover, C. McMllan and R. Glover. A heurstc programmng approach to the employee schedulng problem and some thoughts on manageral robots. Journal of Operatons Management, 4: , J.-L. Goffn and J.-P. Val. Convex nondfferentable optmzaton: A survey focussed on the analytc center cuttng plane method. Optmzaton Methods and Software, 17: , B. L. Golden and A. A. Assad. Vehcle Routng: Methods and Studes. North-Holland, M. C. Golumbc. The complexty of comparablty graph recognton and colorng. Computng, 18: , M. C. Golumbc. Algorthmc Graph Theory and Perfect Graphs. Academc Press, M. Grönkvst. Structure n Arlne Crew Optmzaton Problems. Master s thess, Chalmers Unversty of Technology, Göteborg, Sweden, M. Grönkvst. Usng constrant propagaton to accelerate column generaton n arcraft schedulng. In Proceedngs of the 8th Internatonal Conference on Prncples and Practce of Constrant Programmng, LNCS Sprnger Verlag, R. M. Haralck and G. L. Ellott. Increasng tree search effcency for constrant satsfacton problems. Artfcal Intellgence, 14: , R. B. Harrs. Packng method for resource levelng (PACK). Journal of Constructon Engneerng and Management, 116: , W. D. Harvey and M. L. Gnsberg. Lmted dscrepancy search. In Proceedngs of the Fourteenth Internatonal Jont Conference on Artfcal Intellgence, pages Morgan Kaufmann, S. Hepcke. Comparng constrant programmng and mathematcal programmng approaches to dscrete optmsaton the change problem. Journal of the Operatonal Research Socety, pages , S. G. Henderson and A. J. Mason. Rosterng by teratng nteger programmng and smulaton. In D. Mederos and E. Watson, edtors, Proceedngs of the 1998 Wnter Smulaton Conference W. B. Henderson and W. L. Berry. Heurstc methods for telephone operator shft schedulng: An expermental analyss. Management Scence, 22: , P. V. Hentenryck, Y. Devlle and C.-M. Teng. A generc arc-consstency algorthm and ts specalzatons. Artfcal Intellgence, 57: , C. Herholzer. Über de Möglchket, enen Lnenzug ohne Wederholung und Unterbrechung zu umfahren. Mathematsche Annalen, 6:30 42,

260 Bblography J.-C. Hrart-Urruty and C. Lemaréchal, edtors. Convex analyss and mnmzaton algorthms, part 2: Advanced theory and bundle methods. Sprnger Verlag, K. L. Hoffman and M. Padberg. Solvng arlne crew schedulng problems by branch-and-cut. Management Scence, 39: , T. J. Holloran and J. E. Byrn. Unted Arlnes staton manpower plannng system. Interfaces, 16:39 50, J. Hromkovč. Algorthmcs for Hard Problems. Sprnger Verlag, D. A. Huffman. Impossble objects as nonsense sentences. In B. Meltzer and D. Mche, edtors, Machne Intellgence 6, pages Ednburgh Unversty Press, R. Hung. A three-day workweek multple-shft schedulng model. Journal of the Operatonal Research Socety, 44: , R. Hung. A multple-shft workforce schedulng model under the 4-day workweek wth weekday and weekend labour demands. Journal of the Operatonal Research Socety, 45: , 1994a. R. Hung. Multple-shft workforce schedulng under the 3 4 workweek wth dfferent weekday and weekend labor requrements. Management Scence, 40: , 1994b. IATA, 2004a. IATA Internatonal Industry Statstcs September Internatonal Ar Transport Assocaton, IATA, 2004b. IATA Annual Report Internatonal Ar Transport Assocaton, S. Irnch. Netzwerk-Desgn für zwestufge Transportsysteme und en Branch-and-Prce-Verfahren für das gemschte Drekt- und Hubflugproblem. Ph.D. thess, Fakultät für Wrtschaftswssenschaften, Rhensch-Westfälsche Technsche Hochschule Aachen, Germany, S. Irnch and D. Vlleneuve. The shortest path problem wth resource constrants and k-cycle elmnaton for k 3. Techncal report, Les Cahers du GERAD, HEC Montréal, Canada, W. K. Jackson, W. S. Havens and H. Dollard. Staff schedulng: A smple approach that worked. Techncal Report CMPT97-23, Smon Fraser Unversty, Burnaby, Canada, L. W. Jacobs and S. E. Bechtold. Labor utlzaton effects of labor schedulng flexblty alternatves n a tour schedulng envronment. Decson Scences, 24: , L. W. Jacobs and M. J. Brusco. Overlappng start-tme bands n mplct tour schedulng. Management Scence, 42: , A. I. Z. Jarrah, J. F. Bard and A. H. deslva. Solvng large-scale tour schedulng problems. Management Scence, 40: , B. Jaumard, F. Semet and T. Vovor. A generalzed lnear programmng model for nurse schedulng. European Journal of Operatonal Research, 107:1 18, E. L. Johnson, G. L. Nemhauser and M. W. P. Savelsbergh. Progress n lnear programmngbased algorthms for nteger programmng: An exposton. INFORMS Journal on Computng, 12:2 23,

261 Bblography D. Jungnckel. Graphs, Networks and Algorthms. Sprnger Verlag, L. Kantorovch. Mathematcal methods of organsng and plannng producton. Management Scence, 6: , R. M. Karp and J. B. Orln. Parametrc shortest path algorthms wth an applcaton to cyclc staffng. Dscrete Appled Mathematcs, 3:37 45, E. G. Keth. Operator schedulng. AIIE Transactons, 11:37 41, J. E. Kelley. The cuttng-plane method for solvng convex programs. Journal of the Socety for Industral and Appled Mathematcs, 8: , C. M. Khoong and H. C. Lau. ROMAN: An ntegrated approach to manpower plannng and schedulng. In O. Balc, R. Sharda and S. Zenos, edtors, Computer Scence and Operatons Research: New Developments n Ther Interfaces, pages Pergamon Press, C. M. Khoong, H. C. Lau and L. W. Chew. Automated manpower rosterng: Technques and experence. Internatonal Transactons n Operatonal Research, 1: , P. Klby, P. Prosser and P. Shaw. Implementaton of LNS for constraned VRPs. Techncal report, APES Group, Department of Computer Scence, Unversty of Strathclyde, Glasgow, Scotland, UK, P. Klby, P. Prosser and P. Shaw. A comparson of tradtonal and constrant-based heurstc methods on vehcle routng problems wth sde constrants. Journal of Constrants, 5: , N. Kohl, J. Desrosers, O. B. G. Madsen, M. M. Solomon and F. Soums. 2-path cuts for the vehcle routng problem wth tme wndows. Transportaton Scence, 33: , N. Kohl and S. E. Karsch. Arlne crew rosterng: Problem types, modelng, and optmzaton. Annals of Operatons Research, 127: , G. J. Koop. Multple shft workforce lower bounds. Management Scence, 34: , R. E. Korf. Improved lmted dscrepancy search. In Proceedngs of the 13th Natonal Conference on Artfcal Intellgence, pages G. Kortsarz and W. Slany. The mnmum shft desgn problem and ts relaton to the mnmum edge-cost flow problem. Techncal report, Insttut für Informatonssysteme, Technsche Unverstät Wen, Austra, V. Kumar. Algorthms for constrant satsfacton problems. AI Magazne, 13:32 44, T. Kwasnok. Entwurf enes Modells zur Ermttlung von Bedarfszahlen zur langfrstgen Planung von Personal und Geräten n der Flugabfertgung. Master s thess, Rhensch-Westfälsche Technsche Hochschule Aachen, Germany, A. Langevn, M. Desrochers, J. Desrosers, S. Gélnas and F. Soums. A two-commodty flow formulaton for the travelng salesman and makespan problem wth tme wndows. Networks, 23: , G. Laporte, Y. Nobert and J. Bron. Rotatng schedules. European Journal of Operatonal Research, 4:24 30,

262 Bblography G. Laporte and I. H. Osman. Routng problems: A bblography. Annals of Operatons Research, 61: , L. S. Lasdon. Optmzaton Theory for Large Systems. MacMllan, H. C. Lau. Manpower schedulng wth shft change constrants. In Proceedngs of the 5th Internatonal Symposum on Algorthms and Computaton, LNCS 834, pages Sprnger Verlag, H. C. Lau. Combnatoral approaches for hard problems n manpower schedulng. Journal of the Operatons Research Socety of Japan, 39:88 98, 1996a. H. C. Lau. On the complexty of manpower shft schedulng. Computers and Operatons Research, 23:93 102, 1996b. E. L. Lawler, J. K. Lenstra, A. H. G. R. Kan and D. B. Shmoys, edtors. The Travelng Salesman Problem: A Guded Tour of Combnatoral Optmzaton. Wley, C. Lemaréchal. Lagrangan relaxaton. In M. Jünger and D. Naddef, edtors, Computatonal Combnatoral Optmzaton, pages Sprnger Verlag, J. K. Lenstra and A. H. G. R. Kan. Complexty of vehcle routng and schedulng problems. Networks, 11: , C. L, E. P. Robnson and V. A. Mabert. An evaluaton of tour schedulng heurstcs wth dfferences n employee productvty and cost. Decson Scences, 22: , S. Ln. Computer solutons of the travelng salesman problem. Bell Systems Techncal Journal, 44: , A. Löbel. Optmal Vehcle Schedulng n Publc Transt. Ph.D. thess, Technsche Unverstät Berln, Germany, J. S. Loucks and F. R. Jacobs. Tour schedulng and task assgnment of a heterogeneous work force: A heurstc approach. Decson Scences, 22: , R. Lougee-Hemer. The Common Optmzaton INterface for Operatons Research. IBM Journal of Research and Development, 47:57 66, R. R. Love and J. M. Hoey. Management scence mproves fast-food operatons. Interfaces, 20:21 29, J. M. Lowerre. Work stretch propertes for the schedulng of contnuous operatons under alternatve labor polces. Management Scence, 23: , M. Lübbecke. Engne Schedulng by Column Generaton. Ph.D. thess, Fachberech für Mathematk und Informatk, Technsche Unverstät Braunschweg, Germany, M. E. Lübbecke and J. Desrosers. Selected topcs n column generaton. Techncal report, Technsche Unverstät Berln, Germany, I. J. Lustg and J.-F. Puget. Program does not equal program: Constrant programmng and ts relatonshp to mathematcal programmng. Interfaces, pages 29 53, V. A. Mabert and A. R. Raedels. The detal schedulng of a part-tme work force: A case study of teller staffng. Decson Scences, 8: ,

263 Bblography V. A. Mabert and C. A. Watts. A smulaton analyss of tour-shft constructon procedures. Management Scence, 28: , H. Marchand, A. Martn, R. Wesmantel and L. Wolsey. Cuttng planes n nteger and mxed nteger programmng. Dscrete Appled Mathematcs, 123: , R. E. Marsten, W. W. Hogan and J. W. Blankenshp. The BOXSTEP method for large-scale optmzaton. Operatons Research, 23: , S. Martello and P. Toth. Knapsack Problems: Algorthms and Computer Implementaton. Wley, A. Martn. General mxed nteger programmng: Computaton ssues for branch-and-cut algorthms. In M. Jünger and D. Naddef, edtors, Computatonal Combnatoral Optmzaton, pages Sprnger Verlag, A. Mason and D. Nelsen. PETRA: A programmable optmsaton engne and toolbox for personnel rosterng applcatons. Techncal report, Department of Engneerng Scence, Unversty of Auckland, New Zealand, A. J. Mason. Soluton methods for cyclc roster constructon. Techncal report, Unversty of Auckland, New Zealand, A. J. Mason, D. M. Ryan and D. M. Panton. Integrated smulaton, heurstc and optmsaton approaches to staff schedulng. Operatons Research, 46: , A. J. Mason and M. C. Smth. A nested column generator for solvng rosterng problems wth nteger programmng. In L. Caccetta, K. L. Teo, P. F. Sew, Y. H. Leung, L. S. Jennngs and V. Rehbock, edtors, Internatonal Conference on Optmsaton: Technques and Applcatons L. F. McGnns, W. D. Culver and R. H. Deane. One- and two-phase heurstcs for workforce schedulng. Computers and Industral Engneerng, 2:7 15, A. Mehrotra, K. E. Murphy and M. A. Trck. Optmal shft schedulng: A branch-and-prce approach. Naval Research Logstcs, 47: , A. Mesels, E. Gudes and G. Solotorevsky. Combnng rules and constrants for employee tmetablng. Internatonal Journal of Intellgent Systems, 12: , P. Meseguer. Constrant satsfacton problems: An overvew. Artfcal Intellgence Communcatons, 2:3 17, P. Meseguer. Interleaved depth-frst search. In Proceedngs of the 15th Internatonal Jont Conference on Artfcal Intellgence, pages H. H. Mllar and M. Kragu. Cyclc and non-cyclc schedulng of 12h shft nurses by network programmng. European Journal of Operatonal Research, 104: , H. E. Mller, W. P. Perskalla and G. J. Rath. Nurse schedulng usng mathematcal programmng. Operatons Research, 24: , U. Montanar. Networks of constrants: Fundamental propertes and applcatons to pcture processng. Informaton Scences, 7:95 132,

264 Bblography S. L. Moondra. An L.P. model for work force schedulng n banks. Journal of Bank Research, 6: , J. G. Morrs and M. J. Showalter. Smple approaches to shft, days-off and tour schedulng problems. Management Scence, 29: , A. A. Musa and U. Saxena. Schedulng nurses usng goal-programmng technques. IIE Transactons, 16: , N. Muscettola. Computng the envelope for stepwse-constant resource allocatons. In Proceedngs of the 8th Internatonal Conference on Prncples and Practce of Constrant Programmng, LNCS 2470, pages N. Muslja, J. Gärtner and W. Slany. Effcent generaton of rotatng workforce schedules. Techncal report, Insttut für Informatonssysteme, Technsche Unverstät Wen, Austra, N. Muslu, A. Schaerf and W. Slany. Local search for shft desgn. European Journal of Operatonal Research, 153:51 64, P. Neame. Nonsmooth dual problems n nteger programmng. Ph.D. thess, Unversty of Melbourne, Australa, P. Neame. Nonsmooth Dual Methods n Integer Programmng. Ph.D. thess, Department of Mathematcs and Statstcs, Unversty of Melbourne, Australa, G. L. Nemhauser and S. Park. A polyhedral approach to edge colorng. Operatons Research Letters, 10: , G. L. Nemhauser and L. A. Wolsey. Integer and Combnatoral Optmzaton. John Wley and Sons, K. Neumann and J. Zmmermann. Resource levellng for projects wth schedule-dependent tme wndows. European Journal of Operatonal Research, 117: , Y. Nobert and J. Roy. Freght handlng personnel schedulng at ar cargo termnals. Transportaton Scence, 32: , P. Nobl and A. Sassano. Facets and lftng procedures for the set coverng polytope. Mathematcal Programmng, 45: , I. Or. Travellng Salesman-Type Combnatoral Problems and Ther Relaton to the Logstcs of Blood-Bankng. Ph.D. thess, Department of Industral Engneerng and Management Scences, Northwest Unversty, W. Orchard-Hays. Advanced Lnear-Programmng Computng Technques. McGraw-Hll, I. Ozkarahan and J. E. Baley. Goal programmng model subsystem of a flexble nurse schedulng support system. IIE Transactons, 20: , M. Padberg and G. Rnald. A branch-and-cut algorthm for the resoluton of large-scale symmetrc travelng salesman problems. SIAM Revew, 33:60 100, D. M. Panton. On the creaton of multple shft contnuous operaton cyclc rosters under general workforce condtons. Asa-Pacfc Journal of Operatonal Research, 8: ,

265 Bblography D. M. Panton and D. M. Ryan. Column generaton models for optmal workforce allocaton wth multple breaks. Techncal report, Centre for Industral and Applcable Mathematcs, Unversty of South Australa, Mawon Lakes, Australa, G. Pesant and M. Gendreau. A vew of local search n constrant programmng. In E. C. Freuder, edtor, Proceedngs of the Second Internatonal Conference on Prncples and Practce of Constrant Programmng, LNCS 1118, pages Sprnger Verlag, G. Pesant and M. Gendreau. A constrant programmng framework for local search methods. Journal of Heurstcs, 5: , G. Pesant, M. Gendreau, J.-Y. Potvn and J.-M. Rousseau. An exact constrant logc programmng algorthm for the travelng salesman problem wth tme wndows. Transportaton Scence, 32:12 29, J.-Y. Potvn and S. Bengo. The vehcle routng problem wth tme wndows part II: Genetc search. INFORMS Journal on Computng, 8: , J.-Y. Potvn, T. Kervahut, B. L. Garca and J.-M. Rousseau. The vehcle routng problem wth tme wndows part I: Tabu search. INFORMS Journal on Computng, 8: , J.-Y. Potvn and J.-M. Rousseau. A parallel route buldng algorthm for the vehcle routng and schedulng problem wth tme wndows. European Journal of Operatonal Research, 66: , J.-Y. Potvn and J.-M. Rousseau. An exchange heurstc for routng problems wth tme wndows. Journal of the Operatonal Research Socety, 46: , T. K. Ralphs and L. Ladány. COIN/BCP User s Manual, developerworks/opensource/con/presentatons/bcp-man.pdf. J.-C. Régn. A flterng algorthm for constrants of dfference n CSPs. In Proceedngs of the 12th Natonal Conference on Artfcal Intellgence, pages Amercan Assocaton for Artfcal Intellgence, J.-C. Régn. Newsgroup postng on the complexty of the alldfferent constrant, sc.op-research M. Rekk, J.-F. Cordeau and F. Soums. Implct shft schedulng wth multple breaks and preand post-break restrctons. Techncal report, Ecole Polytechnque de Montréal and GERAD, Montréal, Canada, C. Rbero and F. Soums. A column generaton approach to the multple depot vehcle schedulng problem. Operatons Research, 42:41 53, L. P. Rtzman, L. J. Krajewsk and M. J. Showalter. The dsaggregaton of aggregate manpower plans. Management Scence, 22: , Y. Rochat and É. Tallard. Probablstc dversfcaton and ntensfcaton n local search for vehcle routng. Journal of Heurstcs, 1: , E. S. Rosenbloom and N. F. Goertzen. Cyclc nurse schedulng. European Journal of Operatonal Research, 31:19 23, J.-M. Rousseau, edtor. Computer Schedulng of Publc Transport 2. North-Holland,

266 Bblography L.-M. Rousseau, M. Gendreau and G. Pesant. Solvng small VRPTWs wth constrant programmng based column generaton. In Integraton of AI and OR Technques n Constrant Programmng for Combnatoral Optmzaton Problems CPAIOR B. Roy and B. Sussman. Les problémes d ordonnancement avec contrantes dsjonctves. Notes DS No. 9bs, SEMA, Pars, D. M. Ryan. The soluton of massve generalzed set parttonng problems n arcrew rosterng. Journal of the Operatonal Research Socety, 43: , D. M. Ryan and B. A. Foster. An nteger programmng approach to schedulng. In A. Wren, edtor, Computer Schedulng of Publc Transport, pages North-Holland, A. Sassano. On the facal structure of the set coverng polytope. Mathematcal Programmng, 44: , M. W. P. Savelsbergh. A branch-and-prce algorthm for the generalzed assgnment problem. Operatons Research, 45: , A. Schaerf and A. Mesels. Solvng employee tmetablng problems by generalzed local search. In Proceedngs of the 6th Italan Conference on Artfcal Intellgence, pages S. Schndler and T. Semmel. Staton staffng at Pan Amercan world arways. Interfaces, 23:91 98, M. Segal. The operator-schedulng problem: A network-flow approach. Operatons Research, 22: , J. E. Sebert and G. W. Evans. Tme-constraned resource levelng. Journal of Constructon Engneerng and Management, 117: , M. Sellmann, K. Zervoudaks, P. Stamatopoulos and T. Fahle. Crew assgnment va constrant programmng: Integratng column generaton and heurstc tree search. Annals of Operatons Research, 115: , P. Shaw. Usng constrant programmng and local search methods to solve vehcle routng problems. In M. Mahler and J.-F. Puget, edtors, Proceedngs of the Fourth Internatonal Conference on Prncples and Practce of Constrant Programmng, LNCS 1520, pages Sprnger Verlag, H. D. Sheral. Equvalent weghts for lexcographc mult-objectve programs: Characterzatons and computatons. European Journal of Operatonal Research, 11: , M. J. Showalter and V. A. Mabert. An evaluaton of a full-/part-tme tour schedulng methodology. Internatonal Journal of Operatons and Producton Management, 8:54 71, B. M. Smth and A. Wren. A bus crew schedulng system usng a set coverng formulaton. Transportaton Research, 22A:97 108, M. M. Solomon. Algorthms for the vehcle routng and schedulng problem wth tme wndow constrants. Operatons Research, 35: , M. D. Sørensen and J. Clausen. Decentralzed ground staff schedulng. Techncal report, Informatcs and Mathematcal Modellng, Techncal Unversty of Denmark, Kongens Lyngby, Denmark,

267 Bblography H. I. Stern and M. Hersh. Schedulng arcraft cleanng crews. Transportaton Scence, 14: , E. Tallard. Parallel teratve search methods for vehcle routng problems. Networks, 23: , R. Tarjan. Depth-frst search and lnear graph algorthms. SIAM Journal on Computng, 1: , P. E. Taylor and S. J. Huxley. A break from tradton for the San Francsco Polce: Patrol offcer schedulng usng an optmzaton-based decson support system. Interfaces, 19:4 24, D. Teodorovć. Arlne Operatons Research. Gordon and Breach, G. M. Thompson. Shft schedulng when employees have lmted avalablty: An L.P. approach. Journal of Operatons Management, 9: , G. M. Thompson. Improvng the utlzaton of front-lne servce delvery system personnel. Decson Scences, 23: , G. M. Thompson. Representng employee requrements n labour tour schedulng. Omega, 21: , G. M. Thompson. Improved mplct optmal modelng of the labor shft schedulng problem. Management Scence, 41: , G. M. Thompson. Controllng acton tmes n daly workforce schedulng. Cornell Hotel and Restaurant Admnstraton Quarterly, 37:82 96, 1996a. G. M. Thompson. A smulated-annealng heurstc for shft schedulng usng non-contnuously avalable employees. Computers and Operatons Research, 23: , 1996b. R. Tbrewala, D. Phlppe and J. Browne. Optmal schedulng of two consecutve dle perods. Management Scence, 19:71 75, J. M. Ten and A. Kamyama. On manpower schedulng algorthms. SIAM Revew, 24: , S. A. Topaloglu and I. Ozkarahan. A research on optmzaton based modelng for tour schedulng problems wth flexble break assgnments. Techncal report, Department of Industral Engneerng, Dokuz Eylul Unversty, Izmr, Turkey, P. Toth and D. Vgo. An overvew of vehcle routng problems. In P. Toth and D. Vgo, edtors, The Vehcle Routng Problem, pages Socety for Industral and Appled Mathematcs, 2001a. P. Toth and D. Vgo, edtors. The Vehcle Routng Problem. Socety for Industral and Appled Mathematcs, 2001b. E. Tsang, edtor. Foundatons of Constrant Satsfacton. Academc Press, J. M. Valéro de Carvalho. LP models for bn packng and cuttng stock problems. European Journal of Operatonal Research, 141: , M. van den Akker, H. Hoogeveen and S. van de Velde. Combnng column generaton and Lagrangean relaxaton to solve a sngle-machne common due date problem. INFORMS Journal on Computng, 14:37 51,

268 Bblography Y. van den Berg and D. M. Panton. Personnel shft assgnment: Exstence condtons and network models. Networks, 24: , P. H. Vance, C. Barnhart, E. L. Johnson and G. L. Nemhauser. Solvng bnary cuttng stock problems by column generaton and branch-and-bound. Computatonal Optmzaton and Applcatons, 3: , P. H. Vance, C. Barnhart, E. L. Johnson and G. L. Nemhauser. Arlne crew schedulng: A new formulaton and decomposton algorthm. Operatons Research, 45: , F. Vanderbeck. On Dantzg-Wolfe decomposton n nteger programmng and ways to perform branchng n a branch-and-prce algorthm. Operatons Research, 48: , F. Vanderbeck and L. A. Wolsey. An exact algorthm for IP column generaton. Operatons Research Letters, 19: , D. Vlleneuve, J. Desrosers, M. Lübbecke and F. Soums. On compact formulatons for nteger programs solved by column generaton. Techncal report, Les Cahers du GERAD, R. V. Vohra. A quck heurstc for some cyclc staffng problems wth breaks. Journal of the Operatons Research Socety, 39: , T. Walsh. Depth-bounded dscrepancy search. In Proceedngs of the 15th Internaton Jont Conference on Artfcal Intellgence, pages D. L. Waltz. Understandng lne drawngs of scenes wth shadows. In P. H. Wnston, edtor, The Psychology of Computer Vson, pages McGraw-Hll, D. M. Warner. Schedulng nursng personnel accordng to nursng preference: A mathematcal programmng approach. Operatons Research, 24: , G. Wel, K. Heus, P. Franços and M. Poujade. Constrant programmng for nurse schedulng. IEEE Engneerng n Medcne and Bology Magazne, 14: , P. Wentges. Weghted Dantzg-Wolfe decomposton for lnear mxed-nteger programmng. Internatonal Transactons n Operatonal Research, 4: , N. H. M. Wlson, edtor. Computer-Aded Transt Schedulng. Sprnger Verlag, R. J. Wlson. Introducton to Graph Theory. Addson-Wesley, A. Wren, edtor. Computer Schedulng of Publc Transport. North-Holland, A. Wren and J.-M. Rousseau. Bus drver schedulng an overvew. In J. R. Daduna, I. Branco and J. P. Paxão, edtors, Computer-Aded Transt Schedulng, pages Sprnger Verlag, S. Yan, C.-Y. Sheh and M. Chen. A smulaton framework for evaluatng arport gate assgnments. Transportaton Research Part A: Polcy and Practce, 36: , G. Yu, edtor. Operatons Research n the Arlne Industry. Kluwer, H.-J. Zmmermann. An applcaton-orented vew of modelng uncertanty. European Journal of Operatonal Research, 122: , H.-J. Zmmermann. Operatons Research Methoden und Modelle. Veweg, J. Zmmermann and H. Engelhardt. Lower bounds and exact algorthms for resource levellng problems. Techncal report, Unverstät Karlsruhe,

269 Index 3SAT, 31, 139 acton tme transformaton, acton tmes, 29, 30, AEA, 219 Ar Canada, 2, 19 Altala, 2, 27 alldfferent, 38, 42, 55, 95 analytc centre cuttng plane method, 133 anonymous plannng, 6, 8, 11, 16, 232 arc consstency, 36 arrval flght, 3, 4 backward constrants, 28, 30, 164, 167, 168, 171, 195 substtuton, 170 backward net, base hstogram, 59 base nterval, 59 BCP, 152, 207 Benders decomposton, 216 Benders reformulaton, 29, 169, 171 best-frst search, 211 bddng, 8, 32 preferental, 32 bpartte flow feasblty problem, 165 block-structured lnear programs, , 145 blockng factors, 207 bound consstency, 36 BOXSTEP method, 135 branch-and-bound, 35, 38, 56 58, branch-and-cut, 134 branch-and-prce, , , branch-and-prce-and-cut, 134, 159 break buffers, 74, 82, 93 break classes, 175 break parttonng, break rule days, 86 for dummy shfts, 88 break rules, 73, 86, 171 break tasks, 74 break varables, 28, 162, 164, 175, 203 sharng, 164, 172, 174 wrap-around, 29, 162, 167 break wndows, 28, 143, 163, 167 propagaton, 93 breaks, 6, 16, 28, 73, 142 explct representaton, 28 flexble, mplct representaton, 28, 162, n demand-level models, n task-level models, 73 74, 143 Brtsh Arways, 19 bundle methods, 133 bus drver schedulng, 33 cabn cleanng, 76 changng shft assgnment problem, 21, 31, 186 chromatc number, 172 CLP, 152 CODA, 219 COIN-OR, 152, 207 colourng, 171 column generaton, , , 188, 190, 193, and branch-and-bound, 130 and Lagrangan relaxaton, constrant-based, 159, 219 dfferent restrctons, 129, 145 economc nterpretaton, 129 dentcal restrctons, 129, 131 nteger, 130 lower bounds, , 151, 211 combnatoral approaches, compact formulaton, 126, 129, 131 comparablty graphs, 171, 173 connected components, 152, 203, 204 connectvty, 42, 152, 189, strong,

270 Index connectvty graph, 205 consstency, 36 arc consstency, 36 bound consstency, 36 doman consstency, 36 generalsed arc consstency, 36 k-b-consstency, 36 k-consstency, 36 k-d-consstency, 36 node consstency, 36 path consstency, 36 consstency tests, 36 complexty, 37, 53 for shft plannng, for workload levellng, constrant branchng, 130, 150, 203 constrant graph, 35, 152 constrant logc programmng, 37 constrant optmsaton problems, 36 constrant programmng, 11, 35 38, 73 and nteger programmng, 125, 138, 159, 218 and local search, extensblty, 38, 47 for vehcle routng, constrant propagaton, 35, 36, 57 AC-3, 37 AC-5, 37 bound events, 37 consstency, 36, 42, 43, 55, 85 doman events, 37 doman flterng, 159, 219 fxed pont teraton, 37 global constrants, 38 monotoncty, 37, 99 range events, 37 constrant satsfacton problems, 35 constrant-based column generaton, 159, 219 constructon heurstc, 115 contnuous operatons, 1, 6, 11, 16, 72, 161, 162, 184 contnuous shft assgnment problem, 31, 186 convex combnaton, 126 convexfcaton, , 150 cost-based doman flterng, 159, 219 couplng constrants, 125, 128, 145, 146 crew parng, 32, 130 crew rosterng, 32 33, 129, 130 and workforce schedulng, 33 for bus drvers, 33 for ralways, 33 crew shfts, 76 crew tasks, 46, 71, 76 subcrews, 76, 83, 111 temporal relaton, 51, 54, 82, 84 crews, 84 crtcal tasks, 59 cut, 165 cuttng planes, 24, 134, 135, 159, 216 cuttng stock problem, 125, 129, 130, 135 cyclc demands, 15, 161, 184 cyclc rosters, 8, 10, 15, 26 27, , 229 blockng factors, 207 daly model, 188 for ralway crews, 33 models, week model, 187 workstretch model, 187 cyclc staffng, 18, 31, 186 Dantzg-Wolfe decomposton, , 134, day-off schedulng, 9, 15, 17, 19 21, 229 deadheadng, 33 decomposton, demand curve, 5, 45, 161 dscretsaton, 5, 162, demand plannng, 5 6, 45 demand-level plannng, 6, 9, 161 and task-level plannng, 7, 161 departure flght, 3, 4 depot, 10, 50, 74, 138, 139 depth-bounded dscrepancy search, 70 depth-frst search, 151, 172 destnaton tasks, 49, 73, 142 dgraph, 203 Djkstra s algorthm, 149 dscontnuous operatons, 11, 16, 152 dscrepancy, 58, 109 dscretsaton, , 203 dsjunctve schedulng, doman consstency, 36 domnance, 149, 167, 171 dual values, 127, 133, 199 dummy shft types, 101 dummy shfts, 88 dynamc programmng, 62, 114, 129, 149, 151, and constrant programmng,

271 Index pullng, 200 reachng, 200 early branchng, 211 employee avalablty, 16, 24, 29 employee preferences, 16, 24 engagement standards, 3, 45 equvalent weghts, 81 Euler crcut, 203 Euler path, 203 extraordnary overlap, 28, 162, , 191 extreme ponts, 126, 133 extreme rays, 126, 127, 133, 146 fal-frst prncple, 57, 107 farness, 8, 26, 184 fxed pont teraton, 37, 112 flght delays, 219 flght leg, 3, 32 flght schedule, 3 flow decomposton theorem, 147 flows, 129, , 164 conservaton, 145 multcommodty, 129, 145 forward constrants, 28, 30, 164, 167, 168, 171, 195 substtuton, 170 forward net, full-tme employees, 6, 16, 184 generalsed arc consstency, 36 generalsed assgnment, 130 graph colourng problem, 171 greedy algorthms, 63 ground handlng, 1 groundtme, 3, 4 heght, 171 Herholzer s algorthm, 206 horzontal temporal relatons, 84 hub-and-spoke, 1 mplct models, Aykn, 162, 170, 171, 180 Bechtold/Jacobs, 162, , 180 equvalence proof, , 192 for breaks, 28, 162, for controllable work, 29, 170 for employee avalablty, 29 for shft schedulng, 29, 170 for start-tme bands, 29, 170 for tour schedulng, 29, 170, 188, 196 for week transtons, 192 n two dmensons, 192 mproved lmted dscrepancy search, 70 mprovement algorthms, 38, 72, 85 ncompatble qualfcatons, 76, 83, 84, 94 nserton heurstc, 40, 46 nserton-based methods, 40 41, 52, 75, 89, 99 nteger column generaton, 130 nteger programmng, 11, 17, 21, , 185, 186, 194 and constrant programmng, 138, 159, 219 ntegrated models, 8, 11, 15, 33, 184, 217 nterleaved depth-frst search, 70 job-shop schedulng, 38, 42 junctons, 193 k-b-consstency, 36 k-consstency, 36 k-d-consstency, 36 k-feasblty, 36 Kelley s cuttng plane method, 135 Lagrange multplers, 133 Lagrangan relaxaton, large neghbourhood search, 38 39, 47, 56, 60 62, 85, 107, 109, 218 defcences, 123 release strateges, 60 62, Lasdon, 131, 151, 211 legal regulatons, 6, 8, 16, 32, 184 levellng, 5, 19 resources, 10, workloads, 5, 10, 45 70, 161 lexcographcal order, 81 lftng, 134 lmted dscrepancy search, 39, 58, 109 lnear programmng, , 148, 161, 185 natural ntegralty, 129, 149 lnk varables, 193, 194 generaton, lnks, 193 local search, 38, 60 62, 73, 85 and constrant programmng, operators, 38, 47, 85 shortcomngs, 121 lower bounds, 59 60, , 150 global,

272 Index n column generaton, , 151, 211 Lagrangan, 133 lnear programmng, 17, 129, 151, 202 master program, 125, 127 restrcted, 127, 148, 196, 202 mn-cut max-flow theorem, 165 mnmum shft desgn problem, 31 Mnkowsk s theorem, 126, 134, 146 moble equpment, 46 model week, 3, 15, 184 module, 20, 26 multcommodty flow problem, 129, 133, 145 named plannng, 8, 16, 24, 232 natural ntegralty, 129, 149 near-crtcal tasks, 59 network flows, 129, , 164 conservaton, 145 multcommodty, 129, 145 nocycle, 42 node consstency, 36 non-regularty, 48 nonzeros, 170, 174, 181 N P-hardness, 52, , 171, 186, 198 n the strong sense, nurse schedulng, 24 26, 229 ONE-IN-THREE 3SAT, 139 open-shop schedulng, 43 operatve plannng, 3, 9, 49 orgn tasks, 49, 73, 142 OSI, 152 overlappng, 79 80, maxmum, 79 mnmsaton, 80, parngs, 32 Pan Am, 2, 19 part-tme employees, 6, 16, 80 partal path methods, partton PARTITION, 31 PARTITION, 52 passenger servces, 1 path, 203 path consstency, 36 peak tmes, 1, 5, 6, 45, 177 perturbaton, 210 polyhedron, 126, 146 preemptve tasks, 71, 77 79, 84 prcng problem, 127 pseudo splt part, 78 pseudo-polynomal, 144, 151, 198 push-forward/push-backward, 41, 90 Qantas, 18 qualfcatons, 5, 7, 75 76, 84 ncompatble, 76, 83, 84, 94 penaltes, 75, 81, 94, 101 per shft, 75 preferences, 75 restrctons, 76 queueng models, 4 ramp servces, 1 randomsaton, 61, 110 reduced costs, 127, 128, 132, 148, 149, 198 reduced-cost fxng, 134 relatedness, 39, 60 relef ponts, 33 resource nvestment, 5, 47 resource levellng, 10, resource-constraned shortest path problem, 129, 159, restrcted master program, 127, 148, 196, 202 revsed smplex method, 127 robustness, 2, 12, 19, 47, 219 roster graph, 204 rosterng, 8 9, 183 ntegrated, 8, 15, 184, 194 work rules, 8 rosters, 8 9 anonymous, 8 cyclc, 8, 10, 15, 26 27, , 229 ndvdual, 8 named, 8 rotatng, 8, 183 rotatons, 32 round trp, 33 run-cuttng, 33 Ryan-Foster branchng, 130, 150 schedulng flexblty, 16, 23, 29 segments, 32 set coverng, 16, 131, 145, 149, 159, , 167, 202 set parttonng, 32, 130, 145 setup tmes, 42 shft assgnment, 9, 15, 21, 229 shft class, 174 shft crews, 76,

273 Index propagaton, shft number restrctons, 80, 83, 101, 138 lower boundng, shft patterns, 8, 183 shft plannng, 6 7 anonymous, 6 constructon algorthm, 85 constructon heurstc, 72 demand level, see shft schedulng mathematcal model, smplfed, 138 task level, 7, 10, , shft schedulng, 9, 15, 17 19, 71, 161, 174, 183, 229 shft templates, 85 87, 93 shft transtons, 185, 203 shft types, 6, 16, 73, 138, 162, 185 dummy, 101 propagaton, 92 realsatons, 163, 185 shft utlsaton, 110, 115, 156 shfts, 6, 73, 163, 185 dummy, 88 shortest path problem, 129, 133, 149 smplex method, 126, 127, 148, 149 revsed, 127 sts, 33 splt parts, 77, 88, 96 length, 79, 100 mnmum length, 83, 84, 97 predecessor, 79 pseudo, 78 successor, 79 splt shfts, 28, 33 splt tasks, 78 length, 97 propagaton, splttng, 7, 10, 71, 77 79, 84 stablsaton, 135, 158 staff plannng anonymous, 16, 232 demand level, 6, 9, 161 manual, 2 named, 16, 24, 232 operatve, 3, 9, 49 strategcal, 3, 9 systems, 2, 12 tactcal, 3, 9, 49 task level, 7, 10 start tme wndows, 5, 7, 39, 40, 45, 50, 53, 73, 82 start-tme band, 16, 29 strategcal plannng, 3, 9 strong connectvty, 203 subcrews, 76, 83, 111 propagaton, 95 subcycles, 189, 194, subgradent optmsaton, 133 subproblem, 127 and branchng, 130 Lagrangan, 133 subset sum problem, 151 subtour elmnaton, 42, 189, 204 symmetry, 41, 56, 96, 100, 129, 190 tactcal plannng, 3, 9, 49 talng-off effect, 132, 151 Tarjan s algorthm, 204 task generaton, 3 5 task-level plannng, 7, 10 and demand-level plannng, 7, 161 shft plannng, , tasks, see work tasks temporal propagaton, 53 54, backward, 91 forward, 91 horzontal, 94 vertcal, 94 topogcal order, 172 tour schedulng, 10, 15, 17, 21 24, 130, 188, 196, 229 contnuous, 16 cyclc, 31, 184, 194 dscontnuous, 16 tours, 5, 7, 46 transtve orentaton, 171 transtvty, 51, 171 transportaton problem, 164, 175, 203 travel tmes, 5, 39, 46, 50, 59, 74, 138 travellng salesman problem, 42, 189 wth tme wndows, 42 trangle nequalty, 39, 52, 74, 99, 145 unassgned tasks, 81, uncertanty, 219 understaffng, 6, 161, 163, 176 unon regulatons, 6, 8, 16, 32, 184, 209 Unted Arlnes, 1, 2, 22, 23, 31 varable orderng,

274 Index vehcle block, 33 vehcle routng, 10 11, 71, 129, 145, 189 and constrant programmng, and levellng, 10, 49 and shft plannng, 10, 72, 138 dsjunctve methods, nserton-based methods, 40 41, 52 partal path methods, wth tme wndows, 10, 38, 39, 45, 46, 72, 84 vehcle schedulng, 10, 138, 139, 145 and shft plannng, 138 vertcal temporal relatons, 84 week transtons, week varables, 194 generaton, weekends off, 20, 186, 188, Weyl s theorem, 126, 134, 146 what-f analyss, 9, 12, 185 work rules, work tasks, 3, 5, 45, 73, 138 crews, 46, 49, 71, 76, 84 crtcal, 59 generaton, 3 5 length, 5, 45, 73, 138 movable, 5, 46 near-crtcal, 59 preemptve, 10, 71, 77 79, 84 qualfcatons, 5, 75 splttng, 7, 10, 71, 77 79, 84 start tme wndow, 5, 7, 45, 50, 53, 73, 82 unassgned, 81, work unts, 186 workforce allocaton, 15 workforce schedulng, 9 10, and crew rosterng, 33 complexty, 31 workng hours, 16, 184, 186 workng subset methods, 18, 30 31, 153, 209 demand-based methods, 30 structural methods, 30 workng tme drectves, 6 workload levellng, 5, 10, 45 70, 161 and shft plannng, 45, 70 and vehcle routng, 49 workstretch, 186, 187 XPRESS-MP, 181,

275 Currculum Vtae Angaben zur Person Name Jörg Herbers Geburtsdatum Geburtsort Haselünne Schul- und Hochschulausbldung 06/2001 Sprngorum-Denkmünze, RWTH Aachen 05/2000 Dplom mt Auszechnung n Informatk, RWTH Aachen 10/ /2000 Dplomarbet, DamlerChrysler Forschungszentrum Berln 04/ /2000 Stpendum der DamlerChrysler Studenförderung Forschung & Technologe 09/ /1998 Auslandsstudum an der Ecole Polytechnque Fédérale de Lausanne, Schwez 07/1997 Vordplom n Informatk, RWTH Aachen 02/ /2000 Stpendum der Studenstftung des deutschen Volkes 10/ /2000 Informatk-Studum, RWTH Aachen 06/1995 Abtur, Gymnasum Maranum Meppen Beruflcher Werdegang set 06/2000 Operatons Research Modellentwckler be INFORM Insttut für Operatons Research und Management GmbH, Aachen 10/ /2000 Forschungstätgket am DamlerChrysler Forschungszentrum Berln 11/ /1999 Studentsche Hlfskraft am Lehrstuhl für Informatk VI, RWTH Aachen 10/ /1997 Studentsche Hlfskraft am Insttut für Geometre und Praktsche Mathematk, RWTH Aachen Berufsverbände set 01/1997 Gesellschaft für Informatk e.v. 259

Project Networks With Mixed-Time Constraints

Project Networks With Mixed-Time Constraints Project Networs Wth Mxed-Tme Constrants L Caccetta and B Wattananon Western Australan Centre of Excellence n Industral Optmsaton (WACEIO) Curtn Unversty of Technology GPO Box U1987 Perth Western Australa

More information

benefit is 2, paid if the policyholder dies within the year, and probability of death within the year is ).

benefit is 2, paid if the policyholder dies within the year, and probability of death within the year is ). REVIEW OF RISK MANAGEMENT CONCEPTS LOSS DISTRIBUTIONS AND INSURANCE Loss and nsurance: When someone s subject to the rsk of ncurrng a fnancal loss, the loss s generally modeled usng a random varable or

More information

Optimization of network mesh topologies and link capacities for congestion relief

Optimization of network mesh topologies and link capacities for congestion relief Optmzaton of networ mesh topologes and ln capactes for congeston relef D. de Vllers * J.M. Hattngh School of Computer-, Statstcal- and Mathematcal Scences Potchefstroom Unversty for CHE * E-mal: [email protected]

More information

Module 2 LOSSLESS IMAGE COMPRESSION SYSTEMS. Version 2 ECE IIT, Kharagpur

Module 2 LOSSLESS IMAGE COMPRESSION SYSTEMS. Version 2 ECE IIT, Kharagpur Module LOSSLESS IMAGE COMPRESSION SYSTEMS Lesson 3 Lossless Compresson: Huffman Codng Instructonal Objectves At the end of ths lesson, the students should be able to:. Defne and measure source entropy..

More information

On the Optimal Control of a Cascade of Hydro-Electric Power Stations

On the Optimal Control of a Cascade of Hydro-Electric Power Stations On the Optmal Control of a Cascade of Hydro-Electrc Power Statons M.C.M. Guedes a, A.F. Rbero a, G.V. Smrnov b and S. Vlela c a Department of Mathematcs, School of Scences, Unversty of Porto, Portugal;

More information

An Alternative Way to Measure Private Equity Performance

An Alternative Way to Measure Private Equity Performance An Alternatve Way to Measure Prvate Equty Performance Peter Todd Parlux Investment Technology LLC Summary Internal Rate of Return (IRR) s probably the most common way to measure the performance of prvate

More information

Traffic State Estimation in the Traffic Management Center of Berlin

Traffic State Estimation in the Traffic Management Center of Berlin Traffc State Estmaton n the Traffc Management Center of Berln Authors: Peter Vortsch, PTV AG, Stumpfstrasse, D-763 Karlsruhe, Germany phone ++49/72/965/35, emal [email protected] Peter Möhl, PTV AG,

More information

1.1 The University may award Higher Doctorate degrees as specified from time-to-time in UPR AS11 1.

1.1 The University may award Higher Doctorate degrees as specified from time-to-time in UPR AS11 1. HIGHER DOCTORATE DEGREES SUMMARY OF PRINCIPAL CHANGES General changes None Secton 3.2 Refer to text (Amendments to verson 03.0, UPR AS02 are shown n talcs.) 1 INTRODUCTION 1.1 The Unversty may award Hgher

More information

ANALYZING THE RELATIONSHIPS BETWEEN QUALITY, TIME, AND COST IN PROJECT MANAGEMENT DECISION MAKING

ANALYZING THE RELATIONSHIPS BETWEEN QUALITY, TIME, AND COST IN PROJECT MANAGEMENT DECISION MAKING ANALYZING THE RELATIONSHIPS BETWEEN QUALITY, TIME, AND COST IN PROJECT MANAGEMENT DECISION MAKING Matthew J. Lberatore, Department of Management and Operatons, Vllanova Unversty, Vllanova, PA 19085, 610-519-4390,

More information

Activity Scheduling for Cost-Time Investment Optimization in Project Management

Activity Scheduling for Cost-Time Investment Optimization in Project Management PROJECT MANAGEMENT 4 th Internatonal Conference on Industral Engneerng and Industral Management XIV Congreso de Ingenería de Organzacón Donosta- San Sebastán, September 8 th -10 th 010 Actvty Schedulng

More information

The Greedy Method. Introduction. 0/1 Knapsack Problem

The Greedy Method. Introduction. 0/1 Knapsack Problem The Greedy Method Introducton We have completed data structures. We now are gong to look at algorthm desgn methods. Often we are lookng at optmzaton problems whose performance s exponental. For an optmzaton

More information

Robust Design of Public Storage Warehouses. Yeming (Yale) Gong EMLYON Business School

Robust Design of Public Storage Warehouses. Yeming (Yale) Gong EMLYON Business School Robust Desgn of Publc Storage Warehouses Yemng (Yale) Gong EMLYON Busness School Rene de Koster Rotterdam school of management, Erasmus Unversty Abstract We apply robust optmzaton and revenue management

More information

Multiple-Period Attribution: Residuals and Compounding

Multiple-Period Attribution: Residuals and Compounding Multple-Perod Attrbuton: Resduals and Compoundng Our revewer gave these authors full marks for dealng wth an ssue that performance measurers and vendors often regard as propretary nformaton. In 1994, Dens

More information

Formulating & Solving Integer Problems Chapter 11 289

Formulating & Solving Integer Problems Chapter 11 289 Formulatng & Solvng Integer Problems Chapter 11 289 The Optonal Stop TSP If we drop the requrement that every stop must be vsted, we then get the optonal stop TSP. Ths mght correspond to a ob sequencng

More information

A Novel Methodology of Working Capital Management for Large. Public Constructions by Using Fuzzy S-curve Regression

A Novel Methodology of Working Capital Management for Large. Public Constructions by Using Fuzzy S-curve Regression Novel Methodology of Workng Captal Management for Large Publc Constructons by Usng Fuzzy S-curve Regresson Cheng-Wu Chen, Morrs H. L. Wang and Tng-Ya Hseh Department of Cvl Engneerng, Natonal Central Unversty,

More information

Power-of-Two Policies for Single- Warehouse Multi-Retailer Inventory Systems with Order Frequency Discounts

Power-of-Two Policies for Single- Warehouse Multi-Retailer Inventory Systems with Order Frequency Discounts Power-of-wo Polces for Sngle- Warehouse Mult-Retaler Inventory Systems wth Order Frequency Dscounts José A. Ventura Pennsylvana State Unversty (USA) Yale. Herer echnon Israel Insttute of echnology (Israel)

More information

IMPACT ANALYSIS OF A CELLULAR PHONE

IMPACT ANALYSIS OF A CELLULAR PHONE 4 th ASA & μeta Internatonal Conference IMPACT AALYSIS OF A CELLULAR PHOE We Lu, 2 Hongy L Bejng FEAonlne Engneerng Co.,Ltd. Bejng, Chna ABSTRACT Drop test smulaton plays an mportant role n nvestgatng

More information

The Development of Web Log Mining Based on Improve-K-Means Clustering Analysis

The Development of Web Log Mining Based on Improve-K-Means Clustering Analysis The Development of Web Log Mnng Based on Improve-K-Means Clusterng Analyss TngZhong Wang * College of Informaton Technology, Luoyang Normal Unversty, Luoyang, 471022, Chna [email protected] Abstract.

More information

A DYNAMIC CRASHING METHOD FOR PROJECT MANAGEMENT USING SIMULATION-BASED OPTIMIZATION. Michael E. Kuhl Radhamés A. Tolentino-Peña

A DYNAMIC CRASHING METHOD FOR PROJECT MANAGEMENT USING SIMULATION-BASED OPTIMIZATION. Michael E. Kuhl Radhamés A. Tolentino-Peña Proceedngs of the 2008 Wnter Smulaton Conference S. J. Mason, R. R. Hll, L. Mönch, O. Rose, T. Jefferson, J. W. Fowler eds. A DYNAMIC CRASHING METHOD FOR PROJECT MANAGEMENT USING SIMULATION-BASED OPTIMIZATION

More information

An MILP model for planning of batch plants operating in a campaign-mode

An MILP model for planning of batch plants operating in a campaign-mode An MILP model for plannng of batch plants operatng n a campagn-mode Yanna Fumero Insttuto de Desarrollo y Dseño CONICET UTN [email protected] Gabrela Corsano Insttuto de Desarrollo y Dseño

More information

To manage leave, meeting institutional requirements and treating individual staff members fairly and consistently.

To manage leave, meeting institutional requirements and treating individual staff members fairly and consistently. Corporate Polces & Procedures Human Resources - Document CPP216 Leave Management Frst Produced: Current Verson: Past Revsons: Revew Cycle: Apples From: 09/09/09 26/10/12 09/09/09 3 years Immedately Authorsaton:

More information

2008/8. An integrated model for warehouse and inventory planning. Géraldine Strack and Yves Pochet

2008/8. An integrated model for warehouse and inventory planning. Géraldine Strack and Yves Pochet 2008/8 An ntegrated model for warehouse and nventory plannng Géraldne Strack and Yves Pochet CORE Voe du Roman Pays 34 B-1348 Louvan-la-Neuve, Belgum. Tel (32 10) 47 43 04 Fax (32 10) 47 43 01 E-mal: [email protected]

More information

Feature selection for intrusion detection. Slobodan Petrović NISlab, Gjøvik University College

Feature selection for intrusion detection. Slobodan Petrović NISlab, Gjøvik University College Feature selecton for ntruson detecton Slobodan Petrovć NISlab, Gjøvk Unversty College Contents The feature selecton problem Intruson detecton Traffc features relevant for IDS The CFS measure The mrmr measure

More information

A multi-start local search heuristic for ship scheduling a computational study

A multi-start local search heuristic for ship scheduling a computational study Computers & Operatons Research 34 (2007) 900 917 www.elsever.com/locate/cor A mult-start local search heurstc for shp schedulng a computatonal study Ger BrZnmo a,b,, Marelle Chrstansen b, Kjetl Fagerholt

More information

Calculating the high frequency transmission line parameters of power cables

Calculating the high frequency transmission line parameters of power cables < ' Calculatng the hgh frequency transmsson lne parameters of power cables Authors: Dr. John Dcknson, Laboratory Servces Manager, N 0 RW E B Communcatons Mr. Peter J. Ncholson, Project Assgnment Manager,

More information

1. Fundamentals of probability theory 2. Emergence of communication traffic 3. Stochastic & Markovian Processes (SP & MP)

1. Fundamentals of probability theory 2. Emergence of communication traffic 3. Stochastic & Markovian Processes (SP & MP) 6.3 / -- Communcaton Networks II (Görg) SS20 -- www.comnets.un-bremen.de Communcaton Networks II Contents. Fundamentals of probablty theory 2. Emergence of communcaton traffc 3. Stochastc & Markovan Processes

More information

Examensarbete. Rotating Workforce Scheduling. Caroline Granfeldt

Examensarbete. Rotating Workforce Scheduling. Caroline Granfeldt Examensarbete Rotatng Workforce Schedulng Carolne Granfeldt LTH - MAT - EX - - 2015 / 08 - - SE Rotatng Workforce Schedulng Optmerngslära, Lnköpngs Unverstet Carolne Granfeldt LTH - MAT - EX - - 2015

More information

Institute of Informatics, Faculty of Business and Management, Brno University of Technology,Czech Republic

Institute of Informatics, Faculty of Business and Management, Brno University of Technology,Czech Republic Lagrange Multplers as Quanttatve Indcators n Economcs Ivan Mezník Insttute of Informatcs, Faculty of Busness and Management, Brno Unversty of TechnologCzech Republc Abstract The quanttatve role of Lagrange

More information

The Current Employment Statistics (CES) survey,

The Current Employment Statistics (CES) survey, Busness Brths and Deaths Impact of busness brths and deaths n the payroll survey The CES probablty-based sample redesgn accounts for most busness brth employment through the mputaton of busness deaths,

More information

Enterprise Master Patient Index

Enterprise Master Patient Index Enterprse Master Patent Index Healthcare data are captured n many dfferent settngs such as hosptals, clncs, labs, and physcan offces. Accordng to a report by the CDC, patents n the Unted States made an

More information

DEFINING %COMPLETE IN MICROSOFT PROJECT

DEFINING %COMPLETE IN MICROSOFT PROJECT CelersSystems DEFINING %COMPLETE IN MICROSOFT PROJECT PREPARED BY James E Aksel, PMP, PMI-SP, MVP For Addtonal Informaton about Earned Value Management Systems and reportng, please contact: CelersSystems,

More information

Scatter search approach for solving a home care nurses routing and scheduling problem

Scatter search approach for solving a home care nurses routing and scheduling problem Scatter search approach for solvng a home care nurses routng and schedulng problem Bouazza Elbenan 1, Jacques A. Ferland 2 and Vvane Gascon 3* 1 Département de mathématque et nformatque, Faculté des scences,

More information

Many e-tailers providing attended home delivery, especially e-grocers, offer narrow delivery time slots to

Many e-tailers providing attended home delivery, especially e-grocers, offer narrow delivery time slots to Vol. 45, No. 3, August 2011, pp. 435 449 ssn 0041-1655 essn 1526-5447 11 4503 0435 do 10.1287/trsc.1100.0346 2011 INFORMS Tme Slot Management n Attended Home Delvery Nels Agatz Department of Decson and

More information

Traffic-light a stress test for life insurance provisions

Traffic-light a stress test for life insurance provisions MEMORANDUM Date 006-09-7 Authors Bengt von Bahr, Göran Ronge Traffc-lght a stress test for lfe nsurance provsons Fnansnspetonen P.O. Box 6750 SE-113 85 Stocholm [Sveavägen 167] Tel +46 8 787 80 00 Fax

More information

Software project management with GAs

Software project management with GAs Informaton Scences 177 (27) 238 241 www.elsever.com/locate/ns Software project management wth GAs Enrque Alba *, J. Francsco Chcano Unversty of Málaga, Grupo GISUM, Departamento de Lenguajes y Cencas de

More information

POLYSA: A Polynomial Algorithm for Non-binary Constraint Satisfaction Problems with and

POLYSA: A Polynomial Algorithm for Non-binary Constraint Satisfaction Problems with and POLYSA: A Polynomal Algorthm for Non-bnary Constrant Satsfacton Problems wth and Mguel A. Saldo, Federco Barber Dpto. Sstemas Informátcos y Computacón Unversdad Poltécnca de Valenca, Camno de Vera s/n

More information

Return decomposing of absolute-performance multi-asset class portfolios. Working Paper - Nummer: 16

Return decomposing of absolute-performance multi-asset class portfolios. Working Paper - Nummer: 16 Return decomposng of absolute-performance mult-asset class portfolos Workng Paper - Nummer: 16 2007 by Dr. Stefan J. Illmer und Wolfgang Marty; n: Fnancal Markets and Portfolo Management; March 2007; Volume

More information

Can Auto Liability Insurance Purchases Signal Risk Attitude?

Can Auto Liability Insurance Purchases Signal Risk Attitude? Internatonal Journal of Busness and Economcs, 2011, Vol. 10, No. 2, 159-164 Can Auto Lablty Insurance Purchases Sgnal Rsk Atttude? Chu-Shu L Department of Internatonal Busness, Asa Unversty, Tawan Sheng-Chang

More information

Intra-year Cash Flow Patterns: A Simple Solution for an Unnecessary Appraisal Error

Intra-year Cash Flow Patterns: A Simple Solution for an Unnecessary Appraisal Error Intra-year Cash Flow Patterns: A Smple Soluton for an Unnecessary Apprasal Error By C. Donald Wggns (Professor of Accountng and Fnance, the Unversty of North Florda), B. Perry Woodsde (Assocate Professor

More information

Frequency Selective IQ Phase and IQ Amplitude Imbalance Adjustments for OFDM Direct Conversion Transmitters

Frequency Selective IQ Phase and IQ Amplitude Imbalance Adjustments for OFDM Direct Conversion Transmitters Frequency Selectve IQ Phase and IQ Ampltude Imbalance Adjustments for OFDM Drect Converson ransmtters Edmund Coersmeer, Ernst Zelnsk Noka, Meesmannstrasse 103, 44807 Bochum, Germany [email protected],

More information

Joint Scheduling of Processing and Shuffle Phases in MapReduce Systems

Joint Scheduling of Processing and Shuffle Phases in MapReduce Systems Jont Schedulng of Processng and Shuffle Phases n MapReduce Systems Fangfe Chen, Mural Kodalam, T. V. Lakshman Department of Computer Scence and Engneerng, The Penn State Unversty Bell Laboratores, Alcatel-Lucent

More information

iavenue iavenue i i i iavenue iavenue iavenue

iavenue iavenue i i i iavenue iavenue iavenue Saratoga Systems' enterprse-wde Avenue CRM system s a comprehensve web-enabled software soluton. Ths next generaton system enables you to effectvely manage and enhance your customer relatonshps n both

More information

The Safety Board recommends that the Penn Central Transportation. Company and the American Railway Engineering Association revise

The Safety Board recommends that the Penn Central Transportation. Company and the American Railway Engineering Association revise V. RECOWNDATONS 4.! The Safety Board recommends that the Penn Central Transportaton Company and the Amercan Ralway Engneerng Assocaton revse ther track nspecton and mantenance standards or recommended

More information

Chapter 4 ECONOMIC DISPATCH AND UNIT COMMITMENT

Chapter 4 ECONOMIC DISPATCH AND UNIT COMMITMENT Chapter 4 ECOOMIC DISATCH AD UIT COMMITMET ITRODUCTIO A power system has several power plants. Each power plant has several generatng unts. At any pont of tme, the total load n the system s met by the

More information

SCHEDULING OF CONSTRUCTION PROJECTS BY MEANS OF EVOLUTIONARY ALGORITHMS

SCHEDULING OF CONSTRUCTION PROJECTS BY MEANS OF EVOLUTIONARY ALGORITHMS SCHEDULING OF CONSTRUCTION PROJECTS BY MEANS OF EVOLUTIONARY ALGORITHMS Magdalena Rogalska 1, Wocech Bożeko 2,Zdzsław Heduck 3, 1 Lubln Unversty of Technology, 2- Lubln, Nadbystrzycka 4., Poland. E-mal:[email protected]

More information

Credit Limit Optimization (CLO) for Credit Cards

Credit Limit Optimization (CLO) for Credit Cards Credt Lmt Optmzaton (CLO) for Credt Cards Vay S. Desa CSCC IX, Ednburgh September 8, 2005 Copyrght 2003, SAS Insttute Inc. All rghts reserved. SAS Propretary Agenda Background Tradtonal approaches to credt

More information

Number of Levels Cumulative Annual operating Income per year construction costs costs ($) ($) ($) 1 600,000 35,000 100,000 2 2,200,000 60,000 350,000

Number of Levels Cumulative Annual operating Income per year construction costs costs ($) ($) ($) 1 600,000 35,000 100,000 2 2,200,000 60,000 350,000 Problem Set 5 Solutons 1 MIT s consderng buldng a new car park near Kendall Square. o unversty funds are avalable (overhead rates are under pressure and the new faclty would have to pay for tself from

More information

Statistical Methods to Develop Rating Models

Statistical Methods to Develop Rating Models Statstcal Methods to Develop Ratng Models [Evelyn Hayden and Danel Porath, Österrechsche Natonalbank and Unversty of Appled Scences at Manz] Source: The Basel II Rsk Parameters Estmaton, Valdaton, and

More information

Support Vector Machines

Support Vector Machines Support Vector Machnes Max Wellng Department of Computer Scence Unversty of Toronto 10 Kng s College Road Toronto, M5S 3G5 Canada [email protected] Abstract Ths s a note to explan support vector machnes.

More information

Financial Mathemetics

Financial Mathemetics Fnancal Mathemetcs 15 Mathematcs Grade 12 Teacher Gude Fnancal Maths Seres Overvew In ths seres we am to show how Mathematcs can be used to support personal fnancal decsons. In ths seres we jon Tebogo,

More information

ADVERTISEMENT FOR THE POST OF DIRECTOR, lim TIRUCHIRAPPALLI

ADVERTISEMENT FOR THE POST OF DIRECTOR, lim TIRUCHIRAPPALLI ADVERTSEMENT FOR THE POST OF DRECTOR, lm TRUCHRAPPALL The ndan nsttute of Management Truchrappall (MT), establshed n 2011 n the regon of Taml Nadu s a leadng management school n nda. ts vson s "Preparng

More information

Risk Model of Long-Term Production Scheduling in Open Pit Gold Mining

Risk Model of Long-Term Production Scheduling in Open Pit Gold Mining Rsk Model of Long-Term Producton Schedulng n Open Pt Gold Mnng R Halatchev 1 and P Lever 2 ABSTRACT Open pt gold mnng s an mportant sector of the Australan mnng ndustry. It uses large amounts of nvestments,

More information

Damage detection in composite laminates using coin-tap method

Damage detection in composite laminates using coin-tap method Damage detecton n composte lamnates usng con-tap method S.J. Km Korea Aerospace Research Insttute, 45 Eoeun-Dong, Youseong-Gu, 35-333 Daejeon, Republc of Korea [email protected] 45 The con-tap test has the

More information

APPLICATION OF PROBE DATA COLLECTED VIA INFRARED BEACONS TO TRAFFIC MANEGEMENT

APPLICATION OF PROBE DATA COLLECTED VIA INFRARED BEACONS TO TRAFFIC MANEGEMENT APPLICATION OF PROBE DATA COLLECTED VIA INFRARED BEACONS TO TRAFFIC MANEGEMENT Toshhko Oda (1), Kochro Iwaoka (2) (1), (2) Infrastructure Systems Busness Unt, Panasonc System Networks Co., Ltd. Saedo-cho

More information

Analysis of Premium Liabilities for Australian Lines of Business

Analysis of Premium Liabilities for Australian Lines of Business Summary of Analyss of Premum Labltes for Australan Lnes of Busness Emly Tao Honours Research Paper, The Unversty of Melbourne Emly Tao Acknowledgements I am grateful to the Australan Prudental Regulaton

More information

Overview of monitoring and evaluation

Overview of monitoring and evaluation 540 Toolkt to Combat Traffckng n Persons Tool 10.1 Overvew of montorng and evaluaton Overvew Ths tool brefly descrbes both montorng and evaluaton, and the dstncton between the two. What s montorng? Montorng

More information

Answer: A). There is a flatter IS curve in the high MPC economy. Original LM LM after increase in M. IS curve for low MPC economy

Answer: A). There is a flatter IS curve in the high MPC economy. Original LM LM after increase in M. IS curve for low MPC economy 4.02 Quz Solutons Fall 2004 Multple-Choce Questons (30/00 ponts) Please, crcle the correct answer for each of the followng 0 multple-choce questons. For each queston, only one of the answers s correct.

More information

CHOLESTEROL REFERENCE METHOD LABORATORY NETWORK. Sample Stability Protocol

CHOLESTEROL REFERENCE METHOD LABORATORY NETWORK. Sample Stability Protocol CHOLESTEROL REFERENCE METHOD LABORATORY NETWORK Sample Stablty Protocol Background The Cholesterol Reference Method Laboratory Network (CRMLN) developed certfcaton protocols for total cholesterol, HDL

More information

Time Value of Money Module

Time Value of Money Module Tme Value of Money Module O BJECTIVES After readng ths Module, you wll be able to: Understand smple nterest and compound nterest. 2 Compute and use the future value of a sngle sum. 3 Compute and use the

More information

Politecnico di Torino. Porto Institutional Repository

Politecnico di Torino. Porto Institutional Repository Poltecnco d Torno Porto Insttutonal Repostory [Artcle] A cost-effectve cloud computng framework for acceleratng multmeda communcaton smulatons Orgnal Ctaton: D. Angel, E. Masala (2012). A cost-effectve

More information

J. Parallel Distrib. Comput.

J. Parallel Distrib. Comput. J. Parallel Dstrb. Comput. 71 (2011) 62 76 Contents lsts avalable at ScenceDrect J. Parallel Dstrb. Comput. journal homepage: www.elsever.com/locate/jpdc Optmzng server placement n dstrbuted systems n

More information

VRT012 User s guide V0.1. Address: Žirmūnų g. 27, Vilnius LT-09105, Phone: (370-5) 2127472, Fax: (370-5) 276 1380, Email: info@teltonika.

VRT012 User s guide V0.1. Address: Žirmūnų g. 27, Vilnius LT-09105, Phone: (370-5) 2127472, Fax: (370-5) 276 1380, Email: info@teltonika. VRT012 User s gude V0.1 Thank you for purchasng our product. We hope ths user-frendly devce wll be helpful n realsng your deas and brngng comfort to your lfe. Please take few mnutes to read ths manual

More information

The OC Curve of Attribute Acceptance Plans

The OC Curve of Attribute Acceptance Plans The OC Curve of Attrbute Acceptance Plans The Operatng Characterstc (OC) curve descrbes the probablty of acceptng a lot as a functon of the lot s qualty. Fgure 1 shows a typcal OC Curve. 10 8 6 4 1 3 4

More information

Medium and long term. Equilibrium models approach

Medium and long term. Equilibrium models approach Medum and long term electrcty prces forecastng Equlbrum models approach J. Vllar, A. Campos, C. íaz, Insttuto de Investgacón Tecnológca, Escuela Técnca Superor de Ingenería-ICAI Unversdad ontfca Comllas

More information

RESEARCH ON DUAL-SHAKER SINE VIBRATION CONTROL. Yaoqi FENG 1, Hanping QIU 1. China Academy of Space Technology (CAST) yaoqi.feng@yahoo.

RESEARCH ON DUAL-SHAKER SINE VIBRATION CONTROL. Yaoqi FENG 1, Hanping QIU 1. China Academy of Space Technology (CAST) yaoqi.feng@yahoo. ICSV4 Carns Australa 9- July, 007 RESEARCH ON DUAL-SHAKER SINE VIBRATION CONTROL Yaoq FENG, Hanpng QIU Dynamc Test Laboratory, BISEE Chna Academy of Space Technology (CAST) [email protected] Abstract

More information

THE DISTRIBUTION OF LOAN PORTFOLIO VALUE * Oldrich Alfons Vasicek

THE DISTRIBUTION OF LOAN PORTFOLIO VALUE * Oldrich Alfons Vasicek HE DISRIBUION OF LOAN PORFOLIO VALUE * Oldrch Alfons Vascek he amount of captal necessary to support a portfolo of debt securtes depends on the probablty dstrbuton of the portfolo loss. Consder a portfolo

More information

To Fill or not to Fill: The Gas Station Problem

To Fill or not to Fill: The Gas Station Problem To Fll or not to Fll: The Gas Staton Problem Samr Khuller Azarakhsh Malekan Julán Mestre Abstract In ths paper we study several routng problems that generalze shortest paths and the Travelng Salesman Problem.

More information

What is Candidate Sampling

What is Candidate Sampling What s Canddate Samplng Say we have a multclass or mult label problem where each tranng example ( x, T ) conssts of a context x a small (mult)set of target classes T out of a large unverse L of possble

More information

Logical Development Of Vogel s Approximation Method (LD-VAM): An Approach To Find Basic Feasible Solution Of Transportation Problem

Logical Development Of Vogel s Approximation Method (LD-VAM): An Approach To Find Basic Feasible Solution Of Transportation Problem INTERNATIONAL JOURNAL OF SCIENTIFIC & TECHNOLOGY RESEARCH VOLUME, ISSUE, FEBRUARY ISSN 77-866 Logcal Development Of Vogel s Approxmaton Method (LD- An Approach To Fnd Basc Feasble Soluton Of Transportaton

More information

Research Article A Time Scheduling Model of Logistics Service Supply Chain with Mass Customized Logistics Service

Research Article A Time Scheduling Model of Logistics Service Supply Chain with Mass Customized Logistics Service Hndaw Publshng Corporaton Dscrete Dynamcs n Nature and Socety Volume 01, Artcle ID 48978, 18 pages do:10.1155/01/48978 Research Artcle A Tme Schedulng Model of Logstcs Servce Supply Chan wth Mass Customzed

More information

Efficient Project Portfolio as a tool for Enterprise Risk Management

Efficient Project Portfolio as a tool for Enterprise Risk Management Effcent Proect Portfolo as a tool for Enterprse Rsk Management Valentn O. Nkonov Ural State Techncal Unversty Growth Traectory Consultng Company January 5, 27 Effcent Proect Portfolo as a tool for Enterprse

More information

Omega 39 (2011) 313 322. Contents lists available at ScienceDirect. Omega. journal homepage: www.elsevier.com/locate/omega

Omega 39 (2011) 313 322. Contents lists available at ScienceDirect. Omega. journal homepage: www.elsevier.com/locate/omega Omega 39 (2011) 313 322 Contents lsts avalable at ScenceDrect Omega journal homepage: www.elsever.com/locate/omega Supply chan confguraton for dffuson of new products: An ntegrated optmzaton approach Mehd

More information

Section 5.3 Annuities, Future Value, and Sinking Funds

Section 5.3 Annuities, Future Value, and Sinking Funds Secton 5.3 Annutes, Future Value, and Snkng Funds Ordnary Annutes A sequence of equal payments made at equal perods of tme s called an annuty. The tme between payments s the payment perod, and the tme

More information

AN APPOINTMENT ORDER OUTPATIENT SCHEDULING SYSTEM THAT IMPROVES OUTPATIENT EXPERIENCE

AN APPOINTMENT ORDER OUTPATIENT SCHEDULING SYSTEM THAT IMPROVES OUTPATIENT EXPERIENCE AN APPOINTMENT ORDER OUTPATIENT SCHEDULING SYSTEM THAT IMPROVES OUTPATIENT EXPERIENCE Yu-L Huang Industral Engneerng Department New Mexco State Unversty Las Cruces, New Mexco 88003, U.S.A. Abstract Patent

More information

Integer Programming Formulations for the Uncapacitated Vehicle Routing p-hub Center Problem

Integer Programming Formulations for the Uncapacitated Vehicle Routing p-hub Center Problem 21st Internatonal Congress on Modellng and Smulaton, Gold Coast, Australa, 29 No to 4 Dec 2015 www.mssanz.org.au/modsm2015 Integer Programmng Formulatons for the Uncapactated Vehcle Routng p-hub Center

More information

IDENTIFICATION AND CORRECTION OF A COMMON ERROR IN GENERAL ANNUITY CALCULATIONS

IDENTIFICATION AND CORRECTION OF A COMMON ERROR IN GENERAL ANNUITY CALCULATIONS IDENTIFICATION AND CORRECTION OF A COMMON ERROR IN GENERAL ANNUITY CALCULATIONS Chrs Deeley* Last revsed: September 22, 200 * Chrs Deeley s a Senor Lecturer n the School of Accountng, Charles Sturt Unversty,

More information

Preventive Maintenance and Replacement Scheduling: Models and Algorithms

Preventive Maintenance and Replacement Scheduling: Models and Algorithms Preventve Mantenance and Replacement Schedulng: Models and Algorthms By Kamran S. Moghaddam B.S. Unversty of Tehran 200 M.S. Tehran Polytechnc 2003 A Dssertaton Proposal Submtted to the Faculty of the

More information

In some supply chains, materials are ordered periodically according to local information. This paper investigates

In some supply chains, materials are ordered periodically according to local information. This paper investigates MANUFACTURING & SRVIC OPRATIONS MANAGMNT Vol. 12, No. 3, Summer 2010, pp. 430 448 ssn 1523-4614 essn 1526-5498 10 1203 0430 nforms do 10.1287/msom.1090.0277 2010 INFORMS Improvng Supply Chan Performance:

More information

Time Value of Money. Types of Interest. Compounding and Discounting Single Sums. Page 1. Ch. 6 - The Time Value of Money. The Time Value of Money

Time Value of Money. Types of Interest. Compounding and Discounting Single Sums. Page 1. Ch. 6 - The Time Value of Money. The Time Value of Money Ch. 6 - The Tme Value of Money Tme Value of Money The Interest Rate Smple Interest Compound Interest Amortzng a Loan FIN21- Ahmed Y, Dasht TIME VALUE OF MONEY OR DISCOUNTED CASH FLOW ANALYSIS Very Important

More information

Ants Can Schedule Software Projects

Ants Can Schedule Software Projects Ants Can Schedule Software Proects Broderck Crawford 1,2, Rcardo Soto 1,3, Frankln Johnson 4, and Erc Monfroy 5 1 Pontfca Unversdad Católca de Valparaíso, Chle [email protected] 2 Unversdad Fns Terrae,

More information

Forecasting the Direction and Strength of Stock Market Movement

Forecasting the Direction and Strength of Stock Market Movement Forecastng the Drecton and Strength of Stock Market Movement Jngwe Chen Mng Chen Nan Ye [email protected] [email protected] [email protected] Abstract - Stock market s one of the most complcated systems

More information

Implementation of Deutsch's Algorithm Using Mathcad

Implementation of Deutsch's Algorithm Using Mathcad Implementaton of Deutsch's Algorthm Usng Mathcad Frank Roux The followng s a Mathcad mplementaton of Davd Deutsch's quantum computer prototype as presented on pages - n "Machnes, Logc and Quantum Physcs"

More information

Vehicle Routing Problem with Time Windows for Reducing Fuel Consumption

Vehicle Routing Problem with Time Windows for Reducing Fuel Consumption 3020 JOURNAL OF COMPUTERS, VOL. 7, NO. 12, DECEMBER 2012 Vehcle Routng Problem wth Tme Wndows for Reducng Fuel Consumpton Jn L School of Computer and Informaton Engneerng, Zhejang Gongshang Unversty, Hangzhou,

More information

Vembu StoreGrid Windows Client Installation Guide

Vembu StoreGrid Windows Client Installation Guide Ser v cepr ov dered t on Cl enti nst al l at ongu de W ndows Vembu StoreGrd Wndows Clent Installaton Gude Download the Wndows nstaller, VembuStoreGrd_4_2_0_SP_Clent_Only.exe To nstall StoreGrd clent on

More information

A Replication-Based and Fault Tolerant Allocation Algorithm for Cloud Computing

A Replication-Based and Fault Tolerant Allocation Algorithm for Cloud Computing A Replcaton-Based and Fault Tolerant Allocaton Algorthm for Cloud Computng Tork Altameem Dept of Computer Scence, RCC, Kng Saud Unversty, PO Box: 28095 11437 Ryadh-Saud Araba Abstract The very large nfrastructure

More information

8 Algorithm for Binary Searching in Trees

8 Algorithm for Binary Searching in Trees 8 Algorthm for Bnary Searchng n Trees In ths secton we present our algorthm for bnary searchng n trees. A crucal observaton employed by the algorthm s that ths problem can be effcently solved when the

More information

Using Multi-objective Metaheuristics to Solve the Software Project Scheduling Problem

Using Multi-objective Metaheuristics to Solve the Software Project Scheduling Problem Usng Mult-obectve Metaheurstcs to Solve the Software Proect Schedulng Problem Francsco Chcano Unversty of Málaga, Span [email protected] Francsco Luna Unversty of Málaga, Span [email protected] Enrque Alba

More information

A GENETIC ALGORITHM-BASED METHOD FOR CREATING IMPARTIAL WORK SCHEDULES FOR NURSES

A GENETIC ALGORITHM-BASED METHOD FOR CREATING IMPARTIAL WORK SCHEDULES FOR NURSES 82 Internatonal Journal of Electronc Busness Management, Vol. 0, No. 3, pp. 82-93 (202) A GENETIC ALGORITHM-BASED METHOD FOR CREATING IMPARTIAL WORK SCHEDULES FOR NURSES Feng-Cheng Yang * and We-Tng Wu

More information

Course outline. Financial Time Series Analysis. Overview. Data analysis. Predictive signal. Trading strategy

Course outline. Financial Time Series Analysis. Overview. Data analysis. Predictive signal. Trading strategy Fnancal Tme Seres Analyss Patrck McSharry [email protected] www.mcsharry.net Trnty Term 2014 Mathematcal Insttute Unversty of Oxford Course outlne 1. Data analyss, probablty, correlatons, vsualsaton

More information

Complex Service Provisioning in Collaborative Cloud Markets

Complex Service Provisioning in Collaborative Cloud Markets Melane Sebenhaar, Ulrch Lampe, Tm Lehrg, Sebastan Zöller, Stefan Schulte, Ralf Stenmetz: Complex Servce Provsonng n Collaboratve Cloud Markets. In: W. Abramowcz et al. (Eds.): Proceedngs of the 4th European

More information

Conversion between the vector and raster data structures using Fuzzy Geographical Entities

Conversion between the vector and raster data structures using Fuzzy Geographical Entities Converson between the vector and raster data structures usng Fuzzy Geographcal Enttes Cdála Fonte Department of Mathematcs Faculty of Scences and Technology Unversty of Combra, Apartado 38, 3 454 Combra,

More information

FORMAL ANALYSIS FOR REAL-TIME SCHEDULING

FORMAL ANALYSIS FOR REAL-TIME SCHEDULING FORMAL ANALYSIS FOR REAL-TIME SCHEDULING Bruno Dutertre and Vctora Stavrdou, SRI Internatonal, Menlo Park, CA Introducton In modern avoncs archtectures, applcaton software ncreasngly reles on servces provded

More information