Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

1 Introduction

Urbanization is one of the most significant tendencies of the present times: according to a recent forecast [8] by 2025 the 58 % of the global population will live in cities and urban agglomerates. This trend is even more relevant considering two additional tendencies: (i) the decrease of the fertility rate and (ii) the increase of life expectancy. The combination of the latter leads to the well-known phenomenon of the Ageing Society [9], which represents one of the main challenges of the more economically developed countries, since the working class will no longer be able to sustain the social and economical costs of aged/not working people. The concept of Age-Friendly city, introduced by the World Health Organization [12], describes a framework for the development of cities which encourages the active ageing of their citizens, allowing them to maintain an active and productive status in the society, in order to delay the time in which they will become a social cost. This perspective represents a challenging framework for Ambient Assistent Living research, but also technologies improving urban mobility represent important contributions, being significant with respect both to transportation and walkability of facilities.

Computer models for simulating the pedestrian dynamics can help designers performing analyses of the implications of designs, allowing them to populate and simulate environments by configuring the so-called what-if scenarios that support their evaluation and improvement. Given the importance of this kind of analysis, several commercial simulators have been recently developed and can be currently found on the market.Footnote 1 These tools provide simulation frameworks whereby it is possible to configure sufficiently heterogeneous populations of pedestrians (e.g. with a different walking speed) and, in some cases, even to simulate the presence of groups of people (modelled with an attractive force among members, although this feature is generally not systematically documented and evaluated). However, although some significant results have been achieved, the overall issue of simulating large and heterogeneous crowds of pedestrians still presents open challenges, since the crowd is a complex system and all of these mathematical/computational models can be improved for obtaining more microscopic and realistic simulations.

The work described in this paper is focused on the realization of a computational model specifically tailored to simulate the presence of pedestrians with restricted mobility (elderly people as well as persons with physical impairments), basically characterized by a lower walking speed [11], but with potentially a number of additional requirements for a realistic model definition (they will tend to avoid crowded situations, they will need seats during waiting situations and so on) and the need of a different way to evaluate normal metrics for the evaluation of environments and plans, like travel times. Finally, in fact, the paper presents a proposal for the elaboration of a form of “social costs” which considers the actual usage of the environment by pedestrians. The presence of not comfortable elements (e.g. stairs) or situations (e.g. waiting in a queue) in the navigable space, in fact, can increase stress and fatigue of people and especially fragile ones. In addition to this, this kind of facility and the need to employ it can lead to falls that can have significant negative effects for aged people and, therefore, imply health-care costs sustained by the society (in a different way according to local policies) therapies.

The paper will, first of all, introduce the modelling approach to show how it can be applied to simulate the presence of particular categories of pedestrians like elderlies and people with mobility impairments, sometimes moving with an accompanying person. Then, a proposal for a comprehensive way to evaluate social costs implied by the plan of an environment will be introduced and discussed.

2 A Discrete Model with Heterogeneous Speeds

The method described in this paper has been developed on the computational model described in [10]. For reasons of space, we will only explain the general characteristics of the discrete environment, fundamental for the understanding of the proposed method for managing speed heterogeneity.

First Environment—MakkSim is discrete both in space and time. The environment is represented as a grid of squared cells with side of 40 cm, respecting the average space occupied by a pedestrian. We adopted a floor field approach [6] supporting agents’ navigation in the environment. Three kinds of fields are defined: (i) the path field indicates for every cell the distance from one destination area, driving pedestrians towards it (static); (ii) the obstacles fields describes for every cell the distance from neighbour obstacles or walls (static); (iii) the density field indicates for each cell the local pedestrian density at the current time-step (dynamic).

Agents—The life-cycle of a MakkSim agent is divided into four steps: perception, utility calculation, action choice and movement. The perception provides to the agent all the information needed to evaluate the desirability of a cell. The choice of each action is based on an utility value assigned to every possible movement according to the following function:

$$ U(c) = \frac{{\kappa_{g} G(c) + \kappa_{ob} Ob(c) + \kappa_{s} S(c) + \kappa_{c} C(c) + \kappa_{i} I(c) + \kappa_{d} D(c) + \kappa_{ov} Ov(c)}}{d} $$

The first three components employ information derived by floor fields and they consider (i) goal attraction, (ii) geometric and (iii) social repulsion. The fourth and fifth components model the social attraction element of the pedestrian behaviour, by increasing the utility of positions closer to group members. We consider two types of group: simple (iv), that indicates any small group characterised by a strong and simply recognisable cohesion (e.g. family or friends); structured (v), a larger group, that shows a slight cohesion but that is naturally split into subgroups (e.g. tourists). Finally, two special factors consider two additional phenomenologies: (vi) helps an agent to maintain the current direction, while (vii) allows to move to a cell already occupied by one pedestrian in high density conditions. An adaptive mechanism is also defined to tune the parameters of this utility function, in order to preserve the cohesion of simple groups even in high density situations. After the utility evaluation for all the cells in the neighbourhood, the choice of action is stochastic, with the probability to move in each cell c as (N is the normalisation factor): \( P(c) = N \cdot e^{U(c)} \). On the basis of P(c), agents chooses a cell according to their set of possible actions, defined as list of the eight possible movements in the Moore neighbourhood. Finally, update of agents intentions and positions at each step are managed with the parallel update strategy, with rules for conflict management based on the notion of friction [4].

In the literature, discrete models generally assume only one speed profile for all the population and this is considered a strong limitation of this approach; efforts towards the modelling of different speed profiles consider two main approaches: (i) increasing agents movement capabilities [3] (i.e. they can move more than 1 cell per time step), according to their desired speed; in this way, given k the side of cells and n the maximum number of movements per step, it is possible to obtain n different speed profiles, less or equal to \( n \cdot k \) m/step; (ii) modifying the current time scale, making it possible to cover the same distance in less time and achieving thus a higher maximum speed profile but at the same time allowing each pedestrian to yield their turn in a stochastic way according to an individual parameter, achieving thus a potentially lower speed profile.

The method supporting movements of more than a single cell can be effective, but it leads to complications and increased computational costs for the managing of micro-interactions and conflicts: in addition to already existing possible conflicts on the destination of two (or more) pedestrian movements, even potentially illegal crossing paths must be considered, effectively requiring the modelling of sub-turns. In addition, the expressiveness of this method is still limited: the maximum number of movements allowed per time step determines the number of speed profiles reproducible with simulations (e.g., with \( v_{max} = 4 \) cell per step and a turn duration of 1 s, simulations can be configured with 0.4, 0.8, 1.2 and 1.6 m/sec).

For these reasons, we decided to retain a maximum velocity of one cell per turn, allowing the model to reproduce lower speed profiles by introducing a stochastic yielding mechanism. The baseline computational model has been modified in several parts. Each agent is also characterised by a new parameter \( Speed_{d} \) in its \( State \), describing its desired speed. For the overall scenario, a parameter \( Speed_{m} \) is introduced for indicating the maximum speed allowed during the simulation (described by the assumed time scale). In order to obtain the desired speed of each pedestrian during the simulation, the agent life-cycle is then activated according to the probability to move at a given step \( \rho = \frac{{Speed_{d} }}{{Speed_{m} }} \). By using this method, the speed profile of each pedestrian is modelled in a fully stochastic way and, given a sufficiently high number of step, their effective speed will be equal to the wanted one. But it must be noted that in several cases speed has to be rendered in a relatively small time and space window (think about speed decreasing on a relatively short section of stairs).

In order to overcome this issue, we decided to consider \( \rho \) as an indicator to be used to decide if an agent can move according to an extraction without replacement principle. For instance, given \( Speed_{d} = 1.0\,{\text{m/s}} \) of an arbitrary agent and \( Speed_{m} = 1.6\,{\text{m/s}},\rho \) is associated to the fraction 5/8, that can be interpreted as an urn model with 5 move and 3 do not move events. At each step, the agent extracts once event from its urn and, depending on the result, it moves or stands still. The extraction is initialised anew when all the events are extracted. The mechanism can be formalised as follows: (i) let \( Frac(r):{\mathbb{R}} \to {\mathbb{N}}^{2} \) be a function computing the minimal pair \( (i,j):\frac{i}{j} = r \); (ii) let \( Random \) be a pseudo-random number generator in [0,1]; (iii) given \( \rho \) the probability to activate the life-cycle of an arbitrary agent, according to its own desired speed and the maximum speed configured for the simulation scenario. Given \( (\alpha ,\beta ) \) be the result of \( Frac(\rho ) \), the update procedure for each agent is described by the pseudo-code of Algorithm 1. The method \( updatePosition() \) describes the attempt of movement by the agent: in case of failure (because of a conflict), the urn is not updated.

This basic mechanism allows synchronisation between the effective speed of an agent and its desired one every \( \tau \) steps, which in the worst case (informally when \( \frac{{Speed_{d} }}{{Speed_{m} }} \) cannot be reduced) is equal to \( Speed_{m} \cdot 10^{\iota } \) step, where \( \iota \) is associated to the maximum number of decimal positions considering \( Speed_{d} \) and \( Speed_{m} \). For instance, if the desired speed is fixed at \( 1.3\,{\text{m/s}} \) and the maximum one at \( 2.0\,{\text{m/s}} \), the resulting \( Frac(\rho ) = \frac{13}{20} \), therefore the agent average velocity will match its desired speed every 20 steps.

As discussed in [5, 7], an effect of the discretisation of the environment is the fact that diagonal movements generate a higher movement speed. In order to face this issue, this mechanism can be improved by considering these movements as a different kind of event during the extraction. With this strategy, each diagonal movement carried out by an agent decreases its probability to move in the next steps according to the ratio \( \varDelta = \frac{0.4\,*\,\sqrt 2 - 0.4}{{Speed_{d} \,*\,timeScale}} \), where \( timeScale = 0.4/Speed_{m} \) (considering the adopted scale of spatial discretisation). This fraction represents the relationship between the additional covered space, due to the diagonal movement, and the desired speed of the agent expressed in step. In this way \( \varDelta \) represents the exact number of steps the agent will have to stand still to achieve a synchronisation of desired and actual speed. In order to discount diagonal movements, therefore, we introduced in the agents’ state a parameter \( diagPenalty \), initially set to 0, which is increased by \( \varDelta \) each diagonal movement. Whenever \( diagPenalty \ge 1 \), the probability to move is decreased by adding in the urn of extraction one do not move event or, in reference to Algorithm 1, by increasing of 1 unit the parameter β after \( updatePosition() \) invocation, decreasing \( diagPenalty \) by 1.

This method is now consistent for reproducing different speeds for pedestrians in a discrete environment also considering the Moore neighbourhood structure. It must be noted, however, that if it is necessary to simulate very particular velocities (consider for instance a finer grained instantiation of a population characterised by a normal distribution of speed profiles), \( Frac(\rho ) \) is such that a large number of turns is needed to empty the urn, that is, to achieve an average speed equal to the desired one. This means that locally in time the actual speed of a pedestrian could differ in a relatively significant way from this value. To avoid this effect, during the life of each agent the fraction describing the probability is updated at each step and in several cases it will reach unreduced forms, with \( GCD(\alpha ,\beta ) > 1 \). These situations can be exploited by splitting the urn into simpler sub-urns according to the \( GCD \) value. For example, given a case with \( Frac(\rho ) = \frac{5}{11} \), after one movement the urn will be associated to \( \frac{4}{10} \); since \( GCD(4,10) = 2 \) the urn can be split into 2 sub-urns containing 2 move and 3 do not move events that will be consumed before restarting from initial urn. The effect of this subdivision is to preserve a stochastic decision on the actual movement of the pedestrian but to avoid excessive local diversions from the desired speed. Improvements obtained with this method (from here called sub-urn method) are discussed in the next section.

2.1 Special Objects of the Environment

In order to evaluate the accessibility and usability of an arbitrary environment by means of simulations, the computational model must be enriched also in the \( Environment \) component, with special objects which act on the overall perceived comfort. Obviously, until now it is only possible to make assumption since there are no consistent empirical data about this issue, but it is possible to retain that element like stairs are inconvenient and they increase the social costs, while other elements such as the presence of seats can reduce them in areas where it is necessary to wait.

Firstly, the stairs have been considered for this purpose, whose presence in the environment has been modelled by means of an additional type of spatial marker (\( Stairs \)). In particular, in order to recognize and differentiate the direction of movement (i.e., if agents are going upstairs or downstairs), the extremes of the marker on the top and bottom sides are signed in a special way, as shown in Fig. 1a.

Fig. 1
figure 1

A scenario with a marker of type Stairs (a) and its effects on the behaviour of agents (b): the white ones, representing aged people, are attracted also by the walls, for simulating the use of handrails

According to empirical data from the literature [1], the agents inside the \( Stairs \) marker fix their desired speed to 0.5 (0.4 for elderly people) m/sec, if they are going up, or to 0.7 (0.6 for elderly people) m/sec if they are going downstairs, until they reach the end of it.

For modelling the usage of the handrail by elderly persons, we used the obstacles field in the reverse way inside the marker, in order to get this kind of agents attracted towards the walls surrounding the stairs. Therefore, agents of type “elderly” are changing the sign of their \( \kappa_{ob} \) during the usage of stairs. Effects are qualitatively displayed in Fig. 1b.

The second special object that has been considered with this work are the seats, whose introduction described more additional elements for the model: stairs can be placed in the environment by means of another spatial marker (\( Seats \)) and, in order to design its possible perception by nearby agents, another dynamical floor field has to be introduced. This field is quite similar to the density field, with differences residing in values update: their values are spread within a fixed radius of distance from each \( Seats \) cell, which defines exactly one seat, but only when this ones are free. If an agent temporary occupies one of them, the others must not be able to perceive it.

2.2 Presence of a Caretaker

Another relevant aspect which can characterize a person with moving disabilities can be the presence of an accompanying person, which drives him/her through the environment. This situation clearly describes a group of type simple, but also a special case of it, since they will walk strictly together (see Fig. 2), like they were a single entity.

Fig. 2
figure 2

Two groups formed by an aged person and a caretaker. Their walking path will be practically the same

In order to model this phenomenon, a first proposal meant to use the adaptation mechanism of the behaviour of group members regarding their dispersion in a very strict way for this special kind of group. Results of this tests have shown that this method is not suitable for a good simulation of the interested phenomenon: since the probability to have a distance greater to one cell cannot be set to 0 with this mechanism, an high cohesion of the simulated group has been achieved in this way, but in several situations the simulated couple has fragmented itself anyway, even if in a very limited way (around 1 meter of distance).

Since the walking path of the two persons in analysis will be practically the same, because the aged person in this situation cannot walk by him/herself, an alternative and more effective method can be to abstract this situation by representing the couple with a single, special, agent whose shape occupies 2 cells. Naturally, this modelling assumption leads to complications in the computational model, since new rules for managing its behaviour and its interactions with other entities.

3 A Proposal for Social Costs Analysis

The model features presented so far represent a viable approach for the simulation of the behaviour of aged people, whose presence in our society is becoming more and more important. The basic simulation outputs can already give information to decision makers about what is the perceived comfort of the planned environment: space utilisation and cumulative mean density maps are well suited for identifying critical zones of the scenario, while statistics about average travelling times and flows are able to describe their impact in its overall security, by also granting an estimation of the evacuation times.

Notwithstanding, the definition of additional outputs in the simulator (e.g. length of stair travelled, waiting times in queues) can be useful for understanding the usability of the environment from the perspective of its “users”. These additional indicators must actually be considered in a different way for young, healthy adults and elderlies or persons with restricted mobility or other disabilities. The definition of parameters for estimating probabilities of injuries on one hand, like falls or faints due to stress and excessive fatigue, and for obtaining an indicator of the overall perceived comfort of the environment on the other, can be exploited for the calculation of these social costs. By analysing these costs, users and decision makers will be able to act on the planned environment in order to find solutions which can lead to either less expenses, more benefits, or both. For giving an example, the application of heating systems for the snow removal in side-walks is able to maintain the street clean and to allow persons, especially aged ones, to easily use them. In this way, possible falls are prevented, directly decreasing social expenses (for public healthcare system or for families); in addition, the accessibility of the city areas is improved, allowing aged people to normally move themselves inside the city and to maintain an active status, which implies benefits also for the local economy (in addition to being a useful action in the direction of an implementation of active ageing policies, which in turn also aim at reducing social costs in the long run).

A general indicator should describe these average expenses paid by the society for the treatment of injuries happened inside pedestrian facilities, or to pedestrian in general, but also the implications of uncomfortable and non-accessible environments on the reduced activities of elderlies, which might be deciding not to go to certain places to carry out their tasks because of perceived unpleasant conditions in the environment. Two elements are composing the indicator, both dependent from the overall comfortability of the space: bad settings or situations leads to accidents, directly causing social expenses, while perceived discomfort during the navigation of the setting can lead fragile types of people to avoid its usage. The idea is to calculate them with a two steps method, firstly calculating the different social costs and then grouping them for obtaining an overall index of the space comfort, which can be used for estimating the lack of incomes due to a reduction of potential customers of the space. Regarding the first step, that is, social cost estimation, we must consider that accidents can naturally occur with different probabilities regarding different situations (walking in stairs, walking outside, etc.), different configurations (e.g. temperature) and different types of pedestrian (i.e., younger ones will have a lower probability). Provided that statistics about these accidents were available, the overall cost can be estimated by means of microscopic simulation with our model.

Formally, the method for the social costs analysis must consider the expenses for each type of agent and single situation/activity performed in the scenario navigation. This concept can be described as the following:

$$ SocialCosts = \sum\limits_{{a \in \overline{P} }} \sum\limits_{{C_{i} \in \overline{S} }} C_{i} (a),\quad \overline{S} = \left\{ {C_{0} , \cdots ,C_{n} } \right\} $$

with \( \overline{S} \) the set of all situations considered for the social costs calculation. Each of these ones are described by an additional function able to quantify the single element \( C_{i} (a) = \tau_{a,i} \cdot AvgCost_{a,i} \) where \( \tau_{a,i} \) describes the quantity, in the respective measurement unit, of the condition \( i \) (e.g. time passed in the queue) in the simulation for the agent a. \( AvgCost_{a,i} \) represents the average cost estimationFootnote 2 generated per each unit and for the category the agent a belongs to.

By means of this function, each pedestrian travel can be evaluated regarding elementary situations given by interesting components of the environment: stairs, elements which usually generate queues (e.g. ticket machines), parts of the floor which are usually wet and so on. In particular, for evaluating parts of the environment \( \tau_{a,i} \) will represent the covered space, while for situations like queues the measurement unit will be the time. On the other hand, complex situations can be evaluated by splitting them into simpler ones, until they reach an elementary level: for instance, waiting areas where the presence of a sufficient number of seats can be significant, it is necessary to divide the costs evaluation regarding the time passed stood up and seated down. In addition, an extension of the analysis to crowded zones in the scenario can be very important, since they are uncomfortable and can also cause faints, especially to elderly people. A thorough costs analysis has to consider the time passed in them, weighted by means of average local density in that part of the environment.

4 Conclusions and Future Works

This paper has introduced a simulation model considering aged people as well as persons with mobility impairments. The overall objective is to make the system usable for evaluating planned environment by taking them into consideration, in order to understand also their fatigue assumed through the navigation of the environment, knowing if something could be done to make it more age-friendly. In addition, a method for the estimation of social costs has been proposed. This kind of analysis allows to understand the entity of the costs for the healthcare of accidents like falls or faints which can be generated by the configuration the environment, as well as lack of incomes derived by people who are not using environment for excessive discomfort. On the other hand, a precise and feasible estimation of social costs can be done only once having enough statistical data about accidents and perceived discomfort in the environmental setting, therefore additional studies must be performed in this direction. This line of work must also try to integrate existing approaches and results of the so called walkability analysis of the built environment [2].