DYNAMICALLY COMPUTING FASTEST PATHS FOR INTELLIGENT TRANSPORTATION SYSTEMS MEERA KRISHNAN R
ABSTRACT It is a new approach to gather data for intelligent transportation system applications over a continuous-flow of traffic The fastest path of each commuter from his current location to his desired destination can be determined,as vehicles transmit updated speed
MOTIVATION The current technology has embedded hardware devices called loop detectors in freeways at specific locations
These devices track the number of vehicles passing that point and the amount of time the vehicle is physically occupying the space over detector Disadvantages: 1. Data is gathered only at discrete locations of transportation network 2. There is significant cost associated with installing and maintaining the loop detectors. 3. Less reliable
APPROACH Assume that a free-flowing transportation system can be characterized as a directed graph G=(V,E), where a vertex v Є V is defined as a specific location of a highway and an edge e Є E is defined as the section of the highway connecting two vertices A path P on a directed graph G=(V, E) can be defined as: P(i,j)={v i,…,v j } | i k < j, (v k,v k+1 ) Є E The weight of an edge is defined as the amount of time it takes to travel from one vertex to the next.
Now, there are two separate problems that need to be addressed: How to gather the speed and location of all of the vehicles in the transportation system location gathering problem can be addressed using global positioning system which determines location as (latitude, longitude )pair speed of vehicle can be obtained from vehicle’s computer system How to use this data to optimally determine the fastest path between a vehicles current location and its desired location
ALGORITHMS To compute the fastest path between two vertices in a directed graph, there are three general classes of algorithms: The Naïve class algorithm The Dynamic class algorithm The Pre-computed class algorithm
NAÏVE CLASS ALGORITHM: It includes Floyd-Warshall's algorithm:computes the shortest path between all pairs of vertices in a directed graph in O(V 3 ) Johnson’s Algorithm :It uses Bellman-Ford’s Algorithm:to re-weigh the graph if negative weight edges exist Dijkstra’s Algorithm :to compute shortest path with running time O(VlogV+E) Total running time of Johnson’s algorithm is O(V 2 logV+EV) which is bit faster than Floyd algorithm
DYNAMIC CLASS ALGORITHM: The Dynamic All-Pairs Shortest Path algorithm,developed by Camil Demetrescu and Giuseppe Italiano attempts to improve Naïve class algorithm determines path with minimum cost with constant time But with an edge update cost of O(V 2 log 3 V)
PRE-COMPUTED CLASS ALGORITHM: It takes advantage of fact that graph is rather static Pre-computes the paths between all pair of nodes Overall running time of pre- computation is O(V 2 E!) Even though it is factorial with respect to no: of edges, it is really irrelevant since the pre- computation only occurs one time for the entire freeway system
Using this preprocessing step there are 3 approaches to determine the fastest path COSTANT UPDATE ALGORITHM CONSTANT QUERY ALGORITHM HYBRID ALGORITHM
CONSTANT UPDATE ALGORITHM sacrifices the speed of retrieving fastest paths for the amount of time it takes to update the weight of an edge It traverse all the m paths from source vertex and destination vertex and selects the path with minimum time Assuming in the worst case that each of the m paths will contain a maximum of V vertices, the overall worst-case running time is O(Vm)
CONSTANT QUERY ALGORITHM sacrifices the speed of updating an edge for the time to retrieve the fastest path always maintains the fastest path between all pairs of vertices by recalculating the fastest paths for all pairs of vertices that have a path containing the updated edge whenever an edge update occurs In the worst case, all paths for all pairs of vertices contain that edge, which are V 2 pairs, with m paths for each pair, giving V 2 m To insert an updated edge will take O(logm), giving an overall running time of O(V 2 mlogm)
HYBRID ALGORITHM It attempts a compromise between the Constant Update and the Constant Query algorithms When the speed on an edge has changed by a specified threshold, the time to traverse that edge will be updated, and all paths that contain that edge will have their overall time updated If the updated edge is contained within every path of every pair of vertices, this algorithm will take O(V 2 m) To retrieve the fastest path, the application will only have to compare the times to traverse all m paths from the source to the destination and return the path with the minimum time, which can be accomplished in O(m)
ALGORITHMIC RUNNING TIME COMPARISON FOR FASTEST PATH ALGORITHMS Pre- computation Update Edge Retrieve Fastest Path Naïve (Johnson) N/A O(V 2 logV +VE) O(1) Dynamic All- Pairs Shortest Path N/AO(V 2 log 3 V ) O(1) Pre-Computed – Constant Update O(V 2 E! ) O(1)O(Vm) Pre-Computed – Constant Query O(V 2 mlog m) O(1) Pre-Computed – Hybrid O(V 2 E! ) O(V 2 m)O(m) O(V 2 E! )
Depending on the value of m, the Pre- computed class of algorithms may execute faster than the other classes of algorithms If the number of edge updates greatly exceeds the number of fastest path queries then constant update algorithm will work efficiently
IMPLEMENTATION DETAILS The values in Table II were obtained by running ` 10,000 random edge updates and 10,000 random fastest path queries, then averaging the amounts of time to compute each respectively Naïve class algorithm takes more amount of time Pre-computed constant query algorithm performs faster than all other algorithms Pre-computed constant update algorithm requires least cost for edge updation Pre-Computed – Hybrid algorithm is nearly as fast as pre-computed query algorithms
Pre- computatio n Update Edge Retrieve Fastest Path Los Angeles and LA Downtown Los Angele s LA Downtow n LA Angele s LA Downtow n Naïve (Johnson) Dynamic All- Pairs Shortest Path Pre-computed Constant update Pre- Computed Constant Query Pre- Computed – Hybrid ACTUAL RUNNING TIME COMPARISON FOR FASTEST PATH ALGORITHMS (IN MILLISECONDS)
CONCLUSION Traffic is a problem in many countries of the world Adding lanes to highways or adding additional hardware is not always a viable solution based on cost and space limitations Using existing roadway communication infrastructure and gathering data from a continuous flow of traffic has the potential to improve the overall flow of traffic in a transportation network with a very limited cost
This paper presents a number of algorithms to update the edges and to compute the fastest path Realizing that the number of edge updates will greatly exceed the number of fastest path queries, the Pre- Computed –Constant Update algorithm executes the fastest
REFERENCES 1.Dynamically Computing Fastest Paths for Intelligent Transportation Systems by Jeffrey Miller 2.Cormen, Thomas H., Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. Introduction to Algorithms – 2nd Edition. The MIT Press, Experimental Analysis of Dynamic All Pairs Shortest Path Algorithms Camil Demetrescu,Giuseppe F. Italiano 4.Shrank, David, Tim Lomax. “2009 Urban Mobility Report.” Texas transportation Institute’s Annual Urban Mobility Report, September 2009
QUESTIONS?