You are on page 1of 9

Available online at www.sciencedirect.

com
Available online at www.sciencedirect.com
ScienceDirect
ScienceDirect
Available online at www.sciencedirect.com
Transportation Research Procedia 00 (2022) 000–000
Transportation Research Procedia 00 (2022) 000–000
ScienceDirect www.elsevier.com/locate/procedia
www.elsevier.com/locate/procedia
Transportation Research Procedia 63 (2022) 929–937

X International Scientific Siberian Transport Forum


X International Scientific Siberian Transport Forum
Discrete event simulation model of the railway station
Discrete event simulation model of the railway station
D Kuzminaa, V Baginovaaa, A Ageikina,a, *
D Kuzmin , V Baginova , A Ageikin *
a
Russian University of Transport (MIIT), Obraztsova st., 9, 127994, Moscow, Russia
a
Russian University of Transport (MIIT), Obraztsova st., 9, 127994, Moscow, Russia

Abstract
Abstract
The paper considers the issue of simulation modeling of the railway station operation. For this, a discrete event simulation model
Thethe
of paper considers
movement ofthe issue of simulation
passengers and trains modeling
has been ofdeveloped.
the railwayThe station operation.
architecture andForcontent
this, a discrete event simulation
of the model, its interfacemodel
and
of the movement
graphic of passengers
part are described. and goal
The main trainsofhas
thisbeen
workdeveloped.
is to develop Thealgorithms
architecturethatand content
allow of thethe
increasing model,
detailits interface
level and
of agents’
graphic
behaviorpart aremodel.
in the described. The main
To achieve thisgoal of algorithms
goal, this work isfortothe
develop
arrivalalgorithms thatnavigation
of trains and allow increasing the detail
of passenger flows level of agents’
in the station
behavior have
building in thebeen
model. To achieve
developed. thisthe
To test goal, algorithms
proposed for the aarrival
algorithms, discreteof event
trains simulation
and navigationmodel ofwas
passenger flowsAsinathe
developed. station
simulated
buildingthe
object, have been developed.
Baltiysky To test(St.
railway station thePetersburg)
proposed algorithms,
was chosen. a discrete
Based on event
the simulation
scale scheme model wasstation,
of the developed. As a simulated
a simulation model
object,
has thedeveloped
been Baltiysky railway
to assessstation (St. Petersburg)
the adequacy of the was chosen.
proposed Based onThe
solutions. thefollowing
scale schemetoolsofwere
the station, a simulation
used: AnyLogic model
software
has been developed
simulation to assess
environment, the adequacyprogramming
Java object-oriented of the proposed solutions. The following tools were used: AnyLogic software
language.
simulation
© 2022 Theenvironment, Java object-oriented
Authors. Published by ELSEVIER programming
B.V. language.
© 2022 The Authors. Published by ELSEVIER B.V.
© 2022
This is The
an Authors.
open accessPublished
article by ELSEVIER
under the CC B.V.
BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0)
This is an open access article under the CC BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0)
This
Peer-review under responsibility of the scientific committee of the (https://creativecommons.org/licenses/by-nc-nd/4.0)
is an
Peer-reviewopen access
under article under
responsibility of the CC BY-NC-ND
scientific license
committee of the X International
X International Scientific
Scientific Siberian
Siberian Transport
Transport Forum
Forum
Peer-review
Keywords: under responsibility
Simulation of the
modeling; discrete scientific
event committee
simulation of the Xinfrastructure;
model; transport Internationalrailway
Scientific Siberian
station Transport Forum
infrastructure.
Keywords: Simulation modeling; discrete event simulation model; transport infrastructure; railway station infrastructure.

1. Introduction
1. Introduction
Modern trends in the constant development of the world economy and technology have also affected transport
Modern
systems. trends inthe
Providing themovement
constant development
of passengersoforthe world economy
commodity and technology
and material have also
flows, transport playsaffected transport
a crucial role in
systems. Providing the movement of passengers or commodity and material flows,
meeting the needs of the population and the economy in the transportation of goods and passengers.transport plays a crucial role in
meeting the needs of the population and the economy in the transportation of goods and passengers.
The rational operation of the infrastructure of transport and logistics complexes can reduce the impact of many
The rational
negative effectsoperation
that reduceof the
theinfrastructure of transport
quality of transport and logistics
services, such as:complexes
imperfectcanrouting
reduceof
thepassenger
impact of flows,
many
negative effects that reduce the quality of transport services, such as: imperfect
elimination of bottlenecks, increasing the comfort and safety of passengers in the station building. routing of passenger flows,
elimination of bottlenecks,
Such a problem increasingof
of rationalization thecomplexes
comfort and safety
cannot beof passengers
fully in thethe
solved with station
help ofbuilding.
simple analytical models,
which determines the relevance of using modern computer technology for simulating the simple
Such a problem of rationalization of complexes cannot be fully solved with the help of analytical
movement models,
of traffic and
which determines
passenger flows. the relevance of using modern computer technology for simulating the movement of traffic and
passenger flows.

* Corresponding author. Tel.: +7-906-179-7042; fax: +7-906-179-7042.


* E-mail
Corresponding kuzminmiit@gmail.com
address:author. Tel.: +7-906-179-7042; fax: +7-906-179-7042.
E-mail address: kuzminmiit@gmail.com
2352-1465 © 2022 The Authors. Published by ELSEVIER B.V.
This is an open
2352-1465 access
© 2022 Thearticle under
Authors. the CC BY-NC-ND
Published by ELSEVIER B.V.(https://creativecommons.org/licenses/by-nc-nd/4.0)
license
Peer-review under
This is an open responsibility
access of the scientific
article under CC BY-NC-NDcommittee
license (https://creativecommons.org/licenses/by-nc-nd/4.0
of the X International Scientific Siberian Transport Forum )
Peer-review under responsibility of the scientific committee of the X International Scientific Siberian Transport Forum
2352-1465 © 2022 The Authors. Published by ELSEVIER B.V.
This is an open access article under the CC BY-NC-ND license (https://creativecommons.org/licenses/by-nc-nd/4.0)
Peer-review under responsibility of the scientific committee of the X International Scientific Siberian Transport Forum
10.1016/j.trpro.2022.06.091
930 D Kuzmin et al. / Transportation Research Procedia 63 (2022) 929–937
2 D Kuzmin et al / Transportation Research Procedia 00 (2019) 000–000

Nowadays, simulation modeling tools have become widespread, allowing the development of simulation models
in various modeling concepts. This paper discusses the issue of developing a model with a high detail level of the
movement of passenger flows in the station building using only the tools of the discrete event concept of simulation
modeling.
A significant part of the work of modern scientists in the field of transport is devoted to simulation of transport
processes. Modeling the operation of the infrastructure involved in servicing passengers requires a wide range of
competencies, both in terms of modeling the technology of transport operation, and in terms of modeling the
movement of passenger flows.

2. Materials and methods

As a simulated object, to test the adequacy of the proposed solutions, the Baltiysky railway station was chosen
(120 Obvodny Canal Embankment in the Admiralteisky district of St. Petersburg). The station building has 7 tracks
of the Oktyabrskaya railway, 6 high platforms, entrances and exits from the side of the station square, the ground
vestibule of the Baltiyskaya metro station is attached to the left wing (Figure 1).
Equipment used to create the model: AnyLogic simulation environment, Java object-oriented programming
language.

Fig. 1. Scheme of the Baltiysky railway station.

To simulate the operation of a railway station in the Anylogic environment, a software discrete event simulation
model was developed. The architecture of the model and the layout of the space are shown in Figures 1 - 2. The
model is a set of blocks that simulate various operations (events) that occur with agents (passengers and trains).
The architecture of the model consists of two interconnected parts using different libraries – pedestrian (Figure 3)
and railway (Figure 4). Consequently, within the framework of a single simulation model, two different processes
are actually simulated, the interaction of which occurs at specifically given intersection points – the railway station
platforms.
D Kuzmin et al. / Transportation Research Procedia 63 (2022) 929–937 931
D Kuzmin et al / Transportation Research Procedia 00 (2019) 000–000 3

Fig. 2. Layout of the simulated space, the interface of the simulation model and the movement trajectory of the passenger flows.

Passenger flows are formed in several locations of the model space, namely, at the entrance to the main station
building from the side of the station square, the exit from the metro lobby, and suburban traffic platforms. The same
locations are points of absorption of oncoming passenger traffic. Taking into account the layout of the station and the
logic of the functioning of the simulated object, we can conclude that there are multidirectional and conflicting
passenger flows. Conventionally, it is advisable to divide the movement of passenger flows into two directions: a)
passengers arrive at the station building on suburban trains and go to the exit from the passenger building and the
entrance to the metro (Fig. 2, Orange trajectory); b) passengers arrive at the station building through the entrance
from the side of the station square and the exit from the metro lobby, if necessary, purchase tickets, wait for the
arrival of the desired train, and go to the appropriate platform to board the train (Fig. 2, Green trajectory).
This movement logic is implemented in the model by two autonomous architectural branches of the model shown
in Figure 3. The description of the functionality of the passenger segment blocks of the simulation model is
presented in Table 1.

Fig. 3. Architecture of the discrete event simulation model (Passenger traffic segment).
932 D Kuzmin et al. / Transportation Research Procedia 63 (2022) 929–937
4 D Kuzmin et al / Transportation Research Procedia 00 (2019) 000–000

Table 1. Description of the passenger segment elements of the simulation model.

Block name Functional Characteristic

Formation of the passenger Appearance of agents according to intensity. The block refers to the
pedSourceSquare flow from the station square. target line marked in green and initiates the creation of agents in this
location.

Generation of the passenger Appearance of agents according to intensity.


pedSourceMetro flow arriving from the metro. The block accesses the target line marked in blue on the model and
calls agents at its location.

Moving the passenger flow to


pedGoToTickets Destination of movement: waiting area near the ticket office
the ticketing zone.

Branching passenger flows Branching is determined by the given function:


pedServiceOffices.size() < 20 ? true : false, which distributes the flow
selectOutputService
to the ticket machines if there are more than 20 people in the queue to
the ticket office.

Directs the passenger flow to The speed of passenger service at the ticket office is regulated by the
the ticket offices “IntensOffices” parameter using the “+” and “-” buttons. After the
pedServiceOffices service is completed, a small delay begins to restore the operation of
the ticket office, determined by the uniform_discr probability
distribution function

Moves the flow of agents from


the service with a waiting area The speed of service is also regulated through a separate parameter
pedServiceVending
to the ticket vending machines “IntensVending” and interface buttons.

Branching passenger flows to


one of the four available Branching is determined by an equivalent probability of 25% for each
pedSelectOutputPlatform platforms. of the four platforms. Thus, the direction of the route for which he
bought a ticket is determined for the passenger.

Each of the four blocks is


responsible for waiting for a Waiting for agents is not limited in time, but as the function “free()” is
pedWaitDep1-4
train on a specific platform. called, the activation of which occurs upon the arrival of the train.

Moving the passenger flow Using this block, the agent “boards” the arriving train and leaves the
from the waiting area to the model. If the boarding is completed, but not all agents have boarded the
pedGoToPlat1-4 appropriate target line at the train yet, the “cancelAll()” function is triggered, canceling the
edge of the platform. movement of agents to the target line and returning them to the
corresponding pedWaitDep.

Removing agents from the When deleting through this block, the “LeftOnTrain ++” condition is
pedSinkPlatforms model. applied, which adds one to the “LeftOnTrain” parameter, thus
collecting statistics on how many agents left the model on the train.
D Kuzmin et al. / Transportation Research Procedia 63 (2022) 929–937 933
D Kuzmin et al / Transportation Research Procedia 00 (2019) 000–000 5

Formation of the passenger The appearance of agents by calling the “inject()” function, which
flow from the side of the allows creating a given number of agents at a particular point in time.
platforms. In this case, the call occurs at the moment the train arrives at the
pedSourcePlatforms
platform. The choice of one of the four target lines from which the
passenger will appear is possible using the collection and the
“PlatformSelection” function.

Branching passenger flows Branching is determined by the probability 0.5 for one of the two routes
selectOutputExit
to the exit from the station.

Direction of flow to the exit to


Destination of movement: target line of the station square, indicated in
pedGoToSquare the station square
purple.

Direction of flow to the exit


pedGoToMetro Destination of movement: target line of the metro marked in red.
through the metro

Removing agents from a


pedSinkExit
model

The railway segment of the model is implemented by the architectural branch shown in Figure 4. The logic of
work is quite simple, since the main focus of this paper is on detailing the navigation of pedestrian flows. However,
it is worth noting several specific aspects of the railway segment model operation.
Firstly, the layout of a dead-end station imposes some specifics on the navigation of train traffic, namely, the
arrival at any of the platforms. In stations of a through type, most often the infrastructure is oriented according to the
directions of railway traffic. In this regard, in order to increase the detail of modeling, an algorithm for random path
selection was developed in the model. This algorithm is implemented by the “RandomSelection” function.

Fig. 4. Architecture of the discrete event simulation model (Railway traffic segment).

The “RandomSelection” function, which allows selecting a free path in a random order, works similarly to the
previously discussed “RandomSelection” function, but with the necessary edits. The body of the function is shown
in the listing:

int i = uniform_discr(0, Railways.size() - 1);


while(i >= 0)
{
RailwayTrack trackRandom = Railways.get(i);
if (trackRandom.isEmpty()==true)
return trackRandom;
if (trackRandom.isEmpty()==false)
i = uniform_discr(0, Railways.size() - 1);
934 D Kuzmin et al. / Transportation Research Procedia 63 (2022) 929–937
6 D Kuzmin et al / Transportation Research Procedia 00 (2019) 000–000

}
return null;

The search for a free random path is carried out through the collection. The collection is a group of objects
implemented as a mutable array of the ArrayList type. The “Railways” collection contains the reception and
departure tracks (space marking elements of the local type RailwayTrack) on which arriving trains will be received.
Since this event has a known number of equiprobable outcomes, it is advisable to extract a promising path from the
collection according to a uniform discrete distribution.

1
p(x) = ; (1)
xmax − xmin +1

x = min, min + 1, … , max (2)

This probability distribution is implemented by the uniform_discr function.


Secondly, it is necessary to ensure the possibility of refusing the arrival of a train if all the reception and departure
tracks are busy or the train is moving in the opposite direction. This constraint is described by a condition in the
corresponding interface control of the model with the following code:

if (TrainQ < 4 && railwayTrack6.isEmpty() && trainMoveToExit.size() == 0)


{
trainSource.inject();
}

The interaction of the railway and passenger segments of the model occurs at the stage of train arrival at the
station. The main conflict of passenger flows occurs at this stage. The arrival of the train initiates the generation of a
certain number of agents – passengers by the pedSinkPlatforms block, which start moving from the arrival platform
to the exit from the passenger building of the station to the city and the entrance to the metro station lobby. The
choice of the target line simulating the exit of the passenger flow that arrived with the train is carried out using a
function that searches for the corresponding element of space marking in the “Platforms” collection
The “Platforms” collection combines all the target lines placed along the platforms of the station. This data is
used in the associated function – “PlatformSelection” and expressed in it as indexes of the collection contents. The
first position in the collection always has an index of zero, so the four target lines will have indices from zero to
three.
The “PlatformSelection” function, through which the target line is selected for creating agents at the time of the
train's arrival, contains the following code.

int p = 0;
while (p <= Platforms.size()-1)
{
if (Railways.get(p).isEmpty()==false)
return Platforms.get(p);
else if (Railways.get(p).isEmpty()==true)
}

In addition to the generation of passenger traffic from the platforms, a conflict flow arises from a part of
passengers awaiting the arrival of the train on the corresponding track, which leads to the emergence of bottlenecks
and hinders the free movement of passengers. The movement of passengers towards the platform with the arriving
train is initiated by the “eventArrival” event, which extracts agents from the pedWaitDep1-4 blocks using the
freeAll() method.

if (railwayTrack3.isEmpty()==false) {
D Kuzmin et al. / Transportation Research Procedia 63 (2022) 929–937 935
D Kuzmin et al / Transportation Research Procedia 00 (2019) 000–000 7

pedWaitDep1.freeAll();
}

In order to improve the simulation quality, the process of boarding passengers on the train must be limited in time
by the time of its stay at the platform. To do this, in the corresponding part of the model architecture, feedback loops
are implemented between the pedGoToPlat1-4 and pedWaitDep1-4 blocks, which initiate the termination of the
movement of passengers to board when the train departs.
Description of the railway segment elements of the simulation model are presented in Table 2.

Table 2. Description of the railway segment elements of the simulation model.


Block name Functional Characteristic
Creation of a train flow on the common railway track
“railwayTrack6”. Trains are called in a single order using the “inject()” method,
i.e., only with a targeted request. Such requests, provided that
trainSource
there is a free path, are sent every second by the
“SummonTrain” event.

Start of measuring the time spent by the train in the


timeMeasureStart
model.
Moving the flow of trains to free tracks at the station.The free railway track at the station is randomly selected using
the “RandomSelection” function.
trainMoveToStation

Keeping the train at the station. The delay occurs exactly for three minutes allotted for
delayOfDeparture
boarding and disembarking passengers.
Moving the flow of trains back from the station to a Destination of movement: the end of the common railway
trainMoveToExit
single track. track “railwayTrack6”.
Completion of the measurement of the time spent by
timeTotal
the train in the model.
trainDispose Removing the train from the model.

3. Results

A number of simple experiments were carried out with the developed model both under standard conditions and
under conditions of low or high load, which made it possible to study the behavior of the modeled object. The main
goals of the conducted experiments are: 1. Assessment of the adequacy of the simulated object’s operation; 2.
Approbation of the developed algorithms for choosing a railway track, an algorithm for choosing a platform for
generating passenger flows and an architectural solution for stopping the movement of passenger flows for boarding
when a train departs.
To assess the adequacy of the model and establish the correspondence between the simulated and real processes
of passenger service in the station building, the following indicators were collected and infographically displayed in
the model: the number and average time spent by passengers at the station, the length of the queue to the ticket
offices and ticket vending machines.
The experiment log is presented in Table 3.

Table 3. Experiment log.

Intensity of passengers staying at the station

Index after an hour of model time


125 pas./h 250 pas./h 500 pas./h
936 D Kuzmin et al. / Transportation Research Procedia 63 (2022) 929–937
8 D Kuzmin et al / Transportation Research Procedia 00 (2019) 000–000

Number of passengers leaving the station by train after one hour of model
198 411 414
time
Number of agents in line at the ticket office by the end of the model time
3 20 20
hour
Number of agents in line at the ticket machines by the end of the model
0 7 497
time hour
Loading of the station with agents by the end of the model time hour 262 508 1017

During the experiment with the model, it was possible to establish the correct and stable operation of the railway
track selection algorithm when the train arrives at the station. This solution allows us to significantly change the
approach to modeling the operation of a railway dead-end station in terms of simplifying the architecture of a
discrete event simulation model. More clearly, this architectural evolution can be traced if we turn, for example, to
Rakhmangulov et al, 2014, where the authors implemented a discrete event simulation model of a railway station in
which each individual track is modeled by a separate architectural branch (Figure 5). This approach consists in
representing the elements of arrangement of tracks (railways) in the form of resources. It should also be noted that in
further works Rakhmangulov et al, 2017, the authors revised the approach to the architecture of simulation models of
railway stations. In detail, the problems of this issue can be traced in the works Clausen et al, 2014; Carey et al,
1995; Dorfman et al, 2004; Caimi et al, 2011; Blum et al, 2002; Törnquist, 2007.

Fig. 5. Discrete event simulation model of a railway station with architecture branching for separate simulation of the operation of each railway
track.

Of course, the use of such an approach when modeling the operation of stations significantly complicates the
model with a complex arrangement of tracks, and also does not allow scaling the operation of the model without
changing its architecture. The algorithm proposed in the paper avoids this.
Approbation of the algorithm for choosing a platform for generating passenger flow also showed the stability of
its work. Using the algorithm will simplify the architecture of models, free the developer from complex branching,
reduce the solution to several functional blocks and, if necessary, scale the model.
D Kuzmin et al. / Transportation Research Procedia 63 (2022) 929–937 937
D Kuzmin et al / Transportation Research Procedia 00 (2019) 000–000 9

4. Conclusions

The proposed solutions will achieve the following positive effects: 1. Simplify the architecture of discrete event
simulation models by eliminating the need for an excessive number of branches and local modeling of individual
infrastructure objects of the simulated environment; 2. Allow scaling the model; 3) Increase the stability of the
model.
The main direction of the proposed model evolution is the revision of the architectural solution for navigating
passengers to platforms and to trains by implementing a platform selection algorithm and simplifying the model
architecture to several blocks.

References

Blum, J., Eskandarian, A., 2002. Enhancing intelligent agent collaboration for flow optimization of railroad traffic. Transportation Research Part
A: Policy and Practice 36(10), 919-930. 10.1016/S0965-8564(02)00002-2.
Caimi, G., Chudak, F., Fuchsberger, M., Laumanns, M., Zenklusen, R., 2011. A new resource-constrained multicommodity flow model for
conflict-free train routing and scheduling. Transportation Science 45(2), 212-227. 10.1287/trsc.1100.0349.
Carey, M., Lockwood, D., 1995. A model, algorithms and strategy for train pathing. Journal of the Operational Research Society 46(8), 988-1005.
10.1057/jors.1995.136
Chen, J., Shi, T., Li, N.H., 2021. Pedestrian evacuation simulation in indoor emergency situations: Approaches, models and tools. Safety Science
142, 105378. 10.1016/j.ssci.2021.105378.
Clausen, U., Rotmann, M., 2014. Measurement and Optimization of Delivery Performance in Industrial Railway Systems. Lecture Notes in
Logistics, 109-120. 10.1007/978-3-319-01378-7_8.
Dorfman, M.J., Medanic, J., 2004. Scheduling trains on a railway network using a discrete event model of railway traffic. Transportation
Research Part B: Methodological 38(1), 81-98. 10.1016/S0191-2615(03)00006-7.
Hasan, S.F., Siddique, N., Chakraborty, S., 2013. Intelligent transport systems: 802.11-based roadside-to-vehicle communications. Intelligent
Transport Systems: 802.11-based Roadside-to-Vehicle Communications 9781461432722, 1-150. 10.1007/978-1-4614-3272-2.
Kozlov, P.A., 2019. About simulation modeling and simulation systems. Transport of the Urals 1, 3-6. 10.20291/1815-9400-2019-1-3-6.
Lohner, R., Baqui, M., Haug, E., Muhamad, B., 2016. Real-time micro-modelling of a million pedestrians. Engineering Computations (Swansea,
Wales) 33(1), 217-237. 10.1108/EC-02-2015-0036.
Rakhmangulov, A., Sładkowski, A., Osintsev, A., Mishkurov, A., 2017. Dynamic Optimization of Railcar Traffic Volumes at Railway Nodes.
Rail Transport - Systems Approach, SSDC 87, 405-456. 10.1007/978-3-319-51502-1_10.
Rakhmangulov, A., Sładkowski, A., Osintsev, N., 2016. Design of an ITS for Industrial Enterprises. Intelligent Transportation Systems -
Problems and Perspectives, Cham, Springer International Publishing, 161-215. 10.1007/978-3-319-19150-8_6
Rakhmangulov, A.N., Mishkurov, P.N., Kopylova, O.A., 2014. Railway transport technological systems: organization of functioning: monograph.
Magnitogorsk, Nosov Magnitogorsk State Technical University.
Sussman, J.M., 2005. Perspectives on intelligent transportation systems (ITS). Perspectives on Intelligent Transportation Systems (ITS), 1-232.
10.1007/b101063
Törnquist, J., 2007. Railway traffic disturbance management-An experimental analysis of disturbance complexity, management objectives and
limitations in planning horizon. Transportation Research Part A: Policy and Practice 41(3), 249-266. 10.1016/j.tra.2006.05.003.
Wu, Y., Kang, J., Mu, J., 2021. Assessment and simulation of evacuation in large railway stations. Building Simulation 14(5), 1553-1566.
10.1007/s12273-020-0754-7.
Zhang, X., Chang, G.-L., 2014. A dynamic evacuation model for pedestrian-vehicle mixed-flow networks. Transportation Research Part C:
Emerging Technologies 40, 75-92. 10.1016/j.trc.2014.01.003.

You might also like