Computing the cut distance of two curves Maike Buchin, Ruhr University Bochum Leonie Ryvkin , Ruhr University Bochum J´ erˆ ome Urhausen, Utrecht University Leonie Ryvkin 16.03.2020
Introduction Visiting W¨ urzburg Schloss Veitsh¨ ochheim Mainbr¨ ucke, Marienburg, Residenz, Dom... Leonie Ryvkin 16.03.2020
Introduction Visiting W¨ urzburg Schloss Veitsh¨ ochheim Mainbr¨ ucke, Marienburg, Residenz, Dom... Leonie Ryvkin 16.03.2020
Introduction Visiting W¨ urzburg Schloss Veitsh¨ ochheim Mainbr¨ ucke, Marienburg, Residenz, Dom... Leonie Ryvkin 16.03.2020
Introduction The Fr´ echet distance δ F ( P , Q ) = inf τ,σ max t ∈ [0 , 1] � P ( τ ( t )) − Q ( σ ( t )) � τ, σ range over all orientation-preserving homeomorphisms Leonie Ryvkin 16.03.2020
The cut distance δ cut ( k , P , Q ) = inf τ,σ max t ∈ [0 , 1] � P ( σ ( t )) − Q ( τ ( t )) � where τ, σ range over all piecewise continuous, surjective functions with k ′ < k jump discontinuities, each. Leonie Ryvkin 16.03.2020
The cut distance δ cut ( k , P , Q ) = inf τ,σ max t ∈ [0 , 1] � P ( σ ( t )) − Q ( τ ( t )) � where τ, σ range over all piecewise continuous, surjective functions with k ′ < k jump discontinuities, each. P Q ε 1 ≥ δ H( P , Q ) ε 2 < δ cut(2 , P , Q ) ε 3 ≥ δ cut(2 , P , Q ) ε 4 ≥ δ wF( P , Q ) Leonie Ryvkin 16.03.2020
The cut distance δ cut ( k , P , Q ) = inf τ,σ max t ∈ [0 , 1] � P ( σ ( t )) − Q ( τ ( t )) � where τ, σ range over all piecewise continuous, surjective functions with k ′ < k jump discontinuities, each. P Q ε 1 ≥ δ H( P , Q ) ε 2 < δ cut(2 , P , Q ) ε 3 ≥ δ cut(2 , P , Q ) ε 4 ≥ δ wF( P , Q ) F ε ( P , Q ) = { ( t 1 , t 2 ): � P ( t 1 ) − Q ( t 2 ) � ≤ ε } Leonie Ryvkin 16.03.2020
The cut distance δ cut ( k , P , Q ) = inf τ,σ max t ∈ [0 , 1] � P ( σ ( t )) − Q ( τ ( t )) � where τ, σ range over all piecewise continuous, surjective functions with k ′ < k jump discontinuities, each. P Q ε 1 ≥ δ H( P , Q ) ε 2 < δ cut(2 , P , Q ) ε 3 ≥ δ cut(2 , P , Q ) ε 4 ≥ δ wF( P , Q ) Observe that δ H ≤ δ cut ≤ δ wF ≤ δ F . Leonie Ryvkin 16.03.2020
Placing cut lines Q P ε Leonie Ryvkin 16.03.2020
Placing cut lines ℓ Q P ε Leonie Ryvkin 16.03.2020
Placing cut lines ℓ Q P h 1 ε Leonie Ryvkin 16.03.2020
Placing cut lines ℓ Q h 2 P h 1 ε Leonie Ryvkin 16.03.2020
Placing cut lines ℓ Q h 2 P h 1 ε Problem: In general, there are infinitely many possible placements for cut lines. Leonie Ryvkin 16.03.2020
Placing cut lines ℓ Q P h 1 ε For k = 2, it is possible to move valid cut lines such that one of them coincides with an extremal point of a component’s boundary. Leonie Ryvkin 16.03.2020
Algorithm for k = 2 Input: polygonal curves P , Q and ε > 0 P ε Q Leonie Ryvkin 16.03.2020
Algorithm for k = 2 1. Compute FSD P ε Q Leonie Ryvkin 16.03.2020
Algorithm for k = 2 1. Compute FSD G P ε Q Leonie Ryvkin 16.03.2020
Algorithm for k = 2 1. Compute FSD 2. Identify candidates a i , b j P ε Q Leonie Ryvkin 16.03.2020
Algorithm for k = 2 1. Compute FSD 2. Identify candidates a i , b j 3. Compute cut lines ℓ at extremal points P ε Q Leonie Ryvkin 16.03.2020
Algorithm for k = 2 ℓ 1. Compute FSD 2. Identify candidates a i , b j 3. Compute cut lines ℓ at extremal points Identify a ℓ i , b ℓ 4. j P ε Q Leonie Ryvkin 16.03.2020
Algorithm for k = 2 ℓ 1. Compute FSD 2. Identify candidates a i , b j 3. Compute cut lines ℓ at extremal points Identify a ℓ i , b ℓ 4. j P ε Q Leonie Ryvkin 16.03.2020
Algorithm for k = 2 ℓ 1. Compute FSD 2. Identify candidates a i , b j 3. Compute cut lines ℓ at extremal points Identify a ℓ i , b ℓ 4. j P ε Q Leonie Ryvkin 16.03.2020
Algorithm for k = 2 ℓ 1. Compute FSD h 2. Identify candidates a i , b j 3. Compute cut lines ℓ at extremal points Identify a ℓ i , b ℓ 4. j 5. Determine horizontal cut h Leonie Ryvkin 16.03.2020
Algorithm for k = 2 ℓ 1. Compute FSD 2. Identify candidates h a i , b j 3. Compute cut lines ℓ at extremal points Identify a ℓ i , b ℓ 4. j 5. Determine horizontal cut h Leonie Ryvkin 16.03.2020
Algorithm for k = 2 ℓ 1. Compute FSD 2. Identify candidates h a i , b j 3. Compute cut lines ℓ at extremal points Identify a ℓ i , b ℓ 4. j 5. Determine horizontal cut h ( 6. Repeat for h at extremal points) Leonie Ryvkin 16.03.2020
Algorithm for k = 2 ℓ 1. Compute FSD 2. Identify candidates h a i , b j 3. Compute cut lines ℓ at extremal points Identify a ℓ i , b ℓ 4. j 5. Determine horizontal cut h ( 6. Repeat for h at extremal points) ( 7. Repeat for opposite quadrants if necessary) Leonie Ryvkin 16.03.2020
Algorithm for k = 2 ℓ 1. Compute FSD 2. Identify candidates h a i , b j 3. Compute cut lines ℓ at extremal points Identify a ℓ i , b ℓ 4. j 5. Determine horizontal cut h ( 6. Repeat for h at extremal points) ( 7. Repeat for opposite quadrants if necessary) 8. Return cut positions Leonie Ryvkin 16.03.2020
Conclusion Overview on the cut distance Leonie Ryvkin 16.03.2020
Conclusion Overview on the cut distance Deciding the cut distance is NP-hard in general Leonie Ryvkin 16.03.2020
Conclusion Overview on the cut distance Deciding the cut distance is NP-hard in general Optimizing k is APX-hard Leonie Ryvkin 16.03.2020
Conclusion Overview on the cut distance Deciding the cut distance is NP-hard in general Optimizing k is APX-hard O ( n 2 log n ) time algorithm for k = 2 Leonie Ryvkin 16.03.2020
Conclusion Overview on the cut distance Deciding the cut distance is NP-hard in general Optimizing k is APX-hard O ( n 2 log n ) time algorithm for k = 2 Conjecture: already NP-hard for k = 3 Leonie Ryvkin 16.03.2020
Conclusion Overview on the cut distance Deciding the cut distance is NP-hard in general Optimizing k is APX-hard O ( n 2 log n ) time algorithm for k = 2 Conjecture: already NP-hard for k = 3 Thank you! Leonie Ryvkin 16.03.2020
Recommend
More recommend