A Quadratic Programming Approach to Quasi-Static Whole-Body Manipulation Krishna Shankar, Joel W. Burdick, Nicolas H. Hudson {krishna, jwb}@robotics.caltech.edu nhudson@jpl.nasa.gov California Institute of Technology Abstract. This paper introduces a local motion planning method for robotic sys- tems with manipulating limbs, moving bases (legged or wheeled), and stance stability constraints arising from the presence of gravity. We formulate the prob- lem of selecting local motions as a linearly constrained quadratic program (QP), that can be solved efficiently. The solution to this QP is a tuple of locally opti- mal joint velocities. By using these velocities to step towards a goal, both a path and an inverse-kinematic solution to the goal are obtained. This formulation can be used directly for real-time control, or as a local motion planner to connect waypoints. This method is particularly useful for high-degree-of-freedom mobile robotic systems, as the QP solution scales well with the number of joints. We also show how a number of practically important geometric constraints (colli- sion avoidance, mechanism self-collision avoidance, gaze direction, etc) can be readily incorporated into either the constraint or objective parts of the formula- tion. Additionally, motion of the base, a particular joint, or a particular link can be encouraged/discouraged as desired. We summarize the important kinematic variables of the formulation, including the stance Jacobian, the reach Jacobian, and a center of mass Jacobian. The method is easily extended to provide sparse solutions, where the fewest number of joints are moved, by iteration using Tibshi- rani’s method to accommodate an l1 regularizer. The approach is validated and demonstrated on SURROGATE, a mobile robot with a TALON base, a 7 DOF serial-revolute torso, and two 7 DOF modular arms developed at JPL/Caltech. 1 Introduction Consider one or more (possibly redundant) serial chain manipulator arms mounted on a mobile robot base. The base could be a wheeled or tracked vehicle, or it may be a multi-legged walker (see Figures 1(a,b)). The mechanism may also contain a neck upon which visual and range sensors are mounted. We are particularly interested in the cases where the arms have sufficient reach and mass such that the mobile vehicle may tip over in the presence of gravity when they are extended too far during a manipulation task. Suppose the robot must manipulate an object, where the manipulation task can be described by tool frame locations. 1. What arm configurations satisfy the manipulation constraints? 2. How do we apportion base and limb motion to achieve the goal?