modeling tension and relaxation for computer animationelf/.misc/relax.pdf · modeling tension and...

8
Modeling Tension and Relaxation for Computer Animation Michael Neff Eugene Fiume Department of Computer Science University of Toronto Abstract The use of tension and relaxation in the muscles of real creatures gives rise to nuanced motion that conveys emotion or intent. Artists have long exploited knowledge of this in traditional animation and other areas, but it has been both overlooked and difficult to achieve in physically based animation. The robotically stiff motion that has come to typify physically based approaches belies the fact that dy- namics has much to offer in facilitating far more subtle motion in which animators could freely “shape” a motion. We demonstrate that tension and relaxation can be introduced into joint-level, pos- ture based animation. While we show that these modalities can be efficiently incorporated into traditional proportional-derivative control models, we instead formulate a more flexible and better- behaved model based on antagonistic control. This approach is more biomechanically sound, but more importantly it permits the separation of stiffness control from position control, achieving bet- ter posture interpolation, better error control, and passive and active dynamics. We introduce effective mechanisms to control the shape of a motion and describe an animation system that efficiently inte- grates relaxation and tension control in a physically based simula- tion environment. CR Categories: I.3.7 [Computer Graphics]: Three Dimensional Graphics and Realism—Animation; Keywords: Animation, Physically Based Animation, Human Body Simulation 1 Introduction Imagine that one day you are out for a walk through town. Just ahead, you see a drunken man stumble out of a bar. His movements are loose and uncontrolled as he staggers by you. A little further along you pass an army base. The soldiers are marching, their ma- neuvers are tight and precise. After turning down a side street, you see a young girl skipping along the sidewalk, swinging her arms in a happy dance. Lost for a moment, you glimpse too late out of the corner of your eye the sight of a soccer ball sailing toward you. You reflexively brace for impact. These simple but interesting movements create a wide range of impressions. Their differences relate largely to the amount of ten- sion involved in their motions. The drunken man and young girl both moved in a free, relaxed manner. Their movements were loose and less constrained. On the other hand, the marching soldiers, and you as you braced for impact, displayed considerably more tension. These observations have not been lost on traditional animators. Recall Disney’s hand-drawn Dumbo in which Dumbo’s mother cra- dles his head with her trunk. Think as well of the sadly sagging unicycle Red in the early Pixar computer-aided animation Red’s Dream. While separated by more than 45 years (1941 and 1987, respectively), the remarkably effective use of tension and relaxation in impressionistic animation sets a high visual standard for techni- cal contributions to physically based character animation. neff elf @dgp.toronto.edu Turning now to realistic motion synthesis, movement in the hu- man body revolves around the subtle interplay of tension and relax- ation. When we are relaxed, our limbs sway freely under the influ- ence of gravity and external forces, loosely guided by our muscles. The force from the movement of one limb will effect the move- ment of limbs attached to it. When a person is tense, however, their movements will appear tightly controlled and their posture more rigid. The transference of force from a limb’s movement will have little effect on neighbouring limbs and there will be less evidence of the effect of gravity in a character’s movement. The difference between a loosely moving clown and a precisely moving soldier or robot is largely a difference in tension and relaxation of various joints. Moreover, tension and relaxation will vary across joints and throughout various movements. To make systematic progress, we must be clearer and more lim- ited in scope. Our aim is to provide animators with the tools needed to model tension in a character’s body in order to generate a wide range of expressive animations. Our current focus is on “low- dynamic” behaviours such as gestures and posture adjustments, al- though the ideas are applicable to the full range of movements. While admitting a rich repertoire of motion, these “low-dynamic” behaviours are not as mechanically constrained as highly dynamic behaviour such as gymnastic maneuvers [7, 22] and falling[3]. De- spite this, dynamics has an obvious impact on the expressive nature of movement. This is due to the constant influence on our bodies of gravity, momentum and force transference between joints. The tension present in a person’s body effects the trajectories joints take during a movement. A tightly-controlled, or high tension motion requires exerting additional energy to overcome the effects of gravity and momentum. Looser movements will instead exhibit the influence of gravity, momentum and force transference between joints. These effects give the movements a sense of weight and help create a sense of life in the animation. Determining kinematic trajectories that reflect tension is a diffi- cult though effective art in traditional character animation. Our sys- tem seeks to use the physical dynamics, together with the tension state of the character to determine the final appropriately nuanced joint trajectories. This shifts the work of tediously specifying a joint trajectory to the animation system, easing the animation task. Tra- ditional physics-based approaches to character animation have not captured tension and relaxation well. Proportional derivative con- trol has commonly been used. Here, often spring constants are kept high to minimize joint error and improve position tracking, but this approach will often lead to stiff looking movement unless the trajec- tories being tracked are of very high quality. Alternately, the gains are kept low and position control is imprecise. In our approach, the dynamics are used to help determine appropriate trajectories, leading to more realistic movement. Our approach generalizes pose control[21]. Poses, in a man- ner similar to keyframes, indicate a desired set of joint angles for a character. A pose in our system can involve any subset of the character’s degrees-of-freedom and poses can overlap in time. Con- trollers are built out of collections of poses and can include cycles. At any given time, multiple controllers can be working together to determine a character’s movements. Animations are generated

Upload: nguyenkhuong

Post on 19-Mar-2019

213 views

Category:

Documents


0 download

TRANSCRIPT

Modeling Tension and Relaxation for Computer Animation

Michael Neff�

EugeneFiume

Department of ComputerScienceUniversity of Toronto

Abstract

The useof tensionandrelaxationin the musclesof real creaturesgivesriseto nuancedmotionthatconveysemotionor intent.Artistshave long exploitedknowledgeof this in traditionalanimationandotherareas,but it hasbeenbothoverlookedanddifficult to achievein physicallybasedanimation.Theroboticallystiff motionthathascometo typify physically basedapproachesbeliesthefact thatdy-namicshasmuchto offer in facilitating far moresubtlemotion inwhich animatorscould freely “shape”a motion. We demonstratethat tensionandrelaxationcanbe introducedinto joint-level, pos-ture basedanimation. While we show that thesemodalitiescanbe efficiently incorporatedinto traditional proportional-derivativecontrol models,we insteadformulatea more flexible and better-behaved model basedon antagonisticcontrol. This approachismorebiomechanically sound,but more importantly it permitstheseparationof stiffnesscontrolfrom positioncontrol,achieving bet-terpostureinterpolation,bettererrorcontrol,andpassiveandactivedynamics.We introduceeffective mechanismsto controltheshapeof a motionanddescribeananimationsystemthatefficiently inte-gratesrelaxationandtensioncontrol in a physically basedsimula-tion environment.

CR Categories: I.3.7 [ComputerGraphics]:ThreeDimensionalGraphicsandRealism—Animation;

Keywords: Animation, Physically BasedAnimation, HumanBodySimulation

1 Introduction

Imaginethat one day you are out for a walk throughtown. Justahead,youseeadrunkenmanstumbleoutof abar. His movementsare looseanduncontrolledashe staggersby you. A little furtheralongyou passanarmybase.Thesoldiersaremarching,their ma-neuversaretight andprecise.After turningdown a sidestreet,youseea younggirl skippingalongthesidewalk, swingingherarmsina happy dance.Lost for a moment,you glimpsetoo lateout of thecornerof youreyethesightof asoccerball sailingtowardyou. Youreflexively bracefor impact.

Thesesimplebut interestingmovementscreatea wide rangeofimpressions.Their differencesrelatelargely to theamountof ten-sion involved in their motions. The drunken manandyounggirlbothmovedin afree,relaxedmanner. Theirmovementswerelooseandlessconstrained.On theotherhand,themarchingsoldiers,andyouasyoubracedfor impact,displayedconsiderablymoretension.

Theseobservationshave not beenlost on traditionalanimators.RecallDisney’shand-drawn Dumboin whichDumbo’smothercra-dleshis headwith her trunk. Think aswell of the sadlysaggingunicycle Red in the early Pixar computer-aided animationRed’sDream. While separatedby morethan45 years(1941and1987,respectively), theremarkablyeffectiveuseof tensionandrelaxationin impressionisticanimationsetsa high visualstandardfor techni-cal contributionsto physically basedcharacteranimation.���

neff � elf � @dgp.toronto.edu

Turningnow to realisticmotionsynthesis,movementin thehu-manbodyrevolvesaroundthesubtleinterplayof tensionandrelax-ation. Whenwe arerelaxed,our limbs sway freely undertheinflu-enceof gravity andexternalforces,looselyguidedby our muscles.The force from the movementof one limb will effect the move-mentof limbsattached to it. Whenapersonis tense,however, theirmovements will appear tightly controlledand their posturemorerigid. Thetransferenceof forcefrom a limb’s movementwill havelittle effect on neighbouringlimbs andtherewill be lessevidenceof the effect of gravity in a character’s movement. The differencebetween a loosely moving clown and a preciselymoving soldieror robot is largely a differencein tensionandrelaxationof variousjoints. Moreover, tensionandrelaxationwill vary acrossjoints andthroughoutvariousmovements.

To make systematicprogress,we mustbeclearerandmorelim-ited in scope.Ouraimis to provideanimatorswith thetoolsneededto modeltensionin a character’s body in orderto generatea widerangeof expressive animations. Our current focus is on “low-dynamic”behaviours suchasgesturesandpostureadjustments,al-though the ideasare applicableto the full rangeof movements.While admittinga rich repertoireof motion, these“low-dynamic”behavioursarenot asmechanically constrainedashighly dynamicbehaviour suchasgymnasticmaneuvers [7, 22] andfalling[3]. De-spitethis,dynamicshasanobviousimpacton theexpressivenatureof movement. This is dueto theconstantinfluenceonourbodiesofgravity, momentumandforcetransferencebetweenjoints.

The tensionpresentin a person’s body effects the trajectoriesjointstakeduringamovement. A tightly-controlled,or hightensionmotionrequiresexertingadditionalenergy to overcometheeffectsof gravity andmomentum.Loosermovementswill insteadexhibittheinfluenceof gravity, momentumandforcetransferencebetweenjoints. Theseeffectsgivethemovementsasenseof weightandhelpcreateasenseof life in theanimation.

Determiningkinematictrajectoriesthat reflecttensionis a diffi-cult thougheffectiveart in traditionalcharacteranimation.Oursys-tem seeksto usethe physical dynamics,togetherwith the tensionstateof the characterto determinethe final appropriatelynuancedjoint trajectories.Thisshiftsthework of tediouslyspecifyingajointtrajectoryto theanimationsystem,easingtheanimationtask.Tra-ditional physics-basedapproachesto character animationhave notcapturedtensionandrelaxationwell. Proportionalderivative con-trol hascommonlybeenused.Here,oftenspringconstantsarekepthigh to minimizejoint errorandimprovepositiontracking,but thisapproachwill oftenleadtostiff lookingmovementunlessthetrajec-toriesbeingtrackedareof very high quality. Alternately, thegainsare kept low and position control is imprecise. In our approach,the dynamicsare usedto help determineappropriatetrajectories,leadingto morerealisticmovement.

Our approachgeneralizesposecontrol[21]. Poses,in a man-ner similar to keyframes,indicatea desiredsetof joint anglesfora character. A posein our systemcan involve any subsetof thecharacter’sdegrees-of-freedomandposescanoverlapin time. Con-trollersarebuilt out of collections of posesandcanincludecycles.At any given time, multiple controllerscan be working togetherto determinea character’s movements.Animationsaregenerated

from scriptswhich specifycontrollersandtheir start times. Ani-mators� cantagposeswith transitiontimesandkinematictransitionfunctionsthat suggestthe interpolationpathfor a DOF, aswell astensionparameters.The actualpath taken by a DOF will be de-terminedby the interplayin the dynamicssimulationof the kine-matic transitionfunction and the tensionparameters. Positioniscontrolledby regulatingthe equilibrium point of the forcesactingon thecharacter, which allows precisejoint positioning.An antag-onisticactuatorformulationis usedwhichallowsjoint tensionto befreelyvariedwithout changingthejoint angle.

Our approach hasseveraladvantages. Chief amongthem,it al-lows very straightforward andflexible control over the amountoftensionin acharacter’sbody. This is apowerful expressivetool thatmakesit easierto generaterealisticjoint trajectories.Unlike tradi-tional PD control, theantagonistic formulationdecouplesstiffnesscontrol from positioncontrol. Thesystemalsoachievesmorepre-cisepositioncontrolastheeffect of gravity andexternalforcesaretakeninto account. Flexible controlover the“shape”or “envelope”of a movementis providedboththroughtensioncontrolandby al-lowing kinematictransitionfunctionsto be specifiedwhich guidethe movement. Transitionfunctionsallow for real-timekinematicpreviews, which areuseful for rapidly designingcontrollers. Theformulationis well suitedfor creatingmovementthatis morerichlynuancedandrealisticthantraditionalphysics-basedapproachestoanimation.

Thispaperproceedsby first presentingrelevantbackgroundma-terial. Equilibrium point control andour antagonisticformulationarepresentedin somedetail,followedby adiscussionof how move-ment“shape”or “envelope” is variedin thesystem.Finally, arangeof resultsis presented,whichincludemodelingposture,gestureandanticipationeffects. Animationsare shown both for a full bodymodelanda torsomodel.

2 Background

2.1 Computer Animation

Ourwork relatesmostcloselyto previouswork doneonhandtunedcontrollersfor physics-basedanimation. Hodginset al., Wooten,andFaloutsoset al. have presentedsuchcontrollersfor variousac-tivities including running [7], gymnastics[7, 22] and reactingtofalling [3]. Theseworksuseproportionalderivative control to cal-culatethe joint torquesrequiredfor themovements.They alsofo-cuson high level control of highly dynamicactivities. Our workaddresseshow to moreeffectively controltheexpressiveaspectsofmovementsuchastiming, tensionandshape.Thispaperreportsonour progresson low-dynamicmotion, namelyfine-grainedphysi-cally basedmotionthatdependslessonimpulsivecontrolthancon-tinuouscontrol. As far we areaware,themodelingof tensionandrelaxationhasnotbeendiscussedin previouswork in this field.

The useof PD control is pervasive in the literature. Laszloetal. usePDcontrolin which theanimatorinteractively variesthesetpoint in orderto generatetheanimation[13]. ZordanandHodginsusePD control to trackmotioncapturedatafor theupperbodyofa character[24]. They scalethe gainsbasedon the inertia of thebodypartattachedby the joint anduseanoptimizationmethodtodeterminethebestgainsto tracktheinputdata.Onceset,thegainsare locked for the animation. Our systemallows an animatortovary gainsthroughouta motionandananimationto achieve morenuancedeffects.

Kokkevis et al. take a similar approach to animationas ours,tracking desiredkinematictrajectorieswith a control systemandusinga dynamicsimulatorto generatethe final motion[11]. Theydivide DOFs into primary and secondarygroupsand accuratelytrackkinematictrajectoriesfor theprimaryDOFs,allowing thesec-ondaryDOFs to move passively. Our systemtakes a continuum

approach, providing control information for all DOFs,but allow-ing usersto specifyhow closelythetrajectoriesareto befollowed.Thiscanrangefrom closelytrackingthetrajectoryto allowing fullypassivemotion,andall motionsin between.

The work of LamouretandGascuelis similar to our systeminthat they featureroughkinematictrajectoriesthat are loosely fol-lowedby a control system[12].Thegoalsof their work, however,are synchronizationof movements,collision handlingand objectinteraction,ratherthanexpressivecontrolof ananimation.

Mataric and collaboratorshave presenteda variety of controlstrategies [15, 14]. For gestures,they usePD control to achievespecifiedjoint angles. End effector positioningis achieved usingimpedance controlwherethemechanical impedanceof theendef-fector is modulatedby varying the torquesat eachof the joints.They also presenta joint spaceforce field, which is a weightedcombinationof stepandpulsefunctionsmultiplied with individualforce functionsthat are similar to PD control for small gain, butdropoff for largererrors.

Chi etal. provideakinematicsystemthatallowsthetrajectoryofarmmotionsto bevariedbetween endpositions[2]. They useLabanMovementAnalysisasthebasisfor an interfacethatallows a userto selecta particularstyle of movement. Being kinematic, theirsystemin part attemptsto explicitly representsomeof the effectsof tensionandrelaxationon movement. Our systemmodifiesthetensiondirectly andallows theresultingmovement to begeneratedby the dynamicssystem. Their movementinterpolationinterfacecouldbeusefulin our systemto control transitionsbetweenposesif it wasadapted to makeuseof thetensionparameters.

The work of Perlin usesstructurednoiseto simulatekinemati-cally someof theeffectsrelatedto tensionchangesin thebody.[18]

2.2 Biomechanics

The human body organizes musclesin agonist and antagonistgroupsaroundjoints. The musclepairsprovide movementin op-posingdirectionsaroundajoint andalsoactto regulatethestiffnessof thejoint[8]. Thesystemoutlinedherefollows this organization,usingpairsof antagonisticangularspringsto control the positionandstiffnessof eachDOF.

Thespring-like behaviour of realmusclesis importantin postu-ral stability. “It ... turnsout that for stableequilibrium the neuro-musculoskeletalsystemmustpossesstheattributesof springs,andthat for stability, thesespringsmustexceed a certaincritical stiff-ness. The passive, relaxed personis inherently instableat manylevels – when someonefaints, the headfalls if the shouldersaresupported,thetorsofalls if thebody is supported.... Certainlythecentralnervoussystemis partly responsiblefor this behaviour, butthe primary modeof its influencecanbe consideredto be adjust-ing muscle‘spring-like’ behaviour.” [1, p384]Suchinstability thatoccursbelow certainstiffnesslevelsis alsoanissuein oursystem.

Our antagonisticcontrol modelcorrespondsto the equilibriumpointhypothesesdevelopedby motorcontrolresearchersin biome-chanics. In this model,originally proposedby Anatol Feldmanin1966[4] for single joint systems,the agonistandantagonistmus-clesbothgeneratetorquesarounda joint with theequilibriumpointof thesetorquesdefininga position[20,9]. This theorywould inprincipleallow thebrainto avoid thecomplicated inversedynamicsproblem[6]. Movementsareinsteadachievedby graduallymovingthe equilibrium position betweenthe movement end points. Thelimb will follow the equilibrium trajectory[6, 9]. “Experimentalobservationsshowed that the path betweentwo pointsexhibited ameasurabledegreeof stability, not justtheend-point.Thus,thepro-ductionof themovementappearsto beaccomplishedby aprogres-sive movementof theneurally-definedequilibriumposture,whichhasbeentermeda virtual trajectory.”[8 , p161,emphasistheirs]. Ingeneral,thepositionof thelimb will vary from theneurallydefined

Figure1: Thedegreesof freedomfor thefull skeleton.

virtual trajectory, whichis thetrajectoryof theequilibriumpoint[9].Theopposingtheoryin biomechanics,known astheimpulsetim-

ing model, suggeststhat motor programsinsteaddirectly generateshort impulsesof torqueto control joint movement[20]. Thereisexperimental evidencesupportingboththeories.Our work is com-patiblewith the equilibrium point hypothesis,lessbecauseit is aplausiblecontrolmodelfor humanlocomotionthanthatit providesa convenient computational approachfor producingnuancedsyn-theticmotion. However, we explicitly includegravity andexternalforcesin ourcalculationswhendecidinghow to tuneoursprings.

It shouldbenotedthatwhile ourangularspringmodelis inspiredby the antagonisticgroupingof real muscles,it is still a substan-tial simplificationof actualmusclebehaviour (e.g.,[17, 23]). Realmusclesare linear force generatorsand the torquesthey generatevary throughouta movementdueto variationin the momentarm.Muscleforce is alsoaffectedby musclelengthandvelocity. Realmuscleshave morecomplex attachments,somespanningmultiplejoints andsomehaving wide areasof attachment.The threeele-mentHill basedmodel is often usedto modelmusculotendonsinthebiomechanicscommunity. Ourapproachattemptsto isolatean-other importantfeatureof real muscle,tensioncontrol, while stillmaintainingcomputational simplicity.

3 Target Prototype

To illustrateour results,we currentlyemploy two skeletalmodelsin our prototypesystem.The first is a 47 DOF full body skeletonthatcanfreelymove in world space.It is shown in Figure1 andthedegreesof freedomat eachjoint areindicated.Thesecondmodelis a28DOFtorsomodel.It hasthesamedegreesof freedomasthefull bodymodel,but thehip is fixedandthereareno joints belowthe hip. Both modelsinclude 2 DOF clavicles. Many previousphysics-basedanimationmodelshave not includedthesejoints[22,3, 15, 24]. In our work, the clavicles have beenfound to makea significantcontribution to the expressive impactof a character’smovement.

The animation system is basedon the Dynamic Animationand Control Environment (DANCE), a freely available plug-in basedsoftware packagefor building physics-basedanimationsoftware[16].Theequationsof motionareprovidedby athird partysimulationpackagethatusesanO(n)Kane’sformulation[10]. Thispackagealsoconverts theexternalforcesactingon thecharactertojoint torques.Whenthe equationsof motion arecombinedwith asemi-implicit Rosenbrockintegrator [19], the torsomodel runsatone-tenthreal time on a PentiumIII 800MHz machine. This pro-videsfor areasonableiterativeworkflow. Bothmodelscangeneratemotionkinematically in real-time.This is very usefulfor roughingoutananimation.

4 Equilibrium Point Control

In physics-basedanimation,it is necessaryto determinethetorquesthat are requiredat a joint in order to producethe desiredmove-ment. Often this is doneusinga control law suchasproportionalderivative (PD) control. PD control canbe thoughtof asa springanddampersystemandis writtenas

��� ��������� ����� ����������� �"!��# (1)

where� is thecurrentangleof thejoint, ����� ����� ��� is thedesiredangleof thejoint, !� is thevelocityof thejoint and � and � arethespringanddampergainsrespectively.

Whenacontrolstrategy suchasPDcontrolis used,therewill ingeneralbeanerrorbetweentheactualpositionof thejoint andthedesiredposition,evenatsteadystate.This is dueto theinfluenceofgravity, which is pulling thejoint away from thedesiredangle.Theequilibriumpoint will be theangleat which theproportionaltermgeneratesenoughtorqueto balancethetorquegeneratedby gravity.This samephenomenonoccursin theequilibriumpoint hypothesisusedto characterize humanmovement andis why the virtual tra-jectorymaydiffer from theactualtrajectory, evenatsteadystate[9].

Thereis atendency whenusingPDcontrolto reducesteadystateerrorby increasingtheproportionalgain. Thiscanleadto verystiffcharacters. Assuminggravity is the only relevant external force,whenPD control is at equilibrium,therewill beno dampingforce,andthenettorquewill bezero:

$ �� �������%� ����� ��������������&'# (2)

where� & is thetorquedueto gravity actingon the limb. Thustheerroris givenby

(*)+)+,+) �-���%� ���.� �/�����0� ��& �21 (3)

If the error is to be reducedby increasingthe gain, the resultwillnecessarilybeoverly stiff characters. Considera5kgsolidcylinder,suchasanarm,that is 60 cm long androtatedarounda pin joint atoneend. Thegain to keepit within 3 degreesof horizontal,repre-sentinganglesasradians,is approximately 280. To keepit within0.5degrees,therequiredgain is 1680.

A relaxed, loosely moving charactershould have low gains,whichmeansthattherewill bealargesteadystateerrorbetweentheset-pointof thePDcontrollerandtheactual positionof thejoint. Itis unwieldy for an animatorto try to anticipatethe amountof er-ror and provide a desiredset point that will compensatefor thiserror. For this reason,our systemallows the animatorto specifydirectly theactualanglefor the joint. Thefinal positionof a jointwill be theequilibriumpoint of all the internalandexternalforcesactingonit. Thesystemestimatestheexternalforcesandcalculatesthegainsappropriatelyin orderto realizetheanimator’s requestedanglewith the requestedamountof tension. This is what we re-fer to asequilibrium point control. The animatoris given controlover intuitive parameters,the actualangleandactualtension,andthesystemdeterminesthegainsandsetpointsthatwill meettheseconstraints.Explicitly dealingwith the external forcesallows foraccuratepositioncontrol.

Currentlywedealwith externalforcesdueto gravity andgroundreactionforces,but it is straightforward to addother forces. Forinstance,the massof an object the characteris carryingcould beadded,sothecharactercouldusetheappropriateforceto lift it. Thisallowsroomfor somefun effectsaswell. If thecharacterwas“told”theobjectwasheavier thanit is, hewould usetoo muchforceandjerk theboxupquickly. This is thesamebehaviour humansexhibitwhen they misestimatethe weight of an object they are abouttolift. Making thecharacterawareof externalforcesis equivalenttogiving him or hera limited tactilesense.

4.1 Antagonistic Formulation

In placeof PDcontrol,weemploy anantagonisticactuator. Antag-onisticcontrolis implementedfor eachDOF usingtwo idealangu-lar springsthat areset in oppositionto eachother, anda damper.Unlike PD control, eachspringhasa fixed setpoint that remainsconstantthroughoutananimation.Thesesetpointsareplacedpastthejoint limits for theDOF. Thecontrollaw is writtenas

���� 34����35�����768 9:����9;������� � !��# (4)

where� is the torquegenerated,� is thecurrentangleof theDOFand !� is its currentvelocity. �<3 and ��9 are the springsetpointswhichserveasendpointsfor themotion, = and> referringto highandlow limits, 3 and 9 arethespringgains,and � is thegainon thedampingterm. The tensionor stiffnessof the joint is takenasthesumof thetwo springgains, ?3@6A 9 . Thedesiredangleisnot explicitly shown in theactuator, but is controlledby thevalueof thetwo gains.

Jointmovement is achievedby varyingtheequilibriumpoint ofa joint, whichis thepointatwhichall forcesactingonthejoint sumto zero.This is doneby adjustingthegainson thetwo springs.Atanequilibriumposition,boththedampingandthenetforcewill bezero.Theforceon thejoint is then

$ �� 34����35��� �CB �768 9:����9;��� �CB �76EDGF<H (I)KJ4L�M�NO,+)+PQ( # (5)

where� �CB is theequilibriumpointandDGF�H (*)+J4L�M�NO,+)+PQ( representsgravity andall otherknown external forcesactingon the system.For any givenequilibriumangle,thegainsthatwill achieve it all lieona line in 3 - 9 gainspacegivenby

9R�� 3 ��35�E� �CB� �CB ����9 �DGF<H (*)+J7L M�NO,K)+PQ(��9;��� ��B 1 (6)

This line is referredto asthe isoangleline. Noticethattheslopeoftheline dependsonly onthelimits andthedesiredangleandthattheexternalforceactsto vary the S interceptof theline. Also, because� �CB is bounded,theslopeof theline will alwaysbepositive. Sincewe want the springsto only act in tension,gainsareonly chosenfrom thepositivequadrantof the 3 - 9 space.

Wedraw particularattentionto thelinearityof theisoanglerela-tion, andthat it dependsonly on thegains,currentjoint angleandjoint limits. This impliesthat thetensionon any joint, giveninitialgains,canbeadjustedwithoutneedingto know theexternalforces.

The antagonisticformulation reflects the organization of realmuscles.This approachwould remainsuitableevenasmorecom-plex musclemodelsareintroduced.The formulationpermitseasytensionadjustmentby moving alongthe linear isoanglecurve. Italsomakesexplicit that the restanglewill necessarilybeanequi-librium pointdeterminedby thespringgains.

4.2 PD Formulation of Equilibrium Control

Sincethecurrentversionof antagonisticcontroluseslinearsprings,thereis amathematical equivalencebetweenPDcontrolandantag-onistic control. For equivalent values,they will show exactly thesameresponseto error. This is shown in the Appendix. Further-more, equilibrium point control can be implementedusing a PDactuatorby rethinkingthemeaningof thedesiredanglesetpoint inthePD controllaw. Insteadof usingthesetpointasthedesiredan-gle,thesetpointmustbetreatedasafreeparameter thatis variedsothatatequilibrium,theangleof thejoint will betheanglerequestedby theanimator.

Westill preferdirectantagonisticcontrolbecauseit is morecon-sistentwith animalsystemsandprovidesamorenaturalparameter-ization. The isoangleline for PD control is a functionof stiffness

andsetpointgivenby:

� �CB �;���%� ����� ����� ��& �"1 (7)

The isoangleline is a hyperbolicfunctionof the two termsanditsshapedependson theexternalforces.For antagonistic control,theisoangleis a linearfunctionof thetwo gains.

A personauthoringa controllerthat mustdealwith anexternaldisturbanceis given two intuitive optionswhenusingantagonisticcontrol: thespringactingin thedirectionof thedisturbancecanberelaxed to reducetorquein the disturbancedirectionor the springopposingthedisturbancecanbetightenedto createa torqueto re-sist thedisturbance.Tensingor relaxinga joint to dealwith a dis-turbancearethetwo optionshumansuse,whenfor instancemakingbalanceadjustments(e.g.[5]). Achieving tensionandforcechangeswith PD control is lessintuitive, and can include moving the setpoint from onesideof theactualequilibriumpoint to theother.

Significantly, with antagonisticcontrol, it is alsopossibleto re-sist a disturbancesimply by increasingthe tensionof the joint inorderto reducetheerror. This behaviour hasbeenobservedexper-imentally in humans[8].Increasingthestiffnesswill not generallywork for PD control. To make this clear, considera limb underloosePD control that at steadystateis leaningbelow its setpointdueto theinfluenceof gravity. If a forcehits thelimb from below,it will move the limb closerto the setpoint. Increasingthe gainon the PD controllerwill not restorethe arm to its original loca-tion, but pull it closerto thesetpoint. Providedthedisturbancewasnot strongenoughto knock the arm pastthe setpoint, increasingthe stiffnessof the springhasexactly the wrong effect: it movesthe limb further in thedirectionof thedisturbance,away from thedesiredequilibriumpoint andcloserto thesetpoint. By definition,gainin antagonisticcontrolis variedalongthecurrentisoangleline.As the gain is increasedin responseto a disturbance,the equilib-rium pointof anantagonisticcontrollermovescloserto thedesiredequilibriumpoint,equalingit in thelimit. Increasingthegainthere-foreactsto resistthedisturbance.With PDcontrol,increasinggainsmovesthe joint closerto thesetpoint, not thedesiredequilibriumpoint. To achieve thesameeffect usinganequilibriumpoint varia-tion of PD control, thegain andsetpoint would needto bevariedin tandem.It is impossibleto calculatehow muchto vary the setpointwithout knowing thesizeof thedisturbance.

4.3 Instability at Low Gains

In the presenceof gravity, certainlow gain configurationscanbeunstable.This is becausethe torquedueto gravity is proportionalto TVUXW � , where� is theworldspaceangleof the limb (0 is up) andthis can lead to several equilibrium points in the range Y ��Z 1�1 Z4[ .Considera limb controlledby PD controlat equilibrium. (Thesit-uationis the samefor antagonisticcontrol, but the PD analysisissimpler.) Thenettorqueactingon it will bezeroasgivenby

$ �� �����\�E� �%� ���.� �/� ��� )+]2^ TVUXW �_# (8)

where) is the distancefrom the joint to the centreof massof thelimb, ] is the massof the limb and ^ is the accelerationdue togravity. This equationrepresentsthe sumof a linear springforceanda sinusoidalgravity force. For smallvaluesof � (low gains),theslopeof theline will besmallcompared to themagnitudeof thesinefunction. For a givengain and ���%� ���.� ��� , theremaybeseveralvaluesfor � thatmake theequationzero.In otherwords,theremaybe multiple equilibrium pointswithin the limits of the joint. Thisbehaviour is shown for low andhigh valuesof gain � in Figure2.Notice, that for low gain, therearethreeequilibriumpointswherethe torqueon the joint will be zero. For high springstiffness � ,thereis only onepossibleequilibriumpoint.

Figure2: Comparisonof the net torquefor a limb given high andlow gains: ���� �����`�a� �%� ���.� ��� ��� )+]2^ T/U�W � . Therearethreezerotorqueequilibriumpointsfor thelow gaincase.

If thelimb is atanequilibriumpoint thatis higherin world spacethananotherequilibriumpoint, thelimb will fall to thelower equi-librium point givenany slight disturbance.This of courseis alsoafeatureof theantagonisticrepresentation,andis alsocharacteristicof people[1]. The isoanglescurves for both PD and the antago-nistic controlcrossat low valuesof gain wherethereis instability.It is possibleto testfor unstablelow gain configurationsandthusavoid themby increasingthe gain, but it is importantfor usersofthesystemto beawareof thisphenomenon.

5 Shape Control

The“shape”or envelopeof a motionrefersto how speedis variedover thedurationof a motion. This canbeplottedasjoint positionvs. time. Somemotionsstart quickly andendslowly, suchasacarefulreachingmotion.Othermotionsmaystartslowly but speedupat theend,likeadabbingmotionor apunch.Gentlemotionsof-tenease-intowardtheendposition,while moreaggressive strikingmotionswill maintainahighvelocityneartheend.Motionscanbeexaggerated by eitherrecoiling backwards beforestartingthe for-ward path of the motion or overshootingthe end position beforereturningto it.

The shapeof a motion is very importantfor the expressive im-pact it makes. This hasnot beenexplicitly dealtwith in previouswork in physically basedanimation. The two commonsolutionsareeitherto usepureactuatedmovementor to tracksplinecurves.Actuatedmovement involvesstepchangesin thesetpoint of a PDcontroller. The controllerwill thengeneratea force to negatetheerror andmove to a new equilibrium point. This movement hasacharacteristic shape,moving quickly at thebeginningwhentheer-ror is largeandslowing down neartheendof themovement.It canbeappropriatefor sometypesof movements,but looksoutof placefor gestureslikeawave. Splinefollowing simplyusesthecontrollerto tracka predefinedmotioncurve. This approachis limited by thequalityof theinput curve.

Our systemallows the animatorto control a motion’s shapeintwo ways.First,ashapecurvecanbeassociatedwith thetransitionto a posethat the systemwill track. Second,tensionparametersmay be controlledthat indicatehow closely the curve shouldbefollowed. This combinationproves to be very flexible and pow-erful in practice. An animatorcanpreciselycontrol a movementwhenthat is required. Often however, it is sufficient to provide avery simple trajectoryanda satisfyingshapecanbe achieved byspecifyinga tensionchangethatshouldoccurduringthemotion. Itappearseasierto generatea desiredmotionby varying the tensionparametersthanby trying to anticipatethecorrecttransitioncurve.

Movementis a very naturalactivity for people,so they caneasilydevelop an intuition aboutthetensionchanges they make duringamovement. They simply needto make the movementandpay at-tentionto thechangesin their body. Trajectorycurvesarea moreabstractconceptto work with.

5.1 Transition Functions for Shape Control

To control the shapeof a motion,animatorscanassociatea cubicHermitecurve with a pose.Thecurve is parameterizedon [0,1] tocorrespondto progressin time andprogresstoward theendpoint.In practice, thesetransitionfunctionshaveprovento besufficientlyflexible to allow an animatorgood control over shape. It allowsa wide rangeof trajectoriesincludingrecoil andovershooteffects.Animatorscanalsoreparameterizethetime domainusingstandardtechniques to make, for example, the relative transitiontime ex-ponential. Transitionfunctionsalsoallow the systemto computekinematicpreviews, which arevery useful in roughingout an an-imation. Thesefunctionsarealsousedwhenthe systemneedstoestimatea futurestateof thecharacter.

5.2 Updating Gains

Given the control law and the transitionfunctionsthat are to betracked, thequestionremainsasto how to updatethegainson thespringsto achievethedesiredmotion.Theupdateprocessmusttakeinto accountthe external forcesacting on the characterto effectequilibrium control. This is donein two ways in the system:bysamplingor by prediction,andthey canbeusedtogether.

Thesamplingmethodtakessamplesof the forcesactingon thefigure at a given frequency, converts them to torquesand recal-culatesthe two actuatorgainsso that the equilibrium point at thesampletime will be theangleindicatedby the transitionfunction.This approachis mostappropriatefor situationswhereforcesmaychangein unexpected waysor if the force modelusedfor a givenexternalforcedoesnot lend itself to predictive use. In our anima-tions,samplingis usedfor joints in the lower body thatwill expe-riencesignificantvariationin groundreactionforces,whereasthepredictive approachis usedfor freeupperbodymovements.

Thepredictiveapproachdeterminesasetof gainsthatmatchthestartingstateof the pose,a setof gains that will achieve the endstateof the poseandthensimply transitionsbetweenthe two setsof gainsto achievethedesiredmotion.Thestartinggainscanbethegainsthatarecurrentlyactive in thesystem,or they canberecalcu-lated. At thestartof a pose,theexternalforcescanbedeterminedby queryingall thecontrollersdeliveringexternalforcesto thechar-acterandconverting theseforcesto torques.For free upperbodymovements,themostsignificantforcewill begravity. Theskeletonstateis thenestimatedfor theendpoint.This is doneby looking atall theposesthatwill beactive at theendtime andconsultingtheirtransitionfunctionsto determineanestimateof thejoint anglesforthis time. Given the endstate,the forcesareagain determinedbyconsultingthe external force controllersand torqueestimatesaredetermined.With the external forcesand the equilibrium angles,the isoanglelines in gain spacecanbecalculatedthatwill achievethetwo endpoints.

Therearearbitrarily many ways to transitionbetweenthe twolines in 3 - 9 space.Thepathchosenwill affect theshapeof theresultantmotion. By default, a transitionpathis chosenthatkeepsthe joint stiffnessconstant. As stiffnessis definedas the sumofthe two gains,this correspondsto a line with slope �cb in ?3 - 9space.For sufficiently high gains,if thetransitionline is traversedat constantspeed,theresultingmotionwill belinear. Referto Ap-pendix8.2.A line with slope�cb is drawn betweenthetwo isoanglelines,startingat thegainspecifiedby theanimator. During themo-tion, gain valuesare determinedby interpolatingalong this line.

Progressalongthe line is determinedby the usersuppliedtransi-tion function.d This producesgainsover time that will generatearesultingmotionthathasthesameshapeasthetransitionfunction.With increasinggain, theprovided trajectorywill bemorecloselytracked.

The sameapproachis usedfor transitioningball joints repre-sentedby quaternions,except that the progressbetweenthe endpointsmustbe scaled. If the progressbetweenthe start andend(i.e., zeroandone)is representedby e andthe anglebetweenthetwo endquaternionsis ��f�g%hCi , theupdaterule is

e � TVUXW:e ��f�g%hCi 1 (9)

Dueto theestimatesmadefor theendstate,smallerrorsmayoccurin theendpositionif theestimatesarenot accurate.This is consis-tentwith at leastsomeformsof humanbehaviour suchasreaching,wherehumansoftenhave to make small correctionsto positionattheendof amotion.

In somesituationsit is usefulnot to balance for externalforces,andanimatorscanselectthis option. This is particularlyuseful iftheexternalforceswill have a known effect theanimatorwishestotake advantage of. For instance,an animatormay wish to looselyhold a joint straight,suchasa wrist, andallow theeffect of gravityto causeit to sway from sideto sideduringamovement.

5.3 Tension and Relaxation Control

The power of the systemis that very often, desiredresultscanbeachieved by specifyinga very simple transitionfunction say anease-inease-outcurve or linear function– andshapingthemotionalmostcompletelythroughtensionchanges.

Theamountof tensionin ajoint is controlledby thetotalgainsonthetwo opposingsprings.As discussed,for fixedanglesthetensionof a joint canbe variedby shifting gain valuesalongthe isoangleline. It is alsousefulto vary the tensionduring a movement. Forinstance,anarm gesturemay startby beingtightly controlledandendwith thearmswayinglooselyat thecharacter’s side.

An animatorcanprovide tensionvaluesfor thestartandtheendposition for eachDOF in a pose. Theseare usedwhen the startandendgainsarecalculatedfor the motion. If the gainsarecal-culatedby resamplingthe external forces,the gain value at eachsamplepoint is determinedby theanimator’s input. For predictiveupdating,the transitionbetweenthe endgainscanbe affectedintwo ways.Thefirst methoddrawsa line betweenthetwo gainsandtransitionsalongthis line. Thesecondmethoddeterminesacurvedline thatwill morecloselytracktheprovidedtrajectory.

Linesin gain spacehaving a slopeof otherthan �cb will inducea warpingon thetrajectory. Generally speaking,transitioningfroma high gain to a lower gain will causethe motion to start slowlyandacceleratetowardstheend. Moving from a low gain to a highgain will causethe motion to acceleratequickly at the beginningandeasein toward the end. This is shown graphicallyin Figure3. Often this warping is enoughto provide the desiredshapeforthe motion. A linear transitionfunction canbe combinedwith atensionchangeand the resultinganimationwill have the desiredappearance. This is especiallytrue for posturechanges.The ani-mator is still free to usearbitrary transitionfunctionsto warp themotionif additionalcontrolis needed.

The secondmethodallows the animatorto more closely trackthe transitionfunction. The transitionfunction canbe usedto de-terminedesiredanglesat eachmomentin time, andfrom this andthe joint limits, theslopeof the isoangleline canbecalculatedforthatmoment.With point andslopeestimates,an isoangleline canbecomputedat eachupdatetime. Tensionis thenvariedby select-ing apointon this line thatgivestherequestedstiffness.

With high gains, the resultingmotion will track the transitionfunctionsclosely. As gainsarereduced,themomentumof thelimbs

Figure 3: Varying tensionduring a motion warps the motion’sshape.Thetrajectoryfunctionis anease-in-ease-outcurve.

Figure 4: Upward and downward motionsfor a limb comparinghighandlow gains.

startsto contribute morestronglyto the motion andthe trajectorydeviates from the transitionfunction. Figure4 shows examplesofbothdownwardandupwardmovements,eachattwodifferentgains.Thehigh gain curve preciselytracksthekinematictransitionfunc-tion. For thedownwardmotion,thelowergain functionatfirst lagsbehindthehighgain functionasit takeslongerto overcomethein-ertiaof the limb. During themiddlesectionof themovement, thelimb leadsthekinematiccurve undertheeffect of gravity. Thetwomotionsreachthe endpoint at approximatelythe sametime, butthelowergainmotionslightly overshootsthedesiredposition.Thisovershootis oftenvisually desirable.Theresultsaresimilar for anupwardmotion. Onceagain thehigh gain motionpreciselytracksthekinematictransitionfunction. Thelower gain motionagain ex-hibits a lag at the beginning and an overshootat the end. Sincegravity is now actingagainstthemotion, the lower gain transitiontrails themotionthroughout.

Jointsthatarelessstiff will alsobemoreaffectedby themove-mentof adjacent limbs. The antagonisticcontrollersdo not com-pensatefor thesetransferenceforces,so the effect the forceshavedepends solelyon thetensionin theneighbouringjoint. Transitoryeffectswill becomemuchmoreapparentas the characterrelaxesandthiscanyield richermovement.

In anauthoringsystem,it is importantto give an animatorsuf-ficient control over the motion in order to achieve the effectsshedesires.Thiscontrolis notuseful,however, if it is unintuitive. Con-trolling gainparameterscanbeunintuitive. Ratherthanautomatingthegainsettingandlimiting animatorcontrol,acalibrationmethodwasestablishedthatgivestheanimatorsomeintuition for whatgainvaluesmean.Thecalibrationprocessis performedonthesimulatedtorsoskeletonandmakes the entireskeletonvery stiff except for

neff
Note
Errata: This equation should read p = sin(p theta_span) / sin(theta_span)

Figure5: A montageof framesfrom the animationspresentedinthispaper.

oneDOF. The skeletonis thenperturbedby pushingit at an endeffector appropriatefor the DOF with a force of 45N. This corre-spondsto afirm push.Thetestis repeatedfor severaldifferentgainvaluesfor theDOF andthenfor the restof theDOFsin the torso.The animatorcanthenaccessa setof curvesthat show the maxi-mumdeformationthatapushwill giveateachDOFasafunctionofgain. Thesecurveshave hyperbolicshapeandalsoindicatewhereinstabilitiesstartto occur. This informationprovidesaclearpictureof how stiffnessvaluesrangeacrossdifferentjoints of thebody, aswell asthe effect of changingthe gain, andallows the parametersto beusedin aknowledgeableway.

Dampingis thefinal controlparameterin thesystem.It canbevaried to reduceovershootand transitoryeffects in a motion. Italsocreatessomelag. If dampingis too low andthemovementsarequitefast,ringing canoccurwherethemotionexceedstheequilib-rium pointduringthetransitionandthengetspulledbacktowardit.Increasingthe dampingcancurethis. Generally, dampingvaluesthatareapproximatelyonetenthof gainvalueswork well.

6 Results

The animationsystemoutlined herehasbeenappliedto a num-ber of different tasksincluding postureadjustments,gesturecon-trol andanticipationeffects. A montageof imagesfrom thesean-imations is shown in Figure 5. The resultsare describedhereandall animationsmentionedin the paperareavailableonline at:http://www.dgp.toronto.edu/˜neff All theanimationsdescribedcon-sistof a smallnumberof poses,the richnesscomingfrom the im-pactof tensionvariationon the dynamicssimulation. Someitera-tion wasinvolved in generatingtheanimations.In general,lessit-erationis requiredwhentensionchanges arethedominantshapingfunctionthanwhenthetransitionfunctionsarecarefullytweaked.

6.1 Gestures

Gesturesarea primecandidate for expressive variationsin tension.An animationis shown thatcontrastsa relaxed,flamboyant charac-ter anda police officer giving the direction“You shouldgo left.”.Thepoliceofficer’smovementsarequickandprecise.Theflamboy-antcharacter’s movementsarelooseandflowing. His armsswingslightly at his sides,his wristsflick, themovementsaccelerateanddecelerate basedon tensionchanges.All of theseeffectsareduetotensionmodeling,not thekinematictrajectories.

A wavemotionwasgeneratedusingpureactuatedcontrol,kine-matically, using tight control andvarying the tensionthroughthe

movement. The actuatedcontrol is quite unnaturalas the move-mentacceleratesquickly andtheneasesin toward theendof eachsectionof the motion. The kinematicwave is substantiallybetter,but still looksstiff andnot particularlylifelik e. Usingtight controlproducesananimationthatlooksverysimilar to thekinematicmo-tion. Varying tensionproducesa significantlymorelifelik e wave.Thewrist is allowedto movepassively creatingaswayinghandmo-tion, theforcetransferencegeneratessomemovementin thecollarbone,thetrajectoriesaresmoothedandwarpeddueto theinfluenceof gravity andmomentum,thearmswaysslightly at thecharacter’ssideat theendof themovement. Theseeffectsrely on beingableto vary the tensionduring a movement. For instance,the arm isrelaxedasit is broughtto thecharacter’s side,allowing it to swayslightly at the end. If insteadthe gainswere reducedat the startof the motion, the arm would fall in a physically realistic,but un-naturalway. This animationuseskinematictrajectoriesfor shapecontrol,but enhancesthemby addingtensionvariation.

6.2 Postures

Postureadjustmentsare ideal candidates for tensioncontrol. If atired characteris to sagdownwards the correctmotion shapecanbe achieved by simply providing a linear transitionfunction andreducingthetensionduringthemotion. Otherpostureadjustmentscanbemadein asimilarly straightforwardmanner. Importantly, theanimatorretainstheability to provide arbitrarytransitionfunctionsto customizeamotion.

Examplesarepresentedthatcontrasta formal greetingnodwitha tiredcharactersaggingdownwards.A shrugis alsoshown.

6.3 Anticipation

Recall the soccerball that wasflying toward you in the story thatopenedthe paper. You changedyour tensionbecauseyou noticedtheball coming.If you hadnot,you would have remainedrelaxed.Peoplemake tensionchangeswhenthey anticipateanevent. Thisaffectshow they react. To demonstratethis a character is shovedwith differentforcesanddifferentamountsof tensionin his body.The effect of the shove becomes quite mutedashe bracesfor im-pact.

Anotheranimationcombinestensionchangesandgesturesasthecharacter reactsto beingpushedfrom behind.

6.4 Crouch

The previous animationsweregeneratedon the torsomodel. Thesystemalso allows full body animation,interactionwith groundforcesand provides balancecontrol. A crouchanimationis in-cludedwhich demonstratesthis. This animationusesanautomaticbalancecontrollerthatis basedon ideasfrom [22].

7 Conclusion and Evaluation

A systemhasbeenpresentedthatallowsveryflexible charactercon-trol in aphysicallybasedanimationframework. It allows theshapeof movements to bevariedandthetensionof a character to bevar-ied within a movementand acrossmovements. Tensioncontrol,whencombinedwith an underlyingdynamicssimulation,is seento be an effective methodto capturemany of the subtletiesof hu-manmotion. This allows richly nuancedmotion to becreatedthatrequiresonly a few poses.

The animatorinterfaceis still lower level thanis desirableandrequiresasignificantamountof input. Futurework will investigatehigherlevel interactiontechniques for animatorsthatstill maintainsufficientcontrol.Anotheravenueof futureresearchis thecreation

of morerealisticmusclemodelsthat captureadditionalaspectsofhumanj movement.

8 Appendix

8.1 Equivalence of PD and Antagonistic Control

TheequivalencebetweenPDandantagonisticcontrolcanbeshownby multiplying outthetwo equations,includingexternalforces,andequatingtheterms.Thenettorquewith PDcontrolis givenas

�lk �Cm �� �n���%� ����� ���* �n�_ �"!�\6 ( F<H (*)+J7L Mpoq,K)+r+s�( # (10)

andtheantagonisticcontrolequationbecomes

�?k ��m �� 3 ��35� 3 �G68 9t��9;� 9t�u� � !�G6 ( F�H (*)+J4L�M�ov,+)Kr+s�( 1(11)

Thedampingtermandexternalforcetermsarethesame.Equatingthe � termsfrom bothequationsgives

�O �n�0���w�V 3u68 9:���_# (12) �x�� 3u68 9c# (13) 9R���O 3u68 � . (14)

Equatingthesetpoint termsgives:

�n����� ����� ���:�y?3 ��3u68 9'��9 (15)

3a�y?� ����� ���.� �����E��9��35����9 subst.14 . (16)

For � �%� ���.� ��� in between��9 and ��3 , 3 will be positive and lessthan � . This meansthat for any PD settings,therearea pair ofpositive valuesof 3 and 9 suchthat the antagonisticcontrollerandthePD controllerwill have thesameerrorresponse.Note,thisis not thecaseif the linearspringsin theantagonisticformulationarereplaced with non-linearfunctions.Also notethat thestiffnessfunctionusedin antagonistic control is ?3568 9 , which equalsthestiffnessgain � in PDcontrol.

8.2 Linear Transitions

An initial point in 3 - 9 spaceis indicated as >Oz , ={z . Theequa-tion passingthroughthispointwith slope �wb is:

= �y� > 6 >Oz 6 ={z 1 (17)

Consideringgravity forces,at equilibrium,theantagonisticcontrollaw gives:

> ����35�����768 9:����9;�����t�y� )K]2^ TVUXW � (18)

for a joint. For sufficiently highgains,thegain termswill dominatethegravity forceandtherelationcanbeapproximatedas

| ��� 3 �����768 9 ��� 9 �����'} $ 1 (19)

Rearrangingandsubstituting17gives

�0� | �<3u6 = ��9> 6 =

# (20)

� > ��3u68�/� = 6 >Gz 6 ={z �~�<9> �V� > 6 >Gz 6 ={z �

# (21)

� >��35�E� =>Gz 6 ={z

6E� 9 1 (22)

Since> is multiplied by a constant,a linearchangein > will pro-ducea linearchangein � . Therefore,for high gains,linearmove-mentsalonga line in 3 - 9 spacewith slope �cb will producelin-earmotions.

AcknowledgementsMany thanksgo to PetrosFaloutsosandVictor Ng-Thow-Hing for writing DANCE,making it availableandprovidinghelpandusefulfeedbackduring thiswork. Valuablediscussionswith JoeLaszlo, Dave Mould andMichiel vandePannegreatly benefitedthework. ChrisTrendall, JoeLaszloandDavid Torrehelpedfacilitatethesubmission.This work waspartially supportedby anNSERCpostgraduatescholarship.

References[1] Gunnar B. J.AnderssonandJackM. Winters. Roleof musclein postural tasks:

Spinalloading andpostural stability. In JackM. WintersandSavio L-Y. Woo,editors, Multiple Muscle Systems: Biomechanics and Movement Organization.Springer-Verlag,New York, 1990.

[2] DianeM. Chi, Monica Costa,Liwei Zhao, andNormanI. Badler. The emotemodelfor effort andshape. Proceedings of SIGGRAPH 2000, pages173–182,July 2000. ISBN 1-58113-208-5.

[3] PetrosFaloutsos,Michiel vandePanne,andDemetriTerzopoulos. Composablecontrollers for physics-based characteranimation. Proceedings of SIGGRAPH2001, pages251–260,August 2001. ISBN 1-58113-292-1.

[4] A. G. Feldman.Functional tuning of thenervoussystemwith control of move-mentor maintenanceof asteadyposture- ii. controllableparametersof themus-cles.Biophysics, 11(3):565–578,1966.

[5] R. C. FitzPatrick, J.L. Taylor, andD. I. McCloskey. Ankle stiffness of standinghumansin responseto imperceptible perturbation: Reflex and task-dependentcomponents. Journal of Physiology, 454:533–547,1992.

[6] TamarFlash. The organization of humanarm trajectory control. In JackM.Winters andSavio L-Y. Woo, editors, Multiple Muscle Systems: BiomechanicsandMovement Organization. Springer-Verlag,New York, 1990.

[7] JessicaK. Hodgins,WayneL. Wooten,David C. Brogan, andJamesF. O’Brien.Animating humanathletics. Proceedingsof SIGGRAPH 95, pages71–78, Au-gust1995. ISBN 0-201-84776-0.Held in Los Angeles,California.

[8] Nevill e Hogan. Mechanical impedanceof single- andmulti-articulatorsystems.In Jack M. Winters and Savio L-Y. Woo, editors, Multiple Muscle Systems:BiomechanicsandMovementOrganization. Springer-Verlag,New York, 1990.

[9] Nevill e Hogan andJackM. Winters. Principlesunderlying movementorgani-zation: Upperlimb. In JackM. WintersandSavio L-Y. Woo, editors, MultipleMuscle Systems: Biomechanics and Movement Organization. Springer-Verlag,New York, 1990.

[10] Michael G. Hollars, Dan E. Rosenthal, and Michael A. Sherman. SD/FASTUser’s Manual. SymbolicDynamicsInc., 1994.

[11] E. Kokkevis, D. Metaxas,andN. I. Badler. User-controlled physics-basedani-mationfor articulatedfigures. In Computer Animation ’96, pages16–26, June1996. ISBN 0-8186-7588-8.

[12] Alexis Lamouretand Marie-Paule Gascuel. Scripting interactive physically–basedmotions with relative pathsandsynchronization. In Graphics Interface’95, pages18–25, May 1995.

[13] Joseph Laszlo, Michiel vandePanne,andEugeneFiume.Interactivecontrol forphysically-basedanimation. Proceedings of SIGGRAPH 2000, pages201–208,July 2000. ISBN 1-58113-208-5.

[14] Maja J Mataric, Matthew Will iamson, John Demiris, and Aswath Mohan.Behavior-basedprimitives for articulated control. In Proceedings, From Ani-mals to Animats 5, Fifth International Conferenceon Simulation of AdaptiveBehavior, pages165–170.MIT Press,1998.

[15] Maja J. Mataric, Victor B. Zordan, and Matthew M. Wil liamson. Makingcomplex articulated agentsdance:An analysis of control methods drawn fromrobotics, animation andbiology. AutonomousAgents andMulti-Agent Systems,2(1), july 1999.

[16] Victor Ng-Thow-Hing andPetrosFaloutsos.Dynamicanimation andcontrol en-vironment,1999.http://www.dgp.toronto.edu/dgp/software/dance/dance.html.

[17] BennoM. Nigg and Walter Herzog, editors. Biomechanics of the Musculo-skeletal System. John Wiley andSons,Ltd., second edition,1999.

[18] KenPerlin.Realtimeresponsiveanimation with personality. IEEETransactionson Visualization andComputer Graphics, 1(1):5–15,March1995. ISSN1077-2626.

[19] Willi amH. Press,SaulA. Tukolsky, Wil liam T. Vetterling,andBrianP. Flannery.Numerical Recipesin C: TheArt of Scientific Computing. CambridgeUniversityPress,2ndedition,1992.

[20] RichardA. SchmidtandTimothy D. Lee. Motor Control andLearning: A Be-havioral Emphasis. HumanKinetics,Champaign, IL, third edition, 1999.

[21] MichaelvandePanne,RyanKim, andEugeneFiume. Virtual wind-uptoys foranimation. GraphicsInterface’94, pages208–215, May 1994. Held in Banff,Alberta,Canada.

[22] WayneL. Wooten. Simulation of Leaping, Tumbling, Landing, and BalancingHumans. Ph.D.dissertation., Georgia Instituteof Technology, 1998.

[23] Felix E. Zajac. Musclecoordinationof movement: A perspective. Journal ofBiomechanics, 26:109–124, 1993. Supll.1.

[24] Victor B. ZordanandJessicaK. Hodgins. Trackingandmodifying upper-bodyhumanmotiondatawith dynamic simulation. Computer AnimationandSimula-tion ’99, September1999. ISBN 3-211-83392-7. Held in Milano, Italy.