A Branch-and-Price Method for a Ship Routing and Scheduling Problem with Cargo Coupling and Synchronization Constraints Magnus Stålhane Henrik Andersson Norwegian University of Science and Technology
Outline • Background and motivation • Path-flow models • Solution approach • Computational study • Conclusions
Tramp shipping • Contracts of affreightment – Pickup and delivery ports – Specified quantity – Time windows • Spot market for optional cargoes • Heterogeneous fleet – Capacity – Initial position – Cost structure – Speed – Cargo compatibility • Maximize profit Background and motivation
Project shipping • A special segment of tramp shipping • Unique cargoes transported on a one-time basis – Parts of a process facility, yachts, train sets • Special stowage challenges – Shape, stability, sea fastening, weight and lifting – Engineering unit in order to calculate the possibility of transporting the cargoes • Cargo coupling and synchronization Background and motivation
Cargo coupling and synchronization • Cargo coupling – The shipping company cannot transport a cargo unless other parts of the same order are transported as well, even though these parts may have different origins • Synchronization – The different parts of an order require synchronized delivery within some time window – Expensive equipment, storage problems Background and motivation
Project shipping - example Spot Spot Time buffer Spot Background and motivation
Project shipping Some pictures
Optimization Days / May 10 - 12 2010
Project shipping - summary • Heterogeneous fleet • Cargoes – Mandatory and optional – Time windows – Coupled – Synchronized deliveries Background and motivation
Path flow models
Paths • A path is a sequence of pickups and deliveries • Capacity never violated • Pickup visited before the corresponding delivery • At least one feasible schedule exists (with respect to time windows) Path flow models
Path flow model 1 ∑ ∑ max z = P y vr vr ∈ ∈ v V r R v ∑ ∑ ∈ A y = 1 i N Mandatory cargoes ivr vr C ∈ ∈ v V r R v ∑ ∑ ≤ ∈ A y 1 i N Optional cargoes ivr vr O ∈ ∈ v V r R v ∑ ∈ y = 1 v V Convexity vr ∈ r R v ∑ ∑ ∈ ∈ A y = w i N , N K Coupled cargoes ivr vr N K K K ∈ ∈ v V r R v ( ) ∑ ≥ ∈ ∈ t t + T + T + T y T i , j N , v V , Time i - jv iv ijv iv vr ∈ r R ijv ≤ ≤ ∈ ∈ T A y t T A y i N , v V , Time windows ivr ivr ivr vr iv ivr vr ( ) ∑ S S ≤ ≤ ∈ ∈ T t t T N S , i , j N Synchroniz ation - N iv jv N S S S S ∈ v V { } ∈ ∈ ∈ y 0 , 1 v V , r R vr v { } ∈ ∈ w 0 , 1 N K N K K Path flow models
Path flow model 1 ∑ ∑ max z = P y vr vr ∈ ∈ v V r R v ∑ ∑ ∈ A y = 1 i N Mandatory cargoes ivr vr C ∈ ∈ v V r R v ∑ ∑ ≤ ∈ A y 1 i N Optional cargoes ivr vr O ∈ ∈ v V r R v ∑ ∈ y = 1 v V Convexity vr ∈ r R v ∑ ∑ ∈ ∈ A y = w i N , N K Coupled cargoes ivr vr N K K K ∈ ∈ v V r R v ( ) ∑ ≥ ∈ ∈ t t + T + T + T y T i , j N , v V , Time i - jv iv ijv iv vr ∈ r R ijv ≤ ≤ ∈ ∈ T A y t T A y i N , v V , Time windows ivr ivr ivr vr iv ivr vr ( ) ∑ S S ≤ ≤ ∈ ∈ T t t T N S , i , j N Synchroniz ation - N iv jv N S S S S ∈ v V { } ∈ ∈ ∈ y 0 , 1 v V , r R vr v { } ∈ ∈ w 0 , 1 N K N K K Path flow models
Path flow model 1 ∑ ∑ max z = P y vr vr ∈ ∈ v V r R v ∑ ∑ ∈ A y = 1 i N Mandatory cargoes ivr vr C ∈ ∈ v V r R v ∑ ∑ ≤ ∈ A y 1 i N Optional cargoes ivr vr O ∈ ∈ v V r R v ∑ ∈ y = 1 v V Convexity vr ∈ r R v ∑ ∑ ∈ ∈ A y = w i N , N K Coupled cargoes ivr vr N K K K ∈ ∈ v V r R v ( ) ∑ ≥ ∈ ∈ t t + T + T + T y T i , j N , v V , Time i - jv iv ijv iv vr ∈ r R ijv ≤ ≤ ∈ ∈ T A y t T A y i N , v V , Time windows ivr ivr ivr vr iv ivr vr ( ) ∑ S S ≤ ≤ ∈ ∈ T t t T N S , i , j N Synchroniz ation - N iv jv N S S S S ∈ v V { } ∈ ∈ ∈ y 0 , 1 v V , r R vr v { } ∈ ∈ w 0 , 1 N K N K K Path flow models
Schedule • A schedule for a given path gives the exact time for start of service at each node on the path Path flow models
Path flow model 2 ∑ ∑ max z = P y vr vrw ∈ ∈ v V r R v ∑ ∑∑ ∈ A y = 1 i N Mandatory cargoes ivr vrw C ∈ ∈ ∈ v V r R w W v r ∑ ∑∑ ≤ ∈ A y 1 i N Optional cargoes ivr vrw O ∈ ∈ ∈ v V r R w W v r ∑∑ ∈ y = 1 v V Convexity vrw ∈ ∈ r R w W v r ∑ ∑ ∈ ∈ A y = w i N , N K Coupled cargoes ivr vrw N K K K ∈ ∈ v V r R v ( ) ∑ ∑∑ S S ≤ ≤ ∈ ∈ T T T y T N S , i , j N Synchroniz ation - N ivrw jvrw vrw N S S S S ∈ ∈ ∈ v V r R w W v r ∑ { } ∈ ∈ ∈ y 0 , 1 v V , r R vrw v ∈ w W r ≥ ∈ ∈ ∈ y 0 v V , r R , w W vrw v r { } ∈ ∈ w 0 , 1 N K N K K Path flow models
Path flow model 2 ∑ ∑ max z = P y vr vrw ∈ ∈ v V r R v ∑ ∑∑ ∈ A y = 1 i N Mandatory cargoes ivr vrw C ∈ ∈ ∈ v V r R w W v r ∑ ∑∑ ≤ ∈ A y 1 i N Optional cargoes ivr vrw O ∈ ∈ ∈ v V r R w W v r ∑∑ ∈ y = 1 v V Convexity vrw ∈ ∈ r R w W v r ∑ ∑ ∈ ∈ A y = w i N , N K Coupled cargoes ivr vrw N K K K ∈ ∈ v V r R v ( ) ∑ ∑∑ S S ≤ ≤ ∈ ∈ T T T y T N S , i , j N Synchroniz ation - N ivrw jvrw vrw N S S S S ∈ ∈ ∈ v V r R w W v r ∑ { } ∈ ∈ ∈ y 0 , 1 v V , r R vrw v ∈ w W r ≥ ∈ ∈ ∈ y 0 v V , r R , w W vrw v r { } ∈ ∈ w 0 , 1 N K N K K Path flow models
Path flow model 2 ∑ ∑ max z = P y vr vrw ∈ ∈ v V r R v ∑ ∑∑ ∈ A y = 1 i N Mandatory cargoes ivr vrw C ∈ ∈ ∈ v V r R w W v r ∑ ∑∑ ≤ ∈ A y 1 i N Optional cargoes ivr vrw O ∈ ∈ ∈ v V r R w W v r ∑∑ ∈ y = 1 v V Convexity vrw ∈ ∈ r R w W v r ∑ ∑ ∈ ∈ A y = w i N , N K Coupled cargoes ivr vrw N K K K ∈ ∈ v V r R v ( ) ∑ ∑∑ S S ≤ ≤ ∈ ∈ T T T y T N S , i , j N Synchroniz ation - N ivrw jvrw vrw N S S S S ∈ ∈ ∈ v V r R w W v r ∑ { } ∈ ∈ ∈ y 0 , 1 v V , r R vrw v ∈ w W r ≥ ∈ ∈ ∈ y 0 v V , r R , w W vrw v r { } ∈ ∈ w 0 , 1 N K N K K Path flow models
Model comparison Path flow formulation 1 Path flow formulation 2 • One column per path • Many columns per path • Weaker LP-bound • Stronger LP-Bound • Duals related to nodes and • Duals related to nodes and arcs in the subproblems visiting times in the subproblems Path flow models
Solution Approach
Solution Approach • A priori column generation (PF1) – Andersson et. al, 2011 Ship routing and scheduling with cargo coupling and synchronization constraints. Computers & Industrial Engineering 61(4) p. 1107 – 1116. • Branch-and-price (PF1 and PF2) – Dynamic generation of columns • Elementary shortest path problems with resource constraints • Solved by Dynamic Programming Solution Approach
Subproblem • Defined on a graph 𝐻 𝑤 = (𝑂 𝑤 , 𝐵 𝑤 ) – 𝑂 𝑤 consists of all pickup and delivery nodes that ship 𝑤 may visit – 𝐵 𝑤 consists of all arcs that ship 𝑤 can traverse • Assumptions – Triangle inequality holds for both costs and travel times Solution Approach
Pricing problem PF1 𝑛𝑏𝑦 𝑠∈𝑆 𝑤 = 𝑒 𝑗𝑘𝑤 𝑗,𝑘 ∈𝑠 Solution Approach
Pricing problem PF2 𝑛𝑏𝑦 𝑠∈𝑆 𝑤 = 𝑒 𝑗𝑘𝑤 + 𝜐(𝑠) 𝑗,𝑘 ∈𝑠 Solution Approach
Calculating optimal schedule 𝜐 𝑠 = max 𝜀 𝑗 𝑢 𝑗𝑤 𝑗,𝑘 ∈𝑠 subject to 𝑢 𝑗𝑤 + 𝑈 𝑗𝑘𝑤 − 𝑢 𝑘𝑤 ≤ 0, ∀ 𝑗, 𝑘 ∈ 𝑠 𝑈 𝑗 ≤ 𝑢 𝑗𝑤 ≤ 𝑈 𝑗 ∀ 𝑗, 𝑘 ∈ 𝑠 Cannot be calculated exactly until path is completed Solution Approach
Dominance for PDPTW • Røpke and Cordeau (2009) • Label 𝑀 1 dominates 𝑀 2 if: η 𝑀 1 = η 𝑀 2 Same node 𝑢 𝑀 1 ≤ 𝑢 𝑀 2 Less time 𝑑 𝑀 1 ≤ 𝑑 𝑀 2 Less cost 𝑊 𝑀 1 ⊆ 𝑊 𝑀 2 Subset of cargoes picked up 𝑃 𝑀 1 ⊆ 𝑃 𝑀 2 Subset of cargoes onboard Solution Approach
Recommend
More recommend