1 Numerical geometry of non-rigid shapes Shortest path problems Shortest path problems Lecture 2 © Alexander & Michael Bronstein tosca.cs.technion.ac.il/book.

Slides:



Advertisements
Similar presentations
Single Source Shortest Paths
Advertisements

Chapter 9: Graphs Shortest Paths
Multiple Shape Correspondence by Dynamic Programming Yusuf Sahillioğlu 1 and Yücel Yemez 2 Pacific Graphics 2014 Computer Eng. Depts, 1, 2, Turkey.
IKI 10100: Data Structures & Algorithms Ruli Manurung (acknowledgments to Denny & Ade Azurat) 1 Fasilkom UI Ruli Manurung (Fasilkom UI)IKI10100: Lecture10.
The Greedy Approach Chapter 8. The Greedy Approach It’s a design technique for solving optimization problems Based on finding optimal local solutions.
1 Appendix B: Solving TSP by Dynamic Programming Course: Algorithm Design and Analysis.
Graphs Graphs are the most general data structures we will study in this course. A graph is a more general version of connected nodes than the tree. Both.
CSCI 3160 Design and Analysis of Algorithms Tutorial 2 Chengyu Lin.
Topology-Invariant Similarity and Diffusion Geometry
Discrete Geometry Tutorial 2 1
State Space Search Algorithms CSE 472 Introduction to Artificial Intelligence Autumn 2003.
Discrete geometry Lecture 2 1 © Alexander & Michael Bronstein
1 Numerical geometry of non-rigid shapes Consistent approximation of geodesics in graphs Consistent approximation of geodesics in graphs Tutorial 3 © Alexander.
Shape reconstruction and inverse problems
Fast marching methods The continuous way 1
1 Processing & Analysis of Geometric Shapes Shortest path problems Shortest path problems The discrete way © Alexander & Michael Bronstein, ©
Fast marching methods Lecture 3 1 © Alexander & Michael Bronstein
Numerical geometry of non-rigid shapes
CSC 213 Lecture 23: Shortest Path Algorithms. Weighted Graphs Each edge in weighted graph has numerical weight Weights can be distances, building costs,
Shortest Paths Definitions Single Source Algorithms –Bellman Ford –DAG shortest path algorithm –Dijkstra All Pairs Algorithms –Using Single Source Algorithms.
1 Bronstein 2 and Kimmel Extrinsic and intrinsic similarity of nonrigid shapes Michael M. Bronstein Department of Computer Science Technion – Israel Institute.
Greedy Algorithms Reading Material: Chapter 8 (Except Section 8.5)
1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.
Shortest Path Problems Directed weighted graph. Path length is sum of weights of edges on path. The vertex at which the path begins is the source vertex.
Chapter 9 Graph algorithms Lec 21 Dec 1, Sample Graph Problems Path problems. Connectedness problems. Spanning tree problems.
Shortest Paths Definitions Single Source Algorithms
CS 206 Introduction to Computer Science II 11 / 05 / 2008 Instructor: Michael Eckmann.
1 Numerical geometry of non-rigid shapes A journey to non-rigid world objects Numerical methods non-rigid Alexander Bronstein Michael Bronstein Numerical.
Non-Euclidean Embedding
1 Numerical geometry of non-rigid shapes Numerical Geometry Numerical geometry of non-rigid shapes Numerical geometry Alexander Bronstein, Michael Bronstein,
Greedy Algorithms Like dynamic programming algorithms, greedy algorithms are usually designed to solve optimization problems Unlike dynamic programming.
All-Pairs Shortest Paths
1 Numerical Geometry of Non-Rigid Shapes Invariant shape similarity Invariant shape similarity © Alexander & Michael Bronstein, © Michael Bronstein,
1 Numerical geometry of non-rigid shapes Non-Euclidean Embedding Non-Euclidean Embedding Lecture 6 © Alexander & Michael Bronstein tosca.cs.technion.ac.il/book.
1 Numerical geometry of non-rigid shapes Shortest Path Problems Shortest Path Problems Alexander Bronstein, Michael Bronstein © 2008 All rights reserved.
Dijkstra's algorithm.
Graphs – Shortest Path (Weighted Graph) ORD DFW SFO LAX
Dijkstra’s Algorithm. 2 Shortest-path Suppose we want to find the shortest path from node X to node Y It turns out that, in order to do this, we need.
Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Cpt S 223 – Advanced Data Structures Graph Algorithms Shortest-Path.
1 Graphs Algorithms Sections 9.1, 9.2, and Graphs v1v1 v2v2 v5v5 v7v7 v8v8 v3v3 v6v6 v4v4 A graph G = (V, E) –V: set of vertices (nodes) –E: set.
Dijkstras Algorithm Named after its discoverer, Dutch computer scientist Edsger Dijkstra, is an algorithm that solves the single-source shortest path problem.
Computing the shortest path on a polyhedral surface Presented by: Liu Gang
Surface Simplification Using Quadric Error Metrics Michael Garland Paul S. Heckbert.
Graph Algorithms. Definitions and Representation An undirected graph G is a pair (V,E), where V is a finite set of points called vertices and E is a finite.
Graphs. Definitions A graph is two sets. A graph is two sets. –A set of nodes or vertices V –A set of edges E Edges connect nodes. Edges connect nodes.
1 Numerical geometry of non-rigid shapes Projects Quasi-isometries Project 1 © Alexander & Michael Bronstein tosca.cs.technion.ac.il/book Numerical geometry.
Data Structures and Algorithm Analysis Graph Algorithms Lecturer: Jing Liu Homepage:
Proof of correctness of Dijkstra’s algorithm: Basically, we need to prove two claims. (1)Let S be the set of vertices for which the shortest path from.
Shortest Path 6/18/2018 4:22 PM Presentation for use with the textbook Data Structures and Algorithms in Java, 6th edition, by M. T. Goodrich, R. Tamassia,
Lecture 13 Shortest Path.
COMP 6/4030 ALGORITHMS Prim’s Theorem 10/26/2000.
Algorithms and Data Structures Lecture XIII
Shortest Path Problems
Greedy Algorithms / Dijkstra’s Algorithm Yin Tat Lee
Shortest Paths C B A E D F Shortest Paths
Algorithms and Data Structures Lecture XIII
Lecture 13 Algorithm Analysis
Lecture 13 Algorithm Analysis
Shortest Path Problems
Shortest Path Algorithms
Lecture 13 Algorithm Analysis
Chapter 15 Graphs © 2006 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved.
Lecture 13 Algorithm Analysis
All pairs shortest path problem
Chapter 24: Single-Source Shortest Paths
Shortest Paths.
Chapter 24: Single-Source Shortest Paths
CSE 417: Algorithms and Computational Complexity
Lecture 12 Shortest Path.
Chapter 9: Graphs Shortest Paths
Presentation transcript:

1 Numerical geometry of non-rigid shapes Shortest path problems Shortest path problems Lecture 2 © Alexander & Michael Bronstein tosca.cs.technion.ac.il/book Numerical geometry of non-rigid shapes Stanford University, Winter 2009

2 Numerical geometry of non-rigid shapes Shortest path problems How to compute the intrinsic metric? So far, we represented itself. Our model of non-rigid shapes as metric spaces involves the intrinsic metric Sampling procedure requires as well. We need a tool to compute geodesic distances on.

3 Numerical geometry of non-rigid shapes Shortest path problems Shortest path problem Paris Brussels Bern Munich Prague Vienna

4 Numerical geometry of non-rigid shapes Shortest path problems Shapes as graphs Sample the shape at vertices. Represent shape as an undirected graph set of edges representing adjacent vertices. Define length function measuring local distances as Euclidean ones,

5 Numerical geometry of non-rigid shapes Shortest path problems Shapes as graphs Path between is an ordered set of connected edges where and. Path length = sum of edge lengths

6 Numerical geometry of non-rigid shapes Shortest path problems Geodesic distance Shortest path between Length metric in graph Approximates the geodesic distance on the shape. Shortest path problem: compute and between any. Alternatively: given a source point, compute the distance map.

7 Numerical geometry of non-rigid shapes Shortest path problems Bellman’s principle of optimality Let be shortest path between and a point on the path. Then, and are shortest sub-paths between, and. Suppose there exists a shorter path. Contradiction to being shortest path. Richard Bellman ( )

8 Numerical geometry of non-rigid shapes Shortest path problems Dynamic programming How to compute the shortest path between source and on ? Bellman principle: there exists such that has to minimize path length Recursive dynamic programming equation.

9 Numerical geometry of non-rigid shapes Shortest path problems Edsger Wybe Dijkstra (1930–2002) [‘ ɛ tsxər ‘wibə ‘d ɛɪ kstra]

10 Numerical geometry of non-rigid shapes Shortest path problems Dijkstra’s algorithm Initialize and for the rest of the graph; Initialize queue of unprocessed vertices. While Find vertex with smallest value of, For each unprocessed adjacent vertex, Remove from. Return distance map.

11 Numerical geometry of non-rigid shapes Shortest path problems Dijkstra’s algorithm Paris Brussels Bern Munich Prague Vienna     

12 Numerical geometry of non-rigid shapes Shortest path problems Dijkstra’s algorithm – complexity While there are still unprocessed vertices Find and remove minimum For each unprocessed adjacent vertex Perform update Every vertex is processed exactly once: outer iterations. Minimum extraction straightforward complexity: Can be reduced to using binary or Fibonacci heap. Updating adjacent vertices is in general. In our case, graph is sparsely connected, update in. Total complexity:.

13 Numerical geometry of non-rigid shapes Shortest path problems Troubles with the metric Grid with 4-neighbor connectivity. True Euclidean distance Shortest path in graph (not unique) Increasing sampling density does not help.

14 Numerical geometry of non-rigid shapes Shortest path problems Metrication error 4-neighbor topology Manhattan distance Continuous Euclidean distance 8-neighbor topology Graph representation induces an inconsistent metric. Increasing sampling size does not make it consistent. Neither does increasing connectivity.

15 Numerical geometry of non-rigid shapes Shortest path problems Metrication error How to approximate the metric consistently? Solution 1 Stick to graph representation. Change connectivity and sampling. Under certain conditions consistency is guaranteed. Solution 2 Stick to given sampling (and connectivity). Compute distance map on a surface in some representation (e.g., mesh). Requires a new algorithm.