Abstract—In this paper we propose the progressive clamping method to better model the kinematic anisotropy of joint limits for virtual mannequins or robots. Like recent approaches our method damps only the joints’ variation component heading towards the limits. In addition we propose to dynamically express the corrective joint variation as a highest priority constraint that naturally extends the management of inequality constraints. This process is iterative within linear computing cost of the number of independent joints. We present how our approach is exploited for the major classes of rotation joints from one and up to three degrees of freedom. A comparison with other joint limit avoidance methods is given. We demonstrate the validity of our approach on various experiments targeting on the control of virtual mannequins. I. INTRODUCTION OINT limit avoidance is a critical task to achieve to safely control robots. Researchers have regularly proposed control laws combining the correct achievement of desired manipulation tasks together with maintaining the joints as far as possible from the joint limits [11][13]. More recently the slightly relaxed problem of damping only the joint variation towards the limits has been addressed [5][6]. We have adopted this less constraining context as we mostly aim to interactively control 3D characters [8] or virtual mannequins [12]. Indeed, a control law that maximizes the distance of the joints to their limits is not suitable for modeling realistic human-like postures as some joints are often exploited near their limit range (e.g. knee in the standing posture). We now review the prior contributions achieved within the framework of the Gradient Projection Method (GPM) [11] and outline our contribution. The GPM has been widely used to solve the joint limit avoidance problem. It defines a performance criterion as a function of the joint limits. The gradient of this function is projected onto the null space of the main task. Due to this projection, the joint limit avoidance has no effects on the main task. For example Liégeois introduced a simple penalty function that attracts the joints to its midrange center [11]. However, by construction strict joint limit avoidance is not guaranteed. Nelson and Khosla [13] have used a method that minimizes an objective function to find a compromise solution between the main task and the joint limit avoidance. Chang and Dubey [5] have proposed a method using a weighted least-norm solution for a redundant Manuscript received September 15, 2006. This work was supported in part by the Swiss National Science Foundation 200020-109989. Daniel Raunhardt is with the Ecole Polytechnique Fédérale de Lausanne, 1015, Switzerland (email: daniel.raunhardt@epfl.ch) Ronan Boulic is with the Ecole Polytechnique Fédérale de Lausanne, 1015, Switzerland (email: ronan.boulic@epfl.ch) joint manipulator to strictly guarantee the joint limit avoidance. This method does not try to maximize the distance of the joints to their limits. Instead only the motion in the direction of the joint limit is damped. Chaumette and Marchand presented a more efficient joint limit avoidance method than the classical GPM [2][3]. Their method consists of generating motions by iteratively solving a linear system of equations that is compatible with the main task. They stop any motions that move the joints in the neighborhood of their joint limits. The GPM has been generalized to an arbitrary number of strict priority levels by Siciliano and Slotine [14] and its computation has been made less expensive by Baerlocher [7] under the name of Prioritized Inverse Kinematics (PIK). To avoid the joint limits, this latter has exploited a mechanism called clamping which strictly guarantees joint limit avoidance by adding dynamic constraints with the highest priority level. However, such a strict enforcement may lead to undesired discontinuity in the postural control. In addition we have observed that this technique may also converge to a non-optimal final state in singular contexts despite the use of the damped least squares inverses [10]. For these reasons we propose the progressive clamping technique which smoothly enforces a damping towards the joint limits and searches for an optimal task achievement within the remaining joint variation sub-space so that proposed method helps to avoid the solution to convergence to non-optimal final-states in singular contexts. In this paper we first briefly describe the PIK algorithm including the clamping mechanism for handling joint limits. Then we describe how we smoothly enforce joint limits for revolute, swing and ball-and-socket joints that are frequent for modeling 3D characters and virtual mannequins. We illustrate the interest of the proposed approach on a simple kinematic chain and a virtual mannequin and show that, in some cases, using joint limit avoidance with GPM or clamping does not lead to an optimal solution while our method succeeds. II. CLAMPING FOR JOINT LIMIT AVOIDANCE We provide here only a very brief overview of the PIK algorithm that handles an arbitrary number of priority levels and avoids joint limits for the purpose of controlling virtual mannequins or robot manipulators [1][7]. In this approach the controlled articulated structure is organized as a tree of chains, each consisting of an arbitrary number of revolute joints (1 degree of freedom rotation joint). The general PIK algorithm relies on an efficient computation of projection operators enforcing the constraints Progressive Clamping Daniel Raunhardt, Ronan Boulic J