This paper addresses the NP-complete problem of Navigation Among Movable Obstacles (NAMO) in which a robot is required to find a collision-free path toward a goal through manipulating and transferring some movable objects on its way. The robot’s main goal is to optimize a performance criterion such as runtime, length of transit or transfer paths, number of manipulated obstacles, total number of displacements of all objects, etc. We have designed a recursive algorithm capable of solving various NAMO problems, ranging from linear monotone to nonlinear non-monotone, and with convex or concave polygonal obstacles. Through the adopted approach, the original problem is decomposed into recursively-solved subproblems, in each of which only one movable object is manipulated. In each call of the algorithm, first a Visibility Graph determines a path from the robot’s current configuration to an intermediate goal configuration, and then a tentative final configuration for the last object intercepting the path is calculated using the Penetration Depth concept. It is assumed that the objects can be pulled or pushed, but not rotated, in a continuous space, and under such assumptions the method is complete and locally optimal for convex objects, with a worst-case time complexity of O(n43m) in which m is the number of movable objects and n is the number of all vertices on them. Several computational experiments showed that compared to the existing methods in the literature, the proposed recursive method achieved equal or smaller number of transferred obstacles or the total number of displacements of all objects in majority of the test problems.
['Shokraneh K. Moghaddam', 'Ellips Masehian']
Planning Robot Navigation among Movable Obstacles (NAMO) through a Recursive Approach