replacement paths and k simple shortest paths in
play

Replacement Paths and k Simple Shortest Paths in Unweighted Directed - PowerPoint PPT Presentation

Replacement Paths and k Simple Shortest Paths in Unweighted Directed Graphs Liam Roditty Uri Zwick IIT Madras November 2019 Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 1 / 32 Introduction and Motivation Suppose that we


  1. Replacement Paths and k Simple Shortest Paths in Unweighted Directed Graphs Liam Roditty Uri Zwick IIT Madras November 2019 Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 1 / 32

  2. Introduction and Motivation Suppose that we are at a point A and we want to go to another point B. We have some roads that we can travel through. Naturally we want to reach B via the shortest path Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 2 / 32

  3. Introduction and Motivation Suppose that we are at a point A and we want to go to another point B. We have some roads that we can travel through. Naturally we want to reach B via the shortest path This can easily be modeled as a graph problem. Points A and B are vertices and the roads are the edges between the intersections. Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 2 / 32

  4. Introduction and Motivation Suppose that we are at a point A and we want to go to another point B. We have some roads that we can travel through. Naturally we want to reach B via the shortest path This can easily be modeled as a graph problem. Points A and B are vertices and the roads are the edges between the intersections. Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 2 / 32

  5. We can find the shortest path using a simple Breadth First Search or using Dijkstra’s algorithm Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 3 / 32

  6. We can find the shortest path using a simple Breadth First Search or using Dijkstra’s algorithm Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 3 / 32

  7. We can find the shortest path using a simple Breadth First Search or using Dijkstra’s algorithm However it could be a rainy day and . . . Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 3 / 32

  8. Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 4 / 32

  9. However, we still want to reach our destination. We would also like to find an efficient path. Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 4 / 32

  10. However, we still want to reach our destination. We would also like to find an efficient path. To do this we can simply delete the edge that has failed, and run our BFS or Dijkstras algorithm again Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 4 / 32

  11. Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 5 / 32

  12. To be safe we would like to find such ”replacement paths” for every edge in our path. Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 5 / 32

  13. Road Map Definition and Problem statement 1 Previous Results 2 Outline of the Paper 3 Finding Short Detours 4 Finding Long Detours 5 Variations of Replacement Paths Problem 6 k − Shortest Paths Problem and the Reduction 7 Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 6 / 32

  14. Story So Far... Definition and Problem statement 1 Previous Results 2 Outline of the Paper 3 Finding Short Detours 4 Finding Long Detours 5 Variations of Replacement Paths Problem 6 k − Shortest Paths Problem and the Reduction 7 Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 7 / 32

  15. Definition (Replacement Path) Given a Graph G ( V , E ) and a path P from s to t , a replacement path for an edge e ∈ P is a path from s to t that avoids e . Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 8 / 32

  16. Definition (Replacement Path) Given a Graph G ( V , E ) and a path P from s to t , a replacement path for an edge e ∈ P is a path from s to t that avoids e . Definition (Replacement Paths Problem) Given a Graph G and a shortest path P , we are required to find a shortest replacement path for every edge e ∈ P . This is the replacement paths problem. Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 8 / 32

  17. Story So Far... Definition and Problem statement 1 Previous Results 2 Outline of the Paper 3 Finding Short Detours 4 Finding Long Detours 5 Variations of Replacement Paths Problem 6 k − Shortest Paths Problem and the Reduction 7 Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 9 / 32

  18. An O ( m + n log n ) time algorithm for the Replacement paths problem for undirected graphs was given by Malik. Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 10 / 32

  19. An O ( m + n log n ) time algorithm for the Replacement paths problem for undirected graphs was given by Malik. Best known algorithm for Replacement paths problem in directed graphs even for unweighted graphs is simply computing a shortest path from s to t, excluding each time a different edge of P. The running time of this algorithm is O ( mn + n 2 log n ). Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 10 / 32

  20. An O ( m + n log n ) time algorithm for the Replacement paths problem for undirected graphs was given by Malik. Best known algorithm for Replacement paths problem in directed graphs even for unweighted graphs is simply computing a shortest path from s to t, excluding each time a different edge of P. The running time of this algorithm is O ( mn + n 2 log n ). O ( m √ n ) time algorithm for the Replacement This paper presents an ˜ paths problem for unweighted directed graphs. Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 10 / 32

  21. Story So Far... Definition and Problem statement 1 Previous Results 2 Outline of the Paper 3 Finding Short Detours 4 Finding Long Detours 5 Variations of Replacement Paths Problem 6 k − Shortest Paths Problem and the Reduction 7 Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 11 / 32

  22. Consider any shortest replacement path P ′ for an edge in the path P . It will be as follows Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 12 / 32

  23. Consider any shortest replacement path P ′ for an edge in the path P . It will be as follows Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 12 / 32

  24. Consider any shortest replacement path P ′ for an edge in the path P . It will be as follows P ′ starts at s and follows P till a vertex u , at this point, it will take a ’detour’ and rejoin the path P at a vertex v . Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 12 / 32

  25. Definition (Detour) Let P ( s , t ) be a simple path from s to t. A simple path D ( u , v ) is a detour of P ( s , t ) if D ( u , v ) ∩ P ( s , t ) = { u , v } and u precedes v on P ( s , t ). Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 13 / 32

  26. Definition (Detour) Let P ( s , t ) be a simple path from s to t. A simple path D ( u , v ) is a detour of P ( s , t ) if D ( u , v ) ∩ P ( s , t ) = { u , v } and u precedes v on P ( s , t ). Definition (Short and Long Detours) If length of detour is utmost L then it is said to be a short detour. If the length is atleast L then it is said to be a long detour. Here L is a parameter to be chosen later. Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 13 / 32

  27. Outline of Replacement paths Algorithm Every Replacement path for edge e = ( u , v ) ∈ P has a detour D ( u ′ , v ′ ) where u’ precedes u and v precedes v’ on P(s,t). Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 14 / 32

  28. Outline of Replacement paths Algorithm Every Replacement path for edge e = ( u , v ) ∈ P has a detour D ( u ′ , v ′ ) where u’ precedes u and v precedes v’ on P(s,t). By finding shortest detours D ( u ′ , v ′ ) for every edge uv ∈ P , we can find shortest replacement path for every edge uv ∈ P . Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 14 / 32

  29. Outline of Replacement paths Algorithm Every Replacement path for edge e = ( u , v ) ∈ P has a detour D ( u ′ , v ′ ) where u’ precedes u and v precedes v’ on P(s,t). By finding shortest detours D ( u ′ , v ′ ) for every edge uv ∈ P , we can find shortest replacement path for every edge uv ∈ P . We find separately the best short and long detours. For each edge uv , we will then find the shortest replacement paths using long and short detours and then take the shortest replacement path among the two. Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 14 / 32

  30. Outline of Replacement paths Algorithm Every Replacement path for edge e = ( u , v ) ∈ P has a detour D ( u ′ , v ′ ) where u’ precedes u and v precedes v’ on P(s,t). By finding shortest detours D ( u ′ , v ′ ) for every edge uv ∈ P , we can find shortest replacement path for every edge uv ∈ P . We find separately the best short and long detours. For each edge uv , we will then find the shortest replacement paths using long and short detours and then take the shortest replacement path among the two. The short detours are found in ˜ O ( mL ) time. The long detours are O ( mn / L ) time. By setting L = √ n we can find both short found in ˜ O ( m √ n ) time. and long detours in ˜ Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 14 / 32

  31. Story So Far... Definition and Problem statement 1 Previous Results 2 Outline of the Paper 3 Finding Short Detours 4 Finding Long Detours 5 Variations of Replacement Paths Problem 6 k − Shortest Paths Problem and the Reduction 7 Mithun, Jayasurya (IIT Madras) Replacement Paths November 2019 15 / 32

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend