185
Biomechanics and optimal control simulations of the human upper extremity Der Technischen Fakult¨ at der Friedrich-Alexander-Universit¨ at Erlangen-N¨ urnberg zur Erlangung des Doktorgrades Dr.-Ing. vorgelegt von Dipl.-Ing. Ramona Maas aus Saarlouis

Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Biomechanics and optimal control

simulations of the human upper extremity

Der Technischen Fakultat

der Friedrich-Alexander-Universitat

Erlangen-Nurnberg

zur

Erlangung des Doktorgrades Dr.-Ing.

vorgelegt

von

Dipl.-Ing. Ramona Maas

aus Saarlouis

Page 2: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Als Dissertation genehmigt

von der Technischen Fakultat

der Friedrich-Alexander-Universitat Erlangen-Nurnberg

Tag der mundlichen Prufung: 13. Januar 2014

Vorsitzende des Promotionsorgans: Prof. Dr.-Ing. habil. Marion Merklein

Gutachter/in: Prof. Dr.-Ing. habil. Sigrid Leyendecker

Prof. Oliver Rohrle, PhD

Prof. Jorge A.C. Ambrosio, PhD

Page 3: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe
Page 4: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Herausgeber

Prof. Dr.-Ing. habil. Sigrid Leyendecker

Lehrstuhl fur Technische Dynamik

Friedrich-Alexander-Universitat Erlangen-Nurnberg

Haberstrasse 1

91058 Erlangen

c© Ramona Maas

Alle Rechte vorbehalten. Ohne ausdruckliche Erlaubnis der Autorin ist es nicht erlaubt, diese Ar-

beit vollstandig oder auszugsweise nachzudrucken, wiederzugeben, in Datenverarbeitungsanlagen zu

speichern oder zu ubersetzen.

All rights reserved. Without explicit permission of the author it is not allowed to copy or trans-

late this publication or parts of it, neither by photocopy nor in electronic media.

Page 5: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Biomechanische

Optimalsteuerungssimulationen der

oberen Extremitat des Menschen

Der Technischen Fakultat

der Friedrich-Alexander-Universitat

Erlangen-Nurnberg

zur

Erlangung des Doktorgrades Dr.-Ing.

vorgelegt

von

Dipl.-Ing. Ramona Maas

aus Saarlouis

Page 6: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe
Page 7: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Biomechanics and optimal control

simulations of the human upper extremity

Ramona Maas

Schriftenreihe Technische Dynamik

Band 1 2014

Herausgeber: Prof. Dr.-Ing. habil. Sigrid Leyendecker

Page 8: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe
Page 9: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Vorwort

Diese Arbeit entstand wahrend meiner Tatigkeit als Wissenschaftliche Mitarbeiterin von Frau

Prof. Dr.-Ing. habil. Sigrid Leyendecker, zunachst in Ihrer Emmy-Noether Nachwuchsgruppe

’Computational Dynamics and Control’ an der TU Kaiserslautern und im spateren Verlauf

an Ihrem Lehrstuhl fur Technische Dynamik an der Friedrich-Alexander-Universitat Erlangen-

Nurnberg.

Die motivierte und engagierte Betreuung durch Frau Prof. Dr.-Ing. habil. Sigrid Leyendecker

hat zum Gelingen dieser Arbeit entscheidend beigetragen und verdient meinen allerherzlichsten

Dank.

Ebenfalls danke ich Prof. Oliver Rohrle, PhD und Prof. Jorge A.C. Ambrosio, PhD fur das Inter-

esse an meiner Arbeit und die Ubernahme der Gutachten, sowie Herrn Prof. Dr.-Ing. habil. Kai

Willner fur die Ubernahme des Vorsitzes.

Prof. Dr.-Ing. habil. Ralf Muller gilt mein besonderer Dank fur die Unterstutzung wahrend

der gesamten Zeit in Kaiserslautern. Auch den Kollegen am LTM an der TU Kaiserslautern

danke ich ganz herzlich fur die fachliche und mentale Unterstutzung sowie fur das nicht-

wissenschaftliche Rahmenprogramm dieser unvergesslichen viereinhalb Jahre. Besonders danke

ich meinem Zimmerkollegen Herrn Dipl. Ing. Michael Koch fur die vielen Diskussionen zum

Ablei(t/d)en sowie fur die vielen lustigen Dienstfahrten.

Herrn Dr.-Ing. Joachim Linn vom Fraunhofer ITWM gilt ebenfalls mein Dank fur die vie-

len spannenden Diskussionen, fur die intensive Beschaftigung mit dem Thema Biomechanik

und nicht zuletzt fur das Korrekturlesen dieser Arbeit.

Den Kollegen am LTD der Universitat Erlangen-Nurnberg mochte ich ebenfalls danken fur

die schone Zeit und die großartige Unterstutzung, besonders durch Frau Dipl.-Ing. Natalia

Kondratieva und Frau Beate Hegen.

Meinen Eltern, meiner Schwester und der ganzen restlichen Großfamilie ganz lieben Dank fur

die nun wirklich langjahrige Unterstutzung auf meinem Ausbildungsweg.

Mein großter Dank gilt jedoch Sven, ohne den ich diesen Weg – vor allem den Endspurt –

niemals geschafft hatte.

Haßloch, im Juni 2014 Ramona Maas

i

Page 10: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe
Page 11: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Zusammenfassung

Die vorliegende Arbeit stellt eine Verbindung zwischen einem kurzlich entwickelten Verfahren

zur Optimalsteuerungssimulation von Mehrkorpersystemen und biomechanischen Modellierungs-

aspekten der oberen Extremitat des Menschen her. Das Ziel liegt in der Bereitstellung einer

Methode, die die Untersuchung menschlicher Bewegungen mit Modellen der Mehrkoperdynamik

erlaubt und die Losung auftretender Optimalsteuerungsprobleme mit physiologisch motivierten

Zielfunktionen ermoglicht. Eine solche Methode ist besonders nutzlich fur die Auslegung von

Prothesen oder fur Leistungssteigerungen im Sport. Daruber hinaus konnen auch Fragestel-

lungen im Rahmen der Ergonomie untersucht sowie Mediziner bei der Diagnoseerstellung un-

terstutzt werden, beispielsweise bei der Beurteilung von Schonhaltungen. Im Rahmen dieses

Themengebietes treten Optimierungsprobleme auf verschiedenen Ebenen der Simulation auf.

Zum einen weisen biomechanische Systeme meist eine Muskelredundanz auf, d.h. es gibt ublicher-

weise mehr Muskeln, die ein Gelenk aktuieren konnen, als dieses Gelenk Freiheitsgrade be-

sitzt. Zum anderen gibt es unendlich viele Moglichkeiten, eine Bewegung durchzufuhren,

von der nur Anfangs- und Endzustande bekannt sind. Beide Probleme konnen als Opti-

mierungsprobleme verstanden werden. Der vorliegende Ansatz kombiniert beide Probleme

durch die Berucksichtigung von Muskelkraften in der Formulierung des Optimalsteuerungsprob-

lemes. In diesem multidisziplinaren Ansatz ist es von besonderem Vorteil, dass die verwendete

Optimalsteuerungssimulationsmethode ein strukturerhaltendes Verhalten aufweist, so dass bes-

timmte Eigenschaften der realen Dynamik an die approximierte Losung vererbt werden. Dies

fuhrt beispielsweise zu einer konsistenten Drehimpulsabbildung und einem guten Energiever-

halten.

Die Entwicklung der Simulationsmethode umfasst vier Hauptthemengebiete. Zunachst er-

fordert die biomechanische Modellierung Starrkorpermodelle der oberen Extremitat. Insbeson-

dere wird zur Modellierung des Ellbogengelenkes und des Handgelenkes eine Gelenkbeschrei-

bung benotigt, die Rotationen um zwei Gelenkachsen ermoglicht. Des Weiteren werden Muskel-

modelle verwendet, um die skalare Muskelkraft abhangig von der Muskellange und -geschwin-

digkeit zu berechnen. Zu diesem Zweck werden verschiedene Hill-Modelle diskutiert, ins-

besondere im Hinblick auf den Einfluss strukturerhaltender Integratoren auf die Simulation

muskelaktuierter Bewegungen. Schließlich wird ein Muskelmodell an die Anforderungen einer

Optimalsteuerungssimulation angepasst, indem differenzierbare Kraft-Langen- und Kraft-Ge-

schwindigkeits-Funktionen verwendet werden. Das dritte Themengebiet umfasst den Schritt

von der skalaren zur raumlichen Muskelkraft. Schon die skalare Muskelkraft hangt von der

Lange und Geschwindigkeit des Muskels ab und damit vom aktuellen Gelenkwinkel. Zusatzlich

hangt auch die Kraftrichtung am Ursprungs- und Ansatzpunkt des Muskels vom Gelenkwinkel

ab und ein Gleiten der Muskelpfade um Gelenke und Koper ist wahrend einer Bewegung

moglich. Im Rahmen dieser Arbeit wird eine semi-analytische Methode vorgestellt, mit der

Muskelpfade bei uberwiegend glatten Korpern effizient und ausreichend genau berechnet werden

konnen, so dass eine Verwendung innerhalb eines Optimalsteuerungsproblemes moglich wird.

iii

Page 12: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Im vierten Schritt werden geeignete, physiologisch motivierte Zielfunktionen fur biomechanische

Optimalsteuerungsprobleme formuliert. Bereits bekannte Kriterien werden in die vorgestellte

Formulierung des Problems ubertragen und eine Formulierungsidee fur ein Kriterium zur Min-

imierung von Gelenkreaktionen wird entwickelt.

Vielfaltige numerische Beispiele aus dem typischen Bewegungsspektrum der oberen Extremitat

zeigen abschließend das Potential dieser neuen Methode. Dabei werden sowohl reine Aktu-

ierungen mit Gelenkmomenten und reine Muskelaktuierungen als auch Systeme mit gemischter

Aktuierung betrachtet. Opimalsteuerungssimulationen des Greifens werden anhand eines Fin-

germodelles untersucht und ein exemplarischer Vergleich der Ergebnisse unter Verwendung

der verschiedenen Zielfunktionen erfolgt sowohl mit Literaturwerten als auch mit Motion-

Capturing Experimenten. Weitere Simulationen mit dem Armmodell umfassen optimal ges-

teuertes Lenken, Gewichtheben, Ergonomie von Bewegungen am Arbeitsplatz und Bewegungs-

ablaufe im Sport.

iv

Page 13: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Abstract

This work establishes a connection between a recently developed optimal control simulation

method and biomechanical modelling aspects of muscle actuated human motion at the example

of the human upper extremity. The goal is to provide a method that enables the investigation of

human motion modelled as multibody dynamics and the solution of upcoming optimal control

problems with physiologically motivated objective functions. A method like this is especially

useful to improve prostheses or the performance of athletes. Moreover, ergonomical questions

concerning workplace design or everyday activities can be examined and diagnoses of physi-

cians can be supported, for example to assess relieving postures. Within this topic, optimisation

problems occur at two different levels. On the one hand, in biomechanics usually more muscles

are involved to actuate a joint than degrees of freedom are present, which is commonly referred

to as redundancy. On the other hand, there is an infinite number of possibilities to perform a

motion between two given states. The presented approach combines both optimisation prob-

lems by including muscle actuation in the optimal control problem formulation. Within this

multidisciplinary approach, a key benefit is the structure preserving behaviour of the underly-

ing discrete dynamics formulation, i.e. the approximate solution inherits certain characteristics

of the real dynamics. In particular, this guarantees exact angular momentum consistency and

a good energy behaviour of the simulation results.

The development of this simulation method contains four main tasks. First, rigid body mod-

els of the human upper extremity are required, which involves the implementation of a joint

description with two different rotation axes in order to represent the degrees of freedom in the

elbow and the wrist. Second, a model for the scalar muscle actuation has to be set up ac-

cording to the demands resulting from the implementation into an optimal control framework.

For this purpose, common Hill-type muscle models are discussed, in particular with respect to

the influence of structure preservation on muscle actuated motions. Then, a scalar Hill-type

muscle model is set up for the use within an optimal control framework, i.e. a differentiable

force-length and force-velocity behaviour is incorporated. The third task addresses the step

from scalar to spatial muscle forces. The scalar force depends on the actual muscle length

and velocity and therewith on the actual angle of a joint, around which a muscle is redirected.

In addition to that, also the spatial force direction depends on the joint angle and a sliding

of muscle paths during motions is possible. Within this work, a semi-analytical approach is

presented to compute the muscle path around mostly smooth bodies. Here, the focus is on

a robust and efficient computation with adequate accuracy in order to enable optimal control

simulations. The last step is the formulation of appropriate, physiologically motivated objective

functions. Commonly known criteria are transferred into the presented formulation of optimal

control problems and an idea to formulate a criterion that accounts for the minimisation of

joint reactions is presented.

A large variety of numerical examples is presented, dealing with typical motions of the human

upper extremity. The implementation of the rigid body actuation thereby comprises models

v

Page 14: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

with complete joint torque or complete muscle actuation as well as mixed systems. Optimal

control simulations of grasping motions are examined with the human finger model and the

results are exemplarily compared to literature and motion capturing experiments. Further sim-

ulations on the human arm cover steering, weight lifting, ergonomics of workplace motions and

sports motions.

vi

Page 15: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Contents

Contents

Vorwort i

Zusammenfassung ii

Abstract v

Nomenclature x

1 Introduction 1

1.1 Current state of research . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 Outline of this work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2 Anatomy of the human upper extremity 7

2.1 The human arm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.2 The index finger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.3 Muscles of the human upper extremity . . . . . . . . . . . . . . . . . . . . . . . 12

2.3.1 Muscles of the finger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.3.2 Muscles of the arm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.4 Mechanical characteristics of skeletal muscles . . . . . . . . . . . . . . . . . . . . 16

3 Continuous dynamics of biomechanical structures 19

3.1 Euler-Lagrange equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.2 Hamilton’s equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.3 Energy conservation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.4 Noether’s theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.4.1 Linear momentum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.4.2 Angular momentum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.5 Null space method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.6 Reparametrisation in generalised coordinates . . . . . . . . . . . . . . . . . . . . 24

4 Discrete dynamics of biomechanical structures 25

4.1 Structure preserving integrator for dynamical systems . . . . . . . . . . . . . . . 25

4.1.1 Discrete Legendre transform . . . . . . . . . . . . . . . . . . . . . . . . . 27

4.1.2 Energy behaviour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

4.1.3 Discrete Noether’s theorem . . . . . . . . . . . . . . . . . . . . . . . . . 27

4.1.4 Discrete null space method . . . . . . . . . . . . . . . . . . . . . . . . . . 27

4.1.5 Nodal reparametrisation . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

4.2 Matlab/Simulink integrators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

vii

Page 16: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Contents

4.3 Numerical example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

5 Rigid multibody formulation 33

5.1 Constrained rigid body formulation . . . . . . . . . . . . . . . . . . . . . . . . . 33

5.2 Joint connections and constraint reactions . . . . . . . . . . . . . . . . . . . . . 36

5.2.1 Spherical pair . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

5.2.2 Revolute pair . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

5.2.3 Cardan pair . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.2.4 Numerical example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

6 Muscle actuation 53

6.1 Hill-type muscle models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

6.1.1 The influence of structure preservation on simulations of muscle actuated

movements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

6.1.2 Hill-type muscle model for optimal control simulations . . . . . . . . . . 69

6.2 Dynamics of the muscle path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

6.2.1 Optimal muscle path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

6.2.2 Semi-analytical path procedure for smooth bodies and joints . . . . . . . 74

7 Optimal control of constrained forced biomechanical systems 81

7.1 Discrete mechanics and optimal control for constrained systems with joint torque

and muscle actuation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

7.2 Physiologically motivated objective functions . . . . . . . . . . . . . . . . . . . . 82

7.2.1 Minimal control effort . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

7.2.2 Minimal control change . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

7.2.3 Minimal kinetic energy . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

7.2.4 Minimal jerk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

7.2.5 Minimal joint reaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

7.2.6 Minimal manoeuvre time . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

7.2.7 Maximal throw distance . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

7.3 Constrained optimisation problems . . . . . . . . . . . . . . . . . . . . . . . . . 86

8 Model of the human finger 89

8.1 Kinematic chain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

8.2 Numerical examples of human finger motion . . . . . . . . . . . . . . . . . . . . 91

8.2.1 Optimal control of grasping with joint torque actuation . . . . . . . . . . 91

8.2.2 Grasping with simplified muscle actuation . . . . . . . . . . . . . . . . . 96

8.2.3 Summary and outlook on future work . . . . . . . . . . . . . . . . . . . . 100

9 Model of the human arm 103

9.1 Kinematic chain representing the human arm . . . . . . . . . . . . . . . . . . . 103

9.1.1 Musculotendon actuation . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

9.2 Numerical examples of human arm motion . . . . . . . . . . . . . . . . . . . . . 106

9.2.1 Optimal control of a steering motion with joint actuation . . . . . . . . . 106

9.2.2 Optimal control of lifting the arm with muscle actuation . . . . . . . . . 109

viii

Page 17: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Contents

9.2.3 Stocking a shelf – the influence of different cost functions . . . . . . . . . 116

9.2.4 On long throw and shot put . . . . . . . . . . . . . . . . . . . . . . . . . 129

9.3 Summary and outlook on future work . . . . . . . . . . . . . . . . . . . . . . . . 137

10 Conclusion and outlook 139

A Analytical gradients of the optimal control problem 143

A.1 Analytical gradients of nonlinear equality constraints . . . . . . . . . . . . . . . 143

A.1.1 Gradient of equations of motion . . . . . . . . . . . . . . . . . . . . . . . 143

A.1.2 Gradient of initial configuration condition . . . . . . . . . . . . . . . . . 145

A.1.3 Gradient of initial momentum condition . . . . . . . . . . . . . . . . . . 145

A.1.4 Gradient of final configuration condition . . . . . . . . . . . . . . . . . . 146

A.1.5 Gradient of final momentum condition . . . . . . . . . . . . . . . . . . . 146

B Constraint Jacobians of the finger and the arm model 147

C Parameters of the muscle models 149

C.1 Hill-type model with three components . . . . . . . . . . . . . . . . . . . . . . . 149

C.2 Hill-type model with two components . . . . . . . . . . . . . . . . . . . . . . . . 150

D Semi-analytical muscle path computation 151

Bibliography 154

ix

Page 18: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe
Page 19: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Nomenclature

A activation of a muscle

A0 pre-activation of a muscle

Bi parameters of the eccentric fv function

Cd discrete cost function

c constant longitudinal displacement of a helix

Di partial derivative with respect to the i-th argument

E total energy

Echec numerical energy error

Ei nodes of the muscle path

η angle between joint axes

Fm Hill-type muscle force

FCC force of the contractile component (CC)

F PEC force of the parallel elastic component (PEC)

F SEC force of the serial elastic component (SEC)

F1 force of the SEC at change from linear to exponential behaviour

Fim maximal possible active isometric muscle force

fc force factor at slope change of fl function

fl force-length function of a muscle

fv force-velocity function of a muscle

G gearing factor

γ curvature of the concentric fv function

g gravity

H Hamiltonian

xi

Page 20: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Nomenclature

h pitch of a helix

Jd discrete objective function

K number of bodies

kp proportionality constant of PEC

k1, k2 parameters of PEC

kel parameter for change from linear to exponential behaviour of SEC

ksh shape parameter of SEC

L Lagrangian

∆lSEC1 elongation of the SEC at change from linear to exponential behaviour

lCC length of the CC

lPEC length of the PEC

lSEC length of the SEC

lm length of the muscle

le length of a muscle path element

li specific sarcomere lengths

lI length of a cylindrical rigid body

lmin minimal muscle length

lopt optimal muscle length

m number of holonomic constraints

mq point mass

N total number of time nodes

n index of time node

ne number of nodes on the muscle path

density

rI radius of a cylindrical rigid body

rJ radius of a joint

St stimulus of a muscle

xii

Page 21: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

σm muscle stress

S action integral

T kinetic energy

∆t time step

t time

tg straight line parametrisation variable

th helix parametrisation variable

V potential energy

vm contraction velocity of a muscle

vCC velocity of the CC

vCCmax maximal possible velocity of the CC

W muscle work

Ad sequence of muscle activations

B input transformation matrix

dI I = 1, 2, 3 director triad

E Euler’s tensor

F iϕ constraint force in i-th joint

ϕ placement of centre of mass

f c constraint forces

f vector of external forces

G constraint Jacobian

g holonomic constraints

hθ constraint torques

hϕ constraint forces with respect to the centre of mass

I identity matrix

J inertia tensor

L angular momentum

xiii

Page 22: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Nomenclature

Lchec numerical error in angular momentum

λ Lagrange multipliers

M mass matrix

n joint axis

ω angular velocity

P null space matrix

p conjugate momentum

p1 origin of a muscle

p2 insertion point of a muscle

q velocity vector

q configuration vector

R rotation matrix

ρrb point location with resect to fixed body frame

rm direction of a muscle force

T iθ constraint torque in i-th joint

τ generalised forces

τ Jd sequence of joint torques

τm three dimensional muscle force

u generalised coordinates

ua unit axis

ud sequence of generalised coordinates

uv unit vector

Vb body volume

x location of a point in space

xg point on a straight line in space

xh point of a helix on a cylindrical rigid body

xiv

Page 23: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

1 Introduction

Comprehension of human motion is a research topic of growing interest. Since the last decades,

numerical simulations have been frequently used to gain experience and knowledge about plan-

ing and execution of human movements. Such investigations can be distinguished according to

their focus on the lower or the upper extremity of the human body. The human gait, jump-

ing and running motions are frequently examined, see [Pand 90, Gunt 97, Geye 03, Lim 03,

Acke 06, Geye 10], while hand, arm and finger are in the focus of investigations for example

in [Flas 85, Uno 89, Hard 93, Soec 95, Rose 95, Rose 01, Sant 06, Vale 07, Bies 07, Frie 09],

mainly with regard to grasping motions, with regard to kinematics and coordination of the hu-

man arm [Seth 03, Garn 99], or with regard to the most complex part, the shoulder mechanism

[Helm 94]. Usually, one aims at understanding how these movements are controlled by the

central nervous system (CNS) [Helm 02] or at improving high-tech prostheses and orthopaedic

devices [Cava 05].

In particular, the motion of the human arm and hand is of high interest because together

they form the most versatile tool human knows. From a more historical point of view, it is a

common opinion that the evolution of the arm and the hand enabled the ancient human brain

to evolute new structures building the basis for the modern human brain [Wash 79, Land 87,

Wils 00, Schm 03]. The large variety of grasping possibilities enables even nowadays human

learning and comprehension from childhood on. High precision grips can be performed with

an immense demand on fine motor skills, see [Marz 97]. Just as well, in sports motions or

musicians performances, grips with high strength or velocity are possible. To cover all those

distinct motions within a numerical simulation is a quite ambitious task.

1.1 Current state of research

In the area of biomechanical simulations, one generally distinguishes between experimentally

based methods, such as motion capturing and computer animation methods, see [Mult 99], and

physics-based approaches which are e.g. extensively discussed in the context of human walking

simulations in [Xian 10]. One possibility to simulate such movements is to model the system

of interest as a multibody system. To be able to draw reasonable physiological conclusions

from the simulation results, it is necessary to actuate the system by adequate muscle mod-

els. In gross movement simulation, Hill-based muscle models are applied almost exclusively

[Boge 98, Wint 90]. However, attempts are also made to include more physiological details and

to cover also the three dimensional muscle behaviour with new modelling approaches, see for

example [Rohr 13].

A frequently used approach to investigate human movements is the observation by motion cap-

ture systems followed by an inverse dynamics calculation to deduce the acting muscle forces,

see e.g. [Happ 95]. In most skeleton joint structures the number of muscles exceeds the degrees

1

Page 24: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

1 Introduction

of freedom. An optimisation procedure can be useful to solve this redundancy problem (see

e.g. [Silv 03, Quen 12]) with respect to a physiologically motivated cost function, which could

be for example the metabolic effort of the motion [Umbe 03, Acke 06] or a criterion of maximum

endurance of musculoskeletal function [Crow 81].

Another possibility to study muscle actuated locomotion is forward multibody dynamics simu-

lation, where the predefined muscle activation leads to muscle forces that actuate the system,

see for example [Ande 01]. This method supersedes the error-prone motion capturing proce-

dure but often leads to high computational effort, as the muscle activations need to be guessed

accurately to achieve the desired motion. To simulate human walking or in upper limb models,

it can be necessary to use up to 40 Hill-type muscles in one model [Nept 08, Garn 01], which

yields the necessity to save computational costs by using the largest possible time step in the

numerical integration while not losing too much accuracy.

A well known and comfortable tool to investigate multibody dynamics is Matlab/Simulink and

a lot of research has been done using it to simulate muscle driven movements, see for example

[Chen 00, Geye 10, Geye 03, Lim 03]. The standard integration methods implemented within

Matlab are based on an approximation of (time-) derivatives in the continuous equations of

motion by their discrete counterparts based for example on finite differences. It is well known

that, following this approach, the structure of the dynamical system might not be preserved,

i.e. the results can be inconsistent in energy and momentum maps during a dynamic simulation,

see e.g. [Maas 11].

In contrast to that, variational integrators are preserving the structure of the system, due to

their derivation from a discrete variational principle. In particular, the variational integrator

used within this work is symplectic and momentum preserving. i.e. the discrete Noether the-

orem [Mars 01] holds. This means, the resulting approximate trajectories exactly represent

certain characteristics of the real system like for example consistency of momentum maps and

symplecticity. More precisely, if no gravity, bearing, or actuation is present and a system moves

due to initial velocities, then the linear momentum is conserved. In additional presence of a

bearing, angular momentum is preserved. Moreover, if forces or torques actuate the system,

or if gravity is present, then the momentum changes only and exactly according to the applied

forces and torques. Even if this integrator is not exactly energy preserving, the results show

a good energy behaviour. Slight oscillations are visible, but no overall artificial loss or gain is

noticed even for long time simulations.

One of the main goals of this work is to quantify the relevance of structure preservation to mus-

cle actuated motions within forward dynamics simulations by comparison of Matlab/Simulink

integration methods and the symplectic-momentum method [Maas 11].

If a biomechanical motion can be described, either by inverse or by forward dynamics simula-

tion, it still remains an open question, how to get from a predefined initial position to a final

position. More precisely, there exists an infinite number of possible trajectories to perform a

motion between two boundary points with defined velocity and configuration. While in robotics

and automation engineering tasks this is usually treated with control and feedback-control sys-

tems, the human motion is controlled by the central nervous system (CNS). As this control

happens unconsciously, the control mechanisms and objectives often remain obscure.

A frequently used approach to solve such boundary value problems, is to formulate and solve an

optimal control problem. In biomechanics, this usually means one aims at finding an optimal

2

Page 25: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

1.1 Current state of research

sequence of joint torques or muscle activations and configurations that minimises a physiolog-

ically motivated criterion such that the equations of motion (and further constraints on the

problem) are fulfilled [Acke 06, Pand 90, Stel 05]. Multiple studies are engaged in optimal con-

trol of human arm or finger motion and investigate different optimality criteria or cost functions

with regard to grasping motions. A criterion of minimum torque change is favoured in [Uno 89]

whereas [Flas 85, Frie 09] introduce a criterion of minimum jerk during the motion. Moreover,

energy related objectives are proposed by [Soec 95, Bies 07]. Accounting for the comfort dur-

ing a motion, a criterion is developed in [Rose 95, Rose 01]. There, the motion is constantly

compared to known comfort postures and the discomfort of the motion is quantified via the

difference of the joint angles to known comfort positions.

The present work investigates the optimal control of human arm and finger motion in a sim-

ilar way, comparing different optimal control criteria and cost functions to understand which

criterion leads to the most realistic motion, i.e. which criterion resembles the control of the

human CNS most closely. Several well known physiologically motivated cost functions and cri-

teria are investigated, similar to those in [Flas 85, Frie 09, Uno 89] and an idea is illustrated to

formulate a criterion that reduces the impact on the joints during a motion by minimising the

constraint forces and torques. Herein, it is of particular importance that a differential algebraic

system of equations of index 3 is solved. In general, such systems are difficult to solve, as con-

ditioning issues related to the Lagrange multipliers may appear. Due to the premultiplication

with a nullspace matrix in the presented formulation, the constraint reactions are eliminated

from the equations of motions during the solution procedure and conditioning problems are

circumvented [Bets 06, Leye 06]. Afterwards, the constraint forces can be directly accessed in

a post-processing step and used within a cost function of the optimal control problem. This

criterion could be of interest for the ergonomic design of everyday or industrial processes. In a

more medical context it could help to explain pathologic motion and confirm a diagnosis, e.g. if

a patient is using relieving postures to minimise pain or discomfort.

Solving an optimal control problem, it gets even more important to enlarge the time step size

of the numerical integrator as far as possible, as the number of optimisation variables is di-

rectly related to the number of time steps used to discretise the simulation time. Hence, using

the largest possible time step without introducing too much error in the discrete trajectory is

crucial for efficient optimal control simulations.

Moreover, a non-structure preserving behaviour, which is for example given for the Mat-

lab/Simulink integrators, can have an impact on the resulting muscle forces as well as on

the activation prediction. If the optimal control problem is formulated with respect to a cost

function related to energy or muscle work, an artificial loss or gain in energy can significantly

influence the results and lead to an over- or underestimation of muscle forces. As this effect

increases with the size of the time step, one possibility to improve angular momentum rep-

resentation in standard methods is to use adequate time step sizes, taking into account the

disadvantage of a larger number of optimisation variables. However, even if the numerical en-

ergy dissipation or gain gets smaller with decreasing time steps, it will not be zero to numerical

accuracy. What clearly distinguishes this work from other related studies is the use of DMOCC

(discrete mechanics and optimal control for constraint systems, see [Leye 10]) for solving the

optimal control problem, which implies the benefit of structure preserving behaviour of the ap-

proximate solution as explained above. This is even given for long term optimal control simula-

3

Page 26: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

1 Introduction

tions with large time steps (see for example [Leye 08] or [Maas 12b] including muscle actuation)

and for optimal control simulations with highly nonlinear constraints, see [Leye 10, Maas 12a].

DMOCC belongs to the direct transcription methods, i.e. the infinite dimensional optimal con-

trol problem is transcribed into a finite dimensional nonlinear optimisation problem [Leye 11].

This nonlinear optimisation problem can then be solved using standard sequential quadratic

programming (sqp) algorithms, which rely on finding local minima, i.e. local zeros of the gra-

dient of the problem. For the gradient one can either use finite differences or specify analytical

gradients of the problem, which leads to a more accurate solution and a shorter computation

time.

No matter how different those introduced approaches are, all of the presented simulation meth-

ods in the field of biomechanical multibody simulations have one thing in common. The actu-

ation of the systems is often represented by muscle models in order to actuate the system in a

realistic manner. Therefore, another main focus of this work is on the muscle force simulation

and its implementation within in the optimal control framework.

According to the demands on an optimal control problem, a Hill-type muscle model is intro-

duced that slightly differs from those typically used within forward dynamics simulations. In

particular, the configuration dependent behaviour is smoothened to enable a computation of

analytical gradients of the optimal control problems. Further, a serial elasticity is neglected to

avoid numerical issues during the optimal control simulations. This serial elasticity is usually

related to the cross-bridge stiffness of a muscle and can be neglected in coordination studies

without short tendon actuators [Ambr 07, Zaja 89].

Like in most biomechanical simulations, both the muscle length and the force directions at the

insertion points of the muscles are related to the joint angle. Several studies therefore use an

alterable number of artificial ’via’ or ’wrapping’ points to relate the muscle path to the joint

angle [Murr 95, Sher 10]. The determination of such artificial points requires deep anatomi-

cal knowledge, which is not yet available for all biomechanical structures and the results are

quite sensitive to the location of such points. Additionally, a dynamical sliding of muscle paths

around a joint during a dynamical simulation cannot be represented with this approach.

In this work, it is assumed that a muscle tone, and therewith a residual tension, is always

present, even at rest (see for example [Wink 10, Stav 12, Scho 13]). This leads to the conclu-

sion that tendons and muscles are supposed to follow the path of minimal distance between two

insertion points, while not intersecting the bones. First, an optimisation based possibility is

illustrated to find this path by minimising the length of a discretised tendon/muscle path, such

that the nodes do not intersect the bodies. A similar approach can be found in literature called

the energy string method (ESM), see for example [Mars 08]. Solving this problem yields – due

to the discretisation of the path by several elements – an approximation to the real muscle path

length. The force direction at the insertion points is given via the normalised direction of the

first and the last element. However, using an optimisation procedure like this during forward

dynamics or optimal control simulations leads to several problems. First of all, the computation

is very expensive, as for every muscle in every time step such an optimisation procedure has to

be executed. Additionally, analytical gradients for optimal control simulations are difficult to

calculate, since the muscle length is the solution of a parameter dependent optimisation.

The second presented approach focusses on reducing computational effort in finding the muscle

path. For this reason, an algorithm is developed similar to the obstacle method (see [Garn 00])

4

Page 27: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

1.2 Outline of this work

that determines this geodetic path as a G1 (geometrical) continuous combination of straight

lines (wherever possible, i.e. whenever the straight line does not intersect the bodies or joints)

and helices, in a similar way as shown in [Mars 08] for a sphere-cylinder coupling. Note that

G1-continuously joined curves share tangential directions, while the length of the tangent vec-

tors might differ. Thus, the length of the muscle path can directly be calculated as the sum

of the length of the single parts and the force direction is given via the tangent vector at the

origin and the insertion point. By using this semi-analytical algorithm, the simulation time

can be significantly reduced, whereas the resulting force direction and path length are com-

parable to those obtained via optimisation based approaches. However, for certain rigid body

configurations, the problem of finding the minimal path cannot be solved analytically. Here,

in contrast to [Garn 00], we do not use a root-finding algorithm, but use the best fitting path

from those tested before, which can be solved – due to the non-iterative scheme – within a

reasonable amount of computation time, and analytical gradients can be easily provided.

1.2 Outline of this work

In the second chapter of this work, a brief overview on the anatomy of the human upper ex-

tremity is given. Due to the interdisciplinary topic of this work, special anatomical terms and

directional descriptions are explained together with an illustration of the mechanical charac-

teristics of human skeleton muscles.

The third chapter shows a general continuous formulation of the dynamics of constrained forced

multibody systems. Herein, the derivation of the Euler-Lagrange equations is presented. Ad-

ditionally, the meaning of energy and angular momentum consistency is illustrated, including

Noether’s theorem. A continuous version of the null space method and a reparametrisation in

generalised coordinates is shown as well.

The discretisation procedure used within this work is outlined in Chapter 4. A variational in-

tegrator yields discrete analogues to the Euler-Lagrange equations, Noether’s theorem and the

Legendre transform [Mars 01, Leye 08]. Eventually, this leads to a structure preserving time

stepping scheme, i.e. the resulting integrator is symplectic as well as momentum consistent

and the energy is not artificially dissipated. This is illustrated by means of a simple numerical

example at the end of this chapter, comparing Matlab/Simulink results to a variational inte-

grator.

Subsequently, the rigid body formulation used for the multibody modelling is explained in

Chapter 5, see also [Bets 06, Leye 06, Leye 08, Leye 10, Leye 11]. In addition to the kinematic

joint connections described in this literature, a further cardan joint connection is introduced,

allowing two relative rotational degrees of freedom between the bodies. This joint is especially

useful in biomechanical simulations of the arm, as both elbow and wrist can be modelled by

cardan joints with different axes. Furthermore, a possibility to compute the joint reactions is

given for each joint coupling. Those constraint forces and torques can be used in the later part

of the work to formulate objectives related to the joint impact.

In Chapter 6, different possibilities of muscle modelling are presented. The first section de-

scribes the structure of typical Hill-type muscle models. In the first part of this section, the

5

Page 28: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

1 Introduction

work concentrates on quantifying the artificial gain or loss in energy and momentum maps

for simple numerical examples of muscle driven movements calculated with Matlab/Simulink.

Therefore, the results are compared to a structure preserving simulation method as introduced

in Chapter 4. In this part of the work, the actuation by a nonlinear Hill-type muscle model

is included in a way strongly based on the work of [Sieb 08]. This enables a direct compar-

ison of the symplectic-momentum method and the different Matlab/Simulink integrators, in

particular regarding the structure preserving characteristics. A further Hill-type muscle model

is composed for optimal control simulations in the second part of this section. Here, a direct

discretisation of the muscle forces for the implementation in the symplectic-momentum scheme

is possible. The second section of this chapter concentrates on the muscle path computation,

which yields the configuration dependent muscle length and force directions. Besides a common

optimisation approach similar to the ESM method, a semi-analytical approach is illustrated.

The goal is to approximate the muscle path during a dynamical simulation such that its dynam-

ically changing behaviour is represented. At the same time, the computational effort is kept in a

reasonable range, allowing the application within optimal control simulations of biomechanical

motion.

An overview on the optimal control framework is provided in Chapter 7. Different physio-

logically motivated objectives are presented. In particular, an idea for an objective function

related to the joint reactions during dynamical simulations is presented. The direct transcrip-

tion method DMOCC used within this work is illustrated, which transfers the optimal control

problem into a finite dimensional constrained optimisation problem. Hence, commonly known

solvers for constrained nonlinear optimisation problems can be applied to solve such problems.

Within this work, Matlab’s fmincon solver and Snopt 7 are used, and the specific solver options

are briefly explained at the end of this chapter.

Finally, the main numerical results are illustrated for simulations of the human finger in Chap-

ter 8 and for the human arm in Chapter 9. Within grasping simulations of the human finger,

different physiologically motivated objectives are compared to literature and experiments. The

promising results encourage the implementation of muscle models to enable more physiological

conclusions. However, implementing a muscle model similar to [Sieb 08, Maas 11] yields several

problems, which motivate the introduction of a second muscle model described in Section 6.1.2.

Using this muscle model enables more ambitious optimal control simulations, shown for the

human arm model in Chapter 9. Starting with joint torque actuation, a steering motion is

investigated. The implementation of muscle actuation enables the use of muscle related objec-

tives, which are compared in a simulation of a simple arm lifting motion. The influence of the

dynamical muscle path compared to a direct line muscle path, is thereby discussed. In addition

to that, weight lifting as a typical motion in everyday activities and sports is examined. A

workplace motion like stocking a shelf is simulated, including again a comparison of different

objectives with a special focus on ergonomic aspects of the motion. Closing, typical sports

motions like long throw and shot put are investigated with particular regard to an appropriate

objective formulation.

6

Page 29: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

2 Anatomy of the human upper extremity

The modelling of biomechanical structures and the interpretation of numerical results strongly

depends on the understanding of the underlying anatomical structures. A detailed overview on

functional anatomy of the human upper extremity can be found in [Zanc 79, Kapa 92, Schm 03,

Till 05], on which this chapter is mainly based.

In modern anatomical sciences, it is an established opinion that the human upper extremity

is much more than a simple grasping tool. From a historical point of view, it is known that

the evolution of the hand took place long before the evolution of the human brain. Due to the

formation of hands and arms in primates enabling them to climb on trees and to perform the

first precision grips [Marz 97] by opposing thump to index finger, the structure of the brain

was rebuild. Together with further improvements of the visual organs during evolution, the

grasping abilities improved over time and in the cerebellum certain structures for the control

of hand muscles evolved. The upright gait then released the upper extremity completely from

locomotion tasks, whereby it gained the possibility to evolve a larger mobility spectrum for other

tasks. This was a key step towards the evolution of the modern human brain [Star 79, Land 87],

as the control of such motions needed new structures in the brain. Thus, the evolution of the

central nervous control system (CNS) began, educing the hand and arm to a versatile tool in

everyday movements, in handcraft working as well as for musicians and in sports motion.

Not only in ancient times but also in the evolution of each human, the use of the hand and arm

plays an important role. In particular, they support the comprehension from childhood on,

which is also mirrored in the word comprehension itself. Hence, the evolution of our mind and

brain is controlled by the use of our hand and arm, while vice-versa also the use and motion of

our upper extremity is controlled by the CNS.

Despite the interest of physicians, athletes and biomechanists in human arm motion since many

decades, several open questions still exist, e.g. the control mechanism behind hand and arm

motion mostly remains obscure, as their control is done unconsciously by the CNS. Moreover,

the function of the tendon network in the hand and fingers is not yet completely explained, due

to the large variability in muscle insertions and their arrangement. Like in most biomechanical

systems there is also a redundancy of muscles, i.e. there are more muscles involved in a motion

than degrees of freedom are present.

This work addresses inter alia the question, how such motions are controlled by the CNS. For

this purpose, a simulation method is developed in order to describe biomechanical motions as

optimal control problems with muscle actuation. Thus, a deeper understanding of anatomical

structures forming the upper extremity is necessary to build a modelling framework representing

important physiological aspects. During the next sections, a brief overview on the anatomy

of the human arm and the index finger is given, as both are investigated later in this work

with biomechanical models. The most important muscles working in the upper extremity are

described in the following sections as well. Knowing their typical path and insertion points

is indispensable to treat the aspect of muscle redundancy in biomechanical systems within a

7

Page 30: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

2 Anatomy of the human upper extremity

mechanical model.

The mechanical and dynamical characteristics of muscles are discussed in the last section of

this chapter. Based on those fundamentals of muscle behaviour, the Hill-type muscle models

are implemented within the later part of the work.

2.1 The human arm

The human arm is responsible for balanced equilibrium during walking or running and due

to its large motion abilities, it is, together with the hand, an important tool for grasping or

reaching tasks. In a medical or biomechanical context, human motion is described with the help

of medical terminology for directions and orientations. In Figure 2.1 the three major planes,

dividing the human body in certain areas, are illustrated, while Figure 2.2 explains the most

important medical directions used within this work.

Figure 2.1: Anatomical notation of the three major planes of the human body.

The sagittal plane is the symmetry plane of a body, separating the left and the right side.

Orthogonal to the saggital plane and running through the heart, the coronal plane divides the

body into a ventral (front) and a dorsal (back) part. The third plane is called transverse plane

and is orientated orthogonal to the other two planes. The intersection point of all three planes

is located approximately in the center of mass of a body.

8

Page 31: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

2.1 The human arm

Figure 2.2: Schematic illustration of anatomical directions within the human body.

The proximal end of the upper arm is connected to the trunk via the shoulder. The shoulder

is a rotational joint with three degrees of freedom, yielding the largest range of motion of all

joints in the human body. In the biomechanical literature, the range of motion is described via

the rotation about three axes, see left hand part of Figure 2.3.

Figure 2.3: Schematic illustration of joint axes within the human arm.

Rotation about the anterior-posterior axis, running in parallel to the transversal and the saggital

plane, enables abduction and adduction motions of the arm. Around the transversal axis

running through both shoulders anteversion and retroversion motions are possible. The vertical

9

Page 32: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

2 Anatomy of the human upper extremity

axis is defined by the cut of sagittal and frontal plane. The abducted arm can be rotated around

this axis in an anterior or posterior position. The range of the latter is thereby depending on

the forearm configuration. For a pronated forearm, a complete rotation around the transverse

axis is not possible without an abduction of the shoulder. To perform a full ergonomic circle

without an abduction motion in the shoulder, there has to be a voluntary supination of the

forearm, which is a typical motion in freestyle swimming or throwing.

Figure 2.4: The elbow, taken from [Till 05] by courtesy of Springer Heidelberg.

The upper arm is connected to the forearm via a rather complicated joint – the elbow, as

illustrated in Figure 2.4. In contrast to the single upper arm bone (humerus), the forearm

consists of two bones, the radius and the ulna. The elbow has two degrees of freedom; flex-

ion/extension as well as pronation/supination (palm down – palm up) motions are possible. A

rotation around the longitudinal axis is enabled by the formation of the two forearm bones in

the elbow joint. From an anterior view, they are in parallel in a supinated forearm position.

When moving the forearm into a pronated position, the ulna and radius bones realise this

motion by crossing each other. Further on, the flexion/extension potential of the elbow goes

from neutral outstretched position up to an angle of 30◦ between upper arm and forearm. The

combination of flexion/extension and pronation/supination in the elbow enables for example

the transport of nourishment to the mouth. The motion ability of upper arm and forearm are

therefore also denoted as a compass construction [Kapa 92].

At the distal end of the forearm, the hand is connected via the wrist, which consists of a

complex composition of several parallel and serial joints. An illustration of the joint axes and

the most important medical directions in the human hand is given in Figure 2.5. Numerous

ligaments keep the carpal bones together and constrain the motion to palmar flexion/dorsal

extension and radial abduction/ulnar abduction.

10

Page 33: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

2.2 The index finger

Figure 2.5: Schematic illustration of anatomical directions within the right human hand (palm down).

A combination of both degrees of freedom is called circumduction. The joint angle in the

wrist is restricted to [−80◦, 80◦] for flexion/extension motions, and to [−40◦, 40◦] for abduc-

tion/adduction motion, which strongly depends on the individual ligament structure and duc-

tility. The length of a typical humerus varies in the specimens shown in [Murr 00] between

[0.29m, 0.34m], radius and ulna length lie between [0.22m, 0.29m]. The circumference of the

upper arms in their study is in [0.14m, 0.48m], yielding a radius between [0.02m, 0.08m]. Typi-

cal hand dimensions are for example reported in [Buch 92]. They examine hand lengths between

[0.17m, 0.20m| and widths between [0.07m, 0.09m].

2.2 The index finger

The index finger consists of three phalanxes, phalanx proximalis, media and distalis, that are

connected by different joints, as illustrated in Figure 2.6 [Till 05]. These bones and joints

have been analysed in several publications with respect to their shape and dimension. For

example in [Buch 92] a method has been developed to derive several finger dimensions as a

function of external hand measurements. The metacarpo-phalangeal joint (MCP) connecting

the metacarpal bone with the first phalanx is a spherical joint with three rotational degrees of

freedom of which only two, adduction/abduction and flexion/extension, can be actively con-

trolled by muscles and tendons. The third rotational degree of freedom in this joint, rotation

about the longitudinal axis of the phalanx, can only be passively activated as for example in

case of crooked pressing of buttons. The proximal inter-phalangeal joint and the distal inter-

phalangeal joint combining the medial and distal phalanxes to the finger allow rotation around

one axis to perform flexion/extension, only.

11

Page 34: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

2 Anatomy of the human upper extremity

Figure 2.6: The bones and joints of the right human index finger, taken from [Till 05] by courtesy of Springer

Heidelberg.

2.3 Muscles of the human upper extremity

2.3.1 Muscles of the finger

Within this first step towards structure preserving optimal control simulations of muscle ac-

tuated motions, the actuation of the finger is simplified by neglecting the so called extensor

mechanism. This stabilisation process of the dorsal aponeurosis by the small interior hand mus-

cles is a complex switching procedure between certain tendon paths, see for example [Vale 07],

that is not yet completely understood by physicians. Moreover, there exist various different

arrangements of this tendon structure in different subjects [Schm 03], i.e. a patient specific

model is probably required [Sant 06].

Thus, in the first finger model with muscle actuation, only the three most important muscles

responsible for a finger motion from extension to flexion are included. According to [Till 05],

there are mainly three muscles involved in grasping motion. The muscle responsible for exten-

sion of the finger is called musculus extensor digitorum, while the flexion motion of the finger

is generated by two muscles, musculus flexor digitorum superficialis, inserting at the medial

phalanx and musculus flexor digitorum profundus, inserting on the distal phalanx.

In the later part of the work, this model is exemplarily extended by the inner hand muscles

(musculus interossei and lumbricales) and the complicated tendon network of the extensor

mechanism, including the dorsal aponeurosis, see Figure 2.7. In this model, the force distribu-

tion to the single tendons is still simplified. Nevertheless, a more realistic force computation

can be easily implemented with a three dimensional force balance at each node of the tendon

network. Still, the switching procedure between the different tendon paths remains an open

12

Page 35: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

2.3 Muscles of the human upper extremity

future task.

Figure 2.7: The muscle and tendon network of the right human index finger, taken from [Till 05] by courtesy of

Springer Heidelberg.

2.3.2 Muscles of the arm

Altogether, the human arm is actuated by a large number of muscles, as illustrated in Fig-

ure 2.8. Generally, they can be subdivided into the muscles of the shoulder girdle, the upper

arm muscles, the forearm muscles and the intrinsic hand muscles. Within this work, the focus

is on muscles that actuate the elbow and the fingers, thus shoulder muscles are not discussed.

Among a large number of muscles around the elbow, according to [Kapa 92, Till 05, Murr 95,

Murr 00], the muscles that mainly actuate elbow motion are musculus biceps, musculus bra-

chioradialis, musculus extensor carpi radialis longus, musculus brachialis, musculus pronator

teres, musculus supinator and musculus triceps. As these muscles are included in the model of

the human arm within the later part of this work, their characteristics are explained briefly in

the following.

Musculus biceps brachii The most known muscle of the human arm is probably the musculus

biceps brachii. Located at the front of the arm (from an anterior point of view), this muscle is

responsible for flexion of the elbow. The biceps – as the name implies – consists of two muscle

heads with their origin on the scapula, i.e. the biceps runs over two joints, the shoulder and the

elbow. Because of the insertion on the radius, the biceps is able to induce supination motions

as well.

13

Page 36: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

2 Anatomy of the human upper extremity

Musculus brachioradialis As indicated by the name, the brachioradialis muscle’s origin is at

the radial side of the humerus, while it inserts on the radius bone. Mainly, the brachioradi-

alis contributes to flexion of the elbow, but it can also contribute to pronation or supination

motions, depending on the actual configuration of the forearm. If the forearm is in a highly

pronated position, it serves as a supinator, vice-versa in a supinated forearm position it supports

pronation motion.

Musculus extensor carpi radialis longus Covered by the brachioradialis muscle, the musculus

extensor carpi radialis longus is contributing to elbow flexion and extension of the wrist as well

as slightly to an abduction motion of the hand. It’s origin is on the lower third of posterior front

of the humerus. This muscle additionally runs over the wrist and inserts on the metacarpal

phalanx of the index finger.

Musculus brachialis Together with the biceps muscle, the musculus brachialis is the muscle

most responsible for elbow flexion. The origin of the brachialis muscle is located slightly distal

at the anterior side of the humerus bone. In contrast to the biceps, the brachialis inserts on

the ulnar, i.e.hardly any actuation of supination or pronation motion is possible.

Musculus pronator teres Wrapped around the proximal part of the ulna, the pronator teres

muscle induces rotation around the longitudinal axis of the forearm. Its origin is on the distal

part of the humerus, while the insertion point is located on the ulna. As the muscles contributing

to pronation motion are rather slight, they are often supported by abduction motions of the

shoulder.

Musculus supinator The musculus supinator is wrapped around the the radius and represents

the direct antagonist to the pronator teres muscle. Supported by the biceps muscle it induces

supination motion.

Musculus triceps The musculus triceps is the only muscle that extends the elbow. Similar to

the biceps, it has several muscle heads of whom two have their origin on the posterior front of

the humerus. The third muscle head has its origin on the scapula and is therefore acting over

two joints. All three muscle heads insert on the olecranon. This boney bulge serves as a lever

arm for the muscle force, ensuring a good motion capability even if the elbow is outstretched.

As one of the muscles origins is on the scapula, its strength depends on the joint angle of the

shoulder.

14

Page 37: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

2.3 Muscles of the human upper extremity

Figure 2.8: The muscles of the human arm, taken from [Till 05] by courtesy of Springer Heidelberg.

15

Page 38: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

2 Anatomy of the human upper extremity

2.4 Mechanical characteristics of skeletal muscles

From the mechanical point of view, there exist two types of muscles within the human muscular

system. Smooth muscles are responsible for the function and form of organs, while the trans-

verse muscles are voluntary muscles, that are controlled by the central nervous system. A special

mixed form of transverse and smooth muscle properties are combined within the heart muscle.

The main focus of this work is on skeletal muscles, which are typically transverse muscles. The

name ’transverse’ is related to their appearance in an optical microscope, where they show a

typical periodical transverse pattern. Within this work, the focus is on transverse muscles and

their contraction dynamics, which are for example extensively discussed in [Link 07, Zaja 89],

where most of the theory presented here is explained in detail.

Figure 2.9: Schematic overview of characteristic sarcomere length changes from full contraction (a) to full extension

(d).

To induce a motion, the muscles are excited by the central nervous system (CNS) and the

generated force is transmitted to the bones via tendons [Zaja 89]. Hence, the lever arm and

the force directions of the muscles depend on the insertion point of its tendons as well as on

the actual joint angle, which results in a nonlinear gearing behaviour.

In addition to that, within biomechanical systems typically more muscle forces are involved to

actuate a joint than degrees of freedom are present, i.e. such systems are often over-determined.

Moreover, the muscle force itself depends on the length of the muscle and on its contraction

velocity. The inner architecture of a muscle is formed by several muscle fibre bundles and

each of them individually consists of single muscle fibres. Muscle fibres themselves are a serial

16

Page 39: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

2.4 Mechanical characteristics of skeletal muscles

arrangement of several sarcomeres, which form the smallest functional unit of a muscle. As the

composition of muscles can be considered as a homogeneous set of these elements [Zaja 89], the

overall muscle behaviour is usually explained by the behaviour of a single sarcomere, of which a

schematic is illustrated in Figure 2.9 at four characteristic lengths. A sarcomere mainly consists

of proteins like actin, myosin and titin. Generally, a sarcomere can contract with a series of

stroke-like motions of the myosin arms. Therewith, contractile force is produced due to the

cyclic connection of the myosin arms on the actin, whereby ADP (adenosine diphosphate) is

decomposed.

The force that can be generated by a sarcomere depends on how much of the myosin arms can

connect to the actin surrounding. There exists an optimum, where all of the arms are able to

connect (Figure 2.9 (b)). On the one hand, further contraction leads to overlays of the actin

surrounding in the middle and the titin spring on the outside of the sarcomere (Figure 2.9 (a)),

preventing the connection between actin and myosin and therewith reducing the created force.

On the other hand, a stretching of the sarcomere from this optimal position leads to an elon-

gation of the titin spring and an area in the middle, where no myosin arms can connect to the

actin (Figure 2.9 (c)). The force generating capability is decreasing with further elongation of

the sarcomere until it is stretched such that no myosin arms at all can connect to the actin and

the produced force is zero (Figure 2.9 (d)). This yields a piecewise linear force-length relation

as illustrated in Figure 2.10, with certain lengths l1, l2, l3, l4 ∈ R of the sarcomere that are

used later in this work within a Hill-type muscle model.

Figure 2.10: Example of a force-length behaviour of a sarcomere with the characteristic lengths l1, l2, l3, l4 ∈ R

used later in this work within a Hill-type muscle model.

17

Page 40: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

2 Anatomy of the human upper extremity

Muscle force production can theoretically be divided into two certain states of the force produc-

tion. An isometric force production induces a motion without a length change of the muscle.

This is realised by a connection and de-connection of the myosin arms at the same location

on the actin for a certain time. Moreover isotonic motions are also possible, meaning that the

muscle contracts while producing a steady force. In reality those two states often occur in a

mixed form.

In addition to the force-length relation of the muscle force, there also exists a force-velocity

relation, which has been first investigated by [Hill 38]. At slow concentric contractions, the

muscles can develop large forces, while fast contracting muscles are only able to generate small

force. For eccentric muscle motions, i.e. the muscle is stretched while activated, the opposite

holds and fast extensions yield large muscle forces. The inverse relation describes the possible

contraction velocities which vice-versa depend on the loading of a biomechanical system. If

the muscle is contracting, the possible contraction velocity vm ∈ R reduces hyperbolically for

increasing loads. This is also called a Hill-hyperbolic behaviour, which is described with a

force-velocity factor fv ∈ R, see Figure 2.11. Due to this opposite behaviour in contraction

and extension motions, there exists an optimal point for the power of the muscle at a certain

velocity.

−1 −0.5 0 0.5 1

0

0.5

1

1.5

Figure 2.11: Example of a force-velocity behaviour of a sarcomere normed to the maximal possible contraction

velocity.

18

Page 41: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

3 Continuous dynamics of biomechanical

structures

The basis for investigating the motion of biomechanical systems with numerical methods is

to describe their dynamic behaviour in the time-continuous setting. In contrast to a basic

description with Newtons laws, classical mechanics descriptions concentrate on the energy of

the system. Generally one distinguishes between Lagrangian and Hamiltonian formulations.

While Lagrangian mechanics use variational principles to describe Newton’s fundamental law

of force balance in an arbitrary dimensional space by using the difference between kinetic and

potential energy, the Hamiltonian formulation is based on the total energy of a mechanical

system. The simulation of voluntary biomechanical motions requires the implementation of

an actuation by forces. Within this work both joint torque actuation as well as muscle force

actuations are examined, implying the need for a description of forced dynamical systems.

Furthermore, modelling biomechanical systems by means of multibody systems usually yields

constrained systems, e.g. bones are connected by joints that restrict their relative degrees of

freedom. In reality those constraints are realised with strong ligaments or formations of bones.

The structure, ductility and arrangement of ligaments and bones show a large variety between

different subjects, which is difficult to implement within numerical multibody simulations. For

simplicity, all constraints studied within this work are assumed to be stiff and inelastic. In this

chapter, both the Lagrangian and the Hamiltonian formulations are briefly explained, based

on descriptions given in [Kuyp 97, Mars 99, Mars 01, Leye 06, Leye 08]. Moreover, special

characteristics of mechanical systems like energy consistency and the meaning of Noether’s

theorem are considered, likewise based on the textbooks [Kuyp 97, Mars 99].

3.1 Euler-Lagrange equations

A common way to analytically describe the motion of multibody systems in time t is Lagrangian

mechanics. The Euler-Lagrange equations generalise Newton’s fundamental laws and circum-

vent issues related to coordinate transformations or to the influence of constraint reactions on

the equations of motion. Let a k-dimensional mechanical system within a bounded time interval

[t0, t1] be described by a configuration variable q(t) ∈ Rk and a velocity q(t) ∈ Rk. The La-

grangian L ∈ R of this system is given by the difference of its kinetic energy T (q) =1

2qT ·M · q,

including the constant mass matrix M ∈ Rk×k of the mechanical system, and its potential en-

ergy V (q)

L(q, q) = T (q)− V (q) (3.1)

Note that within this work, we focus on a multibody formulation involving a constant mass

matrix, which yields advantages in the numerical behaviour. Then the action is defined as

19

Page 42: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

3 Continuous dynamics of biomechanical structures

S =∫ t1

t0L(q, q) dt and Hamilton’s principle states that a real trajectory can be found as a

stationary point of the action. This means that for all variations δq(t) ∈ TQ that vanish at

the end points, i.e. δq(t0) = δq(t1) = 0,

δS = δ

∫ t1

t0

L(q, q) dt = δ

∫ t1

t0

∂L(q, q)

∂q· δq +

∂L(q, q)

∂q· δq dt = 0 (3.2)

must hold. Using δq =d

dtδq, this leads to the Euler-Lagrange equations

∂L(q, q)

∂q−

d

dt

(∂L(q, q)

∂q

)= 0 (3.3)

Further on, the system is assumed to be actuated by gravity and external forces f ∈ Rk as

for example muscle forces or joint torques. Then Hamilton’s principle is augmented to the

Lagrange-d’Alembert principle by

δS = δ

∫ t1

t0

L(q, q) dt+

∫ t1

t0

f(q, q) · δq dt

= δ

∫ t1

t0

∂L(q, q)

∂q· δq +

∂L(q, q)

∂q· δq dt+

∫ t1

t0

f (q, q) · δq dt = 0 (3.4)

which finally yields the forced Euler-Lagrange equations.

∂L(q, q)

∂q−

d

dt

(∂L(q, q)

∂q

)+ f(q, q) = 0 (3.5)

The motion of multibody systems is frequently constrained, either due to the rigid body for-

mulation resulting in internal constraints or due to external constraints coming from joints in

between the bodies or from fixations in space. Restricting the motion of a k-dimensional system

by m holonomic constraints can be formulated requiring g(q) = 0, g : Rk → Rm. This means

that the degrees of freedom of the system are reduced to k−m. Within biomechanical systems,

such geometrical constraints are achieved by ligaments around joints limiting their rotation

abilities or preventing luxation. Naturally, such biomechanical constraints are rather elastic

and of limited strength, but for simplicity this is not included within the present work. In

order to prevent a dynamical system from violating the external constraints, constraint forces

or – depending on the joint type – constraint torques summarised in f c ∈ Rk, are present in

the joints. D’Alembert’s principle states that for any displacement δq, the work of the con-

straint forces is zero f c · δq = 0. Likewise, it is known that G · δq = 0, introducing the Jacobi

matrix of the constraints G(q) = Dg(q) ∈ Rm×k. Consequently, there exist λ ∈ Rm such

that GT · λ = f c. These λ are called Lagrange multipliers and have the physical meaning of

generalised constraint forces of the dimension m.

Searching for an extremum of the action integral over the constrained Lagrangian and the

virtual work of the actuating forces

δS = δ

∫ t1

t0

[L(q, q)− gT (q) · λ

]dt+

∫ t1

t0

f(q, q) · δq dt

= δ

∫ t1

t0

∂L(q, q)

∂q· δq +

∂L(q, q)

∂q· δq −DgT (q)δq · λ dt+

∫ t1

t0

f(q, q) · δq dt = 0

(3.6)

20

Page 43: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

3.2 Hamilton’s equations

yields the constrained forced Euler-Lagrange equations

∂L(q, q)

∂q−

d

dt

(∂L(q, q)

∂q

)−GT (q) · λ+ f (q, q) = 0

g(q) = 0 (3.7)

Altogether (3.7) consists of k +m equations to describe the motion of the present mechanical

system, which are also frequently denoted as Lagrange equations of motion of the first kind.

More precisely those equations are second order differential-algebraic equations of index three,

i.e. three derivations are required during the transformation in a system of ordinary differential

equations.

3.2 Hamilton’s equations

The Legendre transform of a given Lagrangian yields the conjugate momentum

p =∂L

∂q= M · q ∈ R

k (3.8)

Therewith, the Hamiltonian H is defined as

H(q,p) = p · q − L(q, q) (3.9)

Inserting (3.1) with T =1

2p ·M−1 · p this results in

H(q,p) = p · q −

(1

2p ·M−1 · p− V (q)

)(3.10)

A reformulation yields

H(q,p) =1

2p ·M−1 · p+ V (q) (3.11)

giving a further definition of the Hamiltonian as the total energy of a conservative system. The

total derivative of the Hamiltonian reads

dH =∂H

∂p· dp+

∂H

∂q· dq (3.12)

Using the definition given in (3.9), this can also be written as

d (p · q − L(q, q)) = q · dp+ p · dq −∂L

∂q· dq −

∂L

∂q· dq −

∂L

∂tdt (3.13)

A comparison of coefficients yields the partial derivatives of the Hamiltonian

∂H

∂p= q + p ·

∂q

∂p−

∂L

∂q·∂q

∂p= q

∂H

∂q= p ·

∂q

∂q−

∂L

∂q−

L

∂q·∂q

∂q= −

∂L

∂q∂H

∂t=

∂L

∂t(3.14)

21

Page 44: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

3 Continuous dynamics of biomechanical structures

With the definition of the conjugate momentum (3.8), Hamilton’s equations of motion read

q =∂H(q,p)

∂p, p = −

∂H(q,p)

∂q(3.15)

which form, together with the initial conditions q(t0) = q0 and p(t0) = p0, a 2k-dimensional

system of first order differential equations. Hamilton’s equations of motion are in this form

equivalent to the Euler-Lagrange equations (3.3) being a k-dimensional system of second order

differential equations.

As within this work the focus is more on the Lagrangian formalism, the reader is referred

to [Mars 99, Leye 06] for further details on the Hamiltonian formalism, in particular for con-

strained systems.

3.3 Energy conservation

The derivative of the total energy of a mechanical system with respect to time reads

dH

dt=

d

dt(p · q − L) =

d

dt

(∂L

∂q· q − L

)(3.16)

If the Lagrangian of a mechanical system is invariant with respect to a time translation t → t+a,

this obviously means∂L

∂t= 0, and therewith

dL

dt=

∂L

∂q· q +

∂L

∂q· q =

d

dt

∂L

∂q· q +

∂L

∂q· q =

d

dt

(∂L

∂q· q

)(3.17)

Inserting (3.17) in (3.16) yields

dH

dt= 0 (3.18)

meaning that the total energy, i.e. the Hamiltonian of a mechanical system, that is not explicitly

depending on time, is conserved.

3.4 Noether’s theorem

Noether’s theorem states that there is a conserved quantity related to a differentiable symmetry

(invariance) of the action of a physical system [Noet 18]. For a given coordinate transformation

q = q(q, α) ∈ Rk, that is invertible and continuously differentiable with respect to a parameter

α ∈ R, a Lagrangian in transformed coordinates can be defined as

L(q, ˙q, α) = L (q(q, α), q(q, α)) (3.19)

22

Page 45: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

3.4 Noether’s theorem

and the partial derivative of L(q, ˙q) with respect to α is given by

∂L

∂α=

∂L

∂q·∂q

∂α+

∂L

∂q·∂q

∂α

=d

dt

∂L

∂q·∂q

∂α+

∂L

∂q·d

dt

∂q

∂α

=d

dt

[∂L

∂q·∂q

∂α

](3.20)

If the Lagrangian is invariant with respect to this coordinate transformation, it follows that

L (q, q) = L(q, ˙q) and therewith∂L

∂α= 0 for all α and in particular for α = 0. Consequently,

this yields Noether’s theorem.

Theorem 3.4.1 (Noether’s theorem) The momentum map

J(q, q) =∂L

∂q·∂q

∂α|α=0 (3.21)

is conserved, if the Lagrangian is invariant with respect to the invertible continuously differ-

entiable coordinate transformation q = q(q, α). In particular this means that any differen-

tiable invariance of the Lagrangian of a physical system has a corresponding conservation law

[Noet 18].

3.4.1 Linear momentum

Let the configuration variable q of a mechanical system be translated in direction of a unit

vector uv , such that q = q+αuv. If the Lagrangian of the system is invariant with respect to

that translation, i.e. L(q − αuv, q) = L(q, q), it results from (3.21) that

J(q, q) =∂L

∂q·∂q

∂α= p · uv (3.22)

This means that the linear momentum in direction of uv is conserved.

3.4.2 Angular momentum

Let there be a rotation of a mechanical system around a unit axis ua of the angle α. Then the

configuration variable is given by q = R(αua) · q with the rotation matrix

R(αua) = exp(αua) ∈ SO(3). Herein ua denotes the skew symmetric matrix

ua =

0 −ua3 ua2

ua3 0 −ua1

−ua2 ua1 0

(3.23)

and the rotation matrix can be computed evaluating the exponential map with Rodrigues’

formula

R(αua) = exp(αua) = I3×3 + sin(‖α‖)ua + (1− cos(‖α‖)) (ua ⊗ ua − I3×3) (3.24)

23

Page 46: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

3 Continuous dynamics of biomechanical structures

If the Lagrangian of the system is invariant with respect to that rotation, i.e.

L(R−1(αua) · q,R−1(αua) · q) = L(q, q), then the momentum map given by (3.21) reads

J(q, q) =∂L

∂q·∂q

∂α= p ·

d

dα(R(αua) · q) |α=0

= p · (ua · q) = ua · (q × p) (3.25)

representing the angular momentum around the axis ua being conserved.

3.5 Null space method

If a mechanical system is subject to holonomic constraints, then not only the configuration is

constrained, but also constraints on the velocity level are present. Those ’hidden’ constraints

appear by temporal differentiation of the constraint function g(q), i.e.

G(q) · q = 0 (3.26)

This means, for every q the basis vectors of the tangent space TqC form a null space matrix

P (q) ∈ Rk×(k−m) with the property

range(P (q)) = null(G(q)) = TqC (3.27)

A premultiplication of (3.7) with the transposed nullspace matrix consequently yields

P (q)T ·

[∂L(q, q)

∂q−

d

dt

(∂L(q, q)

∂q

)+ f(q, q)

]= 0

g(q) = 0 (3.28)

Therewith, the constraint forces are eliminated from the equations and the size of the system

is reduced to k. Furthermore, this can also be interpreted with d’Alembert’s principle stating

that the work of the constraint forces is zero.

3.6 Reparametrisation in generalised coordinates

In order to further reduce the size of the system illustrated in (3.28), it is often possible to use

a reparametrisation of the constraint manifold F : U ⊆ Rk−m → Rk with the independent

generalised coordinates u ∈ U , such that g(q) = g(F (u)) = 0. As the constraints are fulfilled

automatically, the size of the system reduces to k −m, which is the minimal possible size and

the equations of motion read

DF (u)T ·

[∂L(q, q)

∂q−

d

dt

(∂L(q, q)

∂q

)+ f (q, q)

]= 0 (3.29)

This is equivalent to a formulation of the equations of motion in generalised coordinates u and

generalised forces τ[∂L(u, u)

∂u−

d

dt

(∂L(u, u)

∂u

)+ τ (u, u)

]= 0 (3.30)

24

Page 47: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

4 Discrete dynamics of biomechanical structures

Usually it is not possible to solve the equations of motion of a dynamical system analytically.

Thus, their solutions have to be approximated by means of a time discretisation procedure.

During the last centuries, lots of numerical methods have been developed since the first approach

by Euler in 1768.

A key difference between such methods is the stage at which the discretisation takes place.

In contrast to numerical integrators that rely on the discretisation of the ordinary differential

equations of motion, as illustrated for example in (3.30), variational integrators start with a

discretisation somewhat earlier in the derivation process, namely at the variational principle

itself. As a consequence, certain characteristics of the real, analytical system are inherited to

the discrete system, like for example energy or angular momentum consistency.

As the optimal control method used within this work relies on a structure preserving discrete

mechanics formulation, a brief overview on the derivation of such a variational integrator is

given within this chapter. A more detailed formulation and further information on this topic

can be found for example in [Mars 99, Mars 01, Leye 08, Leye 10].

4.1 Structure preserving integrator for dynamical systems

The investigation of a dynamical system via numerical simulation requires a discretisation of

the problem. Commonly, this discretisation is done via discretising the equations of motion. To

achieve an integrator with structure preserving characteristics, a discrete version of the equa-

tions of motion can be achieved by discretising the variational principle (3.6), see for example

[Mars 01] and [Leye 08]. Due to the discretisation at an earlier level, we preserve the structure

of the physical system, i.e. the discrete simulation results exactly represent the behaviour of the

analytical system concerning the consistency of momentum maps or symplecticity and show a

good energy behaviour, described in detail for example by [Mars 01].

Within the discrete formulation, all continuous quantities have to be approximated with dis-

crete counterparts. In this work, the approximations of the continuous configuration q(tn) and

Lagrange multipliers λ(tn) at the discrete time node tn are denoted by qn and λn, respectively.

Let the system be discretised with a constant time step ∆t ∈ R into N time nodes. The

action integral is approximated over a time interval [tn, tn+1] using the discrete Lagrangian

Ld : Q×Q → R

Ld(qn, qn+1) ≈

∫ tn+1

tn

L(q, q)dt (4.1)

which is in this work approximated with finite differences for the kinetic energy and a midpoint

rule for the potential energy

Ld(qn, qn+1) =1

2∆t(qn+1 − qn)

T ·M · (qn+1 − qn)−∆t V

(qn+1 + qn

2

)(4.2)

25

Page 48: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

4 Discrete dynamics of biomechanical structures

It is well known that variational integrators based on a discrete Lagrangian like (4.2) are second

order convergent [Leye 11]. An approximation of the scalar product of the discrete constraint

function gd : Rk → Rm, gd(q) = ∆tg(q) and the corresponding Lagrange multipliers λ ∈ Rm

is given by

1

2gTd (qn) · λn +

1

2gTd (qn+1) · λn+1 ≈

∫ tn+1

tn

gT (q) · λ dt (4.3)

The virtual work of external non-conservative forces is approximated by

f−

n · δqn + f+n · δqn+1 ≈

∫ tn+1

tn

f · δq dt (4.4)

Using these discretisations, the discrete version of the constrained Lagrange-d’Alembert prin-

ciple reads

δ

N−1∑

n=0

Ld(qn, qn+1)−∆t

2gT (qn) · λn −

∆t

2gT (qn+1) · λn+1 +

N−1∑

n=0

f−

n · δqn + f+n · δqn+1 = 0 (4.5)

for all variations {δqn}Nn=0 and {δλn}

Nn=0 with δq0 = δqN = 0 and δλ0 = δλN = 0. With a

straight forward calculation one gets

δSd =δqT0 ·D1Ld(q0, q1) +

N−1∑

n=1

δqTn ·[D2Ld(qn−1, qn) +D1Ld(qn, qn+1)

]

+ δqTN ·D2Ld(qN−1, qN)

(δqT

0 ·∆t

2GT

d (q0) · λ0 +N−1∑

n=1

δqTn ·∆tGT (qn) · λn

+δqTN ·

∆t

2GT

d (qN) · λN

)

(δλT

0 ·∆t

2gTd (q0) +

N−1∑

n=1

δλTn ·∆tg(qn)

+λTN ·

∆t

2gTd (qN)

)

+ δN−1∑

n=0

f−

n · δqn + f+n · δqn+1 = 0 (4.6)

which finally leads to the discrete constrained forced Euler-Lagrange equations of motion

D2Ld(qn−1, qn) +D1Ld(qn, qn+1)−∆tGT (qn) · λn + f+n−1 + f−

n = 0

g(qn+1) = 0(4.7)

with D1 and D2 denoting the differential operator with respect to the first and second argument

of Ld and the discrete constraint forces involving the constraint Jacobian

G(q) = Dg(q) ∈ Rm×k. The dimension of this discrete system of equations is – as in the

continuous case – (k + m). The key feature to notice here is that (4.7) is not obtained via

discretising the equations of motion. Instead it is obtained via a discrete variational principle.

This yields structure preserving properties like symplecticity and consistency of momentum

maps as well as a good energy behaviour, explained in more detail in the following sections.

26

Page 49: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

4.1 Structure preserving integrator for dynamical systems

4.1.1 Discrete Legendre transform

So far, velocities are approximated with finite differences within the discrete Lagrange function,

in particular to describe the kinetic energy of the system. Such a velocity formulation does

not fulfil the so called ’hidden’ constraints, i.e. the temporal derivative of the constraints. The

evolution of velocities that do fulfil these hidden constraints can be found using a discrete

Legendre transform defined as

p−

n = −D1Ld(qn, qn+1) +∆t

2GT (qn) · λn − f−

n (4.8)

p+n = D2Ld(qn−1, qn)−

∆t

2GT (qn) · λn + f+

n−1 (4.9)

Consequently, the discrete time-stepping scheme given in (4.7) enforces the matching of mo-

menta p+n − p−

n = 0 at each time node.

4.1.2 Energy behaviour

Using a symplectic-momentum time-stepping scheme as illustrated in (4.7), the energy of the

system is not represented in an exactly consistent way. However, it can be shown that the

Hamiltonian is only oscillating around the real value and no numerical drift can be found, see

for example [Hair 99, Reic 99]. This can also be expressed as the asymptotic average of the

real Hamiltonian being preserved over exponentially long times.

4.1.3 Discrete Noether’s theorem

Similar to the continuous case (see Section 3.4), an invertible, continuously differentiable co-

ordinate transformation is given by qn = qn(qn, α) and qn+1 = qn+1(qn, α). If the discrete

Lagrangian is invariant with respect to such a coordinate transformation, then the discrete

momentum map

Jd(qn, qn+1) = 〈p+n ,

δqn+1

δα|α=0〉 = 〈p−

n ,δqn

δα|α=0〉 (4.10)

is conserved along the solution of the discrete forced constrained Euler-Lagrange equations. A

more detailed derivation with proof can be found in [Mars 01].

4.1.4 Discrete null space method

To save computational effort and to eliminate conditioning issues related with the Lagrange

multipliers, a reduction of the system to a lower dimension is done by pre-multiplying (4.7)

with a discrete null space matrix P (qn) fulfilling

range (P (qn)) = null (G(qn)) (4.11)

as described by [Bets 06]. Therewith, the constraint forces and with them the unknown La-

grange multipliers vanish from the discrete equations of motion (4.7) and the system’s dimension

27

Page 50: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

4 Discrete dynamics of biomechanical structures

is reduced to k

P T (qn) ·(D2Ld(qn−1, qn) +D1Ld(qn,F (un+1, qn)) + f+

n−1 + f−

n

)= 0

g(qn+1) = 0 (4.12)

4.1.5 Nodal reparametrisation

A further reduction of the system to its minimal possible dimension can be achieved by express-

ing qn+1 in terms of local discrete generalised coordinates un+1 ∈ U ⊆ Rk−m, such that the

constraints are fulfilled [Bets 06]. Consider a constraint manifold C ={qn ∈ Rk | g(qn) = 0

},

where qn can be expressed via the local reparametrisation map F : U ⊆ Rk−m×Rk → C, such

that it fulfils the constraints

qn+1 = F (un+1, qn) with g(qn+1) = g(F (un+1, qn)) = 0 (4.13)

Using this nodal reparametrisation reduces the system to k −m equations

P T (qn) ·(D2Ld(qn−1, qn) +D1Ld(qn,F (un+1, qn)) + f+

n−1 + f−

n

)= 0 (4.14)

Remark 4.1.1 Note that (4.14) is equivalent to (4.7), thus it is structure preserving. The

symplectic-momentum method permits structure preserving simulation, i.e. the simulation re-

sults of the dynamical system are consistent in angular momentum and symplecticity and for

linear systems, the results are also consistent in energy. For nonlinear systems, the symplectic-

momentum method still has a good energy behaviour. This is what clearly distinguishes the

symplectic-momentum method from commercially available integrators which are available in

Matlab/Simulink.

4.2 Matlab/Simulink integrators

Throughout this work, the results of the symplectic-momentum method are frequently com-

pared to common Matlab/Simulink integrators, which are briefly described in this chapter.

Matlab/Simulink provides several ordinary differential equation (ode) solvers that can be used

during a dynamic simulation to solve the system’s equations of motion. Basically there are two

different solver categories. Fixed step solvers use regular time intervals during a simulation.

The size of these intervals is called step size. Decreasing this step size increases accuracy but

also increases computational effort. Variable step solvers change the step size automatically

depending on a criterion related to the state of the model and save computational effort by

avoiding unnecessary small steps. To be able to easily compare the results to the structure

preserving method, the focus is here on fixed step solvers.

The available fixed step ode solvers in Matlab/Simulink can again be divided into implicit and

explicit integration methods. In this work, the most accurate solvers of both types (ode8 and

ode14x, respectively) are used.

The following descriptions of the used Matlab/Simulink ode solver types are based on the

documentation of [Math 09].

28

Page 51: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

4.3 Numerical example

Explicit fixed-step continuous solver – ode8 As an example for explicit fixed step solvers,

we investigate the solver ode8, which is based on the Dormand-Prince RK8(7) Formula. Matlab

characterises ode8 as the most complicated but also most accurate explicit solver type. The

Dormand-Prince Formula belongs to the embedded Runge Kutta methods and yields a fourth-

order accurate solution. The common variable time step solver ode45 is based on the same

method as the fixed step solver ode8.

Implicit fixed-step continuous solver – ode14x The only available implicit fixed step solver

in Matlab/Simulink is ode14x, which uses a combination of Newton’s method and extrapolation

from the current value to compute the value of a model state at the next time step. The number

of Newton iterations and the order of extrapolation can be specified by the user, the higher the

number of Newton iterations and the higher the extrapolation order, the greater is the accuracy

of that solver. In this work, we use 20 Newton iterations and an extrapolation order of four.

4.3 Numerical example

A simple three body pendulum example is used within this section to illustrate the differences

when using a structure preserving integrator, in particular the symplectic-momentum preserving

integrator, instead of common integrators like the ones available in Matlab/Simulink. The

model consists of three rigid bodies (cylinders) connected with joints as illustrated in Figure 4.1

and activated by gravity.

Figure 4.1: Three-body-pendulum fixed in space and activated by gravity.

The implementation in Matlab/Simulink is done via the SimMechanics Toolbox and parameters

like moments of inertia and masses of the bodies are transferred to the Simulink model by

initialisation with the same parameter file as the calculation with the symplectic-momentum

method. An illustration of the Simulink model is given in Figure 4.2.

29

Page 52: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

4 Discrete dynamics of biomechanical structures

Revolute3

BF

Revolute2

BF

Revolute1

BF

MachineEnvironment

Env

Ground

Body2

CS1

Body1

CS1 CS2

Body

CS1 CS2

Figure 4.2: Matlab/Simulink model of a three-body-pendulum fixed in space and activated by gravity.

The simulation time of 5s is discretised with a constant time step of 10−2s for both methods.

To examine the influence of the time step size, it is reduced in a further simulation to 10−4s for

the Simulink ode8 solver. The solutions of the symplectic-momentum method are illustrated

in green, the solution of the ode8 solver with the larger time step of 10−2s is depicted in red,

the calculation with ode8 and a reduced time step of 10−4s is highlighted in blue.

0 1 2 3 4 5−4

−3

−2

−1

0

1

2

3

ode8 t=10−2s

ode8 t=10−4s

sm t=10−2s

Figure 4.3: Evolution of angular momentum of the three-body-pendulum over time: Simulation using Mat-

lab/Simulink ode8 with a constant time step of 10−2 s (red) and with a constant time step of 10−4 s

(blue) compared to a simulation with the symplectic-momentum integrator with a constant time step of

10−2 s (green).

The evolution of angular momentum over time is depicted in Figure 4.3. During the first

seconds, all three simulations show the same angular momentum evolution, and after a certain

time the simulink solution with the larger time step splits off first. Finally, all three simulations

show a different evolution during the last seconds. As it is known from Noether’s theorem (see

Section 3.4), in the presence of gravity and the absence of further forces, the angular momentum

changes only and exactly according to the actuating torques resulting from gravity. This means,

the change in angular momentum in one time step must be equal to the gravity torques, i.e. the

difference must be zero. An illustration of this difference in every time step of the simulation

is given in the left hand part of Figure 4.4.

30

Page 53: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

4.3 Numerical example

0 1 2 3 4 5−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

ode8 t=10−2s

ode8 t=10−4s

sm t=10−2s

0 1 2 3 4 5−1.5

−1

−0.5

0

0.5

1

1.5x 10

−3

ode8 t=10−2s

ode8 t=10−4s

sm t=10−2s

Figure 4.4: Change in angular momentum of the three-body-pendulum per time step minus activating gravity torques

(left) and zoomed change in angular momentum of the three-body-pendulum per time step minus

activating gravity torques (right): Simulation using Matlab/Simulink ode8 with a constant time step

of 10−2 s (red) and with a constant time step of 10−4 s (blue) compared to a simulation with the

symplectic-momentum integrator with a constant time step of 10−2 s (green).

0 1 2 3 4 5−6

−5

−4

−3

−2

−1

0

1

ode8 t=10−2s

ode8 t=10−4s

sm t=10−2s

Figure 4.5: Evolution of the total energy of the three-body-pendulum over time: Simulation using Matlab/Simulink

ode8 with a constant time step of 10−2 s (red) and with a constant time step of 10−4 s (blue) compared

to a simulation with the symplectic-momentum integrator with a constant time step of 10−2 s (green).

Obviously, this difference is not zero for the Simulink result with the larger time step (red curve)

and a zoom in the y-axis (see right hand part of Figure 4.4) shows that even if for the smaller

time step, the error in angular momentum representation of the simulink integrator is indeed

reduced (blue curve), it is not zero to numerical accuracy, as it is for the symplectic-momentum

result (green curve).

31

Page 54: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

4 Discrete dynamics of biomechanical structures

Moreover, the evolution of the total energy of the system is depicted in Figure 4.5. As no

friction, damping or other physical energy sinks or sources are considered, the sum of kinetic

and potential energy of the real system, represented by its Hamiltonian, is conserved. For the

symplectic-momentum method, we see slight oscillations of the total energy, but no artificial

loss or gain over the simulation time. This is called a good energy behaviour of the integrator.

In contrast to that, the Simulink ode8 integrator shows a significant artificial loss in energy

over simulation time.

This non-structure preserving behaviour can be noticed for every Simulink integrator type in

different markedness. In Section 6.1.1, the influence of this behaviour on muscle actuated

motions is further discussed.

32

Page 55: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5 Rigid multibody formulation

To describe biomechanical structures like bones and joints within dynamical simulations, several

rigid body formulations are conceivable. Generally, one distinguishes between a description in

generalised or in redundant coordinates. The former benefits from naturally being a constraint

free description, as the system moves only in the given degrees of freedom. Thus, the equa-

tions of motion are standard ordinary differential equations, i.e. many kinds of Runge-Kutta

algorithms or multistep methods can be used to solve them. Typical commercial available inte-

grators of that kind can for example be found in [Math 09], whereas ode solvers with structure

preserving characteristics are for example described in [Krys 05, Krys 06, Krys 08, Simo 91].

However, in this formulation a configuration-dependent mass matrix occurs, which may lead to

problems in the time discretisation related to singularities of the mass matrix, see for example

[Leye 06].

A formulation with redundant coordinates is often realised by describing a system as a con-

tinuum with prescribed constant dimensions. Hence, an internal body frame is defined, which

moves with the body and changes its origin and orientation with respect to the global frame ac-

cordingly. Such a redundant formulation is frequently used, see for example [Leye 06, Bets 06,

Leye 08, Leye 10, Ober 09, Mars 99], as it affords certain numerical advantages, in particular by

the avoidance of rotational parameters, angular velocities and accelerations in the Lagrangian

[Leim 04, Bets 98, Bets 01, Leye 08].

A brief description of this rigid body formulation is given in the following section. After that,

kinematic pairs using a spherical, a revolute and a newly developed cardan joint connection are

described using this formulation. A numerical example closes this chapter, where two alterna-

tive descriptions of the nodal reparametrisation are compared. Further details on the rigid body

formulation and on different joint types can be found in [Bets 01, Bets 06, Leye 06, Leye 08,

Leye 10], where a large part of the formulation and notation presented here is introduced.

5.1 Constrained rigid body formulation

If the distance between any two points in a body does never change, and therewith the angle

between any two fibres in a body is constant as well, this body is called a rigid body. With

the kinematic assumptions illustrated in Figure 5.1, the location and orientation of such a rigid

body can be easily described. The location of the centre of mass of a body is given via a vector

ϕ ∈ R3 and its orientation is indicated by an orthonormal body frame fixed in the centre of mass

of the body. This body frame performs the same rotations as the body itself and is, due to the

rigidity of the body, constrained to stay orthonormal. Hence, the directors d1,d2,d3 ∈ R3 span

a rotation matrix R ∈ SO(3). The time dependent location of a point ρrb = ρrbIdI ∈ B ⊂ R3

on this body can be given relative to an orthonormal basis e1, e2, e3 ∈ R3 fixed in space by

x(X, t) = ϕ(t) + ρrbIdI(t) ∈ R3 (5.1)

33

Page 56: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5 Rigid multibody formulation

where ρrbI , I = 1, 2, 3 are coordinates in the body fixed frame.

Figure 5.1: Rigid body formulation: The centre of mass is given relative to the global frame by ϕ, the orientation

of the body is given by an orthonormal body frame in the centre of mass.

The configuration variable q(t) describing the location and orientation of a rigid body reads

q(t) =

ϕ

d1

d2

d3

∈ R

12 (5.2)

With the restriction on the director frame to stay orthonormal during a motion, mint = 6 so

called internal constraints arise

gint(q) =

12

(dT1 · d1 − 1

)12

(dT2 · d2 − 1

)12

(dT3 · d3 − 1

)

dT1 · d2

dT2 · d3

dT3 · d1

∈ R

6 (5.3)

and the Jacobian of these internal constraints is given by

Gint(q) =

0 dT1 0 0

0 0 dT2 0

0 0 0 dT3

0 dT2 dT

1 0

0 dT3 0 dT

1

0 0 dT3 dT

2

∈ R

6×12 (5.4)

By choosing the directors to be aligned with the principal axes of inertia of the body, Euler’s

tensor with respect to the centre of mass can be written as

E =1

2(trJ) · I − J ∈ R

3×3 (5.5)

34

Page 57: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5.1 Constrained rigid body formulation

with the inertia tensor J ∈ R3×3 and the 3 × 3 identity matrix I ∈ R3×3. The mass of a

rigid body is given by Mϕ =∫B(ρ)dV using the density ∈ R+ and the volume of the body

Vb ∈ R+. Within this work a constant density, i.e. homogeneous bone material, is assumed.

Together with the principal values of the Euler tensor, the constant symmetric positive definite

12× 12 mass matrix reads

M =

MϕI 0 0 0

0 E1I 0 0

0 0 E2I 0

0 0 0 E3I

(5.6)

In [Bets 06], where this rigid body formulation has been elaborated, the internal nullspace

matrix related to the internal constraints given in (5.3) is given as

P int(q) =

I 0

0 −d1

0 −d2

0 −d3

∈ R

12×6 (5.7)

which obviously yields G · P = 0 ∈ R6×6. Herein, a denotes the 3× 3 skew symmetric matrix

given in (3.23) related to the axial vector a ∈ R3.

With a nodal reparametrisation F : U × Q → C as introduced in (4.13), the configuration

of a rigid body is given by six unknowns un+1 =[uϕn+1

, θn+1

]representing the incremental

motion within the translational degrees of freedom uϕn+1∈ R3 and the incremental motion

within rotational degrees of freedom uθn+1∈ R3, respectively. The incremental update of the

redundant configuration variable is therewith given by

qn+1 = F (un+1, qn) =

ϕn + uϕn+1

exp(θn+1) · d1n

exp(θn+1) · d2n

exp(θn+1) · d3n

(5.8)

Herein, for the exponential map Rodrigues’ formula is used, see (3.24).

Corresponding to its number of degrees of freedom, the rigid body can be actuated with a

translational force τϕ ∈ R3 in the centre of mass of the body and a torque τ θ ∈ R3, summarised

in τ rb = [τϕ, τ θ]T ∈ R6. In particular, when implementing muscle forces, the rigid body is

usually actuated by a force τ ϕ with an application point located at ρrb = ρrbIdI different from

the centre of mass. Such kind of activation can be transferred into a force τϕ in the centre of

mass and an additional torque ρrb × τϕ. Consequently, this yields[

τϕ

ρrb × τϕ + τ θ

]= Crb(q) · τ rb (5.9)

Herein, the matrix

Crb(q) =

[I 0

ρrb I

]∈ R

6×6 (5.10)

assigns the appropriate lever arm.

35

Page 58: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5 Rigid multibody formulation

5.2 Joint connections and constraint reactions

In addition to the mint internal constraints resulting from the rigid body formulation, mext

external constraints may be present, if a body is fixed in space with a joint connection or if

several rigid bodies are connected via joints that restrict the relative motion of the bodies.

Altogether, the number of constraints on the system is then given by m = mint+mext. In order

to prevent a dynamical system from violating the external constraints, constraint forces or –

depending on the joint type – constraint torques are present in the joints. In the following, a

formulation of the resulting constraints for a spherical and a revolute joint is given as described

in [Bets 06, Leye 06, Leye 08, Leye 10]. Furthermore, an additional description of a cardan joint

is added, which is frequently needed in biomechanics simulations, in order to represent joint

connections with two rotational degrees of freedom like for example the elbow and the wrist.

Moreover, for all three joint types, the Jacobian of the constraints, the nullspace matrices and

the joint torque activations are given as well as a possibility to compute the related constraint

reactions. For further details and a description of other joint types see [Bets 06, Leye 06,

Leye 08, Leye 10]. In the later part of this work, those joints are used to build the kinematic

chain of the arm and finger model.

Figure 5.2: A pair of rigid bodies connected by a joint (left), subject to forces and torques in the centre of mass

(right).

The configuration variable q(t) for a kinematic chain consisting of K bodies is set up as q(t) =

[q1, q2, . . . , qK ]T ∈ R12K , containing the configuration variables of the single bodies q1, q2, ...

qK in the form of (5.2).

Nullspace matrix The complete nullspace matrix for a kinematic pair is given by

P J(q) =

[P int(q

1) 012×rJ

P int(q2) · P 2,J

ext(q)

]∈ R

24×(6+rJ ) (5.11)

as described in [Bets 06]. Herein, the internal nullspace matrix is given by (5.7). Depending

on the joint connection in use, a specific external 6 × (6 + rJ) dimensional matrix P2,Jext(q) is

applied, where rJ denotes the number of relative degrees of freedom in a joint.

The specific nullspace matrices for the kinematic chains used within this work are given in the

36

Page 59: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5.2 Joint connections and constraint reactions

corresponding chapters in the later part of the work. For more information on their detailed

derivation the reader is referred to [Bets 06, Leye 06].

Nodal reparametrisation For each open kinematic chain, it is possible to express the redun-

dant configuration variable q ∈ R12K with rJ generalised coordinates, such that the constraints

are fulfilled.

qn+1 = F J(uJn+1, qn) (5.12)

The generalised coordinates consist of the incremental displacements uϕn+1∈ R3 and rotations

θn+1 ∈ R3 of the first body, if it is free in space, as well as a relative rotation θJKn+1 ∈ RrJ for

each following body depending on the joint type.

Actuation of kinematical chains A rigid multibody system can be actuated via a vector of

joint torques τ J ∈ RrJ , whose dimension depends on the number of degrees of freedom rJ

of the specified joint connection. Additionally, an actuation via forces and torques directly

on the rigid bodies τKrb ∈ R6 is possible, as illustrated in (5.9). Combined, the generalised

forces actuating a k-dimensional kinematic chain consisting of K bodies connected via K − 1

joints and actuated with joint torques and an additional force and torque directly on each rigid

body read[τ 1rb . . . , τ

Krb, τ

J1, . . . , τ JK−1

]T∈ R(12K+

K−1

i=1rJi ). The redundant forces on each body

f =[f1, . . . , fK

]T∈ Rk can be calculated from

f = B(q)T ·[τ 1rb, τ

2rb, τ

J1, . . . , τ JK−1

]T(5.13)

with B(q) ∈ Rk×(12K+∑

K−1

i=1rJi ) representing the configuration dependent input transformation

matrix exemplarily given for two bodies connected by one joint as

B(q) =

[P int(q

1) 0

0 P int(q2)

I 0 0 0

01

2I 0 0

0 0 I 0

0 0 01

2I

·

[Crb(q

1) 0 C1,J(q)

0 Crb(q2) C2,J(q)

](5.14)

see also [Leye 10]. Instead of using joint torques, the actuation on each body can be represented

equivalently by forces hϕ ∈ R3 and torques hθ ∈ R3 in the centre of mass of each body

h =[h1ϕ,h

1θ, . . . ,h

Kϕ ,h

]T∈ R6K , see right part of Figure 5.2, via

h = P Tint(q) · f (5.15)

5.2.1 Spherical pair

A spherical joint between two rigid bodies leads to the following mSext = 3 external constraints

on the movement of the bodies

gSext(q) = ϕ2 − ϕ1 + ρ2 − ρ1 (5.16)

37

Page 60: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5 Rigid multibody formulation

Figure 5.3: Free body diagram to visualise the constraint forces in a spherical joint.

The related constraint force F ϕ that prevents the bodies from relative displacement is visualised

in the free body diagram in Figure 5.3. The corresponding Jacobian of the external constraints

is given by

GSext(q) =

[−I −ρ11I −ρ12I −ρ13I I ρ21I ρ22I ρ23I

]∈ R

3×24 (5.17)

With the relation described in (5.11), the total nullspace matrix for a spherical pair is given

using

P int(q2) · P 2,S

ext(q) =

I −ρ1 ρ2

0 0 −d21

0 0 −d22

0 0 −d23

∈ R

12×9 (5.18)

The incremental displacement and rotation of two bodies connected with a spherical joint can

be summarised according to (5.12) in un+1 =[u1

ϕn+1θ1n+1 θ2

n+1

]T∈ R9. Therewith a nodal

reparametrisation can be applied

qn+1 =

ϕn + u1ϕn+1

exp(θ1n+1) · (d

11)n

exp(θ1n+1) · (d

12)n

exp(θ1n+1) · (d

13)n

ϕn + u1ϕn+1

+ exp(θ1n+1) · ρ

1n − exp(θ2

n+1) · ρ2n

exp(θ2n+1) · (d

21)n

exp(θ2n+1) · (d

22)n

exp(θ2n+1) · (d

23)n

(5.19)

using Rodrigues’ formula explained in (3.24).

An actuation with joint torques in a spherical joint can be transformed into an actuation by

redundant body forces using (5.13) and

C1,S(q) =

[0

−I

]∈ R

6×3, C2,S(q) =

[I

0

]∈ R

6×3 (5.20)

38

Page 61: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5.2 Joint connections and constraint reactions

With λSext = λϕ ∈ R3 representing the Lagrange multipliers related to the constrained relative

translation of the bodies, the external constraint forces in redundant coordinates are given by(GS

ext(q))T

· λSext. By premultiplying these redundant constraint forces with the transposed

internal nullspace matrix P Tint(q) following the formulation in (5.7), we finally get a set of

constraint reactions acting on the centre of mass of the rigid bodies

h1ϕ

h1θ

h2ϕ

h2θ

= P T

int · (GSext)

T · λSext =

I 0 0 0 0 0 0 0

0 d11 d1

2 d13 0 0 0 0

0 0 0 0 I 0 0 0

0 0 0 0 0 d21 d2

2 d23

·

−λϕ

−ρ11λϕ

−ρ12λϕ

−ρ13λϕ

λϕ

ρ21λϕ

ρ22λϕ

ρ23λϕ

=

−λϕ

−ρ1 × λϕ

λϕ

ρ2 × λϕ

(5.21)

Considering for example the first body, it is evident that a force h1ϕ = −λϕ acting on the centre

of mass of the body and an additional torque h1θ = −ρ1×λϕ can be equivalently represented by

one force −λϕ, whose point of application is given by ρ1 in the respective body frame. Together

with the illustration of the free body diagram in Figure 5.5 it is obvious that the constraint

force F ϕ acting in the joint and preventing the bodies from relative translational displacement

is given by F ϕ = λϕ

5.2.2 Revolute pair

Figure 5.4: Free body diagram to visualise the constraint forces and torques in a revolute joint.

For a pair connected by a revolute joint, see Figure 5.4, the following external constraints arise

gRext(q) =

ϕ2 −ϕ1 + ρ2 − ρ1

(n1)Td21 − η1

(n1)Td22 − η2

∈ R

5 (5.22)

with n1 = n1Id

1I , I = 1, 2, 3 being the axis of rotation of the second body relative to the first

one fixed in the first body and η1, η2 ∈ R being the prescribed angle between n1 and d21 and

39

Page 62: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5 Rigid multibody formulation

between n1 and d22, respectively. This results in the constraint Jacobian

GRext(q) =

−I −ρ11I −ρ12I −ρ13I I ρ21I ρ22I ρ23I

0T n11(d

21)

T n12(d

21)

T n13(d

21)

T 0T (n1)T 0T 0T

0T n11(d

22)

T n12(d

22)

T n13(d

22)

T 0T 0T (n1)T 0T

∈ R

5×24 (5.23)

The incremental displacement and rotation of two bodies connected with a revolute joint are

given by un+1 =[u1

ϕn+1θ1n+1 θ2n+1

]T∈ R7. Here, θ2n+1 denotes the relative rotation of the

second body with respect to the first one around the axis n1. A nullspace matrix and a nodal

reparametrisation can be given in two different ways. In [Bets 06, Leye 06] a formulation is

illustrated, where the second body is induced to always perform the same rotation as the first

one and to additionally rotate relative to it with θ2 about the joint axis n1. Hence, the angular

velocity of the second body can be calculated by ω2 = ω1 + θ2n1. To keep the second body

at rest, an appropriate opposed rotation around the joint axes has to be applied on the second

body. In this case, a nullspace matrix can be given using

P int(q) · P2,Rext (q) =

I ρ2 − ρ1 ρ2 · n1

0 −d21 −d2

1 · n1

0 −d22 −d2

2 · n1

0 −d23 −d2

3 · n1

∈ R

12×7 (5.24)

and a corresponding nodal reparametrisation reads

qn+1 =

ϕn + u1ϕn+1

exp(θ1n+1) · d

11n

exp(θ1n+1) · d

12n

exp(θ1n+1) · d

13n

ϕn + u1ϕn+1

+ exp(θ1n+1) ·

(ρ1n − exp(θ2n+1 n

1n) · ρ

2n

)

exp(θ1n+1) · exp(θ

2n+1 n

1n) · d

21n

exp(θ1n+1) · exp(θ

2n+1 n

1n) · d

22n

exp(θ1n+1) · exp(θ

2n+1 n

1n) · d

23n

(5.25)

If one is interested in a formulation that addresses the single body rotations independently, one

can introduce another relation between the angular velocities reading ω2 = I11 ·ω1 + θ2n1, as

described in [Leye 10]. Herein, the 3 × 3 matrix I11 = I − n1 ⊗ n1 ensures, that a rotation of

the first body around the axis n1 leaves the second body at rest. Then the nullspace matrix

can be constructed using

P int(q) · P2,Rext (q) =

I ρ2 · I11 − ρ1 ρ2 · n1

0 −d21 · I

11 −d21 · n

1

0 −d22 · I

11 −d22 · n

1

0 −d23 · I

11 −d23 · n

1

∈ R

12×7 (5.26)

40

Page 63: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5.2 Joint connections and constraint reactions

and the corresponding nodal reparametrisation changes accordingly to

qn+1 =

ϕn + u1ϕn+1

exp(θ1n+1) · d

11n

exp(θ1n+1) · d

12n

exp(θ1n+1) · d

13n

ϕn + u1ϕn+1

+ exp(θ1n+1) · ρ

1n −R1,2 · exp(θ2n+1 n

1n) · ρ

2n

R12 · exp(θ2n+1 n1n) · d

21n

R12 · exp(θ2n+1 n1n) · d

22n

R12 · exp(θ2n+1 n1n) · d

23n

(5.27)

where R12 = exp(θ1n+1) · exp(−

(n1n ⊗ n1

n) · θ1n+1). A joint torque actuation of the revolute pair

can be transferred into redundant body forces using

C1,R(q) =

[0

−n1

]∈ R

6×1, C2,R(q) =

[0

n1

]∈ R

6×1 (5.28)

within (5.13). Corresponding to the number of external constraints, for a connection with a

revolute joint, the Lagrange multipliers can be introduced as λRext = [λϕ, λθ1 , λθ2] ∈ R5. Herein,

λϕ ∈ R3 is related to the constraints on relative translation of the bodies and λθ1, λθ2 ∈ R are

related to the constrained rotation axes. Therewith, the constraint forces that arise in the joint

according to the external constraints can be computed in a redundant form with GSext(q)

T ·[λϕ λθ1 λθ2

]T. Premultiplying these redundant constraint forces with the transposed internal

nullspace matrix yields a reduced set of constraint forces acting on the centre of mass

h1ϕ

h1θ

h2ϕ

h2θ

= P T

int (GRext)

T

λϕ

λθ1

λθ2

=

I 0 0 0 0 0 0 0

0 d11 d1

2 d13 0 0 0 0

0 0 0 0 I 0 0 0

0 0 0 0 0 d21 d2

2 d23

−λϕ

−ρ11λϕ + n11λθ1d

21 + n1

1λθ2d22

−ρ12λϕ + n12λθ1d

21 + n1

2λθ2d22

−ρ13λϕ + n13λθ1d

21 + n1

3λθ2d22

λϕ

ρ21λϕ + λθ1n1

ρ22λϕ + λθ2n1

ρ23λϕ

(5.29)

which finally results in

h1ϕ

h1θ

h2ϕ

h2θ

=

−λϕ

−ρ1 × λϕ + λθ1(n1 × d2

1) + λθ2(n1 × d2

2)

λϕ

ρ1 × λϕ − λθ1(n1 × d2

1)− λθ2(n1 × d2

2)

(5.30)

41

Page 64: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5 Rigid multibody formulation

According to Figure 5.4 this means for the revolute pair, that the constraint force F ϕ preventing

the system from translational movements of the second body relative to the first one is given

by F ϕ = λϕ. The constraint torques T θ1 and T θ2 countervailing relative rotation around the

constrained axes can be calculated via T θ1 = λθ1(n1 × d2

1) and T θ2 = λθ2(n1 × d2

2).

5.2.3 Cardan pair

In addition to spherical and revolute joints as described above and in [Bets 06, Leye 06, Leye 10],

within biomechanics there also exist joints with two rotational degrees of freedom. A common

example is the elbow with flexion/extension and pronation/supination motion or the circum-

duction of the wrist. Hence, an additional joint formulation of a so called cardan joint is

required, which is described in the following.

Figure 5.5: Free body diagram to visualise the constraint forces and torque in a cardan joint.

Two rigid bodies connected by a cardan joint have two relative rotational degrees of freedom,

see Figure 5.5, which leads to a number of mCext = 4 external constraints. Let the two axes of

rotation of a cardan joint be given by n11(q1) = n11I d1I ∈ R3 and n12(q2) = n12

I d2I ∈ R3, I =

1, 2, 3 which are orthogonal to each other, i.e. n11(q1)T ·n12(q2) = 0. Constraining the rotation

about the third axis then means that these two rotation axes have to stay in their initial

orientation to each other, yielding the following external constraint function

gCext(q) =

[ϕ2 −ϕ1 + ρ2 − ρ1

n11(q1)T · n12(q2)

](5.31)

The incremental displacements and rotations of the two bodies connected by a cardan pair can

be summarised in un+1 =[u1

ϕn+1θ1n+1 θ2

n+1

]T∈ R8. As in the case of the revolute joint, a

nullspace matrix and a nodal reparametrisation can be given in two different ways. In case the

velocity of the second body is calculated relative to the first one, i.e. ω2 = ω1 + θ21n11 + θ22n

12,

the nullspace matrix is given by (5.11) inserting

P int(q2) · P 2,C

ext (q) =

I ρ2 − ρ1 ρ2 × n11 ρ2 × n12

0 −d21 n11 × d2

1 n12 × d21

0 −d22 n11 × d2

2 n12 × d22

0 −d23 n11 × d2

3 n12 × d23

∈ R

12×8 (5.32)

42

Page 65: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5.2 Joint connections and constraint reactions

and a corresponding nodal reparametrisation reads

qn+1 =

ϕn + u1ϕn+1

exp(θ1n+1) · d

11n

exp(θ1n+1) · d

12n

exp(θ1n+1) · d

13n

ϕn + u1ϕn+1

+ exp(θ1n+1) ·

(ρ1n − exp(θ21n+1

n11n) · ρ

2n − exp(θ22n+1

n12n) · ρ

2n

)

exp(θ1n+1) · exp(θ

21n+1

n11n) · exp(θ

22n+1

n12n) · d

21n

exp(θ1n+1) · exp(θ

21n+1

n11n) · exp(θ

22n+1

n12n) · d

22n

exp(θ1n+1) · exp(θ

21n+1

n11n) · exp(θ

22n+1

n12n) · d

23n

(5.33)

If the velocity of the second body is calculated independently from the velocity of the first

body, the nullspace matrix for the cardan pair is given by (5.11) inserting

P int(q2) · P 2,C

ext (q) =

I ρ2 − ρ1 · I12 ρ2 × n11 ρ2 × n12

0 −d21 · I

12 n11 × d21 n12 × d2

1

0 −d22 · I

12 n11 × d22 n12 × d2

2

0 −d23 · I

12 n11 × d23 n12 × d2

3

∈ R

12×8 (5.34)

with I12 = I − n11 ⊗ n11 − n12 ⊗ n12 ∈ R3×3. A corresponding nodal reparametrisation is in

this case given by

qn+1 =

ϕn + u1ϕn+1

exp(θ1n+1) · d

11n

exp(θ1n+1) · d

12n

exp(θ1n+1) · d

13n

ϕn + u1ϕn+1

+ exp(θ1n+1) · ρ

1n −R22 ·

(exp(θ21n+1

n11n) · ρ

2n + exp(θ22n+1

n12n) · ρ

2n

)

R22 · exp(θ21n+1n11

n) · exp(θ22n+1

n12n) · d

21n

R22 · exp(θ21n+1n11

n) · exp(θ22n+1

n12n) · d

22n

R22 · exp(θ21n+1n11

n) · exp(θ22n+1

n12n) · d

23n

(5.35)

where R22 = exp(θ1n+1) · exp(−

(n11n ⊗ n11

n ) · θ1n+1) · exp(−

(n12n ⊗ n12

n ) · θ2n+1). If the cardan

pair is actuated by torques τC ∈ R2, then the redundant actuation forces on each body are

computed according to (5.13) with

C1,C(q) =

[0 0

−n11 −n12

]∈ R

6×2, C2,C(q) =

[0 0

n11 n12

]∈ R

6×2 (5.36)

The Lagrange multipliers λCext =

[λϕ λθ

]T∈ R4 are composed of a part λϕ ∈ R3 related to the

constraints on relative translation of the bodies and a part λθ ∈ R related to the constrained

43

Page 66: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5 Rigid multibody formulation

rotation about the axis perpendicular to n11 and n12. Consequently, using the Jacobian of the

constraints

GCext(q) =

[−I −ρ11I −ρ12I −ρ13I I ρ21I ρ22I ρ23I

0T n111 (n12)T n11

2 (n12)T n113 (n12)T 0T n12

1 (n11)T n122 (n11)T n12

3 (n11)T

]∈ R

4×24

(5.37)

the constraint forces in redundant coordinates read

(GC

ext(q))T

· λCext =

−λϕ

−ρ11λϕ + n111 λθn

12

−ρ12λϕ + n112 λθn

12

−ρ13λϕ + n113 λθn

12

λϕ

ρ21λϕ + n121 λθn

11

ρ22λϕ + n122 λθn

11

ρ23λϕ + n123 λθn

11

(5.38)

Premultiplying the constraint forces with the transposed internal nullspace matrix, we get a

set of constraint forces on the centre of mass of the bodies

h1ϕ

h1θ

h2ϕ

h2θ

= P T

int · (GCext)

T · λCext =

−λϕ

−ρ1 × λϕ + λθ(n11 × n12)

λϕ

ρ1 × λϕ − λθ(n11 × n12)

(5.39)

When focussing on the first body, one can see that a force h1ϕ = −λϕ acting on the centre of

mass of the body and an additional torque h1θ = −ρ1 × λϕ + λθ(n

11 × n12) can be equivalently

represented by one force −λϕ acting at a point ρ1 in the respective body frame and an addi-

tional torque λθ(n11 × n12). Taking into account the free body diagram of a cardan joint (see

Figure 5.5), we can calculate the constraint force in a cardan joint F ϕ that prevents the bodies

from relative translations and the resulting constraint torque T θ preventing relative rotation

about the axis n11 × n12 via F ϕ = λϕ and T θ = λθ(n11 × n12).

Remark 5.2.1 (Computation of the Lagrange multipliers) Obviously, the constraint forces

and torques are directly related to the Lagrange multipliers. Due to the use of a discrete nullspace

method in (4.14), we save the calculation of the Lagrange multipliers in the first place to reduce

computational effort and to exclude conditioning issues. However, it is possible to calculate

them in a post processing step via

λn = RTd (qn) ·

[D1Ld(qn, qn+1) +D2Ld(qn−1, qn) +

∆t

2BT (qn) · (τ n−1 + τ n)

](5.40)

with the n×m dimensional matrix Rd(qn) = (Gd(qn))T ·(Gd(qn) · (Gd(qn))

T)−1

.

44

Page 67: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5.2 Joint connections and constraint reactions

5.2.4 Numerical example

During the previous sections we have seen that the body velocities can be described in different

ways. Either the velocity of a second body is given relative to the velocity of the first body, see

the update formulas (5.25) for a revolute joint and (5.33) for a cardan joint. Or the velocity

is given by a formulation that is independent of the motion of the first body, see the update

formulas (5.27) for a revolute joint and (5.35) for a cardan joint.

Figure 5.6: Configuration of the pyramids over time with the independent body velocity formulation and an activation

by an initial velocity of the first body.

Figure 5.7: Configuration of the pyramids over time with the relative body velocity formulation and an activation

by an initial velocity of the first body.

Figure 5.8: Configuration of the pyramids over time with the relative body velocity formulation: activation by an

initial velocity of the first body and additional corresponding negative initial velocity on the second body.

If two bodies of equal mass and inertia properties are coupled via a revolute or cardan joint

in their center of mass, it is intuitively clear what distinguishes these formulations. Let the

45

Page 68: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5 Rigid multibody formulation

first body be activated with an initial velocity around the joint axes, while the second body

is not activated at all. Then, the second body will stay at rest, if an independent velocity

formulation is used. In contrast, if a relative velocity formulation is used, it will move together

with the first body without any relative motion. In order to keep the second body at rest,

while using a relative velocity formulation, one has to activate it with the appropriate negative

initial velocity.

In general, typical multibody problems are more difficult than this simple experiment in mind.

Usually, the bodies do not have the same mass and inertia properties and they are not connected

in their center of mass. In order to investigate the difference between the two formulations, a

numerical example is given in this section, increasing the difficulty of the problem step by step.

Herein, two pyramid-shaped bodies are coupled with a cardan joint. In the first step, the two

bodies still have the same inertia properties and masses, but instead of a connection in their

center of mass, they are connected at the pyramid top. When activating this system with an

initial angular velocity on the first rigid body around one of the cardan axes, the differences of

both formulations show up by examining the configurations of the bodies over time (Figure 5.6

for a description with independent body velocities and Figure 5.7 for a description with relative

body velocities). Using an independent velocity formulation, the second body is not affected by

the part of the activation of the first body around the cardan axes, while when using a relative

formulation, the second body is generally affected by the same rotation as the first one. To

achieve the same motion like the one resulting from an independent velocity formulation with

a relative velocity formulation, an additional negative initial velocity has to be added on the

second body around the affected cardan axis, see Figure 5.8.

0 0.5 1 1.5 2 2.5−2

0

2

0 0.5 1 1.5 2 2.50

1

2

0 0.5 1 1.5 2 2.5−2

0

2

0 0.5 1 1.5 2 2.5−5

0

5

0 0.5 1 1.5 2 2.50

2

4

0 0.5 1 1.5 2 2.5−2

0

2

Figure 5.9: Evolution of generalised configuration variables over time for the independent body velocity formulation

(left) and for the relative body velocity formulation (right), with initial velocity on the first body.

The evolution of the resulting configuration variables over simulation time is depicted in the

left part of Figure 5.9 for independent body velocities and in the right part of Figure 5.9 for

relative body velocities. The upper subplot within these figures shows the translation of the

first body in space, the middle plot illustrates the rotation in space and in the lower subplot,

the rotation around the cardan axes is depicted. Again, it is obvious that the translational

46

Page 69: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5.2 Joint connections and constraint reactions

an rotational motions of the first body is significantly different for the two formulations when

using the same initial velocities (compare the upper and middle subplots in Figure 5.9).

0 0.5 1 1.5 2 2.5−2

0

2

0 0.5 1 1.5 2 2.50

1

2

0 0.5 1 1.5 2 2.5−2

0

2

Figure 5.10: Evolution of generalised configuration variables over time for the relative body velocity formulation with

activation by an initial velocity of the first body and additional corresponding negative initial velocity

on the second body.

However, when adding an additional negative initial velocity on the second body around the

cardan axis, the same rigid body motion can be generated (see upper and middle plot in Fig-

ure 5.10). No matter what formulation is used here or what initial velocity is activating the

model, angular momentum is conserved and the constraints are fulfilled to numerical accuracy

over the simulation time for all three simulations, see Figure 5.11, 5.12 and 5.13.

0 0.5 1 1.5 2 2.5−1

−0.5

0

0.5

1

1.5

2

2.5x 10

−15

g1

g2

g3

g4

0 0.5 1 1.5 2 2.5−2

−1.5

−1

−0.5

0

0.5

1

1.5

2x 10

−13

L1

L2

L3

Figure 5.11: Fulfilment of constraints (left) and angular momentum consistency (right) for the independent body

velocity formulation with initial velocity on the first body.

47

Page 70: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5 Rigid multibody formulation

0 0.5 1 1.5 2 2.5−2

−1.5

−1

−0.5

0

0.5

1

1.5

2x 10

−15

g1

g2

g3

g4

0 0.5 1 1.5 2 2.5−2

−1.5

−1

−0.5

0

0.5

1

1.5

2x 10

−13

L1

L2

L3

Figure 5.12: Fulfilment of constraints (left) and angular momentum consistency (right) for the relative body velocity

formulation with initial velocity on the first body.

0 0.5 1 1.5 2 2.5−1

−0.5

0

0.5

1

1.5x 10

−15

g1

g2

g3

g4

0 0.5 1 1.5 2 2.5−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

3x 10

−13

L1

L2

L3

Figure 5.13: Fulfilment of constraints (left) and angular momentum consistency (right) for the relative body velocity

formulation with initial velocity on the first body and additional opposite velocity on the second body.

Concluding, this means in case of a relative velocity formulation, the initial velocities can be

chosen with respect to this relative formulation to gain the same motion generated with an

independent velocity formulation. This is rather simple in this example with bodies having the

same moment of inertia and mass, but it can be very ambitious for more complex models.

The next step towards more typical multibody systems is to choose different masses and inertia

properties for the bodies. Within this work, the actuation of multibody systems is implemented

rather by joint torques or muscle forces instead of an activation by initial velocities. Moreover,

during optimal control simulations, the initial velocity is requested to be zero within this work.

Therefore, the effect of the different formulations when using a joint torque actuation is exam-

ined additionally in the second part of this example. The simulation time is increased to 25s,

discretised with a time step of 0.05s. For both formulations, the first body is actuated by a

48

Page 71: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5.2 Joint connections and constraint reactions

torque τ rb and the cardan joint is actuated with a torque τC around both cardan axes.

Figure 5.14: Configuration of the pyramids over time: The independent body velocity formulation (top) compared

to the relative body velocity formulation (bottom) with actuation by joint torques.

0 5 10 15 20 25−5

0

5

0 5 10 15 20 25−100

0

100

0 5 10 15 20 250

5

10

0 5 10 15 20 25−5

0

5

0 5 10 15 20 25−100

0

100

0 5 10 15 20 250

200

400

Figure 5.15: Evolution of generalised configuration variables over time: The independent body velocity formulation

(left) compared to the relative body velocity formulation (right) with actuation by joint torques.

In Figure 5.14, snapshots of the resulting motions are illustrated for both formulations. The

upper line shows snapshots of the motion resulting with an independent velocity formulation,

while the lower line shows the motion when using a relative velocity formulation. Obviously,

the same joint torque actuation yields the same motion for both formulations.

49

Page 72: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5 Rigid multibody formulation

0 5 10 15 20 25−8

−6

−4

−2

0

2

4

6x 10

−13

L1

L2

L3

0 5 10 15 20 25−6

−4

−2

0

2

4

6

8x 10

−13

L1

L2

L3

Figure 5.16: Angular momentum consistency for the independent body velocity formulation (left) and for the relative

body velocity formulation (right) for an actuation by joint torques.

0 5 10 15 20 25−4

−3

−2

−1

0

1

2x 10

−15

g1

g2

g3

g4

0 5 10 15 20 25−1.5

−1

−0.5

0

0.5

1

1.5x 10

−15

g1

g2

g3

g4

Figure 5.17: Constraint fulfilment for the independent body velocity formulation (left) and for the relative body

velocity formulation (right) for an actuation by joint torques.

The evolution of the resulting generalised configuration variables is depicted in Figure 5.15

over simulation time, validating that the resulting motion is the same using the two different

formulations. The upper two subplots illustrating the rigid body translation and rotation of the

first body are equal and only the lower subplot showing the generalised configuration variables

related to the motion around the axes of the cardan joint differ because of the independent

(right hand part of Figure 5.15) and the relative description (left hand part of Figure 5.15)

Again, as in the first part of the example, angular momentum is represented consistently for

both formulations, i.e. the change in angular momentum is only and exactly coming from the

joint torque actuation. The difference of the change in angular momentum in every time step

and the actuating joint torques is depicted in Figure 5.16 and is obviously zero to numerical

50

Page 73: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

5.2 Joint connections and constraint reactions

accuracy. Moreover the constraints are fulfilled exactly for both formulations, see Figure 5.17.

Consequently this means that for multibody systems actuated only by joint torques with zero

initial velocity the chosen relation between body velocities has no influence on the resulting

motion. This is of particular interest when one aims at computing analytical gradients of the

constraints and cost function within an optimal control simulation. Usually a formulation with

relative body velocities can be differentiated much easier, as for a formulation with independent

body velocities the derivative of the inverse rodrigues formula is needed, which is difficult to

obtain. Within this work, both formulations are used but in particular when it comes to

muscle actuated motions, where analytical gradients are mandatorily needed, the focus is on a

formulation with relative body velocities.

51

Page 74: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe
Page 75: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6 Muscle actuation

For the modelling and simulation of muscle force generation, there exist different approaches

concerning their attention to the details of tissue behaviour. More precisely, one distinguishes

mainly between models with a focus on the inner muscle function that describe the microscopic

muscle tissue behaviour in detail and more black-box like models characterising the muscle be-

haviour with a simple input-output force generation [Zaja 89]. The well-known Huxley muscle

model [Huxl 57], to cite an example for detailed muscle models, contains an explicit represen-

tation of the the cross-bridge dynamics and the sliding filament theory. Generally, such models

are widely used for comprehension of laboratory behaviour of isolated muscles or muscle units

[Will 11].

If one is interested more in the general macroscopic muscle behaviour during force generation,

e.g. for the implementation within biomechanical or even optimal control simulations, empir-

ical models as presented in [Hill 38, Zaja 89] are commonly used, see also [Boge 98, Wint 90,

Geye 10, Geye 03, Lim 03]. The reason for this is at least twofold. On the one hand, the

detailed structure of muscle tissue is still unknown for many muscles and the large variety

in muscle arrangement and structure from subject to subject requires elaborate models. On

the other hand, a detailed description of the inner tissue structure is often not relevant when

focussing on the overall motion behaviour of a biomechanical multibody system. Hence, the im-

plementation of more detailed muscle models complicates matters unnecessarily. Nevertheless,

it is of high interest to improve those one dimensional, empirical Hill-type models with more

physiologically correct models that cover also the three dimensional muscle behaviour. Steps

towards this direction and approaches for such models are for example given in [Rohr 13].

This chapter provides an overview on the implemented Hill-type muscle models within this

work. Beginning with forward dynamics simulations, a typical Hill-type muscle model with

three components is combined with the symplectic-momentum method. The influence of struc-

ture preservation on the simulation of simple, muscle actuated motions is examined in several

examples comparing computations with the symplectic-momentum method to computations

with a Matlab/Simulink model using Matlab’s fixed step ode solvers.

In a further step, a muscle model is composed for the application with optimal control sim-

ulations. Thus, inner muscle dynamics is neglected in this first step and the model is set up

without a second serial elasticity. Furthermore, the functional muscle behaviour is smoothed

to facilitate the derivation of analytical gradients of the optimal control problem (ocp).

The final section of this chapter describes an approach to calculate the muscle paths around

joints and bodies in order to represent a dynamically changing muscle wrapping around bones,

see also [Maas 13a, Maas 13b]. Here, it is supposed that muscles follow the shortest path

between origin and insertion point, as there is always a muscle tone present, even at rest

[Wink 10, Garn 00, Mars 08, Stav 12]. First, an approach on minimising the path length in

each time step such that the path does not intersect bodies and joints is presented, which is fre-

quently used in the literature in a similar way denoted as energy string method (ESM), see for

53

Page 76: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6 Muscle actuation

example [Mars 08]. Secondly, a semi-analytical procedure is described to obtain this path via a

G1 (geometric) continuous combination of geodesic curves around smooth bodies like cylinders

an spheres. In contrast to other (root-finding) approaches like for example [Stav 12, Scho 13],

the main focus of the presented muscle path algorithm is on the reduction of computational

effort to enable the implementation within optimal control simulations, while not loosing too

much accuracy in muscle path length and force directions.

6.1 Hill-type muscle models

In biomechanical simulations, the actuation of multibody systems is often generated by Hill-

type muscle models [Hill 38] instead of joint torque actuation, enabling the possibility to draw

more realistic physiological conclusions from the simulations, see for example [Zaja 89, Geye 03,

Sieb 08, Geye 10].

If one aims at investigating biomechanics and dynamics of human locomotion, it is a key task

to describe the properties of this musculotendon system and to build up muscle models that

represent its properties in an accurate manner [Wint 90]. In general, the muscles connect

body segments, stabilise the skeleton structure and enable the CNS to control movements. By

excitation, the CNS requests certain muscles to create forces that are applied to bones and

joints via tendons. Thereby, the resulting muscle forces also depend on static and dynamic

effects.

Several models describing the dynamical behaviour of isolated muscles have been developed,

for example by [Epst 98, Wint 90]. Most of them are based on the findings of [Hill 38], who in

particular discovered the force-velocity relation of muscles. However, most of these models do

not or hardly take into account passive muscle forces. One possibility to represent these passive

muscle forces is for example shown in [Zaja 89] or [Sieb 08]. Typically, one or more parallel

(PEC) or serial (SEC) elastic components are combined with a contractile component (CC).

Depending on the arrangement of these additional elasticities, the muscle behaviour changes

significantly. Two typical arrangements of a contractile element with two elasticities are shown

in Figure 6.1.

Figure 6.1: Two typical Hill-type muscle models with different arrangement of parallel and serial elasticities.

The main difference of these models shows up when calculating the resulting muscle force. If

the PEC is in parallel to the contractile element only and the SEC is serial to both of them

(see left hand part of Figure 6.1), the muscle force Fm ∈ R+ can be computed from the forces

of the single components FCC ∈ R+, F SEC ∈ R+ and F PEC ∈ R+ via

Fm = FCC + F PEC = F SEC (6.1)

54

Page 77: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6.1 Hill-type muscle models

In contrast to that, for a model as illustrated in the right hand part of Figure 6.1, where the

SEC is in series to the contractile component only and the PEC is in parallel to both of them,

the muscle force can be calculated by

Fm = FCC + F PEC = F SEC + F PEC (6.2)

In the first section of this chapter, the focus is on a Hill-type muscle as illustrated in the left

hand part of Figure 6.1, as according to the results of [Sieb 08], this model represents the

experimentally observed behaviour best. Based on the experimental data of a rat muscle (mus-

culus gastrocnemius medialis) identified by [Till 08], this model is used to give an overview

on the influence of a structure preserving integrator on simulations that include muscle actua-

tion. In particular, the dynamics of the systems are described with the symplectic-momentum

method on the one hand and on the other hand, commercial ode integrators provided by Mat-

lab/Simulink are used to solve the equations of motion. The results are compared concerning

angular momentum and energy consistency as well.

When investigating fast motions within dynamical simulations, the muscle model illustrated in

Figure 6.1 can lead to certain difficulties. Generally, an inner iteration is needed to evaluate

the length of the CC element. In particular sudden changes of activations may yield numerical

problems within the solution procedure of this inner iteration. This motivates the set up of a

simplified Hill-type muscle model for the use within optimal control problems, which circum-

vents these problems. Moreover, there is a special focus on using differentiable approaches on

force-length and force-velocity behaviour of the muscles in order to be able to evaluate analyti-

cal gradients of the optimal control problem. Further on, an arrangement with only one parallel

elastic component is chosen, to enable a simple discretisation of the muscle forces within the

symplectic-momentum scheme. The challenges in the implementation of an additional serial

elasticity are discussed at the end of this section.

6.1.1 The influence of structure preservation on simulations of muscle

actuated movements

This section is mainly based on [Maas 12a], wherein for first investigations with forward dy-

namics simulations, a muscle model described in [Sieb 08] is implemented. Herein, the PEC

is in parallel with the CC and both of them are connected to a SEC, see left hand part of

Figure 6.1. The muscle parameters used in the simulations are given in the Appendix C.1.

Using this model, the difference between the single forces in the SEC and the PEC equals the

force of the CC, which can be described by a typical multiplicative approach as introduced by

[Soes 93]

F SEC − F PEC = fl fv A(t) Fim (6.3)

Herein, Fim ∈ R is the maximal possible active isometric force of the muscle, a parameter

determined in experiments, while fl ∈ R and fv ∈ R are factors that describe the force-length

and force-velocity property, respectively.

The muscle activation state A(t) ∈ R as a function of time can for example be described by

55

Page 78: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6 Muscle actuation

an exponential function and the stimulus St ∈ R

A(t) =

{St − e−

t

c , St −A0 > e−t

c

A0, St −A0 ≤ e−t

c

(6.4)

The time constants of calcium influx from the sarcoplasmic reticulum into the sarcoplasm are

represented by c ∈ R, as described in [Sieb 08]. To avoid division by zero when isolating fv in

(6.3), A(t) needs to be at least equal to the pre-activation of the muscle A0 ∈ R+.

6.1.1.1 Properties of the serial and parallel elasticities

According to [Wint 90], F SEC depends on the SEC length change ∆lSEC with reference to a

start length, as follows

F SEC(∆lSEC) =

F1

eksh − 1

e

ksh∆lSEC

∆lSEC1

− 1

, 0 < ∆lSEC < ∆lSEC1

F1 + kel(∆lSEC −∆lSEC1

), ∆lSEC1 ≤ ∆lSEC

(6.5)

At the force F1 and the corresponding elongation ∆lSEC1 this relationship changes from expo-

nential to linear, the parameter kel can be calculated from

kel =F1

eksh − 1

ksh∆lSEC1

eksh (6.6)

where the dimensionless shape parameter ksh ∈ R has to be determined by experiments.

The force-elongation relationship of the PEC depends on the PEC length change ∆lPEC with

reference to a start length and is taken from the work of [Brow 96], using the parameters

k1, k2 ∈ R

F PEC(∆lPEC) =

k1

(ek2·∆lPEC

− 1), ∆lPEC > 0

0, ∆lPEC ≤ 0(6.7)

6.1.1.2 Force-length relation of the contractile component

The force-length relation of the CC is described by a piecewise linear function according to

[Sieb 08]

fl(lCC) =

fcl2 − l1

(lCC − l1), l1 ≤ lCC ≤ l2

fc +fc − 1

l2(lCC − l2), l2 < lCC ≤ 0

1, 0 < lCC ≤ l3

1 +−1

l4 − l3(lCC − l3), l3 < lCC ≤ l4

0, lCC < l1 ∨ lCC > l4

(6.8)

56

Page 79: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6.1 Hill-type muscle models

where fc ∈ R is the force factor, at which the ascending limb changes slope, lCC is the length

of the contractile component and l1, l2, l3 and l4 are specific lengths that are crucial for the

sarcomere force-length relationship, see Figure 2.10.

6.1.1.3 Force-velocity relation of the contractile component

The second important property of muscles is their force-velocity behaviour. In this work, we

use the Hill hyperbola for concentric contractions [Hill 38]. An illustration of this behaviour

is given in Figure 2.11. The parameter fv is defined by the maximal possible contraction

velocity vCCmax ∈ R−, the actual contraction velocity vCC ∈ R and a parameter γ ∈ R to

fit the curvature. The eccentric part is described by a mirrored hyperbola [Soes 93], with

experimentally determined constant parameters B1, B2, B3 ∈ R. With these quantities, the

factor fv can be calculated

fv(vCC) =

vCCmax − vCC

vCCmax +

vCC

γ

, vCC < 0 (concentric part)

B1

vCC

vCCmax

− B2

+B3, vCC ≥ 0 (eccentric part)

(6.9)

Later on, we denote the inverse relation of the function (6.9) by vCC(fv).

6.1.1.4 Discrete actuation by muscle forces

The dynamical system considered is actuated by discrete muscle forces and gravity. This

actuation changes the discrete configuration and with it, the length of the musculotendon

complex lm ∈ R. Using a muscle model as shown in the right part of Figure 6.1, the actual

muscle length lmn depends on the lengths of the muscle model components, as described in

[Sieb 08]. Due to the actual muscle length and due to a certain activation level A(tn) evaluated

at the discrete time node tn, the length of the SEC and PEC change. Via equation (6.5) and

(6.7), this results in new forces F PECn and F SEC

n , respectively. With fln resulting from (6.8),

we can evaluate fvn via (6.3). Inverting (6.9) finally yields vCCn . The CC changes its length

with respect to a start length during one time interval [tn, tn+1] depending of the contraction

velocity of the muscle. This length change ∆lCCn+1 is derived via numerical integration of vCC

n ,

in our case, we use a trapezoidal rule

∆lCCn+1 −∆lCC

n

tn+1 − tn=

1

2

(vCC(fvn) + vCC(fvn+1

))

(6.10)

The resulting muscle force F SECn actuates the dynamical model and leads to a new muscle

length lmn+1. From now on, F SEC will therefore be called Fm. A schematic overview over the

simulation workflow is given in Figure 6.2.

57

Page 80: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6 Muscle actuation

given: lmn , ∆lCCn , A(tn)

· calculate ∆lSECn

· calculate ∆lPECn

· calculate Fmn = F SEC

n with (6.5)

· calculate F PECn with (6.7)

· calculate fln via (6.8)

· calculate fvn via (6.3)

· calculate vCCn via inverse of (6.9)

numerical integration of vCCn

· ∆lCCn+1 from (6.10)

actuate dynamic simulation with Fmn

· lmn+1

repeat the procedure with

new iteration counter n + 1

Figure 6.2: Dynamic simulation actuated by muscle forces: algorithm (left) and schematic workflow (right).

6.1.1.5 Numerical examples

Note that within this work, we focus on a multibody formulation involving a constant mass

matrix, which yields advantages in the numerical behaviour. For both examples shown in this

section, the complete models containing both the dynamics and the nonlinear Hill-type muscle

are build up in Matlab/Simulink. The ode solver used during the simulations is selected via the

Matlab/Simulink solver configuration pane. For the symplectic-momentum method, the model

is completely transferred from Matlab/Simulink to Matlab using the procedure described in

the last sections.

Problem formulation of example E1: Muscle lifting a point mass In a first example, we

examine the simple 1-dimensional problem, see left hand plot in Figure 6.3, where the muscle

model introduced in the last chapter is applied to lift a point mass. Herein, the point mass is

described by configuration variable q ∈ R and a mass mq ∈ R, while gravity is given by g ∈ R.

We use the previously described standard Matlab/Simulink integrators and the symplectic-

momentum method to solve this problem and compare the results. With the Lagrangian

L(q, q) =1

2mq2 −mgq (6.11)

the Euler-Lagrange equations of motion can be formulated for this problem

mq −mg −GFm = 0 (6.12)

with G ∈ R being a gearing factor representing the ratio between muscle lever arm and outer

lever arm, as illustrated in the right part of Figure 6.3.

58

Page 81: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6.1 Hill-type muscle models

Figure 6.3: Muscle lifting a point mass: with gearing G = 1 (left, E1a) and with different gearing factors (right,

E1b).

In the first part of this example (E1a) we use a gearing factor of G = 1 and compare accu-

racy and energy consistency of the Matlab/Simulink integrators and the symplectic-momentum

method. Typical skeleton gearing factors (ratio of muscle lever arm and outer lever arm) are

non-constant in the range from 0.1 up to 1. This means that muscle forces get scaled by geo-

metric effects.

In the second part of this example (E1b), the influence of a different mass and gearing factor

is studied. In this example, energy consistency means that the change in total energy of the

system ∆En+1 in each time step of the movement does exactly represent the (muscle) work

that is performed in this time step

∆En+1 = En+1 − En =

∫ tn+1

tn

Fm q dt (6.13)

Thus, we can define an absolute energy error Echec, which is the difference between change in

energy and muscle work per time step. Echec has to be zero for every time step to ensure that

the simulation exactly represents the energy of the real system, i.e.

Echecn+1= ∆En+1 −

∫ tn+1

tn

Fm q dt = 0 (6.14)

In every time step, the percentage value of the actual error Echecn with respect to the value of

the actual muscle work

WMn+1=

∫ tn+1

tn

Fm q dt (6.15)

yields the relative energy error

Eerrn = 100 ·Echecn

WMn

[%] (6.16)

To compare the accuracy of the simulation methods, we use an averaged error σ(qsol) over N

time steps for a solution qsol related to the reference solution qref with ∆tsol > ∆tref that can

59

Page 82: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6 Muscle actuation

be calculated from

σ(qsol) =1

N

N∑

n=1

‖ (qsoln − qrefn) ‖ (6.17)

Numerical results E1a: Accuracy and energy consistency First of all, we compare the con-

vergence of the solutions of all three integrators using a reference solution qref computed with

a small time step of ∆t = 10−6s with the symplectic-momentum method. In Figure 6.4, the

convergence of the two fixed step Matlab/Simulink integrators and the symplectic-momentum

method is shown. Theoretically, we expect a higher accuracy for the Matlab/Simulink in-

tegrators because of the underlying fourth order accurate Runge-Kutta integration scheme

instead of the second order accurate midpoint rule used within the symplectic-momentum

method. As expected, the Matlab/Simulink integrators show a better accuracy order for this

problem, as the slope of the logarithmic convergence plots is mostly larger and the curves

are placed below the symplectic-momentum curves. Particularly the Matlab/Simulink solver

ode14x shows the largest slope and reaches the lowest error values. Nevertheless, the symplectic-

momentum method converges with a similar slope in spite of its theoretically lower accuracy

order. In particular for the contraction velocity calculated with ∆t = 10−3s (see middle part

of Figure 6.4), the symplectic-momentum results are comparably accurate to the results of the

Matlab/Simulink integrators. One of the reasons for this good behaviour of the symplectic-

momentum method for this linear dynamic problem is the energy consistency.

−5 −4 −3−6

−5.5

−5

−4.5

−4

−3.5

−3

−2.5

symplectic momentum simulink ode8 simulink ode14

−5 −4 −3−3.5

−3

−2.5

−2

−1.5

−1

−0.5

−5 −4 −3−5

−4.5

−4

−3.5

−3

−2.5

−2

−1.5

−1

Figure 6.4: Comparison of accuracy with logarithmic convergence plots for Matlab/Simulink integrators ode8 and

ode14 and the symplectic-momentum method for E1a (m = 0.05kg, G = 1): muscle force (left),

contraction velocity (middle) and muscle length (right).

Next, we observe the influence of the different integrators on the kinematics and dynamics

(e.g. muscle length and contraction velocity) and muscle force generation for example E1a

60

Page 83: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6.1 Hill-type muscle models

(m = 0.05kg, G = 1). Compared to a reference solution calculated with a time step ∆t = 10−6s

with the symplectic-momentum method, the results for the symplectic-momentum method and

for both Matlab/Simulink integrators computed with ∆t = 10−3s represent the global behaviour

of the system equally well, see upper plots of Figure 6.5.

0 0.1 0.2 0.3 0.40

0.2

0.4

0.6

0.8

1

0 0.1 0.2 0.3 0.4−200

−150

−100

−50

0

0 0.1 0.2 0.3 0.435

40

45

50

55

0 0.1 0.2 0.3 0.4−200

−100

0

100

0 0.1 0.2 0.3 0.4−5

0

5

10

15

0 0.1 0.2 0.3 0.4−0.1

0

0.1

0.2

0.3

0.4

reference solution 1e−6 symplectic momentum simulink ode8 (explicit) simulink ode14x (implicit)

Figure 6.5: Simulation of E1a (m = 0.05kg, G = 1) with symplectic-momentum method, Matlab/Simulink explicit

solver (ode8) and Matlab/Simulink implicit solver (ode14x): Muscle force (left), contraction velocity

(middle) and muscle length (right) calculated with∆t = 10−3s compared to reference solution calculated

with ∆t = 10−6s with the symplectic-momentum method. Total values (upper plots) and relative

differences to reference solution (lower plots).

To save computational effort in forward dynamics simulations and especially in future opti-

mal control simulations, it is essential to use the largest possible time step that still leads to

reasonable results regarding a reference solution. For this example, the largest possible time

step is ∆t = 10−3s. There can be significant relative differences between the muscle force re-

sults in a range of 5− 15% related to the reference solution, especially at the beginning of the

movement, where the muscle force is still low (Figure 6.5, bottom left). The relative errors in

contraction velocity compared to a reference solution can reach very high values (Figure 6.5,

bottom middle). In spite of the lower accuracy order, the symplectic-momentum method shows

a good behaviour concerning the contraction velocity, even with a larger time step. Naturally,

the relative error in contraction velocity for all methods gets very high, whenever the velocity

is close to zero (Figure 6.5, middle plots). The high relative error in the contraction velocity

at t = 3.5 · 10−3s for the Matlab/Simulink integrators is not induced by this effect but depends

on the strong nonlinear behaviour of the muscle model in this time span. In the middle plot of

Figure 6.6 (zoom into the middle plot of Figure 6.5), a highly nonlinear change in the results

of the reference solution at that time gets visible.

61

Page 84: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6 Muscle actuation

2 3 4 5

x 10−3

0

0.2

0.4

0.6

0.8

1

2 3 4 5

x 10−3

−200

−150

−100

−50

0

2 3 4 5

x 10−3

52.985

52.99

52.995

53

53.005

reference solution 1e−6 symplectic momentum simulink ode8 (explicit) simulink ode14x (implicit)

Figure 6.6: Simulation of E1a (m = 0.05kg, G = 1) with symplectic-momentum method, Matlab/Simulink explicit

solver (ode8) and Matlab/Simulink implicit solver (ode14x) with ∆t = 10−3s compared to reference

solution calculated with ∆t = 10−6s with the symplectic-momentum method: Zoom into region with

big relative differences in muscle force (left), contraction velocity (middle) and muscle length (right).

This behaviour is captured much better by the symplectic-momentum method than by the

Matlab/Simulink integrators, all using a time step of ∆t = 10−3s. It seems that in this case the

better energy consistency of the symplectic-momentum method can balance its lower accuracy

order.

0 0.05 0.1 0.15 0.2 0.25−1

−0.5

0

0.5

1

1.5

2

symplectic−momentumsimulink ode8 (explicit)simulink ode14x (implicit)

0 0.05 0.1 0.15 0.2 0.25−5

0

5

10x 10

−7

symplectic−momentumsimulink ode8 (explicit)simulink ode14x (implicit)

Figure 6.7: Absolute energy error Echec for simulation of E1a (m = 0.05kg, G = 1) with symplectic-momentum

method, Matlab/Simulink explicit solver (ode8) and Matlab/Simulink implicit solver (ode14x): fixed

time step of ∆t = 10−3s (left) and fixed time step of∆t = 10−6s (right).

The resulting absolute energy errors for the symplectic-momentum method and for typical

standard Matlab/Simulink integrators (ode8 and ode14x) are exemplary shown for this exam-

ple E1a for a simulation with ∆t = 10−3s (left part of Figure 6.7) and ∆t = 10−6s (right part

of Figure 6.7). Both Matlab/Simulink integrators ode8 and ode14x lead to very similar results

during most of the simulation time. The calculation with a time step ∆t = 10−3s leads to an

absolute energy error Echec of maximum 1.5J. In contrast to that, the symplectic-momentum

method leads to numerical zero energy error. Reducing the time step to ∆t = 10−6s leads to

62

Page 85: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6.1 Hill-type muscle models

significantly lower energy errors for the Matlab/Simulink integrators as well, but nevertheless,

the error is much larger compared to the results of the symplectic-momentum method (Fig-

ure 6.7, right). To get a better understanding of the meaning of this energy error, we set the

absolute error in relation to the actual muscle work, see equation (6.16).

0 0.05 0.1 0.15 0.2 0.25−1.5

−1

−0.5

0

0.5

1

1.5

2 symplectic−momentumsimulink ode8 (explicit)simulink ode14x (implicit)

Figure 6.8: Relative energy error Eerr related to muscle work for simulation of E1a (m = 0.05kg, G = 1) with

symplectic-momentum method, Matlab/Simulink explicit solver (ode8) and Matlab/Simulink implicit

solver (ode14x) for a fixed time step of ∆t = 10−3s. For clarity and comparability the vertical axes are

cut at −1.5% and 2%.

From Figure 6.8 we can recognise that the resulting relative energy error Eerr of the Mat-

lab/Simulink integrators calculated with a time step ∆t = 10−3s can be very large, especially

if the muscle work is low, e.g. at the beginning of the movement and especially at t = 0.15s.

During the period where the muscle work is not close to zero, the percentage energy error Eerr

of the Matlab/Simulink integrators amounts to maximum 1−2%. Again, it is obvious that the

results of the symplectic-momentum method are energy consistent.

Numerical results E1b: Influence of gearing and mass on energy consistency The global

behaviour for muscle force, contraction velocity and muscle length is again nearly similar for all

methods, if one changes mass and/or gearing factors in the simulations. In the left hand part of

Figure 6.9 the absolute value of the energy error Echec for an increased mass is depicted. Again,

both Matlab/Simulink integrators lead to very similar results for most of the simulation time.

If we compare this to E1a (Figure 6.7, left), we see that the energy error of the Matlab/Simulink

results gets lower when increasing the mass to 0.2kg. Nevertheless, absolute energy errors up

to 0.3J are still possible. Decreasing the gearing to G = 0.5 and leaving m = 0.05 kg leads to a

smaller but more uniform amount of absolute energy error for the Matlab/Simulink integrators

(Figure 6.9, right) compared to the results of E1a (Figure 6.7, left). The results for the relative

energy error Eerr related to the actual muscle work are shown in Figure 6.10. In the beginning

of the movement, there is a small area with undefined energy error as the muscle work is still

zero.

63

Page 86: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6 Muscle actuation

0 0.1 0.2 0.3 0.4−0.1

0

0.1

0.2

0.3

0.4

symplectic−momentum

simulink ode8 (explicit)

simulink ode14x (implicit)

0 0.05 0.1 0.15 0.2 0.25−0.2

0

0.2

0.4

0.6

symplectic−momentum

simulink ode8 (explicit)

simulink ode14x (implicit)

Figure 6.9: Absolute energy error Echec for simulation of E1b with symplectic-momentum method, Matlab/Simulink

explicit solver (ode8) and Matlab/Simulink implicit solver (ode14x), ∆t = 10−3s: increased mass

m=0.2kg, G = 1 (left) and m=0.05kg, decreased gearing G = 0.5 (right).

For an increased mass (Figure 6.10, left), the relative error of the Matlab/Simulink integrators

can locally reach up to −1% at the beginning of the movement, when the muscle work is still

low. During the further movement, the relative energy error stays below 0.25% of the actual

muscle work.

0 0.1 0.2 0.3 0.4−1.5

−1

−0.5

0

0.5

1

1.5

2

symplectic−momentum

simulink ode8 (explicit)

simulink ode14x (implicit)

0 0.05 0.1 0.15 0.2 0.25−1.5

−1

−0.5

0

0.5

1

1.5

2

symplectic−momentum

simulink ode8 (explicit)

simulink ode14x (implicit)

Figure 6.10: Relative energy error Eerr related to actual muscle work for simulation of E1b with symplectic-

momentum method, Matlab/Simulink explicit solver (ode8) and Matlab/Simulink implicit solver

(ode14x), ∆t = 10−3s: increased mass m=0.2kg, G = 1 (left) and m=0.05kg, decreased gearing

G = 0.5 (right). For clarity the vertical axes of the plot are again limited to [−1.5, 2]%.

For an decreased gearing factor G = 0.5 (Figure 6.10, right), the relative energy error is getting

very large for both Matlab/Simulink integrators at t = 0.225s, because of the division by very

small values of the actual muscle work at that time. During the main part of the simulation,

64

Page 87: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6.1 Hill-type muscle models

the relative energy error is between 0.25% and 0.5% of the actual muscle work. Notice that

the symplectic-momentum method is energy consistent during the whole simulation and the

relative energy error is still zero, even if we divide by a very small actual muscle work.

Problem formulation of example E2: Muscle lifting an arm To investigate angular mo-

mentum consistency in addition to energy consistency of both Matlab/Simulink (toolbox Sim-

Mechanics) and symplectic-momentum results, we study a second numerical example. Herein,

an arm supported by a spherical joint at a wall, is lifted by a muscle against gravity, see

Figure 6.11.

Figure 6.11: Muscle lifting an arm (E2).

While lifting this arm, the angular momentum is not constant, but the change in angular

momentum in one time step ∆Ln+1 = Ln+1 − Ln is caused by the momenta resulting from

forces and gravity acting on the bodies (τ ∈ R3), i.e.

Lchecn+1= ∆Ln+1 −

∫ tn+1

tn

τ dt = 0 (6.18)

We simulate one single muscle contraction (E2a) as well as periodic contraction-relaxation

cycles (E2b).

Numerical results E2a: Single contraction cycle In a first simulation, we let the muscle

contract once and lift the arm during a total simulation time of one second. The results for

both Matlab integrators we investigate during this study are again very similar. Therefore, we

only illustrate the results for ode8 for this example.

The global behaviour of all simulation methods calculated at a time step of ∆t = 10−4s fits

again very well to the result of a reference solution calculated with a time step of ∆t = 10−6s.

Simulations with larger time steps than 10−4s are not possible for this example, both the

Matlab/Simulink integrators and the symplectic-momentum method do not converge or show

unreasonable results.

Even though the time step is quite small and despite the fact that there are nearly no visible dif-

ferences between the methods concerning the observed variables, the Matlab/Simulink method

still leads to significant energy and angular momentum errors, see Figure 6.12. In contrast to

that the results of symplectic-momentum method are angular momentum consistent and show

a good energy behaviour.

65

Page 88: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6 Muscle actuation

0 0.2 0.4 0.6 0.8 1−0.02

0

0.02

0.04

0.06

0.08

0 0.2 0.4 0.6 0.8 1−2

−1

0

1

2x 10

−4

0 0.2 0.4 0.6 0.8 1−5

0

5

10x 10

−3

0 0.2 0.4 0.6 0.8 1−1

0

1

2x 10

−5

symplectic momentum Simulink

Figure 6.12: Simulation of muscle lifting an arm with symplectic-momentum method and Matlab/Simulink explicit

solver (ode8), the muscle is stimulated for 1s. Energy (left): absolute values (top) and absolute error

per time step (bottom), angular momentum (right): absolute values (top) and absolute error per time

step (bottom).

Numerical results E2b: Periodic contraction-relaxation cycle In a further simulation, we

let the muscle contract and relax periodically for a longer time (100s), resulting in stretch-

shortening cycles which are comparable to the muscle function during cyclic loading. Starting

at the original length of lm = 52mm, the muscle is active as long as lm is larger than 47mm.

If the muscle contracts further, the activation is set to the pre-activation level A0, until the

muscle is elongated and lm exceeds 52mm again.

In Figure 6.13 and 6.14 we can see the results for energy and angular momentum during this long

term simulation. For clarity only the first and the last second of the simulation are illustrated

in the left hand parts and in the right hand parts of the Figures 6.13 and 6.14, respectively.

One can see that the Matlab/Simulink errors in energy and angular momentum consistency

per time step are still small (order of magnitude 10−3 and 10−5, respectively) but as they stay

apparent over long time they can at least partially be responsible for a phase difference at the

end of the simulation.

Summary In this section, a structure preserving simulation method is compared to com-

mercially available Matlab/Simulink integrators concerning the simulation of muscle forced

movements. Therefore, the actuation by muscle forces is included via nonlinear Hill-type mus-

cle models in a symplectic momentum preserving simulation, see Chapter 4 and [Mars 01,

Leye 08, Leye 10] for details on this integration method.

Due to the discretisation of the variational principle instead of discretising the equations of

motions of a problem, this approach leads to a structure preserving simulation framework. In

comparison, common commercially available integrators as for example the Matlab/Simulink

ode solvers can show numerical dissipation in energy and angular momentum during dynamic

simulation. Within this section, the energy and angular momentum error of standard Mat-

66

Page 89: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6.1 Hill-type muscle models

lab/Simulink integrators is quantified for two simple examples and compared to the results of

the structure preserving symplectic-momentum method.

0 0.2 0.4 0.6 0.8 10

0.01

0.02

0.03

0.04

99 99.2 99.4 99.6 99.8 1000

0.01

0.02

0.03

0.04

0 0.2 0.4 0.6 0.8 1−6

−4

−2

0

2

4x 10

−3

99 99.2 99.4 99.6 99.8 100−6

−4

−2

0

2

4x 10

−3

symplectic momentum Simulink

Figure 6.13: Long term simulation of muscle lifting an arm with symplectic-momentummethod and Matlab/Simulink

explicit solver (ode8): Energy evolution over time (upper plots) and energy error (lower plots). First

second (left) and last second (right) of the total simulation time of 100s.

0 0.2 0.4 0.6 0.8 1−5

0

5

10x 10

−3

99 99.2 99.4 99.6 99.8 100−5

0

5

10x 10

−3

0 0.2 0.4 0.6 0.8 1−2

0

2

4

6x 10

−5

99 99.2 99.4 99.6 99.8 100−2

0

2

4

6x 10

−5

symplectic momentum Simulink

Figure 6.14: Long term simulation of muscle lifting an arm with symplectic-momentummethod and Matlab/Simulink

explicit solver (ode8): Angular momentum evolution over time (upper plots) and error in angular

momentum (lower plots). First second (left) and last second (right) of the total simulation time of

100s.

67

Page 90: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6 Muscle actuation

Even the simple example of a single muscle lifting a point mass shows local differences between

the different simulation methods and it is clearly visible that energy consistency is not given us-

ing the Matlab/Simulink integrators. For more complicated forward dynamics simulations and

even more in the context of optimal control simulations, it is crucial to use the largest possible

time step in the numerical integration without losing too much accuracy to save computational

effort. Therefore it is essential to compare the energy errors resulting from calculations with

the largest possible time steps.

If one calculates a relative energy error related to the actual muscle work, the Matlab/Simulink

energy error can locally result in large values, especially in situations, where the muscle work is

low (low forces or low velocities). Even in areas with larger muscle work, the amount of relative

energy error calculated for the simulation with the maximal possible time step size can reach

up to 2% depending on mass and gearing factor. In contrast to that, the symplectic-momentum

method is energy consistent for this example. Both absolute and even the relative energy error

are always zero to numerical accuracy, no matter how low the actual muscle work is.

In a second example we additionally investigate the angular momentum consistency of the

different simulation methods. Even if the maximal possible time step size is lower for this ex-

ample, Matlab/Simulink integrators again lead to energy and angular momentum inconsistency

whereas the symplectic-momentum method represents angular momentum of the system in a

correct way and shows a good energy behaviour. During a periodically contraction-relaxation

simulation with Matlab/Simulink, these errors in angular momentum and energy stay apparent

and are suspected to at least partially influence a phase difference at the end of a long term

simulation between the results of Matlab/Simulink and the symplectic-momentum method.

We can conclude that the errors for Matlab/Simulink integrators can be significant, depending

on the time step size. Even for smaller time step sizes, the error is not negligible. In contrast

to that, the results of the symplectic-momentum method are energy consistent for the linear

problem and show angular momentum consistency and a good energy behaviour in a further

example including a joint.

To reduce errors in energy and angular momentum caused by the integrator during the simu-

lation of simple movements actuated by a single muscle (or a reduced number of muscles), it

is commonly suggested to simulate with relatively small time steps. In the case of repetitive

movements and in long-term simulations, reducing the step size may not be sufficient and using

a structure preserving method is suggested. This may be even more important in more complex

systems including many muscles and joints and in particular for optimal control simulations,

where cost functions are related to muscle work or energy and where reducing the step size can

cause a dramatical increase in computational effort.

68

Page 91: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6.1 Hill-type muscle models

6.1.2 Hill-type muscle model for optimal control simulations

In the last section as well as in [Maas 12b], it is shown for a typical Hill-type model with three

components that there can be a significant influence on the results, when using the introduced

structure preserving variational integrator compared to Matlab/Simulink integrators in the

context of muscle actuated motions. The presented muscle model is, due to its arrangement

with a parallel and a serial elastic component, well-suited to represent real muscle behaviour, see

for example [Sieb 08]. However, when it comes to fast dynamics and optimal control simulations,

a model with three components as illustrated in Figure 6.1 has certain disadvantages. Actually,

because of the homogenous muscle set up built of a large number of sarcomeres, the muscle force-

length relation is assumed to be proportional to the sarcomere force-length relation. Models

with three components generally contradict this assumption, as the length of the contractile

element is depending on the stretch of the SEC as well.

For the muscle force-velocity relation this is even more obvious. Let the muscle force be suddenly

reduced while the muscle is contacting, for example by a sudden reduction in activation. Then

the shortening velocity of SEC is fast, resulting in a sudden stretch of the CC-element, while the

outer muscle velocity is still contracting. That means according to the model, both velocities

can be directionally opposite within a simulation, which contradicts the sliding filament theory

(see Section 2.4). Additionally, this naturally yields numerical problems in the inner iteration

scheme. A sudden stretch in the CC element yields a sudden increase in the fv factor and a

sudden change in the fl behaviour, which both can increase the CC force although the outer

muscle force is supposed to decrease. Therewith numerically finding an equilibrium can be

difficult.

Moreover, if a sudden relaxation of the muscle occurs due to the dynamical behaviour of the

model, i.e. a passive contraction, it may occur – depending on the experimentally determined

parameter set – that the parallel elasticity still produces a force. This results in negative fvvalues, that are not properly defined, or in other words, this requires the muscle to produce at

least small compressive forces on the bones (see also [Gunt 97]), which is not realistic as well.

The numerical meaning of such issues appears when implementing such a model in an optimal

control framework. During the iterations of the optimiser, several not necessarily realistic

configurations are tested and the problems described above appear more often compared to

forward dynamics simulations. If during the optimisation procedure fl or A reach zero, fv is

not defined, causing an abortion of the simulation.

One possibility to treat such problems is to decrease the time step size in the inner muscle

iteration scheme, naturally accompanied by an increasing simulation time. Certainly, this can

be completely avoided by case decisions and setting hard limits on fl, fv and A to stay larger

than zero, but then the resulting contraction velocity of the CC is insufficiently slow to reach

an equilibrium state of the muscle model within a Newton iteration procedure. Furthermore,

the need of such stringent bounds on the optimisation variables means a limitation to interior

point algorithms as active set algorithms may violate bounds during the iterations. At this

stage, it seems that the only remedy is to include the inner muscle velocity as a state variable

into the dynamics simulation framework, similarly proposed by [Gunt 97], which is a future

topic not included in this work.

Besides, implementing gradients to improve the performance of the optimal control simulations

69

Page 92: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6 Muscle actuation

is difficult in the case of the presented muscle model in the last section. In particular the

force-length relation may lead to problems because of its non differential transitions between

the piecewise linear relations as illustrated in Figure 2.10. Altogether, these issues motivate the

implementation of a Hill-type muscle model with only one parallel elasticity into the optimal

control framework, see Figure 6.15.

Figure 6.15: Hill-type muscle model with a contractile component and a parallel elastic component.

Here, the discrete scalar force amount of the muscle force Fmn in a time interval [tn, tn+1] can

be calculated via Fmn = FCC

n + F PECn . Assuming the parallel elasticity of the muscle to be

proportional to the discrete length of the muscle element lmn with the proportionality constant

kp and introducing a discrete muscle activation An in the time interval [tn, tn+1] yields

Fmn = fl (l

mn ) fv(v

mn ) An F im

max + kp lmn (6.19)

where fl (lmn ) ∈ [0, 1] is a function describing the force-length relation of the muscle and

fv(vmn ) ∈ [0, 1.4] denotes the Hill-hyperbola like force-velocity relation, which now depends on

the complete outer muscle length lmn ∈ R and velocity vmn ∈ R. The contraction velocity of the

muscle is approximated via vmn =lmn+1 − lmn

∆t. The muscle force τm

n acting on the body is given

by the product of the scalar force value and the force direction rn.

τmn = Fm

n rn (6.20)

6.1.2.1 Force-length behaviour

In (6.19), the force-length relation of the muscle model is specified via the function

fl (lmn ) =

(−1

(lopt − lmin)2(lmn − lopt)

2 + 1

)if lmin < lmn < 2lopt − lmin

0 else(6.21)

where lopt ∈ R+ is the optimal muscle length yielding fl = 1. By adapting the muscle

parameters lopt and lmin ∈ R+ to the geometry of our model, it is ensured that fl is mostly in

the parabolic part. An illustration of the parabolic function fl(lmn ) is given in Figure 6.16. For

simplicity, the ratiolmin

loptis chosen to be equal for all muscles.

70

Page 93: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6.1 Hill-type muscle models

0 0.5 1 1.5 2

0

0.2

0.4

0.6

0.8

1

Figure 6.16: Example of a parabolic force-length behaviour.

6.1.2.2 Force-velocity behaviour

As in the muscle model with three components described in the previous section, the force-

velocity behaviour of a muscle is modelled with the typical Hill-hyperbolic relation, see Fig-

ure 2.11

fv(vmn ) =

vmmax − vmn

vmax +vmnγ

, vmn < 0 (concentric part)

B1

vmnvmmax

−B2

+B3, vmn ≥ 0 (eccentric part)(6.22)

Note that in contrast to (6.9), the contraction velocity vmn of the muscle is the outer velocity of

the muscle model and needs not to be determined with an inner iteration scheme. For the lack

of experimental data for arm muscles, a value of vmmax being −2 lopt per second up to −20 lopt per

second is used to keep the fv value in a realistic range during the optimal control simulations. All

other parameters are used as described in Section 6.1.1, see also [Sieb 08, Maas 12b, Maas 12a].

Specific parameters for the muscles used to simulate the elbow actuation in the later part of

this work are given in the Appendix C.2.

6.1.2.3 Discrete muscle forces

For the use within a symplectic-momentum scheme as given in (4.14), the discrete forces f+n−1

and f−

n can now directly be calculated with

f+n−1 =

h

2BT (qn) · τ

mn−1 =

h

2BT (qn) ·

[Fmn−1(qn−1, qn) r

mn−1

](6.23)

f−

n =h

2BT (qn) · τ

mn =

h

2BT (qn) ·

[Fmn (qn, qn+1) r

mn

](6.24)

71

Page 94: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6 Muscle actuation

6.2 Dynamics of the muscle path

The essential task of the muscle models presented above is to represent the typical force-length

and force-velocity relation of real muscles. Hence, the muscle length, the contraction velocity

and the force direction of every muscle has to be provided in every time step of a dynamical

simulation. This section addresses the question, how to approximate the muscle path during

a dynamical simulation such that its dynamically changing behaviour is represented, while the

computational effort is kept in a reasonable range, allowing the application within optimal

control simulations of biomechanical motion.

As this topic is of high interest for dynamical investigations in biomechanics, a lot of research

has been performed in this area during the last decades. Several studies use an alterable num-

ber of artificial ’via’ points or ’wrapping’ points to relate the muscle path to the joint angle

[Murr 95, Sher 10]. The determination of such artificial points requires a lot of anatomical

knowledge, which is not yet available for all biomechanical structures and the results are quite

sensitive to the location of such points. Further on, a dynamical sliding of muscle paths around

a joint during a dynamical simulation can not be represented with this approach.

Other approaches are based on the idea, that a muscle tone is always present, even at rest (see

for example [Wink 10]), which leads to the conclusion that tendons and muscles are supposed

to follow the path of minimal distance between two insertion points, while not intersecting the

bones. To capture this fact together with a sliding of the muscles around bones and other

structures, several iterative or optimisation based methods are developed, in order to solve

the upcoming nonlinear equations, see [Garn 00, Mars 08, Stav 12, Scho 13], to mention just a

few. In [Mars 08], an optimisation based method is compared to an analytical approach for a

sphere-cylinder shaped bone coupling. The ’obstacle-set method’ presented in [Garn 00] deliv-

ers a versatile algorithm to find a muscle path by case decisions for arbitrary coupled mostly

smooth ’obstacle’ bodies like spheres and cylinders. For certain kinds of obstacle couplings,

e.g. two cylinders around the elbow, the upcoming nonlinear equations can not be solved an-

alytical. For such cases, [Garn 00] suggest a root-finding algorithm. In [Stav 12, Scho 13], a

more general approach on finding shortest paths on arbitrary surfaces is investigated. Therein,

also a root-finding algorithm is suggested in the solution procedure.

When implementing such methods in ocp frameworks, the main issue that arises, is the signifi-

cant increase in computation time. Within an optimal control problem, the path of each muscle

has to be computed in each time step during each step of the ocp iteration. If the computation

of a single path then requires an iteration schemes like root-finding or the solution procedure of

an inner optimisation problem, this leads to an immense total computation time. In particular,

to be able to compute problems that comprise an large number of optimisation variables and

involve a large number of muscles, it is necessary to find an appropriate simplification here

without introducing unnecessary modelling errors.

In this chapter, two different approaches to muscle path computation are illustrated. First, an

optimisation based method, similar to the ESM method presented for example in [Mars 08], is

examined. Here, an optimisation problem is formulated with the goal to minimise the length

of a tendon/muscle path between origin and insertion point over a joint, such that the path

does not intersect the bodies. For this purpose, the muscle path is discretised with several

elements. Solving this problem yields an approximation to the length of the muscle path. The

72

Page 95: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6.2 Dynamics of the muscle path

force direction at the insertion points is given via the normalised direction of the first and the

last element. This is a very robust and simple formulation of the problem. However, using an

optimisation procedure like this during forward dynamics or optimal control simulations leads

to several problems as explained above.

Therefore, in a second step, the intend is to reduce computational effort in finding the path of

minimal length around bodies and joints with an algorithm that determines this path as a G1

(geometrical) continuous combination of known geodesic paths, in a similar way as shown in

[Garn 00]. The benefit of our method is the strong orientation towards a short computation

time, meaning to arrange the algorithm such that the most simple path is checked first and the

overall number of operations is reduced therewith.

In space, without an obstacle, the most simple and shortest path between two points is a direct

line, while on the surface of a cylinder, the shortest path between two points is a helix. Thus, the

algorithm uses G1-continuous combinations of straight lines (wherever possible, i.e. whenever

the straight line does not intersect the bodies or joints) and helices. Note that G1-continuously

joined curves share tangential directions, while the length of the tangent vectors might differ.

The length of the muscle path can directly be calculated as the sum of the length of the sin-

gle parts and the force direction is given via the tangent vector at the insertion point. The

simulation time can be significantly reduced by using this case dependent and therefore semi-

analytical algorithm, whereas the resulting force direction and path length are comparable to

those obtained via optimisation. However, for certain rigid body configurations, the problem

of finding the minimal path cannot be solved analytically. Here, in contrast to [Garn 00], we

do not use a root finding algorithm, but we use the best fitting path from those tested before,

which can be solved within a reasonable amount of computation time considering the solution

of the complete ocp. Furthermore, the problem of finding appropriate initial guesses for the

root-finding procedure is circumvented and analytical gradients of the muscle path with respect

to the configuration of the rigid bodies can be derived much easier and without the need to use

an implicit function theorem. This is mandatory for the computation of the complete analytical

gradients of the ocp. As we use a direct transcription method, i.e. the ocp is transformed into

a constrained optimisation problem, we can use gradient based methods like sqp (sequential

quadratic programming) to solve the problem. Naturally, providing analytical gradients signifi-

cantly improves accuracy and crucially reduces the computation time of the solution procedure

of the complete ocp.

6.2.1 Optimal muscle path

Assuming that the muscles and tendons are always under tension, they are supposed to follow

the path of minimal distance between two insertion points. This approach includes effects like

dynamical sliding of the muscles around joints and bodies during a motion. One possibility

to find this path is to minimise the length of a muscle path between two insertion points over

a joint, so that the path does not intersect the bodies Kj. Let the path of a musculotendon

complex be discretised with ne +1 elements with the element length lei. Then we get ne nodes

Ei ∈ R3 between the insertion points p1 ∈ R3 and p2 ∈ R3, which are summarised in the

optimisation variable E = [E1,E2, . . . ,Ene] ∈ R3ne . The constrained optimisation problem

73

Page 96: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6 Muscle actuation

reads

minE

lm =minE

[‖p1 −E1‖+ ‖Ene

− p2‖+ne−1∑

i=1

‖Ei −Ei+1‖

]

such that: ·Ei /∈ Kj for j = 1, . . . , K

·lemin< lei < lemax

for i = 1, . . . , ne + 1

(6.25)

As an initial guess, the direct connection between p1 and p2 is discretised with ne + 1

elements, which is the minimal possible distance when neglecting the constraints. To ensure

that the nodes stay outside the bodies, we constrain the distance between each element node

Ei and the longitudinal axis of the bodies to stay larger than the radii of the cylinders r1, r2and the joint rJ . The fulfilment of these inequality constraints is checked via the algorithm

illustrated in Table 6.1. Here, l1 and l2 denote the longitudinal length of the two cylinders,

respectively. Additionally, the length of the elements has to stay between certain boundaries,

as shown in (6.25).

Table 6.1: Algorithm 1 determines whether a muscle path intersects the bodies.

· straight lines through longitudinal body axis

x = ϕ1 + λ1d13 x = ϕ2 + λ2d

23 λ1, λ2 ∈ R

· planes through Ei with normal vectors equal to longitudinal body axis

(x−Ei)T · d1

3 = 0 (x−Ei)T · d2

3 = 0

· calculating λ1 and λ2 via insertion

λ1 = (Ei −ϕ1)T · d1

3 λ2 = (Ei − ϕ2)T · d2

3

· limit cases

if λ1 > l1 λ1 = l1, if λ1 < −l1 λ1 = −l1if λ2 > l2 λ2 = l2, if λ2 < −l2 λ1 = −l2

· distance between longitudinal body axes and node/distance between joint center and node

xe1 = ϕ1 + λ1d13 d1 = ‖xe1 −Ei‖

xe2 = ϕ2 + λ2d23 d2 = ‖xe2 −Ei‖

xe3 = J2 d3 = ‖xe3 −Ei‖

· inequality constraints for each node Ei

[r1 − d1, r2 − d2, rJ − d3] < 0

6.2.2 Semi-analytical path procedure for smooth bodies and joints

The length of the muscle path and its direction at the insertion points is needed during forward

dynamics and optimal control simulations. Using an inner optimisation procedure, as described

in the previous section, to find this path leads to several problems. First, the calculation is

very expensive. Note that within an optimal control simulation, this path calculation has to

be executed in every function call, for every muscle and in every time step.

74

Page 97: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6.2 Dynamics of the muscle path

Table 6.2: Algorithm 2 determines the muscle path around smooth bodies and joints analytically.

step 1 test whether a direct line between the insertion points p1 and p2 exists, that does not intersect

the bodies or the joints (using algorithm 1)

if yes: direct line is the shortest possible path

; calculate path length and force directions via (6.27)

else go to step 2

step 2 test whether p∗

2 ∈ K2 exists, such that

· a direct line from p1 to p∗

2 exists that does not intersect the bodies or the joints

· the transition between the direct line from p1 to p∗

2 and the helix from p∗

2 to p2

is G1-continuous

if yes: line-helix combination is the shortest possible path

; calculate length of the path via (6.35) and force directions via (6.36)

else go to step 3

step 3 test whether p∗

1 ∈ K1 exists, such that

· a direct line from p∗

1 to p2 exists that does not intersect the bodies or the joints

· the transition between the direct line from p∗

1 to p2 and the helix from p1 to p∗

1

is G1-continuous

if yes: helix-line combination is the shortest possible path

; calculate length of the path via (6.39) and force directions via (6.40)

else go to step 4

step 4 if each of the previously tested connections intersects the bodies

; take the connection which least intersects the bodies

Say we use a model with 7 muscles, one function call of the optimal control simulation includes

20 time steps, and the optimal control procedure needs 10000 function calls, then this yields

a total number of 1.4 million inner optimisations. Secondly, analytical gradients for optimal

control simulations are difficult to calculate, since in this case the muscle length and force

directions are then the solution of a parameter dependent optimisation whose parameters are

related to the actual configuration.

Due to the presence of mostly smooth bodies and joints like cylinders and spheres in the model,

we can make use of known analytical descriptions of shortest paths on and around the surface

of these bodies and combine them with simple logical considerations. If a direct line between

two insertion points p1 and p2 does not intersect the bodies or the joints, this is the path of

minimal length. Further on, if a direct connection between the two points intersects the bodies

or joints, we know that the shortest path on the surface of a cylinder is a helix given by

xh(t) = ϕ+[d1 d2 d3

r cos(2πth)

r sin(2πth)

h th + c

(6.26)

where ϕ ∈ R3 is the placement vector to the center of mass of the cylinder,[d1 d2 d3

]is an

orthonormal body frame representing its orientation in space, th ∈ [0, 1] is the parametrisation

variable of the helix, r ∈ R+ is the radius of the cylinder, h ∈ R is the pitch and c ∈ R is a

75

Page 98: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6 Muscle actuation

parameter for a displacement in longitudinal direction.

With this we can economise computational effort in finding the path of minimal length around

bodies and joints with the algorithm illustrated in Table 6.2. In the different steps of the algo-

rithm, several calculations have to be executed, which are explained below.

step 1 The algorithm shown in Table 6.1 can be used to test if the direct line intersects bodies

and joints. If this is not the case, the direct line is taken as muscle path, with the length lm and

the force directions rm,1 and rm,2 on the first and second body’s insertion points, respectively.

lm = ‖p2 − p1‖, rm,1 =p2 − p1

‖p2 − p1‖, rm,2 =

p1 − p2

‖p2 − p1‖(6.27)

step 2 Supposing that the path of the muscle is redirected around smooth bodies, the path of

this muscle is required to be G1-continuous, i.e. the tangent vectors at the transition between

line and helix need to have the same direction, while their lengths may differ.

Figure 6.17: Example of typical muscle paths around the elbow: the analytical line-helix solution (left) and the

solution of a 30 node optimisation (right).

If the muscle path starts for example on the front side of a cylinder in p1, see Figure 6.17, and

ends at the back side of another one in p2, the path is a combination of a direct line form p1

in direction to the second cylinder’s front and a helix from front to back of the second cylinder

ending at p2, see Figure 6.17. Demanding the transition between the direct line and the helix

to be G1-continuous, a transition point p∗

2 can be calculated. Let the equation of a direct line

between the insertion point p1 and the transition point p∗

2, as well as its derivation with respect

to its parametrisation variable tg, be given by

xg(tg) = p1 + tg(p∗

2 − p1), x′

g(tg) = p∗

2 − p1 (6.28)

76

Page 99: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6.2 Dynamics of the muscle path

Note that due to G1-continuity, a normalisation of the direction vector of the straight line is

not necessary. The helix on the second cylinder can be described as illustrated in (6.26). At

the insertion point p2 on the second cylinder, this yields

xh(thN) = ϕ2 +R2 ·

r2 cos(2πthN

)

r2 sin(2πthN)

h2 · thN+ c2

= p2 (6.29)

with R2 =[d21 d2

2 d23

]. This leads to the parameter thN

=1

2πatan2 (a2, a1) at the helix end

point p2 with a = [a1, a2, a3]T = (R2)T · (p2 − ϕ2) and c2 = a3 − h2 thN

. Using the function

atan2 enables the computation of the correct quadrant. At p∗

2, the helix starts with th0and we

get a tangent vector

xh(th0) = ϕ2 +R2 ·

r2 cos(2πth0

)

r2 sin(2πth0)

h2 · th0+ c2

= p∗

2, x′

h(th0) = R2 ·

−2πr2 sin(2πth0

)

2πr2 cos(2πth0)

h2

(6.30)

To ensure a G1-continuous transition, the cross product of the tangent vector of the direct line

(6.28) and the tangent vector of the helix in point p∗

2 (6.30) has to vanish

R2 ·

−2πr2 sin(2πth0

)

2πr2 cos(2πth0)

h2

× (p∗

2 − p1) = 0 (6.31)

Inserting (6.30), the third row of this cross product finally yields

−r2 = a12 sin(2πth0) + a11 cos(2πth0

) (6.32)

with a1 = [a11, a12, a

13]

T = (R2)T · (ϕ2 − p1). Under certain assumptions, we can summarise

sin(2πth0) and cos(2πth0

) into one trigonometric function using the addition theorems and

solve for th0. For this purpose, we consider a right angled triangle on a circle with the radius

rc =√

(a11)2 + (a12)

2 with the short sides of the length a11 and a12, where α is one of the acute

angles of the triangle. Then eight possible substitutions with sin(α) and cos(α) have to be taken

into account, which are given in the appendix in (D.1). Therewith, we get eight reformulations

of (6.32) using the addition theorems, given in detail in (D.2), where they are also illustrated

in Figure D.1. Concluding, we get maximal eight solutions for th0, if√

(a11)2 + (a12)

2 ≥ r2, all

of the form of (6.33), only differing in arcsin and arccos, the signs, and the computation of α

depending on the chosen substitution in (D.1)

th0=

1

(arccos

(−r2√

(a11)2 + (a12)

2

)+ α

)(6.33)

Otherwise, if√

(a11)2 + (a12)

2 < r2, (6.32) has no solution in R. In detail, the possible solutions

are given in (D.3).

Inserting th0in the first row of the cross product (6.31), we get

h2 =−2πr2 cos(2πth0

)(a3 + a13)

2πr2 cos(2πth0)(th0

− thN)− a12 − r2 sin(2πth0

)(6.34)

77

Page 100: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6 Muscle actuation

Further inserting th0and h2 in (6.30) we get eight solutions for p∗

2 , from which the geometrically

correct one can be found by choosing the points that truly yield a connection tangential on the

cylinder surface and by selecting the one closest to the direct line between p1 and p2.

The algorithm shown in Table 6.1 can then be used to test whether the direct line from p1 to

p∗

2 intersects bodies and joints. In case the direct line does not intersect the bodies, the length

of the muscle path and the force directions can be calculated via

lm = ‖p∗

2 − p1‖+ 2πr2 |thN− th0

|

√1 +

(h2

2πr2

)2

(6.35)

rm,1 =p∗

2 − p1

‖p∗2 − p1‖

, rm,2 = −R2 ·

−2πr2 sin(2πthN

)

2πr2 cos(2πthN)

h2

(6.36)

An illustration of a typical line-helix muscle path around the elbow is given in Figure 6.17.

step 3 If the line-helix connection intersects the bodies, a vice-versa helix-line connection is

tested, see for example Figure 6.18. Here, a point p∗

1 ∈ K1 on the surface of the first cylinder

is searched such that the transition between a helix from p1 to p∗

1 and a direct line from p∗

1 to

p2 is G1-continuous.

Figure 6.18: Example of typical muscle paths around the elbow: the analytical helix-line solution (left) and the

solution of a 30 node optimisation (right).

Following the procedure in step 2, the cross product of the tangent vectors in point p∗

1 has to

vanish

R1 ·

−2πr1 sin(2πthN

)

2πr1 cos(2πthN)

h1

× (p2 − p∗

1) = 0 (6.37)

with R1 =[d11 d1

2 d13

]. The point p∗

1 is the end point of the helix on the first body at thN

which, when inserted into (6.37), yields from the third line of the cross product

r1 = a22 sin(2πth0) + a21 cos(2πth0

) (6.38)

78

Page 101: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

6.2 Dynamics of the muscle path

with a2 = [a21, a22, a

23]T = (R1)T · (p2 − ϕ1). Similar to the procedure in step 2, we can solve

for thNand h1, which finally leads to p∗

1. Again, the algorithm shown in Table 6.1 can be used

to test if the direct line from p∗

1 to p2 intersects bodies and joints. If this is not the case, the

length of the muscle path and the force directions can be calculated via

lm = ‖p2 − p∗

1‖+ 2πr1 |thN− th0

|

√1 +

(h1

2πr1

)2

(6.39)

rm,1 = R1 ·

−2πr1 sin(2πth0

)

2πr1 cos(2πth0)

h1

, rm,2 =

p∗

1 − p2

‖p∗1 − p2‖

(6.40)

A typical helix-line muscle path around the elbow is depicted in Figure 6.18.

step 4 In case all of the above presented paths intersect the bodies or if (6.38) or (6.32) or

both of them do not have a solution in R, the muscle path is approximated as that one least

intersecting the bodies. As a criterion to compare the amount of intersection of different paths,

the maximal intersection is weighted by the length of the direct line part. Of course this is a

strong simplification, but these cases only rarely occur for relatively large pronation/supination

joint angles. Nevertheless, the algorithm is to be included in an optimal control framework,

where unrealistic body configurations may occur during the iterations. We therefore have to

guarantee that it is running robustly even for unrealistic body configurations.

Remark 6.2.1 (Alternatives in step 4) An alternative to step 4 is for example a root-finding

algorithm as illustrated in [Stav 12, Scho 13] solving the upcoming equations for a helix-line-

helix or – including also the shortest path on the joint sphere – a helix-orthodrome-line-helix

connection. Or one could formulate an optimisation problem and search for the optimal tran-

sition point such that the length of the helix and line parts is minimised. However, all of this

further approaches yield far too high computational effort when implemented in an optimal con-

trol procedure.

Furthermore, such formulations depend on initial guesses and choosing them, such that the

optimal control simulation is running robustly, is an additional issue.

During forward dynamics simulations muscle paths from earlier time steps serve as good initial

guesses. In contrast to that, during an optimal control simulation, the whole trajectory and

force field are guessed at once during each iteration, meaning the evolution of a muscle path

over time might differ too much to be used as sequential initial guesses for each next time step.

Moreover, derivations of muscle length and force direction with respect to the configuration of

the bodies are needed to compute analytical gradients of the optimal control problem. While a

root-finding algorithm can be differentiated with an implicit function theorem, the derivations

of the optimal control procedure are not easy to achieve when muscle length and force direction

are the result of a parameter dependent optimisation.

79

Page 102: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe
Page 103: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

7 Optimal control of constrained forced

biomechanical systems

Comprehending the control mechanisms behind human motion is of interest in several different

fields of application. On the one hand, sports motions and everyday motions can be inves-

tigated by means of optimal control simulations in order to reduce the effort or to improve

the performance. On the other hand, also the development of prostheses benefits from im-

plementing more realistic controls and medical diagnosis can be verified by interpretation of

pathologic motions with optimal control simulations. Moreover, the optimal ergonomic design

of workplaces can be examined, with particular respect to dynamical effects.

The assumption that such motions are controlled in an optimal way is frequently mentioned

in the literature, investigating different motions with diverse physiologically motivated crite-

ria [Crow 81, Uno 89, Pand 90, Hard 93, Rose 95, Soec 95, Acke 06, Bies 07, Ober 09, Frie 09,

Xian 10]. Among several possibilities to formulate optimal control problems, one can e. g. distin-

guish between indirect and direct optimal control simulation methods. While indirect methods

derive the necessary optimality criteria first and then discretise this ode problem, direct meth-

ods start with a discretisation of the problem and therewith transcribe the infinite dimensional

problem into a finite dimensional nonlinear optimisation problem [Leye 11]. A special recently

developed form of this direct transcription methods called DMOCC (discrete mechanics and

optimal control of constrained systems) is used within this thesis. The goal is to find local

solutions of a nonlinear optimal control problem which consists of minimising a given discrete

objective function subject to constraints describing the system’s dynamics.

The benefit of this method is the use of variational integrators as briefly illustrated in Chap-

ter 4. The key difference to common integrators is the direct discretisation of the variational

principle in order to derive the discrete equations of motion. Consequently, the solutions gener-

ated with this method inherit certain characteristics of the real system like for example angular

momentum consistency and a good energy behaviour. In other words, all applied torques and

forces are exactly transferred into motion of the system and no numerical drift can be noticed.

When using optimal control criteria that are directly related to the actuating torques and

forces, like for example minimising the effort of the motion, it is crucial that those quantities

are represented correctly in order to get meaningful results.

7.1 Discrete mechanics and optimal control for constrained

systems with joint torque and muscle actuation

For a multibody system connected via joints and its dynamics discretised with a constant

time step ∆t ∈ R there exists an infinite number of possible trajectories and force fields to

perform a motion from a predefined start configuration q(t0) = q0 and conjugate momentum

81

Page 104: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

7 Optimal control of constrained forced biomechanical systems

p(t0) = p0 to a given end configuration q(tN) = qN and conjugate momentum p(tN ) = pN .

One possibility to treat this, is to formulate and solve an optimal control problem as illustrated

in (7.1) and to use an appropriate discrete objective Jd, or respectively a discrete cost function

Cd, to find a trajectory and force field that minimise this objective. Herein, the discrete

generalised coordinates ud = {un}Nn=0, the generalised joint torques τ J

d = {τ Jn}

N−1n=0 and –

if muscle actuation is implemented – the sequence of muscle activations Ad = {An}N−1n=0 are

the optimisation variables. At the same time, the discrete equations of motion (4.14) and

boundary conditions (for example to perform a rest-to-rest manoeuvre p0 = pN = 0) must

be fulfilled. There may be further constraints like bounds on the optimisation variables and

path constraints (equality or inequality), e. g. to set limits on the joint angles according to

anatomical restrictions

minud,τ J

d,Ad

Jd(ud, τJd ,Ad) = min

ud,τ J

d,Ad

N−1∑

n=0

Cd(un,un+1, τJn,An)

subject to: · fulfilment of the discrete equations of motion (4.14)

· initial and final conditions

· path constraints

(7.1)

Remark 7.1.1 (Biomechanical redundancy) Within this work, complete joint torque actuation

as well as complete muscle actuation of all joints is used, but also mixed systems are inves-

tigated, where for example the joint torque of only one joint is replaced by muscle actuation.

Biomechanical systems usually show an actuation redundancy, i.e. there are more muscles ac-

tuating a joint than degrees of freedom are present. For example, in the human arm model

used within this work, the elbow is a cardan joint with two degrees of freedom. Its two dimen-

sional joint torque actuation per time step is replaced by seven muscle activations per time step.

Consequently, the total number of optimisation variables increases significantly. This strongly

motivates the implementation of analytical gradients of the optimal control problem in particular

for simulations with muscle actuation. The general derivation of those gradients is exemplarily

given for the constraints of the optimal control problem in the Appendix A.

7.2 Physiologically motivated objective functions

Generally, there exists an infinite number of possible trajectories to perform a motion from a

given initial configuration to a target configuration. A possibility to find specific trajectories

is to formulate an optimal control problem and solve it while using different physiologically

motivated objective functions. The resulting trajectories can then be compared to literature or

experiments according to their ability to predict the real motions as for example presented in

[Frie 09]. The implementation of muscle actuation yields the possibility to relate the optimality

criteria to the muscle behaviour.

In the following, several objective functions commonly known from literature are presented

and reformulated in the notation used within this work. In addition to commonly investigated

criteria, an idea is illustrated to formulate a criterion that reduces the impact on the joints

82

Page 105: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

7.2 Physiologically motivated objective functions

during a motion. Herein, it is of particular importance that we are solving an index 3 differential-

algebraic system. Therewith, the constraint forces can be directly accessed and used within

a cost function of the optimal control problem. This criterion could be of interest for the

ergonomic design of everyday or industrial processes. In a more medical context, it could help

to explain pathologic motion and confirm a diagnosis, e.g. if a patient is using relieving postures

to minimise pain or discomfort.

7.2.1 Minimal control effort

A typical and in the field of robotic and automation widely used criterion for optimal motion

is the minimisation of control effort [Bett 09, Leye 11]. Minimising the effort of a motion is

supposed to yield less exhausting motions. For simulations with joint actuation, it can be

formulated as follows

Jd(ud, τ d) =1

2∆t

N−1∑

n=1

‖τ n‖2 (7.2)

For mixed systems including muscle forces, this goal can be reformulated in several ways.

The first possibility here is including the total amount of activations together with the joint

torques in other joints, which are not muscle actuated. Note that for simplicity, a slight

abuse of notation is accepted here, in a way that for pure joint torque actuated systems the

objective is denoted by Jd(ud, τJd ), while for systems with muscles, the objective is denoted by

Jd(ud, τJd ,Ad)

Jd(ud, τJd ,Ad) =

1

2∆t

N−1∑

n=1

[ω1

∥∥τ Jn

∥∥2 + ω2 ‖An‖2]

(7.3)

Herein, the weighting factors ω1, ω2 ∈ R ensure that the influence of torques and activations on

the value of the cost function are in the same order of magnitude. A criterion on minimising

the effort of the motion as given in (7.3) can also be formulated in a similar way including

the resulting muscle force τm instead of the muscle activations (together with the joint torque

effort in the other joints)

Jd(ud, τJd ,Ad) =

1

2∆t

N−1∑

n=1

[ω1

∥∥τ Jn

∥∥2 + ω2 ‖τmn ‖

2]

(7.4)

Moreover, it is possible to weight the muscle forces in this cost function by the cross sectional

area of the muscles, like it is done in [Crow 81], to evaluate muscle stresses. This criterion

demands larger force amounts from thicker muscles, which can recover better than thinner

ones. Hence, this criterion is supposed to lead to motions that can be performed with maximum

endurance

Jd(ud, τJd ,Ad) =

1

2∆t

N−1∑

n=1

[ω1

∥∥τ Jn

∥∥2 + ω2 ‖σmn ‖

2]

(7.5)

83

Page 106: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

7 Optimal control of constrained forced biomechanical systems

with the muscle stress σmn,i =

τmn,i

PCSAi

for the i’th muscle and its cross sectional area PSCAi,

taken from [Murr 00].

Within all of the above introduced muscle related criteria, we have to find weighting factors ω1

and ω2 to ensure that both parts of the cost function (muscle related and joint torque related)

are minimised.

7.2.2 Minimal control change

A further criterion introduced in [Uno 89] accounts for the minimisation of the change in torques

during the simulation

Jd(ud, τ d) =1

2∆t

N−2∑

n=1

∥∥∥∥τ n+1 − τ n

∆t

∥∥∥∥2

(7.6)

The physiological motivation for such a criterion can for example be explained by a reduction

in control interventions of the CNS. Furthermore, an arbitrary fast change in torques or muscle

activations is physiologically not possible due to an exponential behaviour of muscle activations,

see (6.4). Hence, smooth evolutions of activations are probably more realistic. When including

muscle actuation, (7.6) is reformulated in order to minimise the changes in the activations and

in the joint torques

Jd(ud, τJd ,Ad) =

1

2∆t

N−2∑

n=1

[ω1

∥∥∥∥τ Jn+1 − τ J

n

∆t

∥∥∥∥2

+ ω2

∥∥∥∥An+1 −An

∆t

∥∥∥∥2]

(7.7)

7.2.3 Minimal kinetic energy

To perform the motion with minimal kinetic energy is a goal that often yields motions where the

heaviest bodies move the least. Energy related criteria are in the focus of several investigations,

see for example [Soec 95, Bies 07, Frie 09]. A corresponding objective function reads

Jd(ud, τ d) =1

2∆t

N∑

n=1

(Qp+n )

T ·M−1 · Qp+n (7.8)

with the conjugate momentum Qp+n = Q(qn) ·

[D2Ld(qn−1, qn) + f+

n−1

], where Q(qn) = Ik×k−

GTd ·[Gd ·M

−1 ·GTd

]−1·Gd ·M

−1. This projected momentum fulfils the hidden constraints

on momentum level and is explained in detail in [Leye 08, Leye 10].

7.2.4 Minimal jerk

Minimising the jerk of a motion means to generate a motion with minimal changes in accel-

erations. This is exemplarily used within the grasping simulations to compare the resulting

trajectories with the results of [Frie 09]. There, this criterion is formulated by

Jd(ud, τ d) =1

2∆t

N−2∑

n=1

(s′′′n )2 (7.9)

84

Page 107: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

7.2 Physiologically motivated objective functions

with s′′′n being the third derivative of the fingertip trajectory calculated with finite differences.

In case of the arm motion simulated in this work, this criterion is formulated in generalised

coordinates of all joints as follows

Jd(ud, τ d) =1

2∆t

N−2∑

n=1

∥∥∥∥un+2 − 2un+1 + un

(∆t)2

∥∥∥∥2

(7.10)

Generally, this criterion is supposed to yield uniformly accelerated motions, which are in par-

ticular beneficial e.g. for the transport of fragile freight.

7.2.5 Minimal joint reaction

In addition to those commonly known objectives, a further cost function is formulated that

takes into account the impact on the joints. Here, an approximation of the integral of the sum

of squares of all constraint forces F ϕ and torques T θ in the joints is used

Jd(ud, τ d) =1

2∆t

N−1∑

n=1

[‖F ϕ‖

2 + ‖T θ‖2] (7.11)

In Chapter 5, a possibility to compute these constraint forces and torques is shown for kinematic

pairs, while in the numerical examples within the later part of this work (Chapter 8 and 9),

their computation is also explained for the kinematic chains in use to represent the human arm

and finger.

7.2.6 Minimal manoeuvre time

When examining workplace or sports motions, a common goal is to minimise the manoeuvre

time. An objective for this goal is given by

Jd(ud, τJd ,Ad) = N∆t (7.12)

7.2.7 Maximal throw distance

In special sports motions like long throw or shot put, the goal is a maximal throw distance.

When neglecting the air resistance and starting the throw from a height h = 0, the throw

distance R ∈ R+ can be calculated with

R =v2

gsin(2β) (7.13)

Herein, v is the throw velocity, g is the gravitational constant and β is the throw angle. This

means a maximal throw distance is reached by maximising v in direction of β = 45◦. Hence, an

objective function for long throw and shot put motions is given by a finite differences approach

on the final velocity of the hand in the throw direction rd =e2 + e3

‖e2 + e3‖

Jd(ud, τJd ,Ad) = −rT

d ·qhandN − qhand

N−1

∆t(7.14)

85

Page 108: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

7 Optimal control of constrained forced biomechanical systems

As this criterion does not affect the overall effort of the motion, it can yield physiologically not

reasonable joint torque and muscle activation evolutions. Therefore, it is suggested to use this

criterion together with a bound on the maximal control effort of the motion.

7.3 Constrained optimisation problems

All constrained optimisation problems arising within the solution of optimal control problems

via the direct discretisation method DMOCC are solved using Matlab’s fmincon algorithm

[Math 09] and the optimisation code Snopt 7 [Gill 08].

Within the fmincon algorithm, several options can be chosen. An interior-point algorithm be-

longing to the barrier methods as well as an active-set algorithm, based on sequential quadratic

programming, are provided. Recently, a more robust version of the active-set algorithm which

always fulfils the bounds on the optimisation variables (similar to the interior point algorithm)

has been added, called sqp. During this work, the interior-point algorithm shows a good per-

formance for systems with mixed actuation by joint torques and muscle models, in particular

when using highly nonlinear objective functions and initial guesses far away from an optimum.

If the initial guess is closer to the optimum and especially for objective functions like (7.2),

(7.3), (7.6) and (7.7), the active-set and sqp algorithms often find better local minima. The

Snopt 7 algorithm is especially useful for smaller problems with strong constraints, like in the

case of the steering optimal control simulations, where a constraint on the hand to stay on a

circle is included, see Section 9.2.1.

John Betts writes ’solving an optimal control problem is not easy’ [Bett 09]. A lot of things can

fail when implementing a numerical formulation, in particular when the examined problems are

of high nonlinearity. In the Matlab documentation [Math 09] a detailed description is provided

on what to do if the solver fails in finding a local minimum. A main point mentioned within

both textbooks is the scaling of the problem. In certain cases it may help to scale the cost

function, especially for large problems, to gain a better performance. According to [Bett 09],

badly-scaled problems yield a bad performance even when using good algorithms. It is not

generally defined, what ’well-scaled’ or ’badly-scaled’ means in this context and how it can be

quantified, but a hint for a well-scaled problem is, if a change in the optimisation variable yields

a change in both the cost function an the constraints in about the same order of magnitude.

This is of even more importance when applying finite difference approximations for the gra-

dients of the problem. The implementation of analytical gradients significantly improves the

performance, particularly for systems including muscle actuation.

Nevertheless, problems in fulfilling the constraints can still occur. Mainly based on the approx-

imation done in the fourth step of the muscle path algorithm, see Table 6.2, there may occur

slight inaccuracies in the analytical gradients, which only rarely occur. However, these inaccu-

racies may influence the convergence behaviour of the optimal control simulation, in particular

if both the gradients of the constraints and the gradient of the objective are affected, if the

time step size is included in the optimisation variables, or if the value of the objective is large.

Generally, it is convenient to scale the objective function such that these discontinuities can be

overcome by the solver. In this case it is important to adjust the tolerances appropriately and

to carefully check the meaningfulness of the result. Using the solution gained with a scaled

86

Page 109: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

7.3 Constrained optimisation problems

objective as an initial guess for a simulation with an unscaled objective may give an hint on

the reasonableness. Moreover, it can be helpful to relax the constraints first, e.g. by using

inequality constraints, and then to slowly re-tight them. Another possibility is to try a set of

feasible initial guesses, which can easily be generated by randomly disturbing a solution and

solving the problem with an objective Jd = 1. Thereby, it can also be easily examined, if a

feasible solution can be found at all.

87

Page 110: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe
Page 111: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

8 Model of the human finger

There has been done a lot of research on the control of human motion in recent years. Several

models for the description of how our CNS controls our movements have been developed. Espe-

cially regarding arm movements, energetic considerations like minimising cost functions related

to kinetic energy or change in torques have led to promising models for grasping simulations

[Soec 95, Bies 07]. In [Frie 09], finger movements during grasping are in the focus of research

and they propose a criterion on minimal angular jerk in the fingertip as it yields the fingertip

trajectories best fitting to their experimental results. But all the mentioned works neglect the

influence of gravity on the movements and often only use kinematic models, i.e. they neglect

the dynamics of the model [Frie 09]. For example in [Bies 07] it is stated, that all acting muscle

torques can be additively splitted in a driving torque and a torque that just counteracts gravity.

Therefore they neglected the influence of gravity on the counteracting part of the torques.

In this part of the work, we want to investigate index finger movements and their control by the

CNS similar to [Frie 09] and additionally taking into account the influence of gravity and the

dynamics of the multibody system. Even more important, we use discrete equations of motion,

that preserve the structure of the underlying continuous system as described in Chapter 4.

In a first example, see also [Maas 10], the actuation of the model is implemented via joint

torques. In the formulation of the optimal control problem, we use four different physiologi-

cally motivated cost functions and compare them to the results of [Kamp 03], who state that

fingers follow the trajectory of a logarithmic spiral during a grasping movement. In addition

to that, such simulations can also be compared to motion capturing experiments, which is ex-

emplarily shown in this chapter.

Secondly, nonlinear Hill-type muscle models described in Section 6.1.1 and [Maas 12a] are used

to actuate the finger instead of joint torques, see [Maas 12b]. This leads to an optimal mus-

cle activation and finger trajectory regarding a specified objective function, which are again

compared to the results presented in [Kamp 03].

8.1 Kinematic chain

For the simulation of finger movements, a kinematic chain is used that consists of three rigid

bodies connected by three joints, see Figure 8.1. The first joint called metacarpal joint (MCP)

is a spherical joint that is fixed in point xG. The proximal interphalangeal joint (PIP) and the

distal interphalangeal joint (DIP) combine the medial and distal phalanxes to the finger allowing

rotation around one axis to perform flexion/ extension, only. Hence, they are implemented

as revolute joints. The proximal and medial phalanxes are modelled as cylinders, the distal

phalanx is modelled as a cone. All geometric parameters are approximated from [Buch 92].

89

Page 112: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

8 Model of the human finger

Figure 8.1: Illustration of the index finger model used in this study: kinematic chain and free body diagram (left)

as well as the rigid body model (right).

The restriction of the relative motion of neighbouring bodies due to interconnecting joints

yields external constraints, which are a combination of the constraints for spherical and revolute

kinematic pairs described in Section 5.2.1 and 5.2.2, respectively

gFext(q) =

ϕ1 + ρ11 −XG

ϕ2 + ρ21 − ϕ1 − ρ12

(n1)Td22 − η11

(n1)Td23 − η12

ϕ3 + ρ31 − ϕ2 − ρ22

(n2)Td32 − η21

(n2)Td33 − η22

∈ R13 (8.1)

This results in the constraint Jacobian GFext(q) given in Appendix B. The external constraint

forces in redundant coordinates can be calculated from

GFext(q)

T

λϕ1

λϕ2

λθ21

λθ22

λϕ3

λθ31

λθ32

=

λϕ1 − λϕ2

ρ111 λϕ1 − ρ121 λϕ2 + n11λθ2

1d22 + n1

1λθ22d23

ρ112 λϕ1 − ρ122 λϕ2 + n12λθ2

1d22 + n1

2λθ22d23

ρ113 λϕ1 − ρ123 λϕ2 + n13λθ2

1d22 + n1

3λθ22d23

λϕ2 − λϕ3

ρ211 λϕ2 − ρ221 λϕ3 + n21λθ3

1d32 + n2

1λθ32d33

ρ212 λϕ2 − ρ222 λϕ3 + λθ21n1 + n2

2λθ31d32 + n2

2λθ32d33

ρ213 λϕ2 − ρ223 λϕ3 + λθ22n1 + n2

3λθ31d32 + n2

3λθ32d33

λϕ3

ρ311 λϕ3

ρ312 λϕ3 + λθ31n2

ρ313 λϕ3 + λθ32n2

∈ R36 (8.2)

90

Page 113: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

8.2 Numerical examples of human finger motion

The reduced set of constraint forces is given by

h1

ϕ

h1

θ

h2

ϕ

h2θ

h3ϕ

h3

θ

= P T

int (GFext)

T

λϕ1

λϕ2

λθ2

1

λθ2

2

λϕ3

λθ3

1

λθ3

2

=

λϕ1 − λϕ2

ρ11λϕ1 − ρ12λϕ2 + λθ2

1

(n1 × d2

2) + λθ2

2

(n1 × d2

3)

λϕ2 − λϕ3

ρ21λϕ2 − ρ22λϕ3 + λθ3

1

(n2 × d3

2) + λθ3

2

(n2 × d3

3)− λθ2

1

(n1 × d2

2)− λθ2

2

(n1 × d2

3)

λϕ3

ρ31λϕ3 − λθ3

1

(n2 × d3

2)− λθ3

2

(n2 × d3

3)

∈ R

18

(8.3)

This means, that the constraint force F 1ϕ that prevents the system from translational move-

ments of the first body relative to the point XG, where it is fixed in space, can be calculated

from

F ϕ1 = λϕ1 ∈ R3 (8.4)

The constraint force F 2ϕ prevents the second body from translational movements relative to the

first one

F ϕ2 = λϕ2 ∈ R3 (8.5)

The third body is prevented from relative translational movements with respect to body two

via a constraint force

F ϕ3 = λϕ3 ∈ R3 (8.6)

The constraint torques T 2θ1

and T 2θ2

that prevent the proximal and medial phalanxes from any

relative rotation except around the revolute axis can be calculated via

T 2θ1= λθ2

1(n1 × d2

2) ∈ R3 and T 2

θ2= λθ2

2(n1 × d2

3) ∈ R3 (8.7)

Similarly, the constraint torques preventing the medial and distal phalanxes from any relative

rotation except around their revolute axis, are given by

T 3θ1= λθ3

1(n2 × d3

2) ∈ R3 and T 3

θ2= λθ3

2(n2 × d3

3) ∈ R3 (8.8)

8.2 Numerical examples of human finger motion

8.2.1 Optimal control of grasping with joint torque actuation

The optimal control problem is formulated as the minimisation of different objective functions

Jd(ud, τ d) subject to constraints as described in Chapter 7. We want to simulate a rest-to-

rest grasping manoeuvre, thus initial momentum p0 and final momentum pN are zero. The

91

Page 114: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

8 Model of the human finger

movement ought to start at a specified outstretched horizontal position u0 = 0 and the fingertip

must arrive at a final position xN at the end of the movement. Furthermore, bounds on possible

angles between the phalanxes yield inequality constraints, see Table 8.1.

Table 8.1: Inequality constraints on the joint angles for the optimal control problem of index finger movements.

inequality constraints

joint angle MCP −45◦ ≤ α ≤ 45◦

joint angle PIP 0◦ ≤ β ≤ 100◦

joint angle DIP 0◦ ≤ γ ≤ 70◦

Solving the optimal control problem with different cost functions leads to different trajectories

of the fingertip, see Figure 8.2, left. In case of minimum control effort (7.2), the fingertip

follows a rather unrealistic trajectory. The fingertip stays for a long time on the initial level of

potential energy and approaches the final position only during the last steps. The trajectories

resulting from the minimum torque change (7.6) and minimum kinetic energy criterion (7.8)

look quite similar. Only during the last time steps, the minimum kinetic energy trajectory is

more flat. The minimum jerk criterion (7.9) leads to a trajectory that is much less curved.

0.045 0.05 0.055 0.06 0.065 0.07 0.075 0.08 0.085 0.09−0.045

−0.04

−0.035

−0.03

−0.025

−0.02

−0.015

−0.01

−0.005

0

0.005

minimum control effort

minimum torque change

minimum kinetic energy

minimum jerk in fingertip

logarithmic spiral

0 0.1 0.2 0.3 0.4 0.50

0.005

0.01

0.015

0.02

0.025

0.03

0.035

minimum effort

minimum torque change

minimum kinetic energy

minimum jerk in fingertip

Figure 8.2: Optimal index finger trajectories for different cost functions compared to logarithmic spiral and absolute

difference of optimal trajectories to logarithmic spiral.

In [Kamp 03] it is stated that fingers follow a logarithmic spiral during grasping. If we compare

the absolute differences of the resulting trajectories to a logarithmic spiral through start and

end point of the movement, see right hand plot in Figure 8.2, we can say that the minimum

angular jerk and minimum kinetic energy criteria are best fitting. Looking at the shape of the

curves, we can see that all three criteria, minimum torque change, minimum kinetic energy and

minimum jerk in fingertip lead to trajectories that have only small absolute differences to the

shape of the logarithmic spiral. Especially during the middle part of the motion, the shape

of the minimum torque change curve is nearly equal to that of the logarithmic spiral. From

92

Page 115: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

8.2 Numerical examples of human finger motion

Figure 8.3 one can see, that in case of a minimum control effort criterion, the finger is actuated

in particular during the first time steps in the first joint, to accelerate upwards.

0 0.1 0.2 0.3 0.4 0.50

1

2

3

x 10−3

0 0.1 0.2 0.3 0.4 0.5−2

0

2

4

x 10−4

0 0.1 0.2 0.3 0.4 0.5−4

−2

0

2

4x 10

−5

Figure 8.3: Evolution of torques in joints in direction of grasping movement for different cost functions.

Then, during long times of the motion, the torques in the first joint are reduced to a minimal

level and finally, the finger uses gravity to get to the final point and is decelerated by ascending

torques in the first joint during the last time steps. The cost function ’minimal torque change’

(7.6) naturally leads to hardly changing torques over time in all joints, the MCP torques are

actually nearly constant. For the minimum kinetic energy criterion, the evolution of torques is

similar to that resulting from the minimum torque change criterion, but allowing a bit higher

changes in the torques. A movement with minimum jerk in the fingertip leads to compara-

tively high values and changes in all joint torques in order to keep the fingertip at a constant

acceleration. In Figure 8.4, kinetic energy and jerk in the fingertip are shown resulting from

the different cost functions. One can clearly recognise, that the other cost functions result in

substantially higher values of kinetic energy (left hand plot) and jerk (right hand plot). The

configurations of the whole finger during grasping are depicted in Table 8.2 at four particular

times during the movement to show the effect of the different cost functions on the total index

finger movement.

Furthermore, it is possible to compare the results of such optimal control simulations to motion

capturing experiments, see Figure 8.5. We therefore slightly change the geometry of the model

to adapt the subject specific finger dimensions, causing the resulting trajectories to differ from

those of the first simulations, which is most significant for the simulation with the minimum

control effort criterion.

93

Page 116: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

8 Model of the human finger

0 0.1 0.2 0.3 0.4 0.50

0.2

0.4

0.6

0.8

1x 10

−4

minimum control effort

minimum torque change

minimum kinetic energy

minimum angular jerk

0 0.1 0.2 0.3 0.4 0.5−4

−3

−2

−1

0

1

2

3x 10

4

minimum control effort

minimum torque change

minimum kinetic energy

minimum jerk in fingertip

Figure 8.4: Kinetic energy (left) and jerk in fingertip (right) of resulting movements with different cost functions.

−0.02 0 0.02 0.04 0.06 0.08−0.07

−0.06

−0.05

−0.04

−0.03

−0.02

−0.01

0

0.01

2−direction [m]

3−

dire

ctio

n [m

]

experimental data

minimum effort

minimum torque change

minimum kinetic energy

minimum jerk in fingertip

Figure 8.5: Optimal index finger trajectories for different cost functions compared to motion capturing experiments.

However, the global differences between the results, when using different objectives, is similar

to the first simulations. Again, the minimum control effort criterion does not yield a realistic

motion, while the other three criteria fit well to the experiments, which themselves show a large

variability of trajectories.

Concluding, we can say, that the minimum control effort criterion does not lead to reasonable

grasping movements at this stage, if comparing to a logarithmic spiral as well as if comparing to

experiments. The trajectories resulting from the minimum kinetic energy and minimum angular

jerk criterion are both fitting equally well to a logarithmic spiral from start to the end point of

the movement and to the motion capturing the experiments. The minimum kinetic energy cost

function actually leads to a slightly better fitting of the shape of the curve. The shape of the

trajectory resulting from the minimum torque change criterion also looks realistic, in particular

during the middle part of the movement for both the comparison to the logarithmic spiral and

the motion capturing experiments.

94

Page 117: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

8.2 Numerical examples of human finger motion

t = 0.125 s t = 0.250 s t = 0.375 s t = 0.500 s

(a) minimum control effort

(b) minimum torque change

(c) minimum kinetic energy

(d) minimum jerk in fingertip

Table 8.2: Finger movements during grasping for different cost functions, four typical time steps from left to right

show the differences of movement of the whole finger between (a) minimum control effort, (b) minimum

torque change, (c) minimum kinetic energy and (d) minimum jerk in fingertip.

95

Page 118: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

8 Model of the human finger

8.2.2 Grasping with simplified muscle actuation

8.2.2.1 Forward dynamics simulation

To simulate grasping movements, the nonlinear Hill-type muscle model with three components

introduced in Section 6.1.1 is applied to actuate a model of a human finger. According to

[Till 05], there are mainly three muscles responsible for a finger moving from extension to

flexion, as it is the case when grasping. The muscle responsible for extension of the finger

is called musculus extensor digitorum (MED). The flexion of the finger is controlled by two

muscles, musculus flexor digitorum superficialis (MFDS), inserting at the medial phalanx and

musculus flexor digitorum profundus (MFDP), inserting at the distal phalanx.

Figure 8.6: Initial and final configuration of the finger model during grasping simulation: Assumed tendon insertion

and direction for musculus extensor digitorum (blue), musculus flexor digitorum superficialis (red) and

musculus flexor digitorum profundus (green).

According to [Till 05, Wils 00], the assumed directions for the tendons are illustrated by colours

in Figure 8.6. The blue lines indicate the force directions for the MED, the green colour is

related to the MFDP and the red coloured lines to MFDS. The finger movement starts in

an outstretched horizontal position with zero initial velocity while gravity is present. Due to

prescribed muscle activations for each of the three muscles, different time dependent muscle

forces arise, that actuate the finger.

96

Page 119: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

8.2 Numerical examples of human finger motion

−1

−0.5

0

0.5

1

0.03

0.04

0.05

0.06

0.07

0.08−0.04

−0.03

−0.02

−0.01

0

1−direction [mm]2−direction [mm]

3−

dire

ctio

n [m

m]

0 0.01 0.02 0.03 0.04 0.05−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1x 10

−9

L1

L2

L3

Figure 8.7: Trajectory of the fingertip during forward dynamics simulation (left) and angular momentum consistency

during simulation (right).

For this first example, we use the model parameters of the rat muscle given in Appendix C.1 for

all three muscles to actuate the finger. Only the maximal possible muscle force parameter Fim

is reduced to 2.4N, to improve convergence of the Newton iteration. Due to those unrealistic

muscle parameters, the resulting movement happens relatively fast. In Figure 8.6 we see an

illustration of the initial configuration of the finger on the left hand side of the plot and the

final configuration after 0.05s simulation time at the right. The trajectory of the fingertip is

illustrated in the left plot of Figure 8.7. With the exception of a small peak in the middle, the

trajectory is similar to typical grasping trajectories, which follow a logarithmic spiral according

to [Kamp 03]. In a further optimal control simulation we can avoid these unrealistic peak by

inequality constraints on the joint angles. On the right side of Figure 8.7 we can see that the

simulation is angular momentum consistent. Figure 8.8 shows the muscle parameters during

this movement for all three involved muscles. We assume the flexor muscles MFDP and MFDS

to be fully activated (A = 1), whereas the MED is assumed to be at the pre-activation level

A = A0 = 0.01 (Figure 8.8, bottom right). From the plot of lm (Figure 8.8, top left), we can see

that the MED is elongated during the movement, whereas the other two, especially the MFDP,

are shortened. This can also be observed from the contraction velocity plot (Figure 8.8, bottom

left), where the MFDP is contracting fast, whereas especially the MED is reducing contraction

velocity in the beginning of the movement until the contraction velocity gets positive, meaning

the contractile element elongates. In the illustration of the muscle forces (Figure 8.8, top right),

we can see that the largest force is produced by the MFDS towards the end of the movement

and by the MED during its elongation phase.

97

Page 120: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

8 Model of the human finger

0 0.01 0.02 0.03 0.04 0.0540

45

50

55

60

MFDS

MFDP

MED

0 0.01 0.02 0.03 0.04 0.050

0.5

1

1.5

2

0 0.01 0.02 0.03 0.04 0.05−200

−150

−100

−50

0

50

0 0.01 0.02 0.03 0.04 0.050

0.2

0.4

0.6

0.8

1

Figure 8.8: Muscle behaviour during forward dynamics simulation: length of the musculotendon complex lm (top

left), muscle forces Fm (top right), contraction velocity vCC (bottom left) and muscle activations A

(bottom right).

8.2.2.2 Optimal control simulation

Next, we use the structure preserving simulation framework DMOCC to solve an optimal control

problem for a grasping movement with muscle actuation and use the forward dynamics simu-

lation from the last section as an initial guess. The problem is to find an optimal trajectory

and muscle activation, such that a given discrete objective function Jd(ud,Ad) is minimised,

while the finger is moving from an initial position (at rest) to a final finger tip position inside

a predefined area (the final momentum is not prescribed) and the discrete equations of motion

(6.14) are fulfilled.

The objective function to be minimised in this example is related to the muscle force effort of

the motion as given in (7.4) with zero joint torques. Similar to [Crow 81], we focus on muscle

forces during the movement, but neglect the influence of the cross sectional area of the muscles.

Using the results of the last section as an initial guess for the optimal control problem, we get

a much more grasping like trajectory of the finger tip, see Figure 8.9. Again, we compare the

resulting trajectory to a logarithmic spiral through start and end point of the movement. The

resulting trajectory for this objective function is close to the logarithmic spiral, but neverthe-

less, local differences are visible.

In this simulation, the flexor muscle forces and activation, see Figure 8.10 right, show an oscil-

lating behaviour, whereas the extensor muscle stays at a nearly constant moderate activation

level.

98

Page 121: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

8.2 Numerical examples of human finger motion

0.04 0.045 0.05 0.055 0.06 0.065 0.07 0.075 0.08−0.04

−0.035

−0.03

−0.025

−0.02

−0.015

−0.01

−0.005

0

0.005

2−direction [mm]

3−di

rect

ion

[mm

]

fingertip trajectorylogarithmic spiral

Figure 8.9: Trajectory of the fingertip during optimal control grasping simulation compared to logarithmic spiral.

0 0.01 0.02 0.03 0.04 0.0540

45

50

55

60

MFDS

MFDP

MED

0 0.01 0.02 0.03 0.04 0.050

0.5

1

1.5

2

0 0.01 0.02 0.03 0.04 0.05−200

−150

−100

−50

0

50

0 0.01 0.02 0.03 0.04 0.050

0.2

0.4

0.6

0.8

1

Figure 8.10: Muscle behaviour during optimal control simulation: length of the muscolotendon complex lm (top

left), muscle forces Fm (top right), contraction velocity vCC (bottom left) and muscle activation A

(bottom right).

99

Page 122: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

8 Model of the human finger

The force it produces increases up to a certain nearly constant level due to elongation. It is

obvious, that the muscle force effort is minimised, as the area under the force curves is reduced

compared to the initial guess (compare top right plot of Figure 8.8 and Figure 8.10).

This example shows, that it is generally possible to include muscle actuation within the op-

timal control framework DMOCC as the resulting trajectories and activations are reasonable.

However, the solution of this optimal control problem with an inner iteration scheme in the

muscle model explained in Section 6.1.1 leads to several numerical problems. In addition to

that, the inner iteration of the muscle model needs a small time step. As both inner and outer

dynamics are coupled, this leads to a large amount of optimisation variables even for this simple

example over only a very short simulation time. Furthermore, it is not possible to simulate real

rest-to-rest manoeuvres with this model as the final momentum condition has to be excluded

to achieve convergence. One of the reasons is probably the negligence of the stabilising inner

hand muscles in this model.

8.2.3 Summary and outlook on future work

As a first step towards a more realistic model that includes the extensor mechanism of the finger

in this work, a tendon network is constructed around the phalanxes in order to implement the

intrinsic hand muscles as well. Furthermore, the muscle model used in the last section is

slightly modified, in particular by setting the maximal isometric force Fim in relation to the

cross sectional area of the finger muscles. In Figure 8.11, this tendon network is illustrated. In

addition to the insertion points of the tendons on diverse locations, there also exist sliding points

(yellow), where several tendons unite and only a normal force can be transmitted to the bodies.

The force directions are adapted to [An 79, Sanc 01], while the bodies are simulated with

truncated cones instead of cylinders and cones. In this example, the mechanical behaviour of

the extensor mechanism is neglected, i.e. in case a tendon splits off, the muscle force distribution

is simplified such that it is evenly distributed on the single paths. With this simplifications,

forward dynamics simulations of grasping are possible, as illustrated in Figure 8.12, even if the

simulation time is still unrealistically short. As a future approach it is suggested to solve a three

dimensional balance of forces problem for each sliding point at each time node. This allows to

decide which part of the force is transmitted to the body and which part is transferred into the

continuing tendon network.

One goal of this work is to simulate prolonged muscle actuated motions as well as to provide

the possibility to investigate more complex multibody systems with a larger number of muscles.

Therefore, it is mandatory to change certain aspects in the muscle modelling to enable a better

performance with more realistic results. This motivates the implementation of a different muscle

model with only a contractile component and a parallel elastic component, explained in detail

in Section 6.1.2, which is used during the following examples concerning motions of the human

arm. The implementation of a serial elasticity in this simulation framework is a future challenge

as well.

100

Page 123: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

8.2 Numerical examples of human finger motion

Figure 8.11: Tendon network of the human finger: Insertion points coloured with respect to the muscles and sliding

points illustrated in yellow.

A further challenge is the realistic representation of force directions, which has a main effect

on the finger motion, in particular because of the complex behaviour of extensor mechanism

and the force distribution over the dorsal aponeurosis. A step towards a more realistic model

is given by the implementation of more realistic muscle paths as described in Section 6.2. In

future work, this should be implemented for the finger model together with an approximation

of the force distribution on the different tendons depending on the joint angles, see [Kapa 92].

101

Page 124: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

8 Model of the human finger

Figure 8.12: Tendon network of the human finger: Insertion points coloured with respect to the muscles and sliding

points illustrated in yellow.

102

Page 125: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

The motion of the human arm is a central topic in biomechanic investigations. This is mainly

because the human arm provides the largest range of motion among the human extremities. As

in the context of finger motion, a lot of studies investigate control mechanisms of arm motions,

see [Uno 89, Flas 85, Kawa 90, Soec 95, Bies 07].

Another frequently examined topic is the mechanics of the human elbow. This joint connects

the humerus to radius and ulnar and its structure enables rotations around two axes, see for

example [Thom 01]. Several models exist to describe this kinematic behaviour, see for example

[Wein 00, Kecs 05]. Within this work, a cardan joint is introduced in order to model these

rotational degrees of freedom. This joint can similarly be used to represent the wrist only by

changing the direction of the axes.

Moreover, a common field of interest is the muscle actuation of the human arm. The general

characterisation of arm muscles is done with experiments on several subjects, as for example

shown in [Murr 95, Murr 00]. The resulting muscle parameters can for example be used for

inverse dynamics computations, see [Holz 05]. The use of Hill-type muscle models in order

to improve prostheses can also be examined, see [Cava 05] and motions can be assessed with

respect to ergonomics [Denn 07]. In contrast to commonly used forward or inverse dynamics

approaches, this work mainly concentrates on optimal control simulations of the human arm.

Within this chapter, the set up of the human arm as a kinematic chain of rigid bodies is

described first, including a possibility to compute the constraint forces. After that, several

examples on optimal control simulations are given, starting with a steering motion actuated by

joint torques. The implementation of muscle models is shown first with a simple arm lifting

motion, which is further extended to a weight lifting motion, see also [Maas 13a]. At the end

of this chapter, an example of a typical workplace motion is examined with a focus on the

ergonomics on the motion, and long throw and shot put motions are simulated as an example

of sports motions, based on the publication [Maas 14].

9.1 Kinematic chain representing the human arm

For the simulation of human arm motion, we use a kinematic chain of rigid bodies, see left part

of Figure 9.1. The system under investigation consists of two cylindrical bodies representing

the upper arm and the forearm as well as a cuboid representing the hand. The bodies are

connected via three joints as depicted in the right part of Figure 9.1. The shoulder is modelled

as a spherical joint and is fixed in space in a point xG. The joints representing elbow and

wrist are modelled as cardan joints. Combining the constraints of spherical and cardan joint

connections ((5.16) and (5.31)), this results in mAext = mS

ext + 2mCext = 11 external constraints

on the system. The axes of rotation are denoted as n11(q1),n12(q2) and n21(q2),n22(q3) in

103

Page 126: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

the first and second cardan joint, respectively

gAext(q) =

ϕ1 + ρ11 − xG

ϕ2 + ρ21 − ϕ1 − ρ12

n11(q1)T · n12(q2)

ϕ3 + ρ31 − ϕ2 − ρ12

n21(q2)T · n22(q3)

∈ R

11 (9.1)

Figure 9.1: Kinematic chain representing the human arm: Free body diagram (left) and rigid body model of the

human arm (right).

Corresponding to the number of constraints, mAext = 11 Lagrange multipliers are present, which

are arranged as follows

λAext =

[λ1

ϕ λ2ϕ λ2

θ λ3ϕ λ3

θ

]T∈ R

11 (9.2)

With the Jacobian of the constraints denoted by GAext(q) ∈ R11×36 we calculate a set of con-

straint forces in redundant coordinates

(GA

ext(q))T

· λAext =

λ1ϕ − λ2

ϕ

ρ111 λ1ϕ − ρ121 λ2

ϕ + n111 λ2

θn12

ρ112 λ1ϕ − ρ122 λ2

ϕ + n112 λ2

θn12

ρ113 λ1ϕ − ρ123 λ2

ϕ + n113 λ2

θn12

λϕ2 − λϕ3

ρ211 λ2ϕ − ρ221 λ3

ϕ + n121 λ2

θn11 + n21

1 λ3θn

22

ρ212 λ2ϕ − ρ222 λ3

ϕ + n122 λ2

θn11 + n21

2 λ3θn

22

ρ213 λ2ϕ − ρ223 λ3

ϕ + n123 λ2

θn11 + n21

3 λ3θn

22

λϕ3

ρ311 λ3ϕ + n22

1 λ3θn

21

ρ312 λ3ϕ + n22

2 λ3θn

21

ρ313 λ3ϕ + n22

3 λ3θn

21

(9.3)

which can be reduced, as illustrated above, to a set of constraint forces and torques on the

104

Page 127: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.1 Kinematic chain representing the human arm

center of mass of each body

h1ϕ

h1θ

h2ϕ

h2θ

h3ϕ

h3θ

=

λ1ϕ − λ2

ϕ

ρ11 · λ1ϕ − ρ12 · λ2

ϕ + λ2θ(n

11 × n12)

λ2ϕ − λ3

ϕ

ρ21 · λ2ϕ − ρ22 · λ3

ϕ − λ2θ(n

11 × n12) + λ3θ(n

21 × n22)

λ3ϕ

ρ31 · λ3ϕ − λ3

θ(n21 × n22)

(9.4)

A similar consideration as for the spherical and cardan pair yields the constraint forces and

torques acting in the single joints, as illustrated in the free body diagram in Figure 9.1. The

constraint force F 1ϕ that prevents the first body (upper arm) from translation relative to the

point xG, where it is fixed in space, can be calculated by

F 1ϕ = λ1

ϕ (9.5)

The constraint force F 2ϕ prevents the forearm from translational movements relative to the

upper arm

F 2ϕ = λ2

ϕ (9.6)

The hand is prevented from relative translation with respect to the forearm via the constraint

force

F 3ϕ = λ3

ϕ (9.7)

In every cardan joint, there is one constraint torque because the rotation in this joint around one

axis is blocked. These constraint torques T 2θ and T 3

θ in the elbow and wrist can be calculated

from

T 2θ = λ2

θ(n11 × n12) T 3

θ = λ3θ(n

21 × n22) (9.8)

9.1.1 Musculotendon actuation

While in the first numerical example, the arm is actuated by joint torques, the motion of the

elbow is further on actuated by Hill-type muscles. Therefore, the seven most important muscles

around the elbow are implemented with muscle data according to [Murr 95, Murr 00], which

has to be changed slightly to ensure that fl and fv stay in a reasonable range, as described in

Section 6.1.2. In Figure 9.2, the paths of these muscles around the elbow are shown. Herein,

the black nodes are check points to ensure that the calculated path does not intersect the rigid

bodies, while the magenta points indicate the origin and insertion points of the muscles. For

simplicity, it is assumed that each muscle has only one origin and one insertion point, which is,

in particular for biceps and triceps muscle, a strong simplification (see Section 2.3.2). However,

this assumption facilitates the implementation of an isolated muscle actuation of only the elbow

joint.

105

Page 128: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

Figure 9.2: Typical muscle paths around the elbow for the seven most important arm muscles.

Triceps (TRI) and biceps (BIC) are the most commonly known muscles, which are depicted

in red and green. They contribute to flexion and extension of the elbow, together with the

brachialis muscle (BRA, cyan). Musculus supinator (SUP, blue) and pronator teres (PT,

black) are mostly responsible for supination (palm up) and pronation (palm down) movements.

Additionally, the musculus extensor carpi radialis longus (ECRL, yellow) and the musculus

brachioradialis (BRD, magenta) contribute to elbow motion.

9.2 Numerical examples of human arm motion

9.2.1 Optimal control of a steering motion with joint actuation

For the example of an arm performing a steering motion, the optimal control problem can be

formulated according to (7.1). Additional nonlinear equality constraints for this example result

from prescribing a rest-to-rest manoeuvre. Moreover, the initial configuration is predefined

(u(t0) = u0) as well as the final location of the hand via xh(tN ) = xhN . During the motion,

the hand has to follow a circular path representing the steering wheel. This is implemented

via constraining the location of the hand hd(un,un+1, τ n) = 0 in every time step. The total

motion of the hand describes a quadrant on the wheel during tN = 1.04s simulation time

with a step size of ∆t = 0.04s, while gravity is present. Further on, inequality constraints are

present that impose limits on the possible joint angles according to the anatomical restrictions

in the shoulder, the elbow and the wrist. Beyond that, additional inequality constraints are

formulated to keep the palm oriented inwards. In this example, the model of the human arm

is actuated by joint torques in the shoulder (τ S ∈ R3), in the elbow (τCE ∈ R2) and in the

wrist (τCW ∈ R2). Generally, no bounds are set to configuration and torque values, except for

the simulation using the constraint force criterion. Here the joint torques are limited to stay

between [−20Nm, 20Nm].

The upper left diagram in Figure 9.3 shows the resulting optimal torques in one direction of

the shoulder joint. This direction is exemplarily shown for all torques, as the largest amount

of torque occurs here. One can see in this diagram that the control effort, which is represented

by the area under these curves, is minimal for the trajectory created with the minimal control

effort criterion and the difference to the result of the minimum torque change criterion is only

small. Likewise, it is obvious that the minimum torque change criterion leads to the smoothest

evolution of torques. From the evolution of kinetic energy over time (Figure 9.3, top right), it

106

Page 129: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.2 Numerical examples of human arm motion

becomes clear that the kinetic energy of the motion can be evidently reduced using a minimum

kinetic energy criterion. In the lower left diagram in Figure 9.3, the norm of the constraint

force in the shoulder is exemplarily depicted. Here, the cost function minimising the constraint

forces naturally leads to the curve with the lowest area below. However, this criterion leads

to a relatively large control effort with alternating torque evolutions over time, see upper left

diagram in Figure 9.3. A numerical verification of angular momentum consistency is shown in

Figure 9.3 bottom right. The angular momentum changes exactly according to the actuating

torques and those resulting from gravity.

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−5

0

5

10

15

20

t [s]

joint torque τS θ1

[Nm]

minimum control effort

minimum torque change

minimum kinetic energy

minimum constraint forces

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.5

1

1.5

2

t [s]

kin

etic e

ne

rgy [J]

minimum control effort

minimum torque change

minimum kinetic energy

minimum constraint forces

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 120

25

30

35

40

45

50

55

t [s]

minimum control effort

minimum torque change

minimum kinetic energy

minimum constraint forces

0 0.2 0.4 0.6 0.8 1

−0.5

0

0.5

x 10−10

(Ln+1−Ln) −τJ n

τ Mg

L1

L2

L3

Figure 9.3: Results of optimal control simulations with different cost functions. Evolution of the first component

of the torques in the shoulder τ 1θ1

over time (top left), evolution of the kinetic energy over time (top

right), evolution of the norm of the constraint force F 1ϕ in the shoulder over time (bottom left) and

consistency of angular momentum (bottom right).

When observing the motion itself, which is illustrated in Figure 9.4 for four distinct time nodes,

it is obvious that the criterion for minimum control effort does not lead to a realistic steering

motion, as it seems that there is a tendency of gaining momentum during the first time steps,

see Figure 9.4, left column. A similar behaviour shows up for the minimum constraint forces

criterion, which leads to unrealistic relative rotation between upper arm and forearm in the

end of the motion (see Figure 9.4, bottom right). The criteria of minimum torque change and

minimum kinetic energy both lead to realistic motion and reasonable evolutions of torques.

107

Page 130: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

control effort torque change kinetic energy constraint forces

tn = 0.24 s tn = 0.24 s tn = 0.24 s tn = 0.24 s

tn = 0.52 s tn = 0.52 s tn = 0.52 s tn = 0.52 s

tn = 0.80 s tn = 0.80 s tn = 0.80 s tn = 0.80 s

tn = 1.04 s tn = 1.04 s tn = 1.04 s tn = 1.04 s

Figure 9.4: Resulting motion of optimal control simulations at four distinct time nodes for minimum control ef-

fort (first column), minimum torque change (second column), minimum kinetic energy criterion (third

column) and minimum constraint forces criterion (fourth column).

Remark. As DMOCC uses in this example a solver based on sqp (sequential quadratic pro-

gramming algorithm Snopt7 for Matlab), which provides only local solutions that strongly

depend on the initial guess, see [Leye 10], all simulations are started with the same initial guess

created by a forward dynamics simulation with initial velocities, in order to make the results

comparable. The problem of finding global solutions is a future challenge. Further on, the

focus of this example is not on minimal CPU-time, as no analytical gradients are provided.

On average the CPU time lies between two hours and one day. The solution for the minimum

constraint forces criterion is performed with a feasibility and optimality tolerance of 10−6, all

other calculations are performed with a feasibility and optimality tolerance of 10−8.

108

Page 131: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.2 Numerical examples of human arm motion

9.2.2 Optimal control of lifting the arm with muscle actuation

9.2.2.1 The influence of different physiologically motivated cost functions

In this example, the arm is supposed to lift from an initial vertical position with neutral el-

bow pronation/supination angle to a flexed position. The optimal control problem can again

be formulated according to (7.1). During step 4 of the muscle path algorithm, a direct line

connection is chosen if no other connection is possible. The motion is a rest-to-rest manoeuvre,

which leads to constraints on the initial and final momentum p0 = pN = 0. Further on, the

initial configuration is predefined (u(t0) = u0) as well as the final location of the hand’s center

of mass via xh(tN) = xhN . In contrast to the first example, the joint torques in the elbow are

replaced by seven Hill-type muscle models representing the actuation of the most important

elbow muscles. Hence, the optimisation variables contain additionally the activations of the

seven muscles in each time step, replacing the torques in the elbow. This leads to the typical

redundancy of biomechanical problems, where usually more muscles are involved than degrees

of freedom are present.

The activations of the muscles are restricted to An ∈ [0, 1] for n = 1, . . . , N −1, and bounds on

the joint torques in the shoulder and the wrist are set to [−5, 5] N. By further bounds on the

configuration variables, unrealistic joint angles are avoided. The simulation time is tN = 0.52s

with a step size of ∆t = 0.02s, while gravity is present. Moreover, analytical gradients of the

cost function and the constraints are implemented, which naturally increases performance and

accuracy of the simulation. We compare several cost functions that minimise certain aspects

of the motion and choose Matlab’s fmincon solver with the algorithm option interior-point.

Especially for cost functions that are highly nonlinear in the optimisation variables, it seems

that the interior-point algorithm shows a better performance than for cost functions that are

linear or quadratic in the optimisation variables. In particular, if the solution is close to the

boundary of the admissible set, the sqp algorithm finds a similar local minimum. This effect has

to be investigated in future work to decide which algorithm type is appropriate for simulations

with muscle actuation.

Several initial guesses are used for this example and for comparability, only the best solutions,

achieved with the interior-point algorithm, are reported. We requested a feasibility and opti-

mality tolerance of 10−8. All simulations finished with exitflag 2, meaning a local minimum is

possible, even if the first order optimality is larger than the optimality tolerance. In particular

for the constraint force criterion, this is an issue. The CPU-times for these simulations lie

between 30 and 120 minutes.

Due to the implementation of muscle models, we can directly involve muscle related quantities

like activations or the resulting muscle forces into the cost function. One can for example ask for

a motion with minimal muscle activations (together with minimal torques in the other joints),

see (7.3), or for a motion with minimal changes in the muscle activations and joint torques,

see (7.7), similar to the criterion of minimal torque change in the first example without mus-

cles. Even the muscle forces can be involved and the minimisation of the muscle force effort

(again together with minimal torques in the other joints) can be the goal, see (7.4). Further

on, weighting the muscle forces by the cross sectional area of the muscles to calculate a stress

in the muscle is possible. Minimising this muscle stress criterion, see (7.5), probably leads to

a motion where the muscles with larger cross sectional area work more than thinner muscles.

109

Page 132: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

The values of the cross sectional areas are taken from [Murr 00]. According to [Crow 81], this

criterion leads to a motion that can be performed with maximal endurance. A key challenge

for all cost functions is to find appropriate weighting factors to get reasonable results, where

both the muscle forces or activations and the joint torques in shoulder and wrist are optimised.

0 0.1 0.2 0.3 0.4 0.50

20

40

60

BIC BRD ELCR BRA PT SUP TRI

0 0.1 0.2 0.3 0.4 0.50

0.5

1

0 0.1 0.2 0.3 0.4 0.50

50

100

BIC BRD ELCR BRA PT SUP TRI

0 0.1 0.2 0.3 0.4 0.50

0.2

0.4

0.6

0.8

Figure 9.5: Activations and muscle forces of the elbow muscles while lifting the arm for a minimum activations and

joint torques criterion (7.3) (left) and for a criterion on minimum change in activations and joint torques

(7.7) (right).

0 0.1 0.2 0.3 0.4 0.50

20

40

60

BIC BRD ELCR BRA PT SUP TRI

0 0.1 0.2 0.3 0.4 0.50

0.5

1

0 0.1 0.2 0.3 0.4 0.50

20

40

60

80

BIC BRD ELCR BRA PT SUP TRI

0 0.1 0.2 0.3 0.4 0.50

0.5

1

Figure 9.6: Activations and muscle forces of the elbow muscles while lifting the arm for a minimum muscle forces

and joint torques criterion (7.4) (left) and for a criterion on minimum muscle stress and joint torques

(7.5) (right).

For the criterion of minimal activations and torques (7.3), the resulting muscle activations

and forces are depicted in the left hand part of Figure 9.5. Obviously, the activations of the

muscles are reduced compared to the resulting activations when using other criteria, see right

hand part of Figure 9.5 and both plots in Figure 9.6. Like for all other criteria, the main

part of muscle force is coming from musculus brachialis and musculus brachidorialis, which is

also reported in anatomy books like [Till 05]. The musculus biceps is also involved during the

first part of the motion but it produces only a small amount of force. This may be related

to the chosen insertion points, which can not be absolutely realistic because of the simplified

elbow mechanics in this model. However, it is frequently reported [Till 05] that the musculus

brachialis is the strongest muscle in elbow flexion and the musculus biceps is more responsible

110

Page 133: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.2 Numerical examples of human arm motion

for pronation and supination movements, which should be investigated in future work. In the

right hand part of Figure 9.5 the resulting activations and muscle forces are illustrated for the

criterion of minimal changes in activations and joint torques (7.7). The evolution of activations

are nearly constant, which apparently yields a minimal change. This criterion leads to higher

muscle forces in contrast to the other results and especially musculus triceps is involved at the

beginning and the end of the motion. When minimising the muscle forces and the joint torques

(7.4), see left hand part of Figure 9.6, muscle forces are reduced. Yet they are comparable to

the result of the minimal effort criterion. However, for this criterion the muscle activations are

relatively high at time steps, where force-length (fl) or force-velocity (fv) factors are rather

low. There, a high activation has nearly no influence on the resulting muscle force. Thus, there

is no need to reduce the activation, which leads to mostly random activations if fl or fv are

close to zero. If the muscle forces are weighted by their cross sectional area and this resulting

muscle stress is minimised together with the joint torques (7.5), this yields muscle activations

as illustrated in the right hand part of Figure 9.6. The musculus triceps with the largest cross

sectional area is involved more, in particular at the beginning and the end of the motion. The

musculus brachialis takes over some part of the force for the musculus brachidorialis, which has

a smaller cross sectional area.

0 0.1 0.2 0.3 0.4 0.50

20

40

60

BIC BRD ELCR BRA PT SUP TRI

0 0.1 0.2 0.3 0.4 0.50

0.5

1

0 0.1 0.2 0.3 0.4 0.50

20

40

60

80

100

120

140

160

180

minimum activities & joint torquesminimum change of activities & joint torques

minimum muscle forces & joint torques

minimum muscle stress & joint torquesminimum constraint forces

Figure 9.7: Activations and muscle forces of the elbow muscles while lifting the arm for a minimum constraint forces

criterion (7.11) (left) and the norm of the constraint force in the elbow (F 2ϕ) for all criteria (right).

The right hand part of Figure 9.7 shows the evolution of the norm of the constraint force in

the elbow. The amount of constraint force is obviously reduced when using the minimum con-

straint force criterion. In particular, at the beginning and the end of the motion larger muscle

forces arise, while during the mid time of the motion only small muscle forces are necessary,

as depicted in the left hand part of Figure 9.7. However, the high torque effort of the motion

(alternating as in the first example without muscles) increases the total effort of the motion to

a value higher than that of the minimised muscle force and joint torques criterion.

The snapshots of the motions obtained from the optimal control simulations with the different

criteria (Figure 9.8) show comparable final configurations for the criteria of minimal activa-

tions and joint torques, minimal muscle forces and joint torques as well as for minimal muscle

stresses and joint torques. Note that for all simulations only the final position of the hand’s

center of mass is prescribed. However, the whole motions slightly differ. The motion and the

end configuration for the minimal control change criterion and the minimal constraint forces

111

Page 134: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

criterion differ substantially from the others. Both trajectories of the hand seem rather smooth,

while minimising the constraint forces yields a considerable lateral motion of the elbow and the

minimal change in activations and joint torques yields the most natural looking motion.

Figure 9.8: Resulting arm motions from the optimal control simulations: Minimal activations and joint torques (7.3),

minimal change in activations and joint torques (7.7), minimal muscle forces and joint torques (7.4),

minimal muscle stresses and joint torques (7.5) and minimal constraint reactions (7.11) (from top to

bottom).

112

Page 135: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.2 Numerical examples of human arm motion

9.2.2.2 The influence of dynamical muscle path on optimal control simulations

Again, the lifting motion of a human arm from a mostly outstretched initial configuration to

a final configuration with flexed elbow, where only the position of the hand’s center of mass

is prescribed, is investigated in the following example. In contrast to the first example, the

initial configuration of the forearm conforms a neutral pronation/supination position. For

this purpose, slight rearrangements of the muscle insertion points are necessary to enable the

fulfilment of the initial condition p0 = 0. In particular, the paths of musculus supinator and

musculus pronator are supposed to be symmetric in the pronated initial configuration and the

triceps muscle insertion on the olecranon is represented by a gap between the force insertion

point and the cylinder surface of the second body.

0 0.1 0.2 0.3 0.4 0.50

50

100

150

BIC BRD ELCR BRA PT SUP TRI

0 0.1 0.2 0.3 0.4 0.50

0.5

1

0 0.1 0.2 0.3 0.4 0.50

50

100

150

BIC BRD ELCR BRA PT SUP TRI

0 0.1 0.2 0.3 0.4 0.50

0.5

1

Figure 9.9: Resulting muscle forces and muscle activations from optimal control simulations of lifting the arm with

direct line connection (left) and with dynamical muscle path (right).

Furthermore, from now on the path that least intersects the bodies is chosen in step 4 of

the muscle path algorithm, in order to improve convergence. All other constraints as well

as the simulation time and the time step are equal to those of the first arm lifting example.

The problem is formulated with different approaches on the muscle path. First, a direct line

connection between the muscle insertion points is used and finally compared to a dynamical

muscle path approach.

The difference in muscle length evolution over time for the two muscle path approaches is

illustrated in the left hand part of Figure 9.9. Obviously, the elongation of the extensor muscles

(TRI and ECRL) is not represented correctly when using a direct line connection, since the path

is in this case not redirected around the joint. With the dynamical muscle path, the elongation

of the extensor muscles during this motion is visible. Likewise comparing the two approaches,

the PT muscle and the SUP muscle show a different behaviour at the end of the motion.

Only for the BRD muscle both muscle path approaches yield a similar length evolution. The

resulting muscle forces and muscle activations are shown in the right hand part of Figure 9.9.

The direct line approach yields constant muscle activation of mainly the PT muscle, while for

the dynamical muscle path approach we get a larger diversity of active muscles, which is typical

for biomechanical motions. Another main difference between both approaches becomes clear

when investigating the occurring muscle force directions.

113

Page 136: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

Figure 9.10: Force directions on unit sphere exemplarily for musculus pronator teres with direct line connection (left)

and with dynamical muscle path (right).

As the force directions are unit vectors, they can be represented as points on a unit sphere,

which is exemplarily shown for the PT muscle in Figure 9.10. Note that the time evolution of

the force directions is highlighted via the color of the points. The direction of the force acting

on the upper arm is plotted from red (t = t0) to yellow (t = tN), while the direction of the

force acting on the forearm is depicted from blue (t = t0) to green (t = tN). While the direct

line approach naturally leads to force directions that lie mirror-inverted on this unit sphere

(see Figure 9.10, left), the dynamical path around the joints yields asymmetric force directions

on both bodies. Both force directions substantially differ from those generated with the direct

line approach. This is a key difference to the direct line approach, with which an asymmetric

behaviour, representing the sliding of the muscle around the bodies and joints, cannot be

represented. However, due to the discontinuous behaviour of the muscle path algorithm, there

may be slight inaccuracies in the gradients of the optimal control problem, particularly if

unrealistic configurations are tested by the solver. Hence, using the introduced muscle path

algorithm decelerates the convergence behaviour of the optimal control simulations.

9.2.2.3 Weight lifting

Lifting a weight is a well known everyday motion. We therefore add a point mass of 2kg, 5kg

and 10kg to the hand’s center of mass within the second example, while the same initial and

final conditions as described in the last section are present. In Figure 9.11, snapshots of the

resulting motions are illustrated.

114

Page 137: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.2 Numerical examples of human arm motion

Figure 9.11: Snapshots of the resulting arm motion from optimal control simulations of weight lifting with point

mass of 2kg (top left), 5kg (top right) and 10kg (bottom) placed in the center of mass of the hand.

The evolution of muscle forces and activations is illustrated for different weights in Figure 9.12.

When adding a point mass of 2kg (top left part of Figure 9.12), we can see that the activa-

tions and muscle forces are considerably increasing compared to Figure 9.9 and the muscles

performing the motion are similar to those used without additional mass (see right hand part

of Figure 9.9). PT and SUP muscle initiate the motion, while the other flexor muscles slowly

increase their activation. Further increase of the point mass to 5kg (9.12, top right) yields

even higher muscle forces and activations. In addition to the activation of PT and SUP, the

muscle activations of BIC and BRA go up to maximal activation during the motion and the

activation of BIC is now comparable to the activation of BRA, while for motions with lower

additional mass, BIC is less involved than BRA. With a point mass of 10kg (see bottom part

of Figure 9.12), BRA and BIC are maximally activated for nearly the complete simulation time

and also the extensor muscles ECRL and TRI produce a remarkable amount of force. For the

simulation with an additional point mass of 10kg, an inequality constraint on the joint angles

in the wrist is necessary to meet anatomical restrictions.

115

Page 138: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

0 0.1 0.2 0.3 0.4 0.50

100

200

300

BIC BRD ELCR BRA PT SUP TRI

0 0.1 0.2 0.3 0.4 0.50

0.5

1

0 0.1 0.2 0.3 0.4 0.50

200

400

600

BIC BRD ELCR BRA PT SUP TRI

0 0.1 0.2 0.3 0.4 0.50

0.5

1

0 0.1 0.2 0.3 0.4 0.50

200

400

600

800

BIC BRD ELCR BRA PT SUP TRI

0 0.1 0.2 0.3 0.4 0.50

0.5

1

Figure 9.12: Resulting muscle forces and muscle activations from optimal control simulations of weight lifting with

point mass of 2kg (top left), 5kg (top right) and 10kg (bottom) placed in the center of mass of the

hand.

9.2.3 Stocking a shelf – the influence of different cost functions

In order to investigate more complicated motions, a further adaption of the triceps muscle path

is necessary. In reality the triceps path is hardly sliding around the bones, as it inserts on the

olecranon and is therefore not affected by relative rotations of upper arm and forearm. This

is implemented by defining the insertion of the triceps in a further orthogonal body frame in

the second body that is not affected by relative rotations. This body frame [d2∗1 ,d2∗

2 ,d2∗3 ] is

constructed as follows

d2∗1 = d1

1, d2∗3 = d2

3, d2∗2 = d2∗

3 × d2∗1 (9.9)

Generally, such a formulation can be used for every muscle that inserts on the ulnar and is

therefore not affected by a pronation/supination motion. However, for the triceps muscle this

has the largest effect as therewith it is ensured that there is always a possibility to extend

the arm. With this slight modification of the model, the arm can be lifted much higher and

a workplace motion like stocking a shelf can be simulated. Here, the arm starts again at an

initial hanging position with zero initial momentum. At the end of the motion, a position over

the head has to be reached with the hand’s center of mass, while the orientation of the upper

arm is bounded by an inequality constraint d12,N ·e2 < 0 in order to prevent unrealistic shoulder

rotations around the longitudinal axis. Again bounds are prescribed restricting the joint angles

116

Page 139: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.2 Numerical examples of human arm motion

of elbow and wrist to stay in realistic ranges during the motion. To represent an item that is

placed into the shelf, a point mass of 0.5kg is added to the center of mass of the hand. The

problem is discretised with N = 27 time steps. The goal of the optimal control problem is

formulated using different criteria. If such a motion has to be performed several times a day,

one would probably try to minimise the control effort of the motion, see (7.3). Apart from that,

a criterion on minimal changes in torques or muscle activations (7.7) is examined. Furthermore,

the goal can also be to perform the motion as fast as possible, see criterion (7.12). For the

afore-mentioned criteria, the time step size is included in the set of optimisation variables as

well, with bounds at [0.0075, 0.0125]s, i.e. the end time of the simulation is free. If one aims at

performing very smooth motions with minimal changes in acceleration, a criterion like (7.10) is

of interest, while in order to avoid joint pain, it can be beneficial to reduce the joint reactions

during the motion, see (7.11). In particular the last mentioned criterion is of high nonlinearity,

and the discontinuities resulting from the muscle path computation may influence both the

objective and the constraints. In addition to that, the value of the cost function is relatively

large when using the criteria (7.11), (7.10) or (7.7).

0 0.05 0.1 0.15 0.2 0.25 0.30

200

400

BIC BRD ELCR BRA PT SUP TRI

0 0.05 0.1 0.15 0.2 0.25 0.30

0.5

1

0 0.05 0.1 0.15 0.2 0.25 0.30

0.5

1

0 0.05 0.1 0.15 0.2 0.25 0.30

0.5

1

0 0.05 0.1 0.15 0.2 0.25 0.3−10

0

10

0 0.05 0.1 0.15 0.2 0.25 0.3−20

0

20

0 0.05 0.1 0.15 0.2 0.25 0.3−20

0

20

0 0.05 0.1 0.15 0.2 0.25 0.3−5

0

5

0 0.05 0.1 0.15 0.2 0.25 0.3−5

0

5

Figure 9.13: Minimum control effort criterion: Muscle forces, muscle activations, force-length and force-velocity

evolution (left) and joint torque actuation in shoulder and wrist (right).

In Figure 9.13, the results for the muscle forces and joint torques using the minimum control

effort criterion are depicted. On the left hand side, all multiplicative factors that produce the

force of the contractile element are plotted, see (6.19). The right hand side shows the torque

evolution in the shoulder (three top plots) and in the wrist (two bottom plots). The main

muscle forces are generated by TRI, BRA and PT and the main joint torques are present in the

shoulder. The resulting motion follows a nearly direct connection to the target point illustrated

in red, see Figure 9.14, and arrives at the target position from below.

117

Page 140: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

Figure 9.14: Minimum control effort criterion: Snapshots of the resulting motion at different time steps (time in

[s]).

118

Page 141: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.2 Numerical examples of human arm motion

A criterion minimising the change in torque and activations (7.7) yields smoother evolutions of

the muscle forces and joint torques, see Figure 9.15. However, the effort of the motion increases

mainly regarding the muscle activations. A large variety of muscles are active and produce

significantly higher forces compared to the minimum control effort criterion, see Figure 9.13.

Throughout the motion, particularly the BRD muscle shows a remarkable activation.

0 0.05 0.1 0.15 0.2 0.25 0.30

100

200

BIC BRD ELCR BRA PT SUP TRI

0 0.05 0.1 0.15 0.2 0.25 0.30

0.5

1

0 0.05 0.1 0.15 0.2 0.25 0.30

0.5

1

0 0.05 0.1 0.15 0.2 0.25 0.30

0.5

1

0 0.05 0.1 0.15 0.2 0.25 0.3−2

0

2

0 0.05 0.1 0.15 0.2 0.25 0.3−20

0

20

0 0.05 0.1 0.15 0.2 0.25 0.30

1

2

0 0.05 0.1 0.15 0.2 0.25 0.3−5

0

5

0 0.05 0.1 0.15 0.2 0.25 0.3−2

0

2

Figure 9.15: Minimum control change criterion: Muscle forces, muscle activations, force-length and force-velocity

evolution (left) and joint torque actuation in shoulder and wrist (right).

In Figure 9.16, snapshots of the resulting motion are depicted. The trajectory of the hand is

much more curved, in particular at the end of the motion, and the target is reached from the

top front side. For both criteria related to torques and activations, the time step size is at its

maximal bound for the optimal solutions.

119

Page 142: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

Figure 9.16: Minimum control change criterion: Snapshots of the resulting motion at different time steps (time in

[s]).

120

Page 143: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.2 Numerical examples of human arm motion

Another frequently used goal in performing such workplace motions is a minimised motion time.

The resulting muscle forces and joint torques are illustrated in Figure 9.17. The x-axis of the

plots shows a reduction in simulation time, actually the time step size is reduced about 8%,

enabled by a significantly larger amount of muscle forces and joint torques and a large number

of active muscles.

0 0.05 0.1 0.15 0.2 0.250

500

1000

BIC BRD ELCR BRA PT SUP TRI

0 0.05 0.1 0.15 0.2 0.250

0.5

1

0 0.05 0.1 0.15 0.2 0.250

0.5

1

0 0.05 0.1 0.15 0.2 0.250

0.5

1

0 0.05 0.1 0.15 0.2 0.25−10

0

10

0 0.05 0.1 0.15 0.2 0.25−20

0

20

0 0.05 0.1 0.15 0.2 0.25−20

0

20

0 0.05 0.1 0.15 0.2 0.25−5

0

5

0 0.05 0.1 0.15 0.2 0.25−5

0

5

Figure 9.17: Minimum manoeuvre time criterion: Muscle forces, muscle activations, force-length and force-velocity

evolution (left) and joint torque actuation in shoulder and wrist (right).

The hand takes a relative short direct trajectory in this case (see Figure 9.18) and arrives at

the target point from the front, but with the dorsum first.

121

Page 144: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

Figure 9.18: Minimum manoeuvre time criterion: Snapshots of the resulting motion at different time steps (time in

[s]).

122

Page 145: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.2 Numerical examples of human arm motion

From an ergonomical point of view, it is beneficial to reduce the joint reactions. Therefore we use

a criterion given in (7.11). As mentioned, it is difficult to get solutions with this highly nonlinear

objective. As the simulation time did not show a significant difference between the control effort

and the control change criterion, the time step is excluded from the optimisation variables and

set to 0.0125s for this simulation in order to keep the simulation results comparable.

0 0.05 0.1 0.15 0.2 0.25 0.30

100

200

BIC BRD ELCR BRA PT SUP TRI

0 0.05 0.1 0.15 0.2 0.25 0.30

0.5

1

0 0.05 0.1 0.15 0.2 0.25 0.30

0.5

1

0 0.05 0.1 0.15 0.2 0.25 0.30

0.5

1

0 0.05 0.1 0.15 0.2 0.25 0.3−10

0

10

0 0.05 0.1 0.15 0.2 0.25 0.3−20

0

20

0 0.05 0.1 0.15 0.2 0.25 0.3−20

0

20

0 0.05 0.1 0.15 0.2 0.25 0.3−5

0

5

0 0.05 0.1 0.15 0.2 0.25 0.3−5

0

5

Figure 9.19: Minimum joint reaction criterion: Muscle forces, muscle activations, force-length and force-velocity

evolution (left) and joint torque actuation in shoulder and wrist (right).

The muscle activations and forces are relatively low in order to reduce the elbow compression,

see left hand part of Figure 9.19. However, they are not as low as for the control effort criterion.

The joint torques illustrated in the right hand part of Figure 9.19 imply a completely different

motion for this criterion, which is depicted in snapshots in Figure 9.20. Here, the shoulder

is rotated around the anterior-posterior axis first, such that the elbow is moving laterally.

Afterwards, the hand is lifted to the target from below.

123

Page 146: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

Figure 9.20: Minimum joint reaction criterion: Snapshots of the resulting motion at different time steps (time in

[s]).

124

Page 147: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.2 Numerical examples of human arm motion

When optimising the angular jerk of the motion, the simulation time step is also excluded

from the optimisation variables and set to 0.125s. This criterion yields a significantly higher

amount of muscle activations and forces (Figure 9.21, left) and a distinctly smooth evolution

of force-length and force-velocity factors.

0 0.05 0.1 0.15 0.2 0.25 0.30

500

1000

BIC BRD ELCR BRA PT SUP TRI

0 0.05 0.1 0.15 0.2 0.25 0.30

0.5

1

0 0.05 0.1 0.15 0.2 0.25 0.30

0.5

1

0 0.05 0.1 0.15 0.2 0.25 0.30

0.5

1

0 0.05 0.1 0.15 0.2 0.25 0.3−50

0

50

0 0.05 0.1 0.15 0.2 0.25 0.3−50

0

50

0 0.05 0.1 0.15 0.2 0.25 0.3−50

0

50

0 0.05 0.1 0.15 0.2 0.25 0.3

−4

−2

0

0 0.05 0.1 0.15 0.2 0.25 0.3−5

0

5

Figure 9.21: Minimum jerk criterion: Muscle forces, muscle activations, force-length and force-velocity evolution

(left) and joint torque actuation in shoulder and wrist (right).

The joint torque evolutions are obviously different from the other motions. Apparently, com-

pensational joint toques reduce changes in acceleration. The result is a very smooth and

completely different motion, see Figure 9.22. The arm performs a retroverse motion around

the anterior-posterior axis in the shoulder and is then redirected in a bow back to the target,

which probably saves deceleration.

125

Page 148: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

Figure 9.22: Minimum jerk criterion: Snapshots of the resulting motion at different time steps (time in [s]).

126

Page 149: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.2 Numerical examples of human arm motion

The significant reduction in joint reactions, when using the appropriate criterion, can be recog-

nised in Figure 9.23, illustrating the constraint forces and the constraint torques in the joints

on the left hand side and the right hand side, respectively.

0 0.05 0.1 0.15 0.2 0.25 0.30

200

400

600

800

0 0.05 0.1 0.15 0.2 0.25 0.30

500

1000

1500

2000

0 0.05 0.1 0.15 0.2 0.25 0.30

100

200

300

minimum manoeuvre time

minimum control change

minimum effort

minimum joint reaction

minimum jerk

0 0.05 0.1 0.15 0.2 0.25 0.30

5

10

15

20

25

30

35

0 0.05 0.1 0.15 0.2 0.25 0.30

5

10

15

20

25

30

Figure 9.23: Evolution of constraint forces in all joints (left) and constraint torques in elbow and wrist (right) for

all criteria.

In contrast to that, the minimal time criterion and the minimal jerk criterion both yield re-

markably large constraint forces, in particular in the elbow, where the largest constraint force

of all motions appears (middle plot of Figure 9.23). This mainly results from the muscle forces,

that compress the joint. Obviously, this is also the reason why a criterion minimising the mus-

cle activations and therefore reducing the muscle forces yields relatively low constraint forces

in the elbow. The evolution of the generalised configuration variables over simulation time,

see Figure 9.24, demonstrates the effect of using a minimal jerk criterion. The left part of

the figure shows the three degrees of freedom in the shoulder, while the right hand part shows

two degrees of freedom in each cardan joint (the upper two plots for the elbow, the lower two

plots for the wrist). With the minimum jerk criterion, those curves get significantly smoother.

They nearly show a linear or even constant behaviour over time for all degrees of freedom. In

contrast to that, the other criteria show a partially jagged evolution, in particular for elbow

pronation/supination motions. Note that for all simulations (see Figures 9.13, 9.15, 9.17, 9.21

and 9.19), the force-length and force-velocity factors show smooth evolutions, despite this is a

really large motion, where many non-differential transitions between the different muscle path

combinations occur over time for each muscle.

127

Page 150: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

0 0.05 0.1 0.15 0.2 0.25 0.3

−0.2

0

0.2

0 0.05 0.1 0.15 0.2 0.25 0.3

−0.2

0

0.2

0.4

0.6

0 0.05 0.1 0.15 0.2 0.25 0.3

0

0.5

1

minimum manoeuvre time

minimum control change

minimum effort

minimum joint reaction

minimum jerk

0 0.05 0.1 0.15 0.2 0.25 0.3

−0.2

0

0.2

0 0.05 0.1 0.15 0.2 0.25 0.3

−0.4

−0.2

0

0.2

0.4

0 0.05 0.1 0.15 0.2 0.25 0.3

−2

0

2

0 0.05 0.1 0.15 0.2 0.25 0.3

−2

−1

0

1

Figure 9.24: Evolution of generalised configuration variables in the shoulder (left) and in elbow and wrist (right) for

all criteria.

Remark 9.2.1 (Initial guesses, numerical accuracy and optimisation options) For this ex-

ample, numerous initial guesses are tested and the best solutions obtained are presented. Initial

guesses are generated by slightly disturbing feasible solutions, e.g. by varying the time step size.

The total number of optimisation variables is 501, for minimum control effort, minimum con-

trol change and minimum manoeuvre time criteria, the time step size is an additional variable.

There are bounds on all variables and the problem is subject to 109 nonlinear inequality con-

straints and 292 nonlinear equality constraints. The simulation times lie between 20 minutes

and several hours for each simulation. All simulations finished with exitflag 5, indicating that

a local minimum is possible, even if the first order optimality is not fulfilled. In future work,

this should be examined further, together with the challenge of finding global minima.

128

Page 151: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.2 Numerical examples of human arm motion

9.2.4 On long throw and shot put

Among many sports motions, a definitely common movement is throwing. It plays an important

role in ball sports, to precisely pass the ball to a teammate in order to overcome far distances

in a short time. In other disciplines like long throw, javelin throw or shot put, a maximal

throw distance is the goal. In ancient times, throwing was of major importance for efficient

hunting. Anthropologists even suppose that these throwing motions encouraged the evolution

of the human brain by evolving new brain structures [Wash 79, Calv 97].

Within this numerical example, throwing with the goal of maximal throw distance is examined

using the introduced arm model. Hence, a goal has to be formulated that leads to a maximal

velocity of the hand, i.e. the ball, in throw direction during the last time step of the simulation.

One possibility to realise this is shown in (7.14). This formulation is less nonlinear compared

to formulations involving the conjugate momentum, see [Leye 10]. The arm is fixed in space in

the shoulder joint and the simulation starts from a predefined initial arm position, as illustrated

in the first plot of Figure 9.25, with an initial momentum p0 = 0. The end configuration is not

strictly predefined but implemented via inequality constraints. They require an orientation of

palm forward and a distance to the origin in the shoulder of minimal 0.2m in positive e2, e3

direction at the end of the simulation time. Further inequality constraints are set on the joint

angles as illustrated in Table 9.1 via constraining the scalar products of the directors or via an

approximation on the joint angle by summing up the generalised configuration variables.

Table 9.1: Restrictions on joint angles implemented with inequality constraints.

joint rotation dof min. angle max. angle inequality constraint

elbow flexion/extension 0◦ 180◦(d12

)T· d2

3 < 0

pronation/supination −90◦ 90◦ −π

2<∑j

n=1 uC12,j <

π

2wrist circumduction −90◦ 90◦ −

(d23

)T· d2

3 < 0

Restricting the joint angles in the shoulder to anatomical realistic angles is even more compli-

cated, as the range of possible shoulder motion depends on the configuration of the forearm.

While for a supinated forearm, complete rotation cycles in the sagittal plane (anteversion–

retroversion) are possible in both directions, there exists a bound on the shoulder rotation,

if the forearm is pronated. This biomechanical constraint is conquerable only by a voluntary

so called ’adjunct’ rotation around the longitudinal axis to perform a closed ergonomic cycle

[Kapa 92]. Particularly, this effect occurs during swimming motions but also within a throwing

motion, if the motion starts from a retroverse shoulder position.

Hence, to circumvent a case dependent inequality constraint in this numerical example, an

initial configuration is prescribed, where the upper arm is adducted and the forearm is flexed

at 90◦, see first plot in Figure 9.25. A further inequality constraining the hand to positive

e3-direction prevents the upper arm from too large rotations around its longitudinal axis.

Additionally, the centres of mass of the single bodies are constrained to positive e1-directions

in every time step, to prevent the arm from collisions with the pitchers body. The simulation

time is free, as the size of the time step ∆t is included in the set of optimisation variables. The

bounds on the time step size are set to [0.0175, 0.0225]s and the problem is discretised with

129

Page 152: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

N = 15 time steps. Furthermore, there is a bound on the maximal control effort of the motion.

9.2.4.1 Long throw

In this simulation, the focus is on long throw, which is typically performed during sports

education with a small, lightweight ball. To represent the mass of a ball, a point mass of 0.2kg

is added to the hand’s center of mass. Because of the implemented muscle actuation, this

problem is of substantially higher nonlinearity compared to the problem described in [Leye 10].

Figure 9.25: Snapshots of an optimal throw motion.

For an optimal throw motion, momentum is gained by taking the arm far back. Then, the

130

Page 153: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.2 Numerical examples of human arm motion

arm is usually pulled fast forward like a pitch with the elbow ahead. The biomechanical

principle behind optimal throwing motions is called ’principle of optimal acceleration distance’,

see [Hoch 81]. It states that the longer a constant force acts on a body, the higher is the

final velocity of this body. For throwing motions, this means there is an optimal backswing

motion according to length and direction. However, the optimal trajectory of the throw is not

necessarily the longest path. Excessive backswing motions can also be counterproductive, as

muscles can be stretched over their optimal length, see for example [Sche 10].

0 0.05 0.1 0.15 0.20

500

1000

BIC BRD ELCR BRA PT SUP TRI

0 0.05 0.1 0.15 0.20

0.5

1

0 0.05 0.1 0.15 0.20

0.5

1

0 0.05 0.1 0.15 0.20

0.5

1

0 0.05 0.1 0.15 0.2−50

0

50

0 0.05 0.1 0.15 0.2−50

0

50

0 0.05 0.1 0.15 0.2−50

0

50

0 0.05 0.1 0.15 0.2−0.5

0

0.5

0 0.05 0.1 0.15 0.2−0.5

0

0.5

Figure 9.26: An optimal throw motion: Muscle forces, activations, force-length and force-velocity factor (from top

to bottom, left) and joint torques in the shoulder and in the wrist (from top to bottom, right).

Comparing this to the resulting motion of the optimal control simulation, see snapshots in

Figure 9.25, a large coincidence can be found, in particular concerning the gaining of momentum

by an posterior shoulder motion and the elbow being ahead during the final steps. However,

there certainly exist differences to real throwing motions, as this optimal control simulation

treats a standing throw, while typical throw motions are done with a run up and an additional

twist of the upper body.

The muscle forces that are generated to perform this throwing motion are illustrated in the

left hand part of Figure 9.26, together with the activations of the muscles and the evolutions

of the force-length and force-velocity factors. A large variety of muscles is active to perform

this motion and a large amount of muscle forces is produced, in particular by TRI and ECRL

in order to stretch the arm in the beginning and the end of the motion. In the middle of the

motion, BRA and PT induce a flexion of the elbow. As the triceps muscle is not affected by

pronation/supination motions, and as its insertion point on the olecranon is close to the elbow

joint, this muscle is only affected by small length changes, leading to a fl factor close to the

maximum during the whole motion. In contrast to that, the supinator muscle is naturally highly

131

Page 154: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

affected by the large pronation/supination motions during the throw, hence its fl factor changes

more over the simulation time. All other flexor muscles show a contraction in the beginning,

followed by an elongation again. The force-velocity factor of the triceps stays close to 1, for

all other muscles it changes more significantly from contraction to elongation. Altogether, the

force-length and force-velocity behaviour is smooth, even when using larger time steps as in

the examples before.

0 0.1 0.20

50

100

150

200

250

300

350

400

time [s]

kine

tic e

nerg

y [J

]

0 0.1 0.2−4

−2

0

2

4

6

8

10

12

time [s]

pote

ntia

l ene

rgy

[J]

0 0.1 0.20

50

100

150

200

250

300

350

400

time [s]

tota

l ene

rgy

[J]

Figure 9.27: An optimal throw motion: Evolution of kinetic, potential and total energy over time.

In addition to the muscle actuation in the elbow, the shoulder and the wrist are actuated by

joint torques. Corresponding to the number of degrees of freedom in these joints, the shoulder

is actuated by joint torques τ S ∈ R3 and the wrist is actuated by joint torques τC ∈ R2. The

evolution of these joint torques is depicted in the right hand part of Figure 9.26. The upper

three plots show the torques in the shoulder, while the fourth and fifth plot show the torques

in the wrist. In reality no arbitrary large joint torques are possible, hence they are bound

within the simulation to [−50Nm, 50Nm] in the shoulder and [−0.5Nm, 0.5Nm] in the wrist.

Obviously, the torques are at their bounds during the last time step to generate a large final

momentum and it is also made full use of the limit on the maximal effort of the motion.

When looking at the energy evolution over time, see Figure 9.27, a strong increase in kinetic and

total energy is visible with its maximum at the end of the motion, indicating a maximal velocity

then. The potential energy is slightly varying because of a change in altitude of the bodies.

132

Page 155: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.2 Numerical examples of human arm motion

The final optimal value of the objective is Jd = −29.45m

s, which means a throw distance about

R = 88.45m.

9.2.4.2 Shot put

In a second example, we investigate a shot put motion. Shot put belongs to the ’track and

field’ athletic disciplines and is part of the olympic games. The goal is to push the shot as far

as possible with an explosive motion of the arm.

Figure 9.28: Snapshots of an optimal shot put motion with a point mass of 7.257kg.

133

Page 156: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

To represent the shot (a heavy spherical object) we increase the point mass on the hand’s center

of mass to 7.257kg, which is the official weight of the men’s shot. Note that concerning the

problem description above, generally nothing but the added point mass has to be changed to

simulate a shot put motion instead of a long throw motion. To get a more realistic shot put

motion, the bound on the maximal effort of the motion is increased and the bounds on the

torques of the wrist are set to [−5Nm, 5Nm] to enable the pushing of the heavy shot.

0 0.05 0.1 0.15 0.2 0.25 0.30

500

1000

BIC BRD ELCR BRA PT SUP TRI

0 0.05 0.1 0.15 0.2 0.25 0.30

0.5

1

0 0.05 0.1 0.15 0.2 0.25 0.30

0.5

1

0 0.05 0.1 0.15 0.2 0.25 0.30

0.5

1

0 0.05 0.1 0.15 0.2 0.25 0.3−50

0

50

0 0.05 0.1 0.15 0.2 0.25 0.3−50

0

50

0 0.05 0.1 0.15 0.2 0.25 0.3−50

0

50

0 0.05 0.1 0.15 0.2 0.25 0.3−5

0

5

0 0.05 0.1 0.15 0.2 0.25 0.3−5

0

5

Figure 9.29: An optimal shot put motion: Muscle forces, activations, force-length and force-velocity factor (from

top to bottom, left) and joint torques in the shoulder and in the wrist (from top to bottom, right).

As an initial guess for this optimal control simulation, a feasible solution with the larger point

mass is created from the optimal long throw motion shown in Figure 9.25. Like the long

throw motion, an optimal motion follows the ’principle of optimal acceleration distance’, where

the optimal distance is not necessarily the longest distance. Instead of a continuously curved

trajectory of the hand in case of a long throw, in shot put a pushing motion, i.e. a straight

acceleration distance, is known to be optimal. The shot put motion resulting from the optimal

control simulation is illustrated in Figure 9.28. The gaining of momentum, which is typical for

long throw motions, is not observable anymore and, as it is typical for shot put motions, the

heavy shot is held close to the neck during a long part of the motion. During the last steps of

the motion, the arm pushes forward explosively. Concluding, the resulting optimal arm motion

during shot put is similar to the illustrations in sports education literature, see for example

[Mull 12], in particular if one keeps in mind that one main part of the motion, the twist of

the upper body, is not included in the model. The muscle forces and activations involved in

this optimal shot put motion are illustrated in the left hand part of Figure 9.29. Compared

to the long throw motion, the muscle forces are not much larger, but more muscles are active

for a longer time. Likewise, the force-length and in particular force-velocity behaviour of the

134

Page 157: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.2 Numerical examples of human arm motion

muscles is different, in particular the shot put motion is slower than the long throw motion.

When looking at the joint torques depicted in the right hand part Figure 9.29, one can see

that the whole range of possible joint torques is made use of, especially in the shoulder joint

during the last time steps. As in the long throw example, the total and kinetic energy shown in

Figure 9.30 are increasing explosively at the end of the motion. The potential energy is larger

because of the heavy additional point mass, but it does not go above the initial value in the

end, as the hand holding the heavy point mass stays close to the neck and is rather pushed

forward. The final optimal value of the objective is in this case Jd = −9.47m

s, which means a

push distance about R = 9.15m.

0 0.20

100

200

300

400

500

600

time [s]

kine

tic e

nerg

y [J

]

0 0.2−5

0

5

10

15

20

25

30

time [s]

pote

ntia

l ene

rgy

[J]

0 0.20

100

200

300

400

500

600

time [s]

tota

l ene

rgy

[J]

Figure 9.30: An optimal shot put motion: Evolution of kinetic, potential and total energy over time.

Remark 9.2.2 (Initial guesses, numerical accuracy and optimisation options) The solutions

of these numerical examples are computed with Matlab’s fmincon using the active-set algorithm.

Further on, a numerical tolerance of 10−6 is set for constraint fulfilment (TolCon), function

tolerance (TolFun) and optimisation variable tolerance (TolX).

For the long throw example, feasible solutions of the problem are computed with an objective

function Jd = 1 by starting from an initial forward dynamics simulation and slightly varying

the actuating joint torques.

For the initial guess of the shot put example, a feasible solution is created from the long throw

solution with the additional point mass and an objective function Jd = 1.

135

Page 158: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9 Model of the human arm

The optimal control simulations terminated with exitflag 5 again, indicating that a local min-

imum is possible, even if the first order optimality is not fulfilled. The creation of different

initial guesses and the issue of finding global minima is to be examined in future work.

136

Page 159: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

9.3 Summary and outlook on future work

9.3 Summary and outlook on future work

This chapter focusses on the application of an optimal control formulation for constrained forced

multibody systems called DMOCC (see [Leye 10]) to biomechanical optimal control problems

including muscle actuation. In this context, we introduce a model of the human arm with

muscle actuation of the elbow by seven muscles represented by Hill-type muscle models.

First, simple numerical examples of lifting the arm are shown to investigate the influence of

dynamical muscle paths and examine weight lifting motions. After that, a typical workplace

motion is simulated, where the arm has to be lifted from a hanging position to a position

over the head, which represents a shelf stocking motion. Here, several objective functions are

compared, which lead to significantly different muscle activations and joint torques and result

in different motions. This shows the wide application spectrum of this method. Only by

adjusting the objective, completely different investigations are possible concerning efficiency,

ergonomics or safe transport of fragile objects. Finally, the model is used to solve optimal control

problems of typical sports motions like long throw and shot put, where the goal is to perform

a throw of maximal distance. To account for this goal, a criterion, i.e. a discrete objective

function is formulated, that maximises the velocity of the hand’s center of mass in direction

of the throw at the end of the motion. For both examples, the same problem formulation,

constraints and objective function are used, only the additional point mass, representing the

lightweight ball or the heavy shot, and the bound on torques and effort of the motion are

different. Nevertheless, the solution of the optimal control problem yields different motions in

both cases that fit well to the motion sequences for these types of sport known from literature.

While the optimal long throw motion is gaining momentum and increasing the acceleration

distance by a posterior shoulder motion, the optimal shot put motion keeps the heavy weight

close to the neck reducing the lever arm of its gravitational force. Furthermore, a difference in

optimal motion time becomes apparent. While the long throw motion is performed as fast as

possible due to the bounds, the shot put motion takes more time, which enables more muscles

to produce forces in order to move the heavy shot.

Concluding, all those numerical examples show that the method is able to predict optimal

motions according to the formulated optimality criterion. However, as DMOCC is a direct

transcription method, only local solutions are found and the issue of finding global minima is

a topic for future investigations. Moreover, the muscle parameters responsible for the shape

of the force-length and force-velocity function have a large influence on the evolution of the

muscle forces. For simplicity, they are chosen with respect to the optimal muscle length for

each muscle within this work, which has to be improved with more realistic data in the future.

137

Page 160: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe
Page 161: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

10 Conclusion and outlook

This thesis combines a recently developed optimal control method DMOCC with biomechanical

models of the human upper extremity and different approaches on muscle actuation modelling.

In the first part of this work, a brief description on continuous dynamics and the derivation of a

variational integrator is given. Common commercially available integrators as for example the

Matlab/Simulink ode solvers can show numerical dissipation in energy and angular momentum

during dynamic simulation. In contrast to that, a variational integrator, e.g. the symplectic-

momentum method, used in this work leads to a structure preserving simulation framework, due

to the discretisation of the variational principle instead of discretising the equations of motions

of a problem. The advantage of a structure preserving integration method concerning energy

and angular momentum consistency is discussed and quantified for muscle actuated forward

dynamics simulations. For this purpose and for comparability with existing Matlab/Simulink

models, a common Hill-type model with a contractile, a parallel elastic and a serial elastic

component is implemented in the symplectic-momentum scheme. It becomes apparent that the

errors for Matlab/Simulink integrators in energy and angular momentum can be significant,

depending on the time step size. Even for smaller time steps, the error is not numerically zero.

In contrast to that, the results of the symplectic-momentum method are energy consistent for

the linear problem and show angular momentum consistency and a good energy behaviour in

a nonlinear example including a joint.

To reduce errors in energy and angular momentum caused by the integrator, it is commonly

suggested to consider relatively small time steps for the simulation. In the case of repetitive

movements and in long-term simulations, reducing the step size may not be sufficient and using

a structure preserving method is suggested. This may be even more important in more complex

systems including many muscles and joints and in particular for optimal control simulations,

where cost functions are related to muscle work or energy and where reducing the step size is

not possible due to dramatical increases in the computational effort.

In the later part of the work, a muscle model is implemented with smoothened force-length

and force-velocity behaviour, neglecting a serial elasticity. This muscle model is particularly

useful, when analytical gradients of the optimal control problem are implemented in order to

solve more ambitious problems.

Another query in biomechanical simulation is the efficient computation of muscle paths wrap-

ping around bodies and joints. For the application within optimal control simulations, such

path calculations are required to meet certain restrictions. On the one hand, the length and

force directions must be differentiable, in case analytical gradients are to be provided, on the

other hand a low computational effort is inevitable to keep the overall computation time in a

reasonable range. Common studies use fixed via or wrapping points that do not represent a

real wrapping behaviour. Instead, this study introduces a possibility to compute more realistic

muscle paths. A semi-analytical algorithm is constructed, combining known geodetic parts to

complete G1 (geometric) continuous paths. The algorithm is exact for most geometrical cases.

139

Page 162: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

10 Conclusion and outlook

On rare occasions, if an analytical solution using a combination of line and helix formed paths

is not possible due to large pronation or supination motions or if the solution is not defined in

R, an approximation is made in a way that the solution least intersecting the bodies is chosen.

This guarantees that there is always a muscle path provided during the solution of the optimal

control problem, while the computational effort stays in a reasonable range. The influence of

these wrapping muscle paths is discussed with a numerical example comparing wrapping paths

to direct line connections. The main conclusion is that force directions have a high impact on

the optimal control simulations, meaning that it is important to implement force directions as

correctly and realistically as possible to get realistic results from the simulations. The approach

presented in this work is a first step in this direction, nonetheless muscle insertion points are

assumed to be point insertions, while they are more planar in reality and the elbow mechanics

representation in our model makes it difficult to distinguish between muscle inserting on ulna

and radius and the associated effects. Further limitations appear in particular when it comes

to fast dynamics or large motions. The sliding muscle paths may lead to discontinuities in

the model due to the if-else clauses involved. This may yield convergence problems during the

optimal control simulations. To smoothen the transition between different path combinations

in order to enable a better performance of the optimal control simulations is a delicate future

task.

Generally, optimal control of muscle actuated motions is a complex topic as the underlying

equations are of high nonlinearity. Discontinuous muscle path sliding as well as strong non-

linear force-length and force-velocity behaviour meet a nonlinear constrained optimal control

problem. The constraints include both nonlinear inequality and equality constraints, e.g. the

structure preserving equations of motion premultiplied with a null space matrix and reduced by

a nodal reparametrisation procedure. Altogether, this can yield various problems when running

optimal control simulations. For this purpose, several hints on how to circumvent upcoming

problems are addressed. Concluding, the interior-point algorithm shows a good behaviour even

for problems with higher nonlinearity, but the results are not always reasonable. The recently

added Matlab/ fmincon sqp algorithm as well as Snopt 7 yield far better results which signifi-

cantly minimise the objective function more than Matlab’s interior point algorithm. However,

these algorithms are much more sensitive to discontinuities in the model. Matlab’s active-set

algorithm has shown to be most robust on such problems including discontinuous muscle paths

and the time step size as an optimisation variable. Generally, experience has shown that a

scaling of the objective function may sometimes help to overcome those discontinuities. Yet,

the tolerances have to be adapted as well in this case or the scaling has to be decreased step by

step again in order to generate meaningful results. Another aggravating issue is to find initial

guesses with a good quality. Gradient-based methods, like they are implemented in Matlab’s

fmincon solver, aim at finding local solutions of the optimal control problem, thus they strongly

depend on the applied initial guess.

Despite all those numerical issues, it is possible to present a wide range of different examples

in optimal control of biomechanical motions throughout this work. Starting with pure joint

torque actuation, finger and arm motions are examined with specific interest in appropriate

optimal control criteria. The resulting trajectories are compared to literature, experiments and

subjective opinions on realistic motions defined in this work, in order to judge which criterion

resembles the unconscious control of human motion by the CNS best. In coherence with litera-

140

Page 163: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

ture, criteria on minimal control change, minimal energy and minimal jerk yield the best results,

while a minimum control effort criterion does not always deliver realistic motions. Though, the

minimum control effort and minimum control change criteria show a good behaviour concern-

ing the convergence of the optimal control procedure, when joint torque actuation is applied.

This is probably related to their composition of solely weighted sums of squared optimisation

variables. In addition to those criteria, a criterion is introduced to assess ergonomic aspects of

a motion. Here, the joint reactions are quantified by constraint forces and torques that occur

according to the restricted degrees of freedom in a joint. In workplace motions also time optimal

solutions can be of interest. This is formulated as optimal control criterion as well, including

the time step size into the optimisation variables. Another common topic in biomechanical in-

vestigations is covered by the closing example of this work. Sports motions like long throw and

shot put aim to throw a maximal distance, which can also be formulated as an optimal control

criterion. This criterion yields a realistic throwing motion with reasonable muscle activations.

Only by changing the added point mass to the mass of a heavy shot and adjusting the bound

on joint torques and control effort, the resulting motion significantly changes towards a shot

put motion.

A continuation of this work and further research with the developed method is conceivable

based on several open issues. In the first place, a comparison to experiments, i.e. motion

capturing measurements or EMG measurements, would be beneficial to validate the method.

Additionally, it is possible to take advantage from further capabilities of the method. For exam-

ple, parameter optimisations including geometry related quantities can be examined in order

to find dynamically optimal design of workplaces or protheses. Further, muscle origin and

insertion points could be included as optimisation variables in order to find optimal insertion

points for human-like robots, for applications of artificial muscles or even for muscle controlled

prostheses. Regarding the rigid body formulation, it would be preferable to represent the el-

bow joint mechanics in a more realistic manner, i.e. by representing ulna and radius as separate

rigid bodies. A further challenge is the improvement of the convergence behaviour, in partic-

ular of highly nonlinear objectives and a reduction in discontinuities due to the muscle path

computation. Besides other benefits, like an easier adaption of the model to other problems, it

is therefore sensible to implement algorithmic differentiation instead of analytically calculated

gradients. This will probably simplify the computation of even larger motions and long time

manoeuvres.

141

Page 164: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe
Page 165: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

A Analytical gradients of the optimal control

problem

In order to give a brief overview on the dependencies, the analytical gradients of typical non-

linear constraints are given.

A.1 Analytical gradients of nonlinear equality constraints

A.1.1 Gradient of equations of motion

The equality constraints stemming from the equations of motion (4.14) are summarised in Rn

Rn = P T (qn) · [D2Ld(qn−1, qn) +D1Ld(qn,F (un+1, qn)) + f+n−1 + f−

n ] = 0 (A.1)

Herein, the left and right discrete forces are composed of joint torques and muscle forces

f+n−1 =

∆t

2BT (qn) · τ n−1 +

∆t

2BT (qn) ·

[Fmn−1(qn−1, qn) rn−1

]

f−

n =∆t

2BT (qn) · τ n +

∆t

2BT (qn) ·

[Fmn (qn, qn+1) rn

](A.2)

The derivations of the left discrete forces with respect to qn, qn−1 read

∂f+n−1

∂qn

=∆t

2

(∂[BT (qn) · τ n−1

]

∂qn

+∂[BT (qn) ·

[Fmn−1(qn−1, qn) rn−1

]]

∂qn

)

∂f+n−1

∂qn−1

=∆t

2

(∂[BT (qn) · τ n−1

]

∂qn

·∂qn

∂qn−1

+∂[BT (qn) ·

[Fmn−1(qn−1, qn) rn−1

]]

∂qn

·∂qn

∂qn−1

+∂[BT (qn) ·

[Fmn−1(qn−1, qn) rn−1

]]

∂qn−1

)(A.3)

The derivations of the right discrete forces with respect to qn+1, qn read

∂f−

n

∂qn+1

=∆t

2

(∂[BT (qn) ·

[Fmn (qn, qn+1) rn

]]

∂qn+1

)

∂f−

n

∂qn

=∆t

2

(∂[BT (qn) · τ n

]

∂qn

+∂[BT (qn) ·

[Fmn (qn, qn+1) rn

]]

∂qn

+∂[BT (qn) ·

[Fmn (qn, qn+1) rn

]]

∂qn+1

·∂qn+1

∂qn

)(A.4)

143

Page 166: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

A Analytical gradients of the optimal control problem

Applying the chain rule and using

sn = [1

∆t

(−qn+1 + 2qn − qn−1

)·M+∆t M ·g+f+

n−1(τ n−1, qn−1, qn)+f−

n (τ n, qn, qn+1)] (A.5)

the derivations of Rn with respect to un+1, un and un−1 can be computed

∂Rn

∂un+1= P T (qn) ·

[(−

1

∆tM) +

∆t

2

(∂[BT (qn) ·

[Fmn (qn, qn+1) rn

]]

∂qn+1

)]·∂qn+1

∂un+1(A.6)

If both P T (qn) and sn have to be derived (e.g. with respect to un), the derivation is splitted in

two parts using the product rule. Within the first part of the product rule, the matrix vector

product P T (qn) · sn is performed first keeping sn constant and then the resulting vector is

derived. Hereby, a derivation of the matrix P T (qn) with respect to a vector is avoided.

∂Rn

∂un

=∂(P T (qn) · sn

)

∂qn

∣∣∣∣∣sn=const

·∂qn

∂un

+ P T (qn) ·

[(2

∆tM ) + (

−1

∆tM) ·

∂qn+1

∂qn

+∆t

2

(∂[BT (qn) · τ n−1

]

∂qn

+∂[BT (qn) ·

[Fmn−1(qn−1, qn) rn−1

]]

∂qn

)

+∆t

2

(∂[BT (qn) · τ n

]

∂qn

+∂[BT (qn) ·

[Fmn (qn, qn+1) rn

]]

∂qn

+∂[BT (qn) ·

[Fmn (qn, qn+1) rn

]]

∂qn+1

·∂qn+1

∂qn

)]·∂qn

∂un

(A.7)

∂Rn

∂un−1=

∂(P T (qn) · sn

)

∂qn

∣∣∣∣∣sn=const

·∂qn

∂qn−1

·∂qn−1

∂un−1

+ P T (qn) ·

[(2

∆tM) ·

∂qn

∂qn−1

+ (−1

∆tM)

+ (−1

∆tM) ·

∂qn+1

∂qn

·∂qn

∂qn−1

+∆t

2

(∂[BT (qn) · τ n−1

]

∂qn

+∂[BT (qn) ·

[Fmn−1(qn−1, qn) rn−1

]]

∂qn

∂qn

∂qn−1

+∂[BT (qn) ·

[Fmn−1(qn−1, qn) rn−1

]]

∂qn−1

+∆t

2

(∂[BT (qn) · τ n

]

∂qn

+∂[BT (qn) ·

[Fmn (qn, qn+1) rn

]]

∂qn

∂qn

∂qn−1

+∆t

2

(∂[BT (qn) ·

[Fmn (qn, qn+1) rn

]]

∂qn+1

)·∂qn+1

∂qn

·∂qn

∂qn−1

]·∂qn−1

∂un−1(A.8)

144

Page 167: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

A.1 Analytical gradients of nonlinear equality constraints

The gradient of Rn with respect to τ n, τ n−1 is given by

∂Rn

∂τ n−1=

∆t

2BT (qn)

∂Rn

∂τ n

=∆t

2BT (qn) (A.9)

The gradient of Rn with respect to An, An−1 is given by

∂Rn

∂An−1=

∆t

2BT (qn) ·

∂[Fmn−1(qn−1, qn) rn−1

]

∂An−1

∂Rn

∂An

=∆t

2BT (qn) ·

∂[Fmn (qn, qn+1) rn

]

∂An

(A.10)

A.1.2 Gradient of initial configuration condition

The initial configuration condition solely depends on u1

∂u1

∂u1= I(k−m)×(k−m) (A.11)

A.1.3 Gradient of initial momentum condition

Further, the initial momentum pini in generalised coordinates is constrained to zero

pini = P T (q1) · [p0 −1

∆tM · (q2 − q1) +

∆t

2M · g + f−

1 ] = 0 (A.12)

r1 = [p0 −1

∆tM · (q2 − q1) +

∆t

2M · g + f−

1 ] (A.13)

∂pini

∂u2

= P T (q1) ·

[(−

1

∆tM) ·

∂q2

∂u2

+∆t

2

(∂[BT (q1) · [F

m1 (q1, q2) r1]

]

∂q2

)·∂q2

∂u2

]

(A.14)

∂pini

∂u1

=∂(P T (q1) · r1

)

∂q1

∣∣∣∣∣r1=const

·∂q1

∂u1

+ P T (q1) ·

[(−

1

∆tM) ·

∂q2

∂q1

+ (1

∆tM) +

∆t

2

(∂[BT (q1) · [F

m1 (q1, q2) r1]

]

∂q2

)·∂q2

∂q1

+∆t

2

(∂[BT (q1) · τ 1

]

∂q1

+∂[BT (q1) · [F

m1 (q1, q2) r1]

]

∂q1

)]·∂q1

∂u1(A.15)

∂pini

∂τ 1= BT (q1) (A.16)

∂pini

∂A1= BT (q1) ·

∂ [Fm1 (q1, q2) r1]

∂A1(A.17)

145

Page 168: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

A Analytical gradients of the optimal control problem

A.1.4 Gradient of final configuration condition

The final configuration can for example be constrained by arriving at a certain point xe ∈ R3

with the center of mass of the hand

xf = ϕ3n + ρ31 (d

31)n + ρ32 (d

32)n + ρ33 (d

33)n − xe = 0 (A.18)

The appropriate gradient with respect to uN−j for j = 1, . . . , N − 1 then reads

∂xf

∂uN−j

= [03×24, I3×3, ρ31 I3×3, ρ32 I3×3, ρ33 I3×3] ·∂qN

∂uN−j

(A.19)

A.1.5 Gradient of final momentum condition

To simulate rest-to-rest manoeuvres, the final momentum in generalised coordinates pfin is also

constrained to zero.

pfin = P T (qN) · [1

∆tM · (qN −qN−1)+

∆t

2M ·g+f+

N−1(τN−1, qN−1, qN)−pN ] = 0 (A.20)

With

rN = [1

∆tM · (qN − qN−1) +

∆t

2M · g + f+

N−1(τN−1, qN−1, qN)− pN ] (A.21)

the gradient with respect to uN and uN−j for j = 1, . . . , N − 1 becomes

∂pfin

∂uN=

∂(P T (qN ) · rN

)

∂qN

∣∣∣∣∣rN=const

·∂qN

∂uN

+ P T (qN )

[1

∆tM +

∆t

2

(∂[BT (qN ) · τN−1

]

∂qN

+∂[BT (qN ) ·

[FmN−1(qN−1, qN ) rN−1

]]

∂qN

)]·∂qN

∂uN

(A.22)

∂pfin

∂uN−j

=∂(P T (qN) · rN

)

∂qN

∣∣∣∣∣rN=const

·∂qN

∂uN−j

+ P T (qn)

[1

∆tM

+∆t

2

(∂[BT (qN) · τN−1

]

∂qN

+∂[BT (qN ) ·

[FmN−1(qN−1, qN) rN−1

]]

∂qN

)]·

∂qN

∂uN−j

+

[−

1

∆tM

∂[BT (qN ) ·

[FmN−1(qN−1, qN) rN−1

]]

∂qN−1

]·∂qN−1

∂uN−j

(A.23)

∂pfin

∂τN−1= BT (qN) (A.24)

∂pfin

∂AN−1= BT (qN) ·

∂[FmN−1(qN−1, qN ) rN−1

]

∂AN−1(A.25)

146

Page 169: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

BConstra

intJaco

biansofthefingerandthearm

model

• Constraint Jacobian of the finger model GFext(q) ∈ R13×36

GFext(q) =

I ρ111 I ρ112 I ρ113 I 0 0 0 0 0 0 0 0

−I −ρ121 I −ρ122 I −ρ123 I I ρ211 I ρ212 I ρ213 I 0 0 0 0

0T n11(d

22)

T n12(d

22)

T n13(d

22)

T 0T 0T (n1)T 0T 0T 0T 0T 0T

0T n11(d

23)

T n12(d

23)

T n13(d

23)

T 0T 0T 0T (n1)T 0T 0T 0T 0T

0 0 0 0 −I −ρ221 I −ρ222 I −ρ223 I I ρ311 I ρ312 I ρ313 I

0T 0T 0T 0T 0T n21(d

32)

T n22(d

32)

T n23(d

32)

T 0T 0T (n2)T 0T

0T 0T 0T 0T 0T n21(d

33)

T n22(d

33)

T n23(d

33)

T 0T 0T 0T (n2)T

(B.1)

147

Page 170: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

BConstrain

tJacob

iansof

thefinger

andthearm

model

• Constraint Jacobian of the arm model GAext(q) ∈ R11×36

GAext(q) =

I ρ111 I ρ112 I ρ113 I 0 0 0 0 0 0 0 0

−I −ρ121 I −ρ122 I −ρ123 I I ρ211 I ρ212 I ρ213 I 0 0 0 0

0T n111 (n12)T n11

2 (n12)T n113 (n12)T 0T n12

1 (n11)T n122 (n11)T n12

3 (n11)T 0T 0T 0T 0T

0 0 0 0 −I −ρ221 I −ρ222 I −ρ223 I I ρ311 I ρ312 I ρ313 I

0T 0T 0T 0T 0T n211 (n22)T n21

2 (n22)T n213 (n22)T 0T n22

1 (n21)T n222 (n21)T n22

3 (n21)T

(B.2)

148

Page 171: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

C Parameters of the muscle models

C.1 Hill-type model with three components

The parameters used within the Hill-type model introduced in Section 6.1.1 are given by Table

C.1.

Table C.1: Muscle parameters of rat M. gastrocnemius medialis. The parameter identification is described in

[Till 08].

parameter value unit

l1 -7.23 mm

l2 -2.5 mm

l3 1.05 mm

l4 21 mm

fc 0.84 Fim

vmax -182.2 mm/s

γ 0.151 –

k1 0.4509 N

k2 0.0836 mm−1

F1 1.3482 N

∆lSEC10.7427 mm

ksh 4.3555 –

lm 44.8 mm

Fim 11.2 N

S 1 –

A0 0.01 –

c 0.065 s

B1 1.4 –

B2 0.0525 –

B3 0.021 –

149

Page 172: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

C Parameters of the muscle models

C.2 Hill-type model with two components

The Hill-type model with smoothened force-length and force-velocity curves is used for the

human arm muscles. Here, some exemplary parameters are given for the most important arm

muscles around the elbow.

Table C.2: Most important muscle parameters of the arm muscles used within this work, adapted from [Murr 95,

Murr 00, Holz 05].

muscle BIC BRD ECRL BRA PT SUP TRI

lmopt [m] 0.331 0.274 0.315 0.263 0.150 0.150 0.365

PCSA [cm2] 5.1 1.2 1.5 5.4 2.8 2.8 14.9

Fim [N] 435.6 261.3 304.9 987.3 566.2 476.0 624.3

150

Page 173: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

D Semi-analytical muscle path computation

The eight possible substitutions for solving (6.32) for th0are given by

sin(α) =a12√

(a11)2 + (a12)

2, cos(α) =

a11√(a11)

2 + (a12)2

sin(α) =a12√

(a11)2 + (a12)

2, − cos(α) =

a11√(a11)

2 + (a12)2

sin(α) =a11√

(a11)2 + (a12)

2, cos(α) =

a12√(a11)

2 + (a12)2

sin(α) =a11√

(a11)2 + (a12)

2, − cos(α) =

a12√(a11)

2 + (a12)2

− sin(α) =a12√

(a11)2 + (a12)

2, cos(α) =

a11√(a11)

2 + (a12)2

− sin(α) =a12√

(a11)2 + (a12)

2, − cos(α) =

a11√(a11)

2 + (a12)2

− sin(α) =a11√

(a11)2 + (a12)

2, cos(α) =

a12√(a11)

2 + (a12)2

− sin(α) =a11√

(a11)2 + (a12)

2, − cos(α) =

a12√(a11)

2 + (a12)2

(D.1)

Therewith, we get eight reformulations of (6.32) using the addition theorems

−r2√(a11)

2 + (a12)2

= sin(α) sin(2πth0) + cos(α) cos(2πth0

) = cos(2πth0− α)

r2√(a11)

2 + (a12)2

= sin(α) sin(2πth0)− cos(α) cos(2πth0

) = cos(2πth0+ α)

−r2√(a11)

2 + (a12)2

= sin(α) cos(2πth0) + cos(α) sin(2πth0

) = sin(2πth0+ α)

r2√(a11)

2 + (a12)2

= −(sin(α) cos(2πth0)− cos(α) sin(2πth0

)) = sin(2πth0− α)

−r2√(a11)

2 + (a12)2

= − sin(α) sin(2πth0) + cos(α) cos(2πth0

) = cos(2πth0+ α)

r2√(a11)

2 + (a12)2

= − sin(α) sin(2πth0)− cos(α) cos(2πth0

) = cos(2πth0− α)

−r2√(a11)

2 + (a12)2

= − sin(α) cos(2πth0) + cos(α) sin(2πth0

) = sin(2πth0− α)

r2√(a11)

2 + (a12)2

= −(− sin(α) cos(2πth0)− cos(α) sin(2πth0

)) = sin(2πth0+ α) (D.2)

151

Page 174: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

D Semi-analytical muscle path computation

From the schematic illustration in Figure D.1, we can easily obtain that the plotted trigono-

metric functions cut each of the horizontal lines±r2√

(a11)2 + (a12)

2only once in the appropriate

domain of definition of arcsin and arccos, respectively. As the range of motion for pronation-

Figure D.1: Schematic illustration of the eight possible solutions of (D.2).

supination motions of the forearm is limited to angles smaller than π, the eight solutions are

sufficient to compute the shortest helix path. Possible solutions are exemplarily highlighted in

152

Page 175: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Figure D.1 and given by

th0=

1

(arccos

(−r2√

(a11)2 + (a12)

2

)+ α

)

th0=

1

(arccos

(r2√

(a11)2 + (a12)

2

)− α

)

th0=

1

(arcsin

(−r2√

(a11)2 + (a12)

2

)− α

)

th0=

1

(arcsin

(r2√

(a11)2 + (a12)

2

)+ α

)

th0=

1

(arccos

(−r2√

(a11)2 + (a12)

2

)− α

)

th0=

1

(arccos

(r2√

(a11)2 + (a12)

2

)+ α

)

th0=

1

(arcsin

(−r2√

(a11)2 + (a12)

2

)+ α

)

th0=

1

(arcsin

(r2√

(a11)2 + (a12)

2

)− α

)(D.3)

153

Page 176: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe
Page 177: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Bibliography

[Acke 06] M. Ackermann and W. Schiehlen. “Dynamic analysis of human gait disorder and

metabolical cost estimation”. Arch. Appl. Mech., Vol. 75, No. 10-12, pp. 569–594,

2006.

[Ambr 07] J. A. Ambrosio and A. Kecskemethy. “Multibody dynamics of biomechanical mod-

els for human motion via optimization”. In: Multibody Dynamics, pp. 245–272,

Springer, 2007.

[An 79] K. N. An, E. Y. Chao, W. P. Cooney III, and R. L. Linscheid. “Normative model of

human hand for biomechanical analysis”. J. Biomech., Vol. 12, No. 10, pp. 775–788,

1979.

[Ande 01] F. C. Anderson and M. G. Pandy. “Dynamic optimization of human walking”. J.

Biomech. Eng., Vol. 123, No. 5, pp. 381–390, 2001.

[Bets 01] P. Betsch and P. Steinmann. “Constrained integration of rigid body dynamics”.

Comput. Methods in Appl. Mech. Eng., Vol. 191, No. 3-5, pp. 467–488, 2001.

[Bets 06] P. Betsch and S. Leyendecker. “The discrete null space method for the energy

consistent integration of constrained mechanical systems. Part II: Multibody dy-

namics”. Int. J. Numer. Meth. Eng., Vol. 67, No. 4, pp. 499–552, 2006.

[Bets 98] P. Betsch, A. Menzel, and E. Stein. “On the parametrization of finite rotations in

computational mechanics: A classification of concepts with application to smooth

shells”. Comput. Methods in Appl. Mech. Eng., Vol. 155, No. 3-4, pp. 273–305,

1998.

[Bett 09] J. T. Betts. Practical Methods for Optimal Control and Estimation Using Nonlinear

Programming. Cambridge University Press, New York, NY, USA, 2nd Ed., 2009.

[Bies 07] A. Biess, D. Liebermann, and T. Flash. “A Computational Model for Redundant

Human Three- Dimensional Pointing Movements: Integration of Independent Spa-

tial and Temporal Motor Plans Simplifies Movement Dynamics”. J. Neurosci.,

Vol. 27, No. 48, pp. 13045–13064, 2007.

[Boge 98] A. J. van den Bogert, K. G. Gerritsen, and G. K. Cole. “Human muscle modelling

from a user’s perspective”. J. Electromyogr. Kinesiol., Vol. 8, No. 2, pp. 119–124,

1998.

[Brow 96] I. E. Brown, S. H. Scott, and G. E. Loeb. “Mechanics of feline soleus: II Design and

validation of a mathematical model”. J. Muscle Res. Cell Motil., Vol. 17, No. 2,

pp. 221–233, 1996.

155

Page 178: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Bibliography

[Buch 92] B. Buchholz, T. J. Armstrong, and S. A. Goldstein. “Anthropometric data for

describing the kinematics of the human hand”. Ergonomics, Vol. 35, No. 3, pp. 261–

273, 1992.

[Calv 97] W. H. Calvin. Der Strom, der bergauf fließt: Eine Reise durch die Evolution. Dt.

Taschenbuch-Verlag, 1997.

[Cava 05] E. Cavallaro, J. Rosen, J. C. Perry, S. Burns, and B. Hannaford. “Hill-Based Model

as a Myoprocessor for a Neural Controlled Powered Exoskeleton Arm - Parameters

Optimization”. In: ICRA, pp. 4514–4519, IEEE, 2005.

[Chen 00] E. J. Cheng, I. E. Brown, and G. E. Loeb. “Virtual muscle: a computational

approach to understanding the effects of muscle properties on motor control”. J.

Neurosci. Methods., Vol. 101, No. 2, pp. 117–130, 2000.

[Crow 81] R. D. Crowninshield and R. A. Brand. “A physiologically based criterion of muscle

force prediction in locomotion”. J. Biomech., Vol. 14, No. 11, pp. 793–801, 1981.

[Denn 07] J. T. Dennerlein, I. Kingma, B. Visser, and J. H. van Dieen. “The contribution of

the wrist, elbow and shoulder joints to single-finger tapping”. J. Biomech., Vol. 40,

No. 13, pp. 3013–3022, 2007.

[Epst 98] M. Epstein and W. Herzog. Theoretical Models of Skeletal Muscle: Biological and

Mathematical Considerations. John Wiley Sons, Ed., 1998.

[Flas 85] T. Flash and N. Hogan. “The Coordination of Arm Movements: An Experimentally

Confirmed Mathematical Model”. J. Neurosci., Vol. 5, No. 7, pp. 1688–1703, 1985.

[Frie 09] J. Friedman and T. Flash. “Trajectory of the index finger during grasping”. Exp.

Brain. Res., Vol. 196, No. 4, pp. 497–509, 2009.

[Garn 00] B. A. Garner and M. G. Pandy. “The obstacle-set method for representing muscle

paths in musculoskeletal models”. Comput. Methods Biomech. Biomed. Engin.,

Vol. 3, No. 1, pp. 1–30, 2000.

[Garn 01] B. A. Garner and M. G. Pandy. “Musculoskeletal model of the upper limb based

on the visible human male dataset”. Comput. Methods Biomech. Biomed. Engin.,

Vol. 4, No. 2, pp. 93–126, 2001.

[Garn 99] B. A. Garner and M. G. Pandy. “A kinematic model of the upper limb based on the

visible human project (vhp) image dataset”. Comput. Methods Biomech. Biomed.

Engin., Vol. 2, No. 2, pp. 107–124, 1999.

[Geye 03] H. Geyer, A. Seyfarth, and R. Blickhan. “Positive force feedback in bouncing

gaits?”. Proc. Biol. Sci., Vol. 270, No. 1529, pp. 2173–2183, 2003.

[Geye 10] H. Geyer and H. Herr. “A Muscle-Reflex Model That Encodes Principles of Legged

Mechanics Produces Human Walking Dynamics and Muscle Activities”. IEEE

Trans. Neural. Syst. Rehabil. Eng., Vol. 18, No. 3, pp. 263–273, 2010.

156

Page 179: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

[Gill 08] P. Gill, W. Murray, and M. Saunders. Users Guide for SNOPT Version 7: Software

for Large-Scale Nonlinear Programming. 2008.

[Gunt 97] M. Gunther. Computersimulationen zur Synthetisierung des muskular

erzeugten menschlichen Gehens unter Verwendung eines biomechanischen

Mehrkorpermodells. PhD thesis, Eberhard-Karls-Universitat zu Tubingen, 1997.

[Hair 99] E. Hairer. “Backward error analysis for multistep methods”. Numer. Math., Vol. 84,

No. 2, pp. 199–232, 1999.

[Happ 95] R. Happee and F. C. van der Helm. “The control of shoulder muscles during goal

directed movements, an inverse dynamic analysis”. J. Biomech., Vol. 28, No. 10,

pp. 1179–1191, 1995.

[Hard 93] D. C. Harding, K. D. Brandt, and B. M. Hillberry. “Finger joint force minimization

in pianists using optimization techniques”. J. Biomech., Vol. 26, No. 12, pp. 1403–

1412, 1993.

[Helm 02] F. C. van der Helm, A. C. Schouten, E. de Vlugt, and G. G. Brouwn. “Identifica-

tion of intrinsic and reflexive components of human arm dynamics during postural

control”. J. Neurosci. Meth., Vol. 119, No. 1, pp. 1–14, 2002.

[Helm 94] F. C. van der Helm. “Analysis of the kinematic and dynamic behavior of the

shoulder mechanism”. J. Biomech., Vol. 27, No. 5, pp. 527–550, 1994.

[Hill 38] A. V. Hill. “The heat of shortening and the dynamic constants of muscle”. Proc.

R. Soc. B., Vol. 126, No. 843, pp. 136–195, 1938.

[Hoch 81] G. Hochmuth. Biomechanik sportlicher Bewegungen. (4. prazisierte und erweiterte

Auflage). Sportverlag Berlin, 1981.

[Holz 05] K. R. S. Holzbaur, W. M. Murray, and S. L. Delp. “A Model of the Upper Extremity

for Simulating Musculoskeletal Surgery and Analyzing Neuromuscular Control”.

Ann. Biomed. Eng., Vol. 33, No. 6, pp. 829–840, 2005.

[Huxl 57] A. F. Huxley. “Muscle structure and theories of contraction”. Prog. Biophys.

Biophys. Chem., Vol. 7, pp. 255–318, 1957.

[Kamp 03] D. G. Kamper, E. G. Cruz, and M. P. Siegel. “Stereotypical Fingertip Trajectories

During Grasp”. J. Neurophysiol., Vol. 90, No. 6, pp. 3702–3710, 2003.

[Kapa 92] I. A. Kapandji. Funktionelle Anatomie der Gelenke. Ferdinand Enke Verlag

Stuttgart, 1992.

[Kawa 90] M. Kawato, Y. Maeda, Y. Uno, and R. Suzuki. “Trajectory Formation of Arm

Movement by Cascade Neural Network Model Based on Minimum Torque-Change

Criterion”. Biol. Cybern., Vol. 62, No. 4, pp. 275–288, 1990.

157

Page 180: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Bibliography

[Kecs 05] A. Kecskemethy and A. Weinberg. “An improved elasto-kinematic model of the

human forearm for biofidelic medical diagnosis”. Multibody Syst. Dyn., Vol. 14,

No. 1, pp. 1–21, 2005.

[Krys 05] P. Krysl and L. Endres. “Explicit Newmark/Verlet algorithm for time integration

of the rotational dynamics of rigid bodies”. Int. J. Numer. Meth. Eng., Vol. 62,

No. 15, pp. 2154–2177, 2005.

[Krys 06] P. Krysl. “Direct time integration of rigid body motion with discrete-impulse mid-

point approximation: explicit Newmark algorithms”. Commun. Numer. Meth. En.,

Vol. 22, No. 5, pp. 441–451, 2006.

[Krys 08] P. Krysl. “Dynamically equivalent implicit algorithms for the integration of rigid

body rotations”. Commun. Numer. Meth. En., Vol. 24, No. 2, pp. 141–156, 2008.

[Kuyp 97] F. Kuypers. Klassische Mechanik. Lehrbuch Physik, John Wiley & Sons, Limited,

5 Ed., 1997.

[Land 87] J. M. Landsmeer. “The hand and hominisation”. Acta Morphol. Neerl. Scand.,

Vol. 25, No. 2, pp. 83–93, 1987.

[Leim 04] B. Leimkuhler and S. Reich. Simulating Hamiltonian Dynamics. Cambridge Uni-

versity Press, 2004.

[Leye 06] S. Leyendecker. Mechanical integrators for constrained dynamical systems in flexible

multibody dynamics. PhD thesis, Fachbereich Maschinenbau und Verfahrenstech-

nik, TU Kaiserslautern, 2006.

[Leye 08] S. Leyendecker, J. E. Marsden, and M. Ortiz. “Variational integrators for con-

strained dynamical systems”. Z. Angew. Math. Mech., Vol. 88, No. 9, pp. 677–708,

2008.

[Leye 10] S. Leyendecker, S. Ober-Blobaum, J. E. Marsden, and M. Ortiz. “Discrete Mechan-

ics and Optimal Control for Constrained Systems”. Optim. Contr. Appl. Meth.,

Vol. 31, No. 6, pp. 505–528, 2010.

[Leye 11] S. Leyendecker. On optimal control simulations for mechanical systems. PhD

thesis, Habilitationsschrift, Fachbereich Maschinenbau und Verfahrenstechnik, TU

Kaiserslautern, 2011.

[Lim 03] C. L. Lim, N. B. Jones, S. K. Spurgeon, and J. J. A. Scott. “Modelling of knee

joint muscles during the swing phase of gait – a forward dynamics approach using

MATLAB/Simulink”. Simulat. Model. Pract. Theor., Vol. 11, No. 2, pp. 91–107,

2003.

[Link 07] W. Linke and G. Pfitzer. “Kontraktionsmechanismen”. In: Physiologie des Men-

schen, pp. 111–139, Springer, Berlin Heidelberg, 2007.

158

Page 181: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

[Maas 10] R. Maas and S. Leyendecker. “Structure preserving optimal control simulation of

index finger dynamics”. In: The First Joint International Conference on Multibody

System Dynamics, IMSD, Lappeenranta, Finland, May 2010.

[Maas 11] R. Maas, T. Siebert, and S. Leyendecker. “Structure preserving optimal control

of finger movements”. In: EUROMECH Colloquium 511 Biomechanics of Human

Motion, Ponta Delgada, Azores, March 2011.

[Maas 12a] R. Maas and S. Leyendecker. “Optimal control of biomechanical motion using phys-

iologically motivated cost functions”. In: The 2nd Joint International Conference

on Multibody System Dynamics, Stuttgart, Germany, June 2012.

[Maas 12b] R. Maas, T. Siebert, and S. Leyendecker. “On the relevance of structure preser-

vation to simulations of muscle actuated movements”. Biomech. Model. Mechan.,

Vol. 11, No. 3–4, pp. 543–556, 2012.

[Maas 13a] R. Maas and S. Leyendecker. “Biomechanical optimal control of human arm mo-

tion”. Proceedings of the Institution of Mechanical Engineers, Part K: Journal of

Multi-body Dynamics, Vol. 227, No. 4, pp. 375–389, 2013.

[Maas 13b] R. Maas and S. Leyendecker. “Muscle paths in biomechanical multibody simu-

lations”. In: ECCOMAS Multibody Dynamics Conference, Zagreb, Croatia, July

2013.

[Maas 14] R. Maas and S. Leyendecker. “Optimal control simulations for biomechanical sys-

tems using Hill-type muscle actuation”. Comput. Methods Biomech. Biomed. En-

gin., submitted 2014.

[Mars 01] J. E. Marsden and M. West. “Discrete mechanics and variational integrators”. Acta

Numer., Vol. 10, pp. 357–514, 2001.

[Mars 08] S. P. Marsden, D. C. Swailes, and G. R. Johnson. “Algorithms for exact multi-

object muscle wrapping and application to the deltoid muscle wrapping around the

humerus”. Proc. Inst. Mech. Eng. H., Vol. 222, No. 7, pp. 1081–1095, 2008.

[Mars 99] J. E. Marsden and T. S. Ratiu. Introduction to Mechanics and Symmetry: A

Basic Exposition of Classical Mechanical Systems (Texts in Applied Mathematics).

Springer, 2 Ed., 1999.

[Marz 97] M. W. Marzke. “Precision grips, hand morphology, and tools”. Am. J. Phys.

Anthropol., Vol. 102, No. 1, pp. 91–110, 1997.

[Math 09] MathWorks Inc. “Matlab R2009b Documentation”. 2009.

[Mull 12] P. Muller. Unterrichtsentwurf zur Einfuhrung des Standstoßes beim Kugelstoßen.

GRIN Verlag, 2012.

159

Page 182: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Bibliography

[Mult 99] F. Multon, L. France, M.-P. Cani, and G. Debunne. “Computer Animation of

Human Walking: a Survey”. J. Vis. Comput. Animat., Vol. 10, No. 1, pp. 39–54,

Jan. 1999. Published under the name Marie-Paule Cani-Gascuel.

[Murr 00] W. M. Murray, T. S. Buchanan, and S. L. Delp. “The isometric functional capacity

of muscles that cross the elbow”. J. Biomech., Vol. 33, No. 8, pp. 943–952, 2000.

[Murr 95] W. M. Murray, S. L. Delp, and T. S. Buchanan. “Variation of muscle moment arms

with elbow and forearm position”. J. Biomech., Vol. 28, No. 5, pp. 513–525, 1995.

[Nept 08] R. R. Neptune, K. Sasaki, and S. A. Kautz. “The effect of walking speed on muscle

function and mechanical energetics”. Gait Posture, Vol. 28, No. 1, pp. 135–143,

2008.

[Noet 18] E. Noether. “Invariante Variationsprobleme [Invariant variational problems]”.

Nachr. Ges. Wiss. Gott., Math.-Phys. Kl., pp. 235–257, 1918.

[Ober 09] S. Ober-Blobaum and J. Timmermann. “Optimal Control for a Pitcher’s Motion

Modeled as Constrained Mechanical System”. In: Proceedings of the 7th Interna-

tional Conference on Multibody Systems, Nonlinear Dynamics, and Control, ASME

International Design Engineering Technical Conferences, San Diego, California,

2009.

[Pand 90] M. G. Pandy, F. E. Zajac, E. Sim, and W. S. Levine. “An optimal control model for

maximum-height human jumping”. J. Biomech., Vol. 23, No. 12, pp. 1185–1198,

1990.

[Quen 12] C. Quental, J. Folgado, J. Ambrosio, and J. Monteiro. “A multibody biomechanical

model of the upper limb including the shoulder girdle”. Multibody Syst. Dyn.,

Vol. 28, No. 1–2, pp. 83–108, 2012.

[Reic 99] S. Reich. “Backward error analysis for numerical integrators”. SIAM J. Numer.

Anal., Vol. 36, No. 5, pp. 1549–1570, 1999.

[Rohr 13] O. Rohrle, M. Sprenger, E. Ramasamy, and T. Heidlauf. “Multiscale Skeletal

Muscle Modeling: From Cellular Level to a Multi-segment Skeletal Muscle Model

of the Upper Limb”. In: G. A. Holzapfel and E. Kuhl, Eds., Computer Models in

Biomechanics, pp. 103–116, Springer Netherlands, 2013.

[Rose 01] D. A. Rosenbaum, R. G. J. Meulenbroek, J. Vaughan, and C. Jansen. “Posture-

Based Motion Planning: Applications to Grasping”. Psychol. Rev., Vol. 108, No. 4,

pp. 709–734, 2001.

[Rose 95] D. A. Rosenbaum, L. D. Loukopoulos, R. G. J. Meulenbroek, J. Vaughan, and S. E.

Engelbrecht. “Planning Reaches by Evaluating Stored Postures”. Psychol. Rev.,

Vol. 102, No. 1, pp. 28–67, 1995.

160

Page 183: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

[Sanc 01] J. Sancho-Bru, A. Perez-Gonzalez, M. Vergara-Monedero, and D. Giurintano. “A

3-D dynamic model of human finger for studying free movements”. J. Biomech.,

Vol. 34, No. 11, pp. 1491–1500, 2001.

[Sant 06] V. J. Santos and F. J. Valero-Cuevas. “Reported Anatomical Variability Natu-

rally Leads to Multimodal Distributions of Denavit-Hartenberg Parameters for the

Human Thumb”. IEEE T. Bio-Med. Eng., Vol. 53, No. 2, pp. 155–163, 2006.

[Sche 10] D. Scheibelhut. Die Prinzipien der Biomechanik als Teil der Sportwissenschaft.

GRIN Verlag, 2010.

[Schm 03] H.-M. Schmidt and U. Lanz. Chirurgische Anatomie der Hand. Thieme, 2003.

[Scho 13] A. Scholz, I. Stavness, M. Sherman, S. Delp, and A. Kecskemethy. “Analytical

Determination of Path-Error Jacobians and Velocities of Geodesics Across Multi-

ple Moving Surfaces Using Jacobi Fields”. In: ECCOMAS Multibody Dynamics

Conference, Zagreb, Croatia, July 2013.

[Seth 03] A. Seth, J. J. McPhee, and M. G. Pandy. “Multi-joint coordination of vertical arm

movement”. Appl. Bionics Biomech., Vol. 1, No. 1, pp. 45–56, 2003.

[Sher 10] M. Sherman, A. Seth, and S. Delp. “How to compute muscle moment arm using

generalized coordinates”. http://wiki.simtk.org/opensim/, 2010.

[Sieb 08] T. Siebert, C. Rode, W. Herzog, O. Till, and R. Blickhan. “Nonlinearities make a

difference: comparison of two common Hill-type models with real muscle”. Biol.

Cybern., Vol. 98, No. 2, pp. 133–143, 2008.

[Silv 03] M. P. Silva and J. A. Ambrosio. “Solution of Redundant Muscle Forces in Human

Locomotion with Multibody Dynamics and Optimization Tools”. Mech. based Des.

Struc., Vol. 31, No. 3, pp. 381–411, 2003.

[Simo 91] J. C. Simo and K. K. Wong. “Unconditionally stable algorithms for rigid body

dynamics that exactly preserve energy and momentum”. Int. J. Numer. Meth.

Eng., Vol. 31, No. 1, pp. 19–52, 1991.

[Soec 95] J. Soechting, C. Buneo, U. Herrmann, and M. Flanders. “Moving Effortlessly in

Three Dimensions: Does Donders Law Apply to Arm Movement?”. J. Neurosci.,

Vol. 15, No. 9, pp. 6271–6280, 1995.

[Soes 93] A. J. van Soest and M. F. Bobbert. “The contribution of muscle properties in the

control of explosive movements”. Biol. Cybern., Vol. 69, No. 3, pp. 195–204, 1993.

[Star 79] D. Starck. Vergleichende Anatomie der Wirbeltiere auf Evolutionsbiologischer

Grundlage: Band 2: Das Skeletsystem: Allgemeines, Skeletsubstanzen, Skelet der

Wirbeltiere einschließlich Lokomotionstypen. Springer, 1979.

161

Page 184: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

Bibliography

[Stav 12] I. Stavness, M. Sherman, and S. Delp. “A General Approach To Muscle Wrap-

ping Over Multiple Surfaces”. In: American Society for Biomechanics Conference,

August 2012.

[Stel 05] M. Stelzer and O. von Stryk. “From Robots to Humans: Towards efficient for-

ward dynamics simulation and optimization exploiting structure and sensitivity

information”. In: ECCOMAS Multibody Dynamics Conference, Dordrecht, Januar

2005.

[Thom 01] M. Thomsen, M. Loew, and H. Ngerl. “Kinematik und Biomechanik des Ellenbo-

gengelenks”. Orthopade, Vol. 30, No. 9, pp. 582–586, 2001.

[Till 05] B. N. Tillmann. Atlas der Anatomie des Menschen. Springer-Verlag Berlin Heidel-

berg, 2005.

[Till 08] O. Till, T. Siebert, C. Rode, and R. Blickhan. “Characterization of isovelocity

extension of activated muscle: A Hill-type model for eccentric contractions and a

method for parameter determination”. J. Theor. Biol., Vol. 255, No. 2, pp. 176–187,

2008.

[Umbe 03] B. R. Umberger, K. G. M. Gerritsen, and P. E. Martin. “A Model of Human

Muscle Energy Expenditure”. Comput. Meth. Biomech. Biomed. Eng., Vol. 6,

No. 2, pp. 99–111, 2003.

[Uno 89] Y. Uno, M. Kawato, and R. Suzuki. “Formation and Control of Optimal Trajectory

in Human Multijoint Arm Movement”. Biol. Cybern., Vol. 61, No. 2, pp. 89–101,

1989.

[Vale 07] F. J. Valero-Cuevas, J.-W. Yi, D. Brown, R. V. McNamara, C. Paul, and H. Lip-

son. “The Tendon Network of the Fingers Performs Anatomical Computation at

a Macroscopic Scale”. IEEE Trans. Biomed. Eng., Vol. 54, No. 6, pp. 1161–1166,

2007.

[Wash 79] S. Washburn. Human Ancestors, Chap. Tools and Human Evolution, p. 130.

W.H.Freeman & Co Ltd, San Francisco, 1979.

[Wein 00] A. M. Weinberg, I. T. Pietsch, M. B. Helm, J. Hesselbach, and H. Tscherne. “A

new kinematic model of pro- and supination of the human forearm”. J. Biomech.,

Vol. 33, No. 4, pp. 487–491, 2000.

[Will 11] W. O. Williams. “Huxleys Model of Muscle Contraction with Compliance”. J.

Elasticity, Vol. 105, No. 1-2, pp. 365–380, 2011.

[Wils 00] F. R. Wilson. Die Hand – Geniestreich der Evolution. Klett-Cotta, 2 Ed., 2000.

[Wink 10] A. Winkelmann, J. Kirsch, C. A. May, D. Lorke, W. Schwab, G. Herrmann, and

R. Funk. Taschenlehrbuch Anatomie. Thieme, 2010.

162

Page 185: Biomechanics and optimal control simulations of the human ... · Ramona Maas aus Saarlouis. Biomechanics and optimal control simulations of the human upper extremity Ramona Maas Schriftenreihe

[Wint 90] J. M. Winters and S. L. Y. Woo. Multiple Muscle Systems: Biomechanics and

Movement Organization. Springer, New York, 1 Ed., 1990.

[Xian 10] Y. Xiang, J. Arora, and K. Abdel-Malek. “Physics-based modeling and simulation

of human walking: A review of optimization-based and other approaches”. Struct.

Multidiscip. O., Vol. 42, No. 1, pp. 1–23, 2010.

[Zaja 89] F. E. Zajac. “Muscle and tendon: properties, models, scaling, and application

to biomechanics and motor control”. Crit. Rev. Biomed. Eng., Vol. 17, No. 4,

pp. 359–411, 1989.

[Zanc 79] E. Zancolli. Structural and Dynamic Bases of Hand Surgery. Lippincott Williams

& Wilkins, 1979.

163