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

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

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

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

Configuration Spaces for Translating Robots

Minkowsi Sum/Difference

David Johnson

Page 2: 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

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

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

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

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

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

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

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

Minkowski Sum

• First, let us define the Minkowski Sum

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

Minkowski Sum

},|{ BbAabaBA

A B

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

Minkowski Sum

}|{ AaBaBA },|{ BbAabaBA

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

Minkowski Sum

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

Minkowski Sum

},|{ BbAabaBA

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

Minkowski Sum Example

},|{ BbAabaBA

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

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

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

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

Tracing Out Collision Possibilities

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

Minkowski Difference

-B

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

From sets to polygons

• Set definitions are not very practical/implementable

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

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

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

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

Another property

BbAabaBAd ,,min),(

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

• Distance between polygons

BAzzBAd ,min),(

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

Example

• Applet

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

Discussion

• Given a polygonal, translating robot• Polygonal obstacles

• Compute exact configuration space obstacle

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