Routing and scheduling temporal and heterogeneous freight car traffic on rail networks

Routing and scheduling temporal and heterogeneous freight car traffic on rail networks

Transpn Res.-E (Logistics and Transpn Rev.), Vol. 34, No. 2, pp. 101±115, 1998 # 1998 Elsevier Science Ltd. All rights reserved Printed in Great Brita...

288KB Sizes 1 Downloads 68 Views

Transpn Res.-E (Logistics and Transpn Rev.), Vol. 34, No. 2, pp. 101±115, 1998 # 1998 Elsevier Science Ltd. All rights reserved Printed in Great Britain 1366-5545/98 $19.00+0.00

Pergamon

PII: S1366-5545(97)00022±7

ROUTING AND SCHEDULING TEMPORAL AND HETEROGENEOUS FREIGHT CAR TRAFFIC ON RAIL NETWORKS OH KYOUNG KWON

The Korea Transport Institute, 968-5 Daechi-Dong, Kangnam-Gu, Seoul 135-280, Korea

CARL D. MARTLAND and JOSEPH M. SUSSMAN

Henry L. Pierce Laboratory, Department of Civil and Environmental Engineering, Massachusetts Institute of Technology, 77 Massachusetts Avenue, Cambridge, MA 02139, U.S.A. (Received 23 January 1996; in revised form 2 June 1997) AbstractÐFreight car scheduling is taking on a more important role in rail operating plans as more shippers demand trip plan information for their procurement, production and distribution plans, and as railroads pursue operations that are better scheduled and planned. This paper presents several ways to improve current freight car scheduling practices and describes a dynamic freight car routing and scheduling model that can produce more achievable and market-sensitive car schedules. A time±space network representation technique was used to represent car moves on possible sequences of car-to-block and block-to-train assignments on a general-merchandise rail service network. The problem was formulated as a linear multicommodity ¯ow problem; the column generation technique was used as a solution approach. The model was tested on a hypothetical rail network based on the sub-network of a major U.S. railroad. # 1998 Elsevier Science Ltd. All rights reserved Keywords: Freight, rail, optimization. 1. INTRODUCTION

Improving service quality has become a more important issue to the railroad industry in this era of deregulation. Shippers have become more sensitive to logistics-related costs and they now require transportation services that can improve their logistics processes throughout the supply chain. They seek to reduce inventories of raw materials and in-progress and ®nished products, and they need freight transportation services that can be closely coordinated with their procurement, production and delivery systems. Freight car scheduling is taking on a more important role in rail operating plans as more shippers demand car schedule information for their procurement, production and distribution plans, and as railroads pursue operations that are better scheduled and planned. Freight car scheduling can be de®ned as the process whereby a car, when it becomes available for movement, is assigned a trip plan that describes when it should be moved by speci®c trains or jobs to its destination (Missouri Paci®c, 1977). In this paper, we identify several ways to improve the current freight car scheduling practices and develop dynamic freight car routing and scheduling model to produce more achievable and market-sensitive car schedules. 2. CURRENT FREIGHT CAR SCHEDULING PRACTICE AND AREAS FOR IMPROVEMENT

The development of freight car scheduling systems was initiated by the Missouri Paci®c Railroad (MoPac) in the early 1970s as the Federal Railroad Administration (FRA) awarded the MoPac a contract for the development and partial implementation of a freight car scheduling system. The MoPac's freight car scheduling system consisted of four components which : (1) centrally de®ne and control the operating plan; (2) generate complete trip plans for cars; (3) establish ®eld visibility of the trip plans; and (4) support information requirements. The freight car scheduling system generates the trip plan or car schedule that de®nes the sequence of blocks and trains a car is scheduled to move on and the locations where the car will be 101

102

Oh Kyoung Kwon et al.

picked up and set out as it travels from its origin to its destination. Trip plans can be generated from the basic components of the typical railroad operating plan: (1) train schedules; (2) blocking plan; (3) train make-up plan; and (4) train connection standards at terminals. The blocking plan determines car-to-block assignments at all terminals. In current blocking plan practice, a block is de®ned by several parameters such as origin, next common destination, priority and ®nal destinations. By specifying ®nal destinations for each block, the current blocking plan allows only ®xed car-to-block assignment. In the MoPac's freight car scheduling system, trip plans are generated based on the following heuristic procedure; . The generation of a trip plan begins by determining the appropriate yard block for the car. . Once a yard block has been selected, a list of trains which carry that yard block is identi®ed. . Car scheduling assigns the car to the earliest candidate train that the car can make. A car `can make' a train if it is (or is scheduled to be) available before the cuto€ time for that train. . Once the appropriate candidate train has been selected, car scheduling repeats this trip plan generation process from the location where the train will set out the car's block until the complete trip plan is generated. Since the MoPac developed a freight car scheduling system, several railroads have developed and are developing their own freight car scheduling systems. The trip plan generation, which is the core component of these freight car scheduling systems, is still largely based on the heuristic procedure developed by the MoPac. Discussions on the status of car scheduling systems in the U.S railroad industry can be found in Van Dyke (1992, 1994). There are two important issues that the trip plan generation procedures of current freight car scheduling systems have not fully considered. The ®rst issue concerns the heterogeneity of trac in building trip plans. Di€erent shippers have di€erent service requirements, and a railroad needs to design and deliver di€erent service products for them. Some shippers require fast and highly reliable service and may accept a higher price. For example, manufacturers with the JIT (Just-InTime) production system require a tight delivery time window and a very high standard of on-time performance. Other shippers require less costly service and may accept slower and less reliable moves. Such heterogeneity of trac, in terms of di€erent service requirements, needs to be considered in order to build trip plans that are sensitive to the service requirements of shippers. Some amount of service di€erentiation is feasible through the development of blocking plans, train schedules, and train connection standards. However, when variations in trac or changes in operating conditions occur, it is dicult to di€erentiate among di€erent shipments moving within the same block. The second issue concerns variability in trac (e.g. weekly and daily trac variability) and potential train capacity problems in building trip plans. Current trip plan generation procedures simply assign cars to the earliest candidate trains without considering the capacity of the train. If the train is full, some cars must be delayed until the next appropriate train departs, typically 24 h later. Car scheduling practice largely neglects potential train capacity problems due to trac variability in building trip plans. A manager can use the system to determine the number of cars assigned to a particular train; if the train is overbooked, the manager can then reschedule some cars to a later train. However, this is a last minute adjustment made after the trip has begun that will alter the trip plan originally developed and given to the customer. A car scheduling that does not automatically consider trac variability and train capacity constraints is likely to produce less

Fig. 1. Current freight car scheduling.

Routing and scheduling

103

achievable trip plans (or, trip plans with unnecessary slack time that consider possible en route delays a priori), especially when the system is congested. In practice, train capacity can be limited by length or by weight. In this paper, we assumed that trains are length limited, but it would be possible to extend the framework to include weight limits. 3. DYNAMIC FREIGHT CAR ROUTING AND SCHEDULING MODEL

We developed a dynamic car routing and scheduling model that incorporates heterogeneity of trac, trac variability, and train capacity restrictions so that it produces trip plans that are more consistent with train length constraints and more sensitive to service requirements of shippers. Figure 2 shows the dynamic freight car scheduling scheme we developed. The major improvement is that the system will delay lower priority trac classes in order to avoid overbooking trains, thereby generating more achievable trip plans. 3.1. Incorporating service standards and trac variability The heterogeneity of trac is considered by incorporating di€erent service standards for di€erent shippers. In the model, the service standards for di€erent shippers are represented by delivery time windows. The trac variability is considered on a weekly basis by incorporating the projected volume of trac by day of week 3.1.1. Incorporating service standards. A railroad can establish service standards for di€erent shippers by de®ning a delivery time window based on the explicit requirements of shippers or negotiations with shippers. The delivery time window is speci®ed by earliest and latest acceptable delivery times. Speci®cally: tk 2 ‰tkMIN ; tkMAX Š 8k 2 K

…1†

where, K is the set of shippers, tk is the delivery time for shipper k, tkMIN is the earliest acceptable delivery time, and tkMAX is the latest acceptable delivery time. Di€erent shippers may impose di€erent explicit or implicit costs to a railroad if unreliable service is provided. Explicit costs may include a penalty cost for unreliable service. Implicit costs may include loss of goodwill and long-term market loss to competitive carriers or modes. Depending upon how they measure and evaluate service, some shippers may impose penalties for both early and late arrival. Other shippers may impose penalties only for late arrival. A railroad may estimate penalty costs for di€erent shippers based on the explicit penalty cost speci®ed by the shipper or independent study of demand elasticities. Speci®cally, the penalty imposed by shipper k…k † can be represented as: 8 > 1 …tk ÿ tkMAX †; if tk > tkMAX > > < …2† k ˆ …tk † ˆ 0; if tk 2 ‰tkMIN ; tkMAX Š > > > : 2 …tkMIN ÿ tk ; if tk < tkMIN

Fig. 2. Dynamic freight car scheduling.

104

Oh Kyoung Kwon et al.

where, …tk † is the penalty cost when the delivery time is tk , 1 …:† is the penalty cost function when the actual delivery time is later than the latest acceptable delivery time, and 2 …:† is the penalty cost function when the actual delivery time is earlier than the earliest acceptable delivery time. Unreliable service also in¯uences equipment utilization and imposes certain costs on the railroad. Therefore, it is important to establish a car scheduling system that produces car schedules, considering both the service requirements of di€erent shippers and the potential costs of unreliable compliance with schedules. 3.1.2. Incorporating trac variability. The other important issue to consider is trac variability and possible train capacity problems. There are two possible types of trac variability: one variability comes from relatively regular trac variability, e.g. seasonalities and weekly trac pattern; other variability has a more stochastic nature, e.g. daily trac variability. In this model, we used the projected volume of trac by day of week, as one aspect of trac variability. It would be possible to extend the framework to consider the volume of trac by time of day. It may be desirable to adjust schedules for certain peak periods to prevent possible excessive delays at congested terminals or due to limited train capacities in certain train segments. A railroad could `reschedule' some trac (e.g. less important trac) by holding it at intermediate terminals or even `reroute' some cars via a di€erent block sequence and corresponding train sequence during peak periods. It is not possible to deal with these peak period problems using predetermined and ®xed car-toblock assignments that do not vary with day of week or with actual operating conditions. A dynamic management scheme for car-to-block assignment is suggested to incorporate the trac variability in generating trip plans. To allow dynamic car-to-block assignment, the ®nal destinations in the block de®nition are not speci®ed, i.e. the `tag table' that lists ®nal destination of cars that can be assigned to a speci®c block is eliminated. NorFolk Southern has already developed what they call algorithmic blocking, which uses a shortest path algorithm, to assign cars to blocks (Baugher, 1994). This system eliminates the need for an extensive tag table, but does not support dynamic car-to-block assignment as described in this paper. Instead, NorFolk Southern uses a standard car scheduling methodology to create the trip plans from train schedules and cuto€s. 3.2. Time-space network representation To represent temporal and spatial car movements on the rail network and to ®nd the optimal pattern of car routes and schedules during a planning horizon, the time±space network representation technique is used. The time space network representation technique has been used in many railroad problems (Florian et al., 1976; Hornung and Kornhauser, 1979; Chih, 1990, 1992). It has also been used in other areas such as empty container allocation problem (White, 1972; Crainic et al., 1990), truck ¯eet management (Powell et al., 1988), and airline crew scheduling (Barnhart et al., 1993). A time±space network is built to represent the rail operation over a certain period of time. A procedure for building a time±space network is explained using an example set of train schedules, block de®nition and make-up plan (Tables 1 and 2). In Table 2, there are 3 blocks moving from terminal 1 to terminal 3. These could be carrying di€erent trac classes, or these could all have the same trac classes, thereby providing more frequent movement. Table 1. Train schedule: example. Train number

Train capacity (cars)

Terminal

Arrival

Departure

Day

908

200

1 3 9

Ð 04:40 08:40

02:00 05:00 Ð

1 1 1

927

160

1 3 9

Ð 11:55 18:05

09:30 12:25 Ð

1 1 1

942

80

1 3

Ð 24:00

20:00 Ð

1 1

Routing and scheduling

105

Table 2. Block de®nition and train make-up plan: example Block number 1 3 4 6 8 230

Origin

Destination

Trains carrying block

1 1 1 1 1 3

3 3 3 9 9 9

942 927 908 908 927 927, 908

Car movements through possible sequences of car-to-block and block-to-train assignments, car processing activities at a terminal, and possible car holdings at a terminal are represented as di€erent types of links on the time-space network. Four di€erent types of links are used: movement link, processing link, holding link and dummy link. A movement link represents a de®ned block with a corresponding train schedule. A processing link represents car processing activity at the terminal. A holding link represents car holding until the next available train departure at the terminal. Dummy links are used to represent the delivery time window. 3.2.1. Links to represent de®ned blocks.. A movement link for each block can be represented by identifying its origin, destination, departure time of a train that carries the block from its origin, and arrival time of a train that carries the block to its destination. Figure 3 shows a representation of blocks on the time±space network. When a speci®c block can be assigned to several trains at a terminal, we generate separate movement links for each train. For example, block number 230 at terminal 3 can be assigned to two trains (train 927 and 908). In such a case, we generate two movement links (one for block 230 on train 927 and other for block 230 on train 908). Some blocks are de®ned to use multiple train segments bypassing classi®cation works at intermediate terminals. For example, block number 6 uses two train segments of train 908 (one segment from terminal 1 to 3 and the other from terminal 3 to 9) bypassing the classi®cation at terminal 3. In addition, some blocks are de®ned to use more than one train. It simply requires a `block swap' operation that transfers the block to another train without any classl®cation work at a terminal. Each movement link, therefore, corresponds to one or more train segments. The ¯ow on the movement link denotes cars that are assigned to a speci®c block. The ¯ow upper bound can be the block size limit constrained by corresponding classi®cation track length at terminal. Assuming train capacity constraints that limit the train length, which is the sum of corresponding block sizes, is the stronger constraint, block size constraints are not included in the model. 3.2.2. Links to represent terminal processing. We represent each terminal as two separate nodes (IN and OUT nodes) to represent the terminal processing activities. An IN node is used to

Fig. 3. Representation of blocks.

106

Oh Kyoung Kwon et al.

represent train arrival at terminal. An OUT node is used to represent both the train departure from terminal or the time to ®nish necessary terminal processing time for di€erent trac classes. Empirical analyses of terminal performance have shown that di€erent classes of trac have di€erent train connection performance (i.e. high priority trac has more reliable train connection, performance than low priority trac) and di€erent terminal processing times (Kerr et al., 1976). Suppose we have the estimated terminal processing time for each trac class. Then the estimated time to ®nish necessary terminal processing for each trac class can be computed and corresponding nodes can be generated. Processing links are then generated by connecting a node for train arrival and nodes for time to ®nish necessary terminal processing for all trac classes. Flow on the processing link denotes trac volume by trac class handled through yard operation. Actual ¯ow on this link is always equal to the trac volume of a corresponding trac class that arrived on a speci®c train. 3.2.3. Links to represent car holding at terminal. When the number of cars that are expected to be moved on a speci®c train is more than the train's capacity, we need to hold some cars at the terminal until the next available train. For example, the number of cars in terminal 3 that arrived and ®nished the necessary terminal processing before departure time of train 908 is more than the capacity of train 908. Therefore, some cars need to be held at the terminal to connect to train 927 or other trains scheduled to depart later (see Fig. 4). The ¯ow on the holding link denotes cars held in the terminal either waiting for the ®rst available train connection or for the next available train connection if those cars missed their previous train connections due to a train capacity problem. In the model, the ¯ow upper bound is set to in®nity, assuming the terminal always has enough track capacity to hold cars. This assumption implies that the train capacity is the only reason that a car miss a connection in the terminal. This rather strong assumption should be relaxed to represent a more realistic terminal operation. 3.2.4. Service standards and delivery time windows. Individual shipment can be characterized as a group of cars that has the same origin, destination, trac class and departure time (It is also de®ned as a commodity in the model). To consider di€erent service standards for di€erent shipments, the delivery time window is de®ned by both the earliest acceptable arrival time and the latest acceptable arrival at the destination for each shipment. A sink node and a number of dummy links are used to represent possible car arrivals at the destination. We generate one sink node for each shipment. Then we generate dummy links that

Fig. 4. Time±space network representation for car scheduling.

Routing and scheduling

107

connect all nodes for possible train arrivals at the destination within the delivery time window and the sink node. The ¯ow on each dummy link represents cars arriving at di€erent times at the destination terminal for a corresponding shipment. The sum of ¯ows on all dummy links to a speci®c sink node is equal to the volume of the corresponding shipment. The cost of a dummy link is the penalty cost on early or late arrival at the destination. We make two assumptions about the penalty cost function in the model. First, we assume that only late arrivals are penalized by shippers. Second, we assume that the penalty cost is linearly proportional to the lateness. The delivery time window and penalty cost function are represented as follows: tkp ‰tkMAX Š 8p; 8k

…3†

…tkp † ˆ k  …tkp ÿ tkMAX † 8p; 8K

…4†

where k is the per-unit-time penalty cost. In the model, to handle car moves that would not complete their moves to destination during the planning horizon, a supersink node and additional dummy links are generated to absorb all remaining cars at the end of the planning horizon. The cost of dummy links to the supersink is set high, to minimize the ¯ow on these links. 3.3. Problem formulation We formulated a multicommodity ¯ow problem on a time±space network to determine combined routes and schedules of car movements for a given planning period. Since individual commodities (shipments) share common train capacity, we formulate our problem as a multicommodity ¯ow problem. We formulate the multicommodity ¯ow problem using path ¯ows. The following notation is used for a path ¯ow formulation. ckp : cka : …tkp ): fkp : xa : yt : dk : ut : pa : ta : K: Pk : P: V: A: T:

per unit cost of commodity k on path p per unit cost of link a per unit penalty cost of commodity k by using a path p ¯ow of commodity k on path p size of block a length of train segment t demand of commodity k capacity of train segment t indicator variable for car-to-block assignment 1 if itinery p uses block a; 0 otherwise indicator variable for block-to-train assignment 1 if block a is connected to train t; 0 otherwise set of commodities set of paths from the origin to the destination of commodity k set of paths of all commodities …ˆ fP1 ; P2 ;    ; PK g† set of nodes set of links (including de®ned blocks) set of train segments

3.3.1. Objective function. We would like to ®nd the optimal set of trip plans for cars so as to maximize the achievement of established service standards which are given. The objective of the model is to ®nd the optimal pattern of commodity ¯ows on the speci®ed time±space network and to build corresponding trip plans so as to minimize the total penalty costs (which is equivalent to maximizing adherence to service standards). It is assumed that train cost, car handling cost and car time cost are ®xed during the planning period. The objective function becomes: XX ckp fkp …5† MIN k2K p2pk

108

Oh Kyoung Kwon et al.

where, the path cost ckp is the penalty cost by using path p and can be represented as X cka ˆ …tkp † ckp ˆ a2p

ˆ max f0;   …tkp ÿ tkMAX †g

…6†

3.3.2. Demand constraints. To ensure that all cars reach their destinations, the following demand constraint is required for each commodity. X fpk ˆ d k 8k 2 K …7† p2Pk

3.3.3. Car-to-block and block-to-train assignments, and train capacity constraints. A car moves from its origin to its destination via a sequence of blocks and trains. The car-to-block and blockto-train assignments are explicitly considered in the model for realistic representation of rail operations. In the formulation, an indicator variable pa is used to represent car-to-block assignment and another indicator variable ta to represent block-to-train assignment. The size of block a…xa ) and the length of train segment t…yt ) can be represented using the path ¯ow variables. XX pa fpk …8† xa ˆ k2K p2Pk

yt ˆ

X a2A

3.3.4. Path ¯ow formulation. represented as follows.

ta xa ˆ

X a2A

0 ta @

XX k2K p2Pk

1 pa fpk A

…9†

The path ¯ow formulation of the multicommodity ¯ow problem is MIN

XX k2K

s:t:

X p2Pk

X a2A

0 ta @

XX k2K p2Pk

fpk 5 0

p2Pk

fpk ˆ d k

ckp fpk

…10†

8 2 K… k †

…11†

1 pa fpk A 4 ut

8t 2 T …wt †

8p 2 Pk ; 8k 2 K

…12†

…13†

The path ¯ow formulation of this multicommodity ¯ow problem has a very simple constraint structure. The problem has a single constraint for each train segment t which states that the sum of car ¯ows using train segment t is at most the capacity of train ut . The sum of car ¯ows using train segment t can be obtained from the car-to-block assignment (8) and the block-to-train assignment (9). Moreover, the problem has a single constraint for each commodity k which states that the total car ¯ow on all the feasible paths connecting the source node sk and the sink node tk of commodity k must equal the demand dk for this commodity. We de®ne a dual variable  k for each commodity k and another dual variable wt for each train segment t. 3.4. Column generation solution procedure Column generation technique has been applied in many areas such as railroad operations (Florian et al., 1976; Crainic and Rousseau, 1986), airline crew scheduling (Crainic and Rousseau,

Routing and scheduling

109

1987; Barnhart et al., 1993), urban transit crew scheduling problem (Desrochers and Soumis, 1989), and vehicle routing problem with time windows (Desrosiers et al., 1984; Desrochers et al., 1992). The column generation algorithm to solve the above multicommodity ¯ow problem is implemented as follows: Step 1. Initialization: Choose an initial set of paths as an initial basic feasible solution. Step 2. Restricted master problem: Solve RMP to optimality using the revised simplex method. It will determine a set of dual solutions wt and  k . k k Step 3. Column generation: Solve a shortest path problem from source P node s to sink node t k for each commodity k with respect to the modi®ed costs ca ‡ wt . t2a

If for all commodities, the length of the shortest path for that commodity is greater than or equal to  k , the current solution is the optimal solution. Otherwise, add paths that have negative reduced cost to RMP and go to Step 2. 3.5. Inputs and outputs of the model Table 3 summarizes the inputs to the model. The operating plans such as train schedules, blocking plan and train make-up plan are inputs to the model. When a set of car schedules obtained from the model is not satisfactory, we can obtain another set of car schedules that is more satisfactory using an iterative procedure by changing input operating plans. In addition, terminal processing times, service standards, and predicted demand during the planning horizon are input. The model requires the predicted demand data during the planning horizon. The operating plans, terminal processing time and service standards are used to construct the time±space network. The penalty cost information is used to de®ne the cost of dummy links that represent the service standards. Table 4 summarizes the output from the model. The main output from the model is the trip plan (car schedule) information that will be used to make customer commitments. The model generates shipment-based trip plans for shipments from di€erent shippers at di€erent times of the day on di€erent days of the week. The model computes the train capacity utilization for each train during the planning horizon. It allows more e€ective planning of train capacity by ®nding critical capacity bottlenecks of the Table 3. List of the inputs to the model Operating plans *Train schedule (speci®ed by each train segment) departure and arrival terminals designed train capacity *Blocking plan block de®nition (without speci®cation of ®nal destinations) *Train make-up plan block-to-train assignment Terminal processing time estimated terminal processing time by trac class Service standards for shippers delivery time window speci®ed by shipper penalty cost on early or late arrival at destination speci®ed by shipper Demand during planning horizon known and predicted demands by shipper

Table 4. List of outputs from the model Trip plan information by shipper by day of week by departure time at the origin terminal Train capacity utilization by train segment by day of week

110

Oh Kyoung Kwon et al.

system. The model also computes the terminal handling volume for each terminal at di€erent time of the day on di€erent day of the week. With the trip plan information, these information will help terminal managers to build the more e€ective terminal work plans. 4. CASE STUDY

This section presents the description and results of the case study. The dynamic freight car routing and scheduling model developed in the research has been tested on a hypothetical network based on the sub-network of a major U.S railroad. The capability of the model to produce achievable and clearly di€erentiated schedules of di€erent trac classes is discussed. By doing a sensitivity analysis on di€erent trac mixes (i.e. the shares of di€erent trac classes), what portion of trac can be provided a high quality service is also discussed. The model is coded using IBM's OSL (Optimization Subroutine Library) and the C programming language. All computational tests were run on an IBM RS 6000/370 workstation. 4.1. Case description The case network has 12 terminals. 16 trains are providing car-load (or general merchandise) train service on the network (Fig. 5). The train schedule for each train is speci®ed in terms of a set of departure and arrival times along with its train route. For each train, the number of locomotives, which determines its train capacity in terms of the maximum number of cars it can haul, is speci®ed. The blocking plan speci®es 59 blocks. The network serves 56 markets segmented by origin, destination and trac class. Trac is classi®ed into high and low priority trac. Total trac volume for a one-week period is 9712 cars. Daily average trac volume is 1387 cars for the entire network. In the network, a corridor between terminal 3 and terminal 9 is somewhat congested and causes car delays due to train capacity problems. For the case study, the delivery time window and penalty cost function are de®ned as follows. We use the shortest path time from the origin to the destination as the service standard tkMAX (i.e. the latest acceptable delivery time) for each commodity k. We assumed that the per car terminal processing times for high and low priority cars are 8 h and 16 h, respectively. Since terminal processing times are di€erent, feasible train connections are different although they arrive at a terminal at the same time. As a result, the shortest path times of di€erent trac classes for the same O±D pair are di€erent. It means that the service standards of di€erent trac classes for the same O±D pair are di€erent. The high priority class has a faster service standard than the low priority class. A di€erent penalty cost k is assumed for trac class of commodity k. The penalty cost per hour late for the high priority class is $9. The penalty cost per hour late for the low priority class is $3. A railroad can use its own set of service standards and a di€erent penalty cost function.

Fig. 5. Train service frequency of case network.

Routing and scheduling

111

Several test cases that have di€erent trac mixes (i.e. shares of high and low priority trac) are de®ned. With P1 as the base case, they are designed to examine the sensitivity of the model output to the trac mixes. Table 5 describes eight test cases examined. 4.2. Analysis results Table 6 summarizes the sizes of case problems in terms of number of commodities, number of nodes, and number of links; and the computational performance in terms of number of iterations to reach the optimality, total number of columns generated, and computation time in seconds. For all problems, the number of commodities is 1226 and the number of nodes is 2946. As was discussed in Section 2, one of the problems of current car scheduling practice is that it does not consider train capacity constraints in generating car schedules. In current practice, a car scheduling system produces and maintains a ®xed set of car schedules, and then assigns trac on that ®xed set of car schedules. This practice at best provides a warning that some trains are oversubscribed. To examine the range of capacity utilization during a planning period and possible capacityrelated problem under di€erent car scheduling practices, we compute the maximum and minimum levels of capacity utilization during a one-week period for each train segment based on the result of assigning trac on a set of car schedules.  n y tmax ˆ max t nˆ1N ut  n y min ˆ min t t nˆ1n ut where, tmax is the maximum level of capacity utilization for train segment t, tmin is the minimum level of capacity utilization for train segment t; ut is the capacity of train segment t; ynt is the train length of train segment t at day n, and N is the planning period. Consider a case problem P1. We compare the projected train capacity utilization by train segment during the planning period when a railroad uses a ®xed set of car schedules without considering train capacity constraints and when it uses the optimal set of car schedules generated from the model. Suppose a railroad uses a ®xed set of car schedules that are based on the shortest possible schedule for each O±D pair, which is a sequence of car-to-block and block-to-train from the origin Table 5. Test cases with di€erent trac mixes Problem

High priority (cars)

Low priority (cars)

High priority share (%)

3068 3244 3784 4484 5424 5884 6724 7362

6644 6488 5928 5228 4228 3828 2988 2350

31.6 33.2 39.0 46.2 55.8 60.6 69.2 75.8

P1 P2 P3 P4 P5 P6 P7 P8

Table 6. Probelm size and computational performance Problem

No. of links

No. of iterations

No. of columns

Computation time (s)

P1 P2 P3 P4 P5 P6 P7 P8

27,238 27,214 26,461 26,236 24,722 24,510 24,110 23,462

10 9 8 9 9 10 9 9

4060 4249 4012 4140 4137 4069 4103 4067

1563 1442 1227 1392 1298 1391 1249 1204

112

Oh Kyoung Kwon et al.

to the destination that results in the shortest O±D trip time. To project train capacity utilization for each train segment during the planning period, we assigned the trac volume of each O±D at di€erent departure day and time to its corresponding shortest-time path without considering train capacity constraints. Figure 6 shows the range of train capacity utilization for each train segment during the planning period when trac is assigned on a ®xed set of car schedules. Several train segments are highly over-subscribed and others are under-subscribed. This is mainly because this car scheduling practice does not consider train capacity constraints. If there are over-subscribed trains, cars at corresponding terminals are more likely to miss the train connections at terminals, and to have long delays. A railroad needs more controls on car-totrain connections at the terminal level, which is done usually without considering the impact on

Fig. 6. Train capacity utilization with shortest-time path based car schedule.

Fig. 7. Train capacity utilization with optimal car schedules from the model.

Routing and scheduling

113

Fig. 8. Train capacity bottlenecks.

system level service performance, such as O±D trip time and on-time performance. For some train segments that are highly over-subscribed, it may not be feasible to operate trains of such long length. The dynamic car routing and scheduling model developed in this research resolves this problem by explicitly considering train capacity constraints. Figure 7 shows the range of train capacity utilization for each train segment when trac is assigned on the schedules generated from the model. There are no over-subscribed trains during the planning period. The analysis of capacity utilization allows more e€ective planning of train capacity. From the results of capacity utilization by train segment over the planning horizon, critical train capacity bottlenecks that were fully utilized over a planning period or only during a certain peak days could be found (Fig. 8). By increasing the capacity of selected bottlenecks, a railroad may use the additional capacity increase to optimal service improvements. The major output from the model is car schedule information. The model produces distinct car schedules for di€erent departure times at origin, for di€erent days of week for each market, for di€erent trac classes, and for di€erent O±D pairs. To compare the di€erence in planned service levels for di€erent classes of trac, the mean and standard deviation of lateness by trac class are computed. The lateness is measured by max f0; tkp ÿ tkMAX g, i.e. the di€erence between the scheduled O±D trip time and the latest acceptable delivery time. For the case problem P1, mean lateness is 0.1 h and standard deviation of lateness is 0.9 h for the high priority trac. Mean lateness is 10.9 h and standard deviation of lateness is 31.4 h for the low priority trac. It suggests that a railroad can use the model to plan fast and highly reliable service for high priority trac and slower and less reliable service for low priority trac. Table 7. Optimal solutions for case problems High priority

Problem P1 P2 P3 P4 P5 P6 P7 P8

Low priority

Min. penalty cost (dollar)

Mean lateness (h)

Std dev lateness (h)

Mean lateness (h)

Std dev lateness (h)

220,495.2 222,674.7 222,674.7 224,588.7 238,542.0 242,761.5 255,185.5 262,529.3

0.1 0.1 0.1 0.1 0.5 0.6 0.8 0.9

0.9 0.9 0.9 0.8 2.2 2.7 3.4 3.9

10.9 17.3 12.3 14.1 16.7 18.4 23.0 28.5

31.4 30.8 32.7 34.6 37.6 37.7 43.1 45.7

114

Oh Kyoung Kwon et al.

We did a sensitivity analysis on trac mixes by examining all eight test cases that have di€erent shares of high and low priority trac. Table 7 summarizes the optimal solutions (minimum penalty cost, mean and standard deviation of lateness for di€erent trac classes) for case problems. High priority trac is provided a highly reliable service. As a railroad tries to provide a highly reliable service to more trac, however, service level of high priority trac also begin to deteriorates. Service level of low priority trac, on the other hand, signi®cantly deteriorates as the share of high priority tra€1c increases. In addition, the di€erence between the service levels of high and low priority trac becomes larger as the share of high priority trac increases. 5. CONCLUSIONS

In summary, this paper has dealt with two well-known problems related to freight car scheduling, namely the lack of train capacity constraints and the inability to adjust trip plans for peak periods based upon priorities for speci®c trac classes. Because of these limitations, car scheduling systems tend to generate many infeasible trip plans and cannot ensure that high priority trac gets the best service during peak periods. Dynamic car scheduling adresses both of these problems; car-to-block assignments take into account train capacity and lower priority cars are deferred to later trains. While the technique presented in this paper requires substantial advance information and extensive computer power, the case study demonstrates that powerful operations research techniques can be used to create more realistic trip plans and to maximize service levels by taking into account the service requirements of di€erent classes of trac. The model can also be used to examine the relationship among capacity, trac mix, operating plans, and service capabilities. For example, it could be used to optimize service improvements after adding train capacity or to produce a new set of car-to-block assignments following a change in the operating plan. By iterating over various operating plans, a railroad could use the model to obtain a set of car schedules that best achieve the established service standards for current customers. The model could be enhanced in various ways, including more realistic representation of terminal operations; use of non-linear penalties for late shipments; use of limits on block size; and consideration of stochasticity in demand and operations. Given the very large size of rail networks, however, the most important consideration may be to streamline data requirements and to improve the eciency of the procedures so that actual rail networks can be handled within a reasonable amount of time. In general, the linkage with the rest of the railroad's information system will be very important. The model needs regularly updated information on demand, train capacities, and terminal processing times, and the model must be coordinated with terminal control systems in order to implement a dynamic car-to-block assignment procedure. In closing, it should be noted that certain elements of dynamic car scheduling could be implemented using less complicated methodolody. Car-to-block assignments and train cuto€s, for example, could be varied by day-of-week and trac class based upon simple heuristics, past experience with train capacity and processing times, and projected trac volumes for the coming period. Standard car scheduling logic would then produce more realistic trip plans, even without any formal attempt to optimize performance.

REFERENCES Barnhart, C., Johnson, E., Anbil, E. L. and Hatay, L. (1993) A column generation technique for the long haul crew assignment problem. In Optimization in Industry, Vol. II. John Wiley and Sons, London. Baugher, R. (1994) Remarks considering the status of trip planning and car scheduling systems in the railroad industry. Proceedings of the Transportation Research Forum, Daytona Beach, pp. 218±222. Chih, K. C., Bodden, M. P., Hornung, M. A. and Kornhauser, A. L. (1990) Routing and inventory logistics system: a heuristic model for optimally managing intermodal double-stack trains. Journal of Transportation Research Forum 31(1), 50±62. Chih, K. C., Hornung, M. A., Rothenberg, M. S., Kornhauser, A. L. and Workman, J. D. (1992) Implementation of a real time locomotive distribution system. In Computers in Railways III, Vol. 2, pp. 38±49. Computational Mechanics Publications, Boston. Crainic, T. and Rousseau, J. (1986) Multicommodity, multimode freight transportation: a general modeling and algorithmic framework for the service network design problem. Transportation Research B 20(3), 225±242.

Routing and scheduling

115

Crainic, T. and Rousseau, J. (1987) The column generation principle and the airline crew scheduling problem. INFOR 25(2), 136±151. Crainic, T. G., Gendreau, M. and Dejax, P. (1990) A Dynamic Stochastic Model for the Allocation of Empty Containers, Publication No. 713. Centre de recherche sur les transports, University of Montreal. Desrochers, M. and Soumis, F. (1989) A column generation approach to the urban transit crew scheduling problem. Transportation Science 23(1), 1±13. Desrochers, M., Desrosiers, J. and Solomon, M. (1992) A new optimization algorithm for the vehicle routing problem with time windows. Operations Research 40(2), 342±354. Desrosiers, J., Soumis, F. and Desrochers, M. (1984) Routing with time window by column generation. Networks 14, 545± 565. Florian, M., Bushell, G. and Ferland, J. (1976) The engine scheduling problem in a rail network. INFOR 14(2), 121±138. Hornung, M. and Kornhauser, A. L. (1979) An analytic model for railroad network restructuring. Report 79-TR-11, Princeton University. Kerr, P. A., Martland, C. D., Sussman, J. M. and Philip, C. E. (1976) Models for Investigating Train Connection Reliability at Rail Classi®cation Yards, Studies in Railroad Operations and Economics, Vol. 14. Massachusetts Institute of Technology. Missouri Paci®c Railroad (1977) Missouri Paci®c's Computerized Freight Car Scheduling System: System Functional Requirements, Report No. FRA-OPPD-77-10. Department of Transportation, Federal Railroad Administration, U.S. Powell, W. B., She, Y. and Nickerson, K. S. (1988) Maximizing pro®ts for North American van lines' truckload division: a new framework for pricing and operations. Interfaces 18(1), 21±41. Van Dyke, C. D. (1992) Trip planning and seamless rail transportation. Proceeding of the Transportation Research Forum 6, 243±263. Van Dyke, C. D. (1994) Status of trip planning and car scheduling systems in the railroad industry. Proceedings of the Transportation Research Forum, Daytona Beach, pp. 218±235. White, W. W. (1972) Dynamic transshipments networks: an algorithm and its application to the distribution of empty containers. Networks 2, 211±236.