Train Repathing in Emergencies Based on Fuzzy Linear Programming

Train pathing is a typical problem which is to assign the train trips on the sets of rail segments, such as rail tracks and links. This paper focuses on the train pathing problem, determining the paths of the train trips in emergencies. We analyze the influencing factors of train pathing, such as transferring cost, running cost, and social adverse effect cost. With the overall consideration of the segment and station capability constraints, we build the fuzzy linear programming model to solve the train pathing problem. We design the fuzzy membership function to describe the fuzzy coefficients. Furthermore, the contraction-expansion factors are introduced to contract or expand the value ranges of the fuzzy coefficients, coping with the uncertainty of the value range of the fuzzy coefficients. We propose a method based on triangular fuzzy coefficient and transfer the train pathing (fuzzy linear programming model) to a determinate linear model to solve the fuzzy linear programming problem. An emergency is supposed based on the real data of the Beijing-Shanghai Railway. The model in this paper was solved and the computation results prove the availability of the model and efficiency of the algorithm.


Introduction
Nowadays, railway transportation needs to become more and more competitive, so new features are required to improve the planning process. There are two approaches to improve the capacity of the railway infrastructure. One is to enhance the construction of railway infrastructure, such as extending the rail tracks and improving performance of the signaling systems. The other is to utilize the existing infrastructure more efficiently. It is generally believed that the railway operation work can be divided into three levels, strategic level, tactical level, and operational level [1]. The strategic level is about transportation pattern selecting, which is related to the national transportation policy. And the middle one, tactical level, is on the line plan designing, which is also called service plan, determining the trains number, paths, stops, and so forth.
And the line plan is divided into several parts, which are the origin and destination stations determining, the trains number calculation, the train pathing, and the stops setting. Among them, train pathing is the most important step to design the whole line plan, which is the basis of stops setting. Generally, the paths of the trains are relatively steady, according to the yearly railway line plan. However, there are occasional railway accidents which reduce the capability of the railway line and make it impossible for the trains to run on the planned paths. It is necessary to find the substitute path for the trains. On the other hand, with the increase of the available rail, the topology structure of the railway network is changing profoundly. A new railway network is forming gradually, which makes it possible that more than one path can be found for the trains and train trips can be allocated on the paths.
The organization of this paper is as follows. Following this introduction, we first discuss the related works on the problem in Section 2. Then we build the train pathing model based on fuzzy linear programming in Section 3. In Section 4, we analyze the fuzzy coefficients in the train pathing model and design a new algorithm to solve the fuzzy linear model. Furthermore, we study the values range of the fuzzy coefficients, designing a method to describe the uncertainty of the fuzzy characters of the coefficients. We prove the availability of the 2 The Scientific World Journal model and the efficiency of the algorithm with a computation case in Section 5. In Section 6, we draw a conclusion.

Related Works
Caprara et al. [2] and D' Ariano and Pranzo [3] grouped the major published railway operation as line planning, timetabling, platforming, rolling stock management, shunting, and crew planning. Train pathing is a key step of line planning, which belongs to the tactical level. Train timetables are usually specified after the train pathing [4]. So it is a must to determine the path plan before timetabling, especially in emergencies.
There are two kinds of approaches to solve the train pathing problem in the limited number of publications, the mathematical approaches and heuristic approaches.
Carey [5] presented a mathematical model, algorithms, and strategy for pathing trains of different speeds and stopping patterns for a double track rail line dedicated to trains in one direction. The model included track assignment to trains within stations (choice of platform) and between stations (choice among multiple lines). Station layout was also considered in the model. He applied the model to a small network and found acceptable solution times. He further extended the model from one-way to two-way tracks [6]. Carey and Lockwood [7] developed a model and algorithm for the TPP for one train line with station stops and solved instances of 10 trains and 10 links. All the trains on the line travel in the same direction. D' Ariano et al. [8] hired a branch-and-bound algorithm for sequencing train movements, while a local search algorithm is developed for rerouting optimization purposes. And they analyzed different types of disturbances, including train delays and blocked tracks. The authors of this paper defined generating paths in emergencies as ashortest path problem and proposed the method to solve it, innovating Dijkstra algorithm [9]. Fuzzy programming is introduced to solve the train routing and pathing problem recently. And Yang et al. [10] considered the fuzziness in the railway transportation system and proposed a min-max chance-constrained programming model to solve the freight train routing problem with fuzzy information.
Heuristic is also hired in train pathing problem solving in recent years. Carey and Crawford [11] developed a heuristic to solve for a plan that brings trains through a rail corridor with multiple lines and multiple stations. They started from algorithms that schedule trains at a single train station and extend these to handle a series of complex stations linked by multiple one-way lines in each direction, traversed by trains of differing types and speeds. The algorithm was based on a set of rules to resolve the conflicts. Lee and Chen [12] also presented a heuristic that includes both train pathing and train timetabling and has the ability to solve real-sized instances. This heuristic allowed the operation time of trains to depend on the assigned track. Blum and Eskandarian [13] used a delegation model to improve agent collaboration as an effective way to improve the efficiency of an A-Team for railroad flow optimization, including train pathing and railroad routing. Erlebach et al. [14] studied the method to assign trains to satisfy scheduled routes in a cost efficient way and proposed approximation algorithms. Törnquist [15] presented a heuristic approach for railway traffic rescheduling during disturbances and a performance evaluation for various disturbance settings using data for a large part of the Swedish railway network. Dorfman and Medanic [16] developed a local feedback-based travel advance strategy, using a discrete event model of train advances along lines of the railway to quickly handle perturbations on the railway network, including train pathing. Caimi et al. [17] addressed the problem of generating conflict-free train schedules on a microscopic model of the railway infrastructure and developed an alternative model using the sequence of resources that each train path passes, encoded in a resource tree. They showed that the number of maximal conflict cliques is linear in the number of train paths and verified the model with real-world data from the Swiss Federal Railways. Lusby et al. [18] described a set packing inspired formulation of train routing problem and developed a branch-and-price based solution approach. They verified the model with the test instance arising in Germany and supplied by the major German railway company, Deutsche Bahn. Pellegrini et al. [19] proposed a mixed-integer linear programming formulation for tackling this problem, representing the infrastructure with fine granularity. They tackled randomly generated instances representing traffic in the control area named triangle of Gagny and instances obtained from the real timetable of the control area including the Lille-Flandres station (both in France) and found that negative impact of a rough granularity on the delay suffered by trains was remarkable and statistically significant. Li et al. [20] constructed a train routing model combined with a train scheduling problem, which is a 0-1 mixed-integer nonlinear programming problem. They designed a tabu search procedure to further improve the route schemes. Train repathing problem is similar to the train routing problem in several aspects. So their approach also gave us some enlightenment.
All these related works gave us much enlightenment when we built the train repathing model and designed the algorithm to solve it. However, the fuzzy characteristics in train repathing problem were not considered in these publications, and the rail segments capability is not set to be the restriction when building the model in most of the publications. So we also focus on the processing of fuzzy coefficients processing in the train repathing model.

Train Repathing Model
The objective is to reduce the total cost as much as possible. The input data include the paths between two stations, the capability of the rail segments affected and the stations affected, and all the trains information needing changing paths.

Basic Assumption
(1) Assumption on crew. We took it for granted that the crew resource is enough to cope with the trains flow distribution.
The Scientific World Journal

3
(2) Assumption on rails availability. We took it for granted that all the trains can run on all the types of rails.

Graph Based Description of Rail Networks.
= ( , ) is a railway network that is constructed of all kinds of rails. is the set of vertexes in the railway network. is the set of edges in the railway network. includes the stations of the existent normal speed railway, the existent intercity railway, and the newly built railway. And not only includes the rail segments of the different types of railway, but also includes the links between different types of rails.

Available Paths Set
Generating. According to the method in our previous research paper [9], we can generate the paths set when an emergency occurs. The calculating steps are as follows.
Step 1. To find the shortest path with Dijkstra algorithm between the origin and the destination and put the shortest path, length of the shortest paths, and nodes on the shortest path into the path array , distance array , and node array .
Step 2. To find neighbor nodes of the shortest path in array and put them into another array .
Step 3. To calculate the distance of -shortest path of V -V -V -V , which pass through neighbor V and put it into array .
V is a node on -shortest path.
Step 4. To order the lengths values in array . To select the smallest one and put the relative path in array . To add 1 to the number of the shortest paths.
Step 5. If the total capability of the all the shortest paths reaches to the required capability, stop the calculation. Else, go Step 2.
Then we can generate a set of shortest paths for the train operation and the sum of capabilities of all the paths in the path set is enough for train repathing work.

Optimization
Objectives. The cost can be divided into three parts, the running cost, transferring cost, and social effect punishment cost. The running cost is an inevitable cost, which occurs during the running process.
When distributing the trains on paths, which consist of different kinds of rails, the transferring cost and the social effect punishment cost occur. In this paper, transferring cost is used to denote the cost occurrence when a train transfers from one type of rail line to another type of rail line. Transferring cost includes equipment cost, technology operation cost, and abrasion cost [21]. Among them the equipment costs and abrasion costs are very difficult to calculate accurately. The technology operation cost is related to profit of the railway bureau and the technology operation quantity. The transferring cost also depends on the rail grade, train type, and the fact whether a ferry-locomotive is needed, which is very difficult to calculate exactly. But we can set the value range of it.
The social effect punishment cost is related to the passenger satisfaction, which is also difficult to figure out and the value range can be defined.
The transferring cost and social effect punishment cost are more characterized by fuzziness in actual transportation operation, especially in emergencies. The coefficient can be expressed by some fuzzy functions, such as triangular fuzzy function and trapezoidal fuzzy function. All the optimization objectives can be compromised to some extent. As long as the values of the optimization objectives reach into a certain value range, it is considered that the optimization process is successful. We designed the method to cope with the fuzzy character of all the objectives and the algorithm to solve the trains flow distribution problem.

Train Distribution
(1) (2) Running cost: (3) Social effect punishment cost: Then, we normalized the three kinds of cost by adding the coefficients, , , and . Then the total cost of the model is as follows: It is equal to

Constraints of the Model.
There are many constraints when assigning all the trains to the available paths. The main constraints to be considered are as follows.
(1) Segments capacity constraints. The number of trains running through segment cannot surpass its capability. Consider is the capability of segment .
(2) Stations capacity constraints. The capability of every station in the railway network is bigger than the number of all the trains inbound and outbound. Consider (3) Nonnegativity constraints: We can see that the model is a linear integer programming model.

Fuzzy Coefficients Processing and Train Repathing Model Solution
There are numerous fuzzy numbers in the model built up in Section 3.5. So we first present the method to process fuzzy numbers of the model. Then based on the processing, we propose the steps to set the model with optimization software LINGO 11.0.

Fuzzy Coefficients Processing.
A fuzzy number is a generalization of a regular, real number in the sense that it does not refer to one single value but rather to a connected set of possible values, where each possible value has its own weight between 0 and 1. This weight is called the membership function. In the engineering computation field, many elements cannot be described with definite numbers, while we can tell how much they belong to a certain range. The degree can be represented by fuzzy numbers. It is a powerful tool to describe this kind of element. Generally, fuzzy linear programming models can be divided into three groups. The first group of models has fuzzy resources in the constraints of the model. That is to say, the resources of the constraints are fuzzy which should be described with the fuzzy membership functions. The second group of models has the fuzzy coefficients of the objectives. The fuzzy numbers occur in the optimization goal equations. The last group has the characteristics of the above two groups. They both have the fuzzy resources constraints and the fuzzy objective coefficients.
In this paper, there are several objective coefficients which are uncertain and difficult to obtain and we model the problem as the second group. Transferring cost is a typical fuzzy number and it is very difficult to get. When disturbances occur, the price assessment of transferring cost is with more fuzziness. Fuzzy factors could be defined with fuzzy numbers. Typical fuzzy membership functions are triangular function, trapezoid function, and so on. When the fuzzy degree is out of control with the typical definition of the fuzzy factors, we should improve the function to deal with the situation.
It is clear that the train distribution model is a fuzzy linear integer programming model. The tolerance method is the most typical method. In this section, we introduce the tolerance method and present a new method to solve the fuzzy linear integer programming model. And we propose a method to enlarge the fuzzy coefficients support.
In some occasions, the boundaries of the value range are also difficult to determine, especially in emergencies. So we design a method, hiring a function ( ) to expand the value range.
Set to be the optimistic value of and to be the pessimistic value. Then ≤ ≤ , ≥ 0, ≥ 0, and is the average value of , as shown in Figure 1(a). Set The change is shown in Figure 1(b).
The Scientific World Journal

a) Original range of the fuzzy variables
The longitudinal axis is being moved to the right (c) Original range of the fuzzy variables after the longitudinal axis is moved So is symmetrical by axis, as shown in Figure 1(c). Then, ( ) is hired to expand the value range of . Consider It can be seen in Figure 1(d).
That is to say, So the fuzzy coefficients value range is as follows after steps above: It can be seen that the expanded value range is related to the original range and the average value of the fuzzy coefficients. This method can deal with the fuzzy coefficients flexibly, making the coefficients close to the real cost as much as possible.

Steps to Solve Train Distribution Model.
It is obvious that the programming model is a fuzzy linear programming with fuzzy objective coefficients. Since some coefficients of the objective are fuzzy, we must deal with them first. We design the method to express the coefficients with the pessimistic value, average value, and optimistic value. Since is the optimistic value of and is the pessimistic value of , we set to be the average value of . We assume that = 1 , where 1 and 2 are the weights of the optimistic value and pessimistic value, respectively. We can see that the fuzzy linear programming can be transferred into different deterministic linear programming with different pairs of 1 and 2 . Then the steps to solve the problem are as follows.
Step 3. Set 1 to be 0.1; then solve the linear programming with LINGO 11.0.
Step 4. Repeat Step 2 with 1 increasing 0.1 a time.
Step 5. Record the value of 1 , 2 , and the computing results.
Step 6. Go to Step 2 and repeat the process until 2 = 1.5.
Step 7. Select the satisfying solution for the model.

Case Scenario.
It is assumed that there is an emergency at DK856 + 321 on the Beijing-Shanghai high speed railway. Then the trains cannot run through the segment of East Xuzhou to Bengbu. And the time required to recover is 4 to 8 hours. The railway network around the emergency place is shown in Figure 2. We will study the trains flow distribution problem on the down-going direction.

Trains to Be
Repathing. Trains arriving at Xuzhou joint from 8 to 12 are as follows.

Available Paths.
According to the method in our previous paper [9], we generate the available paths according to the succinct description in Section 3.3, shown in Table 1 and Figure 3.
And lengths of every segments on the paths are shown in Table 2.

Specification of the Train Distribution Model.
We can see that there are three available paths in the partial railway network, which are marked (1), (2), and (3), as shown in Figure 3. Eight stations and six segments are in the network. Now the goal is to allocate the trains on the three paths in Table 1.
It should be noticed that there is little transferring cost at Hefei and Nanjing on path (3), for the segment between Hefei and Nanjing is a high speed segment. But the transferring operation is in the station, and the cost is very little. So this transferring cost is not taken into consideration in this model.

Solutions
(1) Solving the problem in original value range.
We compute the results, respectively, while 1 is assigned to be 0.1 to 1.5. The results are shown in Table 3(a).
It can be seen that the fuzzy coefficients are bigger than the average value. It means that the smaller the values of the fuzzy coefficients are, the bigger the objective value is. It is obvious that the relative results are not satisfying. So the results in shadowed part in Tables 3(a) and 3(b) are the unreasonable solution.
When 1 is 0.5, the fuzzy coefficients are equal to their average value. This is the most possible situation of the reality, in which the fuzzy membership is 1. The total cost is 1.2778E06 at this point, which is the highest.
The difference between the objective value calculated with the original value range and that calculated with the variable value range becomes obvious from the point where 1 is 0.7. And the difference is becoming more and more obvious till the point where 1 is 1.5. The objective value is 1.2467E06 with the original value range and the objective value is 1.2227E06 with the variable value range. So we can see that the objective value is optimized when we make the value range variable. The solution with the variable value range is also 1 1 = 10, And we can see in Figure 5 that all the trains are allocated on path 1 and path 2. No train is allocated on path 3. It is related to the required capacity which is 40, when searching for the available paths. However, the number of trains needing to be allocated is 20. It is necessary to set the required capacity to be bigger than the number of trains needing to be allocated. For one thing, the accurate number of the trains needing to be allocated is difficult to forecast. For another, it is a must to reserve extra capacity to deal with the uncertain situation of the reality.
The methods presented in this paper can give the optimized solution, satisfying the fuzzy membership constraint. So we can deal with the fuzzy character of the trains flow distribution model to approach the reality as best as we can. We can propose several available solutions, at different fuzzy membership level for the managers to make the decision.

Conclusion
This paper proposes a feasible, effective approach to solve the fuzzy programming problems in railway transportation. We first present a model for distributing trains on paths, offering the theory basis for train dispatching on China railway network. Then we integrate the transferring cost, running cost, and social effect punishment cost to design the objective of the train distribution model. The character of the coefficient of the costs is described with fuzzy membership function. And we present a method to expand the fuzzy number value range, supporting the algorithm to solve the model. A triangular membership function is designed to turn the fuzzy programming model into definitive programming problem. And the detailed steps to solve the model are given.
The method presented can also be used to solve other problems in railway transportation organization. We can deal with the fuzzy character of the passenger transportation and freight transportation requirement in service planning. It also may work in fuzzy objectives in the Electric Multiple Units timetable designing, the work time in crew schedule designing. And in solving the routing problem of trains at stations, we can also hire the method to describe the fuzzy character when the operation time has the fuzzy characters.