Top Banner
Problem and Algorithms Building Blocks Single-Source Shortest-Paths Input is a graph with n vertices and m arcs Find the shortest path from source vertex s to all other vertices We study the lower bound of the runtime on graphs with independent real random edge weights uniformly chosen from the interval [0,1] List class algorithms (Maintain one or more queues) Bellman-Ford algorithm Pallottino’s algorithm Algorithms with Approximate Priority Queues (Maintain arrays of buckets that contain an interval of tentative distances) Approximate Bucket Implementation of Dijkstra’s algorithm (ABI-Dijkstra) Δ-Stepping algorithm (u,v,k)-Gadgets k disjoint paths of length 2 between vertices u and v The higher k, the lower the expected shortest path weight Triangle subgraph The path from u to v via x is smaller than the direct connection with probability 1/6 New Worst-Case Instances For the Bellman-Ford algorithm: For Pallottino’s algorithm: For algorithms with approximate priority queues: Previous Worst-Case Constructions Causes Bellman-Ford and Pallottino’s algorithm to Causes ABI-Dijkstra to run in Ω(n log n Improved Analysis of the Average-Case Behavior of Classic Single-Source Shortest Path Approaches MADALGO – Center for Massive Data Algorithmics, a Center of the Danish National Research Foundation Andrei Negoescu Goethe University Ulrich Meyer Goethe University Volker Weichert Goethe University Algorithm Previous Lower Bound New Lower Bound Upper Bound Bellman-Ford algorithm Ω(n 4/3-ε ) Ω(n 2 ) O(n 2 ) Pallottino‘s algorithm Ω(n 4/3-ε ) Ω(n 2 ) O(n 3 ) ABI-Dijkstra Ω(n log n / log log n) Ω(n 1.2-ε ) O(n 2 ) Δ-Stepping Ω(n log n / (log log n) 1/2 ) Ω(n 1.1-ε ) O(n 2 )
1

Improved Analysis of the Average-Case Behavior of Classic Single-Source Shortest Path Approaches

Feb 23, 2016

Download

Documents

Ce_cE

Andrei Negoescu Goethe University. Ulrich Meyer Goethe University. Volker Weichert Goethe University. Improved Analysis of the Average-Case Behavior of Classic Single-Source Shortest Path Approaches. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Improved Analysis of the Average-Case Behavior of  Classic Single-Source Shortest Path Approaches

Problem and Algorithms Building Blocks

Single-Source Shortest-Paths

Input is a graph with n vertices and m arcs Find the shortest path from source vertex s to all other vertices We study the lower bound of the runtime on graphs with independent

real random edge weights uniformly chosen from the interval [0,1]

List class algorithms(Maintain one or more queues)

Bellman-Ford algorithm Pallottino’s algorithm

Algorithms with Approximate Priority Queues(Maintain arrays of buckets that contain an interval of tentative distances)

Approximate Bucket Implementation of Dijkstra’s algorithm (ABI-Dijkstra) Δ-Stepping algorithm

(u,v,k)-Gadgets k disjoint paths of length 2 between vertices u and v The higher k, the lower the expected shortest path weight

Triangle subgraph The path from u to v via x is smaller than the direct connection with probability 1/6

New Worst-Case Instances

For the Bellman-Ford algorithm:

For Pallottino’s algorithm:

For algorithms with approximate priority queues:

Previous Worst-Case Constructions

Causes Bellman-Ford and Pallottino’s algorithm to run in Ω(n4/3-ε)

Causes ABI-Dijkstra to run in Ω(n log n / log log n) Causes Δ-Stepping to run in Ω(n log n / (log log n)1/2)

Improved Analysis of the Average-Case Behavior of Classic Single-Source Shortest Path Approaches

MADALGO – Center for Massive Data Algorithmics, a Center of the Danish National Research Foundation

Andrei NegoescuGoethe University

Ulrich MeyerGoethe University

Volker WeichertGoethe University

Algorithm Previous Lower Bound New Lower Bound Upper Bound

Bellman-Ford algorithm Ω(n4/3-ε) Ω(n2) O(n2)

Pallottino‘s algorithm Ω(n4/3-ε) Ω(n2) O(n3)

ABI-Dijkstra Ω(n log n / log log n) Ω(n1.2-ε) O(n2)

Δ-Stepping Ω(n log n / (log log n)1/2) Ω(n1.1-ε) O(n2)