Presentation is loading. Please wait.

Presentation is loading. Please wait.

Group Construction for Cabin Crew Comparing Constraint Programming with Branch&Price Presentation at SweConsNet 2005 Jesper Hansen Carmen Systems AB

Similar presentations


Presentation on theme: "Group Construction for Cabin Crew Comparing Constraint Programming with Branch&Price Presentation at SweConsNet 2005 Jesper Hansen Carmen Systems AB"— Presentation transcript:

1 Group Construction for Cabin Crew Comparing Constraint Programming with Branch&Price Presentation at SweConsNet 2005 Jesper Hansen Carmen Systems AB Jesper.hansen@carmensystems.com In cooperation with Tomas Lidén

2 Outline Introduction and Problem Formulation Constraint Programming (CP) version Column Generation (CG) version Computational results Conclusions

3 Roster Group repr. Copy roster to all in group Resolve “drop-out” pairings Airline Crew Scheduling Minimize exceptions after copy! Pairing Rostering Anonymous tour-of-duties starting and ending at home-base Individual schedules Group Construction Set of Groups -Buddy Bids -Incompatibles -Experience level -Days off -Preassignments -Historic values -Work reduction Due to: Group schedules Introduction, Problem Formulation

4 CrewGroups Problem: Construct “homogenous” groups Jan-Nov: Minimum number of groups at min. cost Dec: Maximum number of groups at min. cost Application: Developed during 2001 for Iberia CP version in production since 2002 CG version delivered 2004 Dimensions: 300-1200 crew in each problem, Giving 30-200 groups (3-13 persons per group) Introduction, Problem Formulation

5 Problem Structure when Constructing a Group Group Crew Input dataOne per buddy bid, single purser and cabin attendant - aggregated data, checks on bids One Group per purser -cost function and most constraints defined here SubGroup Set variables Days handled with set variables. All other aspects handled with integer variables. Cost and constraints applied on these variables. Introduction, Problem Formulation

6 Factors to handle ObjectiveConstraintDecember considerations Buddy bids (closed) Always respect Always use Split due to day32 IncompatiblesNever combine InexperiencedMax nr per group Days offMatchMax nr of granted No illegal patterns PreassignmentsMatchDay32 very important – rejoinings are favored Historic valuesMatch pos/neg Work reductionMatchLess or same as purser Days [1,32] Match towards purser if having days, otherwise subgroup with max nr of days Sg 1 Sg 2 Sg 3 5 6 7 8 5 6 17 18 Group5 6 7 817 18 Non-additive Days [1,32] Bid Very costly if X<>Y. Rejoinings (X=Y) not so costly Sg 1 28 29 30 3132 X Sg 2Y Sg 3 28 29 30 3132 - Group 28 29 30 3132 Sequence must be surrounded by 3 untouched days. {8 10 11 12} {6 10 11 12} Introduction, Problem Formulation

7 Handling of Work Reduction SizeWork Reduction Subgroup 1(purser) Subgroup 2 Subgroup 3 231231 50% 25% 0 Group650% Never higher than the purser (constraint) Inhomogenous Will give cost Introduction, Problem Formulation

8 CP Model with three-step solving Constraint Programming Version One customized constraint – NoIllegalPattern() Two global constraints: Use all buddy bids, SubsetEq() No overlap, AllNullIntersect() Initial solution + global refinement Global search for cheaper solution Local search for cheaper solution

9 Search techniques Greedy Depth First Standard heuristic 1.Select variable (group) 2.Select and assign value (sg) Selection order a tradeoff between quality and feasibility Strength: +Fast to find first solution. Weaknesses: –Many factors to consider –Each new factor affects the search algorithm –Special version for December. Hard to handle rejoinings. Complete enumeration: –Pick groups pair wise (in cost order) –Evaluate all possible solutions with used set of sg’s –Continue with best Repeated until no improvement Strengths: +No problem consideration +Efficient in decreasing cost Weaknesses: –Time-consuming in some cases –Don’t consider unused subgroups –Can’t swap between three or more groups –Can’t get out of local minima Global search Local search Constraint Programming Version

10 CG Model with three-step solving Construct one IP feasible solution. Generate initial set of columns. Generate col’s with negative reduced cost.Constraint branching (pairs of subgroups). Column Generation Version Buddy bids Other subgroups A column corresponds to one legal group alternative Solving LP relaxation – called the restricted master problem. Branch & Price to get integer solutions. Set-up initial problem matrix Pricing Branch & Price

11 Pricing Very large tree Depth First Search with pruning for: –Cost: When LB on reduced cost shows we can’t improve LP value (possible since duals are ordered) –Pattern: When needed additions for NoIllegalPattern() not among remaining subgroups Search modifications: –Return to top for better coverage –Limited nr of backtracks (BBS) –Time limits etc. Generation tree Sg = {..,..,..,..,..,..,..,.. } Duals= { +,.., +, 0,.., 0, -,.. } Column Generation Version

12 Branch & Price Constraint branching (Ryan, Foster) on pairs of subgroups. Perform pricing in both branches. Price according to all branching decisions Fathom without complete enumeration of generation tree. Branching tree 1-branch Ban col’s with only one of the two sg’s 0-branch Ban col’s with both sg’s Column Generation Version

13 x A Constraint Branching Compute fractional sum f for pairs of subgroups (partitioning constraints) Choose a pair Apply branch 1-branch = ban columns with one of the two present 0-branch = ban columns with both present Strategy for Choosing pair Applying 1/0-branch Quickly reduces the amount of columns, but more is generated. Sg-pairf 1+20.7 1+30.6 1+40.6 2+30.5 …… Column Generation Version 1111.. =1 11111 =1 111111 =1 11111 =1 1111 =1 1.3.4.2.1.2..

14 Solution progress CP –starts bad and decreases evenly CG –starts good and decreases slowly Computational results

15 Normal Instances (Jan-Nov) CG produces better quality –Less number of groups Small fleets solved faster, but large ones slower Computational results Num groups Total cost Σc j Execution time (min) CPCGCG-CP MD87 (size 3) 104 985.278 3.7 104 870.356 0.07/0.07/0.07* -11.7 % -3.6/-3.6/-3.6 min A320 (size 4) 150 1.966.488 14.2 150 1.643.148 0.15/0.15/0.17 -16.4% -14.1/-14.1/-14.0 min B757 (size 5) 38 437.446 1.5 35 425.913 0.05/4.27/4.27 -3 groups -2.6% -1.5/+2.7/+2.7 min A340 (size 10) 82 521.000 9.1 73 502.000 13.6/61.1/61.1 -9 groups -3.6% +4.6/+52.1/+52.1 min B747 (size 13) 30 476.335 2.2 26 445.554 0.8/30.1/30.1 -4 groups -6.5% -1.4/+27.9/+27.9 min T max = 60 min * First/Best/Total

16 December Instances Num groups Total cost Σc j Execution time (min) CPCGCG-CP MD87 (size 3) 120 148.966 3.9 120 113.985 0.18/0.18/30.1 -23.5% -3.7/-3.7/+26.2 min A320 (size 4) 198 3.309.710 32.0 198 3.042.610 2.4/55.0/55.0 -8.1% -29.6/+23.0/+23.0 min B757 (size 5) 68 249.204 2.4 68 173.245 1.1/15.2/15.3 -30.5% -1.3/+12.8/+12.9 min A340 (size 10) 110 560.935 67.6 110 470.909 51.0/70.5/181.1 -16.0% -16.5/+2.9/+113.5 min B747 (size 13) 31 285.880 1.3 31 241.046 1.3/129.9/129.9 -15.7% -0.0/+129/+129 min B747 size(13) Crew shortage 39 909.892 4.6 39 1.076.933 76.9/181.5/181.5 +18.4 +72.3/+177/+177 min CG produces better quality –Except when crew shortage –Always good day32 matching Small fleets reasonably fast, large ones slow Large fleets tuned for generating less and branching more T max = 180 min Computational results

17 Problem Properties Optimization problem –Many constraints but few are global –Weak domain reduction –Hence not a feasibility problem Challenges –Set Partitioning with no natural ordering. Instead multiple factors with no correlation –Non-additive cost factors –Weak domain reduction from constraints Conclusions

18 CP versus CG +Ease of modeling +Quick development Several unexplored techniques: Mirrored formulation Tabu search or other meta- heuristic –Search heuristic highly adopted to problem +Better quality +Better or similar performance –Advanced techniques and careful tuning needed Conclusions

19 Possible future directions Reformulation of cost factors Hybrid formulations CP based pricing Conclusions

20 END Thank you for your attention! Questions?


Download ppt "Group Construction for Cabin Crew Comparing Constraint Programming with Branch&Price Presentation at SweConsNet 2005 Jesper Hansen Carmen Systems AB"

Similar presentations


Ads by Google