Staff Scheduling at USPS Mail Processing & Distribution Centers A Case Study Using Integer Programming General Observation Companies and organizations that build, or make use of the latest technology in their business practices, rarely make use of the latest technology in planning and scheduling! Service Area in City DU DU DU DU DU DU DU P&DC DU DU DDC DU DU DU DU DU DU P&DC: Processing & Distribution Center DDC: District Distribution Center DU: Deliverey Unit Processing & Distribution Center Section Center Manual 044 to DU Section Center Manual 150 Primary Manual 030 Manual arrivals 210-030 Secondary Manual 040 DBCS Primary 891 Barcoded arrivals 210-891 Stamped arrivals 210-015 Carrier Route Manual 160 AFCS Canceling Stamps 015 to other P&DCs MLOCR Primary 881 Metered arrivals 210-891 DBCS Secondary 892 REC DBCSOSS Primary 271 DBCS Section 894 MLOCR Primary 885 OUTGOING Incoming arrivals Manual Incoming arrivasl Incompele barcode Incoming arrivals Sort to 3 digit 210-895 Incoming mixed 210-893 DBCS Primary 895 DBCS Secdonary Box, 897 DBCS Managed 893 Incoming arrivals Sort to 5 digit 210-918 DBCS 1st Pass 918 INCOMING/ TURNAROUND DBCS 2nd Pass 919 to DU USPS Scheduling Problem Mail arrival profiles & volume Flow patterns & facility configuration Union rules & local policies Equipment scheduler Staff scheduler Worker demand Weekly staff assignments Staff Planning and Scheduling Long-term planning: Fix size and composition of permanent workforce Mid-term scheduling: Determine days off and shift assignments Short-term scheduling: Overtime, individual tasks, requests, part-timers Real-time control: Emergencies, absenteeism, and other disruptions Long-Term Staff Scheduling Goal : Minimize labor costs Categories Full-Time Regulars, Part-Time Regulars Part-Time Flexibles Skills (15 Categories) Input Data Labor Requirements (1/2 hour increments) Labor Costs by Worker Type Model Components for Long-Term Staff Scheduling • Daily mail arrivals • Mail flow configuration • Machine parameters • Work rules • Labor ratio Equipment schedules Personnel scheduling (optimization) Shifts Days off Tours Determine optimal amount of equipment Equipment counts Operations analysis (simulation) Computational Flow Input data Modeling language Optimization engine Microsoft Excel Spreadsheets OPL Studio (ILOG) CPLEX Initial output Staff levels and shifts (FT, PT) Post-processing Weekly schedules Days-off scheduling (Visual Basic) FT, PT (Visual Basic) Breaks (OPL Studio) Shift Optimization Model Minimize (Full time costs + Part time costs) Subject to 1. Cover all time periods during the week 2. Ensure sufficient lunch breaks are assigned 3. Adhere to days off requirements 4. Meet other labor rules and policies Portion of IP Model Minimize z nF c f 1 nF ft f 1 w f c pv p vp f (1c) p 1 7 1 5 x d 1 fd , f = 1,…,nF w f x fd , f = 1,…,nF; d = 1,…,7 nF f 1 (1b) p 1 nP wf x (1a) p 1 x fd Ppt y pd dt Ddt , d = 1,…,7; t = 1,…,48 nF f 1 f nP G w nP (1d) (1e) q fd y pd dt 0 , d = 1,…,7 pT (1f) t k w f 0, v p 0, dt 0, x fd 0, y pd 0, t , k , p, d and all variables integer (1g) Size of Typical Staff Planning Model Number of Constraints = 1100 Number of Integer Variables = 1500 Number of Logic Variables = 336 Solution Times: seconds years Post-Processors Days-Off Scheduling Greedy algorithm for assigning days off Small integer program for 2-days off in a row Lunch Break Assignments Transportation problem Greedy algorithm Task Assignments Multi-commodity network flow problem Tabu search Modeling Issues Time to run, # of runs, how often Users and their skills GUI sophistication Training requirements Version control Help desk availability Who Is The Customer ? USPS Headquarters Contracting Officer Facility Managers Facility Industrial Engineers Information Technology Manager Everybody Wants Something More Headquarters – Implementation in 9 months system-wide Contracting Officer – Statement of Work is just a starting point (don’t expect any more money, though, for additional work) Plant Manager – More modeling features IT Manager – It will take years to provide the data you want Model “Creep” 10-hour shifts, 4-day a week schedules Some schedules 2 days off in row, others not necessary Worker assignments during the day At least “X” workers per shift No more than 1 shift every “Y” hours Implementation Prototype written in OPL Studio to demonstrate concepts Web Access – Java CPLEX is optimization engine 1600 variables (all integers) 1500 constraints Two Test Sites – Dallas and Philadelphia SOS Menu Workstation Sets Output Report Computational Results Number of constraints Number of variables Total cost per week Number of full-timers Number of part-timers % 2 days off in a row Baseline model 1092 888 $96,280 101 25 68.9 Ratio 3:1 1092 888 $95,040 96 32 65.6 Ratio 5:1 1092 888 $97,880 105 21 63.5 Consecutive off-days 2127 1440 $103,600 108 27 100 6 hr/6 day workers 1140 936 $95,952 100 25 72.4 Variable start time 684 837 $95,800 101 25 62.1 Part-time flexible 1092 1308 $94,976 100 -- 67.8 Parametric Analysis 106000 104000 102000 100000 98000 96000 94000 92000 90000 baseline ratio 3:1 ratio 5:1 2-days in 6-hr a row workers variable part-time start time flexible Benefits of Flexibility $440,000 $430,000 Total Cost $420,000 $410,000 $400,000 $390,000 $380,000 $370,000 0 5 10 15 20 25 30 35 40 Percent Part-time to Full-time 45 50 Observations and Lessons The Customer is Not Always Right Sometimes a Good Product will Sell Itself but it Pays to Have a Champion Don’t Expect the Customer to Understand his Business from Your Point of View Data are Always a Problem Observations and Lessons (cont.) Nobody Reads Manuals so Make Sure the Interfaces are Simple and Clear Do not Try to Explain Optimization to Anyone Who Does not Have an Advanced Degree However, Don’t Underestimate the Intuition of the Customer Skill Categories