Method of Evolving Junctions: Finding the Shortest Paths in - - PowerPoint PPT Presentation

method of evolving junctions finding the shortest paths
SMART_READER_LITE
LIVE PREVIEW

Method of Evolving Junctions: Finding the Shortest Paths in - - PowerPoint PPT Presentation

Method of Evolving Junctions: Finding the Shortest Paths in Cluttered Environment Jun Lu collaboration with Shui-Nee Chow, Magnus Egerstedt Yancy Diaz-Mercado, Haomin Zhou Georgia Institute of Technology SIAM Gators, 2014 Introduction


slide-1
SLIDE 1

Method of Evolving Junctions: Finding the Shortest Paths in Cluttered Environment Jun Lu

collaboration with Shui-Nee Chow, Magnus Egerstedt Yancy Diaz-Mercado, Haomin Zhou Georgia Institute of Technology SIAM Gators, 2014

slide-2
SLIDE 2

Introduction

Shortest Path Problem Given a finite number of obstacles in a region M in R2 or R3, what is the shortest path connecting two given points X, Y in M while avoiding the obstacles. X Y

1 / 25

slide-3
SLIDE 3

Existing Methods

  • Polygonal obstacles: optimal alogrithm with complexity

O(n log n). (Hershberger and Suri) X Y

2 / 25

slide-4
SLIDE 4

Existing Methods

  • Polygonal obstacles: optimal alogrithm with complexity

O(n log n). (Hershberger and Suri) X Y

  • Polyhedral obstacles, NP-hard in the framework configuration
  • space. (Canny and Reif)

X Y

2 / 25

slide-5
SLIDE 5
  • Approximation Methods. (Papadimitriou)

3 / 25

slide-6
SLIDE 6
  • Approximation Methods. (Papadimitriou)
  • Continuous Settings: Penalty Method

X Y

3 / 25

slide-7
SLIDE 7
  • Approximation Methods. (Papadimitriou)
  • Continuous Settings: Penalty Method

X Y

  • Front Propagation (Dijkstra, A∗, HJB).

|∇d(x)| = 1, d(Y ) = 0.

3 / 25

slide-8
SLIDE 8

Shortest Path Problem

  • Starting point X, ending point Y in domain M ⊂ Rn.

4 / 25

slide-9
SLIDE 9

Shortest Path Problem

  • Starting point X, ending point Y in domain M ⊂ Rn.
  • Obstacles {Pk}k≤1. The boundary ∂Pk of Pk are piecewise

C 2 and has level set representation φk(x) = 0.

4 / 25

slide-10
SLIDE 10

Shortest Path Problem

  • Starting point X, ending point Y in domain M ⊂ Rn.
  • Obstacles {Pk}k≤1. The boundary ∂Pk of Pk are piecewise

C 2 and has level set representation φk(x) = 0.

  • Admissible paths connecting X and Y is

A(X, Y , M) = {γ : [0, 1] → M | γ(0) = X, γ(1) = Y , φk(γ(θ)) ≥ 0, 1 ≤ k ≤ N} .

4 / 25

slide-11
SLIDE 11

Shortest Path Problem

  • Starting point X, ending point Y in domain M ⊂ Rn.
  • Obstacles {Pk}k≤1. The boundary ∂Pk of Pk are piecewise

C 2 and has level set representation φk(x) = 0.

  • Admissible paths connecting X and Y is

A(X, Y , M) = {γ : [0, 1] → M | γ(0) = X, γ(1) = Y , φk(γ(θ)) ≥ 0, 1 ≤ k ≤ N} .

  • The shortest path is

γopt = argminγ∈A J(γ). where J(γ) is the Euclidean length of γ.

4 / 25

slide-12
SLIDE 12

Separable Path

  • For any two points x, y ∈ M, define

γ0(x, y) = argminγ∈A(x,y,M) J(γ), = {z(λ) = (1 − λ)x + λy, λ ∈ [0, 1]} , J0(x, y) = J(γ0(x, y)) = x − y.

5 / 25

slide-13
SLIDE 13

Separable Path

  • For any two points x, y ∈ M, define

γ0(x, y) = argminγ∈A(x,y,M) J(γ), = {z(λ) = (1 − λ)x + λy, λ ∈ [0, 1]} , J0(x, y) = J(γ0(x, y)) = x − y.

  • For any two points x, y ∈ ∂Pk, k ≥ 1, define

γk(x, y) = argminγ∈A(x,y,∂Pk) J(γ), Jk(x, y) = J(γk(x, y)).

5 / 25

slide-14
SLIDE 14

Separable Path

A path γ ∈ A(X, Y , M) is SEPARABLE if there are finite number

  • f points, called junctions

(x0, x1, · · · , xn+1) such that γ = γ0(x0, x1) · γk1(x1, x2) · · · · γ0(xn, xn+1). Here γ1 · γ2 is the concatenation defined by (γ1 · γ2)(θ) =

  • γ1(2θ),

θ ∈ [0, 1

2];

γ2(2θ − 1), θ ∈ [ 1

2, 1].

xi xi+1 xi+2 xi+3 xi+4 xi+5

Figure : γ0(xi, xi+1) · γk1(xi+1, xi+2) · γ0(xi+2, xi+3)·

6 / 25

slide-15
SLIDE 15

Separable Path Theorem

γopt of the shortest path problem is separable.

7 / 25

slide-16
SLIDE 16

Separable Path Theorem

γopt of the shortest path problem is separable.

  • γopt is completely determined by finitely many junctions.

7 / 25

slide-17
SLIDE 17

Separable Path Theorem

γopt of the shortest path problem is separable.

  • γopt is completely determined by finitely many junctions.
  • Dimension Reduction

Finding γopt = ⇒ Finding junctions (x0, · · · , xn+1) Infinite Dimensional = ⇒ Finite Dimensional

7 / 25

slide-18
SLIDE 18

Gradient Flow

  • The length of the path connecting junction xi and xi+1 is

J(xi, xi+1) =

  • J0(xi, xi+1),

i even; Jki(xi, xi+1), i odd.

8 / 25

slide-19
SLIDE 19

Gradient Flow

  • The length of the path connecting junction xi and xi+1 is

J(xi, xi+1) =

  • J0(xi, xi+1),

i even; Jki(xi, xi+1), i odd.

  • The length of the shortest path is

J(x0, · · · , xn+1) =

n

  • i=0

J(xi, xi+1), xi ∈ ∂Pki

8 / 25

slide-20
SLIDE 20

Gradient Flow

  • The length of the path connecting junction xi and xi+1 is

J(xi, xi+1) =

  • J0(xi, xi+1),

i even; Jki(xi, xi+1), i odd.

  • The length of the shortest path is

J(x0, · · · , xn+1) =

n

  • i=0

J(xi, xi+1), xi ∈ ∂Pki

  • The gradient flow on the manifold ∂Pki is

dxi dθ = −∇J(x0, · · · , xn+1) = −∇xi

  • J(xi−1, xi) + J(xi, xi+1)
  • J(xi)
  • .

8 / 25

slide-21
SLIDE 21

Gradient Flow

  • For i odd, J(xi) = J0(xi−1, xi) + Jki(xi, xi+1).

9 / 25

slide-22
SLIDE 22

Gradient Flow

  • For i odd, J(xi) = J0(xi−1, xi) + Jki(xi, xi+1).
  • T(xi, xi+1) ∈ Txi∂Pki - unit tangent of γki(xi, xi+1) at xi.

xi xi+1 T(xi, xi+1) γki(xi, xi+1)

9 / 25

slide-23
SLIDE 23

Gradient Flow

  • For i odd, J(xi) = J0(xi−1, xi) + Jki(xi, xi+1).
  • T(xi, xi+1) ∈ Txi∂Pki - unit tangent of γki(xi, xi+1) at xi.

xi xi+1 T(xi, xi+1) γki(xi, xi+1)

  • Gradient of Jki is

∇xiJki(xi, xi+1) = −T(xi, xi+1).

9 / 25

slide-24
SLIDE 24

Gradient Flow

  • For i odd, J(xi) = J0(xi−1, xi) + Jki(xi, xi+1).
  • T(xi, xi+1) ∈ Txi∂Pki - unit tangent of γki(xi, xi+1) at xi.

xi xi+1 T(xi, xi+1) γki(xi, xi+1)

  • Gradient of Jki is

∇xiJki(xi, xi+1) = −T(xi, xi+1).

  • Gradient of J0 is

∇xiJ0(xi−1, xi) = xi − xi−1 xi − xi−1 · T

  • T

9 / 25

slide-25
SLIDE 25

Intermittent Diffusion

  • The gradient flow on the manifold ∂Pki is

dxi dθ = − xi − xi−1 xi − xi−1 · T − 1

  • · T.

10 / 25

slide-26
SLIDE 26

Intermittent Diffusion

  • The gradient flow on the manifold ∂Pki is

dxi dθ = − xi − xi−1 xi − xi−1 · T − 1

  • · T.
  • Gradient descent only finds local minimizeers.

10 / 25

slide-27
SLIDE 27

Intermittent Diffusion

  • The gradient flow on the manifold ∂Pki is

dxi dθ = − xi − xi−1 xi − xi−1 · T − 1

  • · T.
  • Gradient descent only finds local minimizeers.
  • There could be 2N locally shortest paths in an environment

with N obstacles.

10 / 25

slide-28
SLIDE 28

Intermittent Diffusion

  • Idea: add noise to gradient flow intermittently,

dxi = −∇xiJ(xi)dθ + σ(θ)dW(θ),

11 / 25

slide-29
SLIDE 29

Intermittent Diffusion

  • Idea: add noise to gradient flow intermittently,

dxi = −∇xiJ(xi)dθ + σ(θ)dW(θ), where

  • W(θ) is a standard Brownian motion in tangent space Txi∂Pki.

11 / 25

slide-30
SLIDE 30

Intermittent Diffusion

  • Idea: add noise to gradient flow intermittently,

dxi = −∇xiJ(xi)dθ + σ(θ)dW(θ), where

  • W(θ) is a standard Brownian motion in tangent space Txi∂Pki.
  • For 0 = S1 < T1 < · · · < Sm,

σ(θ) =

m

  • i=1

σiχ[Si,Ti](θ).

S1 T1 S2 T2 S3 T3 S4 σ1 σ2 σ3 x y 11 / 25

slide-31
SLIDE 31

Intermittent Diffusion

  • Diffusion on, get out of local trap.

12 / 25

slide-32
SLIDE 32

Intermittent Diffusion

  • Diffusion on, get out of local trap.
  • Diffusion off, converges to local minimizers.

12 / 25

slide-33
SLIDE 33

Intermittent Diffusion

  • Diffusion on, get out of local trap.
  • Diffusion off, converges to local minimizers.
  • After m diffusions, obtain m local minimzers.

12 / 25

slide-34
SLIDE 34

Intermittent Diffusion

  • Diffusion on, get out of local trap.
  • Diffusion off, converges to local minimizers.
  • After m diffusions, obtain m local minimzers.
  • Set γopt to be the best minimizer.

12 / 25

slide-35
SLIDE 35

Intermittent Diffusion

  • Diffusion on, get out of local trap.
  • Diffusion off, converges to local minimizers.
  • After m diffusions, obtain m local minimzers.
  • Set γopt to be the best minimizer.

Theorem

For any given δ > 0, the probability that γopt is the globally shortest path is larger that 1 − δ for appropriate selected σ.

12 / 25

slide-36
SLIDE 36

Solving SDEs

  • The full SDE is

dxi = − xi − xi−1 xi − xi−1 · T − 1

  • dθ · T + σ(θ)dW(θ)

= f (xi)dθ · T + σ(θ)dW(θ)· (1)

13 / 25

slide-37
SLIDE 37

Solving SDEs

  • The full SDE is

dxi = − xi − xi−1 xi − xi−1 · T − 1

  • dθ · T + σ(θ)dW(θ)

= f (xi)dθ · T + σ(θ)dW(θ)· (1)

  • SDE (1) can be discretized by

x∗

i − xn i = f (xn i )∆θT + σn

√ ∆θξ, ξ ∼ N(0, I).

13 / 25

slide-38
SLIDE 38

Solving SDEs

  • The full SDE is

dxi = − xi − xi−1 xi − xi−1 · T − 1

  • dθ · T + σ(θ)dW(θ)

= f (xi)dθ · T + σ(θ)dW(θ)· (1)

  • SDE (1) can be discretized by

x∗

i − xn i = f (xn i )∆θT + σn

√ ∆θξ, ξ ∼ N(0, I).

  • Projection. x∗

i is then projected onto ∂Pki( φki = 0)

xn+1

i

= x∗

i − φki(x∗ i )N(x∗ i ).

xn

i

x∗

i

xn+1

i

T N

13 / 25

slide-39
SLIDE 39

Handling Dimension Changes

  • Add junctions when γ0(xi, xi+1) intersect with one obstacle.

xi−2 xi−1 xi xi+4 xi+5 xi+1 xi+2 xi+3

14 / 25

slide-40
SLIDE 40

Handling Dimension Changes

  • Add junctions when γ0(xi, xi+1) intersect with one obstacle.

xi−2 xi−1 xi xi+4 xi+5 xi+1 xi+2 xi+3

  • Remove junctions when xi = xi+1.

xi−3 xi−2 xi−1 xi = xi+1 xi+2 xi+3 xi+4

14 / 25

slide-41
SLIDE 41

One Realization of the Algorithm

One Realization

15 / 25

slide-42
SLIDE 42

Complexity

A comparison with different algorithms Algorithm Complexity A∗ O(( 1

ǫ)3 log 1 ǫ)

Papadimitriou O( 1

ǫ)

Choi, et. al O( 1

ǫ)

Choi, et. al (unique shortest path) O(log 1

ǫ)

Evolving Junctions O(log 1

ǫ)

16 / 25

slide-43
SLIDE 43

Example: 4 convex obstacles

(a) L = 1.0264, 26 times (b) L = 1.0966, 6 times (c) L = 1.1320, 9 times (d) L = 1.1501, 9 times

17 / 25

slide-44
SLIDE 44

Example: 4 convex obstacles in R3

−2 2 −2 2 1 2 North (Meters) Minimizer 1, Length = 5.8660 meters East (Meters) Up (Meters) −2 2 −2 2 1 2 North (Meters) Minimizer 2, Length = 5.9527 meters East (Meters) Up (Meters) −2 2 −2 2 1 2 North (Meters) Minimizer 3, Length = 6.0403 meters East (Meters) Up (Meters) −2 2 −2 2 1 2 North (Meters) Minimizer 7, Length = 6.2305 meters East (Meters) Up (Meters)

18 / 25

slide-45
SLIDE 45

Example: 4 convex obstacles in R3

Minimizer Length (m) Times Obtained Out of 100 200 300 1 5.8660 48 103 159 2 5.9527 50 91 128 3 6.0403 1 4 6 4 6.0594 1 1 5 6.0919 1 6 6.2286 3 7 6.2305 1 1 2

Table : Improvement on Probability of Obtaining Shortest Path

19 / 25

slide-46
SLIDE 46

Example: One Non-convex Obstacle

(e) L = 1.1874, 46 times (f) L = 1.3393, 4 times

20 / 25

slide-47
SLIDE 47

Example: Polyhedral Obstacles

(g) Occurs 6 times, L=2.600 (h) Occurs 3 times, L=2.623 (i) Occurs once, L=3.000

21 / 25

slide-48
SLIDE 48

Example: Polyhedral Obstacles

(j) N=13, L=7.0803 (k) N=2, L=7.0956 (l) N=2, L=7.3404

22 / 25

slide-49
SLIDE 49

Example: Polyhedral Obstacles

(m) N=1, L=7.3436 (n) N=1, L=7.4314 (o) N=1, L=7.5253

23 / 25

slide-50
SLIDE 50

Example: Disk Mover

(p) L = 0.6266, r = 0 (q) L = 0.6347, r = 0.02 (r) L = 0.6952, r = 0.05

24 / 25

slide-51
SLIDE 51

Example: Shortest Path between two sets

(s) L = 0.2840 (t) L = 0.2979

25 / 25

slide-52
SLIDE 52

Questions?

25 / 25