Presentation is loading. Please wait.

Presentation is loading. Please wait.

1/33 Team NCKU lead by I-Lin Wang INFORMS RAS 2014 Problem Solving Competition Team NCKU (National Cheng Kung  I-Lin Wang (Associate.

Similar presentations


Presentation on theme: "1/33 Team NCKU lead by I-Lin Wang INFORMS RAS 2014 Problem Solving Competition Team NCKU (National Cheng Kung  I-Lin Wang (Associate."— Presentation transcript:

1 1/33 Team NCKU lead by I-Lin Wang INFORMS RAS 2014 Problem Solving Competition Team NCKU (National Cheng Kung University @Taiwan)  I-Lin Wang (Associate Professor)  Ping-Cheng Lin (student)  Tsai-Ti Huang (student)

2 2/33 Railroad Yard Team NCKU lead by I-Lin Wang 2 Hump Engines3 Pullback Engines Two-stage Flow Shop Scheduling Inbound Trains Hump Engine Pullback Engines Sorted Cars Outbound Trains Stage-1 machine Stage-1 Jobs WIP Stage-2 machineProducts

3 3/33 Hump Sequencing 2 Hump Engines3 Pullback Engines Inbound trains ∞ tracks 58,50,42 tracks; diff. length Outbound trains ∞ tracks Stage 1: job  inbound train release time  arrival time machine  hump engine processed job  blocks in a c-track (WIP Inventory)

4 4/33 Stage 1: Still on-going at the same time Pullout Sequencing 2 Hump Engines3 Pullback Engines Inbound trains ∞ tracks 58,50,42 tracks; diff. length Outbound trains ∞ tracks Stage 2: job (i.e. WIP)  cars in c-tracks release time  time when cars on c-tracks machine  pullout engine product  departure train finish time  departure time

5 5/33 Team NCKU lead by I-Lin Wang Two Subproblems  Hump Sequencing Which hump engine to disassemble which inbound train in what way (single or multi? into which tracks), and at what time?  Pullout Sequencing Which pullout engine to assemble which lines of railcars from which tracks to construct which departure train, and at what time?

6 6/33 Team NCKU lead by I-Lin Wang Problem Description  Given data Inbound trains (702 trains)  Schedule & configuration of each inbound train  Length and type of railcars Classification tracks (3 scenarios: 58, 50, 42 tracks)  Length (different to each other) Outbound trains (16 trains/day)  Schedule & configuration of each outbound train 2 hump engines, 3 pullback (pullout) engines  Objective optimal hump & pullout sequencing that satisfy constraints with minimized total dwell time

7 7/33 Team NCKU lead by I-Lin Wang Difficulties in this Competition  Any delay will change the scheduling decision  IP-based method is NOT suitable  May require different heuristics for delayed cases  Different configurations of railcars Each railcar has its own length  Different configurations of classification tracks 3 scenarios of classification tracks(58, 50, and 42 )  Different configurations of outbound trains Each outbound train has its own railcars of specific types and orders  Possibility of delaying outbound trains Each outbound train may have its own best delay time in each day, yet it is difficult to predict that  Decisions for each car  Too many variables in an IP  Classification tracks have different lengths  Decisions for each car in each track  Too many variables in an IP  May require different heuristics for each scenario  Decisions for each car  Too many variables in an IP

8 8/33 Solution Methods  Integer Programming (IP) Too many variables Nonlinear objective function (to consider delay)  Meta-Heuristics Genetic Algorithm Tabu Search,….etc.  Greedy Heuristics FIFO? SPT? EDD?  Simulation-based solution with greedy heuristics Provide good solutions efficiently, with the flexibility to adjust control parameters for different key operations Team NCKU lead by I-Lin Wang  Rely on case-dependent parameter setting adjustments, NOT intuitive  try out blind combinations?  Should NOT work

9 9/33 Important Insights from Data  Each type of railcar can only be shipped by a unique outbound train in specific order  a good Timing for processing an inbound or an outbound train?  Sequential processing is sufficient by hump & pullback engines cannot save operational time by parallel operations We may assign an inbound or outbound train a specific engine, since their schedules are sufficiently separated (e.g. for pullout operations, 1-2-3-1-2-3-….-1-2-3…) Team NCKU lead by I-Lin Wang

10 10/33 Intuitions for Decisions (1/2)  Decisions to start humping To hump an inbound train only when it contains blocks that are shippable in the near future PULL strategy rather than PUSH strategy  Decisions to assign Block to Track Single-type track  Simpler & time effective: carry more blocks at a time  Need to start pulling out earlier, for trains of many types Multi-type track  Useful for cases of limited classification area  Difficult to arrange beforehand Team NCKU lead by I-Lin Wang  Single-type track is good enough here!

11 11/33 Intuitions for Decisions (2/2)  Decisions to assign Block to Track (continued) Which classification track to assign blocks  Assign “popular” blocks to longer tracks Sort the classification tracks by length Sort the railcar types by total quantities Map each railcar type to a classification track as an initial checking point  Decisions to start pulling out operation Better to start late pullout operations (PULL strategy)  More cars can be shipped in the order  Order of car types has to be satisfied  single type track is better (tractable start time) Team NCKU lead by I-Lin Wang

12 12/33 Hump Operations: In-Train Selection  How to select an inbound train to hump  3 strategies: h1, h2, h3 Team NCKU lead by I-Lin Wang Best  h2

13 13/33 Hump Operations: C-Track Selection  Setting of proposed key: Team NCKU lead by I-Lin Wang Which C-track to be selected to receive cars? 3 strategies: c1, c2, c3 Best  c2

14 14/33 Pullout Operations: when to start?  How to select an inbound train to hump  3 strategies: p1, p2, p3 Team NCKU lead by I-Lin Wang Best  p2

15 15/33 To Delay an Outbound Train  Delaying an outbound train has no penalty Better to ALWAYS delay (but cannot depart earlier)  Delay time should be different each day Caused by different inbound trains each day but for how long?  Intuitively, more “just missed” cars would be worth delaying  Give a mathematical model to determine the timing and amount of cars to delay (but not used here)  Give a simple rule for checking whether it pays off to delay an outbound train that originally carried n cars for ∆t time. Team NCKU lead by I-Lin Wang

16 16/33 A Mathematical Model (1/2) Team NCKU lead by I-Lin Wang

17 17/33 A Mathematical Model (2/2)  Objective: Min Team NCKU lead by I-Lin Wang Total dwell time for #cars shipped by the earliest outbound train Total dwell time for #cars shipped by the same outbound train of the next day Flow balance (1) (3) (2) s.t.  Did NOT use this model

18 18/33 A simple formula for delay (1/2)  Simple rule for checking whether it pays off to delay an outbound train that originally carried n cars for time. : #shippable but just missed cars at minutes later than departure time  Pull out takes 20 min, so we can pull at most  If,suggest to delay. Team NCKU lead by I-Lin Wang Total saved timeTotal wasted time time: #cars: time: #cars:

19 19/33 A simple formula for delay (2/2)  Whereas if n =0,wait until outbound train can catch 1 needed car. Let is the time from catching one car to real departure time  If, suggest to delay  Let denote the threshold value on #shippable but just missed cars  Check to decide delaying or not Team NCKU lead by I-Lin Wang time: #cars: 0 time: #cars: #cars: 1

20 20/33 An illustrative example (1/3) Team NCKU lead by I-Lin Wang time: +1440 #cars: time: +1440 #cars: Wasted time saved time Wasted time saved time Worth delaying! Original #cars to be shipped Extra #cars caught by delay

21 21/33 An illustrative example (2/3) Team NCKU lead by I-Lin Wang wasted 5 0 20 1440 200 saved 500 8 wasted 0 20 1440 200 saved 0 20 1440 200 5 500 3 600 9 800 3 time: #cars:

22 22/33 An illustrative example (3/3) Team NCKU lead by I-Lin Wang 500 17 wasted 0 20 1440 200 saved 600 0 20 1440 200 5 500 3 600 9 800 3 #cars: time: 500 20 wasted 0 20 1440 200 saved 600 800 Best delay!

23 23/33 Delay time example Team NCKU lead by I-Lin Wang  Best delay time

24 24/33 Algorithm Team NCKU lead by I-Lin Wang Delay time pullback time

25 25/33 Computational Results (No delay)  TDavg: average Dwell time  Vage: average volume  %Ot: average occupied classification track (%tracks/min) Team NCKU lead by I-Lin Wang No Delay %Utk: avg full rate occupied classification Lavg: #line/min *: unlimited situation

26 26/33 Computational Results (Delay<2hr)  TDavg: average Dwell time  Vage: average volume  %Ot: average occupied classification track (%tracks/min) Team NCKU lead by I-Lin Wang %Utk: avg full rate occupied classification Lavg: #line/min *: unlimited situation Delay(<2hr)

27 27/33 Computational Results (Delay<1D)  TDavg: average Dwell time  Vage: average volume  %Ot: average occupied classification track (%tracks/min) Team NCKU lead by I-Lin Wang %Utk: avg full rate occupied classification Lavg: #line/min *: unlimited situation No Delay Delay(<2hr) Delay(<1D)

28 28/33 Visualization Tool  Take day1_train14 for example  scheduled departure time for train14:1410 Team NCKU lead by I-Lin Wang #cars can be shipped

29 29/33 Visualization Tool  When time is 1750, we can find more shippable cars in classification tracks Team NCKU lead by I-Lin Wang

30 30/33 Visualization Tool  Delay 419min, real departure time:1829 Team NCKU lead by I-Lin Wang #cars can be shipped

31 31/33 Visualization Tool Team NCKU lead by I-Lin Wang No delay delay Delay dwell time:864547 No Delay dwell time:910460  Better to delay

32 32/33 Conclusion  Solution Methods: simulation-based solution Good scheduling solutions efficiently Good flexibility to adjust control parameters for different key operations  Each key operation contains heuristics composed by simple rules sound mathematical reasoning and analysis  Proposed strategies: h2,c2(or c1) and p2  Our visualization tool can be used to validate or check how other strategy works, based on the requested input/output csv file. Team NCKU lead by I-Lin Wang

33 33/33 Team NCKU lead by I-Lin Wang Thank you ! Q & A Contact: I-Lin Wang ( 王逸琳 ) Associate Professor Dept of Industrial & Information Management National Cheng Kung University

34 34/33  day1 Computational experiments Team NCKU lead by I-Lin Wang Delay time 304491164 time: #cars: 0 time: #cars: #cars: 1

35 35/33 Computational experiments  day2 Team NCKU lead by I-Lin Wang Delay time

36 36/33 Visualization Tool  Take day1_train14 for example, scheduledd departure time for train14:1410  #cars can be pulled back Team NCKU lead by I-Lin Wang


Download ppt "1/33 Team NCKU lead by I-Lin Wang INFORMS RAS 2014 Problem Solving Competition Team NCKU (National Cheng Kung  I-Lin Wang (Associate."

Similar presentations


Ads by Google