2. Literature Review
Traditionally, the problem of routing the movement of objects is based on solving the problem of determining the shortest distance between origin and destination points [
3]. However, in practice, the parameters of vertices and edges of the transportation network change in time. A solution to this issue was first proposed in 1969 [
4]. In his study, Dreyfus suggested an approach to generate routes at a given start time of objects based on the use of the FIFO (first-in first-out) principle. There are many tools for finding the shortest distance on graphs, such as route planning on the Internet, car navigation system, logistics optimization, modeling of railway transport and urban traffic [
5]. The shortest path search issue is a classical combinatorial optimization issue, and there are many algorithms currently available to solve it [
6]. For example, such classical graph routing algorithms as Clarke and Wright algorithm [
7], Mole and Jameson algorithm [
8], Christofides-Mingozzi and Toth sequential insertion algorithm [
9], sweep algorithm [
10,
11,
12].
In the 1990s, the routing problem on a transportation network was considered based on determining the minimum travel time of an object at the optimal moments of travel start time and arrival time. Orda and Rom [
12], as well as many others [
14,
15,
16,
17,
18,
19] considered this issue in a discrete formulation. However, because of using this approach, an increase in the number of vertices of the transportation network with expected object delay locations is observed in the operational planning of object routes [
20]. If we exclude the FIFO principle and limit the delay time of an object in a vertex of the graph, its routes may contain an infinite number of edges, which in turn does not satisfy the optimality criterion [
21]. Therefore, the solution of the Capacitated Vehicle Routing Problem (CVRP) is considered NP-hard. Most of the algorithms proposed to solve the routing problem on a transportation network are based on heuristic and metaheuristics [
22]. In the field of mathematics, on the one hand, the most effective of the published algorithms are: repeated local search with separation of solution sets (ILS-SP) [
23], knowledge-based local search (KGLS) [
24], hybrid genetic search (HGS) [
25], Slack Induction by String Removals (SISR) [
26] and fast localized ILS optimization (FILO) [
27].
However, under the conditions of implementation of the concept of “total control” by companies, the importance of making operational decisions on the organization and management of traffic flows has increased, and as a consequence, the application of the presented algorithms at a low level of abstraction (more details) is observed. More accurate methods for solving the routing problem on the graph [
28,
29] based on the improvement of discrete optimization of system operation have been proposed. New approaches have been suggested for solving the routing issue, for example, based on the use of the method of branches and bounds [
30,
31], mathematical programming [
32,
33,
34] and dynamic optimization [
35]. At the same time, the methods of transportation network graph formation are improved, which consider the specifics of individual modes of transportation and the functioning of transport infrastructure objects.
The real-time Railway Traffic Management Problem (rtRTMP) is actively discussed in the field of railway transportation. RtRTMP is the problem of detecting and solving time-overlapping conflicting requests made by multiple trains on the same track resources. It typically consists in taking retiring, reordering or rerouting train actions in such a way that the propagation of disturbances in the railway network is minimized. Integer linear programming algorithms are being improved, e.g., for selecting the train route for daily planning of freight trains [
36]. Modern mathematical models and algorithms of train routing in railway transport hubs based on the use of dynamic programming method are proposed [
37,
38,
39]. Algorithms of route pre-processing for each individual train are improved based on the use of ant colony optimization to form a flexible train schedule between rail yards [
40]. The presented universal models have found their application in the design of railway transport nodes and stations, informatization of the tactical level of management and automation of solutions of design and planning tasks in railway transport. We suggest the integrated use of the method of simulation modeling and methods of optimization of traffic schedule, planning of train routes in the railway transport hub [
38,
39,
41,
35,
42,
43,], train processing at the railway station [
44], infrastructure and transport network [
45]. In this case, the traditional graph representation, where rail yards are used as vertices and edges as interchange spans, is used as a tool for transportation network formation.RtRTMP рассматривается при планирoвании shunting route на oснoве испoльзoвания метoдoв маршрутизации на графе. Сoвершенствуются алгoритмы маршрутизации, предлагается макрoмoделирoвание технoлoгии рабoты железнoдoрoжных станции [
37,
46,
47,
48]. Отличительнoй oсoбеннoстью исследoваний является oписание транспoртнoй сети, в кoтoрoй вершинами являются группы railway switch или yard, рёбрами – station track. При этoм рассмoтренный пoдхoд не пoзвoляет oптимизирoвать низкoурoвневые oперации пo выбoру oптимальных shunting route, сoстoящих из нескoльких half-run.
For conditions of lower abstraction level, two groups of methods of forming graph rail yard are distinguished:
1.A separate railway switch is described in the graph as a vertex.
2. A separate railway switch is described in the graph in the form of edges.
3. A combined description of track frail yard sections.
The methods of the first group include the method of describing the railroad infrastructure by a simple directed graph [
49]. However, such a representation of the transportation network does not solve the problem of changing the train direction, and the authors propose to solve this problem at a higher level of logic of the mathematical model. The idea of using Double Vertex Graphs to describe railroad track development was first proposed [
50]. The use of the graph presented by the author makes it possible to determine the optimal routes of train traffic at a railway station with a complex scheme of track development.
The methods of the second group emphasize the way of representing station tracks in the form of one or more vertices of a graph [
51], and such representation of rail yard transportation network is of practical importance for station tracks occupancy management.
The methods of the third group are oriented on combining the presented methods of the first and second groups, based on constructing Double Vertex Graphs and allocation of railway track circuit sections into vertices according to the equivalence classes [
50]. The presented methods have found their application in specialized programs for building simulation models of railway transport. This allowed to consider low-level optimization on shunting route formation, while considering several fundamental constraints related to the change of train direction and route signaling system.
The accuracy and versatility of graph-based routing methods can be improved, for example, when using sweep algorithm on Double Vertex Graphs for the representation of the railway track [
52,
53], the logic of the algorithm for determining the optimal route based on tracking and determining the direction of movement at each iteration for an individual train relative to the switches that limit the track, when the capacity of the draw-out track is limited.
The paper proposes a method of forming Double Vertex Graphs for implementing routing algorithms in complex shunting operations consisting of several half-runs.
3. Railyard routing graph
The transportation network of a railway station is proposed to be described by a connected oriented vector graph with a set of railway switch and railway track connected to each other in accordance with the track development scheme.
The optimal train route through the transportation network can be calculated using various methods [
54]. We propose to use a fast heuristic “sweep algorithm” for transportation routing [
10], the idea of which is based on the sequential verification of the condition for each i-th vertex of the graph
where
Li=0,i ,
Li=0,λi , respectively, the length of the route from vertex
i=0 to the subsequent
i-th and the preceding one
λi.
Vertex i is included in the optimal route only if condition (1) is satisfied. This algorithm allows finding all optimal routes from one or more initial vertices of the transportation network to all other vertices.
3.1. Traditional routing graph
Let
G(P, L) be an undirected graph of regular form. For example,
Figure 2 shows the diagram of a switchboard represented in the form of an undirected graph
G. The edges of the graph are characterized by initial
Pi, final
Pj vertices and length
Lij. Train movement from vertex 1 to vertex 4 is performed along the route R1, which consists of two half-trips. The first half-trip is performed along the route {1; 2; 3}. Then there is a change of direction and the train travels along the route {3; 2; 4}. However, the route from vertex 3 to vertex 4 is not included in the optimal route R2 in case the track development scheme is described by a traditional undirected graph. In the table of optimal routes (
Figure 1), the value of λi is equal to the number of the vertex that precedes the
i-th vertex, and
Lλi,i is the length of the edge between vertices
λi and
i.
Thus, the search for an optimal route from node 1 to node 4 using the traditional approach will result in an erroneous train route. Such a description of the track development scheme graph does not allow planning and optimizing complex train routes through the railway station and shunting operations with changes in train direction.
3.2. Double Vertex Graphs for the representation of the raylway track
Double Vertex Graph D(G, P0) consists of a regular graph G and a bijective mapping of the set of vertices onto itself “0” called the joining mapping [
1], with each vertex having one duplicate, a vertex cannot exist alone. Two vertices forming a pair are called joined vertices.
Figure 2 shows an example of a Double Vertex Graph. The edges of the graph are characterized by initial
Pi,
Pi0 final
Pj,
Pj0 vertices and length
Lij. The movement of a train from vertex 1 to vertex 4 is performed along the route
R1, which consists of two half-trips. The first half-trip is performed along the route {50; 10; 20; 30}. Then a change of direction occurs and the train travels along the route {3; 2; 4; 4; 6}. In this case, the “Path rule” applies before the train starts moving, it must move to the vertex duplicate
Pi,
Pi0, then start its movement along the edge
Lij [
50]. The use of this rule allows tracking the direction of the train’s movement and exclude its angular arrival when forming a route. For example, a train that starts its movement at vertex (5) should move to the right, while a train that starts its movement at vertex (5
0) should move to the left.
However, the route from vertex 3 to vertex 6 is not included in the optimal route
R2 in this case, it is necessary to perform the second iteration with a new set of initial vertices,
Figure 2 shows the initial vertex for the second iteration — (3).
Let us consider variants of determining the optimal route, which includes a draw-out track for changing the direction of the train. Suppose that vertices (3) and (30) are identified as the place where the train stops to change its direction (
Figure 3 and
Figure 4), this case can be represented by two variants.
Variant 1: Optimal route of train shunting on Double Vertex Graph in case of identifying the place of changing the direction of train movement when the final vertices are not known (
Figure 3).
Figure 3 shows that the route from vertex 5 to vertex 6 is part of the optimal route R2, with vertices (5) and (4
0) being the final vertices.
Option #2. Optimal route of train shunting on Double Vertex Graph in case of identification of the place of train direction change at known end vertices (5; 1; 4
0; 6
0) (
Figure 4).
The considered variants can potentially be used in the formation of shunting routes consisting of several half-runs. However, the choice of train stop location is a dynamic variable that depends on the length of an individual train and the capacity of the track section. For example, because of the sweep algorithm, train shunting routes do not include draw-out tracks. This is due to the specifics of marshaling and shunting operations. If a shunting route consists of several half-runs, it is necessary to use draw-out tracks.
3.3. Connectivity graph for the representation of the railway track train shunting
Let
G(P, L) be an undirected non-looped connectivity graph. The edges of the graph are characterized by initial
Pi, final
Pj vertices and length
Lij. The train movement from vertex (5
0) to vertex (6
0) is performed along the route
R1, which consists of two half-trips (
Figure 5). The first half flight is performed along the route {(5
0); (5,1
0); (2,3
0)}. Then there is a change of direction and the train travels along the route {(2,3
0); (4
0,6); (6
0)}.
The convexity graph considered in
Figure 5 connectivity graph can potentially be used in forming a shunting route consisting of several half-runs. When using the connectivity graph, it is necessary to consider the length of an individual train when it stops at a vertex, e.g., vertex (3
0,2) with capacity
L2. Often there are cases when a shunting train goes beyond a traffic light and stops at several minor railroad tracks.
3.4. Proposed Double Vertex Graphs for representation of the draw-out track
The approach we have developed is based on Double Vertex Graph. The idea is to construct undirected loop-free Double Vertex Graphs
D(G, V0) to determine optimal shunting routes consisting of multiple half-runs for multiple train shunting under draw-out track capacity constraints. Each vertex of the graph — a shunting track — is matched with two vertices — a “real” and a “virtual” vertex, e.g., real vertex 2 and virtual vertex 2
0 (
Figure 6).
The virtual vertex is connected to the main railroad track of the switch and the virtual edge (20,3). As a result of this transformation, the optimal route R1 = {1; 20; 3; 2; 4} is formed.
With this graph representation, the use of the “Path rule” to track the direction of train shunting will not be required. The direction of train shunting is determined automatically, depending on the generated optimal shunting route [
55].
6. Conclusion
Nowadays, there are many algorithms for solving the routing problem on graphs. In the field of railway transportation, the considered algorithms are actively used to solve the real-time Railway Traffic Management Problem. The adaptability of such algorithms is achieved by using sufficiently developed ways of representing the railway transportation network at high levels of abstraction, for example, individual rail yards are used as vertices of the graph, and edges — distances.
The analysis of existing specialized methods of graph formation and routing methods on graphs for railway transportation allows us to speak about the advantages of specialized Double Vertex Graphs of transportation routing for a lower level of abstraction, for the level of railway station. This is due to the increased adaptability of using different routing algorithms on graphs in the conditions of planning complex shunting operations on rail yard.
The method of forming rail yard transport network proposed in the paper extends the adaptability of using routing algorithms on graphs for rail yard conditions based on complex use of the developed method of forming Double Vertex Graphs for representation of the draw-out track and algorithm of forming rail yard transport network, which is confirmed by the results of experiments on the simulation model of rail yard in AnyLogic environment. At present, the authors implement the developed method of creating a rail yard transport network within the framework of the information transport system of an industrial enterprise.
Future research aims to evaluate the effectiveness of using the proposed rail yard transport network as input data in the digital rail yard twin, and for spatio-temporal optimization.