1 Introduction

Public transport systems based on autonomous mobility are currently in the focus of research groups around the world. Alongside components such as the powertrain and the facilities for reacting to the current driving situation, the interior layout of an autonomous vehicle (AV) has important implications on the efficiency of the overall transport system. The time required for passengers to board and alight determines the minimum dwell time required at each stop. Thus, the boarding and alighting time is a key metric when defining static or dynamic AV schedules.

In practice, once industrial designers have defined a set of possible AV interior layouts comprised of aspects such as the overall geometry and spacing as well as the size, number, placement, and orientation of seats, a quantitative comparison with respect to the required dwell time should be carried out. While real-world experimentation would provide accurate results, the costs for the creation of mock-ups and the acquisition of sufficient numbers of participants limits such experiments to small numbers of trials for the most promising AV designs.

We thus propose a simulation model of AV boarding and alighting processes, permitting large numbers of trials under various scenario conditions. We present an agent-based model of the passenger behavior. A number of challenges emerge due to the confined space for movement in the considered scenario that are not present in many common agent-based simulation scenarios (e.g., [6, 9]).

To address these challenges, we adapt the collision avoidance behavior provided by the well-known Social Force Model (SFM) [18] with right-of-way extensions [10]. A novel size adaption method is proposed to allow agent to navigate through narrow corridors successfully without the need for complex geometric computations. The passenger behavior on the strategical level is carefully modeled according to the Recognition-Primed Decision [15] framework as a set of so-called experiences [17]. We validate our model in comparison to results from the literature based on experiments relying on human participants.

Our prototypical simulation tool accepts color-coded 2D representations of AV layouts from which executable scenarios are generated. Thus, industrial designers without experience in the simulation domain can rely on the simulation to evaluate vehicle designs. Our main contributions can be summarized as follows:

  • We propose an agent-based model to evaluate the boarding and alighting times with respect to given vehicle interior layouts. We propose adaptations of well-known pedestrian simulation models to support the navigation in spatially confined scenarios.

  • We present validation results showing less than 11% deviation compared to real-world experiments from the literature.

  • The practical use of the model is demonstrated by evaluating the dwell times of three AV layouts defined by industrial designers.

The remainder of this paper is organized as follows: Sect. 2 introduces existing works fundamental to our model and related work in passenger simulation for public transport scenarios. Section 3 describes our basic simulation scenario. Section 4 describes our proposed passenger model. Section 5 provides validation and performance evaluation results. Section 6 provides a summary of our results.

2 Background and Related Work

In this section, we outline the models used to represent the high-level decision making and the low-level collision-avoidance behavior of agents. Further, we discuss related work on agent-based simulation of public transport scenarios.

2.1 Recognition-Primed Decision

Recognition-Primed Decision (RPD) is a conceptual framework that arose from the naturalistic decision-making movement, which seeks to understand human decision making. RPD is motivated by the insight that people frequently make decisions based on estimation and guesswork rather than purely rational processes. Each agent maintains a repertoire of patterns representing its previous experiences. When encountering a problem, the agent selects a matching situation from its repertoire and predicts the expected outcome based on the previous experience. A comprehensive description of RPD is given in [15]. In Sect. 4, we describe how the concepts of RPD are applied to our specific modeling problem.

Our agent-based model relies on the implementation of RPD in the CrowdTools simulation framework, which encapsulates the decision-making logic into experiences composed of one or more stages [17]. The decision-making process consists of three iterative steps: During situation assessment, the agent perceives situational cues, which are used to update its emotional state. During experience matching, the agent selects from its repertoire the experience that is the most similar to the current situation. During experience execution, the actions associated with the selected experience are carried out.

Four cognitive components implement the following tasks involved in the above process: The perception system detects the constraints imposed by the virtual environment and filters the relevant information for the decision making. The working memory stores predefined information and situational states. The decision system carries out the decision making based on the information from the perception system and the working memory. Finally, the action system executes the actions determined by the decision system. In Sect. 4, we present our mapping of the passenger behavior to the RPD concepts.

2.2 Collision Avoidance

Microscopic crowd simulations represent humans as autonomous agents that sense their surroundings, make decisions and carry out corresponding actions. The Social Force Model (SFM) [18] is a popular and well-studied model of the distance-keeping behavior of pedestrians. The SFM models the intention of a pedestrian as a driving force and the resistance between a pedestrian and its surrounding objects, i.e., neighboring pedestrians and stationary obstacles, as repulsive forces. The force acting on an agent i at time t is defined as follows:

$$\begin{aligned} m_i\frac{\mathrm {d}v_i }{\mathrm {d} t} = m_i\frac{v^0_i(t)-v_i(t)}{\tau _i}+F_{nb}+F_{obs} \end{aligned}$$

The first summand represents the driving force, where \(m_i\) is the mass of the agent, \(v^0_i(t)\) is the preferred velocity and \(v_i(t)\) is the actual velocity; \(F_{nb}\) is the net force from neighboring agents, and \(F_{obs}\) is the force from the surrounding obstacles. The force received from neighbor j is defined as \(f_{ij} = A \, \text {exp}(-\frac{D_{ij}}{B})n_{ij}\). The time step size is denoted by \(\tau _i\). The parameters A, B determine the strength and range of the force. D is the distance between two agents. \(n_{ij}\) is the direction vector pointing from \(r_i\) to \(r_j\). The force from an obstacle line l is determined in the same fashion based on the distance of agent i to the closest point on l.

Following the above definitions, for a pair of agents, the SFM defines a pair of opposite forces, which can lead to undesirable symmetric interactions [13]. As an example, suppose two agents are heading exactly towards each other in an open space. The agents experience forces opposite to their velocity, and decelerate without changing direction, leading to a standstill or collision. To solve this issue, a variant of the SFM introduces a right-of-way mechanism based on agent priorities [10]. The parameter B in the original SFM is replaced by \(B_{ij} = B + R_{ji}r_i\), with the right-of-way of agent i over agent j defined as \(R_{ij} = \max (1, p_i - p_j)\), if \(p_i \ge p_j\), and 0 otherwise; \(p_i\) and \(p_j\) are the agents’ priorities. The direction of the repulsive force is adapted according to \(R_{ij}\). If agent i has higher priority than j, the repulsive force on j is assigned an angle between \(0^{\circ }\) and \(90^{\circ }\) to the preferred velocity of i.

2.3 Simulation of Passengers in Public Transport Scenarios

Several existing works have used agent-based simulations to determine the required dwell time of public transport vehicles. Perkins et al. [19] employ SFM to assess the dwell time of a train under various parameter combinations for the door width and placement as well as the crowd mix. Their focus is on the train-platform interface. Thus, in contrast to our work, the geometry and seat placement inside the vehicle as well as the passenger behavior after boarding are not considered.

Fletcher et al. [12] propose an automated procedure to optimize the geometry of a train’s interior layout based on evolutionary algorithms and evaluation using agent-based simulation. While their approach provides interesting avenues for future research, the considered parameters of aisle width, seat width, and door width limit the range of possible layouts. The aim of our work is to support industrial designers when evaluating different layouts. Thus, we rely on color-coded floor plans as input so that designers are free in their decisions on aspects such as the seat placement and orientation and the placement of walls.

For parameterization and validation of passenger models, the existing works in the literature have relied on video footage [5, 12, 19, 22], smart-card payment records [21], and experiments using mock-ups [14, 20]. In our work, we validate against real-world experiments based on mock-ups from the literature. We are investigating data collection from virtual reality experiments [3] and real-world observations to achieve an accurate parameterization with respect to aspects such as the passengers’ seat selection preferences.

3 Scenario

In the following, we describe the scenario considered in our simulations. The AV layout is provided as a color-coded 2D floor plan. As shown in Fig. 1, each layout represents a 6 m \(\times \) 6 m station comprised of the vehicle of size 6 m \(\times \) 2.7 m, and the platform (6 m \(\times \) 3.3 m). The interior region includes regular seats and leaning seats (where passengers can lean on the wall), seat areas, standing areas, and a door. Outside the vehicle, queue areas and an alighting area are specified. Alighting passengers are assumed to exit the scenario through the alighting area. To simplify the boarding process, a vehicle entrance is defined as the position at which boarding agents choose their preferred destination.

Fig. 1.
figure 1

Color-coded autonomous vehicle layout used as input to the simulation. (Color figure online)

We assume that when the simulation starts, the AV has stopped at the station and passengers are queuing at the platform. A configurable number of passengers then exits the vehicle, while some are assumed to stay inside to continue their trip. Once all alighting passengers have exited, the queuing passengers board the vehicle and move to their preferred seats or a location in the standing area. We are interested in the times taken for all alighting passengers to exit the vehicle, for the boarding passengers to enter the vehicle and to reach their desired locations.

4 Passenger Model

In this section, we describe the high-level decision-making and low-level distance-keeping behavior of our agent-based passenger model. Due to the highly confined environment within the vehicle, our model must address two main challenges: firstly, passengers must be able to pass through corridors narrower than their shoulder width. Secondly, the model must be able to cope with passenger passing each other in confined areas. We developed the model in the CrowdTools [7] simulation framework, which is an implementation of the RPD paradigm (cf. Sect. 2).

4.1 High-Level Decision Making

There are three types of agents in our model:

  • Alighting Passengers (AP): APs are created in a seat or in the standing area and cross the vehicle center to reach the door. After exiting the vehicle, APs enter the alighting area to disappear from the scene.

  • Boarding Passengers (BP): BPs are generated within the queue areas and remain idle until all APs have alighted. After subsequently entering the vehicle, each BP chooses a standing point or a seat. Once the desired location has been reached, the BPs become passive.

  • Passive Passengers (PP): PPs are generated uniformly at random inside the vehicle, occupying a seat or space for standing. Larger numbers of PPs increase the interior density and prolong the boarding and alighting process.

Since the behavior of APs and PPs is relatively simple, our description focuses on the BP behavior. Table 1 lists the action to be executed in each stage in the experience set of BPs: Navigate represents long-distance navigation based on the approximated best-first search \(A^*\) algorithm [7]; StraightWalk represents direct translation only used on unobstructed paths; WaitAtPoint represents idling at the waiting point and returning to the position when being pushed away by neighbors; Still represents standing at the current position.

Figure 2 shows an excerpt of the decision-making when a BP arrives at the vehicle center, restricted to one stage for each experience. The BP first determines the experience that best matches the cue “Priority to Seats”, which is “Go to seat”. While the agent carries out the associated action of navigating to the seat, its perception system continuously evaluates the remaining distance and the occupation to the target seat. A violation of the agent’s expectations is detected if the target is no longer available. The agent’s current goal is considered to be achieved once the agent enters the seat. When an agent exits the current stage after having achieved the associated goal, it enters the subsequent stage of the current experience. In contrast, when the agent exits the stage through a violation of its expectations, a new round of experience matching is triggered.

4.2 Low-Level Collision Avoidance

We rely on the Social Force Model (SFM) with right-of-way extensions (cf. Sect. 2) for the fundamental collision-avoidance behavior among agents. To achieve plausible agent behavior in the confined environment of our boarding and alighting scenario, we propose three modifications to the model.

Size Adaption: The original SFM relies on a circular representation of agents, which overestimates the actual space occupied by a human. As a consequence, the model fails to support scenarios in which pedestrians travel through corridors narrower than their shoulder width. Some existing works propose elliptical [4] or even irregular polygonal representations [2, 16] to solve this issue by introducing lateral motion. However, these approaches substantially increase the complexity of the collision avoidance, both computationally and in terms of the need to address special cases, e.g., when there is insufficient space for an agent to rotate.

Table 1. The experience set of a boarding passenger.
Fig. 2.
figure 2

An excerpt of the decision making of a boarding passenger when determining the next action after entering the vehicle.

We propose a simple solution for the navigation through narrow corridors based on adapting the size of the circles representing agents. Our rationale is that 1. in real-world situations, the rotation performed by passengers to travel through corridors reduces their effective size in perpendicular direction to their target, and 2. if the agent is not directly facing an obstacle, its size in walking direction has only a minor effect on other agents. Thus, temporarily reducing the size of circular agents achieves a similar effect as a rotation of agents represented by more complex shapes, while avoiding the associated complexity.

As shown in Fig. 3a, the agent first perceives the surroundings to determine the closest object (obstacle line or agent). A side sensor \(S_{side}\) is generated by mirroring the vector \(v_{col}\) from the agent to the closest object across the front sensor \(S_{front}\). A potential corridor is detected if \(S_{side}\) is obstructed, whereas \(S_{front}\) is unobstructed. When a corridor is detected, the agent reduces its radius for a configurable amount of time, after which the corridor detection is repeated. If no corridor is detected, \(S_{side}\) is rotated by 45\(^{\circ }\) over the course of the next few time steps to achieve a sufficient coverage of the area ahead (cf. Fig. 3b).

Force Reduction. The magnitudes of the forces generated by the original SFM are excessively large when considering confined scenarios, where passengers may stand nearby each other or pass other passengers at close distances, while still aiming to avoid potential collision. This is contrary to the common use cases of SFM in large-scale scenarios with open spaces, where pedestrians tend to maintain relatively large distances from each other. Further, in our scenario, strong repulsive forces from stationary obstacles make it impossible for agents to traverse the seat edge areas and to enter seats.

Fig. 3.
figure 3

Size adaption when traversing a narrow corridor.

We assume that passengers tend to maintain smaller distances to objects nearby within the vehicle than in an open space, and that they keep larger distance from neighboring passengers than from stationary obstacles. Although reducing the agent size makes it possible for agents to traverse paths that are narrower than their shoulder width, they may still fail to enter a corridor because of the strong repulsive force from the corridor walls. We address this issue by reducing the forces using two new scaling factors \(\lambda _{agent}\) and \(\lambda _{obs}\):

$$\begin{aligned} m_i\frac{\mathrm {d}v_i }{\mathrm {d} t} = m_i\frac{v^0_i(t)-v_i(t)}{\tau _i}+\lambda _{agent}F_{nb}+\lambda _{obs}F_{obs} \end{aligned}$$

We assign \(\lambda _{agent}\) and \(\lambda _{obs}\) values between 0 and 1. Reducing these forces also enables agents to stand both closer to each other and closer to walls, which is necessary to achieve high passenger densities commonly observed in public transport situations. In our simulation experiments, the specific values for the scaling factors were hand-tuned based on visual inspection of trial simulations, with values adapted according to the area in which each agent currently resides. The specific values are given in Sect. 5.

Modification of Right-of-Way Behavior: We employ an existing extension to the SFM that relies on agent priorities to model right-of-way behavior. Three levels of the agent priority p are defined in our model. All types of agents start with an initial p value of 0. During the simulation, APs and BPs increase their priority to 1 when they are navigating inside the vehicle, and reset the value when they exit the vehicle or reach their destination inside the vehicle. An agent i with priority equal to 0 yields to another agent j with higher priority by moving in the direction perpendicular to the walking direction of j. For all agent types, p is set to \(-1\) when the agent is seated. An agent with negative priority does not receive any social force, ensuring that the agent retains its position.

In certain situations, the above behavior fails to allow agents to pass each other successfully. When the repulsive force on an agent from a higher-priority neighbor is pointing to an obstacle, there is no space to step backward, as shown in Fig. 4a. Simply reversing the repulsive force does not solve this issue in our confined scenario, since both the back and front of an agent may be blocked by obstacles. To detect this situation, an extra step is added during the agent force computation: The agent first perceives the distance to the closest obstacle line col. If the distance only exceeds the agent’s radius by a small positive \(\epsilon \), we assume that the agent cannot give way to its neighbor. In this case, the repulsive force is reoriented to be parallel to col, so that it is possible for the agent to avoid the approaching neighbor. The direction \(\varvec{\hat{\mathbf {f_{ij}}}}\) of the force from the higher-priority agent j on agent i is adjusted depending on the external distance \(D_{ij}\) as follows:

$$\begin{aligned} \varvec{\hat{\mathbf {f_{ij}}}} = \left\{ \begin{array}{lr} g(d_{avoid},-v^0_{j}(t)), &{} D_{ij}> 2D_{min}\\ g(d_{avoid},v^0_{j}(t)), &{} \text {otherwise} \end{array} \right. \end{aligned}$$

where \(d_{avoid}\) is the direction from agent i to the closest obstacle line and \(D_{min}\) is a small positive value. The function \(g(v_1,v_2)\) determines a unit vector that is perpendicular to \(v_1\), with an orientation difference of less than 90\(^{\circ }\) from \(v_2\). In the more common cases of \(D_{ij} > 2D_{min}\) as shown in Fig. 4b, where two agents are still positioned far from the point of a projected collision, agent i is driven by the adjusted force \(\varvec{\hat{\mathbf {f'_{ij}}}}\) and walks towards agent j. Agent j triggers the size adaption of both agents, freeing up sufficient space for navigation. When two agents are close enough to each other so that both of their front sensors \(S_{front}\) are obstructed (cf. Fig. 4c), the size adaption algorithm is not activated. In this case, the agent i moves in the direction of the preferred velocity of agent j.

5 Evaluation

In this section, we present the validation of our model against results from real-world experiments from the literature. Further, we demonstrate the practical use of the model by comparing the boarding and alighting times required by different layouts of an autonomous vehicle created by industrial designers.

5.1 Parameter Setup

In Sect. 4, we described our adaptations of the Social Force Model to allow passengers to navigate the confined space inside the vehicle. To reduce the intensity of the forces from other agents and obstacles inside the vehicle, the scaling parameters are configured as follows for agents outside the vehicle, inside the vehicle, and on the seat edge: \(\lambda _{agent} = 0.8, 0.6, 0.2\); \(\lambda _{obs} = 0.2, 0.1, 0.01\).

Fig. 4.
figure 4

Illustration of a situation that cannot be resolved by the original right-of-way SFM (a), and two solutions (b) and (c) depending on the distance between agents.

Table 2. Validation results.

To retain the distance kept by passengers even in confined spaces, the force generated by obstacles is reduced more sharply than that of agents. While our model allows modelers to specify passenger personas defined by preferred walking speeds and seat selection preferences, here we assume all passengers to be working adults, with a preferred speed of 1.4 m/s outside the vehicle, which is reduced to 0.56 m/s inside the vehicle, and to 0.28 m/s in the seat edge area. Seat selection is assumed to be uniformly at random. We are currently investigating approaches for data collection from virtual reality experiments [3] and real-world experiments to support the representation of different passenger types.

5.2 Validation Experiment

In 2010, Fernández et al. carried out experiments on the influence of the platform and vehicle design on boarding and alighting times as well as passenger saturation flows of a public transport vehicle [11, 14]. The participants of the experiment repeatedly boarded or alighted a full-scale mock-up. We recreated the vehicle layouts used in the real-world experiments in our simulation and validate our agent-based models by comparing the results from these experiments to our simulation results. In the experiments, 50 and 25 passengers took part in the alighting and boarding process, respectively.

Table 2 compares our simulation results with the measurements from the real-world experiments. The simulation results are averages of 100 iterations for each scenario. We can observe that the boarding and alighting times in our simulation are slightly longer than in the real-world experiments. Overall, given the observed deviations between 0.8% and 11%, we consider the model sufficiently accurate to provide estimates of real-world boarding and alighting times.

5.3 Case Study

We demonstrate the practical use of our model by evaluating the times taken for the boarding and alighting process when considering three different autonomous vehicle layouts. The following metrics are considered:

  • Alighting time: The time until alighting passengers have exited the vehicle.

  • Boarding time: The time until all alighting passengers have exited and all boarding passengers have entered the vehicle.

  • Settling time: The time at until all boarding passengers have settled on a seat or in the standing area.

Fig. 5.
figure 5

The autonomous vehicle interior layouts evaluated in the case study.

Figure 5 shows the interior layouts to be evaluated. Two of the layouts represent extreme cases with respect to the seat numbers and thus passenger comfort: “standing only” does not provide any regular seats, leaving a large amount of space for navigation inside the vehicle, whereas “maximum seating” provides 16 seats in total. The layout “balanced” aims to provide a sufficient number of seats, while still allowing passengers to navigate comfortably. Further, the layout leaves space near the door to place a wheelchair.

Fig. 6.
figure 6

Simulation results for the three layouts in the case study.

We populated each layout with 6 passive passengers, varying both the number of boarding and alighting passengers between 1 and 6. Given the 100 iterations for each parameter combination, 3600 iterations were executed for each layout.

The results shown in Fig. 6 indicate that, as expected, the spacious area for navigation in the layout “standing only” allowed for the shortest times for the alighting, boarding and settling processes, with averages of 6.0, 12.0, and 16.8 s. The layout “maximum seating” generated the largest values for all three metrics, with averages of 8.1, 13.6, and 20.8 s. The boarding and alighting times achieved with the layout “balanced” are only slightly longer than those for the “standing only” layout. Due to the time taken for passengers to enter their seats, the settling time is significantly larger than with the “standing only” layout. The effect of the settling time on the required dwell time depends on the point in time when the vehicle starts its trip. While the vehicle may start its trip as soon as all passengers have entered the vehicle, considerations of passenger comfort may suggest a delay to allow passengers to take their seats.

In the layout “maximum seating”, passengers that have already taken their seats may make it cumbersome for others to get seated. Thus, the variability in settling times is particularly large with this layout.

According to our simulation-based evaluation, the lowest boarding, alighting, and settling times are achieved with the layout “standing only”. While the purely quantitative evaluation permits comparisons in terms of efficiency, it must also be ensured that the selected layouts satisfy other requirements such as those given by Universal Design principles [8], as well as service quality indicators for public transportation as defined by standards such as EN 13186 [1].

6 Conclusion and Future Work

We presented a novel passenger model for evaluating public transport vehicle layouts in terms of the required dwell time. The low-level model is based on the traditional Social Force Model with additional right-of-way features. A dynamic adaption of the agent size emulates turning behavior. The RPD framework is used to define the passenger behavior, allowing for an adaptive decision-making based on the current situation faced by agents. We validated our model by replicating an existing mock-up experiment in our simulation. The observed deviations in boarding and alighting times were below 11%. We applied our simulation to autonomous vehicle layouts created by industrial designers, demonstrating substantial differences in the dwell times depending on the seat number and positioning. By relying on color-coded floor plans as the input to the simulation, different vehicle layouts can be evaluated easily. Of course, apart from efficiency metrics such as the dwell time, viable vehicle designs must also be evaluated in terms of the provided service quality through features such as step-free access, space for wheelchair users, and the presence of handrails.

In future work, we aim to extend our experiments to passengers with different characteristics. To this end, we are exploring data collection from virtual reality experiments [3] and real world observations. Potential future refinements include more complex passenger interactions in confined environments (e.g., exiting the vehicle to allow passengers to alight), joint decision-making (e.g., assisting elderly people), and crowd mixes at specific times of day (e.g., during peak hours).