1 / 47 A Priori Route Evaluation for the Lateral Transhipment Problem (ARELTP) with Piecewise Linear Profits Martin Romauch 1 Richard Hartl 1 Thibaut Vidal 2 1 University of Vienna 2 PUC-Rio, Rio de Janeiro, Brazil
Title of the talk: A Priori Route Evaluation for the Lateral Transhipment Problem (ARELTP) with Piecewise Linear Profits and a Lotsizing Application with Requalification Costs. the presentation covers: problem definition lot sizing application solution approaches (DP, B&B) computational experiments and results 2 / 47
ARELTP with PLWP - origin of the problem 3 / 47 origin of the problem: Single Route Lateral Transhipment Problem (SRLTP) SRLTP: redistribution of inventories using one vehicle. extension to piecewise linear profits (PWLP). ARELTP: evaluation of a-priori routes for this problem
ARELTP with PLWP - origin of the problem 3 / 47 origin of the problem: Single Route Lateral Transhipment Problem (SRLTP) SRLTP: redistribution of inventories using one vehicle. extension to piecewise linear profits (PWLP). ARELTP: evaluation of a-priori routes for this problem
ARELTP with PLWP - origin of the problem 3 / 47 origin of the problem: Single Route Lateral Transhipment Problem (SRLTP) SRLTP: redistribution of inventories using one vehicle. extension to piecewise linear profits (PWLP). ARELTP: evaluation of a-priori routes for this problem
ARELTP with PLWP - origin of the problem 3 / 47 origin of the problem: Single Route Lateral Transhipment Problem (SRLTP) SRLTP: redistribution of inventories using one vehicle. extension to piecewise linear profits (PWLP). ARELTP: evaluation of a-priori routes for this problem
lateral transhipment for a single route - SRLTP 4 / 47 initial inventory levels I i at the local warehouses. 2 1 3 5 4
lateral transhipment for a single route - SRLTP 5 / 47 the PWLP function F i for different inventory levels. profit inventory level
lateral transhipment for a single route - SRLTP 6 / 47 changes of the inventory level y i and the PWL profit function F i. 2 1 3 5 4
lateral transhipment for a single route - SRLTP 7 / 47 What is a good redistribution? 2 1 depot 0 3 5 4
lateral transhipment for a single route - SRLTP 8 / 47 not considered: load capacity, tour length constraint, travel costs. 2 1 depot 0 3 5 4
lateral transhipment for a single route - SRLTP 9 / 47 considering the load capacity constraint 2 1 5 4 3 2 1 5 4 3
lateral transhipment for a single route - SRLTP considering the load capacity constraint 2 1 depot 0 3 5 4 10 / 47
lateral transhipment for a single route - SRLTP considering the distance constraint 2 1 depot 0 3 5 4 11 / 47
ARELTP: SRLTP for an a-priori route feasible solution for the a-priori route 1 2 3 4 5 6 7 a route that starts in 1 and returns to 7 indices of the visited customers are increasing 3 2 depot 1=7 4 6 5 12 / 47
ARELTP: SRLTP for an a-priori route feasible route: 1 2 3 4 7 3 2 depot 1=7 4 6 5 13 / 47
A-priori route and a-priori route evaluation 14 / 47 motivation to use a-priori routes robustness (simple to implement in practice) consistency (improve the service quality) performance issues may also be a motivation to use a-priori routes. This presentation is about evaluating a single a-priori route for a single scenario (parameter setting) of the SRLTP with PLP.
ARELTP: formulation decision variables arc selection: x ij inventory change: y i (remove y i ) Remark: load when leaving i is j i y j parameters depots for the truck: 1, n local warehouses: 2,... n 1: revenue change: f i f i (y i ) = F i (I i y i ) F i (I i ) (a i y i b i if i is visited) costs: c ij time consumption: t ij and upper bound T max load limit: Q max 15 / 47
ARELTP: MIP formulation min c ij x ij f i (y i ) (1) s.t. 1 i<j n 1 i n x ji = x ij 1 < i < n (2) j<i j>i x 1j = 1 (3) j>1 x jn = 1 j<n a i x ij y i b i x ij 1 i n (5) j>i j>i 0 y j Q max j i 1 i n (6) x ij {0, 1} 1 i < j n (7) y i R 1 i n (8) t ij x ij T max (9) 1 i<j n 16 / 47 (4)
ARELTP: MIP formulation min c ij x ij f i (y i ) (1) s.t. 1 i<j n 1 i n x ji = x ij 1 < i < n (2) j<i j>i x 1j = 1 (3) j>1 x jn = 1 j<n a i x ij y i b i x ij 1 i n (5) j>i j>i 0 y j Q max j i 1 i n (6) x ij {0, 1} 1 i < j n (7) y i R 1 i n (8) t ij x ij T max (9) 1 i<j n 16 / 47 (4)
ARELTP: complexity 17 / 47 A polynomially solvable variant of the ARELTP is presented in [Hartl and Romauch(2013)]; simplifications: c ij is not considered f i is linear T max is not considered ARELTP is NP hard if one of the following is true if: c ij is considered ( linear f i and T max = ) f i is piecewise linear (c ij = 0 and T max = ) T max is considered ( linear f i and c ij = 0 )
lot sizing application 18 / 47 lot sizing and tool qualifications frequent use of a tool may lower the setup costs (renewals for tool qualifications). pharmaceutical, food and semiconductor industry. violates the triangle inequality (frequent use of a tool may stretch the duration of a qualification)
lot sizing application - example 19 / 47 find the optimal production quantities 1 1 1 1 1 1 2 3 4 5 6 7
lot sizing application - example 20 / 47 three solutions 1 1 1 1 1 1 2 3 4 5 6 1 1 1 1 1 7 1 1 1 1 1 1 4 3 2 1 2 3 4 5 5 6 7 1 1 1 1 1 1 2 1 1 2 3 4 5 3 2 6 7
lot sizing application - example 21 / 47 three solutions 1 1 1 1 1 1 1 2 3 4 5 1 1 1 1 1 7 1 1 1 1 1 1 4 3 2 1 1 2 3 4 5 5 7 1 1 1 1 1 1 2 1 1 1 2 3 4 3 2 5 7
lot sizing application - parameters 22 / 47 Input data periods: i {1,... n} d i : demand f i : production cost for a given quantity [a i, b i ] interval for feasible production quantities - a i may be positive. h i inventory holding cost per unit (storage between end of period i to start of period i + 1) c ij setup cost t ij setup related resource consumption Q max is the maximum inventory level T max resource consumption limit
lotsizing application - decision variables Decision variables x ij = 1 if i and j are periods with production and there is no production in between. y i is the production quantity auxiliary varible: q i = j i (y j d j ) is the inventory level after period i 23 / 47
lotsizing application - MIP 24 / 47 min c ij x ij + f i (y i ) + h i q i 1 i<j n 1 i n 1 i n s.t. q i = (y j d j ) 1 i n j i x ji = x ij 1 < i < n j<i j>i x 1j = 1 and x jn = 1 j<n j>1 1 i<j n t ij x ij T max a i x ij y i b i j>i j>i x ij 1 i n 0 q i Q max 1 i n x ij {0, 1} 1 i < j n y i, q i 0 1 i n
DP - case without duration constraint 25 / 47 V i (q) is the minimum cost for inventory level q considering all customers j = 1, 2,..., i and it is PWL. recurrence formula superposition V 0 : {0} {0}, V 0 (0) = 0 (10) envelope { }} { V i = min j<i V j + c j,i }{{} f i ) (11) shifted value function } {{ } superposition (V f )(q) = min y D(f ) {V(q y) f (y)} (12) q y D(V)
superposition - example 26 / 47
DP (case without duration constraint) - complexity 27 / 47 recurrence formula - complexity V 0 : {0} {0}, V 0 (0) = 0 (13) V i = min j<i (V j + c j,i ) f i (14) The complexity for calculating stage i is O(α(M i ) log(i)m i ), where M i is the number of labels of all predecessor value functions.
Dynamic Programming - general case 28 / 47 considering the duration constraint 1 i<j n t ijx ij T max U i,t (q) is the minimum cost for inventory level q considering all customers j = 1, 2,..., i and a given duration budget t. recurrence formula U 0,0 = 0 (15) U i,t = min (U j<i,t j,t +t ji t + c ji) f i (16) superposition (U f )(q) = min y D(f ) {U(q y) f (y)} (17) q y D(U)
DP - general case - representation of the value function 29 / 47
DP - general case - linked lists 30 / 47
DP example - complexity I 31 / 47 (a) second stage: 5 segments (b) third stage: 6 segments
DP example - complexity II 32 / 47 (c) forth stage: 26 segments (d) fifth stage: 40 segments
Lagrangian Relaxation 33 / 47 L(λ) = min x,y: (2-7) 1 i<j n c ij x ij {}}{ f i (y i ) + λ ( t ij x ij T max ) 1 i n 1 i<j n ɛ(x) L(λ ) = max λ 0 L(λ) remarks L(λ ) is lower bound for the ARELTP calculating L(λ) is equivalent to ARELTP without duration constraint. L(λ) is concave. L(λ ) is associated to a feasible solution of the ARELTP
LR - example 34 / 47
LR - example 35 / 47
LR - example 36 / 47
LR - example 37 / 47
branch & bound solution branch A branch is defined by mandatory customers and forbidden customers. branching a new branch is generated by additionally excluding and including a customer. lower bounds LR provides lower bounds for the branches of the branch & bound tree. upper bounds Heuristic that locally optimizes the feasible dual optimal solution. 38 / 47
branch & bound - details 39 / 47 select active branch select the branch with the largest lower bound branching customer is randomly selected from a set where the heuristic solution is locally optimal.
design of experiments instances ARELTP Tisiligirides (size: 32 locations + PWLP 4 steps) Chao-Golden (size: 64/66 locations + PWLP 4 steps) a-priori routes: 20 per instance. lot sizing: new benchmark instances http://homepage.univie.ac.at/martin.romauch/areltp/ factors number customers / periods (n) duration limit / maximum resource consumtion (T max ) load capacity / maximum inventory level (Q max ) 40 / 47
Results: Tsiligirides and Chao-Golden (T max = ) small Qmax medium Qmax large Qmax DP GUROBI CPU time (sec) 1/8 1/16 1/32 1/64 1/128 1/256 1/512 1/1024 1/2048 1/4096 1/8192 1/16384 1/8 1/16 1/32 1/64 1/128 1/256 1/512 1/1024 1/2048 1/4096 1/8192 1/16384 Chao Golden Tsiligirides 10 20 30 40 50 60 70 10 20 30 40 50 60 70 number of customers 41 / 47
Results: lot sizing (T max = ) 42 / 47 small Qmax medium Qmax large Qmax 4 DP GUROBI 2 1 1/2 1/4 CPU time (sec) 1/8 1/16 1/32 1/64 1/128 1/256 1/512 10 20 30 40 50 10 20 30 40 50 number of periods
Results: Tsiligirides BBDP DP GUROBI 1/1000 1/512 1/256 1/128 1/64 1/32 1/16 1/8 1/4 1/2 1 2 4 8 16 10 20 30 40 10 20 30 40 10 20 30 40 number of periods CPU time (sec) small Qmax medium Qmax large Qmax 43 / 47
Results: Chao-Golden BBDP DP GUROBI 1/1000 1/512 1/256 1/128 1/64 1/32 1/16 1/8 1/4 1/2 1 2 4 8 16 32 64 10 20 30 40 50 60 70 10 20 30 40 50 60 70 10 20 30 40 50 60 70 number of customers CPU time (sec) small Qmax medium Qmax large Qmax 44 / 47
Results: lot sizing large Qmax medium Qmax small Qmax BBDP DP GUROBI CPU time (sec) 512 256 128 64 32 16 8 4 2 1 1/2 1/4 1/8 1/16 1/32 1/64 1/128 1/256 1/512 1/1000 10 20 30 40 50 10 20 30 40 50 10 20 30 40 50 number of periods 45 / 47
conclusion and next steps 46 / 47 Conclusion With respect to the computational experiments, the presented B&B approach has in average the best performance. Very large load capacities Q max are beneficial for Gurobi Very large duration limits T max are beneficial for the proposed B&B Very good results for the lot sizing instances next steps integration of the ARELTP solver into a framework to solve lateral transhipment for PWLP. application: stochastic demands extension: more than one route/product, split deliveries...
Richard F Hartl and Martin Romauch. The influence of routing on lateral transhipment. In Computer Aided Systems Theory-EUROCAST 2013, pages 267 275. Springer, 2013. 47 / 47