Skip to main content
Springer logoLink to Springer
. 2021 Feb 15;115(1):7–37. doi: 10.1007/s00422-020-00856-4

A geometry- and muscle-based control architecture for synthesising biological movement

Johannes R Walter 1,, Michael Günther 1, Daniel F B Haeufle 2, Syn Schmitt 1,3
PMCID: PMC7925510  PMID: 33590348

Abstract

A key problem for biological motor control is to establish a link between an idea of a movement and the generation of a set of muscle-stimulating signals that lead to the movement execution. The number of signals to generate is thereby larger than the body’s mechanical degrees of freedom in which the idea of the movement may be easily expressed, as the movement is actually executed in this space. A mathematical formulation that provides a solving link is presented in this paper in the form of a layered, hierarchical control architecture. It is meant to synthesise a wide range of complex three-dimensional muscle-driven movements. The control architecture consists of a ‘conceptional layer’, where the movement is planned, a ‘structural layer’, where the muscles are stimulated, and between both an additional ‘transformational layer’, where the muscle-joint redundancy is resolved. We demonstrate the operativeness by simulating human stance and squatting in a three-dimensional digital human model (DHM). The DHM considers 20 angular DoFs and 36 Hill-type muscle–tendon units (MTUs) and is exposed to gravity, while its feet contact the ground via reversible stick–slip interactions. The control architecture continuously stimulates all MTUs (‘structural layer’) based on a high-level, torque-based task formulation within its ‘conceptional layer’. Desired states of joint angles (postural plan) are fed to two mid-level joint controllers in the ‘transformational layer’. The ‘transformational layer’ communicates with the biophysical structures in the ‘structural layer’ by providing direct MTU stimulation contributions and further input signals for low-level MTU controllers. Thereby, the redundancy of the MTU stimulations with respect to the joint angles is resolved, i.e. a link between plan and execution is established, by exploiting some properties of the biophysical structures modelled. The resulting joint torques generated by the MTUs via their moment arms are fed back to the conceptional layer, closing the high-level control loop. Within our mathematical formulations of the Jacobian matrix-based layer transformations, we identify the crucial information for the redundancy solution to be the muscle moment arms, the stiffness relations of muscle and tendon tissue within the muscle model, and the length–stimulation relation of the muscle activation dynamics. The present control architecture allows the straightforward feeding of conceptional movement task formulations to MTUs. With this approach, the problem of movement planning is eased, as solely the mechanical system has to be considered in the conceptional plan.

Supplementary Information

The online version supplementary material available at 10.1007/s00422-020-00856-4.

Keywords: Biomechanics, Viscoelastic actuators, Motor control, Jacobian, PID controller, Upright stance, Squat movement, Morphological intelligence

Introduction

The desire to understand the principles of biological motion has a long history that spreads across many fields of research in science and robotics (Wiener 1948; Full and Koditschek 1999; Holmes et al. 2006; Pratt and Pratt 1998; Park 2001). One of the most challenging tasks hereby is to decipher the organisation of control within the nervous system, as among others approached by Kiehn (2016), Tresch et al. (1999), and Herzfeld and Shadmehr (2014). For low-level structures in the spinal cord, including α- and γ-motor neurons, as well as for the muscles themselves, there is already strong biological evidence to have significant impact on movement control (Bizzi et al. 1992; van Soest and Bobbert 1993; Hulliger et al. 1989; Brändle et al. 2020). Neglecting those structures in computational modelling studies can even more lead to misleading conclusions (Pinter et al. 2012). In the scenario of complex movements, higher centres of the central nervous system (CNS) take an important role in planning and successful execution of a movement task (Martin 2005; Doya 2000; Gao et al. 1996). For successful execution, internal models of the body’s biophysical properties, including its neural wiring, and the external world, as needed, are present in any stable feedback control mechanism, be them explicitly learned or implicitly encoded in the nervous control system (Wolpert and Kawato 1998). A basic characteristic of biological structures is the redundancy of neural commands to realise the kinematics of one specific movement task in a space of fewer degrees of freedom (DoFs) (Wolpert 1997; Bernstein 1967). For this, selecting an appropriate combination of neural signals is traditionally perceived to be a tricky thing (Latash et al. 2002). It has been confirmed recently that a hierarchical organisation is beneficial in technical systems and the counterparts in biological hierarchy have been proposed (Merel et al. 2019).

Similarly in this study, we present a hierarchical control architecture that is aimed towards full-scale body control. This control architecture is used in forward dynamics simulations to demonstrate that the biological feature of redundancy can be exploited for the generation of high-dimensional muscle stimulation signals in the lowest layer of the hierarchy. The movement plan is formulated in the top layer of the hierarchy in a specific low-dimensional coordinate space of an abstract task. The redundancy even opens a manifold of control signals to fulfil several criteria at once , for example, maintaining a posture with different levels of co-contraction. The conceptional planning in the task space has the advantage of a reduced processing effort due to a lower number of controlled state variables to consider and control parameters to deal with. The subsequent transformation of the task-fulfilling signals into the high-dimensional space of muscle stimulations is achieved by geometric transformations between task space coordinates (e.g. joint angles or torques) and actuator variables (e.g. muscle lengths or stimulations), as, for example, described by Pellionisz and Llinás (1985)1. That is, in the architecture suggested, these transformations resolve the redundancy by knowledge about the structural characteristics (e.g. anatomy). In the present work, all geometric transformations can even be expressed in closed form. With this, it becomes clear that some of the body’s properties, e.g. the muscle geometry and routing, are re-implemented in the suggested control architecture. An additional key property of this control architecture is the use of hierarchically distributed control laws in the conceptional, the transformational, and the structural layer (Fig. 1).

Fig. 1.

Fig. 1

Schematic representation of the hierarchical control architecture. High-level conceptional planning in the control space of the task passes the postural plan to a mid-level Joint controller. The output of the joint controller is transformed to the control space of muscle variables and serves as input for the low-level structural muscle controller, which provides stimulation signals for the muscles (red lines). Proprioceptive sensors provide feedback signals, which are collected within the periphery and are passed to the hierarchically higher located control structures (blue lines). The process of planning and controlling hereby is easier in the control space of the task due to a smaller set of control variables. The dimensionality of the signals is illustrated by single (low-dimensional) and double (high-dimensional) arrows (colour figure online)

As an example, quiet upright stance is computer-synthesised. Human upright stance as a research topic has been widely studied in the fields of biomechanics and robotics (Rozendaal and van Soest 2005; Alexandrov et al. 2001; Edwards 2007; Günther and Wagner 2016; Pratt and Pratt 1998; Park 2001). As a preliminary step, thereby often the muscle contraction dynamics are neglected and the human movement system is idealised by its mechanical properties [as, for example, modelled solely by means of (1)]. This allows to propose control concepts which abstractly stabilise a multi-segment pendulum. One example is the control concept proposed by Günther and Wagner (2016). They suggested that at least a triple inverted pendulum with the open joints of ankle (An), knee (Kn), and hip (Hp) flexion–extension (FE) has to be considered to explain the natural oscillations. They (and others, e.g. Rozendaal and van Soest 2005; Alexandrov et al. 2001; Edwards 2007) suggested that a formulation of muscle-generated joint stiffnesses can lead to stable upright stance. This suggests a simple sensor-actor coupling similar to the idea of ‘impedance control’ (Hogan 1990) or ‘virtual model control’ (Henze 2002; Pratt et al. 1997). The (implicit) common ground that brings these works together is the idea of a decoupled planning and actuation frame [which is also hypothesised, for example, by Wolpert (1997)]: solving the mechanical system by calculating required torques must be followed (in the biological system) by muscle stimulations that eventually lead to said torques. This latter transformation is achieved by the here proposed hierarchical control architecture. It is a technical method that allows the straightforward execution of conceptional control hypotheses on muscle-actuated systems.

Concretely, in this contribution, the torque-based concept of Günther and Wagner (2016) is used for the synthesis of human upright stance. Their conceptional task formulation is based on joint torque–angle characteristics, which are expressed in terms of parameters like nominal angles, gains, and stiffnesses. Given a current posture, the joint torques advised by this task are the movement plan and used as desired input signals to the top-hierarchical controller in the conceptional layer. Its output is passed on to the transformational layer, where the plan is interpreted in terms of the postural plan (desired joint angles). In this layer, mid-level joint (angle) controllers and Jacobian-based layer transformations calculate desired muscle lengths and stimulation signals, that are fed to the structural layer. There, a low-level muscle (length) controller (Kistemaker et al. 2006; Bayer et al. 2017) that mimics the muscle spindle feedback loop generates a contribution to the stimulation signals applied to the modelled muscles. The torques caused by the generated muscle forces are fed back to the top-hierarchical conceptional controller, which closes the control loop.

This paper introduces the suggested hierarchical control architecture and demonstrates its performance, robustness, and potentially versatile operativeness by not only synthesising human stance (also perturbed by noise) but also a goal-directed movement, namely, squatting and rising again. Some degree of robustness can be inferred from the sheer fact that the whole set of parameters required by the architecture could be set heuristically manually.

Model and control framework

To perform forward dynamics simulations of biophysical systems, mathematical models are required as a basis for algorithmic implementations. For this, it is not only the mathematical models of certain subsystems that are of interest but also the exchange of information between those subsystems. In computational modelling, exchange of information thereby describes the communication of the subsystems and represents biophysical processes, such as neural transmission of electrical signals along axons and transduction of muscle forces along tendons to bones. The control structure, in particular, forms a closed loop feedback unit, which interacts with the biomechanical structures of the body through sensor signals and muscle stimulations. Therefore, it is conceivable that, to produce coordinated movements, the controller benefits of having embedded some information about the body’s peripheral structures and the properties of the muscles. In the approach presented here, it is suggested that the geometry of the body and its joints, the routing of the muscles, and the dynamics of the muscles themselves are essential structural properties to be taken into account. In Sect. 2.1, these properties are introduced and then merged into the hierarchical control architecture as explained in Sect. 2.2.

The musculo-skeletal model (plant)

(a) The rigid-body model. Rigid-body dynamics are used to simulate three-dimensional movements of the skeletal system. In this, a chain of rigid bodies, connected by rotational joints, is modelled by means of differential equations. The whole-body movement is described by six DoFs (each three linear and angular ones) of a reference body plus the nθ DoFs of the rotational joints θ=[θ1,,θnθ]TRnθ that are actuated by muscles, and the n~θ rotational DoFs θ~=[θ~1,,θ~n~θ]TRn~θ that are not. That is, the vector of generalised coordinates

q=[q1,,q6,θ1,,θnθ,θ~1,,θ~n~θ]TRnDoF

contains a total number of nDoF=6+nθ+n~θ mechanical DoFs. With these generalised coordinates q being state variables, a Lagrangian formulation of the body’s equations of motion

M(q)q¨+c(q,q˙)=T, 1

can be set up algorithmically, where MRnDoF×nDoF is the mass matrix, cRnDoF is a vector of gravitational, centrifugal, and Coriolis forces, and T=[T1,,T6,τ1,,τnθ,τ~1,,τ~n~θ]TRDoFn is a vector of generalised forces, with τ=[τ1,,τnθ]TRnθ being the vector of generalised joint forces (joint torques)

τ=τMTU+τlmt+τbsh 2

of the body’s joints actuated by muscle–tendon units (MTUs). Equation (1) is implemented using the formulation described by Legnani et al. (1996a, 1996b). The vector T includes forces due to the body contacting the ground (Tcnt), as well as forces by muscles (τMTU), joint limitations (τlmt), and viscoelastic rotational springs (τbsh). Details on the specific force laws used, and their local incorporation into the model, are given in Appendix A, as well as in the supplementary material.

(b) The extended Hill-type muscle model. The muscle model used in this study describes each muscle as a deflected, one-dimensional, massless, string-like muscle–tendon unit (MTU), in detail outlined in Haeufle et al. (2014a). It consists of an active contractile element (CE), a passive parallel elastic element (PEE), a serial elastic element (SEE), and a serial damping element (SDE) (Fig. 2). The CE and the PEE represent the properties of the fibre material in the muscle belly, SEE and SDE those of the aponeuroses and the tendons. The total length lkMTU of the k-th muscle is composed of the CE length lkCE and the SEE length lkSEE:

lkMTU=lkCE+lkSEE. 3

The resulting force fkMTU of the k-th MTU is then given by the force equilibrium of the forces of the CE, the PEE, the SEE, and the SDE:

fkMTU=fkCE+fkPEE=fkSEE+fkSDE. 4

Here, each force element is described by nonlinear functions. A synopsis of the force characteristics of the MTU elements is given in Appendix A.1.

Fig. 2.

Fig. 2

Diagram of a muscle–tendon unit (MTU) with contractile element (CE), parallel elastic element (PEE), serial elastic element (SEE), and serial damping element (SDE) (Haeufle et al. 2014a)

Solving the right-hand equality of (4) for the CE’s contraction velocity l˙kCE provides the contraction dynamics of the k-th CE:

l˙kCE=l˙kCE(lkCE,lkMTU,l˙kMTU,ak), 5

with ak(t)R01 being the CE’s activity (see (7) below) and R01 the set of real numbers R bounded by the interval [01]. When a neural spike is received by a muscle fibre at its neuromuscular junction, a biochemical process is initiated that leads to the release of calcium ions and a subsequent fibre twitch. The response of the normalised concentration γk(t)R01 of free Ca2+-ions in the sarcoplasm to a train of neural spikes (tetanus) is modelled as the CE’s activation dynamics

γ˙k(t)=fγ,k(γk(t),uk(t)), 6

in which the neural excitation that reaches the k-th MTU is a continuous stimulation signal uk(t)R01. The subsequent biochemical processes to the point of steady-state cross-bridge force generation are implemented in the form of a sigmoidal (activity) function (Rockenfeller and Günther 2017):

ak(t)=fa,k(γk(t),lkCE(t)). 7

Equations (6) and (7) taken together are Hatze’s activation dynamics (Hatze 1977; Rockenfeller et al. 2015), which are implemented here in a polished version (Rockenfeller and Günther 2018). The system of coupled contraction (5) and activation (6) dynamics is numerically integrated over time during a body movement to provide the state variables CE length lkCE(t) and ion concentration γk(t) of the k-th MTU. The consequential state of activity ak(t) from (7) represents the source of mechanical energy provided by ATP hydrolysis. Activity causes a contractile force fkCE(lkCE,l˙kCE,ak) of the CE, which eventually determines MTU force fkMTU(lkCE,l˙kCE,ak) at any point in time by summing up fkCE and fkPEE with knowing the state of the mechanical system (1) and the MTU (56) [left-hand equality in (4)]. Note that l˙kCE depends on lkMTU, l˙kMTU, lkCE, and ak [see (5)], as does ak on lkCE and γk [see (7)]. Thus, both fkCE and fkMTU inherit these dependencies. The whole process of MTU force production is described at full length by Haeufle et al. (2014a).

The MTU string’s deflection by anatomical structures is achieved with the ‘via-ellipse’ method (Hammer et al. 2019). This deflection method leads to nonlinear joint angle-dependent moment arms of the MTUs. The resulting generalised force τj,kMTU, generated by the k-th MTU, acting in the direction of the j-th degree of freedom is τj,kMTU=-rj,k(θ)fkMTU, where rj,k(q) denotes the joint angle-dependent moment arm of the k-th muscle passing the j-th joint. This moment arm can be visualised geometrically as the perpendicular distance of the muscle string’s line of action from the joint DoF’s centre of rotation. For a multi-joint, multi-muscle system with the vector of MTU lengths lMTU=l1MTU,,lnMTUMTUTRnMTU and the vector of MTU forces fMTU=f1MTU,,fnMTUMTUTRnMTU, the Jacobi-like matrix of moment arms

R(θ)=lMTUθRnDoF×nMTU 8

can be defined, and the vector of generalised muscle forces τMTU=τ1MTU,,τnMTUMTUTRnMTU, acting on the skeletal system, is given by

τMTU=-RT(θ)fMTU. 9

Here, the negative sign is chosen in accordance to Stanev and Moustakas (2019). Though, it must be emphasised that a set of conventions for the physical variables involved (lMTU, θ, fMTU and τMTU), and how they are used in the mechanical equations of motion, determine what sign each component of the Jacobian R(θ) eventually carries.

(c) The digital human model (DHM). The DHM used in this study is shown in Fig. 3 and is in detail explained in the supplementary material. The pelvis body is the centre of the ramified rigid-body chain. In the neutral, upright posture of the DHM, as depicted in Fig. 3, due to hinge joint axes aligned in parallel, active FE movements within the sagittal plane can be generated in the e lumbar joint (Lu), the cervical joint (Ce), and each left and right Hp, Kn, An, shoulder (Sh), and elbow (Eb). Additionally, due to perpendicularly oriented hinge joint axes, AA movements within the coronal plane can occur in the Lu, the Ce, the Hps and the Shs. The muscles are lumped (mono-articular) constructs, implementing the concept of an ‘elementary biological drive’ (Schmitt et al. 2019) for joint actuation: for each hinge joint, there is exactly one flexor (Fx) and one extensor (Ex) muscle.

Fig. 3.

Fig. 3

The digital human model (DHM) used in this study is a simplified representation of the human body. The DHM consists of a chain of 15 rigid bodies (segments), which are connected by joints that allow movements in nDoF=20 angular degrees of freedom (DoFs). The joints are actuated by nMTU=36 string-like, massless Hill-type muscle–tendon units (MTUs) (Haeufle et al. 2014a) (see Sect. 2.1b). With some exceptions, MTUs are routed by via-points. The wrist joints are stabilised by passive spring like elements, rather than actuated by MTUs. Nonlinear viscoelastic force elements, allowing reversible stick–slip transitions, model ground-feet contact interactions (Appendix A.4). For further details on the parameter values of the DHM, refer to the supplementary material

The hierarchical control architecture

As biological movement is driven by stimulated muscles, both the movement and the goal of the task are implicitly present in the coordinate frame of muscle stimulations, which encode the neural input to the musculo-skeletal model. This does not imply, though, that the whole movement is planned in terms of muscle stimulation coordinates, and it is worth considering that planning may be done significantly easier in terms of a more suitable set of coordinates.

Picking up this consideration and applying it in a straightforward way, in this section, an essentially plain concept of planning and then generating coordinated movements is laid out: The MTUs actuating the joint DoFs θ are stimulated by signals u(t)=[u1,,unMTU]TR01nMTU, which lead to MTU forces fMTU(t)RnMTU and, thus, joint torques τMTU(t)RnDoF that drive the current joint state (posture) θ(t) of the movement system to the desired state θdes(t)=[θ1des,,θnθdes]TRnθ.

This concept requires drafting a desired state θdes. In the hierarchical control architecture proposed here (Fig. 1), θdes is drafted in a planning process in the conceptional layer (high-level control). Depending on a specific movement task, many planning strategies and mechanisms in various frames of coordinates may have the potential of successful execution. For the exemplary movement task of human upright stance examined here, the desired state θdes is obtained (see Sect. 2.2.3) from a characteristic relation between joint torques τ, which are interpreted as desired torques τdes, and joint angles θ, which represent the current mechanical state. The postural movement plan θdes obtained this way is then used as input for a joint controller in the transformational layer (mid-level control). A subsequent transformation to the structural layer (low-level control) provides muscle stimulations that cause the MTU contributions τMTU to the joint torques to fulfil the task by continuously letting τMTU approach τdes (symbolised by τMTUτdes). Within its layers—the conceptional, the transformational, and the structural (Fig 1)—the proposed control architecture implements the planning and generating concept by combining ordinary proportional–integral–derivative (PID) feedback control laws with Jacobian matrices that transform from the set of controlled physical variables on the layer input side to another set on the output side (see Fig. 4).

Fig. 4.

Fig. 4

Complete schematics of the presented feedback control architecture. In the conceptional layer, a desired joint angle configuration θdes (postural plan) is calculated for a specific task that is formulated as a torque-based concept. Comparing θdes to the joint angle configuration θδθ, the resulting control error θerr serves as input for the PID controllers in the transformational layer, i.e. for the direct θ-controller and the hierarchical θλ-controller. The subsequent controller outputs are transformed to the structural layer by Jacobian matrices (layer transformations). The output of the θλ-controller is passed to the low-level λ-controller, which produces the hierarchically controlled stimulation signal uθλ (23). The co-contraction stimulations uθcoc (36) and urefcoc (33) plus the θ-controlled stimulation uθ (30) provide a direct contribution to the MTUs stimulation, as proposed by the hybrid control ansatz (Bayer et al. 2017), there labelled ‘open loop’. The two addends urefcoc and uθ are stimulation signals complementary for fulfilling the task: urefcoc is an arbitrary base contraction level, and uθ minimises the difference between the base urefcoc and the desired stimulation value utaskopn that corresponds to θdes and constitutes the plan. To fulfil movement criteria along with the desired task, uθcoc can adjust the MTU co-contractions at each joint by utilising the null-space (uncontrolled manifold) of (the pseudo-inverse of) Juθ. As a specific example, the torque concept delivering the postural plan θdes deploys, in this study, angle–torque characteristics that stabilise upright stance (Günther and Wagner 2016) (see Sect. 3.1). Yet, the present hierarchical control architecture generally invites deploying arbitrary torque-based concepts

The task planning in the conceptional layer of joint torques is eased because solely the state of the mechanical system (1) has to be considered, that is, the dimension of the planning space is of lower dimension (2·nDoF) than the state space of the whole movement system (2·nMTU+2·nDoF), and nothing has to be known about the properties of the biological structures. However, in order to execute the planned control scheme, the remainder of the proposed control architecture then heavily relies on structural knowledge, as any Jacobian introduced contains such. This can be seen as a general principle of resolving redundancy. As the so introduced Jacobians are generally non-square, with the transformation’s image space being of the higher dimension, the non-uniqueness of the solution in the image space [null-space or ‘uncontrolled manifold’ (Scholz and Schöner 1999)] opens freedom for control, as it allows a manifold of movement solutions executing the same task, e.g. with selectable degrees of joint co-contractions. The structural knowledge represented by the Jacobians is such about the muscle’s routing (moment arms), the stiffnesses due to passive and active muscle tissue properties (contraction dynamics), and the characteristics of the activation dynamics.

In the following, the constituents of the three layers of the control architecture, that is, the four controllers, the three Jacobian-based transformations, and the fixation of co-contraction parameter values, are explained in detail.

Low-level control in the structural layer

The structural layer is perceived here as an nMTU-dimensional space, which contains the representations of the MTUs and associated biological structures (e.g. muscle spindles). Biophysical control-related signals within this layer include the vector of muscle stimulation signals uR01nMTU, which is the layer’s output that serves as neural input to the muscles’ activation dynamics (6), and the vector of CE lengths lCE=l1CE,,lnMTUCETRnMTU being the state variables of the muscles’ contraction dynamics (5).

In this structural layer, for each MTU, a mathematical representation of a low-level feedback control mechanism on the spinal level is implemented, constituting the initial nucleus and pivot of the here presented hierarchical control architecture. The structural embodiment of this feedback control mechanism is the mono-synaptic spinal cord reflex arc that transmits muscle spindle signals from the intrafusal muscle fibres via a pool of α-motoneurons to the extrafusal fibres. A most simple implementation of this spindle-based feedback control mechanism is a simple P-controller comparison of the actual and desired muscle fibre length (in the literature, for example, associated with λ-controller) (McIntyre and Bizzi 1993). This simple approach has proven to be a practicable approach for the forward-dynamics synthesis of biological movements (Günther and Ruder 2003), especially as part of a ‘hybrid controller’, i.e. combined with a feedforward term (Kistemaker et al. 2006; Bayer et al. 2017; Stollenmaier et al. 2020). It is here implemented in the form of a proportional–derivative (PD) controller, taking respect of the potential contraction–velocity-related spindle-feedback signal. The symbol λ represents the length threshold of a muscle’s stretch reflex (Feldman 1974), which can be adjusted by the excitation (and inhibition) of the intrafusal fibres via the γ-motoneurons (Matthews 1959). This is reflected in Fig. 4 by the arrow labelled with λθ, which points from the transformational to the structural layer.

Using the vectors of actual and desired CE lengths, lCERnMTU and λ=λ1,,λnMTUTRnMTU, respectively, the control error on the structural layer, with the neural pathway latency times δλ=δλ,1,,δλ,nMTUTRnMTU, is given by

lδλerr(t):=lCE(t,δλ)-λ(t), 10

with lCE(t,δλ):=l1CE(t-δλ,1),,lnMTUCE(t-δλ,nMTU)T being the vector of CE lengths, delayed by their respective individual latency times. The λ-controller is then used to generate the stimulation signals uλ=u1λ,,unMTUλTRnMTU by

uλ(t)=Pλ·lδλerr(t)+Dλ·l˙δλerr(t), 11

where the matrices Pλ=diag(pλ,1,pλ,nMTU)RnMTU×nMTU and Dλ=diag(dλ,1,dλ,nMTU)RnMTU×nMTU are diagonal matrices, containing the control parameters pλ,i>0 and dλ,i>0, respectively.

This closed-loop feedback controller can be sufficient for the generation of asymptotically stable postures even in the presence of an external force (e.g. gravity) to which a remaining constant control deviation corresponds. This can be clearly seen, as ukλ0 for lkCEλk, which yields fkCE0. For still reaching a desired posture, i.e. compensating the control deviation, an additional ‘open-loop’ (from the perspective of the structural layer) stimulation signal uopn(t)=u1opn,,unMTUopnTRnMTU can be deployed. Such compensating signals may be provided in a biological system via the pool of α-motoneurons adding contributions to the MTU stimulations that are based on memory or state knowledge from outside the structural layer. This is reflected in Fig. 4 by the bottom summation box in structural layer (see also Sect. 2.2.2).

The combination of closed-loop λ-control stimulation uλ according to (11) and open-loop stimulation uopn has been shown to be capable of generating simple coordinated movements and is also termed ‘hybrid controller’ of muscle-based systems (Bayer et al. 2017; Kistemaker et al. 2006):

u(t)=uλ(t)+uopn(t). 12

However, for the generation of complex movements, finding suitable inputs λRnMTU and uopnRnMTU for a stand-alone hybrid controller will result complicated. For a system of nMTU muscles, a total of 2·nMTU control inputs are needed. Furthermore, due to the nonlinear muscle properties and their redundant embodiment, the controller inputs cannot be chosen arbitrarily, as they are constrained, e.g. due to muscles acting on the same joint requiring synergistic action. Given the hybrid controller constitutes the core of a low-level structural layer, the redundancy of the plant has therefore to be resolved in order to set a well-tuned input for the hybrid controller.

Mid-level control in the transformational layer

A control architecture in the transformational (joint) layer can help in resolving the redundancy problem for which the simplest description may be that there is a greater number of nMTU muscles acting on a smaller set of nθ joints. As already mentioned above, there are two benefits of this: one for movement planning and a second for movement control.

Regarding the first, the space for planning is of lower dimension (nθ desired joint angles) than the actuator space (nMTU MTUs). Regarding the second, this opens a manifold of dimension (nMTU-nθ) to satisfy additional criteria (see in detail Sect. 2.2.2d) during the controlled movement, concisely symbolised by θθdes.

In the following, the two controllers in the transformational layer and their respective Jacobian-based transformations are presented. Exactly these Jacobians solve the joint-muscle redundancy.

The first of the two (mid-level) controllers in this transformational layer is termed θλ-controller (for details, see Sect. 2.2.2a). It takes the desired state in terms of joint angles θdesRnθ and uses the angle–length Jacobian JλθRnMTU×nθ, which contains structural knowledge about muscle moment arms and MTU-internal stiffness ratios, to transmit values of desired muscle lengths λθ(t)=λ1θ,,λnMTUθTRnMTU to the associated (low-level) λ-controller in the structural layer. This can be seen as a re-interpretation of the movement plan in terms of nominal muscle lengths. The nominal lengths λθ are prepared to feed the model representation of the mono-synaptic spinal cord reflex arc [λ-controller (10, 11)]. The output of the cascaded θλ- and λ-controllers, which form a hierarchical control substructure of the overall architecture, is the stimulation signal uθλ(t)=u1θλ,,unMTUθλTRnMTU, with uθλ(t):=uλ(t,λ(t)=λθ(t)) according to (10,11).

The second controller is termed the θ-controller (for details, see Sect. 2.2.2b). It likewise takes the desired state θdesRnθ and uses the angle–stimulation Jacobian Juθ=Juλ·JλθRnMTU×nθ, which additionally contains steady-state knowledge in JuλRnMTU×nMTU about the stimulation–length relation of the MTU’s activation dynamics, to transmit a second task-fulfilling contribution to the MTU stimulations. This contribution is ‘open-loop’ from the perspective of the structural layer, as bypassing the muscle spindle reflex path, even though ‘closed-loop’ from the perspective of the transformational layer. It consist of the two stimulation vectors uθ(t)=u1θ,,unMTUθTRnMTU [see (30)] and urefcoc(t)=uref,1coc,,uref,nMTUcocTR01nMTU [see (33)], of which the sum is termed

utaskopn=uθ+urefcoc 13

to be still in accordance with (12). The two addends to utaskopn play complementary roles in fulfilling the task: urefcoc are arbitrary reference stimulation signals (base contraction levels, for details see Sect. 2.2.2c), and uθ is set up to minimise the error between urefcoc and the desired stimulation values that corresponds to θdes, namely, utaskopn itself.

To allow the system satisfying additional criteria or side conditions along with the movement task, a second co-contraction contribution uθcoc=[uθ,1coc,,uθ,nMTUcoc]TRnMTU to ‘open-loop’ MTU stimulation can be provided by the transformational layer within the control architecture. This adjusts the stimulations of all MTUs that act on the same joint exactly without interfering with the fulfilment of the movement task (for details see Sect. 2.2.2d).

Taken together, four contributions of MTU stimulations have been distinguished that feed the two addends in (12). The addend uλ identifies with uθλ, and uopn with uθ+urefcoc+uθcoc:

u(t)=uθλ(t)=^uλ(t)+uθ(t)+urefcoc(t)+uθcoc=^uopn(t). 14

The summed stimulation signal in (14) constitutes the total output of the proposed hierarchical control architecture, which drives the actuators of the musculo-skeletal system.

The details on the calculations of these stimulation signals and their underlying control concepts are given in the following, starting with the hierarchical θλ-controller in Sect. 2.2.2a, followed by the direct θ-controller including co-contraction in Sect. 2.2.2b, c. The joint co-contraction uθcoc and its basis for construction are outlined in Sect. 2.2.2d.

(a) The hierarchical θλ-controller. In this section, the mathematical particulars of the θλ-controller are outlined. It is described here, how the postural plan θdes (see Sect. 2.2.3a) is interpreted in the transformational layer, and how it is transformed to the structural layer to provide the corresponding desired MTU lengths λθ that lead to the hierarchically controlled stimulation signal uθλ in (14) (see also Fig. 4).

Based on the set of controlled joint angles θ(t), the vector of neural sensor delays to the transformational layer δθ=δθ,1,,δθ,nθTRnθ, and the vector of desired joint angles θdes(t), firstly, the control error is defined as

θδθerr(t):=θ(t,δθ)-θdes(t)Rnθ, 15

where θ(t,δθ):=θ1(t-δθ,1),,θnθ(t-δθ,nθ)T denotes the vector of joint angles, delayed by their respective individual delay times. This error signal describes the deviation of the actual known body posture θ from the desired state θdes. Subsequently, the PID control law

θθλPID:=Pθλ·θδθerr+Dθλ·θ˙δθerr+Iθλ·θδθerrdtRnθ 16

is used to create a robust and stabilising output of controlled joint angles, where the matrices Pθλ=diag(pθλ,1,,pθλ,nθ)Rnθ×nθ, Dθλ=diag(dθλ,1,,dθλ,nθ)Rnθ×nθ, and Iθλ=diag(Iθλ,1,,Iθλ,nθ)Rnθ×nθ are diagonal control matrices, with parameters pθλ,i>0, dθλ,i>0, and Iθλ,i>0. The output θθλPID(t) allows to fix the values of desired CE lengths λθ(t) (see (21) below). It mainly scales (by Pθλ) with the control error signal θδθerr(t), while a modifying angular-rate-dependent (by Dθλ) contribution, and some memory (by Iθλ·θδθerrdt) of the angle error are added, with the latter eliminating any residual control deviations.

To eventually fix the desired CE lengths λθ(t) (21), the output of the θλ-PID control law (16) from the transformational layer must be transformed to the structural layer. Instead of transforming the joint angles directly to CE lengths, changes of the joint angles θ are transformed to changes of muscle lengths lCE, which corresponds to answering the question how much the contractile parts of the muscles need to contract (or relax) to reach θdes. Such a transformation has already been discussed in literature (Pellionisz and Llinás 1985) and can be achieved by a Jacobian matrix of the form

Jλθ:=lCEθRnMTU×nθlCE=Jλθ·θ. 17

Note, that this angle–length Jacobian has a similar definition as the matrix of MTU moment arms (8). In fact, Jλθ can approximately be derived from the matrix of moment arms R(θ), by using its definition (8) and the length constraint lMTU=lCE+lSEE (3):

R(θ)=lMTUθ=lCE+lSEEθ=lCEθ+lSEEθ,

where lSEEθ can be rewritten to lSEElCElCEθ, which allows the following formulation of the angle–length Jacobian

Jλθ=InMTU+lSEElCE-1·R(θ). 18

Here, InMTURnMTU×nMTU is the identity matrix of dimension nMTU, and lSEElCE=diagliSEE/liCE, with i=1,nMTU, describes the change of the length of the SEE w.r.t. the change of the length of the CE. This relation can be approximated from knowing the stiffnesses of the elements of the MTU under quasi-static assumptions. Details for this calculation are given in Appendix B, using the force laws of the Hill-type muscle model (Haeufle et al. 2014a) (see also Appendix A.1). Thus, the angle–length Jacobian (18) contains information about the muscles’ routings (moment arms), adjusted by internal stiffness ratios of the active CEs (at the current activity level) and the respective passive SEEs (contraction dynamics). Exactly this Jacobian matrix is used here for solving the muscle-joint redundancy of the musculo-skeletal system. Its resolved algebraic form (1876) constitutes the implementation of the body’s biophysical actuator properties within the control architecture.

For transforming—by means of the angle–length Jacobian (17)—the control error (15), as determined in the transformational layer in terms of joint angles, to its error equivalent (10) in the structural layer in terms of CE lengths, a first-order Taylor approximation is applied at the set-point of the current joint angles θ(t) and the CE lengths lCE(t), with the integration limits of θdes and λθ=^lCE|θdes, respectively:

lerr(t)=Jλθ·θerr(t)+O(θerr2). 19

The detailed calculation thereof is given in Appendix B.2.

Finally, to complete the hierarchical θλ-controller, the vector of desired CE lengths λθ(t) and their time rates λ˙θ must be provided as input to the λ-controller (11). The vector λθ(t) is obtained by equating lerr(t) in (19) with (10) and solve the remaining equation for λ(t). As these desired CE lengths are assigned within the transformational layer, and based on angle information, they are written as λθ(t). Additionally, to compensate approximation errors, and to ensure that θerr(t) approaches zero along with λθ(t)lCE(t), the output θθλPID(t) of the θλ-PID controller (16), rather than θerr(t), is used as input for the Jacobian transformation (19). With this, and by neglecting the higher-order terms O(θerr2), and further considering the delay times δθ of the peripheral sensor signals [lCE(t,δθ), (10)] in the transformational layer, lerr(t) in (19) now writes

lδθerr=lCEt,δθ-λθ(t)Jλθ·θθλPID(t), 20

which eventually yields (compare to 10)

λθ(t):=lCEt,δθ-Jλθ·θθλPID(t), 21

that is, a reliable estimate of how the respective CE lengths have to be adapted to fulfil the task, i.e. reach θdes. In this, an estimation of the desired contraction velocity λ˙θ is already included, since the definition of the angle–length Jacobian matrix (17) can also be read as (Sherman et al. 2013)

Jλθ=lCEθ=dlCEdt/dθdt=l˙CEθ˙, 22

which can be used for transforming desired joint angle velocities θ˙des. The (linear summation inherent to the) θλ-PID controller (16) delivers an input for the layer transformation (21), that includes a velocity component to be transformed along in a natural way. Therefore, the transformational layer is not required to generate a separate signal λ˙θ (i.e. λ˙θ=0) for feeding the structural layer.

By making use of the λ-control law (11) with the hierarchical input signal λθ according to (21), the stimulation signal contribution by the θλ-controller to (14) is

uθλ(t):=Pλ·lCE(t,δλ)-λθ(t)+Dλl˙CE(t,δλ), 23

that is, the closed-loop, low-level feedback control law in the structural layer, to which the input signals λθ(t) originate from the mid-level control in the transformational layer. Due to the hierarchical cascade uθλ(λθ(θdes)), with distributed PID and PD controllers, this stimulation contribution is task-fulfilling, even under gravity, notably because of the integrative part2 of the θλ-controller.

By following the hybrid control approach (1214) (Bayer et al. 2017; Kistemaker et al. 2006), an ‘open-loop’ stimulation contribution, which is, in addition, physiological meaningful, can improve the control performance (Kistemaker et al. 2006). The ‘open-loop’ part of the present control architecture is presented in the following: it produces a stimulation signal that is based on the set of desired joint angles θdes (postural plan), without making draft on the low-level control mechanisms in the structural layer.

(b) The direct θ-controller with co-contraction. The approach to the direct θ-controller with co-contraction is analogous to the hierarchical θλ controller from above. The desired joint angles θdes(t) are compared to the actual joint angles θ(t), and the resulting control errors θδθerr, with latencies δθ according to (15), serves as input to a PID control law in the transformational layer

θθPID:=Pθ·θδθerr+Dθ·θ˙δθerr+Iθ·θδθerrdt, 24

with the diagonal control matrices Pθ=diag(pθ,1,,pθ,nθ), Dθ=diag(dθ,1,,dθ,nθ), Iθ=diag(Iθ,1,,Iθ,nθ), containing the components pθ,i>0, dθ,i>0 and Iθ,i>0.

As an intermediate but only half-way step, the output of this θ-controller can be transformed through the angle–length Jacobian Jλθ (1718), in a first instance, to the transformational layer. However, and in contrast to the θλ-controller, the low-level λ control law in the structural layer is eventually in fact bypassed by an additional Jacobian transformation Juλ, obtaining the stimulation contribution uθ directly. By constructing this (length–stimulation) Jacobian Juλ (26), an angle–stimulation Jacobian Juθ can be composed that contains Jλθ and immediately transforms the changes of joint angles θ in the transformational layer to changes of MTU stimulations u in the structural layer:

Juθ=Juλ·Jλθ=ulCE·lCEθ=uθRnMTU×nθu=Juθ·θ, 25

with Jλθ known from (18) and

Juλ:=ulCERnMTU×nMTU. 26

For calculating this length–stimulation Jacobian Juλ, structural knowledge of the muscle activation dynamics (7) and their steady state (γ˙k=0, γk=uk), symbolised by ass, is utilised. While the detailed calculation of Juλ is given in Appendix C, the scalar result jkuλ for the diagonal Jacobian matrix Juλ=diag(jkuλ) for the k-th MTU follows as

jkuλ(t)ass=-uk(t)lkCE(t), 27

i.e. the instantaneous change of uk(t) w.r.t. a change of lkCE(t), assuming steady-state conditions akss(uk(t),lkCE(t)).

For using the length–stimulation Jacobian (27) in the θ-controller, a first-order Taylor approximation is applied at the set-point of the current CE lengths lCE and reference stimulation levels urefcoc (see Sect. 2.2.2c) with the integration limits of λθ=lCE|θdes and utaskopn. The calculation of this Taylor approximation is given in Appendix C.1. It implies the definition of the stimulation error

uerr(t):=urefcoc(t)-utaskopn(t)RnMTU, 28

where urefcoc is an arbitrary but nonzero reference stimulation and utaskopn is a task-fulfilling stimulation contribution that eventually corresponds to the postural plan θdes. The Taylor approximation yields

uerr(t)=Juλu=urefcoc·lerr(t)+O(lerr2). 29

With this, and neglecting all higher-order terms O(lerr2), (2829) can be solved for the stimulation contribution utaskopn(t) (13) sought after.

To complete the construction of the θ-controller, similar as for the θλ-controller [see (21)], lerr(t) is now replaced in (29) by making use of (19) and the angle–length Jacobian Jλθ (17) as well as the θ-PID controller output θPID(t) (24) as an estimate of θerr(t). This gives a robust, stabilising estimate

uθ(t):=-Juλu=urefcoc·Jλθ·θθPID(t) 30

of uerr(t) (2829) , which substantiates the proposed ansatz for the θ-controller by approximating utaskopn according to (13) by

utaskopn(t):urefcoc(t)-Juλu=urefcoc·Jλθ·θθPID(t) 31
=urefcoc(t)-Juθu=urefcoc·θθPID(t):=-uθ(t). 32

Here, uθ is the output of the θ-PID controller that is designed to adapt the reference stimulation urefcoc to the task-fulfilling ‘open-loop’ (from the perspective of the structural layer) stimulation contribution utaskopn. Thus, the base contraction level urefcoc is not required to yield the desired equilibrium and can be chosen more freely.

(c) Choosing the base reference stimulation level urefcoc. The assignment of the base reference stimulations urefcoc is technically simple. Firstly, a basis for the k=1nMTU MTU stimulations is constructed by the linear independent vectors eku=[ek,1,,ek,nMTU]R01nMTU, with ek,iu=0 for ik and ek,iu=1 for i=k. The reference stimulation urefcoc is then obtained by choosing a base contraction parameter ζkuR01 for each MTU to scale the basis of the stimulation vectors:

urefcoc=k=1nMTUζku·ekuR01nMTU. 33

With this, an arbitrary reference stimulation level can be assigned to each MTU individually. As already outlined in the previous section, the presented control architecture does not require urefcoc to be in accordance with the specific movement task that is specified by θdes. Moreover, in the simulation tasks examined in Sect. 3.1, assigning one and the same co-contraction parameter value ζku=ζu to all MTUs did the job.

(d) Joint-based co-contraction as an additional criterion. Above, the two Jacobian matrices Jλθ [see (1718)] and Juλ [see (2627)] that resolve the muscle redundancy have been presented. In composition Juθ=JuλJλθ [see (25)], they even allow to transform joint angle changes θ immediately to MTU stimulation changes u. This finding can be further exploited for allowing the system to satisfy criteria beyond fulfilling the primary task. A criterion added to fulfilling a specific movement task may be the level of joint stiffness or speed of execution, while co-contraction has a significant impact on both joint stiffness (Bayer et al. 2017; De Serres and Milner 1991; Gribble et al. 2003; Kistemaker et al. 2007; Milner 2002; Milner et al. 1995) and movement speed (Bayer et al. 2017; Gribble et al. 1998; Kistemaker et al. 2006; McIntyre and Bizzi 1993). It is derived in the following how this architectural integration potential, which is implicit to the muscle redundancy imprinted in Jλθ (and Juθ, respectively), can be used to set a functionally desired joint-related co-contracting contribution to any of MTU stimulations.

In addition to setting, as described in Sect. 2.2.2c, a base contraction level ζkuRnMTU for each MTU individually, a second co-contraction parameter ζjθR for each of the j=1nθ muscle-actuated joint DoFs θ of the skeletal system can be deployed. The redundant nature of the embodiment of the nMTU muscles opens a manifold of dimension (nMTU-nθ) to assign MTU stimulation contributions uθcoc derived from these co-contraction parameters ζjθ. To exactly not interfere with the movement task specified by θdes, the joint co-contraction uθcoc is chosen based on the null-space of the (Moore–Penrose pseudo) inverse Juθ of Juθ. The null-space—or kernel, respectively—of Juθ is the set of infinitesimal MTU stimulation changes u that are mapped via Juθ to the null vector of angular changes, i.e. θ=0. This means that the discrete addition of any sufficiently small vector uθcoc from the null space of Juθ to the MTU stimulation u [i.e. (14)] results in the joint angles θ(t) not significantly changing; therefore, adding uθcoc does not interfere with the movement task θdes.

Mathematically the null-space is obtained by solving

0=!θ=Juθu, 34

e.g. via Gaussian elimination, where Juθ is the Moore–Penrose pseudo-inverse of Juθ defined by

Juθ:=(JuθT·Juθ)-1·JuθTRnθ×nMTU. 35

Note here, that the pseudo-inverse (35) can only be calculated for Juθ having full column rank (rk(Juθ)=nθ), which is not the case, e.g. if the joint DoFs θ~ that are not actuated by muscles are considered in the control architecture. In all feasible cases, the solution of (34) yields a basis of the null-space (kernel) of dimension dim(ker(Juθ))=(nMTU-nθ), which equals to dim(ker(Juθ))=nθ in the model that is used in this study. Thus, the basis of the null-space has exactly the same size as the set of MTU actuated joint angles θ, allowing nθ additional DoFs to satisfy further movement criteria (see examples above) along with fulfilling the primary movement task. By this, the transformational layer of the control architecture proposed here facilitates to apply joint-based co-contraction: The linearly independent basis vectors ejθ (ejθ=1, j=1nθ) that build the basis of the null-space obtained from (34) are simply scaled (similar to the base reference stimulation from Sect. 2.2.2c) by the arbitrary co-contraction parameters ζjθR to obtain a joint co-contraction contribution

uθcoc=j=1nθζjθ·ejθR01nMTU 36

that fulfils (34). In this stimulation contribution, the implicit resolution of the muscle redundancy in Juθ by anatomical knowledge (moment arms, contraction and activation dynamics) is exploited to generate synergistic MTU stimulations that do not interfere with fulfilling the movement task θdes, with yet allowing to vary simultaneously but in a coordinated way the activity level of all muscles that act on the same joint.

High-level control in the conceptional layer

According to the proposed control architecture (Fig. 4), the first step in applying high-level control concepts to drive the musculo-skeletal system is to feed the outputs of the conceptional layer as desired values θdes (postural plan) into the two joint controllers in the transformational layer. Depending on the movement task itself, there may be different conceptional approaches to draft a movement plan leading to a valid choice of θdes.

One approach would be to perform a joint angle-based trajectory planning to determine θdes(t). The resulting controlled MTU stimulations u(t) then strive to drive the system to follow this trajectory. This may be a suitable method to use motor control concepts on the kinematic level to synthesise musculo-skeletal movements.

As an alternative approach, it is also possible to implement motor control concepts that calculate desired state-dependent joint torques. One example is maintaining upright stance, where a joint angle-based trajectory control may not be sufficient, as the mechanical system (1) is unstable around the upright position. In this case, several (e.g. system-theoretic) concepts exist which propose state-dependent (desired) torques τdes(t,modelparameters) to stabilise the unstable upright equilibrium pose (Günther and Wagner 2016; Rozendaal and van Soest 2005; Edwards 2007; Alexandrov et al. 2001).

In the following, it is derived how such a conceptional formulation of the movement task in terms of desired torques τdes can be transformed to the postural plan θdes, using anatomical and tissue knowledge (muscle geometry and stiffnesses, respectively). Determined by the scheme of the proposed hierarchical control architecture, the movement plan is re-interpreted in terms of the coordinates of MTU stimulations u(t) on the architecture’s output side, which result in muscle forces and corresponding joint torques τMTU that (hopefully) fulfil the movement plan τdes.

(a) Fixing the postural plan θdes by a torque-based strategy. Given a specific movement task, it is for now assumed that task-specific, state-dependent (desired) torques

τdes(t)=τdes(t,modelparameters), 37

can be formulated that fulfil the movement task. Such a conceptional formulation of the movement task in terms of joint torques may be dependent on (a subset of) the mechanical state q only, forming a closed-loop, conceptional controller of the mechanical system (1). For the example of a conceptional, torque-based strategy to maintain upright stance, refer to Sect. 3.1.

To deploy such a torque-based concept in the presented control architecture, an additional control law on the level of joint torques is formulated, which is subsequently transformed to the level of joint angles. The resulting signal can then be used as an input for the joint controllers (16) and (24). This firstly requires the definition of the error signal of joint torques with the latency times δτ=δτ,1,,δτ,nθTRnθ:

τδτerr(t)=τMTU(t,δτ)-τdes(t), 38

where τMTU(t,δτ):=[τ1MTU(t-δτ,1),,τnθMTU(t-δτ,nθ)]T is the vector of joint torques, delayed by their respective individual delay times and τdes=[τ1des,τnθdes]Rnθ is the input to the system that results from the control concept (37) above. This error is controlled via the following PID control law on joint torques:

τPID:=Pτ·τδτerr(t)+Dτ·τ˙δτerr(t)+Iτ·τδτerr(t)dt, 39

where the control matrices Pτ=diag(pτ,1,,pτ,nθ), Dτ=diag(dτ,1,,dτ,nθ), and Iτ=diag(Iτ,1,,Iτ,nθ) are diagonal, with pτ,i>0, dτ,i>0 and Iτ,i>0. The controlled signal τPID in the conceptional layer is subsequently transformed to the (transformational) layer of joint angles via the torque–angle Jacobian matrix

Jθτ:=θτRnθ×nθ, 40

which is the inverse of the joint stiffness matrix Kθ=τ/θ (Stanev and Moustakas 2019). Calculated further, for the assumption of small changes in the muscles moment arms, this yields

Jθτ=-RT·fMTUlCE·Jλθ-1. 41

Details on the calculations of Jθτ are given in Appendix D. In the closed form (41) of this Jacobian, the required anatomical knowledge is again apparent and consists of moment arms, MTU stiffnesses, and MTU-internal stiffness relations [see also (18)].

Similar as in (19), the torque error can be transformed to an error in joint angles using a first-order Taylor approximation (see Appendix D.1), leading to the definition of a signal of desired joint angles, based on the controller output of joint torques:

θτdes(t):=θt,δτ-Jθτ·τPID(t). 42

Here, with the same reasoning as in (22), the use of the PID controller output—i.e. its D-part—in the transformation, brings along a transformation of the desired torque rate τ˙des to θ˙des. Hence, it is not needed for the conceptional layer to feed a separate signal θ˙des into the PID controllers (16) and (24) in the transformational layer (θ˙err=θ˙, i.e. θ˙des is used), yet, it would be possible in a simple way.

Using the signal of desired joint angles (42), the torque control concept (37) can be applied to the musculo-skeletal system, closing the hierarchical control loop.

The complete hierarchical control architecture, including the direct θ-controller, the hierarchical θλ-controller, and the respective layer transformations, is displayed in Fig. 4. The proposed control architecture is consistent with the structural hybrid control concept (Bayer et al. 2017; Kistemaker et al. 2006). It shifts the control space to a conceptional layer and, by making use of Jacobian-based layer transformations, it is capable of providing the required input signals of desired CE lengths λ(t) and ‘open-loop’ stimulations uopn(t) to the hybrid controller. Due to the closed-form of the Jacobian matrices used in the transformations, the anatomical and active tissue knowledge (moment arms and stiffnesses), which is used to resolve the muscle redundancy, becomes apparent. The resolved redundancy furthermore opens a manifold to satisfy additional criteria, such as a joint-based co-contraction, along with the task execution.

Model simulations

To demonstrate the function of the hierarchical control architecture (Sec. 2.2), it is here used to perform human-like upright stance by implementing a joint-torque-based control concept (Günther and Wagner 2016) on the musculo-skeletal model described in Sect. 2.1. Günther and Wagner (2016) proposed a control concept, which determines joint torques that stabilise the mechanical system (1) around an upright position. This control concept is implemented in the conceptional layer and feeds its output to the hierarchical control architecture to generate MTU stimulations that eventually lead to the desired joint torques demanded by the stabilising torque-based control concept.

This approach is used in a total of four simulations to demonstrate the control behaviour for the task of upright stance; of an unperturbed system (Sect. 3.2); with added noise perturbation (Sect. 3.3); with the additional criteria of joint-based co-contraction (Sect. 3.4); and with the synthesisation of a squat movement (Sect. 3.5), which is basically an additional control objective added to the balancing task. Details on the simulation software and the used solver are presented in Appendix E.

Conceptional layer formulation of the desired task

In a nutshell, Günther and Wagner (2016) proposed to approximate human upright stance as a three-segment inverted pendulum model. With this assumption they were able to predict that upright stance could be stabilised by combining joint-level stiffnesses in the An, Kn, and Hp joint with an active positional contribution based on the weighted deviation of the body’s centre of mass (COM) in the sagittal plane. This leads to the following equations for the desired joint torques to be implemented in (37) (Günther and Wagner 2016):

τl/rdes(t)=kHp,FE,l/r000kKn,l/r000kAn,l/r·(θHp,FE,l/r(t)-θHp,FE,l/r,0)(θKn,l/r(t)-θKn,l/r,0)(θAn,l/r(t)-θAn,l/r,0)+gHp,l/r·(xCOM(t)-xCOMdes(t))00, 43

with xCOM and xCOMdes:=xAn,l(t)+xAn,r(t)2+xCOM,0 being the actual and desired positions of the body’s COM in the direction of the x-axis, respectively, θi,0 being the nominal angles for the left and right (index l/r) Hp, Kn and An FE joints and ki being the respective single-joint stiffness gains. These desired torques τdes (43) allow to calculate the input to the hierarchical control architecture: τdes is compared to the actual joint torques τδτMTU generated by the muscles to calculate the torque error τδτerr (38), which is the input to the torque control law (39). The resulting controller output is then transformed via the torque–angle Jacobian matrix Jθτ (4041) to obtain a vector of desired of joint angles θτdes with (42) (postural plan). As this conceptional controller is only used to actuate the lower limb flexion–extension (FE) DoFs, the remaining DoFs of the full-body model—left and right (l/r) cervical joints (Ces), shoulders (Shs), elbows (Ebs), lumbar joints (Lus), and hip (Hp) abduction–adduction (AA) DoFs—are controlled by setting the postural plan directly to θjdes=0 (j[Cel/r,ShFE,l/r,ShAA,l/r,Ebl/r,Ll/r,HpAA,l/r]). The completely filled vector of desired joint angles is then fed into the hierarchical θλ-controller (16) and the direct θ-controller (24), respectively, to generate the stimulation signal u(t)=uθλ(t)+uθ+urefcoc+uθcoc according to equation (14).

Simulation task: quiet upright stance

In the first simulation study of this paper, the task of upright stance is performed by conceptional planning and structural execution using the presented hierarchical control architecture (see Sect. 2.2) to drive the full-body model (Sect. 2.1) by means of MTU stimulations. To this end, the torque–angle characteristic (43) is straightforwardly used in the conceptional layer (37) (see also Fig. 4). The parameter values are chosen such that the control concept (43) is symmetric on the left (index l) and the right (index r) body side. The joint stiffness gains ki for the lower-limb FE DoFs in (43) are chosen—in accordance to (Günther and Wagner 2016) (‘TIP(12&23&34)’)—to be the critical single-joint stiffnesses, calculated by ki=mi·g·hi, where mi is the total mass above the respective joint, g is the gravitational acceleration and hi is the distance of the system’s COM above the respective joint (Günther and Wagner 2016). The numerical values of these stiffness gains ki for the model used in this study, as well as the chosen value for the positional weight gHp,l/r, are listed in Table 1. The resulting joint torques are calculated w.r.t. the nominal joint angle configuration of θHp,l/r,0=0, θKn,l/r,0=5 and θAn,l/r,0=-5. In accordance to this nominal joint angle configuration, the offset of the desired COM position is set to xCOM,0=2.86cm.

Table 1.

Initial conditions and control parameters used for the computational synthesisation of quiet upright stance with the hierarchical distributed PID-control laws

Conceptional control τ-Controller θλ-Controller θ-Controller Initial conditions
Joint Inline graphic Inline graphic Inline graphic Inline graphic Inline graphic Inline graphic Inline graphic Inline graphic Inline graphic Inline graphic Inline graphic
Lu AA 0.01 0.01 0.001 0.1 0.1 0.01 0
Lu FE 0.01 0.01 0.001 0.1 0.1 0.01 0
Ce AA 0.01 0.01 0.001 0.1 0.1 0.01 0
Ce FE 0.01 0.01 0.001 0.1 0.1 0.01 0
Sh AA (l/r) 0.01 0.01 0.001 0.1 0.1 0.01 0
Sh FE (l/r) 0.01 0.01 0.001 0.1 0.1 0.01 0
Eb FE (l/r) 0.01 0.01 0.001 0.1 0.1 0.01 0
Hp AA (l/r) 0.01 0.0 0.002 0.05 0.0 0.01 0
Hp FE (l/r) 172 2.0 30 0.0 1.5 1.0 0.1 1.5 1.0 0.1 0
Kn FE (l/r) 467 0.75 15 0.0 0.25 1.0 0.0035 0.25 1.0 0.0035 5
An FE (l/r) 784 3.0 50 0.0 0.5 1.0 0.0035 0.5 1.0 0.0035 -5

The conceptional joint-torque controllers are only active for the lower limb DoFs. For the conceptional plan of desired joint torques the additional position-based parameter gHp,l/r=-400N is used [see (43)] with the set-point for the COM of xCOM,0=2.86cm anterior to the mean ankle joint position. For the structural control law, for each of the k MTUs, the control parameters pλ,k=1.0/lopt,kCE and dλ,k=0 are chosen. As an additional initial condition, the pelvis body is positioned at XP(t=0)=[000.9954]T, such that the feet are placed at the ground contacts. The initial activations of the MTUs are in steady state with ak=0.1 for each of the k=136 MTUs, corresponding to the co-contraction that is parameterised by ζku=ζu=0.1 and ζjθ=ζθ=0.0

The PID control parameters for the conceptional τ-controller, as well as for the hierarchical θλ-controller and the direct θ-controller are heuristically obtained and listed in Table 1. The control parameters for the low-level λ-controller are chosen to pλ,k=1.0/lopt,kCE and dλ,k=0 for all k MTUs. The sensor delays δλ, δθ and δτ are all set to 0 to be in accordance with the original concept paper (Günther and Wagner 2016). The co-contraction parameters ζku are chosen to the constant reference value of 0.1 for all muscles, and the parameters of the joint-based co-contraction are set to ζjθ=0 for all joints.

The results of this simulation are presented in Sect. 4.1.

Simulation task: muscle noise perturbation

To test the robustness of the control architecture to noise, in a second simulation, the MTUs’ stimulation signals u(t) are perturbed by a random noise signal. The control parameters and the initial conditions are hereby the same as in the unperturbed system (see Sect. 3.2) and are listed in Table 1.

At every tenth full integration time-step—which corresponds to a noise frequency of 100Hz, based on the maximum integration step size of 0.001s (see Appendix E)—for each of the k=1nMTU MTUs, a uniformly-distributed random noise-coefficient pkrnd in the half-open interval (-0.5,0.5] is calculated. The total stimulation signal with added noise perturbation Prnd=diag(p1rnd,,pnMTUrnd)RnMTU×nMTU that is applied to the system then follows:

unoise(t)=(InMTU+Prnd(t))·u(t), 44

i.e. the noise addition may perturb the MTUs’ stimulations up to 50% of their current value (0.5·uk<uknoise1.5·uk for the k-th MTU). This noisy stimulation signal (44) is the input to the activation dynamics (Eq. (56) in Appendix A.2), which inherently act as a low-pass filters before MTU activities are applied to the force-generating CEs. Based on the activation dynamics time-constant of MH=11.3, the respective magnitude gain corresponds to -19dB for the frequency of 100Hz, at which the noise signal is updated.

The resulting control behaviour for this noise addition is presented in Sect. 4.2.

Simulation task: joint-based co-contraction

Due to the redundant nature of the many MTUs acting on the fewer joints (DoFs), it is possible to utilise the therefrom arising (uncontrolled) manifold of control DoFs to fulfil joint-based co-contraction constraints as described in Sect. 2.2.2. Testing this is the purpose of this third simulation task.

Joint-based co-contraction is achieved by adding contributions uθcoc to the MTUs’ stimulation signals, of all MTUs acting on the same joint, exactly without interfering with the movement task of upright stance. As outlined in Sect. 2.2.2, such a stimulation contribution is obtained from the null-space of the pseudo-inverse of the angle–stimulation Jacobian Juθ.

Two simulations are performed to examine the effects of setting the joint co-contraction parameters ζjθ for the left and right (index l/r) Hp FE, Hp AA, Kn and An joints (j[HpFEl/r,HpAAl/r,Knl/r,Anl/r]). One Simulation with an increased joint-based co-contraction value of ζjθ=ζθ=0.2 and one with a reduced value of ζjθ=ζθ=-0.05, for all of the j lower limb joints, respectively. All other model and controller parameters remain the same as for the first simulation study from Sect. 3.2 and are listed in Table 1.

The model behaviour for these variations on joint-based co-contraction compared to the default (ζθ=0.0) is given in Sect. 4.3.

Simulation task: squat movement

To demonstrate the flexibility of the presented hierarchical control architecture, a fourth and final simulation study was performed, which adds a squat movement on top of the free-balance controller. To achieve this squat movement, only changes in the conceptional layer are needed. More precisely, instead of having constant values of θHp,l/r,0, θKn,l/r,0, and θAn,l/r,0 for the nominal Hp, Kn, and An FE angles (43), a linear change over time of these nominal angles is employed. To let the position of the pelvis body in x-direction remain approximately constant during the squat movement, the nominal Kn and Hp FE angles were chosen (trigonometrically) dependent on the nominal An angle:

θAn,l/r,0(t)=-5tt-5-θAnΔt·(t-t)t>t-5-θAnfort>t+Δt-5-θAn·1+t-(t+2Δt)Δtt>t+2Δt-5t>t+3Δt, 45
θKn,l/r,0(t)=sin-1-LSLT·sin(θAn,l/r,0(t))-θAn,l/r,0(t)-θAn,l/r,0t=0 46
θHp,l/r,0(t)=-θKn,l/r,0(t)-θAn,l/r,0(t), 47

where LT and LS are the segment lengths of the thigh (T) and shank (S) bodies, respectively (see supplementary material) , θAn is the final An angle offset of the squat, t is the time instance initiating the squat and Δt is the interval for each of the three squat phases, i.e. the downwards movement, the squat stance and the upwards movement. With this simple linear approach, two squat movements have been synthesised in-silico; a slow squat (t=10s, Δt=5s, θAn=-15) and a fast squat (t=16.75s, Δt=0.5s, θAn=-10).

Beside these changes to the nominal angles, the single joint stiffnesses ki had to be doubled, i.e. kisqt=2·ki, for the left and right Hp, Kn and An FE joints. The remaining parameters are exactly the same as for the first simulation study from Sect. 3.2 and are listed in Table 1. The results for these parameter manipulations, including joint angle trajectories, MTU force production, and an impression on the state-dependent redundancy solution by the angle–length Jacobian Jλθ, are given in Sect. 4.4.

Results

Simulation results: quiet upright stance

The here proposed control architecture allowed to stabilise free upright stance in a muscle-driven full-body model based on the idealised three-segment torque-driven concept (43) proposed by Günther and Wagner (2016). A stable attractor was found with the parameter values for the conceptional layer taken from the original concept paper (Günther and Wagner 2016) (‘TIP(12&23&34)’) and all other parameters set, as described in Sect. 3.2 above (see also Table 1).

For the time from 10s to 30s, the COMs positional error, the lower-limb joint angles, the (high-level) control error of joint torques, the actual and desired (as demanded by the transformational layer) CE lengths (of the An Ex), as well as signals of the generated MTU stimulations and MTU forces (of the An Fx and Ex), are shown in Fig. 5. During this time interval, the maximum positional error in the sagittal plane of the body’s COM w.r.t. it’s desired set-point xCOMdes(t) (see (43) and Table 1) is about 2.5cm. The maximum joint angle sway is about 5 in Hp FE and 1.9 in An and Kn FE. Based on the used convention of joint rotations (see Fig. 3), the Kn and the An joints show in-phase behaviour, where the Hp FE joint angle is in anti-phase with the other joints of the lower limbs, with a main oscillation frequency of 0.38Hz. The MTU stimulations vary around the reference co-contraction value of urefcoc=0.1. Compared to this constant co-contraction value, the An Ex stimulation is inhibited with a maximum reduction of about 0.13% and the An Ex is stimulated up to an additional 22.5%s. These stimulation signals stabilise the mechanical system of the triple inverted pendulum and are based on the conceptional layer controller for joint torques. The absolute control error on joint torques has a maximal value of ±0.17Nm in the Hp joint, and ±0.017Nm, and ±0.027Nm in the Kn and An joints, respectively. Compared to the maximal absolute values of MTU generated torques of |τmax,MTUHp|=5.84Nm, |τmax,MTUKn|=13.9Nm and |τmax,MTUAn|=22.3Nm, the relative control errors correspond to an estimated maximal deviation of about 2.9% for the Hp, 0.2% for the Kn and <0.1% for the An joint. The hierarchical control architecture transforms this error signal firstly to the transformational (joint) layer and subsequently to the structural (muscle) layer and, thus, produces desired muscle lengths λθ, which are controlled by the λ-controller (11). The maximal error of the actual CE length lAn,ExCE of the Hp Fx muscle An Ex MTU and the desired value λAn,Exθ occurs shortly before the maximal positive body sway is reached. The shape of the MTU forces of the An FE joint is in accordance with the variations in MTU stimulation and CE length error. The An Ex oscillates around 369N with a peak-to-peak amplitude of 256N, the An Fx around 213N with peak-to-peak amplitude of 160N.

Fig. 5.

Fig. 5

Simulation results of quiet upright stance. From top to bottom the trajectories of the body’s COM, the joint angle sway of left and right (l/r) Hp, Kn and An FE joints, the respective control errors on joint torques, the control error of CE lengths for the An Ex, the resulting MTU stimulations, and forces for the An Ex and Fx MTUs are displayed. The body’s COM position is anterior to the ankle joints at all times (Smith 1957)

Simulation results: muscle noise perturbation

With the added noise perturbation described in Sect. 3.3, the closed-loop control architecture is still able to maintain upright stance. For the time interval from 10s to 30s, the resulting joint angle trajectories, the control error of joint torques, and the stimulation signals of the Hp Fx and Ex muscles are shown in Fig. 6. In comparison to the large noise addition to the MTUs’ stimulations (up to 50%), the resulting influence on the joint angle trajectories is very small; more precisely (and after signal phase shifting), in the time interval t[10s30s], the root-mean-square of the difference between the unperturbed and the noise-perturbed trajectory of the Hp FE angle is 1.28. Even with the low-pass properties of the activation dynamics (-19dB, see Sect. 3.3), the added noise perturbation influences the generated torques and the respective control error of joint torques. Compared—in the time interval t[10s30s]—to the unperturbed system that shows a root-mean-square of the Hp FE joint-torque control-error τHp,FE,l/rerr of 0.148Nm, the noise perturbation increases this value to 0.747Nm, which is about 5 times higher.

Fig. 6.

Fig. 6

Simulation results of quiet upright stance with noise perturbation. The noise addition may perturb the individual MTU stimulation signal by up to 50% of their current value (44). Due to this, the generated joint torques eventually exhibit noisy behaviour as well, leading to a ‘re-amplification’ of the noise in the MTU stimulations, mainly by Pτ and Dτ in the closed-loop, torque-controlled system. In spite of the huge noise in the MTU stimulations and joint torques, the joint angle trajectories are barely affected by it

Simulation results: joint-based co-contraction

The results of the third simulation study substantiate the idea that the same task can be fulfilled under additional criteria of variations in joint-based co-contractions. More concretely, by exploiting the non-uniqueness of the Jacobian-based redundancy solution, a (uncontrolled) manifold of open DoFs can be found to adjust the stimulation level of all muscles acting on the same joint, without interfering with the execution of the task (see also Sects. 2.2.2 and 3.4 ). The results of variations in leg-joint co-contraction of ζjθ=-0.05 (left picture) and ζjθ=0.2 (right picture) are compared to a simulation without joint-based co-contraction (ζjθ=0) in Fig. 7 for the time interval from 10s to 30s.

Fig. 7.

Fig. 7

Simulation results of quiet upright stance with joint-based co-contraction variations (see Sects. 3.4 and 4.3 ). The middle graphs show the default (ζjθ=ζθ=0.0), where in the left column a joint-based co-contraction of ζjθ=ζθ=-0.05 in all leg joints (j[HpFE,l/r,HpAA,l/r,Knl/r,Anl/r]) is used, and ζjθ=ζθ=0.2 in the right column. In both variations, the MTU stimulations are adjusted according to ζθ and so are the respective MTU forces. The joint-based co-contraction is hereby based on the null-space of the Jacobian transformations. Due to the approximations of the associated angle–stimulation Jacobian Juθ (25), the resulting joint trajectories are slightly different

It can be seen that the MTUs’ stimulations of the Hp Fx and Ex are adapted accordingly by the joint co-contraction parameter, while upright stance is maintained. The An FE joint angle trajectories are similar for the different simulations, but slightly vary in amplitude and phase. This suggests that the null-space projection 0=!θ=Juθu (34) behaves as intended within the presented hierarchical control architecture.

Simulation results: squat movement

By changing the nominal angles and adjusting the single-joint stiffness gains ki in the conceptional joint-torque characteristic (43), the model was capable of executing a stable, unsupported squat movement.

The joint angle trajectories mostly follow their linear set values from (474645) (see Fig. 8) and stable stance is maintained throughout the downwards movement, the squat stand and the stand-up phase for both, the slow and the fast squat. Additionally, in Fig. 8, excerpts of the angle–length Jacobian Jλθ (17,18) are shown. This state-dependent matrix maps joint angle changes to CE length changes and thereby resolves the redundancy of the musculo-skeletal system. Based on the sign of the respective matrix entry, the kinesiologic effect of a certain muscle on a specific joint (flexor/extensor) can be identified (see colour coding on the right and joint angle notation in Fig. 3). As expected, the angle–length Jacobian is similar in all three states as it captures the kinesiological effect of the MTUs, which is a morphological feature and does not change. However, in the squat-position (t=17.5 s), Kn Ex and Fx entries for the Kn joint have higher magnitudes, which indicates a higher sensitivity of changes in the Kn MTUs’ CE lengths w.r.t. Kn joint angle changes.

Fig. 8.

Fig. 8

Simulation results of the fast (Δt=0.5s, solid lines) and slow (Δt=5s, dashed lines) squat movements according to the simulation task formulated in Sect. 3.5. The joint angles (upper line-plot) mostly follow their nominal trajectories (4547) to execute the squat. The MTU forces of the Hp, Fx, and Kn Fx MTUs increase during the squat, while the An and Fx MTU force slightly decreases. This may be explained by the facts that the Hp and Kn joints swing further away from their unstable upright equilibria and the overall distance in z-direction of the body’s COM to the An joint decreases. In the box-plots, excerpts of the angle–length Jacobian matrix (18) for the left leg for the time instances t=5s, t=17.5s and t=25s are displayed as heat-maps of MTU contribution to Fx and Ex movements

Discussion

All in all, the presented hierarchical control architecture showed to be a practical approach to actuate the used full-body model in the example of quiet upright stance. Moreover, due to the hierarchical architecture, only a few intuitive changes in the conceptional layer led to the synthesisation of a muscle-actuated, stable squat movement.

Due to the separation of the control system into a low-dimensional planning space (conceptional layer) and a high-dimensional actuation space (structural layer), the problem of movement planning was eased. That is, movement planning can occur in a conceptional context only, namely, by calculating required joint torques that are applicable to execute the movement for the mechanical system (1), without having to consider the properties of the biological actuators (muscles). The muscle actuation is achieved subsequently by Jacobian-based layer transformations that translate the conceptionally obtained movement plan to muscle stimulations, by using anatomical and tissue knowledge (muscle geometry and stiffnesses, respectively) to resolve the muscle redundancy. The Jacobian matrices that are used for this transformation are moreover presented here in closed-form, (based on the muscle model used). This gives structural insights into the calculations and the respective sensor signals that are needed for resolving the redundancy. Precisely since the redundancy resolution—which is carried out by Jacobian-based transformation from a high-dimensional into a lower-dimensional space—is not unique, additional DoFs (an uncontrolled manifold) remain that allow to fulfil additional criteria, such as joint-wide co-contraction, along—and not interfering—with the execution of the planned movement.

As the approach of conceptional (torque-based) planning is a common technique in the field of computational motor control (Günther and Wagner 2016; Rozendaal and van Soest 2005; Edwards 2007; Wolpert 1997), the presented control architecture forms a practical tool to validate such (torque-based) hypotheses on in-silico, muscle-actuated systems and therefore, to incorporate the effects of active and passive properties of the actuators. The results are promising regarding the application of the architecture to more dynamic and complex movements, with also the mechanical and muscular dimensionality enhanced to, for example, implementing bi-articular muscles or examining diverse body plans (animal morphologies). It seems conceivable to deploy the architecture as part of a movement system that also incorporates nonlinear dynamics of biological sensors, or let it be part of learning processes.

Layered, hierarchical (biological) motor control

The present contribution assumes biological motor control as a layered, hierarchically structured system, as was already proposed by others (Wolpert 1997; Prescott et al. 1999; Todorov et al. 2005; DeWolf and Eliasmith 2011; Merel et al. 2019). Several observations hint in favour of this assumption. From our perspective, two layers are present, at least (Fig. 1): one on the lowest level—we call this ‘structural layer’—and one on the highest level—we call this ‘conceptual layer’.

The structural layer represents the direct wiring of both the efferent motor neurons from the spinal cord to the neuronal endplate and the afferent sensory neurons from the muscle receptor organs to the spinal cord, as well as the interconnections of these using one or very few synaptic connections (i. e. monosynaptic reflex loop). To date, no other mechanism seems accepted to transfer central nervous stimulations down to the active muscle tissue and, vice versa, from the muscle spindles and Golgi tendon organs up to the central nervous system (CNS).

The conceptual layer is an assumed, lumped layer representing the whole brain and complex spinal cord functions, including the crucial building blocks of motion planning. Among them are motor prediction (Wolpert and Flanagan 2001), haptic perceptions (Blakemore et al. 1999), motor learning (Tseng et al. 2007), movement intention (Ganesh et al. 2018), task and environment context (Wolpert et al. 2003), body representation (Naito et al. 2016), and sensory predictions (Gentili et al. 2010). In our example (Sect. 3), we assume the output of this layer to be a conceptual plan in the form of local body representations, i. e., a desired angle per each body joint plus context, i. e., co-contraction per each body joint (and reference stimulation levels). Any more sophisticated idea or model with the same output could be plugged in here, to replace the conceptual layer assumed by us.

In between the conceptional layer and the structural layer, we see the need to define one additional layer, the transformational layer. It serves one main function: reduction of cognitive load on higher CNS centres (brain and higher spinal cord). Cognitive load in this sense is, for example, total neuronal information communicated between the periphery and the brain (signal bandwidth), practical neuronal information necessary to complete motor tasks [control effort (Haeufle et al. 2014b)], and storage of knowledge about local material characteristics (e. g., tissue stiffness or membrane conductivity) and geometry (e.g. moment arms, limb dimensions). The transformation, as presented in this contribution, is done purely by exploiting the geometry and actuator characteristics, the morphology. That is, adding this layer reduces computational costs of higher CNS parts by increasing the morphological intelligence (Ghazi-Zahedi 2019) on lower to mid-levels of the control structure.

The transformational layer is separate from the structural layer: It synergises several distributed local control parts by using a more centralised knowledge about these parts. In turn, this centralisation enables time- and signal-efficient processing of sensory information close to the lowest level (structural layer). An additional argument in favour of this new layer is that common properties of the actual biological material characteristics have to be adjusted/learned only once, and can be stored in this layer and accessed from all other layers. In our presented approach, parameterisation of the transformational layer represents learning and storage of structural and material properties of the biological system.

Biomechanical properties: towards a range of animals and movements

In the work of this paper, we aimed at formulating a model of a control architecture that can explain the synthesis of biological movement on the grounds of basic biomechanical and physiological properties of the biological structures involved, muscles in particular. We proceeded from the assumption that this architecture, which is rooted in and closely interacts with the biophysical properties of muscle-driven animals, may create a quite general, theoretical basis for explaining biological movement synthesis. This is, as our ansatz for the proposed biological architecture implies that it has evolved with some fundamental mechanical and physiological characteristics of the generic biological actuator (muscle) and its structural, lowest-level connection (mono-synaptic reflex pathway) to the controlling nervous system given, which are all inherent to at least the range of vertebrate animals. Our results provide first evidence that, accepting this ansatz as a starting point (evolutionary and as point of research departure), the very general process of planning and selecting any desired movement, and its control during realisation, may be facilitated by relying on such a given structural basis of the biological body moving.

We used the synthesis of three-dimensional human upright stance as a concrete example of a biological movement task, partly because it is a grand control challenge due to its inherent mechanical instability. This does not mean that this paper is about significantly advancing the detailed and precise comprehension of how this particular movement task is fulfilled. Yet, there is indeed a specific finding about human stance in the results presented in this paper. Namely, the whole control strategy to balance a human-like model in upright position is derived from another model (Günther and Wagner 2016) that is both remarkably more abstract and artless: a two-dimensional (sagittal plane) triple-inverted pendulum (TIP) model that is driven by solely elastic rotational springs in the three major (lumped) leg joints, with the only non-elastic addition of an active torque contribution in the hip joint [Eq. (43)]. In that model, therefore, the whole structural basis of biological movement generation, that is, muscles driven by stimulation signals, was not part of the strategy to find stable movement solutions. Thus, three major conclusions can be drawn at least: (i) One possible control strategy for balancing human upright stance is indeed well and concisely characterised by the ‘torque law’ Eq. (43) of a TIP. (ii) This seems to be a robust law as it formulates desired torques for only part of the body’s joints—although the crucial ones, the legs’—with neither knowledge on muscle, sensor, or neural properties, nor on the state of trunk or arms, nor on even the state in transversal direction or any torsions around the body’s longitudinal direction. Even more, our present implementation of a human-like neuro-musculo-skeletal model is in some respects still a pretty sloppy representation of human properties (see below). (iii) The points (i) and (ii) put together strongly indicate that a TIP’s Eq. (43) may be seen a ‘template’ (Full and Koditschek 1999), that is, a low-dimensional dynamics abstraction or condensation, respectively, of a movement system that may be made of many more degrees of freedom [higher-dimensional: an ‘anchor’ (Full and Koditschek 1999)], be the ‘anchor’ a model formulation or a system in the real, physical world. With the ‘template’ having imprinted the essence of the organisation of a dynamic movement task, the movement planning entities of an ‘anchor’ can then use the ‘template’ to suggest promising desired motor inputs (here: muscle stimulations) on the basis of predictions by the ‘template’.

Some parts of the present implementation of a human body model need either enhancement or upgrading, to make it appropriate for seriously examining the dynamic movement organisation of human stance, and quiet stance in particular. For example, the lever arms of the ankle muscles are 6 cm and 6.8 cm for the extensors and flexors, respectively, with particularly the latter being clearly higher than in real anatomy (about 4 cm). Also, whereas the (Hill) parameters Arel=0.2 and Brel=2 s-1 of the force-velocity relation are chosen well in the physiological range for all model muscles, the maximum isometric force values of the ankle flexors (3000 N) are over-estimated by about a factor of three [m. tibialis anterior: about 1000 N (Günther and Ruder 2003)], and the extensor’s value (likewise 3000 N) under-estimated (m. soleus plus m. gastrocnemius: about 6000 N). So far, bi-articular muscles have not been implemented, as reflex time delays have been neglected—albeit the present control architecture invites to model both biomechanically essential features. Furthermore, physiologically characteristic properties like the dynamics inherent to proprioceptive sensors, the muscle spindle and Golgi tendon organs, most sources of noise, and, just as a less prominent yet potentially interesting example, the distinction of long-range (CE force–length relation) stiffness from short-range stiffness contributions of the cross-bridges and filaments (Ford et al. 1977; Günther et al. 2018; Piazzesi and Lombardi 1995) have not been taken into account so far. It will be exciting to investigate how the present control architecture deals with them.

The specific simulation results of ‘quiet’ human stance presented here show fluctuation amplitudes of joint angles and horizontal COM position that are more than an order of magnitude higher than in measured data on quiet stance: compare Figs. 5,6,7 to (Günther et al. 2011, Tables 1,2) and (Günther et al. 2012, Table 1). In any case, an already realistically chosen value of the static coefficient of ground friction (μc=0.8) has guaranteed proper limitations of applicable joint torque peaks—and, therefore, horizontal ground reaction force fluctuations—in the current version of the human-like model. Together with the possible forces and their time rates due to viscoelastic fibre-tendon interaction already implemented in a physiologically realistic way, just like the muscle activation dynamics, the present model, even in the current state of development, rests well on sound biomechanical grounds. The control architecture laid out here is not restricted in any way to human movement. It rather waits for being applied to any vertebrate movement, with this, probed for scalability and validity, and certainly further moulded when exposed to interactions with other concepts or properties like, for example, biological sensor dynamics.

Model and control considerations and limitations

We tested the control architecture for a full-body—but simplified—musculo-skeletal model. There are two important simplifications in the context of this study. The first simplification is the reduced number of muscles with only one antagonistic pair per mechanical degree of freedom and no bi-articular muscles. The second simplification is that each muscle is represented by only one motor unit (Haeufle et al. 2014a). Both simplifications reduce the redundancy in the model, i.e. we require only thirty-six muscle stimulation signals to control the full-body model instead of several thousands of α-motoneuron signals in the real human body (de Luca and Contessa 2012). While the control architecture would allow to include more redundant and also bi-articular muscles, the possible benefit, e.g. for decoupling of parallel tasks (Latash 2012; Hsu and Scholz 2012), cannot be evaluated in the current model.

On the other hand, the model considers critical muscular nonlinearities and elasticities, which are expected to be difficult properties in the sense of control (Brändle et al. 2020) but central for understanding human movement control (van Soest and Bobbert 1993; Pinter et al. 2012; Stollenmaier et al. 2020). It is remarkable that, despite all the linear (Taylor) approximations in the Jacobians (17,2640) and the quasi-static assumptions for the relation between muscle-internal stiffnesses (76), the control architecture is able to handle these nonlinear elastic characteristics. For the tasks investigated here, upright stance and squat movements, also one set of PID control parameters was sufficient. While the heuristic tuning of these parameters was possible in this model, it may become difficult to infeasible for models with more muscles or for more complex or dynamic movements. This would potentially require a systematic optimisation of the control parameters. Furthermore, the stabilising effect of the control architecture on such a nonlinear model system cannot be guaranteed (yet) and therefore still relies on tests via simulations. However, stability has been mathematically proven in a simplified model (Brändle et al. 2020) for the structural layer and—from all simulations investigated here—seems practically achievable even in the hierarchical architecture.

Supplementary Information

Below is the link to the electronic supplementary material.

Abbreviations

FE

Flexion–extension

AA

Abduction–adduction

Hp

Hip

Kn

Knee

An

Ankle

Lu

Lumbar joint

Ce

Cervical joint

Sh

Shoulder

Eb

Elbow

CNS

Central nervous system

COM

Centre of mass

DHM

Digital human model

MTU

Muscle–tendon unit

MTUs

Muscle–tendon units

CE

Contractile element

PEE

Parallel elastic element

SEE

Serial elastic element

SDE

Serial damping element

DoF

Degree of freedom

DoFs

Degrees of freedom

PID

Proportional–integral–derivative

PD

Proportional–derivative

Fx

Flexor

Ex

Extensor

6. Appendix

Mathematical models

Force characteristics of the Hill-type muscle model

The Hill-Type muscle model used in this study describes each of the k=1nMTU muscles as a deflected, one-dimensional, massless, string-like muscle–tendon unit (MTU) with total length lkMTU [see also (3) and (Haeufle et al. 2014a)]. As depicted in Fig. 2 in Sect. 2.1b, each MTU consists of an active contractile element (CE) with length lkCE, a parallel elastic element (PEE) (with CE length), a serial elastic element (SEE) with length lkSEE and a serial damping element (SDE) (with SEE length). With respect to the force equilibrium (4), each of those force producing elements is capable of generating a contribution to the pulling force fkMTU of the k-th MTU that acts on the respective attachment and deflection points (Hammer et al. 2019). The exerted force of each element has nonlinear parametric dependencies, including one or more, of the CE length lkCE, the SEE length lkSEE (=lkMTU-lkCE), the respective velocities l˙kCE, l˙kSEE and the CE’s activity ak. It is notable that there are no parametric cross-dependencies between the single MTUs and, thus, each muscle can be modelled individually.

In the following subsections, a description of the force equations of the single elements are given, as well as of further calculations, which are, for example, part of the calculations of the Jacobian transformations.

Contractile element (CE)

The force–length relation a k-th CE follows a bell-shaped curve with an ascending branch (index limb=asc) and a descending branch (index limb=desc). The total force exerted by this k-th CE is dependent on the length lkCE, the contraction velocity l˙kCE and the activity ak. It follows:

fkCE(lkCE,l˙kCE,ak)=fmax,kCE·ak·fkisom(lkCE)+Arel,k(lkCE,ak)1-l˙kCEBrel,k(lkCE,ak)·lopt,kCE-Arel,k(lkCE,ak), 48

where the isometric force fkisom(lkCE) is given by an exponential function of the form

fkisom(lkCE)=e-lkCElopt,kCE-1ΔWlimb,kνlimb,kCE. 49

Details and physiological background of the used parameters (including the Hill parameters Arel,k and Brel,k) are well described in Haeufle et al. (2014a).

Using these force equations, the change of the isometric force fkisom with respect to a change of the CE length lkCE of the k-th MTU can be calculated analytically as

fkisomlkCE=νlimb,kCE·fkisom·(lopt,kCE-lkCE)(lkCE/lopt,kCE)-1ΔWlimb,kCEνlimb,kCE-2lkCE2·ΔWlimb,kCE2. 50
Parallel elastic element (PEE)

The force of the PEE of the k-th MTU vanishes, as long as the CE length lkCE is below the threshold length l0,kPEE. When the MTU is stretched above this length, the exponential increasing force

fkPEE(lkCE)=0,lkCE<l0,kPEEkkPEE(lkCE-l0,kPEE)νkPEE,lkCEl0,kPEE, 51

with kkPEE=fkPEEfmax,kCE(lopt,kCE(ΔWdes,k+1-l0,kPEE))νkPEE arises. Its derivative with respect to lkCE is given by

fkPEElkCE=0,lkCE<l0,kPEEkkPEE·νkPEE·(lkCE-l0,kPEE)(νkPEE-1),lkCEl0,kPEE. 52
Serial elastic element (SEE)

The SEE of the k-th MTU describes the force of the aponeuroses and the tendons that connect the muscle belly (CE) to the bones. Below its tendon slack length l0,kSEE, the SEE force is zero (fkSEE=0). Shortly after the transition (l0,kSEE<lkSEE<lnll,kSEE), the tendon force rises nonlinearly until the tendon length reaches lnll,kSEE. After that the force of the k-th SEE is linearly dependent on its length lkSEE:

fkSEE(lkSEE)=0,lkSEEl0,kSEEknl,kSEE(lkSEE-l0,kSEE)νkSEE,lkSEE<lnll,kSEEΔf0,kSEE+kl,kSEE(lkSEE-lnll,kSEE),lkSEElnll,kSEE. 53

The partial derivative of fkSEE with respect to lkSEE can be calculated to

fkSEElkSEE=0,lkSEE<l0,kSEEknl,kSEE·νkSEE·(lkSEE-l0,kSEE)νkSEE-1,lkSEE<lnll,kSEEkl,kSEE,lkSEElnll,kSEE, 54
Serial damping element (SDE)

In parallel to the SEE, a nonlinear damping element is part of the MTU model. The velocity-dependent force of the k-th SDE is given by

fkSDE(lkCE,l˙kCE,l˙kMTU)=DmaxkSDE·(1-RkSDE)fkCE(lkCE,l˙kCE,ak)+fkPEE(lkCE)fmax,kCE+RkSDE·l˙kMTU-l˙kCE, 55

with Dmax,kSDE=DkSDE·fmax,kCE·Arel,klopt,kCE·Brel,k.

Activation dynamics

The electrochemical process of transforming the electrical neural signal to the chemical Ca2+ ion concentration in the sarcoplasma of the muscle is described by a model of activation dynamics (Rockenfeller and Günther 2018), which is an enhanced version of what had originally been developed by Hatze (1977). All used parameter values are listed in Table 5 in the supplementary material.

Firstly, for the k-th MTU, the neural stimulation signal uk serves as input for a first-order differential equation with the state variable of the normalised Ca2+ ion concentration γk.

γ˙k=MH(uk-γk). 56

In a second step, the state ak (activity) of the MTU is obtained by the nonlinear relationship

ak(γk,lkCE)=a0+ϑk(γk,lkCE)1+ϑk(γk,lkCE), 57

with ϑk=(γk·ϖk(lkCE))ν, and ϖk(lkCE)=ϖopt,k·lkCEloptCEk=γmax·ρ0·lkCEloptCEk. The partial derivative of ak w.r.t lkCE therefore follows

aklkCE=(1-a0)·ϑklkCE(1+ϑk)2,with 58
ϑklkCE=ν·γk(t)·ϖopt,kloptCEkν·lkCE(ν-1)=ν·ϑklkCE. 59

For the derivative of ak w.r.t γk the same steps are taken, leading to

akγk=(1-a0)·ϑkγk(1+ϑk)2,withϑkγk=ν·ϑkγk. 60

Joint-limitation forces and viscoelastic forces

The (generalised) joint-limitation forces (torques) τjlmt of the j-th rotational DoF qj are modelled as linear, one-sided, spring-damper elements that act directly on the respective DoF:

τjlmt=kl,jlmt·(qj-ql,j)+dl,jlmt·q˙j,qj<ql,j0,ql,jqjqu,jku,jlmt·(qj-qu,j)+du,jlmt·q˙j,qj>qu,j 61

with the lower and upper (index l/u) threshold angles ql/u,j and the respective linear spring and damping parameters kl/u,jlmt and dl/u,jlmt.

The viscoelastic (bushing) forces τjbsh, which are used as a description for passive viscoelastic tissue around the joint (e.g. ligaments), are modelled with the same force law in the special case of ql,j=qu,j=0, kl,jbsh=ku,jbsh=kjbsh, and dl,jbsh=du,jbsh=djbsh. With this the viscoelastic force model for the j-th DoF contracts to

τjbsh=kjbsh·qj+djbsh·q˙j. 62

The parameters values for the joint limitations and the viscoelastic force element parameters are given in the supplementary material.

Contact forces

In three-dimensional computer simulations, a common and most simple mathematical description of a contact between a body and a surface is to define a point fixed on the body, and approximate the surface by a plane. By then calculating, at any mechanical state of the body, the instantaneous distance between the point and the plane, a contact event between the point and the plane can be detected. In case of such an event, and with likewise knowing the movement relative to each other from the mechanical state, the force f and torque τ acting on the body (here indicated as the ‘from’-body) can be modelled and calculated in terms of the body’s and the plane’s coordinates and velocities, as well as parameters describing the mechanical properties of the contacting and deforming materials. If the plane is fixed to another body (the ‘to’-body) , the parameters of point-to-plane contacts reflect lumped properties of both bodies, and the contact force and torque on the ‘from’-body simply act with inverted signs (-f and -τ) on the ‘to’-body, according to the principle of actio = reactio. Figure 9 illustrates such a contact situation: The contact plane is in the demoa (See Appendix E) implementation the x-y-plane at z = 0 of the coordinate system K0 (on the ‘from’-body), and the origin of the coordinate system K1 (on the ‘to’-body) is the point continuously checked for contact with K0’s x-y-plane. The vectors r and v of relative displacement and velocity, respectively, are depicted along with their respective projections onto K0’s x-y-plane (indicated by ‘’) and z-axis (indicated by ‘’).

Fig. 9.

Fig. 9

The symbol definitions for the contact situation. The coordinate system K0 (fixed to the ‘from’-body) represents the contact plane, and the origin of K1 (fixed to the ‘to’-body) the potentially contacting point. r and v symbolise position and velocity vectors, respectively. Indices ‘’ and ‘’ symbolise a vector projection onto K0’s x-y-plane and perpendicular to it (onto its z-axis), respectively. Here, the ‘from’- and the ‘to’-body are indeed in contact with each other, as the position of the K1 origin is at z<0 measured in the K0 system, i.e. below K0’s x-y-plane intersecting at z = 0 (the contact plane). According to the principle of actio = reactio, the contact force vector f (not shown here) is calculated as acting on the ‘from’-body (with K0) at the position of the point—the origin of K1—that contacts the plane, and the inverted force vector (-f) is set to act on the ‘to’-body (with K1) at the exact same position

A two-dimensional (point-to-line) contact model approach formulated earlier (Günther 1997; Günther and Ruder 2003) has been used as a starting point for the three-dimensional contact model implementation in demoa. As body-body contacts in the real world always occur at finite surfaces, the three-dimensional demoa implementation gained a new part that takes, beyond the relative linear movement of the origins of K1 and K0, the angular movement of both contacting systems relative to each other into account. Accordingly, a contact torque τ is modelled in addition to the contact force f. The contact model in demoa discriminates, firstly, the conjugate contact model states ‘contact’ from ‘no contact’ by continuously identifying the position of K1’s origin along K0’s z-axis (normal to the contact plane). Figure 10 gives a survey of the decision scheme to determine the overall state of a contact interaction. Secondly, it discriminates the conjugate states ‘stick’ from ‘slip’, for linear and angular movements separately, based on the tangential (linear) velocity of K1’s origin relative to K0’s origin and the torsional (angular) velocity of K1 relative to K0’s x-y-plane (see Fig.11), respectively, as well as the modelled force acting tangentially to K0’s x-y-plane and the torsional torque in this plane, respectively, with all state transitions being reversible.

Fig. 10.

Fig. 10

The states of a modelled point-to-plane (K1K0) contact force interaction according to Fig. 9, and the transition criteria (decision scheme) for calculating the contact force vector f (i.e. normal component f > 0 and tangential components f) in this ‘to’-body–‘from’-body interaction. The critical values of tangential (linear) and torsional (angular) velocities for slip-to-stick transitions, vc = 0.01 m s-1 and ωc =  (with this, stick-to-slip disabled here), respectively, as well as for stick-to-slip transitions, tangential force and torsional (indicated by ‘’) torque magnitudes, fc = μc · f and τc = μcϕ · f, respectively, with the coefficient of static friction μc = 0.8 (stick-to-slip disabled, thus, μcϕ > 0 arbitrary), are parameters for modelling reversible transitions. The state of a contact interaction changes from ‘stick’ to ‘slip’ (based on fc and τc), the ‘slip’ event, if either of the depicted criteria is broken, i.e. the transition to ‘slip’ occurs through a logical or connective of the ‘stick’ requirement. In contrast, the slip-to-stick transition (based on vc and ωc), the ‘stick’ event, occurs through a logical and connective of ‘back to stick’ requirement, i.e. both depicted criteria of approaching low velocities must be fulfilled. If there is no contact (anymore), the stick–slip state of a contact interaction is initialised to ‘slip’

Fig. 11.

Fig. 11

The calculation of the torsion angle ξ=ϕ+ψ and the stick coordinate system K¯1 (x¯-y¯-z¯) at the instant of a ‘stick’ event: separating the tilt from the torsion contribution to an overall rotation of the primed coordinate system K1 (dashed axes) relative to the unprimed system K0 (solid axes). The rotations are expressed in terms of Euler angles executed in the order ϕ,θ,ψ. The tilt is the (second) angular rotation by θ around the n-axis, the latter being the intermediate x-axis after the first rotation around the initial (unprimed) z-axis by ϕ. The last (third) rotation by ψ is then executed around the already finally fixed (primed) z-axis. The x-y-plane of the (solid, unprimed) K0 system is the contact plane, in which to lie the n-axis of tilting can be assumed and used for parameterising stick–slip interaction when applying the Euler angle description of three-dimensional rotations. Regardless of the angular orientation of K1 relative to K0, the position of the origin of K1 in relation to the contact plane determines (a) whether both coordinate systems (bodies) are in contact at all and, therefore, mechanically interact by a force f and a torque τ, as well as (b) where in the contact plane a unique stick coordinate system K¯1 is located for modelling a restoring viscoelastic tangential force and torsional torque in the ‘stick’ state. In fact, K¯1 is fixed at the instant when the ‘stick’ event occurs: its origin is chosen to be located in the contact plane at the vector r¯ of the projection of K1’s origin onto the contact plane—here, for simplicity of the illustration at K0’s origin—, the orientation of K¯1’s z¯-axis is chosen to always align with the normal vector of the contact plane (K0’s z-axis), and the Euler angle sum ξ¯=ϕ¯+ψ¯ is calculated for determining later torsional angular excursions Δξ=ξ-ξ¯ relative to the ‘stick’ condition

To maximise the physical and mathematical consistency of detecting and handling both contact and stick–slip events while modelling multiple contact interactions, demoa offers deploying the well-tried Shampine–Gordon predictor-corrector algorithm ‘de’ (Shampine and Gordon 1975) for integrating a system of ordinary differential equations in a modified (Henze 2002) version. The modified ‘de’ algorithm identifies, by quadratic polynomial interpolation backwards in time for each event detected, the time order of such (contact and stick–slip) events that occur between the instant tin when ‘de’ is called with an initial state vector of the neuro-musculo-mechanical system, including all discrete contact and stick–slip states, and a user-fixed instant tout when ‘de’ is required to return an updated state vector that fulfils the likewise user-fixed absolute and relative accuracies. Events of reversible transitions between ‘contact’ and ‘no contact’ as well as between ‘stick’ and ‘slip’ are detected, and the discrete state values accordingly and properly switched, as illustrated in Fig. 10, by a root-finding function that is called by the modified version of ‘de’ before any ‘de’-internal (predictor or corrector) step. Additionally, the origin of a stick coordinate system K¯1 (Fig. 11) is fixed in K0’s x-y-plane at the position where contact of the origin of K1 has been detected by interpolation. The event detection, ordering, and handling part of the modified ‘de’ algorithm guarantees that, if an event earlier than those already found is newly detected, the integration is always restarted at the instant of the earliest event found so far.

Elastic stick forces and torques are then calculated depending on the linear and angular displacements of K1 relative to K¯1, and friction contributions depending on their relative linear and angular velocities. The ‘slip’ and ‘stick’ force laws for modelling the contact interaction force f and torque τ as acting on the ‘from’-body are explained in the following. The (tangential force and torsional torque) limit values of maximum static friction, which determine the stick–slip transition, are parameterised by the coefficients of static friction, μc and μcϕ:

fc=μc·|f|andτc=μcϕ·|f|. 63

In case of contact, the normal (to K0’s x-y-plane) component f (i.e. the projection onto K0’s z-axis) of the contact force f is always calculated from the normal component r of the distance vector of the origins of the contact coordinate systems K0 and K1, and the time derivative v of r, that is, the projection of the relative velocity onto K0’s z-axis:

f=κ·r+ρ01·v-ρ11·r·v. 64

Here, κ is the normal stiffness of the contact interaction, and ρ01 and ρ11 are the damping coefficient and the nonlinear damping strength, respectively, of normal deformation rates. If, according to the decision scheme based on Eq. (63) as shown in Fig. 10, the contact has switched to the ‘slip’ state, the corresponding tangential (projection onto K0’s x-y-plane of contact) force vector f of dynamic friction and the normal torque component τ modelling torsional friction are determined by (i) the normal force component f, (ii) the projection vector v onto the contact plane (i.e. components tangential to it) of the difference v=vK1-vK0 between the linear velocity vectors of the origins of K1 (vK1=r˙K1) and K0 (vK0=r˙K0), and (iii) the projection ω onto K0’s z-axis of the angular velocity ω of K1 relative to K0, respectively. In that, the (tangential) dynamic friction force can be modelled as consisting of both a contribution linearly proportional to velocity and a Coulomb component, whereas the torsional torque is solely made of a Coulomb component:

f=σ·v+μ·|f|·v|v|andτ=μϕ·|f|·ω|ω|. 65

Here, μ and μϕ are the coefficients of dynamic friction, and σ is the frictional damping coefficient. If, in contrast, the contact has switched to the ‘stick’ state, the tangential force f always acts to drive K1—with the ‘to’-body attached—back to the stick contact point (origin of K¯1)—with the ‘from’-body attached—which is fixed to K0’s x-y-plane of contact in the ‘stick’ state, at the position where K1’s origin projected onto the contact plane at the instant when the ‘stick’ event occurred. Then, f is determined by the displacement r-r¯ of the projection vector r of the contact point (K1’s origin) onto the contact plane from the respective projection vector r¯ of the stick coordinate system K¯1 (Fig. 11), which is fixed in the contact plane, and the vector of the tangential linear velocity vector v¯=r˙-r¯˙ (note: different from v in (ii) above) of the contact point within the contact plane:

f=κ·(r-r¯)+ρ·v¯. 66

Here, κ is the tangential stiffness of the contact interaction, and ρ is the damping coefficient of the tangential deformation rate. Moreover, if K1 rotates in the ‘stick’ state relative to K¯1, a restoring torsional torque around the axis normal to the contact plane (K¯1’s z¯-axis and K0’s z-axis aligning) acts between K1 and K0:

τ=κϕ·Δξ+ρϕ·ω. 67

Here, ω is the component perpendicular to the contact plane of the angular velocity ω of K1 relative to K0, ρϕ the corresponding angular damping coefficient, and κϕ the angular stiffness of torsion. The symbol Δξ=ξ-ξ¯ is the torsional angular excursion of K1 (relative to K0) from its (torsion) angle ξ¯=ϕ¯+ψ¯ determined at the instant of the ‘stick’ event, that is, K1’s instantaneous torsional excursion relative to K1’s orientation K¯1 as fixed at the ‘stick’ event. The calculation of the instantaneous torsion angle ξ=ϕ+ψ is illustrated in Fig. 11. The used parameters for this contact model and the position of the contact points on the model’s foot bodies are listed in Table 2.

Table 2.

The model used in this study has in total eight foot–ground contact points defined (four on each foot), with the positions of the origins of the reference coordinate systems K0a-d,l/r given below

Inline graphic ρ01[] ρ11N·sm2 σ[] μ[] Inline graphic μϕ[]
100000.0 100.0 100000.0 0.0 0.7 0.001 0.0
Inline graphic Inline graphic ρN·sm μc[] Inline graphic ρϕN·mrad μcϕm
99.0 50000.0 50.0 0.8 200.0 20.0 99.0
K0 x[m] y[m] z[m]
K0a,l/r -0.1085 -0.0391 -0.0361
K0b,l/r -0.1085 0.0391 -0.0361
K0c,l/r 0.0678 -0.0391 -0.0361
K0d,l/r 0.0678 0.0391 -0.0361

All contacts use the same set of parameters (listed below) and produce forces w.r.t the ‘from’ body’s coordinate frame K1w that is fixed to the world at the origin [0,0,0]

Details on the calculations of the angle–length Jacobian Jλθ

The angle–length Jacobian matrix Jλθ=lCEθRnMTU×nθ relates the change of the MTU’s CE length lCERnMTU to a change of the joint angles θRnθ. It is used to transform a control signal from the transformational layer to the structural layer. The definition of Jλθ is similar to the definition of the matrix of moment arms (8), which is also the basis of the calculation of Jλθ when combined with the MTU length equation (3):

R(θ)=lMTUθ=lCE+lSEEθ=lCEθ+lSEEθ 68
=lCEθ+lSEElCE·lCEθ 69
=InMTU+lSEElCE·lCEθ, 70

with InMTU being the identity matrix of dimension nMTU. By substituting Jλθ:=lCEθ and rearranging (70) to have Jλθ on the left-hand side of the equation, the angle–length Jacobian matrix is expressed as

Jλθ=InMTU+lSEElCE-1·R(θ). 71

The partial derivative lSEElCE=diagliSEE/liCE with i=1,nMTU, describes the change of the length of the SEE w.r.t. the change of the length of the CE. This term can be obtained by calculating the stiffness relation of the elements of the MTU under quasi-static assumptions.

Calculation of lSEE/lCE

To calculate this term, the partial derivative of the MTU forces fMTU w.r.t. the CE lengths lCE is evaluated in a matrix equation, while considering the force equilibrium (4):

fMTUlCE=fCElCE+fPEElCE=fSDElCE+fSEElCE 72

Here, the partial derivative of the SEE force vector fSEE w.r.t. the CE length vector lCE can be expressed as fSEElCE=fSEElSEE·lSEElCE and is assumed to be nonzero, i.e. the tendon is not slack. With this equation (72) is rearranged to:

lSEElCE=fCElCE+fPEElCE-fSDElCE·fSEElSEE-1. 73

According to equations (485153), the functions fCE and fPEE depend on lCE, while fSEE depends on lSEE. By assuming quasi-static conditions (l˙MTUl˙CE0), the SDE force vanishes (fSDE0) and the CE force (48) of a k-th MTU simplifies to fkCE(lkCE)=fmax,kCE·ak(lkCE)·fisom,k(lCE,k).

Subsequently, equation (73) can be written to the matrix equation

lSEElCE=fCElCE+fPEElCE·fSEElSEE-1=Fmax·alCE·fisomCE+a·fisomCElCE+fPEElCE·fSEElSEE-1. 74

and thus, the partial derivatives of a(lCE), fisom(lCE), fPEE(lCE) and fSEE(lSEE) remain to be calculated. Given the PEE force equation (51), its derivative w.r.t lCE is given in equation (52) in Appendix A.1.2. With the serial elastic force (53), its derivative w.r.t. to lSEE can be calculated and the result is stated in (54) in Appendix A.1.3. The derivative of the isometric force (49) is given in (50) in Appendix A.1.1. The nonlinear activation a(lCE,γ) is given together with its derivative w.r.t lCE in Appendix A.2 in the equations (56-59). With those equations all terms of equation (74) are sufficiently resolved and lSEElCE can be calculated during runtime at each time-step of the simulation, using the respective parameters. The above calculation (74) is used in this contribution for the calculation of the angle–length Jacobian (71).

To estimate the impact of the quasi-static assumption from above (i.e. l˙MTUl˙CE0), a brief estimation without it follows. Calculating the partial derivative fSDElCE in (73) from (55) with RSDE0 (Bayer et al. 2017), (73) can be rewritten in the scalar case for the k-th MTU as

lkSEElkCE=1-Dmax,kSDE·(l˙kMTU-l˙kCE)fmax,kCE·fkCElkCE+fkPEElkCE/fkSEElkSEE. 75

Additionally estimating the SEE contraction velocity to be as high as the maximum concentric contraction velocity of the CE for the k-th MTU, i.e. l˙kSEE=(l˙kMTU-l˙kCE)=vmax,k=Brel,kArel,k·lopt,kCE, (75) contracts to (for substituting Dmax,kSDE, see Appendix A.1.4)

lkSEElkCE=(1-DkSDE)·fkCElkCE+fkPEElkCE/fkSEElkSEE. 76

As the relative damping coefficient is about DkSDE=0.3 for each of the k=1nMTU MTUs (Bayer et al. 2017), it is seen that (74) is a reasonable approximation, at least in all non-explosive movements.

First-order Taylor approximation

The transformation of the discrete error signal θerr with the Jacobian Jλθ:=lCEθ, which relates infinitesimal changes, is achieved by integrating lCE=Jλθ(θ)·θ with the limits of the respective error signals (i.e. lδθCE(t) and λθ(t), and θ(t) and θdes(t)):

lδθCEλθdlCE=θδθθdesJλθ(θ)·dθ,withλθ:=lCEθdes 77
lδθCE-λθ=J¯λθ(θδθ)-J¯λθ(θdes). 78

Here the antiderivative J¯λθ is an unknown, joint angle-dependent function J¯λθ(θ) that can be approximated by a first-order Taylor approximation at the set-point of the actual measured joint angle configuration θ=θδθ(t):

J¯λθ(θ)θ=J¯λθ(θ)+Jλθθ·(θ-θ)+O(θ2),i.e.J¯λθ(θdes)θ=θδθJ¯λθ(θδθ)+Jλθ·(θdes-θδθ). 79

The use of (79) in (78) cancels out all occurrences of the unknown antiderivative J¯λθ and the following remains:

lδθCE-λθJλθ·(θδθ-θdes)lδθerrJλθθδθerr. 80

The Jacobian matrix Jλθ can thus be used to approximately transform the discrete control error θerr from the transformational layer to a control error of CE lengths lerr in the structural layer. Due to the linear approximation (79), the transformation is less accurate for large control errors. During a successful movement execution (θθdes), this approximation becomes more accurate and, thus, the controller performances are more precise, the closer the system approaches the desired state.

Details on the calculations of the length–stimulation Jacobian Juλ

For the calculation of the length–stimulation Jacobian matrix Juλ:=ulCE the activation dynamics (56) in steady state with γ˙k=0 (γk(t)=uk(t)) are utilised. This yields a steady-state activation akss(uk(t),lkCE(t)), dependent on the current stimulation uk(t) and CE length lkCE(t) of the k-th MTU. In steady state, the activation akss does not change and its total differential vanishes.

0=dakss=akssukduk+aksslkCEdlkCE,

Using the partial derivatives (58-60) of akss then leads to

0=dakssdlkCE=akssuk·dukdlkCE+aksslkCEdukdlkCE=-aksslkCE/akssuk=-uklkCE=jkuλ. 81

The length–stimulation Jacobian matrix Juλ is finally obtained as a diagonal matrix Juλ=diag(jkuλ) for k=1nMTU.

First-order Taylor approximation

With the same reasoning as for the transformation of the joint angle error θerr from the transformational layer to the CE length error lerr in the structural layer as described in Appendix B.2, the CE length error lerr can be transformed with Juλ to an error uerr of MTU stimulations. Firstly the discrete integration with the limits of urefcoc and utaskopn on the left-hand side lδθCE and λθ on the right-hand side is performed:

u=Juλ·lCEurefcocutaskopndu=lδθCEλθJuλ(lCE)dlCEurefcoc-utaskopn=J¯uλ(lδθCE)-J¯uλ(λθ). 82

With an analogue first-order Taylor approximation as in (79), the unknown antiderivatives J¯uλ(lδθCE) and J¯uλ(λθ) in (82) can be linearly estimated to obtain:

uerr=Juλ·lerr+O(lCE2) 83

With this, an error of CE lengths can be transformed to an error of the reference co-contraction (base stimulation level) urefcoc and the desired task fulfilling stimulation utaskopn. By rearranging, the task fulfilling stimulation utaskopn can be obtained, based on the transformed CE length error lerr and the chosen reference stimulation level urefcoc (see also 31).

Details on the calculations of the torque–angle Jacobian Jθτ

The torque–angle Jacobian matrix defined as Jθτ:=θτMTU. is the inverse of the joint stiffness matrix Kθ (Stanev and Moustakas 2019), Jθτ=Kθ-1, with Kθ=τMTUθ. which can be calculated by inserting the definition of the joint torques, i.e. the generalised forces generated by the MTUs (9):

Kθ=(-RT·fMTU)θ. 84

Applying the product rule and inserting the definition (17) of the angle–length Jacobian yields

Kθ=-RTθ2fMTU-RTfMTUlCEJλθ. 85

where RTθRnθ×nθ×nMTU is a third-order tensor and 2 denotes a tensor product, leading to (RTθ2fMTU)Rnθ×nθ being a second-order tensor (Kolda and Bader 2009; Stanev and Moustakas 2019).

The calculation of fMTU/lCE in (85) follows similar calculations as already given in Appendix B. For the simulation study of this paper, the first part of the joint stiffness matrix Kθ is neglected due to the assumption of small changes in the joint angles during quiet upright standing and hence, the torque–angle Jacobian is used as

Jθτ=-RTfMTUlCEJλθ-1. 86

First-order Taylor approximation

To transform the discrete error between the actual and desired torques τerr from the conceptional layer to an error of joint angles θerr in the transformational layer, analogously as in Appendix B.2 and C.1 , firstly an integration with the limits of τδτ and τdes, and θδτ and θdes is performed:

θ=Jθτ·τθδτθdesdθ=τδττdesJθτ(τ)dτθδτ-θdes=J¯θτ(τδτ)-J¯θτ(τdes). 87

The unknown antiderivative J¯θτ is eliminated by a first-order Taylor approximation in the same way as in (79), leading to the linear estimation θerr=Jθττerr+O(τ2).

Thus, the torque error τerr can approximately related to an joint angle error θerr. This linear approximation becomes more precise, the smaller the torque error is. For a large deviation in the actual and desired torques therefore only a rough estimation is present that becomes more detailed in the fine tuning of the controlled movement as ττdes.

Simulation software and solver

To perform the here presented simulations, the C/C++ simulation environment demoa is used (Mörl et al. 2020; Rupp et al. 2015).

The simulation software demoa uses homogeneous matrix representations (Hartenberg and Denavit 1955) to algorithmically set-up the mechanical equations of motion (1), as described by Legnani et al. 1996b, a, using the C/C++ library eigen (Guennebaud et al. 2010). The integration method used within demoa for the mechanical equations of motion (1), the activation dynamics (7), and the MTU contraction dynamics (5) is based on the Shampine–Gordon algorithm ‘de’ (Shampine and Gordon 1975), which has been slightly modified (Henze 2002) to allow event handling (root finding). The simulations parameters are the same for the four simulations studies from Sect. 3.1. The maximum simulation step size is set to 0.001s with relative and absolute error boundaries of 10-6.

The integration in the PID controllers (241639) is performed using Euler’s method (first-order Runge–Kutta), and the differentiation in the τ-PID controller (39) is performed by discrete differentiation based on the integration step time.

Author Contributions

JRW developed the mathematical formulation of the control architecture, implemented the algorithms in the simulation framework, and performed the simulations. He wrote the first draft of the abstract, the methods, and result sections (Sects. 2, 3, and 4) and the Appendices A.1A.3 and B-F. MG and JRW refined Sects. 2 and 3. DFBH and JRW refined Sect. 4. All authors conjointly drafted, wrote, and revised the introduction and abstract. MG refined the mathematical notations and wrote the discussion Sect. 5.2 and the Appendix Sect. A.4. DFBH wrote the discussion Sect. 5.3. SS designed the project, guided the development of the control architecture, named its layers, and wrote the discussion Sect. 5.1. All authors repeatedly cross-revised the others’ initial text drafts, including the figure and table legends, as well as the appendices.

Funding

Open Access funding enabled and organized by Projekt DEAL. Funded by Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) as part of the International Research Training Group ‘Soft Tissue Robotics’ (GRK 2198/1) and under Germany’s Excellence Strategy - EXC 2075 – 390740016. We acknowledge the support by the Stuttgart Center for Simulation Science (SimTech). MG was supported by DFG project SCHM2392/5-2 granted to SS. DH was supported by the Ministry of Science, Research and the Arts Baden-Württemberg [Az: 33-7533.-30-20/7/2].

Availability of data and materials

The underlying data from the plots in Figs. 58 are available on request to the authors.

Conflicts of interests

We have no conflicts of interest.

Code availability

The code of our mechanics engine demoa is available on request.

Footnotes

1

Despite some critique on the mathematical denotations (Arbib and Amari 1985) in the work of Pellionisz and Llinás (1985), their work is still a suitable tool in the computational analysis of movement organisation (Habas et al. 2020).

2

The integrative part, on the other hand, may show so-called wind-up behaviour, wherefore a simple anti-wind-up technique may be included if required, e.g. see Tarbouriech and Turner (2009)

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Change history

3/23/2021

A Correction to this paper has been published: 10.1007/s00422-021-00869-7

References

  1. Alexandrov AV, Frolov AA, Massion J. Biomechanical analysis of movement strategies in human forward trunk bending I. Modeling. Biol Cybern. 2001;84(6):425–434. doi: 10.1007/PL00007986. [DOI] [PubMed] [Google Scholar]
  2. Arbib MA, Amari S-I. Sensori-motor transformations in the brain (with a critique of the tensor theory of cerebellum) J Theor Biol. 1985;112(1):123–155. doi: 10.1016/s0022-5193(85)80120-x. [DOI] [PubMed] [Google Scholar]
  3. Bayer A, Schmitt S, Günther M, Haeufle DF. The influence of biophysical muscle properties on simulating fast human arm movements. Comput Methods Biomech Biomed Eng. 2017;20(8):803–821. doi: 10.1080/10255842.2017.1293663. [DOI] [PubMed] [Google Scholar]
  4. Bernstein NA. The co-ordination and regulation of movements. Oxford: Pergamon Press; 1967. [Google Scholar]
  5. Bizzi E, Hogan N, Mussa-Ivaldo F, Giszter S. Does the nervous system use equilibrium-point control to guide single and multiple joint movements? Behav Brain Sci. 1992;15(4):603–613. doi: 10.1017/S0140525X00072538. [DOI] [PubMed] [Google Scholar]
  6. Blakemore S-J, Frith CD, Wolpert DM. Spatio-temporal prediction modulates the perception of self-produced stimuli. J Cogn Neurosci. 1999;11(5):551–559. doi: 10.1162/089892999563607. [DOI] [PubMed] [Google Scholar]
  7. Brändle S, Schmitt S, Müller MA. A systems-theoretic analysis of low-level human motor control: application to a single-joint arm model. J Math Biol. 2020;80(4):1139–1158. doi: 10.1007/s00285-019-01455-z. [DOI] [PubMed] [Google Scholar]
  8. de Luca CJ, Contessa P. Hierarchical control of motor units in voluntary contractions. J Neurophysiol. 2012;107(1):178–195. doi: 10.1152/jn.00961.2010. [DOI] [PMC free article] [PubMed] [Google Scholar]
  9. De Serres S, Milner T. Wrist muscle activation patterns and stiffness associated with stable and unstable mechanical loads. Exp Brain Res. 1991;86(2):451–458. doi: 10.1007/BF00228972. [DOI] [PubMed] [Google Scholar]
  10. DeWolf T, Eliasmith C. The neural optimal control hierarchy for motor control. J Neural Eng. 2011;8(6):065009. doi: 10.1088/1741-2560/8/6/065009. [DOI] [PubMed] [Google Scholar]
  11. Doya K. Complementary roles of basal ganglia and cerebellum in learning and motor control. Curr Opin Neurobiol. 2000;10(6):732–739. doi: 10.1016/s0959-4388(00)00153-7. [DOI] [PubMed] [Google Scholar]
  12. Edwards WT. Effect of joint stiffness on standing stability. Gait Posture. 2007;25(3):432–439. doi: 10.1016/j.gaitpost.2006.05.009. [DOI] [PubMed] [Google Scholar]
  13. Feldman A. Control of the length of a muscle. Biophysics. 1974;19(2):766–771. [Google Scholar]
  14. Ford L, Huxley A, Simmons R. Tension responses to sudden length change in stimulated frog muscle fibres near slack length. J Physiol. 1977;269(2):441–515. doi: 10.1113/jphysiol.1977.sp011911. [DOI] [PMC free article] [PubMed] [Google Scholar]
  15. Full R, Koditschek D. Templates and anchors: neuromechanical hypotheses of legged locomotion on land. J Exp Biol. 1999;202(Pt 23):3325–3332. doi: 10.1242/jeb.202.23.3325. [DOI] [PubMed] [Google Scholar]
  16. Ganesh G, Nakamura K, Saetia S, Tobar AM, Yoshida E, Ando H, Yoshimura N, Koike Y. Utilizing sensory prediction errors for movement intention decoding: a new methodology. Sci Adv. 2018;4(5):eaaq0183. doi: 10.1126/sciadv.aaq0183. [DOI] [PMC free article] [PubMed] [Google Scholar]
  17. Gao J-H, Parsons LM, Bower JM, Xiong J, Li J, Fox PT. Cerebellum implicated in sensory acquisition and discrimination rather than motor control. Science. 1996;272(5261):545–547. doi: 10.1126/science.272.5261.545. [DOI] [PubMed] [Google Scholar]
  18. Gentili R, Han CE, Schweighofer N, Papaxanthis C. Motor learning without doing: trial-by-trial improvement in motor performance during mental training. J Neurophysiol. 2010;104(2):774–783. doi: 10.1152/jn.00257.2010. [DOI] [PubMed] [Google Scholar]
  19. Ghazi-Zahedi K. Morphological Intelligence. Berlin: Springer; 2019. [Google Scholar]
  20. Gribble P, Mullin L, Cothros N, Mattar A. Role of cocontraction in arm movement accuracy. J Neurophysiol. 2003;89(5):2396–2405. doi: 10.1152/jn.01020.2002. [DOI] [PubMed] [Google Scholar]
  21. Gribble P, Ostry D, Sanguineti V, Laboissière R. Are complex control signals required for human arm movement? J Neurophysiol. 1998;79(3):1409–1424. doi: 10.1152/jn.1998.79.3.1409. [DOI] [PubMed] [Google Scholar]
  22. Guennebaud G, Jacob B et al (2010) Eigen v3. http://eigen.tuxfamily.org
  23. Günther M (1997) Computersimulationen zur Synthetisierung des muskulär erzeugten menschlichen Gehens unter Verwendung eines biomechanischen Mehrkörpermodells. Ph.D. thesis, Eberhard-Karls-Universität, Tübingen, Germany
  24. Günther M, Haeufle DFB, Schmitt S. The basic mechanical structure of the skeletal muscle machinery: one model for linking microscopic and macroscopic scales. J Theor Biol. 2018;456:137–167. doi: 10.1016/j.jtbi.2018.07.023. [DOI] [PubMed] [Google Scholar]
  25. Günther M, Müller O, Blickhan R. Watching quiet human stance to shake off its straitjacket. Arch Appl Mech. 2011;81(3):283–302. [Google Scholar]
  26. Günther M, Müller O, Blickhan R. What does head movement tell about the minimum number of mechanical degrees of freedom in quiet human stance? Arch Appl Mech. 2012;82(3):333–344. [Google Scholar]
  27. Günther M, Ruder H. Synthesis of two-dimensional human walking: a test of the λ-model. Biol Cybern. 2003;89(2):89–106. doi: 10.1007/s00422-003-0414-x. [DOI] [PubMed] [Google Scholar]
  28. Günther M, Wagner H. Dynamics of quiet human stance: computer simulations of a triple inverted pendulum model. Comput Methods Biomech Biomed Eng. 2016;19(8):819–834. doi: 10.1080/10255842.2015.1067306. [DOI] [PubMed] [Google Scholar]
  29. Habas C, Bertholz A, Flash T, Bennequin D. Does the cerebellum implement or select geometries? A speculative note. The Cerebellum. 2020;19(2):1–7. doi: 10.1007/s12311-019-01095-5. [DOI] [PubMed] [Google Scholar]
  30. Haeufle DFB, Günther M, Bayer A, Schmitt S. Hill-type muscle model with serial damping and eccentric force–velocity relation. J Biomech. 2014;47(6):1531–1536. doi: 10.1016/j.jbiomech.2014.02.009. [DOI] [PubMed] [Google Scholar]
  31. Haeufle DFB, Günther M, Wunner G, Schmitt S. Quantifying control effort of biological and technical movements: an information-entropy-based approach. Phys Rev E. 2014;89(1):012716. doi: 10.1103/PhysRevE.89.012716. [DOI] [PubMed] [Google Scholar]
  32. Hammer M, Günther M, Haeufle D, Schmitt S. Tailoring anatomical muscle paths: a sheath-like solution for muscle routing in musculo-skeletal computer models. Math Biosci. 2019;311:68–81. doi: 10.1016/j.mbs.2019.02.004. [DOI] [PubMed] [Google Scholar]
  33. Hartenberg RS, Denavit J. A kinematic notation for lower pair mechanisms based on matrices. J Appl Mech. 1955;77(2):215–221. [Google Scholar]
  34. Hatze H. A myocybernetic control model of skeletal muscle. Biol Cybern. 1977;25(2):103–119. doi: 10.1007/BF00337268. [DOI] [PubMed] [Google Scholar]
  35. Henze A (2002) Dreidimensionale biomechanische Modellierung und die Entwicklung eines Reglers zur Simulation zweibeinigen Gehens. Ph.D. thesis, Eberhard-Karls-Universität, Tübingen, Germany
  36. Herzfeld DJ, Shadmehr R. Cerebellum estimates the sensory state of the body. Trends Cognit Sci. 2014;18(2):66–67. doi: 10.1016/j.tics.2013.10.015. [DOI] [PMC free article] [PubMed] [Google Scholar]
  37. Hogan N. Chapter 9: Mechanical impedance of single- and multi-articular systems. In: Winters JM, Woo SL-Y, editors. Multiple muscle systems. Berlin: Springer; 1990. pp. 149–164. [Google Scholar]
  38. Holmes P, Full R, Koditschek D, Guckenheimer J. The dynamics of legged locomotion: models, analyses, and challenges. SIAM Rev. 2006;48(2):207–304. [Google Scholar]
  39. Hsu W-L, Scholz JP. Motor abundance supports multitasking while standing. Hum Mov Sci. 2012;31(4):844–862. doi: 10.1016/j.humov.2011.07.017. [DOI] [PMC free article] [PubMed] [Google Scholar]
  40. Hulliger M, Dürmüller N, Prochazka A, Trend P. Flexible fusimotor control of muscle spindle feedback during a variety of natural movements. Prog Brain Res. 1989;80:87–101. doi: 10.1016/s0079-6123(08)62202-5. [DOI] [PubMed] [Google Scholar]
  41. Kiehn O. Decoding the organization of spinal circuits that control locomotion. Nat Rev Neurosci. 2016;17(4):224–238. doi: 10.1038/nrn.2016.9. [DOI] [PMC free article] [PubMed] [Google Scholar]
  42. Kistemaker DA, van Soest AJ, Bobbert MF. Is equilibrium point control feasible for fast goal-directed single-joint movements? J Neurophysiol. 2006;95(5):2898–2912. doi: 10.1152/jn.00983.2005. [DOI] [PubMed] [Google Scholar]
  43. Kistemaker DA, van Soest AJ, Bobbert MF. A model of open-loop control of equilibrium position and stiffness of the human elbow joint. Biol Cybern. 2007;96(3):341–350. doi: 10.1007/s00422-006-0120-6. [DOI] [PubMed] [Google Scholar]
  44. Kolda TG, Bader BW. Tensor decompositions and applications. SIAM Rev. 2009;51(3):455–500. [Google Scholar]
  45. Latash ML. The bliss (not the problem) of motor abundance (not redundancy) Exp Brain Res. 2012;217(1):1–5. doi: 10.1007/s00221-012-3000-4. [DOI] [PMC free article] [PubMed] [Google Scholar]
  46. Latash ML, Scholz JP, Schöner G. Motor control strategies revealed in the structure of motor variability. Exerc Sport Sci Rev. 2002;30(1):26–31. doi: 10.1097/00003677-200201000-00006. [DOI] [PubMed] [Google Scholar]
  47. Legnani G, Casalo F, Righettini P, Zappa B. A homogeneous matrix approach to 3d kinematics and dynamics - II. Applications to chains of rigid bodies and serial manipulators. Mech Mach Theory. 1996;31(5):589–605. [Google Scholar]
  48. Legnani G, Casolo F, Righettini P, Zappa B. A homogeneous matrix approach to 3d kinematics and dynamics—I. Theory. Mech Mach Theory. 1996;31(5):573–587. [Google Scholar]
  49. Martin JH. The corticospinal system: from development to motor control. Neuroscientist. 2005;11(2):161–173. doi: 10.1177/1073858404270843. [DOI] [PubMed] [Google Scholar]
  50. Matthews P. A study of certain factors influencing the stretch reflex of the decerebrate cat. J Physiol. 1959;147(3):547. doi: 10.1113/jphysiol.1959.sp006261. [DOI] [PMC free article] [PubMed] [Google Scholar]
  51. McIntyre J, Bizzi E. Servo hypotheses for the biological control of movement. J Mot Behav. 1993;25(3):193–202. doi: 10.1080/00222895.1993.9942049. [DOI] [PubMed] [Google Scholar]
  52. Merel J, Botvinick M, Wayne G. Hierarchical motor control in mammals and machines. Nat Commun. 2019;10(1):5489. doi: 10.1038/s41467-019-13239-6. [DOI] [PMC free article] [PubMed] [Google Scholar]
  53. Milner T. Adaptation to destabilizing dynamics by means of muscle cocontraction. Exp Brain Res. 2002;143(4):406–416. doi: 10.1007/s00221-002-1001-4. [DOI] [PubMed] [Google Scholar]
  54. Milner T, Cloutier C, Leger A, Franklin D. Inability to activate muscles maximally during cocontraction and the effect on joint stiffness. Exp Brain Res. 1995;107(2):293–305. doi: 10.1007/BF00230049. [DOI] [PubMed] [Google Scholar]
  55. Mörl F, Gönther M, Riede JM, Hammer M, Schmitt S (2020) Loads distributed in vivo among vertebrae, muscles, spinal ligaments, and intervertebral discs in a passively flexed lumbar spine. Biomech Model Mechanobiol 19(6):2015–2047 [DOI] [PubMed]
  56. Naito E, Morita T, Amemiya K. Body representations in the human brain revealed by kinesthetic illusions and their essential contributions to motor control and corporeal awareness. Neurosci Res. 2016;104:16–30. doi: 10.1016/j.neures.2015.10.013. [DOI] [PubMed] [Google Scholar]
  57. Park JH. Impedance control for biped robot locomotion. IEEE Trans Robot Autom. 2001;17(6):870–882. [Google Scholar]
  58. Pellionisz A, Llinás RR. Tensor network theory of the metaorganization of functional geometries in the central nervous system. Neuroscience. 1985;16(2):245–273. doi: 10.1016/0306-4522(85)90001-6. [DOI] [PubMed] [Google Scholar]
  59. Piazzesi G, Lombardi V. A cross-bridge model that is able to explain mechanical and energetic properties of shortening muscle. Biophys J . 1995;68(5):1966–1979. doi: 10.1016/S0006-3495(95)80374-7. [DOI] [PMC free article] [PubMed] [Google Scholar]
  60. Pinter IJ, van Soest AJ, Bobbert MF, Smeets JBJ. Conclusions on motor control depend on the type of model used to represent the periphery. Biol Cybern. 2012;106(8):441–451. doi: 10.1007/s00422-012-0505-7. [DOI] [PubMed] [Google Scholar]
  61. Pratt J, Dilworth P, Pratt G (1997) Virtual model control of a bipedal walking robot. In: Proceedings of the international conference on robotics and automation, vol 1. IEEE, pp 193–198
  62. Pratt J, Pratt G (1998) Intuitive control of a planar bipedal walking robot. In: Proceedings of the international conference on robotics and automation, vol 3. IEEE, pp 2014–2021
  63. Prescott TJ, Redgrave P, Gurney K. Layered control architectures in robots and vertebrates. Adapt Behav. 1999;7(1):99–127. [Google Scholar]
  64. Rockenfeller R, Günther M. Hill equation and Hatze’s muscle activation dynamics complement each other: enhanced pharmacological and physiological interpretability of modelled activity-pCa curves. J Theor Biol. 2017;431:11–24. doi: 10.1016/j.jtbi.2017.07.023. [DOI] [PubMed] [Google Scholar]
  65. Rockenfeller R, Günther M. Inter-filament spacing mediates calcium binding to troponin: a simple geometric-mechanistic model explains the shift of force-length maxima with muscle activation. J Theor Biol. 2018;454:240–252. doi: 10.1016/j.jtbi.2018.06.009. [DOI] [PubMed] [Google Scholar]
  66. Rockenfeller R, Günther M, Schmitt S, Götz T. Comparative sensitivity analysis of muscle activation dynamics. Comput Math Methods Med. 2015;2015:585409. doi: 10.1155/2015/585409. [DOI] [PMC free article] [PubMed] [Google Scholar]
  67. Rozendaal LA, van Soest AJ (2005) Joint stiffness requirements in a multi-segment stance model. In: Proceedings of the XXth congress of the ISB, Cleveland, Ohio, p 622
  68. Rupp T, Ehlers W, Karajan N, Günther M, Schmitt S. A forward dynamics simulation of human lumbar spine flexion predicting the load sharing of intervertebral discs, ligaments, and muscles. Biomech Model Mechanobiol. 2015;14(5):1081–1105. doi: 10.1007/s10237-015-0656-2. [DOI] [PubMed] [Google Scholar]
  69. Schmitt S, Günther M, Haeufle DFB. The dynamics of the skeletal muscle: a systems biophysics perspective on muscle modeling with the focus on Hill-type muscle models. GAMM-Mitteilungen. 2019;42(3):e201900013. [Google Scholar]
  70. Scholz JP, Schöner G. The uncontrolled manifold concept: identifying control variables for a functional task. Exp Brain Res. 1999;126(3):289–306. doi: 10.1007/s002210050738. [DOI] [PubMed] [Google Scholar]
  71. Shampine L, Gordon M. Computer solution of ordinary differential equations: the initial value problem. San Francisco: W.H. Freeman & Co.; 1975. [Google Scholar]
  72. Sherman MA, Seth A, Delp SL (2013) What is a moment arm? Calculating muscle effectiveness in biomechanical models using generalized coordinates. In: 9th international conference on multibody systems, nonlinear dynamics, and control, vol 7B. pp DETC2013–13633 [DOI] [PMC free article] [PubMed]
  73. Smith JW. The forces operating at the human ankle joint during standing. J Anat. 1957;91(4):545–64. [PMC free article] [PubMed] [Google Scholar]
  74. Stanev D, Moustakas K. Stiffness modulation of redundant musculoskeletal systems. J Biomech. 2019;85:101–107. doi: 10.1016/j.jbiomech.2019.01.017. [DOI] [PubMed] [Google Scholar]
  75. Stollenmaier K, Ilg W, Haeufle DFB. Predicting perturbed human arm movements in a neuro-musculoskeletal model to investigate the muscular force response. Front Bioeng Biotechnol. 2020;8:308. doi: 10.3389/fbioe.2020.00308. [DOI] [PMC free article] [PubMed] [Google Scholar]
  76. Tarbouriech S, Turner M. Anti-windup design: an overview of some recent advances and open problems. IET Control Theory Appl. 2009;3(1):1–19. [Google Scholar]
  77. Todorov E, Li W, Pan X. From task parameters to motor synergies: a hierarchical framework for approximately optimal control of redundant manipulators. J Robot Syst. 2005;22(11):691–710. doi: 10.1002/rob.20093. [DOI] [PMC free article] [PubMed] [Google Scholar]
  78. Tresch MC, Saltiel P, Bizzi E. The construction of movement by the spinal cord. Nat Neurosci. 1999;2(2):162–167. doi: 10.1038/5721. [DOI] [PubMed] [Google Scholar]
  79. Tseng Y-W, Diedrichsen J, Krakauer JW, Shadmehr R, Bastian AJ. Sensory prediction errors drive cerebellum-dependent adaptation of reaching. J Neurophysiol. 2007;98(1):54–62. doi: 10.1152/jn.00266.2007. [DOI] [PubMed] [Google Scholar]
  80. van Soest AJ, Bobbert MF. The contribution of muscle properties in the control of explosive movements. Biol Cybern. 1993;69(3):195–204. doi: 10.1007/BF00198959. [DOI] [PubMed] [Google Scholar]
  81. Wiener N. Cybernetics, or control and communication in the animal and the machine. London: Technology Press; 1948. [Google Scholar]
  82. Wolpert D, Kawato M. Multiple paired forward and inverse models for motor control. Neural Netw. 1998;11(7):1317–1329. doi: 10.1016/s0893-6080(98)00066-5. [DOI] [PubMed] [Google Scholar]
  83. Wolpert DM. Computational approaches to motor control. Trends Cogn Sci. 1997;1(6):209–216. doi: 10.1016/S1364-6613(97)01070-X. [DOI] [PubMed] [Google Scholar]
  84. Wolpert DM, Doya K, Kawato M. A unifying computational framework for motor control and social interaction. Philos Trans R Soc Lond Ser B Biol Sci. 2003;358(1431):593–602. doi: 10.1098/rstb.2002.1238. [DOI] [PMC free article] [PubMed] [Google Scholar]
  85. Wolpert DM, Flanagan JR. Motor prediction. Curr Biol. 2001;11(18):R729–R732. doi: 10.1016/s0960-9822(01)00432-8. [DOI] [PubMed] [Google Scholar]

Associated Data

This section collects any data citations, data availability statements, or supplementary materials included in this article.

Supplementary Materials

Data Availability Statement

The underlying data from the plots in Figs. 58 are available on request to the authors.


Articles from Biological Cybernetics are provided here courtesy of Springer

RESOURCES