160 likes | 374 Views
Shortest Path Tree Computation in Dynamic Graphs. Viswanath Gunturi (4192285) Bala Subrahmanyam Kambala (4451379) . Application Domain. Transportation Networks:. Sample Dataset. Sample dataset showing the dynamic nature of Twin Cities road network. . Data source: courtesy Navteq
E N D
Shortest Path Tree Computationin Dynamic Graphs ViswanathGunturi (4192285) BalaSubrahmanyamKambala (4451379)
Application Domain Transportation Networks:
Sample Dataset Sample dataset showing the dynamic nature of Twin Cities road network. Data source: courtesy Navteq Application source: courtesy KwangSoo Yang, Spatial Group, University of Minnesota
Problem: Dynamic Shortest Path (DSP) Input: • A graph G = (V, E), where V is the set of vertices and E is the set of edges. Each e in E is associated with a positive weight. • A source node s and shortest path tree, Ts , rooted at node s. • A set of changed edges and their new weights. Output: • A spanning tree Ts’ rooted a node s. Objective: • Computational efficiency. Constraint: • The tree Ts’ contains shortest path from node s to all the node v in V.
Problem Illustration Input Output
Contributions • The following three new algorithms were proposed for the DSP problem [9]: • DynDijkstra: A generalized version of Dijkstra’s which allows multiple edge weight updates. • MBallStringInc:Modified version of existing BallString algorithm [1,2] which ensures correctness. • MFP:Modified version of existing DynamicsSWSF-FP algorithm [3] to improve computational efficiency. • Extensive experimental analysis for the proposed algorithms on both real and synthetic datasets. Comment on contributions • Proposed methods are general. • Related work is limited by the some key assumptions such as planarity [4,5], un weighted edges etc [6]. • Provides extensive experimental analysis which highlights the superior performance of proposed methods.
Key Concepts: DynDijkstra Step 1 Step 2 The edge weight increases and decreases are handled separately. Case: Increase only Output Decrease case: Cannot predict affected nodes. All descendants of a affected head node in graph are checked.
Key Concepts:MBallString • Similar to DynDijkstra algorithm. • The priority queue is sorted on the difference between new distance and old distance. • This helps in closing an entire branch instead of individual node. • Consequently, MBallString has fewer iterations than DynDijkstra.
Validation Methodology • Correctness proof of DynDijkstra and MBallStringIncalgorithm. • Extensive experimental analysis of the proposed approaches using both real and synthetic datasets. • Real Dataset: Connecticut road system extracted from the US Census Bureau Tiger Line files. • Five different sizes: 1K, 2K, 4K, 8K, and 15K number of nodes. • A random set of edges is chosen and their weights are modified. • Synthetic networks are generated using [7]. • The generator assigns edges to vertices such that outgoing degrees of vertices follow quasi-power-law distribution.
Experimental Setup(1/2) • Experimental Goals: • Evaluate the performance/scalability of proposed algorithms by varying different parameters. • Determine the best algorithm for different graph sizes and # changes. • Experimental Parameters: • Graph size: # vertices • Percentage of changed edges (pce) • Percentage of changed weight (pcw): % increase or decrease in weight • Percentage of increased edges (pie): The ratio between the number of the increased edges and the number of the decreased edges for mixed edge changes. • Candidate Algorithms: • DynDikstra • MBallStringInc • MFP • Dijkstra
Experimental Setup(2/2) Metrics of Evaluation: • Metric 1: CPU runtime for each solution. • Metric 2: Total number of operations (given in Table 1) performed by algorithm. Table 1: Unit Operations
Experimental Results • The parameter pcw has very little effect. • Dynamic algorithms better than static Dijkstra when pce is below a certain threshold. • This threshold changes with graph sizes. • MBallString and DynDijkstra have comparable performance for weight increases. • DynDijkstra performs best for weight decreases. • MBSDD, a combination of MBallString increase and DynDijkstra decrease, performs best for road networks. • DynDijkstra works best for random graphs.
Strengths and Weaknesses of Validation Methodology Strengths: • Both real and synthetic datasets were used for analysis. • The experimental parameters capture the experimental goals. • Multidimensional variation help to understand the effect of the different parameters. Weaknesses: • The set of edges whose weight would be modified (an input to problem) is chosen randomly. • May not capture some real world semantics of dynamic networks, such as spatial auto-correlation. • For example, in case of road networks, during morning rush hours there would be traffic congestion on roads leading to downtown. Reason for the choice: • Comparison with related work. • Unavailability of model which can capture dynamic nature of networks for a particular application domain.
Assumptions and Consequences Assumptions: • A notion of travel time is not associated with the edges. • The paths computed are not Lagrangian in nature, i.e., the cost of an edge should be considered at the time when object/flow arrives at the tail node. Repercussions of Assumptions: • Lack of travel time notion →Lagrangian models cannot be used to represent the total cost of path. • Non Lagrangian assumption → unsuitable for application domains where the flow is modeled, e.g. transportation networks [8]. • Furthermore, the proposed methods are suitable only for shortest paths trees. • This may not desirable for real world traveler route planning systems
Possible Revisions What to preserve? • The idea of performing incremental updates to generate new tree. • More specifically, the design decisions of MBallString algorithm. What to revise? • Explore similar ideas in light of domain specific concepts such as spatial autocorrelation etc. Justification • This is because, different kinds of networks have different properties, for e.g. spatial networks may exhibit spatial auto correlation. • Different kinds of networks (e.g. power networks, social networks, transportation networks etc) may widely differ from each in terms of structure, degree distribution. • Thus, it is important to evaluate the algorithms in light of domain specific knowledge.
References [1] P. Narva´ez, K. Siu, and H. Tzeng, “New Dynamic Algorithms for Shortest Path Tree Computation,” ACM Trans. Networking, vol. 8, no. 6, pp. 734-746, 2000. [2] P. Narva´ez, K. Siu, and H. Tzeng, “New Dynamic SPT Algorithm Based on a Ball-and-String Model,” ACM Trans. Networking, vol. 9, no. 6, pp. 706-718, 2001. [3] G. Ramalingam and T.W. Reps, “An Incremental Algorithm for a Generalization of the Shortest-Path Problem,” J. Algorithms,vol. 21, no. 2, pp. 267-305, 1996. [4] J. Fakcharoemphol and S. Rao, “Planar Graphs, Negative Weight Edges, Shortest Paths, and Near Linear Time,” Proc. 42nd IEEE Ann. Symp. Foundations of Computer Science (FOCS ’01), pp. 232-241, 2001. [5] P. Klein, S. Rao, M. Rauch, and S. Subramanian, “Faster Shortest-Path Algorithms for Planar Graphs,” Proc. 26th Ann. ACM Symp. Theory of Computing (STOC ’94), pp. 27-37, 1994. [6] S. Baswana, R. Hariharan, and S. Sen, “Improved Decremental Algorithms for Maintaining Transitive Closure and All-Pairs Shortest Paths,” Proc. 34th Ann. ACM Symp. Theory of Computing (STOC ’02), pp. 113-127, 2002. [7] Java Universal Network/Graph Framework, June 2004. [8] George, B., Kim, S., Shekhar, S.: Spatio-temporal network databases and routing algorithms: A summary of results. In: Symposium on Spatial and Temporal Databases (SSTD). pp. 460–477 (2007). [9] Edward P.F. Chan, Yaya Yang, "Shortest Path Tree Computation in Dynamic Graphs," IEEE Transactions on Computers, pp. 541-557, April, 2009