1 Introduction

Nowadays, vehicle users demand efficient route planning in a dynamically changing environment. However, existing navigation systems consist mainly in the analysis of static parameters (e.g., total route length or road type), and even recent solutions rarely use uncertain data (e.g., average driving speed in selected hours). In modern navigation systems the dynamic properties of the traffic conditions are still not considered enough. For example, Google Maps consider current traffic information only partially. Therefore, in many cases the driver must recognize traffic conditions in advance or in the place of an accident, which is highly inconvenient. Thus, in congested metropolises, the efficiency of route planning, which is particularly important in daily activities of public services such as police, fire brigades, medical emergency services, etc., is far from what is expected. When traffic conditions change, the navigation system should be able to compute the new route in a few seconds and send it to a user or decide wheatear this change has a significant impact on the travel time.

Route planning problems are often subject to various time-varying factors, such as equipment failures, traffic accidents, traffic congestion and uncertainties in road networks. Most of the existing navigation systems use the average values of travel times to reflect the dynamics of the road traffic. However, in our opinion interval values describe the dynamic nature of the road traffic better than the average values, because they take into account both the shortest and the longest travel time measured in the predefined time intervals. For example, in some cases the average value can remain unchanged even if the minimum and the maximum travel time changes. So, the interval quantity is more informative than the average. Moreover, an appropriately parametrized system based on the interval arithmetic allows better reaction to a chaotic change of the road congestion by “capturing” relevant and “filtering” irrelevant changes, i.e., by taking into account changes that indeed influence travel times and neglecting an usually large amount of data that does not influence significantly travel times. Additionally, the interval arithmetic offers the relatively easy computational model, much simpler than the stochastic approach. The main contributions of this paper are as follows:

  • The system for real-time optimisation of a route in a dynamic (highly uncertain and unpredictable) environment, such as city road traffic has been proposed. The presented solution employs algorithms that use information on current traffic parameters delivered continuously from various types of sensors. The amount of available data is quite large, so we had to face the problem of their appropriate use in traffic management or drivers supporting systems. The developed solution gives the possibility of efficient use of available data and meeting the expectations of road network users.

  • We have formulated theorems that are based on interval arithmetics which would enable us to optimise the decision to change the route, in the presence of uncertainty.

  • We have demonstrated the usefulness of interval algebra for effective description and analysis of dynamic traffic parameters, in particular for optimising decisions in the presence of uncertainty.

Thanks to the use of interval arithmetics, the proposed algorithm enables us to determine if the route should be changed to effectively reach the goal – because the traffic in the entire network has changed (e.g., travel times in some sections) so that the current route is no longer optimal. Moreover, the developed solution would allow as to prevent situations in which the drivers use routine routes, despite the fact that their travel time changes dynamically depending on the time of day, becoming far from optimal. This, in turn, allows preventing traffic accumulation, making it easier to maintain the equilibrium in the road network.

So, the main issue addressed in this paper is to develop intelligent tools that will help the system to decide whether it should send or not a new route to a driver, based on uncertain (due to fluctuations) travel times. The developed solutions, presented in Section 5.4, are integrated with the INSIGMA (Intelligent Information System for Global Monitoring, Detection and Identification of Threats) system. The main objective of the INSIGMA system is to improve the public security and life quality by providing advanced tools that are able to detect dangerous events as well as monitor and optimise road traffic. This objective can be achieved by using dynamic data obtained from different types of sensors, such as cameras and inductive loops. The detailed description of the INSIGMA system is presented in Section 3. In the presented system the traffic parameters are determined by using the traffic image processing.

The rest of the paper is organized as follows. Section 2 presents an overview of methods for classical route optimisation in a static environment. Section 4 describes methods for modelling uncertainty. Section 5 presents the theory and algorithms developed for the Route Planning System. Section 6 is devoted to experimental tests of the proposed navigation system. The paper ends with some concluding remarks.

2 Related works

2.1 Fast route algorithms

There exist quite a great number of algorithms for fast route planning. Below we present an overview of the best-known such algorithms.

Bidirectional Dijkstra algorithm

[31] searches a graph forward from a starting vertex and backward from an ending vertex until they meet. The bidirectional search is very important, since it can be used in combination with other speed-up techniques.

Separator-based multilevel method

[48] defines the shortest-path overlay graph. The main idea of this approach is to partition the graph into smaller sub-graphs, where the shortest-path distance in the origin graph is equal to the shortest-path distance in the sub-graphs. This approach is extended to multiple levels ([4, 21]). In the dynamic case (when the weight of the edge within some components changes), the complete construction of the sub-graph is not needed. However, due to the fast increase of the processing time and required space, this method can be impractical for large graphs.

Highway hierarchies

(HHs) algorithm [44], which is used by several commercial systems, is based on the assumption that only the main roads are used to cover the distance from an origin to a target. This method requires a special type of preprocessing and tuning, taking into account the quality of computed routes and the calculation speed. This algorithm is very similar to the heuristics used in commercial systems. Nevertheless, this method is much faster, because it finds the optimal route in milliseconds. Some modification of the Highway Hierarchies [44] method relies on using distance tables [43]. The total distance for nodes in a certain level can be precomputed and stored in a table. This algorithm can be two times faster than the pure HHs search.

Reach-based routing

[18] method resembles the HHs method and has some variants (including the dynamic ones), that use the geometric distance or the shortest-path distance. Because of the high computing cost(data preprocessing), the Reach-based Routing method is not preferred for large networks.

Transit-based routing

[39] method is based on the rule that when driving to a distant place, the origin place is left through a limited number of significant traffic junctions (called transit nodes) hence the calculation of the shortest path is limited to some table lookups.

Edge labels

[48] method precomputes information for an edge that specifies a set of nodes which are a superset of all the nodes that lie on the shortest path starting within this edge. In [48] this superset is specified by an angular range. In this method many types of geometric containers [29, 54] can be used; however, it requires computation the shortest path for each pair of the nodes.

Landmark-A*

method [16] uses precomputed distances to the set of nodes, uniformly distributed over far ends of a network. This approach enables the algorithm to gain a considerable speed-up for route planning as well as much less preprocessing time.

Precomputed cluster distances

(PCD), is based on partitioning of a network into disjoint clusters [34]. The PCD method can be used in prune search, because it provides upper and lower bounds for distances. The prune search gives the speed-up comparable to Landmark-A*; however, using smaller memory space.

Schultes and Sanders [47] introduced a dynamic technique for the fast route planning in a large road networks, called the Dynamic Highway-Node Routing (DHN). This method uses a special type of data preprocessing. Thanks to this, if the travel times change, the already preprocessed data will be updated in milliseconds. This method is based on the generalization of the Separator-based Multilevel method [48] for the highway-node routing and allows finding the shortest path in one microsecond on average. The most interesting and important for the problem presented in this paper is that the authors proposed two types of settings in a dynamic case i.e. when the travel time changes because of the traffic fluctuation. The former is the server setting, where the cover graphs are updated so that the algorithm could once more produce correct results. The latter one is a mobile setting, where changes are not introduced. It should be mentioned that in the server setting case, updating of the preprocessed data requires a very small amount of time. In the urban route case, this time practically does not depend on the number of the changed edges. The method based on the DHN algorithm will be used in the system presented in this paper for calculating new routes.

The most interesting recent advances in the route planning and the traffic optimisation, based on both the exact and approximation methods, such as the dynamic programming, linear programming and the approximation methods, are presented below. In the future, some of these methods can be implemented in the INSIGMA system to improve its robustness.

Dinitz et al. in [14] proposed a hybrid algorithm based on the Bellman–Ford and Dijkstra algorithms, improving the running time bound of the Bellman–Ford algorithm for graphs with a sparse distribution and negative cost edges. Delling et al. in [12] proposed the shortest path algorithm which supports turn costs, enables real-time queries, and can incorporate a newly defined cost function in a few seconds. It enables supporting real-time traffic updates and personalized optimisation functions.

Buchhold et al. in [7] studied the equilibrium flow patterns in road networks. They consider the problem known as the traffic assignment, where a flow on each road segment is at a equilibrium. This approach enables developing interactive transportation and urban planning applications and in the future, real-time demand-responsive public transit systems. Angelelli et al. in [1] proposed the linear programming model for a proactive route guidance approach that minimises both congestion and the user travel inconvenience. In this approach the algorithm assigns paths other than the shortest (least-duration) to vehicles in order to reduce the congestion in the road network while keeping the user travel inconvenience on a reasonable level. Rahmani et al. in [42] investigated the sensitivity of the estimated travel times and proposed a fixed point formulation of the simultaneous path inference and the travel time estimation problem. Lee et al. in [30] proposed the Gini coefficient, which is a well-known measure of the statistical dispersion, for measuring and evaluating the travel time reliability.

Zeng et al. in [57] proposed the optimisation model for the energy-efficient vehicle driving from the origin to the destination within a certain period of time. In order to solve this problem, the dynamic programming method was used. In the proposed model the stop signs, traffic lights, turns and curved segments, roads with different grades and speed limits, and torque operation are defined as constrains of the decision variables.

Ma et al. in [32] proposed a generalized Markov chain approach for estimation of the trip travel time distributions between arbitrary origin-destination pairs at arbitrary times, from a link or segment travel time distributions. The proposed approach can be used under the situation when data sample is limited, especially for urban road networks. Chen et al. in [8] proposed a copula-based approach that incorporates the stochastic characteristics of the segments’ travel time to model an urban arterial travel time distribution (TTD). It serves as a basis for the travel time reliability estimating and can be implemented in various applications in practice including the real time dynamic control of traffic systems, the congestion and the incident detection. Sever et al. in [51] proposed a hybrid approximate dynamic programming (ADP) with a deterministic look-ahead policy and value function approximation for the dynamic shortest path problem with travel time-dependent stochastic disruptions. The considered problem is formulated as a discrete time finite horizon Markov decision process.

Chen et al. in [9] proposed the moment–matching–based hybrid genetic algorithm (MHGA) to search for the reliable shortest path (RSP) in stochastic road networks with link correlations. In the presented approach the link travel times are characterized by lognormal distributions and the correlations between links are considered in the form of the correlation coefficient. Dib et al. in [13] proposed the meta-heuristics based on the genetic algorithm (GA) and the variable neighbourhood search (VNS) for the shortest path problem. Zhang et al. in [58] proposed the hybrid algorithm based on combining the artificial immune and the ant colony optimisation algorithms (IACO) to solve the multi-objective emergency grain distribution vehicles routing problem. This algorithm uses the Pareto non-dominated sorted population and calculates the degree of crowding which preserves the density of population by determining whether a solution is located in a crowded area of the known Pareto solutions or not. Miao et al. in [35] proposed the optimisation algorithm based on the evolution paradigm and along with an adaptive real-time optimisation strategy to solve the vehicle macroscopic motion planning (VMMP) problem. This problem optimise simultaneously a vehicle route and a speed using both traffic data and vehicle characteristics to improve the fuel economy for a given expected trip time. The optimisation model utilises the current traffic flow data. Marinakis et al. in [33] proposed a hybridized version of the particle swarm optimisation algorithm (PSO) with a variable neighborhood search (VNS) for solving the constrained shortest path problem. Huang et al. in [24] proposed a time-delay neural network (TDNN) framework for the time-dependent shortest path problem.

Nowadays, the importance of the route optimisation in the dynamic environment is on the increase. Han et al. in [19] considered the problem of the path replanning in a dynamic environment. This problem is similar to the one considered in this paper, but refers to the obstacles moving on the triangular grid instead of the road traffic. The authors proposed a decision-making methodology for a path regeneration which enables making intelligent decisions to reduce the path length without updating the path over every time unit interval. Hu et al. in [22] proposed the ripple-spreading algorithm (RSA) for the path optimisation problem. The RSA algorithm in contrast to the most deterministic top-down centralized path optimisation methods, such as the Dijkstra’s algorithm, is a bottom-up decentralized agent-based simulation method which guarantees the global optimal solution with a very good scalability. For this problem Hu et al. in [23] proposed the RSA algorithm as a realization of the co-evolutionary path optimisation which achieves in a single run the optimal actual travelling trajectory in a given dynamic routing environment.

Idri et al. in [25] proposed the shortest path algorithm for the time-dependent and multimodal networks. Sarbazi-Azad et al. in [45] proposed for the all-pairs shortest path problem and the single-pair shortest path problem the method which exploits the GPU computational power. All the shortest paths for the million vertex graphs can be computed in 360 seconds and a single-pair shortest path query on the same graph is answered in a quarter of a millisecond. Huang et al. in [24] considered a path selection in the road network as a integrated decision in the time-dependent vehicle routing problem, denoted as the path flexibility (PF). In the proposed approach the path selection decision depends upon the departure time at the customers and the congestion levels in the relevant road network.

Nowadays, the number of methods for path planning in the dynamic enviroment considerably increases ([2, 40, 41, 55, 59]). But, they generally refer to the problem of path planning in the dynamic environment in the context of autonomous mobile robots navigation or unmanned aerial vehicles. A detailed survey of the recent advances in algorithms for the route planning in transportation networks is presented in [5].

3 Centralized system for route planning

The Intelligent Route Planning System (RPS) is a part of the INSIGMA (Intelligent Information System for Global Monitoring, Detection and Identification of Threats) project [10, 11]. The main objective of the latter system is detection, identification, monitoring of objects and threats in a dynamic environment, such as road networks and public areas. Solutions developed in the INSIGMA project present a holistic approach to the broadly understood security and ecology in the sense of energy savings. The project includes solutions from several areas, such as people recognition, suspicious behaviour recognition, vehicles identification, traffic monitoring, threats identification, data security, route optimisation and multimedia data mining.

The important objective of the INSIGMA project is calculation of the best route for individual drivers in the dynamic road traffic. On the basis of the parameters describing the state of the current traffic obtained by several types of the detectors, such as video-detectors, acoustic arrays, microwave sensors, GPS trackers and many others, the RPS system (Fig. 1) provides the drivers with the best route from origin to destination. This route is calculated using various types of the optimisation algorithms, which take into consideration both the user preferences and availability of the traffic information.

Fig. 1
figure 1

Traffic analysis using video-detectors in INSIGMA project

Figure 2 presents the basic elements of the Route Planning System [53]. The most important element of the RPS system is the Decision Module which takes a decision if the route contained in the Calculated Routes should be recalculated or/and sent to the drivers using the Client Interface. If some travel times change the routes in the Calculate Routes module are updated using, i.e., the DHN algorithm (see Section 5.4). The Algorithms module embeds both exact and approximation algorithms for the path optimisation (e.g., DHN) and algorithms for prediction of traffic parameters (e.g., neural network, decision tree). The Static Map stores the physical description of the roads and roadsides while the dynamic parameters, such as the average speed or the travel time, are stored in the Dynamic Map. The data gathered by these modules and the Data Warehouse is accessible through the web service-based interfaces included in the Client Interface. Additionally, the Dynamic Map and the Data Warehouse provide an OLAP interface allowing for an ad-hoc multi-dimensional analysis. The semantic descriptions of the data stored in the RPS system, such as detectors and monitoring parameters, roads preferred by the users, tasks, algorithms, users and rules are included in the ontologies defined on the basis of the Web Ontology Language (OWL) are stored in the Ontologies module. The Data Warehouse stores the historical data for the future analysis by the Prediction Module. This module enables predicting the future traffic state on the basis of the multi-dimensional data analysis using the machine learning methods. The Areas module stores the special areas of the city road network e.g. those characterised by an unexpected traffic fluctuation or available only for a special type of users (police, medical services, etc.).

Fig. 2
figure 2

Most important modules of Route Planning System

4 Route Planning System under uncertainty

Significant acceleration of the response time of the shortest path queries is obtained by using precalculated paths and specially prepared data stored in the RPS database (see, e.g., [3, 15, 46]). However, unexpected traffic fluctuations can affect big areas of the road network. If those fluctuations are frequent, travel times become uncertain. In order to avoid slowing down of the traffic, it is crucial to be able to answer, on the basis of uncertain information, whether a new shortest path should be recalculated and sent to the car driver. The main issue addressed in this paper is determining the conditions under which a new route should be calculated and sent to the user. It enables road traffic smoothing, reducing the computational effort required to the shortest path calculation and additionally minimizes the network traffic between RPS application servers (the Client Interfaces in Fig. 2) and thousands of customers. In order to be able to address this issue, the appropriate way of modelling uncertain travel times, which are stored in the Data Warehouse, must be selected. In general, there are three most popular ways of modelling uncertainty: stochastic approach, interval approach and fuzzy approach.

The stochastic time dependent route planning uses time-dependent road-graphs, where the average and the standard deviations of the travel time are stored. He et al. [20] showed that the travel time distribution is best described by a left-centred distribution (with a larger probability of deviations to high realizations of the travel times rather than to low travel times). In the stochastic models, the uncertainty of the travel time of one edge progresses through a route and influences the cost of other edges. Calculating the impact of the variance of the edge travel time on the variance of the whole path is not practically feasible. The main deficiency of this approach is that computing the variance of a path requires for all edges in the path a comprehensive calculation of all potential combinations of the travel times. This approach is time and space costly for large road-graphs unless the travel time profiles have a simple form [60] and travel times are Erlangk or exponentially distributed.

In the fuzzy approach, the travel times are modeled using fuzzy numbers [56] or fuzzy random variables. Initially, fuzzy numbers were used in a unified system for planning route based on uncertain information. Finally, interval numbers were used instead, despite the fact that the fuzzy numbers enable a more precise description of the traffic. The fuzzy numbers give too excessive computational and memory overhead. As mentioned earlier, the response time has fundamental significance because the Route Planning System works nearly as a real-time system.

5 Main result

This section introduces the preliminary theory of interval route planning and presents algorithms developed for the RPS system integrated within the INSIGMA system.

5.1 Interval arithmetic

When dealing with real-world problems, one can rarely avoid uncertainty. At the empirical level, uncertainty is an inseparable companion of any measurement. The difference between the measured and the actual values is called a measurement error. The absolute value of the measurement error can usually be bounded. It is therefore guaranteed that the actual (unknown) value of the desired quantity belongs to the interval with the midpoint being the measured value, and the radius being the upper bound for the (absolute value) of the measurement error. Interval arithmetic is also very useful when dealing with rounding errors that are inherent in a floating-point computation. Therefore, imprecision, approximation, or uncertainties in the knowledge of the exact values of physical and technical parameters can be modelled conveniently by means of intervals. The role of compact intervals as independent objects is continuously increasing in numerical analysis when verifying or enclosing solutions of various mathematical problems or when proving that such problems cannot have a solution within a given domain. Interval arithmetic has been successfully used in chemical engineering [52], in the domain of spacecraft systems [28], in economics [26], in the simulation of physical and diagnostic reasoning, in the analysis and control of structural systems [17]. Nowadays, application areas of interval methods include electrical engineering, industrial engineering, control theory, remote sensing, experimental and computational physics, chaotic systems, celestial mechanics, signal processing, computer graphics, robotics, computer-assisted proofs, power systems, finance, route planning etc.

In the interval approach to route planning, an uncertain travel time \(\widetilde {t}\) is represented by a closed interval \(\mathbf {t}=[\underline {t},\overline {t}]\). No further information which values are more likely to occur is available. It needs to be remarked that throughout this paper, interval quantities will be denoted, according to the interval standard, by bold small cap letters, and 𝕀ℝ will denote the set of all closed intervals.

Elementary arithmetic operations ∘ ∈ {+, −, ∗, /} are defined on the set of intervals using the endpoints [38] in the following way:

$$\begin{array}{@{}rcl@{}} &&\boldsymbol{x}+\boldsymbol{y}=[\underline{x}+\underline{y},\overline{x}+\overline{y}],\\ &&\boldsymbol{x}-\boldsymbol{y}=[\underline{x}-\overline{y},\overline{x}-\underline{y}],\\ &&\boldsymbol{x}\cdot\boldsymbol{y}=[\min\{\underline{x}\underline{y},\underline{x}\overline{y},\overline{x}\underline{y},\overline{x}\overline{y}\},\max\{\underline{x}\underline{y},\underline{x}\overline {y},\overline {x}\underline{y},\overline{x}\overline{y}\}],\\ &&\boldsymbol{x}/\boldsymbol{y}=\boldsymbol{x}\cdot[1/\overline{y},1/\underline{y}], 0 \notin \boldsymbol{y}. \end{array} $$
(1)

In order to be able to employ interval quantities in the route planning system, the ordering of intervals is required. Despite the fact that there is no natural ordering among the intervals, several comparison methods have been developed. Ordering of intervals is of great interest in practical modelling and optimisation of real world cases. Below, the probabilistic approach proposed in [49] is presented.

Let \(\boldsymbol {a}=[\underline {a},\overline {a}]\) and \(\mathbf {b}=[\underline {b},\overline {b}]\) be intervals and let aa and bb be independent uniform random variables. If a and b overlap, then some disjoint subintervals can be distinguished. The fall of random variables a and b in the subintervals [a1, b1], [b1, a2], [a2, b2] may be treated as a set of independent random events. Let Hk : aai, bbj, for k = 1 to n, be random events, where ai and bj are certain subintervals of intervals a and b in accordance with a = bigcupiai and b = bigcupibi. Let P(Hk) be the probability of an event Hk, and P(b > a|Hk) be the conditional probability of b > a given Hk. Then, the composite probability may be expressed as follows:

$$ P(\mathbf{b}>\boldsymbol{a})=\sum\limits_{k = 1}^{n}{P(H_{k})P(\mathbf{b}>\boldsymbol{a}|H_{k})} $$
(2)

The resulting formula for the case of overlapping is as follows:

$$ P(\mathbf{b}>\boldsymbol{a})= 1-\frac{1}{2}\frac{(a_{2}-b_{1})^{2}}{(a_{2}-a_{1})(b_{2}-b_{1}}) $$
(3)

The results obtained in [49] for all possible interval overlapping are shown in Table 1, where obvious cases (without overlapping) are omitted.

Table 1 Typical cases of interval comparison [49]

The probability based approach can be treated as a framework for elaboration of constructive methods of interval comparison in various special situations. Some aspects of the interval comparison and ordering group of intervals, based on this approach, are presented, e.g., in [50].

5.2 Interval approach to the shortest path problem

If it is possible to find a route not affected by travel time changes, special assumptions about the searched route must be made. Montemanni et al. [37] define two types of optimisation problems: the absolute robust shortest path problem and the robust deviation shortest path problem.

Let us assume that some scenario r is a feasible realization of edge costs. The absolute robust shortest path (ABS) is the path which for all possible scenarios r has the smallest (among all paths from the origin to the destination) maximum cost.

The difference between the cost of the path from origin to destination and the cost of the shortest path from origin to destination in the scenario r is called the robust deviation.

The robust deviation of the shortest path (RD) from origin to destination is the path, which for all possible scenarios r has the smallest (among all paths from origin to destination) maximum robust deviation.

A branch and bound algorithm was proposed for ABS and RD problem in [37] and a mixed integer program was defined for these problems in [36]. Both ABS and RD problems are NP-hard, and hence finding a solution to bigger graphs is practically impossible. In the early version of the RPS system, this algorithm was used for finding the shortest path; however, it provides too pessimistic results.

5.3 The travel time change effect under interval uncertainty

Let the model of a road network be defined by a graph G = (V, E) with a weight function w : E → ℝ, which assigns a real value (a weight) to each edge (u, v) ∈ V × V of the graph G. It can be assumed that edge weights, which defines the travel time, can change in time (i.e., they are functions of time).

Let us consider a typical situation occurring in a city traffic. A vehicle drives from a start point s (vertex in the graph) to a target point u, using the shortest route calculated on the basis of the instantaneous travel time. If during the journey, the travel time changes for some road (modelled as an edge of the graph), the shortest path may change as well. The following theorems allow us to state whether the new shortest path needs to be recalculated and sent to a driver.

Theorem 1 (Edge elongation)

Let a graph G = (V, E) be given. Let p be the shortest path from a start vertex s to a target vertex u in G, such that the length of p is L(s; u; p; G) and p contains an edge a = {v1, v2}, i.e., p = (s, … , v1, v2, , … , u). Let then pbe the shortest path of length L(s; u; p′; G′) from s to u in the graph G′ = (V, E∖{a}). Now assume that the edge a was elongated by Δa > 0. Then, the path p remains the shortest path in G if

$${\Delta} a<L(s,u,p^{\prime},G^{\prime})-L(s,u,p,G). $$

Proof

(Theorem 1) The following two cases can be distinguished:

  1. i.

    The edge a is not a part of the path p. Then, the path p remains the shortest path from s to u in G, regardless of the length of the edge a.

  2. ii.

    The edge a is a part of the path p. Then, the elongation of the edge a by Δa causes the respective elongation of the path p, and hence the path p might no longer be the shortest path in G. This will be the case if there exists a path p′ that does not contain the edge a and is shorter than p, i.e., L(s, u, p, G) + Δa > L(s, u, p′, G). To determine whether such a path exists, it is enough to compute the shortest path in the graph G′ = (V, E ∖{a}).

Theorem 2 (Edge shortening)

Let a graph G = (V, E) be given. Let p be the shortest path from a start vertex s to a target vertex u in G, such that the length of p is L(s, u, p, G) and let G′ = (V, E∖{a}), where a = {v1, v2}. Let as assume that the edge a was shortened by Δa > 0. Then, the following holds:

  1. (i)

    If a is a part of p, then p remains the shortest path in G, regardless of the size of Δa.

  2. (ii)

    If a is not a part of p, then p remains the shortest path if the following inequalities are fulfilled:

    $$ L\left( s,v_{1},G^{\prime}\right) +l(a)-{\Delta} a+L\left( v_{2},u,G^{\prime}\right)>L(s,u,G), $$
    (4)
    $$ L\left( u,v_{1},G^{\prime}\right)+l(a)-{\Delta} a+L\left( v_{2},s,G^{\prime}\right)>L\left( s,u,G\right), $$
    (5)

    where l(a) is the length of the edge a before shortening, L(s, v1, G′) (L(u, v1, G′)) is the length of the shortest path between s and v1 (u and v1), and L(v2, u, G′) (L(v2, s, G′)) is the length of the shortest path between v2 and u (v2 and s) in G′.

Proof

(Theorem 2)

  1. (i)

    The edge a is a part of the path p. Since p is the shortest path from s to u, hence L(s, u, p, G) < L(s, u, p′, G) for each path p′ from s to u in G. The shortening of the edge a will shorten the path p and other paths that contain the edge a (paths that do not contain the edge a can be neglected). The new lenght of the path p and other considered paths are, respectively, L(s, u, p, G) −Δa and L(s, u, p′, G) −Δa. Now, since

    $$L(s,u,p,G)<L(s,u,p^{\prime},G), $$

    thus

    $$L(s,u,p,G)-{\Delta} a<L(s,u,p^{\prime},G)-{\Delta} a, $$

    which means that p is still the shortest path from s to u in G.

  2. (i)

    The edge a is not a part of the path p. Then, p may no longer be the shortest path from s to u in G. A path that contains the edge a can become the new shortest path. Therefore, it must be checked if the two paths depicted in Fig. 3 are not shorter than path p. However, since every subpath of the shortest path is the shortest path between the two of any vertices in this path(according to Bellman’s Principle of Optimality [6]), it is enough to calculate the shortest path in the graph G′ = (V, E∖{a}) from the start vertex s to v1, the shortest path from v2 to u (see Fig. 3(1)) and, respectively, the shortest path from the vertex s to v2, the shortest path from v1 to u (see Fig. 3(2)). By an appropriate combination of both path pairs with the edge a, the shortest path between s and u, which contains the edge a, is obtained. If one of these two paths are shorter than p, then this path is the shortest path between s and u after shortening the edge a.

Fig. 3
figure 3

Two cases for path that includes edge a = {v1, v2}: (1) when the route first visits the node v1 or (2) when the route first visits the node v2

5.4 Interval route planning algorithm

The developed Route Planning System obtains information about the current traffic state from video-sensors. On the basis of the parameter values from RPS sensors, the travel time for each route (edge (i, j)) is calculated and stored in the Dynamic Map. The structure of roads, e.g., junction topology, is included in the Static Map. For each route in the Static Map, an interval number describing minimal and maximal measured travel time in the last (n − 1)δ seconds is stored:

$$ \mathbf{T}_{ij}=[\min(T_{ij}(t_{s}-i\delta)),\max(T_{ij}(t_{s}-i\delta))],i = 0,1,\ldots, n-1 $$
(6)

Apart from this, the simple moving average measured travel times in the last (n − 1)δ seconds \(\overline T_{ij}(t_{s})\) are stored too:

$$ \overline T_{ij}(t_{s})=\frac{1}{n}\displaystyle\sum\limits_{i = 0}^{n-1}T_{ij}(t_{s}-i\delta) $$
(7)

there ts − (n − 1)δ,…, tsδ, ts are the moments of the last n travel time measurement. It is typically assumed that the measurement period δ ranges from 20 to 30 seconds and n ranges from 10 to 15.

The first version of the RPS system used a branch and bound algorithm for the robust shortest path (RD) (see Section 5.2) proposed by Montemanni et al. in [37]. However, because of the too pessimistic approximation of the shortest-path, in the current version of the RPS system for computing the shortest route, the Dynamic Highway-Node Routing (DHN) algorithm, proposed by Schuters and Sanders [47] in the server scenario version, is used. This algorithm has an ability to update fast and easily the travel time of the shortest path when one or a few edges are changed (see Section 2.1).

The simple moving average time (the (7)) is used for computing the shortest path. In order to make the system more robust for small travel time changes, the decision about sending a new shortest path to the user is made on the basis of interval travel times and Theorems 1 and 2. For clarity, to represent an interval values bold characters will be used. The values defined in these theorems are modeled by interval values in the following way:

  1. (i)

    Let p = (a1, a2,…, ak) is the shortest path (list of edges ai) obtained using DHN algorithm, where each edge travel time takes the value of simple moving average (7).

  2. (ii)

    In the case of elongation of the edge (see Theorem 1), the values in equation Δ = L(s, u, p′, G′) −L(s, u, p, G) are treated as the interval values (the 6). Particularly, L(s, u, p′, G′) and L(s, u, p, G) are interpreted as the sum of the interval weight of the edges included in the shortest path obtained using the algorithm DHN. The theory of interval algebra is used for determining whether the conditions defined in Theorem 1 are met or not.

  3. (iii)

    In case of shortening (Theorem 2) all values are interpreted as interval values (the (6)). Particularly L(s, v1, G′), l(v1, v2), Δa, and L(v2, u, G′), L(s, u, G), L(u, v1, G′), l(v1, v2), Δa, L(v2, s, G′), L(s, u, G), L(s, u, p′, G′) and L(s, u, p, G) are interpreted as intervals. The theory of interval algebra is used for determining whether the conditions defined in Theorem 2 are met or not.

For comparison and ordering of the intervals values the method presented in Section 5 was used. This method is based on the probabilistic approach to interval ordering (see Table 1) and was proposed by Sevastjanov and Róg [49]. The probability used during verification of conditions defined in Theorems 1 and 2 is a parameter which should be specified before running the algorithm.

5.5 Update path decision algorithm

The algorithms presented in Figs. 4 and 5 describe the decision flow between the parts of the Route Planing System (Fig. 2) to make the decision about sending (or not) the new path to the customers.

Fig. 4
figure 4

Decision flow between components of Route Planing System in case of travel time elongation

Fig. 5
figure 5

Decision flow between components of Route Planing System in case of travel time shortening

The variables used in Fig. 4 refer to the variables defined in Theorem 1. Interval value Δa determines the travel elongation time on some edge, the interval value L (L’) is the shortest path in the graph G (G′) and interval value Δ is the length difference between the two shortest paths in the graph G and the graph G′ between the same pair of nodes.

The variables used in Fig. 5 refer to the variables defined in Theorem 2. Interval value Δa determines the travel decreasing time on some edge, where l(v1, v2) is the length (the interval value) of the edge a before shortening, L(s, v1, G′) (L(u, v1, G′)) is the length (the interval value)of the shortest path between s and v1 (u and v1), and L(v2, u, G′) (L(v2, s, G′)) is the length (the interval value) of the shortest path between v2 and u (v2 and s) in G′.

The figures are split into rectangles to indicate a place of the decision algorithm execution, i.e., Detector, Dynamic Map, DHN algorithm or Decision Module.

In the first case (elongation, see Fig. 4) information about the change of the edge travel time to the Dynamic Map is sent by the detectors. The Dynamic Map determines (using methods from the Algorithms Module) the shortest path in the graph obtained through removing the changed edge. If the difference between lengths of these two paths exceeds the edge increase, the Decision Module sends the new shortest path to the customers. Then, the algorithm DHN recalculates the subset of the shortest paths kept in memory to accelerate further calculations.

In the next case (shortening, Fig. 5), the situation is a little more complicated and requires considering three sub-cases. If the shortened edge is a part of the shortest path followed by customers, this path always remains the shortest path and nothing is sent to the customers. The information in the Dynamic Map is updated and the DHN algorithm recomputes the subset of the shortest paths kept in memory. If the shortened edge is not a part of the shortest paths followed by the customers, the two next subcases have to be considered. In both subcases the two shortest paths from the graph obtained by removing the shortened edge are computed. These paths are determined by the Algorithm Module and passed to the Decision Module. The Decision Module checks if the conditions (i) and (ii) from Theorem 2 are fulfilled. If so, nothing is sent to the customers. Otherwise, a new path is sent to them. Then, the DHN algorithm recomputes the subset of the shortest paths kept in memory. It should be emphasized that all values used in the presented above comparison are interval values and are compared using the rules defined in Table 1.

6 Computational experiments

Several tests of the parameters controlling the Route Planning System were designed and performed. The efficiency of path predictions was verified on the basis of the real traffic network of the city of Kraków. The traffic flow was modelled using the data registered by detectors belonging to the Board of Infrastructure and Transport located in the streets of the city of Kraków. The experimental research was conducted using the space-continuous traffic simulator - SUMO (Simulation of Urban MObility) developed by the Institute of Transportation Systems in German Aerospace Center. SUMO models the movement of every single vehicle in the street, assuming that the behaviour of the vehicle depends on both: the vehicle’s physical abilities to move and the driver’s controlling behaviour.

Two scenarios for management of a travel time fluctuation, presented in Fig. 6, were investigated during experiments. The first scenario that does not use optimisation is as follows: if the travel time changes, then a new shortest path is determined and sent immediately to the driver (Fig. 6b). The second scenario uses Decision Module which, on the basis of the Theorem 1 (Fig. 4) and Theorem 2 (Fig. 5), determines the decision about the change of the travel route by the driver (Fig. 6a). In both cases SUMO Road Traffic Simulator plays the role of the detectors located in the streets, which provide information about the current road traffic.

Fig. 6
figure 6

Two investigated scenarios: a with optimisation and b without optimisation

The proposed test suite for the RPS system uses:

  1. (i)

    different size of the traffic networks,

  2. (ii)

    different values of the traffic flow intensity (rate),

  3. (iii)

    different values of probability used to compare the interval values from Theorems 1 and 2.

For ordering the intervals two methods, presented in the Section 5, were considered. The first method is based on possibility degree-based ranking proposed by Jiang et al. [27]. The second one, proposed by Sevastjanov and Róg, is based on the probabilistic approach to interval ordering (see Table 1). After conducting the preliminary tests, the decision was made to apply the method proposed by Sevastjanov and Róg. The probability used during verification of the conditions defined in Theorems 1 and 2 (P(a > b)) takes the value: 0.6, 0.65, 0.68, 0.8, 0.85, 0.89, 0,9, 0.95, 0.98 and 1. The number of edges of the road during the test changes between 20 and 4000. The overall number of cars travelling in the streets is proportional to the number of the graph edges and is based on the data registered by detectors in the streets of the city of Kraków. The following parameters are used below to evaluate the results of the experiments:

  • \(\overline t_{opt_avr}\) - average travel time with optimisation,

  • \(\overline t_{avr}\) - average travel time without optimisation,

  • \(E_{avr}= \frac {\overline t_{avr}-\overline t_{opt_avr}}{t_{avr}}\cdot 100\%\) - relative percentage difference between average travel times with and without optimisation,

  • Avr - average value of values in column.

6.1 Value of probability in interval comparison

In the tests presented in Tables 2 and 3 two graphs were used. The first test uses the graph with 1000 edges and the second - the graph with 4000 edges with the moderate traffic. The first column of the tables contains the probability p, which is used to compare two intervals (see Section 5.1).

Table 2 Comparison of travel times with and without optimisation for graph with 1000 edges
Table 3 Comparison of travel times with and without optimisation for graph with 4000 edges (based on Kraków’s roads network)

A relative percentage difference between travel time in the case of the graph with 1000 edges is about 0.3% and in the case of the graph with 4000 edges about - 0.25%. The Eavr (Fig. 7) has one maximum and one minimum value. The minimum − 20% (and − 6% for the larger graph) appears if the probability has the value between 0.65 and 0.75. In this case too many cars very frequently changes a travel path due to small change of the travel time. It results in the tendency to obtain a more frequent new path which has negative impact on overall traffic, leading to being blocked by each other. The maximum Eavr (greatest shortening traveling time: 17.7% for the smaller graph and 7.5% for the bigger graph) is obtained when the probability used in the decision algorithm has the value between 0.82 and 0.9 (Fig. 8). When the decision algorithm uses the probability between 0.9 and 1, the algorithm reacts only to bigger changes and the number of cases of shortening travel time is smaller.

Fig. 7
figure 7

Relative percentage difference between average travel times with and without optimisation

Fig. 8
figure 8

Relative percentage difference between average travel times with and without optimisation for graphs with 20 to 4000 edges

6.2 Average travel time dependence on road network size

Nineteen graphs of the size ranging between 10 to 4000 with the moderate traffic were used in the test (Table 4). The values in the table are the average travel time in optimisation or without it, where the probability p equals p = 0.95. The first column of the table contains N, which defines the number of edges in the graph.

Table 4 Comparison of travel times in the case of optimisation and without optimisation for the graph with 20 edges to 4000 edges

For graphs with a small number of edges (20-400), the optimisation algorithm works very well. If the travel time changes, the algorithm determines new optimal paths which shorten travel time about 1% to 7%. When the size of the graph increases, the average income decreases from 3% to 1%. When the number of edges is relatively small, the number of the alternated paths is small too. If the algorithm finds an optimal path, the income is relatively high. If the number of routes in the road network increases, the number of the alternated paths increases too (see Fig. 8). The difference between the travel time is relatively smaller and the income using the optimal path is smaller too. It should be mentioned that the number of routes (edges) in a average European city is about 1000-8000. So, we should expect the travel time income to be about 1%. However, this is still a significant improvement taking into account a big traffic volume.

6.3 Average travel time dependence on the road traffic volume

In Tables 5 and 6 the average error for different size of the graphs (500 and 4000) and for 10 different traffic volumes (rates) are compared. Traffic volume R determines how many cars in each simulation step are generated in each network entry point. In each experiment the value of the probability p was set to 0.85. The first column of the table contains R, which defines the route traffic volume.

Table 5 Comparison of travel times with and without optimisation for different volume of traffic and graph with 500 edges
Table 6 Comparison of travel times with and without optimisation for different volume of traffic and graph with 4000 edges (based on Kraków’s roads network)

Analysis of Fig. 9 leads to the conclusion that if traffic increases, the positive impact of optimisation on the travel time decreases. The greater number of vehicles in the streets leads to a bigger road congestion. If the travel time changes, the optimisation algorithm cannot find much better optimal paths.

Fig. 9
figure 9

Relative percentage difference between average travel times with and without optimisation for the different value of the traffic rate

6.4 Average travel time with respect to street length

It is interesting to observe how the travel time is affected by the length of streets. For this propose the tests with different average length of streets were carried out (Tables 7 and 8). In each experiment the value of the probability p was set to 0.85. The first column of the tables contains Lavr, which defines the average length of streets.

Table 7 Comparison of travel times in the case with and without optimisation for different average length of street graph with 500 edges
Table 8 Comparison of travel times with and without optimisation for different average length of street graph with 4000 edges (based on Kraków’s roads network)

From Fig. 10, it can be seen that if the average length of streets increases (the graph with 4000 edges), the usage of the optimisation algorithm leads to better results. This is because there exist more promising paths between the actual position and the destination of the vehicle. This effect appears because longer streets can buffer more vehicles and in doing so, they prevent the vehicles which would enter them from being blocked. The effect of improvements does not appear when the size of the traffic networks is smaller. Otherwise, if the length of the street increases, the traffic decreases and the impact of the optimisation on the travel time decreases too.

Fig. 10
figure 10

Relative percentage difference between average travel times with and without optimisation for a different value of the average streets length

6.5 Efficiency of RPS system

This section presents the impact of the traffic parameters, the road network parameters and the Decision Module control parameters on the query time. The query time TQT is defined as the difference between the time when the travel time change is detected and the time when the new shortest path is received by the SUMO simulator.

In order to assess the efficiency of the considered scenarios, we compare the average time TQT (in milliseconds) for all simulated cars (\(\overline {T}_{QT}\)). The experiments were conducted using the road network, where the number of edges varies between 20 and 4000, whereas the number of cars varies between 200 and 40,000. The experiments were performed on a computer with Intel Core i7-870, 2930 MHz, four cores, 8 MB cache processor and 16GB main memory. The program was implemented in C# on .Net platform, Python and Progress Data Base.

An analysis of Table 9 leads to the conclusion that the greater probability causes smaller computation overload. This phenomenon results from less frequent computation of the new shortest path. It should be noted that the computation time of the Decision Module changes between 1 ms to 16 ms and in a small degree affects the query time in comparison to the scenario without optimisation. Moreover, the computation time of the Decision Module does not depend on the size of the road network and if the size of the network increases four times, then the query time increase maximally about 50%.

Table 9 Average query time \(\overline {T}_{QT}\) and standard deviation of average query time \(\sigma (\overline {T}_{QT})\) for RPS system with and without optimisation for different network size and different probability value

An analysis of Table 10 shows that as the road network increases 200 times, then the query time increases no more than five times. The standard deviation of the query time is relative small. The overhead of the optimisation is relative small and varies between 5 ms to 10 ms.

Table 10 Average query time \(\overline {T}_{QT}\) in milliseconds and standard deviation of average query time \(\sigma (\overline {T}_{QT})\) for RPS system with and without optimisation for different network size and probability value p = 0.75

Analysis of Table 11 leads to the conclusion that the traffic volume has a significant impact on the query time. If the traffic volume increases ten times then the query time increases about three times. The presented results show that the application of the Decision Module in the RPS System has a small impact on the query time.

Table 11 Average query time \(\overline {T}_{QT}\) and standard deviation of average query time \(\sigma (\overline {T}_{QT})\) for RPS system with and without optimisation for different network size, different route traffic volume R and probability value p = 0.75

7 Conclusions

Nowadays there exist a great number of systems which enable the driver to reach his destination, but a few of them use the information about the current situation on a road. This paper studies the application of a new method based on interval numbers for the traffic management in a city. By using this method and the information about the current traffic state, the proposed centralized navigation system helps the driver to navigate more effectively in a volatile environment of the city. The presented system optimises the path and also decides if the current shortest path should be changed to the new one because of traffic fluctuation. The proposed theorems enable effective path updating without recalculation of the best path in each time interval. Moreover, the test shows that using the Decision Module does not increase the query time value. To find an optimal path in the static case is relatively easy and a lot of methods for this case were developed on the basis of A* or Dijkstra algorithms. Generally, in order to accelerate all these methods the precalculated data is used. But, the static data do not properly describe the properties of the city traffic, where the parameters, such as the travel time are unsteady. That is why the routing methods should take into consideration uncertainty of traffic parameters. There exist several theoretical methods for modelling uncertainty. For example, a stochastic or interval version of the shortest path problem which was studied by Montemanni [37] and Flinsenberg [15].

In this paper a part of the wider research conducted under the INSIGMA project is presented, where the methodology is based on the continuous supply of the information from the streets and the on-line reaction to the changes. As traffic parameters are subject to fluctuations (also due to the accuracy of the measurement), a mechanism for preventing frequent path changing was proposed. On the one hand, it enables the system to implement the assessment of uncertainty. On the other hand, it determines the conditions when the new shortest path to the customer should be sent.

The important results of the performed research are the implementation of the interval algebra in the control of city traffic and the provision of the theoretical basis for determining the conditions that increase the chance of obtaining the optimal path under traffic fluctuation. In order to confirm the presented theoretical results a large number of tests was carried out on the basis of the real traffic network of the city of Kraków. During the tests there were compared different methods for ordering interval numbers, different size of the road-graphs, different values of traffic intensity and different values of probability used to compare the interval values from Theorems 1 and 2. The test results show that implementation of the proposed “intelligent” method under the INSIGMA system can decrease the average travel time by more than 1%. The lesson learned is that information from a great number of sensors installed in the streets enables their users to improve the city traffic and in doing so can contribute to cleaning the air in the city.