A Column Generation Algorithm to Solve a Synchronized Log-Truck Scheduling Problem Odysseus 2012 Greg Rix 12 Louis-Martin Rousseau 12 Gilles Pesant 13 1 Interuniversity Research Centre on Enterprise Networks, Logistics and Transportation (CIRRELT) 2 Department of Mathematics and Industrial Engineering, École Polytechnique de Montréal 3 Department of Computer Engineering, École Polytechnique de Montréal May 22, 2012 Greg Rix, Louis-Martin Rousseau, Gilles Pesant 1/ 31
Outline 1 Introduction 2 Mathematical Formulation 3 Methodology Column Generation Computing the Reduced Cost Dynamically Generating Routes 4 Results 5 Conclusions Greg Rix, Louis-Martin Rousseau, Gilles Pesant 2/ 31
Outline 1 Introduction 2 Mathematical Formulation 3 Methodology Column Generation Computing the Reduced Cost Dynamically Generating Routes 4 Results 5 Conclusions Greg Rix, Louis-Martin Rousseau, Gilles Pesant 3/ 31
Introduction Motivation Tactical tool for planning transportation in the Canadian forestry industry which takes into account the annual harvesting schedule, and produces an annual transportation plan divided into 26 2-week periods. Greg Rix, Louis-Martin Rousseau, Gilles Pesant 4/ 31
Introduction Motivation Tactical tool for planning transportation in the Canadian forestry industry which takes into account the annual harvesting schedule, and produces an annual transportation plan divided into 26 2-week periods. Multiple Objectives Minimize fleet size (heterogenous). but balance fleet over all periods Minimize total cost: Storage costs (at mills and forests). Transportation costs: Maximizing backhaul opportunities. Minimizing waiting times. Greg Rix, Louis-Martin Rousseau, Gilles Pesant 4/ 31
Introduction Backhaul Opportunities When harvest plans are created, transportation costs are estimated (and minimized) based on delivering wood via out-and-back routes. However, the use of backhaul has been seen to decrease transportation costs by up to 30%. Andersson et al. 2008. Perhaps it is possible to plan wood flows in order to generate backhaul opportunities... Greg Rix, Louis-Martin Rousseau, Gilles Pesant 5/ 31
Backhaul Greg Rix, Louis-Martin Rousseau, Gilles Pesant 6/ 31
Backhaul Greg Rix, Louis-Martin Rousseau, Gilles Pesant 6/ 31
Backhaul Greg Rix, Louis-Martin Rousseau, Gilles Pesant 6/ 31
Backhaul Greg Rix, Louis-Martin Rousseau, Gilles Pesant 6/ 31
Introduction Tactical Level When to transport the wood which has been harvested? From which forest should each mill be supplied? How much wood should be stored where, when? Greg Rix, Louis-Martin Rousseau, Gilles Pesant 7/ 31
Introduction Tactical Level When to transport the wood which has been harvested? From which forest should each mill be supplied? How much wood should be stored where, when? Operational Level What are the exact routes which should be operated? Which truck should be used (self-loading or not)? At which time should trucks be loaded or unloaded? Greg Rix, Louis-Martin Rousseau, Gilles Pesant 7/ 31
Introduction Related Routing Problems (operational level) Pickup and Delivery with K commodities (assortments), full truck loads and split deliveries and sync. constraints, define on a small network, but there high volumes means many trips. Greg Rix, Louis-Martin Rousseau, Gilles Pesant 8/ 31
Introduction Related Routing Problems (operational level) Inputs Pickup and Delivery with K commodities (assortments), full truck loads and split deliveries and sync. constraints, define on a small network, but there high volumes means many trips. Harvest plan and mill demands: Multiple forest sites (supply points). Multiple mills (demand points). Multiple log assortments: species, quality, length, diameter (commodities). Truck types (capacity, self-loading or not): Greg Rix, Louis-Martin Rousseau, Gilles Pesant 8/ 31
Relevant Literature The pickup and delivery problem, which is NP-hard (Savelsbergh and Sol 1995), reduces to our problem. Column generation has previously been applied to the log-truck scheduling problem: Palmgren et al. 2004. Weintraub et al. 2009. The synchronized log-truck scheduling problem has been modeled with integer programming and constraint based local search: El Hachemi 2009. Greg Rix, Louis-Martin Rousseau, Gilles Pesant 9/ 31
Outline 1 Introduction 2 Mathematical Formulation 3 Methodology Column Generation Computing the Reduced Cost Dynamically Generating Routes 4 Results 5 Conclusions Greg Rix, Louis-Martin Rousseau, Gilles Pesant 10/ 31
Variables Variables Wood allocation from forest to mill for each period: Sometimes geographically fixed. Inter-period inventory at each node (forests and mills). Construction of log-truck routes to make deliveries: Heterogeneous fleet. Assignment of log-loaders to forests each period (mills have permanent loaders). Greg Rix, Louis-Martin Rousseau, Gilles Pesant 11/ 31
Constraints Global Constraints Satisfy mill demands. Not exceed forest supply. Wood delivered on time after harvest. Modeled either with a constraints or storage costs at forests sites. Balanced number of routes each day. Limited number of loaders in forest each period. Greg Rix, Louis-Martin Rousseau, Gilles Pesant 12/ 31
Constraints Routing Constraints Trucks must begin and end their shift at the same mill: Mills act as depots. Respect mill operating hours. Each loader can only serve one truck at a time (otherwise waiting costs accrued). Greg Rix, Louis-Martin Rousseau, Gilles Pesant 13/ 31
Route Variables Route Variables Each variable y jpd is the number of times route j is traversed on day d of period p. A route starts at a mill and iterates between forests and mills, returning to the same mill. The number of these variables is exponential, and enumerating them all would be impractical. We dynamically generate improving routes through column generation. Greg Rix, Louis-Martin Rousseau, Gilles Pesant 14/ 31
Full Model X X X cjyjpd + X X X X cttmpdt p2p d2dp j2j m2m p2p d2dp t2t + X X X cflpzflp + X X X cmlpzmlp (1) f2f l2l p2p m2m l2l p2p subject to: Driving Cost Forest Storage Fixed Cost Mill Storage zml0 = iml, 8 m 2 M,l 2 L, (2) zfl0 = ifl, 8 f 2 F, l 2 L, (3) zmlp + X X xfmlpt f2f t2t dmlp = zml,p+1, 8 m 2 M,l 2 L, p 2 P, (4) X X zflp + hflp xfmlpt = zfl,p+1, 8 f 2 F, l 2 L, p 2 P, (5) m2m t2t min{wflp,p 1} X hfl,p w zflp, 8 f 2 F, p apple P + 1, (6) X X w=1 ktlafmlj yjpd xfmlpt, 8 f 2 F, m 2 M,l 2 L, p 2 P, t 2 T, j2jt d2dp (7) X yjpd = Tmpdt, 8 m 2 M,p 2 P, d 2 Dp,t2 T (8) j2jmt Tmpdt apple n T mpt, 8 m 2 M,p 2 P, d 2 Dp,t2 T (9) X X 1 X X X X Tmpdt X Tmpdt, (10) m2m t2t Dp m2m p2p d2dp t2t p2p 8 p 2 P, d 2 Dp, X X Tmpdt apple 1+ X X X X X Tmpdt, (11) m2m t2t Dp m2m p2p d2dp t2t p2p 8 p 2 P, d 2 Dp, X Lfp apple n L p, 8 p 2 P, (12) f2f X t2t vt X t2t X vt X j2jt X j2j X X d2dp m2m l2l X X X m2m j2jmt Ujmiyjpd apple n L mp, 8 m 2 M,p 2 P, d 2 Dp,i2 I, (13) Ljfiyjpd apple Lfp, 8 f 2 F, p 2 P, d 2 Dp,i2 I, (14) xfmlpt apple Lfp, 8 f 2 F, p 2 P, (15) i2i Ujmiyjpd apple X m2m X j2jmt X i2i 8 p 2 P, d apple Dp 1, Ujmiyjp,d+1, (16) Lfp 2 {0, 1}, 8 f 2 F, p 2 P. (17) yjpd,tmpdt 2 Z +, 8 m 2 M,j 2 Jm,p2 P, d 2 Dp,t2 T. (18) zmlp,zflp,xfmlp 2 R +, 8 f 2 F, m 2 M,l 2 L, p 2 P. (19) initial inventory Storage F & M Freshness Truck capacity and availability Route balancing F loaders used Loaders-Truck sync. Loader needed in F Day symmetry breaking Variable definition Exponentiel # of y Greg Rix, Louis-Martin Rousseau, Gilles Pesant 15/ 31
Outline 1 Introduction 2 Mathematical Formulation 3 Methodology Column Generation Computing the Reduced Cost Dynamically Generating Routes 4 Results 5 Conclusions Greg Rix, Louis-Martin Rousseau, Gilles Pesant 16/ 31
Methodology Column Generation The methodology used on this problem is column generation, a procedure for solving large linear programs. We discretized time in into 40 minutes slices (roughly (un)loading time). We first relax our problem to a linear program: Partial routes allowed. Greg Rix, Louis-Martin Rousseau, Gilles Pesant 17/ 31
Column Generation Greg Rix, Louis-Martin Rousseau, Gilles Pesant 18/ 31
Methodology Initial Route Pool We start with a subset of the variables: No backhaul. No attempt to minimize waiting times. Loader constraints relaxed with a penalty in the objective value. We then generate improving variables as needed via a subproblem. A variable can only improve the objective function if it has a negative reduced cost. Greg Rix, Louis-Martin Rousseau, Gilles Pesant 19/ 31
Column Generation Optimality Gap To solve the original MIP to optimality would require a branch and price algorithm: Barnhart et al. 1998 However solving the linear relaxation to optimality with column generation yields a lower bound on the problem. This gives us an optimality gap on any integer solutions found in the final MIP. Greg Rix, Louis-Martin Rousseau, Gilles Pesant 20/ 31
Computing the Reduced Costs Reduced Cost of a Route How do we determine the reduced cost of the route associated with variable y jpd? Equal to the cost of the route subtracted by a set of dual values associated with: Starting a shift at the depot mill on day d. Each assortment-forest-mill delivery on the route. Loading capacity at each forest for each time slide. Unloading at each mill capacity for each time slice. If a route has negative reduced cost, we add it to the LP. Greg Rix, Louis-Martin Rousseau, Gilles Pesant 21/ 31
Dynamically Generating Routes Column Generation Subproblem Determining negative reduced cost routes can be modeled as a set of Shortest Path Problem with Resource Constraints (SPPRC). Much easier than the Elementary SPPRC common in vehicle routing problems: Large volumes allow cycles. Solved using a dynamic programming (DP)-based labeling algorithm (Ahuja et al. 1993) on a space-time network representation of the problem. Greg Rix, Louis-Martin Rousseau, Gilles Pesant 22/ 31
Space-Time Network Representation Greg Rix, Louis-Martin Rousseau, Gilles Pesant 23/ 31
Space-Time Network Representation Assortments We don t have to represent the assortments explicitly, as we can pick the one with the smallest dual value at each node. Greg Rix, Louis-Martin Rousseau, Gilles Pesant 23/ 31
Column Generation Parameters Stabilization To generate interior dual values, we solve the linear programs using a barrier methodology. Column Pool Management Rather than all negative reduced cost routes generated at each iteration, only the best 500 are added to the LP. Columns are removed for the pool if they have not been used in 30 consecutive LP solutions. Greg Rix, Louis-Martin Rousseau, Gilles Pesant 24/ 31
Outline 1 Introduction 2 Mathematical Formulation 3 Methodology Column Generation Computing the Reduced Cost Dynamically Generating Routes 4 Results 5 Conclusions Greg Rix, Louis-Martin Rousseau, Gilles Pesant 25/ 31
Case Studies Data from industrial partner FPI 6 case studies provided by FPInnovations. Data from companies in Quebec, New Brunswick and B.C. Instance F M L V W1 6 5 3 29, 745 W2 6 5 3 16, 065 A1 43 7 5 722, 531 A2 8 1 1 372, 670 A3 8 1 2 462, 272 A4 3 1 3 743, 600 Greg Rix, Louis-Martin Rousseau, Gilles Pesant 26/ 31
Resources Hardware and Software LP and MIP Solver: Gurobi 4.6. Time limit: 40 minutes. Machine: intel core i7, 2.67 GHz processor with 4.0 GB of memory. Greg Rix, Louis-Martin Rousseau, Gilles Pesant 27/ 31
Results Comparison Methodology compared against two-phase decomposed IP approach (El Hachemi, 2009): Greg Rix, Louis-Martin Rousseau, Gilles Pesant 28/ 31
Results Comparison Methodology compared against two-phase decomposed IP approach (El Hachemi, 2009): Instance Gap Colgen Improvement W1 0.87% 1.05% W2 3.53% 2.42% A1 0.11% 0.55% A2 0.28% 8.25% A3 0.12% 3.43% A4 0.17% Greg Rix, Louis-Martin Rousseau, Gilles Pesant 28/ 31
Outline 1 Introduction 2 Mathematical Formulation 3 Methodology Column Generation Computing the Reduced Cost Dynamically Generating Routes 4 Results 5 Conclusions Greg Rix, Louis-Martin Rousseau, Gilles Pesant 29/ 31
Conclusions Remarks We can generate near-optimal solutions to this multi-period synchronized LTSP in reasonable time. Preliminary integration with FPI s FPSuite software. Ongoing negotiation for deployment in western Canada. Greg Rix, Louis-Martin Rousseau, Gilles Pesant 30/ 31
Conclusions Remarks We can generate near-optimal solutions to this multi-period synchronized LTSP in reasonable time. Preliminary integration with FPI s FPSuite software. Ongoing negotiation for deployment in western Canada. Future work Synchronizing tactical transportation decisions with harvest scheduling. Generalizing the routing constraints to allow for heterogeneous driver profiles in addition to truck fleet. (allow for planning of workforce). Greg Rix, Louis-Martin Rousseau, Gilles Pesant 30/ 31
Questions? Greg Rix, Louis-Martin Rousseau, Gilles Pesant 31/ 31