Robotic arms often share a common workspace. Examples range from dual-arm manipulation platforms to factory floors equipped with dozens of industrial manipulators. Yet, despite sharing heavily overlapping workspaces, these arms are frequently treated as independent entities and collaboration between the arms is minimal. On the other hand, effective cooperation between them can dramatically increase their productivity and overall cost-effectiveness. For instance, they can share common tools by passing them to each other when necessary and they can pick up assembly parts from remote locations and pass them to the arm(s) requiring them. The key requirement among these tasks is the ability to plan arm motions that relocate an object from one location to another in the workspace spanned by the N-arm robotic system. This planning problem is challenging for several reasons. First, it requires reasoning over which arms and in which order should manipulate the object. In the simplest scenarios a single arm may be able to relocate the object. In other scenarios, all N arms may potentially be involved if the object is relocated from one end of the workspace to the opposite end. Furthermore, sometimes, the same arm may have to re-grasp the object several times with the help of another arm in order to grasp the object in a way that allows the arm to place the object at the goal with the desired orientation. Second, the planning problem also involves computing valid locations for each of the handoffs between two consecutive arms. Finally, the planner also needs to consider different possible grasps and plan these grasps in a way that allows for the successful sequence of handoffs. In this paper, we show how to exploit the characteristics of this problem in order to construct a planner that addresses these challenges within a single search. The problem is to move an object from a start pose to a goal pose in SE(3) without colliding with obstacles in the environment. The object can only be moved by an arm that is currently grasping it. We are given a set of manipulators in the environment that can be used to move the object. We are also given the list of valid grasps for the object. The planner has to find a joint space plan for all the arms that results in moving the object from its start to goal pose where neither the object nor arms collide. This plan can include "handoffs" which allows the object to be transferred from one arm to another. The full dimensionality of this problem is immense as it includes all the degrees of freedom for each arm as well as the 6 DoF pose of the object. This simply doesn't scale when planning for a large number of arms. One of the key insights to our approach is that for the vast majority of scenarios only one arm is relevant at any given point in the movement of the object, except during a handoff where the configurations of two arms matter. Our novel representation plans for the 6D pose of the object floating through space while ensuring there is a "support arm" at each pose. Our problem has both discrete and continuous components. The discrete component is finding the sequence of arms and grasps needed to support the object throughout its motion. The continuous problem comes from the manipulators and object moving through a continuous configuration space. Our algorithm uses a search-based planner (a variant of A*) which plans on a graph. Such planners excel at discrete problems (Hart, N. J. Nilsson, and Raphael 1968) as graphs are inherently discrete and can use informative heuristics to focus the search toward the solution. Search based planners have also been shown to perform comparably to their sampling-based counterparts in continuous planning problems such as manipulation (Cohen, Chitta, and Likhachev 2014) . A search-based planner is a natural choice for this problem as it seamlessly combines the discrete and continuous parts of the problem. In our problem we will be planning for the object with a heuristic that guides the path of the object through the appropriate sequence of handoffs. Representation. We represent the planning problem with a graph. Since we are assuming that all arms not currently supporting the object are in their "safe configurations", a state only needs to contain information about the pose of the object and the arm supporting it. There are 6 dimensions for the position and orientation of the object. There is also one variable representing the arm that is supporting the object and one for the grasp it is using. These two dimensions are just indices since we are given a finite lists of arms and grasps. Finally, while this is enough information to know where the gripper of
Recent work related to the multi-agent handover problem uses a heuristic to guide the search through possible handovers REF .
Planning Single-Arm Manipulations with N-Arm Robots
Robotics: Science and Systems
Computer Science