1 Introduction

Sustainability and accessibility are fundamental axes in the development of cities of the future [1], which are intended to be sustainable and inclusive, as defined and promoted by the Sustainable Development Goals (SDGs) of the United Nations [2]. The concept of mobility will undergo drastic changes in the coming years in terms of how it will be articulated with the transport of people and goods, always considering universality and accessibility [3, 4]. The ecological footprint growth is also a concern of SDGs which has motivated proposals that represent a combination of shared transport (public or private) and pedestrian routes in optimised path planning algorithms, advertising for the importance of comprehending accessible paths to include everyone [5]. The causes and consequences of social inequality have been highly debated issues [6] which contributes to greater importance of inclusive and universal mobility.

The population growth in the last decades maintains an exponential trend for the next few years. The 6 billion people registered in 1999, an approximate number of 7.7 billion in 2020 and an estimated number of 9 billion in 2040 [7, 8], reveal the urgency to define new forms of sustainable and inclusive mobility [9], which translates into the need for new route optimisation algorithms for vehicles and people, traffic management to reduce congestion, and greater optimisation in logistic processes, among others.

When universality and accessibility dimensions are introduced into the mobility equation, the population with temporary or permanent difficulties needs to be considered, such as people who are blind and visually impaired, those with autism spectrum disorder, with deafness, in wheelchairs, pregnant or with toddlers, thus promoting a better quality of life and better transportation services for everyone. Blind and visually impaired are a segment that introduces very specific variables in mobility solutions since vision is one of the most important senses that impacts people’s mobility [10]. Considering the steady growth of the blind and visually impaired segment, which is expected to grow from 36 million in 2017 to 115 million in 2050,Footnote 1 it is essential that mobility solutions address this and other segments. The above mentioned challenge underlines the importance of inclusive and universal urban mobility, which is aligned with the goal for equitable, efficient, safe and sustainable transportation promoted by the United Nations.

Each segment has specific mobility needs that must be considered in the routing algorithms of mobility solutions. Outdoors way-finding and navigation become challenging in urban environments, particularly when considering relatively long routes. From the experience gathered from previous projects, spectrum autism disorder users have their autonomy disturbed in spaces and streets with loud noises and a higher movement of people and cars; on the other hand, blind and visually impaired users should avoid streets where emergency vehicles entrances exist. These are just some examples of situations that need to be kept in mind when developing inclusive mobility solutions. Also, cities have been adapting their infrastructure, namely using ramps, changing the pavements, and building special entrances in public spaces for disabled people to find equality and make the city inclusive. Sustainable Urban Mobility Plans (SUMPs) are also essential tools to promote, in an organised manner, more inclusive, safe and resilient urban environments that urban authorities must consider [11]. Mobile applications are not an exception to this adaptation [12]. Path planning applications that aim for inclusive mobility are fundamental to the physical and psycho-social health of elderly and disabled people [13,14,15], enabling them to do their daily tasks more independently.

Viana+Acessível mobile app [16] is the main output of a previous work conducted to promote inclusive mobility in the city of Viana do Castelo, in Portugal, which represents the basis for the work presented in this paper. The mobile application was developed together with the City Hall and several institutions that provide help for people with permanent or temporary reduced mobility such as deaf or blind and visually impaired people, people with autism spectrum disorder, pregnant women and the elder. Viana+Acessível app intends to assist all these citizens by providing them with optimised routes—calculated with A-Star routing algorithm—based on their condition to taxi and parking spaces and also points of interest in the city. The system developed relies on a GIS with the classification of the streets of the historic centre.

The contribution of this paper is a multi-objective approach incorporated in the previously mentioned mobile application, allowing to present the user with a set of route recommendations that consider several parameters that can better adapt to the condition of each user. This paper is therefore an extension of previous work by presenting a weight-sum approach for the multi-objective problem associated to path planning for people with disabilities. Adopting a multi-objective approach in the mobile application provides users with the possibility to choose the most important parameters that should be considered by the algorithm for the route calculation. The study explores a mathematical model combined with routing algorithms to present an optimized path according to different criteria: street segment length, street segment slope, street accessibility and time.

This paper is organised as follows. A literature review associated to the reduced mobility is presented in Sect. 2. In Sect. 3, the paper methodology is presented, as well as the objective measures for the algorithm, routing algorithms comparison and the multi-objective algorithm approach. Section 4 presents the numerical results gathered from the tests performed on this study. Final conclusions about the results obtained using the multi-objective approach, its usability and importance and future work ideas are presented in Sect. 6.

2 Literature review associated path planning applications

Smartphones are widely used and therefore mobile applications are increasingly becoming more creative, inclusive, and smart. In this section, several examples of mobile applications that aim to promote inclusive accessibility are presented. One of such examples is ProA, a mobile application that automatically obtains geographic information to calculate the optimised route based on the user’s profile [17]. The user must personalise his profile according to his needs or select predefined profiles in order to avoid slope, and prioritise shorter distances or green zones. The map information is extracted from OpenStreetMaps (OSM),Footnote 2 which provides precision for the app calculation. The A-Star algorithm was used to calculate the optimum path. This algorithm requires a start point, an end point and the edges connection cost based on the user’s condition. The tests were developed in Granada city, and the authors concluded that ProA could calculate shorter routes than Google Maps due to OpenStreetMap quality and information on accessible routes based on users’ conditions.

In [18], another mobile application is presented which allows users to verify schedules and transport stops and to calculate routes based on transport information such as the accessibility level for disabled people. This information is made available in a web backoffice, which is constantly update by transport administrators.

The Mobile Pervasive Accessibility Social Sensing (mPass) mobile application [19] provides personalised maps and routes based on the user’s conditions. The user’s first step is to classify some parameters—stairs, steps, ramps, and curbs—as ’neutral’, ’like’, ’dislike’ or ’avoid’. The application system combines geo-referenced data from other systems, sensing, crowdsourcing (provided by users reports), and reviews from specialised organisations to determine the suitable route.

Another similar case study is [20], that describes a mobile application to help people in wheelchairs to plan their routes efficiently. Due to the crowdsourcing approach, any user can add new places to the app and evaluate the already registered ones. The map service is obtained from OpenStreetMap.

For the campus of Aveiro University in Portugal, assisted navigation tools for people with reduced mobility were developed [21]. The work introduces the created WebServer that analyses and calculates optimised routes according to the physical conditions of the user. The pedestrian network, points of interest and street characteristics (like slope, length, and pavement state) are stored on PostGreSQL database updated in real-time. The routing algorithm used was Dijkstra. According to the authors, this algorithm is very efficient for sparse networks, which is the case of Aveiro University campus.

The SIMON application case study, presented in [22], is a mobile application assistant for navigation, orientation and parking for older and impaired users. The app provides the possibility to locate parking spaces for the disabled, to calculate pedestrian, car or public transport routes to points of interest, to visualise real-time information on parking availability, among other functionalities. The routing planning options allow the user to define the origin and destination, choose the transport and save the favourite paths.

OnA mobile application to help blind or low vision people to navigate safely through the streets of Thai is presented in [23]. This app uses GPS and the smartphone camera to save the routes and detect obstacles on the street. NavTu allows users to record their daily paths to repeat them alone and safely. When the user wants to navigate to a stored path, the app uses GPS coordinates, the compass and the accelerometer to guide them by audio directions.

Specific research on multi-objective algorithms have always been a focus of the scientific community. Authors in [24] aggregate multiple evolutionary algorithms for multi-objective optimization. In [25], authors address a multi-objective shortest path problem that takes a graph as input in order to find a set of Pareto-optimal solutions using A* method. Authors in [26] explain the context of bi-objective search algorithms and propose a variant that consists of multiple improvements to the already existing bi-objective approaches using A* algorithm. After their experimental results, authors concluded that their improved variant is, on average, five times faster than the common bi-objective search algorithms.

Pymoo is a multi-objective optimization framework developed in Python by the authors in [27]. This framework was created in order to solve multi-objective problems such as the need for support optimization of multiple conflicting objectives at a time and provide comprehensive tools for a complete multi-objective optimization task. Pymoo framework also supports practical needs, such as the parallelization of function evaluations, methods to visualize low and high-dimensional spaces, and tools for multi-criteria decision-making. For this study, the weight-sum method combined with A* was chosen because its good performance and fast execution time.

Table 1 presents a comparison of the studies covered in this section with the Viana+Acessível application for path planning for people with disabilities. The apps are compared under three aspects: the routing algorithm used; the criteria considered to calculate the optimised path and the disabilities covered by each application.

Table 1 Comparison of available mobile applications for users with mobility limitations

The main difference in the criteria relates to the accessibility information in the Viana+Acessível app. The remaining criteria are already used in other apps. Accessibility information comes from a Geographic Information System (GIS), powered by the municipal council in partnership with specialised institutions in each disability segment covered by the app. In the GIS, each street segment is classified on a math scale from 0 to 5 (0 means excluded and 5 means excellent to the user’s condition). Another particularity of the Viana+Accessible application is the wider range of disabilities covered such as people with autism spectrum disorder, which is a segment not considered in other applications.

3 Methodology

The present study describes the implementation of a multi-objective approach in the Viana+Acessível app and presents the conducted performance tests to validate the approach. To explore the multi-objective approach, four different objective measures were identified in Subsect. 3.2. In Subsect. 3.3, the routing algorithms used in this work are described. In Subsect. 3.4, the performance of some well-known routing algorithms—such as Dijkstra, A-Star, Floyd–Warshall and Bellman–Ford—are compared in order to determine the algorithm that has greater efficiency for this particular scenario.

3.1 Graph construction

The historic centre of Viana do Castelo, depicted in Fig. 1, is represented in the GIS as an undirected graph with non-isolated vertices. The graph is composed of 835 vertices (green points) connected by 1170 edges. The weight of the edges is attributed according to the choices of the user. The parameters in consideration are accessibility which varies between 0 and 5, the time it takes to walk the street which varies between 0.00145 and 4.31678 min, street slope which varies between 0.01312 and 51.68087 degrees, and street length which varies between 0.10894 and 323.75829 ms. Figure 1 presents the graph considering the accessibility parameter. Each colour edge is assigned according to the street accessibility. The edge classification was defined by the social institutions of Viana do Castelo, which assigned a level of accessibility to each street according to the user disability, being: Black-Exclude, Red-Very Dangerous, Orange-Dangerous, Yellow-Avoid, Cyan-Good, Green-Excellent.

Fig. 1
figure 1

Graph representation of the historic centre of Viana do Castelo

3.2 Objective measures

For the present study, four different objective measures were considered for the routing algorithm, considering the feedback of the associations that support each one of the considered segments. These associations evaluated each street segment of the historic centre of Viana do Castelo in line with their members’ needs. For example, the AMA organisation, which stands for Friends of Autism Association, was responsible for classifying the streets segments for users with Spectrum of Autism Disorder. Based on the monitors’ experience with autistic AMA members, the application should avoid streets with crowds, loud noises, and big traffic jams as these conditions are likely to disturb the autonomy of the users with this disability. The associations that were part of the Viana+Acessível application include:

  • AMA Friends of Autism Association.

  • ACAPO Blind and Visually impaired Association in Portugal.

  • APPACDMVC Viana do Castelo Parents and Friends of the Mentally Handicapped Citizen Portuguese Association.

  • APCVC Viana do Castelo Cerebral Palsy Association.

  • Inclusive IRIS Blind and Visually impaired Association.

The four parameters chosen for the purpose of this study, based on the importance stated by the associations, were:

  • Street segment length street segment length in meters, represented by a positive real number.

  • Street segment slope street slope in degree, represented by a real number between 0.0 and 30.0.

  • Street segment accessibility according with the user’s disability this parameter represents the street accessibility for autism spectrum, reduced mobility, and blind disabilities, respectively. The values are integers between 0 to 5, where 0 represents inaccessible, 1 and 2 accessible with accompanying person only, 3, 4, and 5 accessible unassisted [28].

  • Time time, in minutes, that takes to go through the street segment, represented by a real number.

Each parameter defines an objective measure, represented by \(F_i\), with \(i=1,...,4\), that characterises the path. In particular,

  • \(F_1\) represents the total path length in meters.

  • \(F_2\) represents the sum of the slopes of all street segments belonging to the path.

  • \(F_3\) represents the sum of the costs of each accessibility street segment belonging to the path. The cost associated to a segment depends on the accessibility value defined by each association. Table 2 shows the correspondence between the accessibility scale and corresponding cost which were defined together with the associations after tests with some specific paths.

  • \(F_4\) represents the total time, in minutes, that takes to go from the current place to the destination point.

Table 2 Correspondence between accessibility scale and its cost

3.3 Routing algorithms

There are several well-known algorithms to address routing problems. The A-Star and Dijkstra algorithms are the most used to solve path planning problems [17, 21] in the scope of mobile solutions, as mentioned in Sect. 2 since it is mandatory to obtain a good solution in microseconds. In this study four routing algorithms were used. In particular,

  • Dijkstra method The algorithm initialises with a set of nodes which adjacency that have less weight considering the starting node A. This process is repeated until the algorithm finds the end node B. For more details see [29].

  • A-Star method This method is an extension of Dijkstra algorithm combined with heuristic search and some characteristics of breadth-first search algorithm. For more details see [30].

  • Floyd–Warshall method This method has a multi-source strategy. This means that it calculates the shortest distances between every pair of nodes in the group. For more details see [31].

  • Bellman–Ford method This method has a basic structure similar to Dijkstra, however Bellman-Ford accepts graphs with edges of positive and negative weights whereas Dijkstra works only on edges with positive weights. For more details see [32].

All methods use the adjacent matrix to calculate the shortest path between two nodes. For each algorithm, the user’s current location (start-point) and the destination point (end-point) are needed. The output is the optimum route associated to the user’s disability.

3.4 Multi-objective approach

For obtaining the optimum route, the multi-objective approach was based on the Weighted Sum Method that defines the optimisation problem as

$$\begin{aligned} \min F \equiv \sum _{i=1}^{n}\alpha _i F_i \end{aligned}$$
(1)

where \(\displaystyle \sum _{i=1}^{n}\alpha _i=1\) for some n objectives functions. The optimisation problem defined on (1) can be solved by any routing algorithm presented on the previous subsection.

Solving the optimisation problem (1) for different values of \(\alpha _i\), \(i=1,...,n\), it is obtained a set of solutions. The solutions not dominated define the Pareto front set.

4 Numerical results

This section presents the numerical results associated with the evaluation of the four algorithms and the defined objective measures.

The tests were performed under a Lenovo machine with a x64 bits system, 32 GB RAM and Intel(R) Core(TM) i7-4910MQ CPU. The mobile device used to run the application was a Xiaomi, model Mi A2 with 4 GB RAM. The presented results were obtained using the Viana+Acessível application.

The mobile application was developed in React-native library, version 0.64.2, using JavaScript programming language. Currently the application is working with 864 nodes identified by the associations described at Subsect. 3.2. Viana+Acessível application is available in Android and IOS.

To evaluate the algorithms, six paths with different characteristics were analyzed. The multi-objective approach was also explored with two and three criteria, identifying the conflicting objective measures.

4.1 Case studies

Table 3 presents the selected six paths to evaluate the algorithms. The notation of \(S_i\), \(M_i\), and \(L_i\), for \(i= 1,2\) represent short, medium, and long length paths, respectively, so the impact of this variable can be assessed.

Table 3 Paths identification

Figure 2 illustrates the start and end points of the six paths in the city of Viana do Castelo, Portugal.

Fig. 2
figure 2

Paths start and end points visualisation

These paths will be used in the Viana+Acessível application to test and validate the proposed multi-objective approach.

4.2 Effectiveness

The presented system differs from the majority of mobility solutions in the market since its main objective is to provide the end user with an accessible option/variant to a given destination. The user can choose between an accessible path or combine also with other parameters such as time, slope and length. As mentioned in Sect. 3.2, the classification of street accessibility is made with the collaboration of non-profit social institutions that work daily with disabled people and are aware of which street characteristics affect the user’s autonomy. Figure 3 depicts an illustrative example of the difference between the standard mobility software (quickest path) and the solution presented in this paper. In this scenario, a user with autism spectrum disorder located at the Sanctuary of Senhora da Agonia intends to go to the hospital entrance. As acknowledged by the AMA institution, individuals with these disorders should avoid crowds and loud places since these environmental characteristics can perturb their autonomy. The street segments are classified from exclude to excellent paths for the user, represented from black to green colours. The fastest path, disposed on the left, is 840.87 ms long and takes approximately 11.21 min to walk. On the other hand, the accessible path, disposed on the right, is 986.82 ms long and takes approximately 13.16 min to walk.

Fig. 3
figure 3

Effectiveness

Analyzing the results, the paths have a difference of 1.55 s in terms of the time it takes to finish. There is not a significant discrepancy in the time parameters, however looking at the accessibility classification the fastest path includes red, black and hot pink segments, which represent a narrow climb where cars pass resulting in a lot of noise; a sequence of dangerous crosswalks and a main road, respectively. In conclusion, the solution proposed is beneficial for the user, since it offers a safer route with an identical time when compared to the fastest route.

4.3 Numerical results considering uni-objective approach

To evaluate the performance of the Viana+Acessível application for each one of the methods described in Subsect. 3.3, each path was calculated with all four algorithms and the four objective measures. In order to validate the obtained results, ten independent runs were performed for each path and each algorithm. The obtained results in terms of the average of execution time, in seconds, are presented in Table 4. The execution time is shown for each method/objective measure, namely accessibility, time, slope, and length.

Table 4 Obtained results in execution time (in seconds) in average for all paths and methods

The data analysis of Table 4 allows to conclude that A-Star and Dijkstra algorithms obtained better results compared to the other routing algorithms. The difference between the execution time of both algorithms is minimal, nonetheless, the A-Star algorithm obtained the optimum path in less time when compared with Dijkstra algorithm results. Based on the executed tests, the A-Star method proved to be the most efficient routing algorithm for the Viana+Acessível application. Figure 4 presents an illustration of the Viana+Acessível Application for \(S_1\), \(M_1\), and \(L_1\) paths.

Fig. 4
figure 4

Optimised paths S1, M1, and L1

Since it was the best method in terms of execution time, the A-Star method was used considering a multi-objective approach.

To determine if the four objective measures are conflicting objective measures, Table 5 presents for each path, the objective measure selected to identify the optimal path, and the corresponding values for the other objective measures (accessibility, time, slope, and length).

Table 5 Obtained results in terms of the four measures

From Table 5 analysis, it is possible to conclude that both time and street length objective measures obtained the same optimal path and objective measure values for the six tested paths. These criteria are not conflicting objectives, so they should not be used together as an input objective measure for the multi-objective algorithm. For the multi-objective approach only three objective measures will be considered, namely: accessibility, time and slope.

4.4 Numerical results considering bi-objective approach

The optimisation problem (1) was solved by the A-Star method, since it was the strategy that obtained better execution times.

Table 6 Bi-objective results for all objective measures

Table 6 presents the obtained results, the data collected were the number of optimum paths (\(P_i\), \(i=1,...,6\)) identified by the algorithm considering the selected criteria. The same table shows that more lengthy paths (\(L_1\) and \(L_2\)) obtained different optimum paths on the Pareto front considering the selected criteria (accessibility versus time, accessibility versus slope and time versus slope).

To illustrate the bi-objective approach, the accessibility and slope measures were selected combined with Path \(L_2\). Six possible paths were identified. The Pareto front of the Path \(L_2\) is depicted in Fig. 5.

Fig. 5
figure 5

Pareto front for Path \(L_2\) considering the objective measures, Accessibility and Slope

The extreme paths are \(P_1\), with a total path slope of 36.423 degrees and path accessibility score of 42,618, and \(P_6\) with a total path slope of 56.122 degrees and path accessibility score of 13,436.

To visualize the bi-objective strategy, consider the following situation. A user belonging to the spectrum autism disorder segment is located at Street ’Frei Bartolomeu dos Mártires’ and intends to go to ’CTT Praça Alto Minho’ (this path corresponds to the \(L_2\) path).

In the application Viana+Acessível will show five optimum paths (the extreme paths considering each criterion and the 3 paths more near to the origin). The mobile application presents one path at a time. The user can adjust the slider to choose the most relevant criteria, as can be seen in the Fig. 6.

Fig. 6
figure 6

Optimal paths for path \(L_2\)

4.5 Numerical results considering tri-objective approach

Experiences with the three criteria were done to identify the Pareto front all the six paths considered on this study. Table 7 presents the obtained results.

Table 7 Obtained results with three criteria

As can be observed in Table 7, once again the longest paths are the ones that have more optimum paths. In particular, path \(L_2\) has five optimum paths. The difference in the objective measure has different impacts according to the objective measure, for example the accessibility objective measure has a difference of 493% between the less and higher values (18 828 and 111 608, respectively). The path slope has a difference of 23% and the time measure has a difference of 7%.

Considering the path with a bigger number of optimised solutions— Path \(L_2\), the Pareto front can be analyzed in Fig. 7 through the 3D graphics that represent the three objective measures. To simplify the analysis, the projection into 2D graphics was elaborated considering the combination of the three objective measures: Time versus Accessibility, Slope versus Accessibility and Slope versus Time.

Fig. 7
figure 7

Pareto Front of the Path \(L_2\) considering the three objective measures

It is possible to observe that the five optimum paths are not dominated, meaning that each path has at least an objective measure with less value. We can conclude that a multi-objective approach should be explored in inclusive mobility to adapt the application to give them different solutions with different characteristics.

5 Discussion

This study intends to improve inclusive and sustainable mobility in Viana do Castelo city in Portugal. In previous work, the user can access the most accessible path for his condition based on a street classification. Tests were performed with real users in order to understand the true impact of the application on the user’s life. The feedback was very positive, users and members of the social institution claimed that the proposed solution could help them in their daily tasks and improved their autonomy. However, the route calculation was only based on the accessibility classification which can be restricted since each user has a different condition level. The relevance of this work regards the development of a multi-objective approach that can better adapt to each user’s need. With the option to choose different criteria, the routing algorithm generates a more accurate path for the user.

Other approaches already were explored using, A* algorithm in a multi-objective context [25, 26]. The results show that A* method obtains better results when compared with other methods. Overall, same as in both previously cited articles, this study proposed a multi-objective search algorithm based on A* method combined with heuristic functions, search strategies, and data structures. The application developed was tested in a real context for six different profiles obtaining optimal solutions in a short runtime.

6 Conclusions and future work

This paper details the implementation of a multi-objective approach on a route optimisation algorithm applied to an inclusive mobility solution. The work was developed under the app Viana+Acessível, an app which has been already published in the Play Store to be made available to all citizens of Viana do Castelo city, in Portugal.

Tests made show that the A-Star routing algorithm is the most appropriate for the mobile application and the defined scenario. This algorithm returns the optimum path with a lower execution time when compared to the Dijkstra, Floyd–Warshall and Bellman–Ford algorithms.

In the particular scenario considered for this study, the optimum path depends on several criteria which reveals the need to adapt the A-Star routing algorithm to support a multi-objective approach. The executed tests showed that the street accessibility, street slope, time and street length criteria should be made available for the user to choose in the mobile application in order to identify the optimum path between two different destination points. These criteria are conflicting objectives with one exception, the combination of the time versus street length generates the same optimum solution for all tested paths. The research proved that three criteria have conflicting values, justifying the multi-objective approach. Bi-objective and tri-objective were applied and Pareto front was explored and analyzed.

The future work of the Viana+Acessível mobile application includes the possibility to allow users to choose multiple destinations on the map returning the optimum path that goes through all chosen destinations. Incorporate crowdsourced data is also another line of future work considering the scalability of the solution to larger cities.