next up previous
Next: Function Optimization Up: Inverse Kinematics for Animation Previous: Introduction

Constraints and Preferences

We considered two types of constraints: handle constraints, that fixed certain portions of the figure to certain locations in space, and angle constraints, that defined legal ranges of motion for each joint. We represented these as soft constraints as follows. For each handle constraint violated, $G(q)$ incurred a penalty of the squared distance from the handle's required position to its actual position. For each joint motion constraint violated, $G(q)$ incurred a large additive penalty.

To select among multiple solutions, we penalized solutions that moved the joints more from the previous frame or some comfortable base position, using a sum of squares approach. This is a way to approximate the energy required to assume a state, or the relative discomfort of a state. More natural motion could perhaps be achieved by using a more complete physics and muscle model, so that muscle strains and forces are properly computed. Our one extension in this direction is that we weight joints differently, representing the fact that some limbs require less work to move than others.


next up previous
Next: Function Optimization Up: Inverse Kinematics for Animation Previous: Introduction
Brian Van Essen 2005-03-17