Computational Geometry Piyush Kumar (Lecture 10: Robot Motion Planning) Welcome to CIS5930

Preview:

Citation preview

Computational Geometry

Piyush Kumar(Lecture 10: Robot Motion Planning)

Welcome to CIS5930

Reading

Chapter 13 in Textbook David Mount’s Lecture notes. Slides Sources

Lecture notes from Dr. Bayazit Dr. Spletzer, Dr. Latombe.Pictures from the web and David Mount’s notes.

Robots

Real WorldFiction

Robot Motion Planning

Free space

Obstacles

Robot Motion Planning

Work Space : Environment in which robot operates Obstacles : Already occupied spaces of the world. Free Space : Unoccupied space of the world.

Configuration Space OR C-space

Helps in determining where a robot can go.

Modelling a robotConfiguration: Values which

specify the position of a robotGeometric shape description

Motion Planning

Given a robot, find a sequence of valid configurationsthat moves the robot from the source to destination.

start

goal obstacles

Configuration Space

Configuration: Specification of the robot position relative to a fixed coordinate system.

Usually a set of values expressed as a vector of positions/orientations.

Configuration Space: is the space of all possible robot configurations.

Configuration Space Example

reference point

x

y

robotreference direction

workspace

– 3-parameter representation: q = (x,y,)

– In 3D? 6-parameters - (x,y,z,)

Configuration Space

X

Y

A robot which can translate in the plane

X

Y A robot which can translate and rotate in the plane

x

Y

C-space:

C-space:

2-D (x, y)

3-D (x, y, )

Euclidean space: 2R

Courtesy J.Xiao

C-Space

qq11

qq22

q = (q1,q2,…,q10)

Configuration Space /Obstacles

Circular Robot

C-Obstacles

Convex polygonal robot

Minkowski Sum

A B = { a+b | a A, b B }

Minkowski Sums

3D Minkowski sum difficult to compute

Many ApplicationsConfiguration Space Computation

Offset

Morphing

Packing and Layout

Friction model

Configuration Obstacle

Only for robots in 2d that can translate.

CP = { p | R(p) ∩ P ≠ Null }

C-Obstacles

Lemma : CP = P Lemma : CP = P (-R) (-R) Proof: Show that R(q) intersects

P iff q є P (-R). q є P (-R) iff there exists p є P

and (-r) є (-R) such that q = p – r R(q) intersects P iff there exists

r є R and p є P such that r+q = p.

Equ

ival

ent

An illustration

Computing Minkowski sum For a given convex polygonal

obstacle (with n vertices) and a convex footprint robot (with m vertices), how fast can we compute the CP?

O(m + n)O(m + n)Idea: Walk.Idea: Walk.

Complexity of Minkowski Sums? Can we bound the complexity

of the minkowski sum of disjoint convex obstacles with n vertices in the plane?

Naïve bound? Triangulate the obstacles : O(n) edges.

Minkowski sum of R with triangles =

O(nm)

Complexity of the union? O((nm)O((nm)22)?)?

Pseudodisks: Defn.

A set of convex objects {o1,o2,…,on} is called a collection of pseudodisks if for any two distinct objects oi and oj both of the set theoretic differences oi\oj and oj\oi are connected.

Lemma 1

Given a set of convex objects {T1, T2,…, Tn,} with disjoint

interiors and convex R, the set {Ti R | i = 1..n } is a collection of psedodisks.

Proof: On the chalkboard

Lemma 2

Given a collection of pseudodisks with n vertices, the complexity of their union is O(n).

Why?

Planning approaches in C-spaceRoadmap Approach:

Visibility Graph Methods

Cell Decomposition Approach

Potential Fields

Many other Algorithms…

Visibility Graph in C-space

start

goal

Each path in c-space from s to t represents a viable move from s to t of the Robot in the original space.

Visibility Graph in C-space

start

goal

Each path in c-space from s to t represents a viable move from s to t of the Robot in the original space.

Computation time?

Vis Graph in higher dimensions?

Will it work?

Cell Decomp: Trapezoidal Decomp.

GOAL

START

1

3

2

4

5 8

7

9

10

11

12

13

6

1) Decompose Region Into Cells

Cell Decomp: Trapezoidal Decomp.

1) Decompose Region Into Cells

GOAL

START

1

3

2

4

5 8

7

9

10

11

12

13

6

2) Construct Adjacency Graph

Cell Decomp: Trapezoidal Decomp.

GOAL

START

Cell Decomposition: Other approaches

Uniform Quadtree

Potential field approach

The field is modeled by a potential function U(x,y) over C

Motion policy control law is akin to gradient descent on the potential function

Next Class

Final Review: Q&A session.