Shortest Alternate Path Discovery through Recursive Bounding Box Pruning

Congestion is a dynamic phenomenon and hence efficiently computing alternate shortest route can only help expedite decongestion. This research is aimed to efficiently compute shortest path for road traffic network so that congestion can be eased resulting in reduced CO2 emission and improved economy. Congestion detection is achieved after evaluating road capacity and road occupancy. Congestion index, a ratio of road occupancy to road capacity is computed, congestion index higher than 0.6 necessitates computation of alternate shortest route. Various algorithms offer shortest alternate route. The paper discusses minimization of graph based by removing redundant nodes which don’t play a role in computation of shortest path. The proposal is based on continuous definition of a bounding box every time a next neighboring node is considered. This reduces maximum number of contentious nodes repeatedly and optimizes the network. The algorithm is deployed from both the ends sequentially to ensure zero error and validate the shortest path discovery. While discovering shortest path, the algorithm also offers an array of shortest path in ascending order of the path length. However, vehicular traffic exhibits network duality viz. static and dynamic network graphs. Shortest route for static distance graph is pre-computed and stored for look-up, alternate shortest path based on assignment of congestion levels to edge weights is triggered by congestion index. The research also supports directed graphs to address traffic rules for lanes having unidirectional and bidirectional traffic.


Introduction
The paper proposes network optimization or graph optimization technique through pruning by bounding box.This is a recursive methodology which continuously reduces redundant nodes and edges of a given network which are not contentious in computation.Section II, discusses related work where shortest path algorithms are discussed.This section also discusses various network minimization techniques.Section III introduces Definition & Terminology.Here road capacity, road occupancy, congestion index are discussed to build the frame work of the solution.Section IV is the proposition and methodology to minimize the network scope.This section defines network representation and follows it with algorithm explaining the importance of evaluation from both the nodes (start node and end node) under consideration.Section V is Results and Comparison clearly validating the results achieved while addressing the network from start or end node.The section also discusses the maximum computing cost with this approach.Section VI is Future work, when angled bounding box approach can further improve the results.
It is important to understand vehicular network duality.Present network algorithms and strategies consider network with edges representing weights and nodes as identity entity with nil weight.The data networks are treated as scalar network whereas spatial road networks are vector networks.Vehicular network exhibits duality.There are two vehicular networks: 1) Static distance network; 2) Dynamically changing traffic network which changes with congestion.A graph with distances is created and shortest path is evaluated from every node to the remaining nodes.The pre-computed shortest path is available in the infrastructure database.However, during congestion, the travel time of road segment increases.A road segment with shorter distance may take longer to travel than the longer road segment.The dynamic graph edge weight is dynamically updated, and continuously computed.Secondly, data travels at speed of light and hence during congestion, choosing alternate paths does not add appreciable delay.Also data networks are huge, offering multiple alternate routes without appreciable degradation in response time.Whereas vehicular speeds are infinitesimally less compared to speed of light and hence shortest alternate route selection requires judicious decision since it is more challenging.[1] Premier contribution in path finding algorithm is done by A*, BFS, Dijkstra's algorithm, HPA* and LPA* which are discussed below:  3) Dijkstra's algorithm [2] The algorithm iteratively selects nodes u ε V-S, is "greedy" algorithm.Maximum computation cost is O ( E V Log V +

Algorithms
). Dijkstra's algorithm discovers shortest paths from one node to all the other nodes, however, when one needs to discover shortest path between two given nodes, there are other fitting solutions.
4) Hierarchical path-finding A* [2] HPA* A low resolution 2D grid is placed on graph.Every node in the new grid is a cluster.The algorithm simplifies the graph to make efficient computations.

Pruning Techniques
1) [3] Deals with dynamically changing edge weights.A graph is broken into containers and the size of the containers keep on changing.If the container is large it losses the advantage and if too small, it may not offer best results.Optimizing size of the container is achieved in this paper.
2) [4] Proposed combination of two techniques: Jump Point Search (JPS) and geometric containers.On uniform grid, JPS defines a canonical ordering to minimize search.The search begins at the central node of the graph and proceeds in the directions of the arrows.To begin with it takes the only the diagonal route and then only cardinal moves.Instead of evaluating every node on its way to shortest path discovery, it jumps along straight lines towards the goal thus saving computation cost of adding and removing a node.
3) [5] Geometric Containers is a class of approach mapped to metric spaces.
The edges reachable to the goal are placed in a container.Then only those edges are evaluated which are inside the container rest are pruned.

4) [6]
A swamp is a group of nodes which are not evaluated while exploring shortest path.Ignoring swamps, does not affect the accuracy of the shortest path search.Swamps are a geometric container yielding no results, thus ignored to improve computational efficiencies.
5) [7] Proposes a method to address efficient pruning of redundant nodes in shortest path computation.The border line based pruning reduces unnecessary node evaluation.However, the method through extensive experiments discovers optimal number of nodes empirically by clipping containers.

6) [8]
A reach value is associated with every node.If the reach value of the node is not in the vicinity of the start or end node, it is ignored.

7) [9]
A bounding box is defined for each edge.Every node is then queried to check if it is contained in the bounding box or not.This is done by evaluating if there is a valid path to the end node.There is forward and backward pre-computation in this approach.

Definitions/Terminology
This section discusses algorithms to discover shortest alternative route with minimum computing cost.The computing cost is evaluated based on travel distance and time to travel.The alternate route is sought as follows: 1) Compute road capacity from infrastructure database-RC.
Alternate routes are selected from amongst distance route, alternate shortest route based on congestion and knowledge or history database.Figure 1 depicts the logical flow.The selected alternate route is then logged into the history database for future reference.

Road Capacity (Infrastructure Database-Big Data)
[11] A test vehicle equipped with GPS capable application software.The vehicle traverses through the city capturing infrastructure parameters.Latitude, Longitudes are captured automatically by GPS, average achievable speed on road segment is a secondary parameter derived from time stamped latitude and longitude whereas road name, number of lanes, presence of traffic signals and converging road segments are manually input to the application.This information provides road capacity and time to travel on the road segment.( )

Congestion Index
Congestion index-CI is a parameter of significance to trigger computation of alternate routes.CI defines degree of congestion, is a ratio of road occupancy to road capacity.Road capacity is extracted from the infrastructure database, whereas road occupancy is computed from vehicle detection.

Shortest Alternate Route
The steps are: 1) Creation of network graph of a city with nodes (Latitude/Longitude) and edge weights as distance.
2) Represent the data graphically.
3) Describe the graph through a tabular matrix.Create a table of nodes, coordinates, distance to origin, distance to destination, total distance.4) Bounding Box, the network optimization schema.

Representation-Tabular & Graphical
Coordinates of nodes (traffic junctions), each nodes distance from the two nodes in consideration (starting and end node) and the total distance of the node from the two nodes is listed in Table 1: Figure 2 is generated from Table 1.Inter-node distances are calculated and marked as edge weights.

Bounding Box-Concept
Consider a network with 225 nodes as shown in Figure 3. Figure 4

Heuristics/Hypothesis
The two dimensional location coordinates in road transport network help in understanding if the approaching node is converging to the end node or not.A start node and end node is defined.A bounding box is created between start node and end node.From start node, all connected edges are tested to get a list of connected nodes.For every connected node the distance d is:            Bounding box (H, I) Figure 11 H connects to I Route QRSNHI 17.46

Results
Starting from Q to I the shortest routes are QRMGHI 16.32 units and QRSNHI

[ 2 ]
This algorithm uses function F, which is cost to reach the goal.F = G + H where G is cost of the path from initial node to the current node and H is admissible cost.The result is more accurate if H is underestimated but takes longer computing time and vice versa.

2 ] 2 V
BFS does not take advantage of knowledge or heuristics.For a graph G = (V, E), BFS travels edges from start to end node ensuring minimum number of edges to reach the goal.Algorithm complexity varies between O ( V ) and O ( ).
Planning A* (LPA*)[2] LPA best used where the graph changes dynamically.S represents vertices.The programming functions used are a) succ(s) of vertex s of S; b) pred(s) predecessors of vertex s of S; c) 3. 0 < c (s, s') ≤ α cost of moving from vertex s to vertex s'.

8) [ 10 ]
Proposed several concepts to create minimally pruned graph.Disk Centered Tail-DCT takes an edge end as the entre and a minimum radius circle is drawn encompassing all the nodes connected to this node.The concept is known as disk centered tail.Ellipse is an extension of DCT where the ellipse has foci of u and v. Angular Sectors-AS is selected by choosing a node on the left and right of the edge node u.The AS is formed by left node, edge node and right node.AS have no bounds which does not achieve effective pruning.So AS is bounded by DCT and generates CT-circular sectors.Smallest enclosing disk-SED is unique disk which has smallest area that includes all the points.Smallest Enclosing Ellipse-SEE is generated from SED the way Ellipse is generated from DCT. Bounding Box-BB (Axes Parallel Rectangle) encloses area bounded by four coordinates of two points.Edge Parallel Rectangle-EPR is a situation where the rectangle is parallel to the edge and not the axes.Intersection of Rectangle-IR offers even smaller container.Here the axes parallel and edge parallel rectangles are intersected.

L=
Length of road segment; N = Number of lanes Normal travel time of the road segment is computed from the time stamped distance coordinates.
shows a bounding box rectangle is created between start node and end node.The nodes embedded in the rectangle are considered and all the other nodes are ignored thus reducing redundant computation.Defining a bounding box considerably reduces the network to 108 nodes there by reducing the scope of the network and reducing the computation cost & time.

Step 1
Bounding box (Start Node, End Node) Find connected nodes to start node Compute Distance for all nodes = (Edge weight + Cartesian distance to end node) Next Node = Min (Compute Distance) Store other nodes in pending list (Travelled nodes, Distance travelled) Start node = Next node IF (Start node ≠ End node) Go to step 1 Store result (Traveled nodes, Travelled Distance) If Pending list = Null) Step 2 Pick up from Pending list Start node = Selected node Go to step 1 Step 2 If (Switch done = True) Step 3 Switch done = True Swap (Start node, End node) Go to Step 1 Step 3 If (Result ≠ Null) Go to Step 4 Increase the original bounding box in x, y directions) R → M → I 13.15 R → S → I 15.12For now M is considered; S is stored for subsequent consideration Bounding box (M, I) Figure7M connects to G Bounding box (G, I) Figure8G connects to H Bounding box (H, I) Figure8

Figure 7 .
Figure 7. Moving Q to I; bounding box (M, I), S subsequent consideration.

Figure 12 .
Figure 12.Result the three routes.
17.46 units.Starting from I the shortest routes are IHGMRQ 16.32 units, IHNSRQ 17.46 units and IHNMRQ 17.48 units.Summing up we get three routesQRMGHI16.32units, QRSNHI17.46units and QRMNHI17.48units.It demonstrates that from both the ends, we have consistent results.The deviation from the shortest route offers alternate shortest routes.The results are