1 / 41

Combinatorial Optimization in Container Scheduling

Combinatorial Optimization in Container Scheduling. Michael Pinedo Stern School of Business, New York University with Byung-Cheon Choi, Kangbok Lee (NYU), Joseph Leung (NJIT), Dirk Briskorn (Cologne). CMMI, Boston, July, 2012. Contents. Settings Motivation. Preliminary.

hakan
Download Presentation

Combinatorial Optimization in Container Scheduling

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Combinatorial Optimization in Container Scheduling Michael Pinedo Stern School of Business, New York University with Byung-Cheon Choi, Kangbok Lee (NYU), Joseph Leung (NJIT), Dirk Briskorn (Cologne). CMMI, Boston, July, 2012

  2. Contents Settings Motivation Preliminary Assumptions / Parameters / Constraints / Objectives Model Scenarios, Examples, and Equivalent Scheduling Problems Problems Result 1 / Result 2 / Result 3 / Result 4 Other Objective functions Results Summary Future Study Conclusion

  3. Motivation A shipping company has a number of containers to be delivered from sourceports to destination ports with ships that have fixed routing schedules. Which container should be delivered by which ship?

  4. Motivation Service : North/Central China Eastcoast Express (NCE) 2010-04-26 2010-03-29 2010-03-22 2010-05-10 2010-04-12 2010-04-05 2010-03-15 2010-05-03 2010-04-19 Qingdao Ningbo Yangshan New York Norfolk Savannah Busan Qingdao http://www.hapag-lloyd.com/en/products_and_services/services_between_asia_and_north_america.html#TPD_east

  5. Unidirectional route • There is a sequence of ports • A ship may skip some ports 1. Unidirectional Route C Port A B D E F Ship 1 Ship 2 Ship 3 visiting non-visiting Model Assumptions / Parameters / Constraints / Objectives Assumptions

  6. Non-overtaking • Overtaking case Ports 1. Unidirectional Route ship 1 ship 2 2. Non-Overtaking time 2. Non-Overtaking • Non-Overtaking example Ports ship 1 ship 2 ship 3 time Model Assumptions / Parameters / Constraints / Objectives Assumptions

  7. Example transfer • Transfer case Source port Destination port Container 1. Unidirectional Route loading unloading Ship 1 2. Non-Overtaking Transfer Ship 2 loading unloading 3. No Transfer 3. No Transfer Model Assumptions / Parameters / Constraints / Objectives Assumptions

  8. Two types of Size (1 or 2) sj 8.6 ft 8.6 ft 40-ft 20-ft 8 ft 8 ft Twenty-foot Equivalent Unit = 1 TEU Forty-foot Equivalent Unit (FEU) = 2 TEU uj, vj • Source port / Destination port rj, dj • Release date / Due date • Importance (weight) factor wj Model Assumptions / Parameters / Constraints / Objectives Containers Ships Containers

  9. Predetermined Routing Schedule ti,k : time when ship i visits port k. port 1 2 3 4 5 6 Ship i ti,1 ti,2 ti,3 ti,5 Model Assumptions / Parameters / Constraints / Objectives Containers Ships Ships • Number of shipsm • Capacity : ci

  10. Capacity Constraints • At any time, the total size of containers being loaded at a ship cannot exceed the capacity of the ship. Model Assumptions / Parameters / Constraints / Objectives Constraints • Ship Eligibility Constraints By source and destination ports • A container can be delivered only by a ship that visits both the source port and destination port of the container. By release dates • A container can be delivered only by a ship that visits the source port of the container at a time after the release date of the container.

  11. Objectives Tmax • The maximum tardiness  Main topic  wjDj • The weighted Delivery Time  wjUj • The weighted number of tardy containers  wjTj • The weighted tardiness Model Assumptions / Parameters / Constraints / Objectives Terminology • Delivery Time (Dj) The arrival time of the ship at the destination port of the container. • Tardiness (Tj) Maximum { 0, Delivery Time – Due date } • Tardy Container (Uj) Uj= 0 if Tj= 0, Uj= 1 if Tj> 0

  12. The optimal objective function value T*max { max{0, Dj– dj} |j = 1, …, n } = { max{0, ti, – dj} |j = 1, …, n , i = 1, …, m } =  vj With a target objective function value T  , Consider a feasibility problem to find a feasible schedule not violating the modified due date dj + T. If the answer is Yes, T*max ≤ T . If the answer is No, T*max > T . Model Assumptions / Parameters / Constraints / Objectives A Feasibility Problem for Tmax

  13. Each container has a last available ship.  • Containers of each size can be ordered in increasing order of • the last available ship  capacity size 1 size 2 ship Problems An Example / Scenarios A simple model • All ships visit all ports following the order of the ports • All containers have a common source port • All containers are released at time 0.

  14. (ai, bi) • A node at layer i represents a partial schedule with • aiand bicontainers of size 1 and size 2 each are assigned to ships 1, …, i. i if h1a≥i , h2b ≥i and ai + 2bi =  ck i i k=1 • and are connected to one another • if ai≤ ai+1and bi ≤ bi+1 (ai, bi) (ai+1, bi+1) Problems An Example / Scenarios A connectivity problem in a layered graph • n1and n2represent the number of containers of size 1 and size 2 • h1aand h2brepresent the last available ship for a-th container of size 1 and b-th container of size 2, respectively.

  15. Problems An Example / Scenarios A connectivity problem in a layered graph layer 0 (0,0) … layer 1 (c1, 0) (c1-2, 1) (c1-2n2, n2) … layer 2 (c1+c2, 0) (c1+c2-2, 1) (c1+c2-4, 2) (c1+c2-2n2, n2) : : : : m-1 … m-1 m-1 (ck, 0) ( ck-2n2, n2) (ck-2,1) layer m-1 k=1 k=1 k=1 layer m (n1,n2)

  16. Category Options Symbols Identical routes (all ships visit all ports) I Ship routings Arbitrary routes (special case: nested routes) A (N) Routing Fixed number of ports (constant) Np # of Ports Arbitrary number of ports  Zero release dates (all containers are ready) rj = 0 Release Date Arbitrary release dates rj Common source ports (distribution center) uj = 1 Container Source Port Arbitrary source ports uj sj = 1 Unit container size only Container Size sj = 1 or 2 Container size of 1 or 2 Problems An Example / Scenarios

  17. Routing Environment Objective Function Container Characteristics Problems An Example / Scenarios Example: I , Np| rj=0, uj, sj = 1 or2| Tmax

  18. An Example / Scenarios Problems The Computational Complexities Routing P Container P: polynomial time solvable, NP: NP-hard

  19. Container j : (uj, vj) = (8,16) destination port source port uj vj Since rj= 0, the first ship is available. Ship 1 c1=3 c2=4 Ship 2 due date restriction Ship 3 c3=2 ports 15 0 5 10 20 Results Result 1 / Result 2 / Result 3 / Result 4. I ,| rj = 0, uj , sj = 1 | Tmax

  20. Example: job j of type 2 with (bj, ej) = (8,16) Strongly NP-hard for T ≥ 3 bj ej Kolen et al.2007.NRL m/c type 1 m1=3 m2=4 m/c type 2 m/c type 3 m3=2 time 15 0 5 10 20 Results Result 1 / Result 2 / Result 3 / Result 4. Equivalent Problem : Hierarchical Interval Scheduling with T machine Types: HIS(T) Job j : fixed starting time (bj) and completion time (ej) Job j of type i : job j can be scheduled on machine with type k for 1  k  i.

  21. size = 1 or 2 the first available ship the last available ship Capacity c 2 1 Ship … 1 2 3 m Results Result 1 / Result 2 / Result 3 / Result 4. I ,| rj , uj = 1, sj = 1 or 2 | Tmax

  22. Resource constrained scheduling Pc| rj , pj = 1, sizej = 1 or 2 | Tmax Machine c 2 1 1 2 3 m time … OPEN Complexity Problem by P. Brucker and A. Krämer. EJOR (1996) P| rj , pj = 1, |{ sizej}| = K| Tmax for constant K P| rj , pj = 1, sizej = 1 or m| Tmax Partial Results on O(n4) Philippe Baptiste and Baruch Schieber. J. Scheduling (2003) O(n3) Christoph Dürr and Mathilde Hurand, Algorithmica (2009) Results Result 1 / Result 2 / Result 3 / Result 4. Related (and in some way equivalent) Problem:

  23. Results Result 1 / Result 2 / Result 3 / Result 4. I ,| rj , uj = 1, sj = 1 or 2 | Tmax Data Structure The set of containers of size 1 that are eligible toships h to k. 1 2 3 4 5 ships

  24. Solution Structure N(i , ai , bi) : indicates that aicontainers of size 1 and bicontainers of size 2 have been assigned to ships 1, 2, …,i. N(0, 0, 0) : single node for the case of i = 0. N(m, n1, n2) : single node for the case of i = m. Results Result 1 / Result 2 / Result 3 / Result 4. Parameters and assumptions • n1(n2) : the number of containers of size 1 (size 2). • m ships with capacity ci

  25. … … … 1 2 3 4 m … Results Result 1 / Result 2 / Result 3 / Result 4. Node Feasibility conditions

  26. … … … 1 2 3 4 m … Results Result 1 / Result 2 / Result 3 / Result 4 Arc Feasibility conditions N(k , ak , bk) andN(l , al , bl) are connected to each other for k < l, if k k+1 l

  27. Layer 0 N(0, 0, 0) Layer 1 … … N(1, a12, b1+1) N(1, a1, b1) N(1, a1+2, b11) Layer 2 … … N(2, a22, b2+1) N(2, a2, b2) N(2, a2+2, b21) … Layer m1 … … N(m1, am-12, bm-1+1) N(m1, am-1, bm-1) N(m1, am-1+2, bm-11) Layer m N(m, n1, n2) Layer 0 N(0, 0, 0) Layer 1 … … N(1, a12, b1+1) N(1, a1, b1) N(1, a1+2, b11) Layer 2 … … N(2, a22, b2+1) N(2, a2, b2) N(2, a2+2, b21) … Layer m1 … … N(m1, am-12, bm-1+1) N(m1, am-1, bm-1) N(m1, am-1+2, bm-11) Layer m N(m, n1, n2) Results Result 1 / Result 2 / Result 3 / Result 4. I ,| rj , uj = 1, sj = 1 or 2 | Tmax is reduced to the problem of finding a (m + 1)-clique in an (m + 1)-layered graph.

  28. Results Result 1 / Result 2 / Result 3 / Result 4. • Additionally, we proved that • There is a clique with size (m+1)  there exists a feasible schedule. •  There exist a polynomial time algorithm to construct a feasible schedule with a given (m+1) clique in (n+m2) time. •  Trivial. • There exists an algorithm to find a (m+1)-clique in polynomial time if • it exists. • In general, to find a k-clique in a k-layered graph is NP-complete. • However, based on a special property of the graph, we can find a (m+1)-clique in O(mn2 + m3n)time. For, the binary search on the target objective function value takes time of O( log mn ). I ,| rj , uj = 1, sj = 1 or 2 | Tmax can be solved in O( (mn2 + m3n)log mn )time.

  29. Additional assumptions • m is enough large to load all containers by MS rule. • All ships have the same capacity c, i.e. ci = c for i = 1, …, m. • The inter-departure times between consecutive ships at port l = , i.e. ti,l= t1,l+ (i-1) for i = 2, …, m and l = 1, …, Np The error bound of MS rule - é ù m 1 min £ + D T ( MS ) T ( OPT ) ê ú max max - c 1 ê ú + é ù n 2 n m = 1 2 where ê ú min ê c ú Results Result 1 / Result 2 / Result 3 / Result 4. Minimum Slack (MS) first priority rule for I ,| rj , uj = 1, sj = 1 or 2 | Tmax

  30. size 1 size 2 Results Result 1 / Result 2 / Result 3 / Result 4. The worst case example of MS rule capacity c The optimal schedule : : : : : : : time  2 mmin (mmin-1) capacity c The schedule by MS rule : : : : : : : : time   mmin (mmin-1) 

  31. Summary for the Maximum Tardiness objective The Time complexities of the problems (Tmax) P: polynomial time solvable, NP: NP-hard, OPEN: unknown

  32. Results Result 1 / Result 2 / Result 3 / Result 4. I ,| rj = 0, uj = 1, sj = 1 or 2 |  wj Dj with identical inter-departure times Additional Assumptions & Observation • All inter-departure times are identical. • In an optimal schedule, containers of each size are ordered • in non-increasing order of weight. • We can add dummy containers of size 1 with zero weight.

  33. A node at layer i represents a partial schedule with • aiand bicontainers of size 1 and size 2 each being assigned to ships 1, …, i. (ai, bi) i if ai + 2bi =  ck k=1 a b + + i 1 i 1 å å + 1 2 w t w t 1 2 j j + + i 1 , v i 1 , v j j = + = + j a 1 j b 1 i i • are connected if ai≤ ai+1and bi ≤ bi+1 • and its weight is (ai, bi) (ai+1, bi+1) where wj andvj are weight and destination of j-th container of size  Results Result 1 / Result 2 / Result 3 / Result 4. I ,| rj = 0, uj = 1, sj = 1 or 2 |  wj Dj with identical inter-departure times

  34. Results Result 1 / Result 2 / Result 3 / Result 4. A Shortest Path Problem : O(mn2) layer 0 (0,0) … layer 1 (c1, 0) (c1-2, 1) (c1-2n2, n2) … layer 2 (c1+c2, 0) (c1+c2-2, 1) (c1+c2-4, 2) (c1+c2-2n2, n2) : : : : m-1 … m-1 m-1 (ck, 0) ( ck-2n2, n2) (ck-2,1) layer m-1 k=1 k=1 k=1 layer m (n1,n2)

  35. 1 2 3 4 5 6 1 1 1 2 2 2 3 3 4 4 3 4 5 5 5 6 6 6 7 7 8 8 1 2 3 4 5 6 capacity Obj. value = A capacity Obj. value = B c c 2 4 4 6 8 c-1 1 3 4 5 7 1 2 3 4 5 6 1 2 3 5 6 1 2 4 4 5 6 8 1 2 3 5 6 1 2 3 3 5 6 7 ship ship 1 WSS B c+1 = 1 + ≤ ≤ c c OPT A Results Result 1 / Result 2 / Result 3 / Result 4. I ,| rj , uj = 1, sj = 1 or 2 |  wj Dj with identical inter-departure times WSS (Weighted Smallest Size first) rule • Order containers in non-increasing order of wj/sj.

  36. Summary for Weighted Delivery dates objective The Time complexities of the problems ( wjDj) P : polynomial time solvable, NP: NP-hard, OPEN: unknown :polynomial time solvable for identical weight (wj = 1 ) case  :polynomial time solvable for identical inter-departure times case  :polynomial time solvable for identical weight and identical inter-departure times case

  37. Solution Structure N(i , a1, a2, b1, b2) : indicates that a1containers of size 1 and a2containers of size 2 have been determined to be assigned to ships 1, 2, …,i. ornot. b1, and b2 are current numbers of containers of size 1 and 2 on ship i, respectively. N(1, 0, 0, 0, 0) : only node for the case of i = 1. N(m+1, n1, n2, 0, 0) : only node for the case of i = m+1. Results Result 1 / Result 2 / Result 3 / Result 4. I ,| rj =0, uj = 1, sj = 1 or 2 |  wj Uj with identical inter-departure times Observation • In an optimal schedule, on-time (non-tardy) containers • of each size are ordered in non-decreasing order of due date.

  38. Results Result 1 / Result 2 / Result 3 / Result 4. I ,| rj =0, uj = 1, sj = 1 or 2 |  wj Uj with identical inter-departure times At most five outgoing arcs N(i , a1+1, a2, b1, b2 ) Not assign (a1+1)th container of size 1 N(i , a1+1, a2, b1+1, b2 ) Assign (a1+1)th container of size 1 N(i , a1, a2, b1, b2) N(i , a1, a2+1, b1, b2 ) Not assign (a2+1)th container of size 2 N(i , a1, a2+1, b1 , b2+1) Assign (a2+1)th container of size 2 N(i+1, a1, a2, 0, 0) Close ship i and open ship i+1 A Shortest Path Problem : O(mn4)

  39. Future Research wj sj  T(uj, vj) wj sj  T(uj, vj) Distance from the source port to the destination port T(uj, vj) Ports uj vj Open Problems • Some open problems of minimizing ( Tmax / wjDj /  wjUj /  wjTj ) • Other objectives: Minimizing shipping cost by selecting ships. A simple priority rule • Worst case analysis or experimental analysis of a simple priority rule • For example : assign containers in the decreasing order of Larger weight Smaller size Shorter distance

  40. Future Research Other routings • Nested routes case (between identical and arbitrary routes cases) visiting only important ports Ship 1 Ship 2 Ship 3 visiting all ports Additional restrictions • A refrigerator container requires electricity • A ship has a limited space for such containers. Empirical work • Analysis of the performance of algorithms with real data. • Development of efficient algorithms for practical use.

More Related