Table of Contents
Fetching ...

Optimizing Railcar Movements to Create Outbound Trains in a Freight Railyard

Ruonan Zhao, Joseph Geunes, Xiaofeng Nie

TL;DR

This work tackles the railcar shunting problem (RSP) in flat, one-sided railyards with a single locomotive, aiming to minimize repositioning costs while assembling outbound trains over a planning horizon $\mathcal{T}$. It develops two exact formulations, a mixed-integer program (MIP) and a dynamic programming (DP) model, proves the problem’s NP-hardness, and introduces the adaptive railcar grouping DP (ARG-DP) heuristic to efficiently solve large-scale instances. Empirical results show that ARG-DP is on average $3.55\times 10^2$ times faster than the MIP, solving 60 simulated yard instances with an average optimality gap of 6.65% and achieving an average state-space reduction of over 97%; a Gaia-yard case study yields $\sim$229x speedups with a 6.90% gap. The approach enables practical yard planning by drastically reducing computation while maintaining high solution quality, and lays groundwork for extensions to multiple locomotives and more complex yard configurations.

Abstract

A typical freight railyard at a manufacturing facility contains multiple tracks used for storage, classification, and outbound train assembly. Individual railcar storage locations on classification tracks are often determined before knowledge of their destination locations is known, giving rise to railcar shunting or switching problems, which require retrieving subsets of cars distributed throughout the yard to assemble outbound trains. To address this combinatorially challenging problem class, we propose a large-scale mixed-integer programming model that tracks railcar movements and corresponding costs over a finite planning horizon. The model permits simultaneous movement of multiple car groups via a locomotive and seeks to minimize repositioning costs. We also provide a dynamic programming formulation of the problem, demonstrate the NP-hardness of the corresponding optimization problem, and present an adaptive railcar grouping dynamic programming (ARG-DP) heuristic, which groups railcars with common destinations for efficient moves. Average results from a series of numerical experiments demonstrate the efficiency and quality of the ARG-DP algorithm in both simulated yards and a real yard. On average, across 60 test cases of simulated yards, the ARG-DP algorithm obtains solutions 355 times faster than solving the mixed-integer programming model using a commercial solver, while finding an optimal solution in 60% of the instances and maintaining an average optimality gap of 6.65%. In 10 cases based on the Gaia railyard in Portugal, the ARG-DP algorithm achieves solutions 229 times faster on average, finding an optimal solution in 50% of the instances with an average optimality gap of 6.90%.

Optimizing Railcar Movements to Create Outbound Trains in a Freight Railyard

TL;DR

This work tackles the railcar shunting problem (RSP) in flat, one-sided railyards with a single locomotive, aiming to minimize repositioning costs while assembling outbound trains over a planning horizon . It develops two exact formulations, a mixed-integer program (MIP) and a dynamic programming (DP) model, proves the problem’s NP-hardness, and introduces the adaptive railcar grouping DP (ARG-DP) heuristic to efficiently solve large-scale instances. Empirical results show that ARG-DP is on average times faster than the MIP, solving 60 simulated yard instances with an average optimality gap of 6.65% and achieving an average state-space reduction of over 97%; a Gaia-yard case study yields 229x speedups with a 6.90% gap. The approach enables practical yard planning by drastically reducing computation while maintaining high solution quality, and lays groundwork for extensions to multiple locomotives and more complex yard configurations.

Abstract

A typical freight railyard at a manufacturing facility contains multiple tracks used for storage, classification, and outbound train assembly. Individual railcar storage locations on classification tracks are often determined before knowledge of their destination locations is known, giving rise to railcar shunting or switching problems, which require retrieving subsets of cars distributed throughout the yard to assemble outbound trains. To address this combinatorially challenging problem class, we propose a large-scale mixed-integer programming model that tracks railcar movements and corresponding costs over a finite planning horizon. The model permits simultaneous movement of multiple car groups via a locomotive and seeks to minimize repositioning costs. We also provide a dynamic programming formulation of the problem, demonstrate the NP-hardness of the corresponding optimization problem, and present an adaptive railcar grouping dynamic programming (ARG-DP) heuristic, which groups railcars with common destinations for efficient moves. Average results from a series of numerical experiments demonstrate the efficiency and quality of the ARG-DP algorithm in both simulated yards and a real yard. On average, across 60 test cases of simulated yards, the ARG-DP algorithm obtains solutions 355 times faster than solving the mixed-integer programming model using a commercial solver, while finding an optimal solution in 60% of the instances and maintaining an average optimality gap of 6.65%. In 10 cases based on the Gaia railyard in Portugal, the ARG-DP algorithm achieves solutions 229 times faster on average, finding an optimal solution in 50% of the instances with an average optimality gap of 6.90%.
Paper Structure (24 sections, 10 theorems, 29 equations, 13 figures, 15 tables, 4 algorithms)

This paper contains 24 sections, 10 theorems, 29 equations, 13 figures, 15 tables, 4 algorithms.

Key Result

Lemma 1

Given the number of groups on track segments $i$ and $j$ at the end of period $t-1$, $N_{i,t-1}$ and $N_{j,t-1}$, respectively, if $N_{it}^-$ groups move from segment $i$ to segment $j$ in period $t$, then the resulting position changes are given by:

Figures (13)

  • Figure 1: Railyard layout example.
  • Figure 2: Example of shunting operations for switch-end-positioned group $g\in G_N$
  • Figure 3: Example of shunting operations for middle-positioned group $g\in G_N$
  • Figure 4: Example of shunting operations to drop off dead-end-positioned group $g\in G_M$
  • Figure 5: DP network example
  • ...and 8 more figures

Theorems & Definitions (27)

  • Definition 1: RSP
  • Lemma 1
  • proof
  • Lemma 2
  • proof
  • Corollary 1: State Space Reduction by Decreasing the Number of Car Groups and Tracks
  • proof
  • Definition 2: RSP-sc
  • Theorem 1
  • proof
  • ...and 17 more