Paper: Extending Obstacle Avoidance Methods through Multiple Parameter-Space Transformations

“Extending Obstacle Avoidance Methods through Multiple Parameter-Space Transformations”Jose-Luis Blanco, Javier Gonzalez, and Juan-Antonio Fernandez-Madrigal, Autonomous Robots, 2008 –View article – PDF

Obstacle avoidance methods approach the problem of mobile robot autonomous navigation by steering the robot in real-time according to the most recent sensor readings, being suitable to dynamic or unknown environments. However, real-time performance is commonly gained by ignoring the robot shape and some or all of its kinematic restrictions which may lead to poor navigation performance in many practical situations. In this paper we propose a framework where a kinematically constrained and any-shape robot is transformed in real-time into a free-flying point in a new space where well-known obstacle avoidance methods are applicable. Our contribution with this framework is twofold: the definition of generalized space transformations that cover most of the existing transformational approaches, and a reactive navigation system where multiple transformations can be applied concurrently in order to optimize robot motion decisions. As a result, these transformations allow existing obstacle avoidance methods to perform better detection of the surrounding free-space, through “sampling” the space with paths compatible with the robot kinematics. We illustrate how to design these space transformations with some examples from our experience with real robots.

Source Code

The main class for a reactive navigation system based on Parameterized Trajectory Generators (PTGs) is:


Which internally creates one or more instances of the different PTGs described in the article. For a list of the PTG classes, refer to the abstract base class mrpt::nav::CParameterizedTrajectoryGenerator.


Real robots


The application ReactiveNavigationDemo provides a GUI to a navigation simulator which internally relies on PTGs and trajectory space transformations.