IJERT-Intelligent Transportation System By Parallelizing The Shortest Path Algorithm In Multi-Core Systems (original) (raw)
Related papers
2011
Traffic congestion is becoming a serious problem in more and more modern cities. Encouraging more private vehicle drivers to use public transportation is one of the more effective and economical ways to reduce the ever increasing congestion problem on the streets (Hartley and Bargiela 2001). With the research and application of Intelligent Transportation System and the popularization of dual-core computer, there is a higher requirement for solving the shortest path algorithm in large scale transportation networks in real-time by using multi core technology. This paper basically analyzes the performance of the program execution in sequential and parallel way in multi core machines where in the algorithms designed were executed for large set of nodal points (upto 500) where each nodal point basically represents a source or destination or it can be even a transit point between any source and destination with respect to public transport of Bangalore Metropolitan Transport Corporation.
Implementing parallel shortest path for parallel transportation applications
Parallel Computing, 2001
Shortest path algorithms are required by several transportation applications; furthermore, the shortest path computation in these applications can account for a large percentage of the total execution time. Since these algorithms are very computationally intense, parallel processing can provide the compute power and memory required to solve large problems quickly. Therefore, good parallel shortest algorithms are critical for ecient parallel implementations of transportation applications. The experimental work related to parallel shortest path algorithms has focused on the development of parallel algorithms; however, very little work has been done with analyzing and understanding the performance impact of various implementation issues. In this paper, we conduct a thorough experimental analysis of parallel shortest path algorithms for sparse networks, concentrating on three implementation issues: (1) choice of shortest path algorithm, (2) termination detection and (3) network decomposition. The paper focuses on the choice of shortest path algorithm and network decomposition since the work on termination detection was published previously. We determine that all three issues aect the communication and convergence of the shortest path algorithm. Furthermore, we ®nd that communicating the most information at a time results in the best convergence; this is contrary to most scienti®c applications where it is optimal to minimize communication. Ó 2001 Published by Elsevier Science B.V. (M.R. Hribar), taylor@ece.nwu.edu (V.E. Taylor), DBoyce @uic.edu (D.E. Boyce). 0167-8191/01/$ -see front matter Ó 2001 Published by Elsevier Science B.V. PII: S 0 1 6 7 -8 1 9 1 ( 0 1 ) 0 0 1 0 5 -3
Performance Study of a Parallel Shortest Path Algorithm
Tra c equilibrium analyses are generally very large and computationally intensive. Parallel processing provides the memory and computational power needed to solve the equilibrium problems in a reasonable amount of time. Because the shortest path solution is the major component of these equilibrium algorithms, we focus on developing an e cient parallel algorithm to solve this problem. We investigate in detail how three factors{computation, communication and idle time{a ect the performance of these algorithms. This analysis leads to methods of reducing the total execution time of a parallel shortest path algorithm.
A parallelization of Dijkstra's shortest path algorithm
Lecture Notes in Computer Science, 1998
The single source shortest path (SSSP) problem lacks parallel solutions which are fast and simultaneously work-e cient. We propose simple criteria which divide Dijkstra's sequential SSSP algorithm into a number of phases, such that the operations within a phase can be done in parallel. We give a PRAM algorithm based on these criteria and analyze its performance on random digraphs with random edge weights uniformly distributed in 0;1]. We use the G(n;d=n) model: the graph consists of n nodes and each edge is chosen with probability d=n. Our PRAM algorithm needs O(n 1=3 log n) time and O(n log n+dn) work with high probability (whp). We also give extensions to external memory computation. Simulations show the applicability of our approach even on non-random graphs. 1 Introduction Computing shortest paths is an important combinatorial optimization problem with numerous applications. Let G = (V; E) be a directed graph, jEj = m, jV j = n, let s be a distinguished vertex of the graph, and c be a function assigning a non-negative real-valued weight to each edge of G. The single source shortest path problem (SSSP) is that of computing, for each vertex v reachable from s, the weight dist(v) of a minimum-weight path from s to v; the weight of a path is the sum of the weights of its edges. The theoretically most e cient sequential algorithm on digraphs with nonnegative edge weights is Dijkstra's algorithm 8]. Using Fibonacci heaps its running time is O(n logn + m) 1. Dijkstra's algorithm maintains a partition of V into settled, queued and unreached nodes and for each node v a tentative distance tent(v); tent(v) is always the weight of some path from s to v and hence an upper bound on dist(v). For unreached nodes, tent(v) = 1. Initially, s is queued, tent(s) = 0, and all other nodes are unreached. In each iteration, the queued node v with smallest tentative distance is selected and declared settled and all edges (v; w) are relaxed, i.e., tent(w) is set to minftent(w); tent(v) + c(v; w)g. 1 There is also an O(n + m) time algorithm for undirected graphs 20], but it requires the RAM model instead of the comparison model which is used in this work.
Parallel Implementation of the Single Source Shortest Path Algorithm on CPU–GPU Based Hybrid System
Single source shortest path (SSSP) calculation is a common prerequisite in many real world applications such as traveler information systems, network routing table creation etc., where basic data are depicted as a graph. To fulfill the requirements of such applications, SSSP calculation algorithms should process their data very quickly but these data are actually very large in size. Parallel implementation of the SSSP algorithm could be one of the best ways to process large data sets in real time. This paper proposes two different ways of parallel implementation of SSSP calculation on a CPU-GPU (Graphics Processing Unit)-based hybrid machine and demonstrates the impact of the highly parallel computing capabilities of today’s GPUs. We present parallel implementations of a modified version of Dijkstra’s famous algorithm of SSSP calculation, which can settle more than one node at any iteration. This paper presents a comparative analysis between both implementations. We evaluate the results of our parallel implementations for two Nvidia GPUs; the Tasla C2074 and the GeForce GTS 450. We compute the SSSP on graph having 5.1 million edges in 191 milliseconds. Our modified parallel implementation shows the three-fold improvement on the parallel implementation of simple Dijkstra’s algorithm. https://sites.google.com/site/ijcsis/
Shortest Path Algorithms: An Evaluation Using Real Road Networks
Transportation Science, 1998
The classic problem of finding the shortest path over a network has been the target of many research efforts over the years. These research efforts have resulted in a number of different algorithms and a considerable amount of empirical findings with respect to performance. Unfortunately, prior research does not provide a clear direction for choosing an algorithm when one faces the problem of computing shortest paths on real road networks. Most of the computational testing on shortest path algorithms has been based on randomly generated networks, which may not have the characteristics of real road networks. In this paper, we provide an objective evaluation of 15 shortest path algorithms using a variety of real road networks. Based on the evaluation, a set of recommended algorithms for computing shortest paths on real road networks is identified. This evaluation should be particularly useful to researchers and practitioners in operations research, management science, transportation, ...
Temporal shortest paths: Parallel computing implementations
Parallel Computing, 2001
We explore two types of parallel computing implementations for three algorithms for computing temporal shortest paths on transportation networks. One implementation is done on a distributed network of SUN SPARC workstations using PVM and the other on a shared memory computing platform, a SUN SPARC server equipped with eight processors, using threads. Computational results obtained by using three networks originating from practice are presented. The shared memory computing platform is preferred for this application.
Advanced Shortest Paths Algorithms on a Massively-Multithreaded Architecture
2007 IEEE International Parallel and Distributed Processing Symposium, 2007
We present a study of multithreaded implementations of Thorup's algorithm for solving the Single Source Shortest Path (SSSP) problem for undirected graphs. Our implementations leverage the fledgling MultiThreaded Graph Library (MTGL) to perform operations such as finding connected components and extracting induced subgraphs. To achieve good parallel performance from this algorithm, we deviate from several theoretically optimal algorithmic steps. In this paper, we present simplifications that perform better in practice, and we describe details of the multithreaded implementation that were necessary for scalability. We study synthetic graphs that model unstructured networks, such as social networks and economic transaction networks. Most of the recent progress in shortest path algorithms relies on structure that these networks do not have. In this work, we take a step back and explore the synergy between an elegant theoretical algorithm and an elegant computer architecture. Finally, we conclude with a prediction that this work will become relevant to shortest path computation on structured networks.