Configuration Spaces for Translating Robots Minkowsi Sum/Difference David Johnson.

Post on 20-Jan-2016

217 views 0 download

Transcript of Configuration Spaces for Translating Robots Minkowsi Sum/Difference David Johnson.

Configuration Spaces for Translating Robots

Minkowsi Sum/Difference

David Johnson

C-Obstacles

• Convert – robot and obstacles – point and configuration space obstacles

Workspace robot and obstacle

C-space robot and obstacle

Translating Robots

• Most C-obstacles have mysterious form• Special case for translating robots• Look at the 1D case

-7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7

robotobstacle

Translating Robots

• What translations of the robot result in a collision?

-7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7

robotobstacle

Minkowski Difference

• The red C-obs is the Minkowski difference of the robot and the obstacle

-7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7

robotobstacle

Minkowski Sum

• First, let us define the Minkowski Sum

Minkowski Sum

},|{ BbAabaBA

A B

Minkowski Sum

}|{ AaBaBA },|{ BbAabaBA

Minkowski Sum

Minkowski Sum

},|{ BbAabaBA

Minkowski Sum Example

},|{ BbAabaBA

• Applet• The Minkowski sum is like a convolution• A related operation produces the C-obs– Minkowski difference

Back to the 1D Example

• What translations of the robot result in a collision?

-7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7

robotobstacle

},|{ RbOabaRO

Tracing Out Collision Possibilities

Minkowski Difference

-B

From sets to polygons

• Set definitions are not very practical/implementable

• For polygons, only need to consider vertices– Computationally tractable

Properties of Minkowski Difference

0

0

RyOy

RxOx

• For obstacle O and robot R– if O - R contains the origin

Collision!

0,0 RptOpt

Ry

Rx

Oy

Ox

RptOpt

Another property

BbAabaBAd ,,min),(

• The closest point on the Minkowski difference to the origin is the distance between polygons

• Distance between polygons

BAzzBAd ,min),(

Example

• Applet

Discussion

• Given a polygonal, translating robot• Polygonal obstacles

• Compute exact configuration space obstacle

• Next class – how will we use this to make paths?