Brought to you by:
Paper

Task-space separation principle: a force-field approach to motion planning for redundant manipulators

and

Published 3 February 2017 © 2017 IOP Publishing Ltd
, , Citation Paolo Tommasino and Domenico Campolo 2017 Bioinspir. Biomim. 12 026003 DOI 10.1088/1748-3190/aa5558

1748-3190/12/2/026003

Abstract

In this work, we address human-like motor planning in redundant manipulators. Specifically, we want to capture postural synergies such as Donders' law, experimentally observed in humans during kinematically redundant tasks, and infer a minimal set of parameters to implement similar postural synergies in a kinematic model. For the model itself, although the focus of this paper is to solve redundancy by implementing postural strategies derived from experimental data, we also want to ensure that such postural control strategies do not interfere with other possible forms of motion control (in the task-space), i.e. solving the posture/movement problem.

The redundancy problem is framed as a constrained optimization problem, traditionally solved via the method of Lagrange multipliers. The posture/movement problem can be tackled via the separation principle which, derived from experimental evidence, posits that the brain processes static torques (i.e. posture-dependent, such as gravitational torques) separately from dynamic torques (i.e. velocity-dependent). The separation principle has traditionally been applied at a joint torque level. Our main contribution is to apply the separation principle to Lagrange multipliers, which act as task-space force fields, leading to a task-space separation principle. In this way, we can separate postural control (implementing Donders' law) from various types of tasks-space movement planners.

As an example, the proposed framework is applied to the (redundant) task of pointing with the human wrist. Nonlinear inverse optimization (NIO) is used to fit the model parameters and to capture motor strategies displayed by six human subjects during pointing tasks. The novelty of our NIO approach is that (i) the fitted motor strategy, rather than raw data, is used to filter and down-sample human behaviours; (ii) our framework is used to efficiently simulate model behaviour iteratively, until it converges towards the experimental human strategies.

Export citation and abstract BibTeX RIS

1. Introduction

Daily activities, such as drinking a cup of coffee, often involve the coordination of multiple and redundant degrees of freedom (DOF) which provide flexibility in executing tasks using various postures. How the brain might manage this, seemingly without effort, is still an open question in neuroscience as well as in robotics, where humanoid robots are now starting to migrate from research labs to factories and homes. In this work, we shall be concerned with two different but interrelated issues in computational neuroscience: the redundancy problem [4] and the posture/movement problem [42]. In other words, how to implement postural control, i.e. select an optimal posture out of a set of redundant choices, without interfering with movements intended to solve a specific task? Pursuing a principled and bioinspired approach, we propose to blend a minimum principle framework, used in robotics to solve redundancy, with the separation principle, derived from neuroscientific evidence, which allows to separate postural control from motion generation.

Whenever multiple postures are possible to achieve a given task, many experimental scenarios highlighted the presence of a specific type of postural synergy: a stereotypical coordination of the redundant DOF associating a unique posture to a given task. For historical reasons this is often referred to as Donders' law (DL) since, more than a century ago, Donders (1847) showed that for any steady gazing direction (task), the human eye assumes the same combination of elevation, azimuth, and torsion angles (posture). Two decades later, Listing and Helmholtz found that Donders' law for the eye can simply be described as a plane (Listing's law) [47].

1.1. Donders' law, holonomic constraints and optimality

In an attempt to derive general principles from experimental results, the evidence gathered in various domains and scenarios suggests that the brain implements Donders' law as a flexible family of holonomic constraints, neurally modulated under some form of velocity control [14, 19] to solve redundancy as well to implement some optimality purpose which might vary based on experimental scenarios and physiological conditions [12, 19, 57].

For the human eye, the primary function is vision. As we gaze around, the brain receives images of the world with a certain amount of torsion. Donders' law precisely assigns a unique torsion for each gazing direction. In other words, torsion is path-independent, a direct consequence of the holonomic nature of Donders' law. On the one hand, ensuring a path-independent torsion makes life simpler for the brain, from a computational point of view. Imagine if when gazing straight ahead, the image on our retina appears rotated differently every time, depending on previous paths of our gazing. On the other hand, a path-independent torsion also prevents ending, painfully, with our eye balls tilted upside down due to accumulation of torsion, after gazing along a closed loop. This issue is well known to roboticists since the 80s as the problem of non-repeatability affecting redundant manipulators [31] (see figure 1). As noted by Ceylan et al [12], Listing's law (which is a specific form of Donders' law) is optimal for pointing as it induces minimal rotations without accumulating torsion, in compliance with holonomic constraints. Ceylan et al also noted that this is not the minimum achievable rotation strategy but, if one were to implement a minimum-rotation strategy, the torsion would accumulate, which is not compatible with holonomic constraints. Similar considerations apply to the head and arm in relation to gravity [19]. In general, one can say that absolute minimization principles, also known as transport models [56], (e.g. minimum-torque-change [55], minimum-work [46], minimum-variance [24] etc..), are not compatible with Donders' law, as they unavoidably predict torsion accumulation [1].

Figure 1.

Figure 1. Examples of holonomic (a) and nonholonomic (b) solutions to the inverse kinematic problem. While forward kinematics (FK) is well defined in both cases, only the holonomic case allows identifying an inverse kinematics solution via Donders' law. In addition, holonomic constraints (a) guarantee repeatable solutions, i.e. closed paths in task-space correspond to closed paths in joint-space. In general, non-holonomic constraints (b) lead to non-integrable solutions, i.e. torsion accumulation.

Standard image High-resolution image

On the other hand, Donders' law can be captured by a static, constrained optimization, as shown for example for the human wrist [11]. Given an intrinsic (i.e. in the joint-space) cost function one can find the posture within the null-space of a specific task minimizing the cost, i.e. the optimization is constrained to the set of postures satisfying a given task (e.g. all the postures which allow pointing in a specific direction). The cost function could be either a physical potential due, for example, to gravitational or elastic joint torques, or a virtual potential such as a discomfort function penalizing postures too close to joint limits [15, 30]. However, for practical implementation in a robot and also for iterative simulations, this formulation has two shortcomings: (i) it is in general not easy to compute the null-space, and numerical techniques must be deployed; (ii) this approach predicts optimal postures but it does not tell us how to generate motion, which brings up the posture/movement problem [42], i.e. how to make sure that postural control mechanisms do not interfere with motion general strategies?.

The equilibrium point hypothesis (EPH) is a well-known posture-based approach to human motor control and it posits that movements are achieved by gradually shifting the equilibrium position of the hand from the starting to the ending position [21]. While the EPH proposes a solution to the posture/movement problem, it does not explicitly address the kinematic redundancy problem [23], i.e. it is not clear how the brain might determine the final posture by explicitly computing the corresponding muscular equilibrium points.

Furthermore, at least for the oculomotor system, it is long known that movements are generated by velocity commands [14, 48] rather than by equilibrium-point commands. Also, when it comes to head and arm movements, Ceylan et al [12] as well as Medendorp et al [19] propose that control comes in a form of a velocity-control box, capable of modulating various strategies (i.e. Donders' surfaces) via a set of parameters.

1.2. Force-Fields and separation principle

Another approach, considered an extension of the EPH, is the so called passive motion paradigm (PMP) [36, 37, 54]. The standard PMP comes in two forms, to be detailed below and in appendix. Only one form is compatible with Donder's law, in that it does not produce accumulation of torsion, however, the postural part interferes with the movement generation (as detailed below and in appendix).

An interesting feature of the PMP is that force fields are used to plan both motions and postures [37, 54]. Force fields, rather than velocity fields, offer the opportunity for applying the so-called separation principle [23]. Experimental evidence shows that the human brain processes static (or configuration-dependent) and dynamic (or velocity-dependent) force fields separately [2, 25, 29, 41]. Because static forces such as gravitational or elastic fields are predominant during slow movements and are not affected by movement speed, the separation principle [23] has been proposed as a simplifying control strategy for the brain to learn new movements [41], to efficiently time-scale arm trajectories [2, 25] and to robustly cope with the effect of gravity in different environments [29].

Guigon reformulated the optimal feedback control framework [50] according to the separation principle and the new framework has been applied to both computational human motor control [23] and to bioinspired motion planning for robotics [49]. In particular, by applying the separation principle at the joint-space level, Guigon suggested splitting the control input $\boldsymbol{\tau }$ (joint torques) into two different contributions:

Equation (1)

where $\boldsymbol{\tau }_{{0}}(t)$ accounts for static effects (such as gravitational or elastic torques) and $\boldsymbol{\tau }_{{\text{dyn}}}(t)$ is the solution to the optimal control problem in the absence of static torques [23].

1.3. Task-space separation principle

In its current formulation and implementation, the separation principle is applied at the joint-space level and it is assumed that static contributions (either due to the gravity or to elastic fields) are perfectly compensated by the brain (or by the robot controller) so that they can be removed from the dynamic equation of the limb under control [23, 49]. Furthermore, to the best of our knowledge, previous computational models framed according to the separation principle have only addressed gravitational torques as static contributions influencing the arm dynamics. However, especially in the presence of kinematic redundancy, intrinsic potential functions have been shown to account for postural control [15] and Donders synergies [11]. In particular, Cruse [15] showed that, when mechanical springs are physically connected between forearm and upper arm of a subject, thus adding an external elastic potential, the brain adopts a configuration-dependent strategy to reconfigure the arm so as to minimize the external elastic potential.

The novelty of our approach is in applying the separation principle only to the task-space, thus deriving a task-space force field which produces a partial compensation of joint torques due, for example, to gravitational or elastic potentials. The advantage of using force-fields in task-space rather than in joint-space, is that joint torques are now left free to act in the null-space, driving the posture towards minima of the potential while maintaining task-space objectives. This captures the essence of postural synergies such as Donders' law which can now be seen as generated from a joint-space potential and a task-space force field.

The last question to be answered is how to use the task-space separation principle, which applies to forces, in velocity-control schemes. As shown in the next section, velocity-resolution control schemes can also be framed as a local (i.e. not a transport model) constrained minimization problem. Constrained optimization problems are typically solved via Lagrange multipliers which, as shown next, can be seen as task-space force fields. We can then apply the task-space separation principle to Lagrange multipliers.

2. Methods

2.1. Task-space separation principle and constrained optimization

In this section, we will apply the separation principle to redundant kinematic problems within the framework of velocity resolution control. Dynamic problems can be dealt with Gauss's Principle of least constraint [7, 17, 44]. In both cases, one faces a constrained optimization problem which is typically solved via Lagrange multipliers. Although shown here in the kinematic framework of velocity resolution control, our approach boils down to applying the separation principle to Lagrange multipliers. In this sense, it can be generalized to dynamic problems as well [17, 44].

2.1.1. Lagrange multipliers as task-space force fields.

Consider an n-dimensional, kinematically redundant manipulator with configuration vector (joint angles) $\boldsymbol{q}\in \mathcal{Q}\subset {{\mathbb{R}}^{n}}$ and an m-dimensional task-space $\boldsymbol{x}\in \mathcal{X}\subset {{\mathbb{R}}^{m}}$ , with m  <  n, defined by a smooth forward kinematics:

Equation (2)

A typical problem is finding a joint-space configuration $\boldsymbol{q}$ leading to a given desired task-space configuration $\boldsymbol{x}$ , i.e. as in (2). For kinematically redundant manipulators, characterized by m  <  n, this is typically an under-determined problem as there often exist infinite joint-space configurations solving a given task. Due to nonlinearities, finding the analytical inverse to equation (2) is in general not a viable solution. A typical approach consists of operating on a linearized problem, i.e. considering the relationship between task velocities $\overset{\centerdot}{{\boldsymbol{x}}}\,$ and joint-space velocities $\overset{\centerdot}{{\boldsymbol{q}}}\,$ via the task Jacobian J

Equation (3)

where J is an $m\times n$ matrix and which, hereafter, shall be assumed of full rank, i.e. $\dim(\,J)=m$ . Equation (3) can be interpreted as a kinematic constraint (i.e. a given task-space velocity) applied at the end-effector.

In our previous work [11], we performed a task-constrained minimization of a static cost function $h\left(\boldsymbol{q}\right)$ , analogous of an elastic potential, and this allowed for the determination of optimal postures among those compatible with a given task. However, this formulation only considers static postures and does not address movement. We shall now consider a dynamic cost function and consider the analogous of a viscoelastic power as this will also include velocities and determine optimal motions as well. Following [20], a unique and optimal solution for $\overset{\centerdot}{{\boldsymbol{q}}}\,$ can be formulated as a constrained optimization problem:

Equation (4)

where $W\left(\boldsymbol{q}\right)$ corresponds to a positive-definite symmetric matrix for the joint-space velocities (defining thus a metric, or dot-product, for the space $\mathcal{Q}$ ) and $h\left(\boldsymbol{q}\right)$ is posture-dependent cost function such has those previously shown to account for human postural control [15] and kinematic synergies [11]. Similarly, the rate of change of the potential (i.e. power, in a mechanical analogy) $\frac{\text{d}h}{\text{d}t}$ can be rewritten via the gradient operator (i.e. a torque, in joint-space) as:

Equation (5)

Formally, the original constrained-optimal problem can be formulated as an unconstrained optimization over an augmented state ($\overset{\centerdot}{{\boldsymbol{q}}}\,;\boldsymbol{\lambda }$ ) of the following function

Equation (6)

where $\boldsymbol{\lambda }={{\left[{{\lambda}_{1}},{{\lambda}_{2}},...,{{\lambda}_{m}}\right]}^{T}}$ is the vector of so-called Lagrange multipliers (LM). Local minima or maxima of unconstrained problems can be determined by setting

Equation (7)

where ${{\nabla}_{\overset{\centerdot}{{\boldsymbol{q}}}\,}}=\left[\begin{array}{*{35}{l}} \frac{\partial}{\partial {{\overset{\centerdot}{{q}}\,}_{1}}} & \frac{\partial}{\partial {{\overset{\centerdot}{{q}}\,}_{2}}} & \ldots & \frac{\partial}{\partial {{\overset{\centerdot}{{q}}\,}_{n}}} \end{array}\right]$ and ${{\nabla}_{\boldsymbol{\lambda }}}=$ $\left[\begin{array}{*{35}{l}} \frac{\partial}{\partial {{\lambda}_{1}}} & \frac{\partial}{\partial {{\lambda}_{2}}} & \ldots & \frac{\partial}{\partial {{\lambda}_{m}}} \end{array}\right]$ represent, respectively, the gradient operators over the joint velocities $\overset{\centerdot}{{\boldsymbol{q}}}\,$ (n-dimensional) and over the vector of LM $\boldsymbol{\lambda }$ (m-dimensional).

Considering that terms such as ${{\nabla}_{\overset{\centerdot}{{\boldsymbol{q}}}\,}}\overset{\centerdot}{{\boldsymbol{q}}}\,$ and ${{\nabla}_{\boldsymbol{\lambda }}}\boldsymbol{\lambda }$ are just identity matrices (In and Im respectively, n- and m-dimensional) and that ${{\nabla}_{\boldsymbol{\lambda }}}H\left(\overset{\centerdot}{{\boldsymbol{x}}}\,;\boldsymbol{\lambda }\right)=0$ simply returns the original constraint $\overset{\centerdot}{{\boldsymbol{x}}}\,-J\overset{\centerdot}{{\boldsymbol{q}}}\,=0$ , the general system of equation (7) can be simplified and rewritten as

Equation (8)

Remark (LM as task-space force fields). It should be noted that, in equation (8), if $h\left(\boldsymbol{q}\right)$ represents a mechanical potential, for example due to gravity or elastic fields (e.g. generated by springs at each joint), then W can be interpreted as mechanical damping (e.g. friction at the joints) and the term $W\overset{\centerdot}{{\boldsymbol{q}}}\,$ can be interpreted as damping torque1 (in the joint-space). For example in the case of a redundant manipulator, if $\overset{\centerdot}{{\boldsymbol{q}}}\,$ and ${{\nabla}_{\boldsymbol{q}}}h$ can be interpreted as joint torques, so is the term ${{J}^{T}}\boldsymbol{\lambda }$ in the first of (8). The Jacobian matrix J not only maps joint velocities into task velocities, as in (3), but it also maps (via its transpose JT) task-space forces into joint-space torques and, therefore, the vector of Lagrange multipliers $\boldsymbol{\lambda }$ is nothing but a posture-dependent force field in task-space.

In traditional 'velocity-resolution control', the task velocity $\overset{\centerdot}{{\boldsymbol{x}}}\,$ is supposed to be known and this allows to uniquely determine the augmented state as function of the task velocity ($\overset{\centerdot}{{\boldsymbol{x}}}\,$ ) and joint torques ${{\nabla}_{\boldsymbol{q}}}h$ : from (8), since W is invertible, we can rewrite the first as $\overset{\centerdot}{{\boldsymbol{q}}}\,={{W}^{-1}}{{J}^{T}}\boldsymbol{\lambda }-{{W}^{-1}}{{\nabla}_{\boldsymbol{q}}}h$ which substituted in the second gives $\overset{\centerdot}{{\boldsymbol{x}}}\,=J{{W}^{-1}}{{J}^{T}}\boldsymbol{\lambda }-J{{W}^{-1}}{{\nabla}_{\boldsymbol{q}}}h$ , which allows to determine $\boldsymbol{\lambda }$ . Then, from the first of (8) one derives $\overset{\centerdot}{{\boldsymbol{q}}}\,$ as well:

Equation (9)

Equation (10)

where G ($n\times m$ matrix) is one of the possible weighted generalized inverses [5] satisfying JG  =  Im, defined as:

Equation (11)

and:

Equation (12)

represents the Cartesian damping as perceived in the task-space, whenever W is interpreted as joint damping, for example, for a mechanical manipulator. While equation (9) comprises many forms of velocity-resolution control, as highlighted by English and Maciejewski [20], to the authors' knowledge, (10) has never been explicitly provided (albeit surely considered by other authors to derive (9)). The reason is that the vector of LM ($\boldsymbol{\lambda }$ ) is usually considered as a dummy variable, while here we are going to stress its physical representation, as shown below.

2.1.2. Postural control—Donders' law from static task-space force fields.

Inspired by the separation principle, the Lagrange multiplier $\boldsymbol{\lambda }$ in (10) can now be rewritten as a composition of dynamic ($\boldsymbol{\lambda }_{{\text{dyn}}}$ ) and static ($\boldsymbol{\lambda }_{{0}}$ ) force-fields:

Equation (13)

The mechanical interpretation is straightforward, whenever W is regarded as joint damping of a manipulator:

  • Posture: the static term $\boldsymbol{\lambda }_{{0}}$ represents the (posture-dependent) task-space force necessary to block any effect in the task-space due joint torques ${{\nabla}_{\boldsymbol{q}}}h$ while leaving the same joint torques free to act in the null-space. Leading to constrained-optimal postures.
  • Movement: the dynamic term $\boldsymbol{\lambda }_{{\text{dyn}}}$ is the task-space force required to impose a velocity $\overset{\centerdot}{{\boldsymbol{x}}}\,$ onto the end-effector and overcome the Cartesian damping B.

The postural effects of $\boldsymbol{\lambda }_{{0}}$ can be seen during static task conditions, i.e. $\overset{\centerdot}{{\boldsymbol{x}}}\,=0$ , when the Lagrange multiplier reduces to its static component:

Equation (14)

or alternatively, from (10), one obtains that $\boldsymbol{\lambda }=\boldsymbol{\lambda }_{{0}}$ whenever $\overset{\centerdot}{{\boldsymbol{x}}}\,=0$ , i.e. $\boldsymbol{\lambda }_{{0}}$ is the value of task-space force $\boldsymbol{\lambda }$ to be applied to maintain the end-effector stationary ($\overset{\centerdot}{{\boldsymbol{x}}}\,=0$ ). It should be noted that in a redundant manipulator one can have $\overset{\centerdot}{{\boldsymbol{x}}}\,=0$ even if $\overset{\centerdot}{{\boldsymbol{q}}}\,\ne 0$ . In other words, $\boldsymbol{\lambda }_{{0}}$ blocks the effects of the torque ${{\nabla}_{\boldsymbol{q}}}h$ on the task-space but leaves it unconstrained in the null-space allowing the manipulator to move towards a task-constrained minimum of the potential. This means that, once a potential function $h\left(\boldsymbol{q}\right)$ is defined, Donders' law can be conveniently captured by a static task-space force field $\boldsymbol{\lambda }_{{0}}$ .

This perspective offers several advantages. The first advantage is that, the task-space has a lower dimensionality than the joint-space, in particular forces which live in the task-space (as opposed to torques in joint-space) naturally leave the null-space unconstrained. The second advantage is that, viewing postural control as a (task-space) force field leads to generalization of velocity-resolution control framework, as one can then 'softly' induce a Donders' law without freezing the manipulator since additional dynamic forces $\boldsymbol{\lambda }_{{\text{dyn}}}$ can be superimposed and motion can be generated, either in accordance with the Donders' constraint or away from it. This latter feature actually leads to the main advantage in terms of bioinspired control, i.e. the flexibility to comply with or to violate Donders' law. Admiraal et al [1] in fact showed that, for arm movements, neither postural models or transport models alone can explain experimental data and the authors concluded that ' a strict distinction between posture-based models and trajectory-based models is an oversimplification' [1]. In our case, if the dynamic force field is exactly $\boldsymbol{\lambda }_{{\text{dyn}}}=B\overset{\centerdot}{{\boldsymbol{x}}}\,$ , then one obtains exactly equation (10). Next section will discuss possible generalizations of the model in terms of motion planning alternatives.

2.1.3. Task-space motion planning: a generalization.

It should be noted that the system (8) and the equations (9)–(10) are equivalent (as the latter are solutions of the former). The system (8) can be captured and, at the same time, more easily generalized by the block diagram in figure 2 where: the task-space force $\boldsymbol{\lambda }$ is now explicitly separated into $\boldsymbol{\lambda }_{{\text{dyn}}}+\boldsymbol{\lambda }_{{0}}$ . In turn, $\boldsymbol{\lambda }_{{\text{dyn}}}$ can now be generalized, by the block $\boldsymbol{\Pi}\left(\boldsymbol{x}_{{d}},\boldsymbol{x}\right)$ , to implement different types of task-space motion planners, as detailed in table 1.

Figure 2.

Figure 2. Posture and Motion planning via task-space separation principle. For a redundant manipulator with joint-space damping W and subjected to joint-space torques ${{\nabla}_{\boldsymbol{q}}}h$ , derived from a potential field $h\left(\boldsymbol{q}\right)$ (either a physical field, e.g. due to gravitational and/or elastic effects, or a virtual biomechanical cost function, such as discomfort), a static, task-space, posture-dependent force field $\boldsymbol{\lambda }_{{0}}$ is used for postural control. In particular, $\boldsymbol{\lambda }_{{0}}$ blocks any effect of the joint torques ${{\nabla}_{\boldsymbol{q}}}h$ in the task-space while leaving the manipulator free in the null-space, i.e. allowing to reach task-constrained minima of the potential $h\left(\boldsymbol{q}\right)$ . To perform motor tasks, an additional task-space force field $\boldsymbol{\lambda }_{{\text{dyn}}}$ is superimposed which can implement different motion planning schemes $ \Pi \left(\boldsymbol{x}_{{d}},\boldsymbol{x}\right)$ , as shown in table 1.

Standard image High-resolution image

Table 1. Possible implementations of the control schema in figure 2.

No. $\boldsymbol{\lambda }_{{\text{dyn}}}=\boldsymbol{\Pi}\left(\boldsymbol{x}_{{d}},\boldsymbol{x}\right)$ $\boldsymbol{\lambda }_{{0}}$ Notes
(1) $B{{\overset{\centerdot}{{\boldsymbol{x}}}\,}_{d}}$ equation (14) Open-loop velocity resolution control [20] as in equation (13)
(2) $B{{\overset{\centerdot}{{\boldsymbol{x}}}\,}_{d}}+K\left(\boldsymbol{x}_{{d}}-\boldsymbol{x}\right)$ equation (14) Closed-loop velocity resolution control [13, 40]
(3) $K\left(\boldsymbol{x}_{{d}}-\boldsymbol{x}\right)$ $\mathbf{0}$ PMP [36, 37]
(4) $K\left(\boldsymbol{x}_{{d}}-\boldsymbol{x}\right)$ equation (14) $\boldsymbol{\lambda }_{{0}}$ -PMP (extension of PMP proposed in this work)

Velocity resolution control in the form of (9) is an open-loop control policy. Given a desired task-space trajectory $\boldsymbol{x}_{{d}}(t)$ , one can always derive the desired task-space velocity ($\overset{\centerdot}{{\boldsymbol{x}}}\,={{\overset{\centerdot}{{\boldsymbol{x}}}\,}_{d}}$ ) and determine via (9) the joint-space velocities $\overset{\centerdot}{{\boldsymbol{q}}}\,$ to be commanded at each joint, see the controller $\boldsymbol{\lambda }_{{\text{dyn}}}=B\overset{\centerdot}{{\boldsymbol{x}_{{\boldsymbol{d}}}}}\,$ in table 1-1. In practical applications, open-loop schemes can easily result into instability and/or unpredictable robot behaviour in presence of errors in the robot Jacobian and/or mechanical perturbations arising from the environment. Therefore, in common practice [8, 13], the task-space motion planner is usually augmented with a feedback control term $B{{\overset{\centerdot}{{\boldsymbol{x}}}\,}_{d}}+K\left(\boldsymbol{x}_{{d}}-\boldsymbol{x}\right)$ (see table 1-2), to correct for deviations from the desired end-effector trajectory $\boldsymbol{x}_{{d}}(t)$ .

It is worth noting that the original PMP models [36, 37] do not include postural control terms such as $\boldsymbol{\lambda }_{{0}}$ and, without such term, the presence of a potential $h\left(\boldsymbol{q}\right)$ would interfere with the task itself (see appendix). For example, consider a manipulator with 'intrinsic' springs at each joint (leading to an elastic potential $h\left(\boldsymbol{q}\right)$ ) whose end-effector (located at $\boldsymbol{x}$ in task-space) is pulled towards a target $\boldsymbol{x}_{{d}}$ by an 'extrinsic' spring K, leading to the control law $K\left(\boldsymbol{x}_{{d}}-\boldsymbol{x}\right)$ , as in table 1. Due to a competition between intrinsic and extrinsic springs, the equilibrium will, in general, not coincide with $\boldsymbol{x}_{{d}}$ , i.e. will not be able to comply with the desired task (see appendix for details). Our framework in figure 2 when the task-space motion controller is as given in table 1-4, i.e. $\boldsymbol{\lambda }_{{\text{dyn}}}=K\left(\boldsymbol{x}_{{d}}-\boldsymbol{x}\right)$ and $\boldsymbol{\lambda }_{{0}}$ as in equation (14), can be seen as a novel extension of the original PMP (represented by the dashed box in figure 2) and will be named throughout this work as $\boldsymbol{\lambda }_{{0}}$ -PMP.

2.2. Application to a redundant task: pointing with the wrist

This section shows an application of the proposed framework for simulating a human wrist performing a redundant pointing task. The wrist kinematic model used in this paper was previously described in [11] and the main equations are reported in what follows. The main difference with previous work is that in [11], postures were predicted for any desired pointing directions but it was not clear how to actually move from target to target. Our approach based on task-space separation principle allows for (i) postures to be captured via $\boldsymbol{\lambda }_{{0}}$ as in (13); and (ii) motions to be generated via a specific choice of $\boldsymbol{\Pi}\left(\boldsymbol{x}_{{d}},\boldsymbol{x}\right)=K\left(\boldsymbol{x}_{{d}}-\boldsymbol{x}\right)$ , as shown in figure 3.

Figure 3.

Figure 3. An example of $\boldsymbol{\lambda }_{{0}}$ -PMP for planning movement and postures in a redundant arm. (a) Mechanical analogy. (b) Block schema. The $\boldsymbol{\lambda }_{{0}}$ -PMP is a particular instance of the more general framework shown in figure 2 with $ \Pi \left(\boldsymbol{x}_{{d}},\boldsymbol{x}\right)=K\left(\boldsymbol{x}_{{d}}-\boldsymbol{x}\right)$ and ${{\nabla}_{\boldsymbol{q}}}h={{K}^{J}}\left(\boldsymbol{q}-\boldsymbol{q}_{{0}}\right)$ . The $\boldsymbol{\lambda }_{{0}}$ force compensates for the task-space components of the elastic torque $\boldsymbol{\tau }_{{\text{el}}}$ that is therefore left free to act only in the manipulator null-space.

Standard image High-resolution image

In this paper, with the term wrist, we refer to the biomechanical complex made of radial-ulnar deviation (RUD), flexion-extension (FE) and prono-supination (PS). The PS joint is the most proximal and, unlike RUD and FE, it is not anatomically confined to the wrist but belongs to the wrist-forearm complex. As shown in figure 4, pointing tasks with the wrist can be analysed in three different spaces: the 2D task-space on which desired pointing targets are defined, the 3D endpoint space describing the wrist orientation and the 3D joint-space characterised by the amount of rotation for each degree-of-freedom ($\boldsymbol{q}:={{\left[{{q}^{\text{PS}}}~{{q}^{\text{FE}}}~{{q}^{\text{RUD}}}\right]}^{T}}$ ). Because the joint-space has one more DOF than the task-space, the pointing task is redundant, i.e. there are infinite wrist orientations that point to the same 2D target.

Figure 4.

Figure 4. Kinematic spaces involved in wrist pointing tasks: A wrist 3D configuration is captured by sensors which typically return a $3\times 3$ orientation matrix R. Such a matrix can be equivalently expressed in terms of rotation vectors $\boldsymbol{r}$ or joint-space $\boldsymbol{q}$ , both reprentations will be used in the analysis. Finally, a 3D wrist orientation is mapped onto the 2D task, expressed in screen coordinates $\boldsymbol{x}$ , via a forward kinematics map $\boldsymbol{x}=FK\left(\boldsymbol{q}\right)$ .

Standard image High-resolution image

2.2.1. Kinematic spaces for the human wrist.

The wrist orientation in the endpoint space is described via a $3\times 3$ rotation matrix R belonging to Special Orthogonal Group SO(3). The columns of such matrix define the orientation of the axes of a moving frame attached to wrist $\left\{\boldsymbol{e}_{{1}};\boldsymbol{e}_{{2}};\boldsymbol{e}_{{3}}\right\}$ with respect to a fixed frame $\left\{\boldsymbol{e}_{{x}};\boldsymbol{e}_{{y}};\boldsymbol{e}_{{z}}\right\}$ . An equivalent but more compact way to describe the wrist orientation is by means of a 3D rotation vector $\boldsymbol{r}=\phi \,\boldsymbol{n}$ which is defined as a rotation by an amount ϕ about the axis $\boldsymbol{n}$ ($|\boldsymbol{n}|\,=1$ ). It is possible to convert a rotation matrix R into the corresponding rotation vector via the matrix logarithm:

Equation (15)

Conversely, given a rotation vector $\boldsymbol{r}$ , the corresponding rotation matrix R is computed via the Rodrigues'formula [18]:

Equation (16)

where $\widehat{\boldsymbol{r}}$ is the skew-symmetric matrix representation of the rotation vector $\boldsymbol{r}$ .

While the proposed computational framework only needs forward mappings, the experimental pointing task with humans involves motion sensors that measure the 3D orientation of the wrist (in terms of rotation matrices) [11]; therefore an inverse mapping is necessary to convert rotation vectors into joint angles (see figure 4):

Equation (17)

Although, in general the solution to equation (17) is not unique, the biomechanical range of motions of the wrist (see [11]) yields a unique joint angle configuration for any reachable orientation. We make use of this inverse mapping in section 2.3 for the nonlinear inverse optimization algorithm.

2.2.2. Forward kinematics for pointing tasks.

For any wrist posture $\boldsymbol{q}:={{\left[{{q}^{\text{PS}}}~{{q}^{\text{FE}}}~{{q}^{\text{RUD}}}\right]}^{T}}$ in joint-space, the orientation R of a moving frame attached to wrist with respect to a fixed frame is computed as the ordered product of three rotations:

Equation (18)

and the corresponding rotation vector can be computed with equation (15).

We consider a virtual hand-held laser aligned with the axis $\boldsymbol{e}_{{1}}$ of the moving frame. The pointing task involves targets presented on a vertical ${{x}_{1}}{{x}_{2}}$ planar screen at unit distance from the wrist along $\boldsymbol{e}_{{x}}$ and with the y-axis of the screen directed as $-\boldsymbol{e}_{{y}}$ . Then, for every pointing direction $\boldsymbol{n}=R\,\boldsymbol{e}_{{x}}$ ($|\boldsymbol{n}|=1$ ) the laser will hit the screen at coordinates:

Equation (19)

This equation defines the forward kinematics for the pointing task (see figure 4) with the task Jacobian defined as equation (3).

2.2.3. Donders' postural synergies for human wrist.

The typical way Donders' law is assessed and quantified is via numerical fitting of experimental data. The motor space for eye, head and wrist (functionally including the forearm DOF) is usually considered as a 3DOF, purely rotational space. Eye/head/wrist postures correspond then to 3D rotations and are usually encoded as points of a 3D space, traditionally expressed in different coordinates such as quaternions, rotation vectors, or Euler angles. Tasks such as gazing/pointing at targets on a screen are two-dimensional but involve three DOF movements, therefore leading to a redundant problem. Existence of a DL is typically demonstrated by showing that a cloud of points (each encoding a 3D posture of eye, head or wrist while gazing/pointing at a set of targets on a screen) can be fitted to a (Donders') surface, in the 3D space of postures. Similar procedures can be applied to the human arm which, however, requires more care in specifying the task, as the arm could be fully extended [27, 32] or with a flexed elbow [19].

It has been shown [10, 11] that pointing with the wrist (at comfortable speed) implies a specific relationship between task-space targets and wrist orientation. In particular, for any desired pointing target the wrist assumes a unique orientation. The set of all wrist orientations measured during a pointing task, can be well approximated with a quadratic Donders' surface:

Equation (20)

where rx,ry,rz are the components of the rotation vector representing a particular wrist orientation. The existence of such a bi-dimensional surface embedded into the 3D configuration space also implies that the three wrist DOFs are not controlled independently but instead they are coupled according to a specific kinematic synergy (or Donders'surface). In [11] it has been shown that Donders-like kinematic synergies can be predicted by solving a static constrained optimization problem (postural model) involving a discomfort function which here is defined as:

Equation (21)

where $\boldsymbol{q}_{{0}}=\left[q_{0}^{\text{PS}}~q_{0}^{\text{FE}}~q_{0}^{\text{RUD}}\right]$ is the most comfortable equilibrium posture $\boldsymbol{q}_{{0}}$ and KJ is a $3\times 3$ symmetric joint stiffness matrix which penalizes postures away from the comfortable equilibrium $\boldsymbol{q}_{{0}}$ . We choose this type of cost model as it is simple, computational effective from an optimization perspective and it is also widely used in robotics [38] and human motor control [15]. The 9-dimensional parameter vector $\boldsymbol{\theta }=\left[K_{11}^{J},~K_{12}^{J},~\ldots,~K_{33}^{J},~{{q}_{0}}^{\text{PS}},~{{q}_{0}}^{\text{FE}},~{{q}_{0}}^{\text{RUD}}\right]$ (note that the $3\times 3$ stiffness matrix KJ is symmetric, therefore it only requires 6 parameters) has all the parameters of the problem which allow capturing the DL strategies, as in [11]. Note that we are not including W in the parameters, as this would rather affect the task trajectories but not the equilibrium postures. A study of the role of W in the predicted behaviours is therefore beyond the scope of this work and will be addressed in future works.

The postural model proposed in [11] can only predict static wrist configurations (postures) and therefore cannot account for motion. Also, in [11] it was not addressed on how to choose the parameter $\boldsymbol{\theta }$ in order to reproduce a specific human synergy. Therefore, the goal of the next sections is to integrate this postural component according to the task-space separation principle in order to generate both motions and equilibrium (static) postures. An inverse optimization algorithm is then presented to estimate the parameter vector $\boldsymbol{\theta }$ from human data.

2.3. Inverse Optimization to capture experimental human motor synergies

As the optimal control framework has become the dominant paradigm in movement science for humans and humanoids [50], there has been a growing body of research in the field of inverse optimal control and inverse optimization with the aim of unveiling the cost functions that the human brain optimizes when generating movements [3, 16, 26, 28, 39]. The nonlinear inverse optimization (NIO) method proposed by Liu et al [34] is particularly appealing to estimate cost functions for complex biomechanical models involving several degrees-of-freedom and for which the equation of the cost function is known in advance. The only assumption required to solve the inverse problem is for the human motions to be generated according to some optimal criteria.

Following the work of Liu [34], the NIO formulated for our specific problem reads as follows: given a human pointing strategy (QH; XH) measured at N time samples ${{t}_{1}},{{t}_{2}},\ldots,{{t}_{N}}$ with ${{Q}^{H}}=\left[\boldsymbol{q}^{{H}}\left({{t}_{1}}\right)\boldsymbol{q}^{{H}}\left({{t}_{2}}\right)\ldots \boldsymbol{q}^{{H}}\left({{t}_{N}}\right)\right]$ and ${{X}^{H}}=\left[\boldsymbol{x}^{{H}}\left({{t}_{1}}\right)\boldsymbol{x}^{{H}}\left({{t}_{1}}\right)\ldots \boldsymbol{x}^{{H}}\left({{t}_{N}}\right)\right]$ being, respectively, the concatenated postural and task configurations where $\boldsymbol{q}^{{H}}\left({{t}_{i}}\right)$ is a subject-specific wrist configuration pointing at the location $\boldsymbol{x}^{{H}}\left({{t}_{i}}\right)=FK\left(\boldsymbol{q}^{{H}}\left({{t}_{i}}\right)\right)$ .

Given a simulated pointing strategy ${{Q}^{M}}=$ $\left[\boldsymbol{q}^{{M}}\left({{t}_{1}}\right)\boldsymbol{q}^{{M}}\left({{t}_{2}}\right)\ldots \boldsymbol{q}^{{M}}\left({{t}_{N}}\right)\right]$ such that for each time sample ti, $\boldsymbol{x}^{{H}}\left({{t}_{i}}\right)=\boldsymbol{x}^{{M}}\left({{t}_{i}}\right)=FK\left(\boldsymbol{q}^{{M}}\left({{t}_{i}}\right)\right. $ (i.e. the task-space locations pointed by the human are used as a task-space constraints for the model), the optimal parameter vector $\boldsymbol{\theta }$ can be estimated by minimizing the following error function:

Equation (22)

where $h\left(\boldsymbol{q}^{{H}}\left({{t}_{i}}\right),\boldsymbol{\theta }\right)$ is defined in equation (21) and $s\left(\boldsymbol{\theta }\right)$ is an additional cost function penalizing parameters that would produce degenerate solutions or that are not consistent with the problem formulation. It is defined as:

Equation (23)

where the first term on the right hand-side enforces the trace of the stiffness matrix to be equal to 4 Nm rad−1 to get stiffness values that are of the same order as those measured experimentally [43] and $\theta _{k}^{\text{min}}$ , $\theta _{k}^{\text{max}}$ represents the minimum and maximum bounds, respectively, of the parameter ${{\theta}_{k}}$ . In this way we add a penalty whenever the equilibrium posture $\boldsymbol{q}_{{0}}$ falls beyond the human wrist range of motion [11] and/or any of the kii becomes negative. Note that no penalty was introduced for the three off-diagonal coefficients of the stiffness matrix and therefore in (23) $k=1,\ldots,6$ .

The rationale behind equation (22) is that since for a given parameter vector $\widehat{\boldsymbol{\theta }}$ the model generates motion with minimum cost, the human motion will always have an higher cost or ${\sum}_{i}h\left(\boldsymbol{q}^{{H}}\left({{t}_{i}}\right),\widehat{\boldsymbol{\theta }}\right)>{\sum}_{i}h\left(\boldsymbol{q}^{{M}}\left({{t}_{i}}\right),\widehat{\boldsymbol{\theta }}\right)$ . To decrease the error between the two costs, Liu [34] suggested to locally approximate (around a given estimate $\widehat{\boldsymbol{\theta }}$ ) the gradient of the error function with following equation:

Equation (24)

In this section we adapt the NIO algorithm [34] to estimate subject-specific parameters of the intrinsic potential (equation (21)). The main differences of our approach with respect to [34] are: (1) we use the experimentally measured Donders'surfaces in order to down-sample and smooth the human trajectory; (2) instead of solving a constrained optimization problem with a nonlinear optimizer to generate the model trajectories QM [34], we use the $\boldsymbol{\lambda }_{{0}}$ -PMP model.

2.3.1. Filtering and down-sampling the experimental data.

NIO requires a human pointing strategy (QH, XH) from experimental data. With reference to figure 5. (1) it is possible to notice that the experimental recording is made of thousands of samples (N) that are also affected by the instrumentation noise. The higher the number of samples, the higher the computational burden needed to run the NIO as, for each human sample a corresponding sample must be generated by the model. Therefore, a reliable method must be implemented in order to filter first and then down-sample human raw data. Figure 5. (2) shows the Donders'surface that best fits the rotation vectors of a representative subject. Apart from being a kinematic pointing synergy, this surface can also be thought as a filter applied to the experimental rotation vectors. Furthermore, it can be used to generalize the subject pointing strategy to pointing directions that have not been measured experimentally. Based on these considerations we propose the following method to down-sample the human pointing strategy: given a subject-specific Donders'surface (equation (20)), we generate a small set of N0 rotation vectors ${{\rm{\tilde \Gamma }}^{H}}=\left[\begin{array}{*{35}{l}} \boldsymbol{r}_{1}^{H} & \boldsymbol{r}_{2}^{H} & \ldots & \boldsymbol{r}_{{{N}_{0}}}^{H} \end{array}\right]$ by sampling the Donders's surface at N0 different locations as shown in figure 5. (3); then, the down-sampled rotation vectors are mapped into down-sampled joint configurations, providing a set ${{\tilde{Q}}^{H}}=\left[\begin{array}{*{35}{l}} \boldsymbol{q}_{1}^{H} & \boldsymbol{q}_{2}^{H} & \ldots & \boldsymbol{q}_{{{N}_{0}}}^{H} \end{array}\right]$ of joint angles. This set of joint angles is needed to compute the error function in equation (22) and to update the parameter vector (equations (24) and (25)). The set of N0 joint angles is mapped into N0 desired task-space constraints ${{\tilde{X}}^{H}}=\left[\begin{array}{*{35}{l}} \boldsymbol{x}_{1}^{H} & \boldsymbol{x}_{2}^{H} & \ldots & \boldsymbol{x}_{{{N}_{0}}}^{H} \end{array}\right]$ and are used as desired targets to generate motions with the $\boldsymbol{\lambda }_{{0}}$ -PMP model (see section 2.3). We decided to use a set of N0  =  9 points consisting of a central point plus 8 peripheral points (note that the theoretical minimum would be 6 points, in order to capture Quadratic surfaces which can be described by 6 coefficients).

Figure 5.

Figure 5. Filtering and down-sampling of human raw data. (1) Rotation vectors of a representative subject during the same pointing task described in section 2.2. (2) Rotation vectors are fitted with the quadratic Donders surface. (3) The ${{r}_{y}}{{r}_{z}}$ plane is sampled at N0  =  9 points. For each of these points, N0  =  9 rotation vectors are generated via the Donders' law: ${{r}_{{{z}_{i}}}}=\mathcal{D}\left({{r}_{{{y}_{i}}}},{{r}_{{{z}_{i}}}}\right)$ with $i=1,\ldots,{{N}_{0}}=9$ . These down-sampled rotation vectors are then mapped into joint and task-space to form the down-sampled pointing strategy (${{\tilde{Q}}^{H}},{{\tilde{X}}^{H}}$ ).

Standard image High-resolution image

2.3.2. Estimating the parameter vector $\boldsymbol{\theta }$ from down-sampled data.

The NIO algorithm described in this section is shown as a flowchart in figure 6. The input to the algorithm are the down-sampled human pointing strategy (${{\tilde{Q}}^{H}}$ , ${{\tilde{X}}^{H}}$ ) and an initial guess for the parameter vector $\widehat{\boldsymbol{\theta }}=\boldsymbol{\theta }_{{0}}$ (see next section).

  • Step 1.  
    The $\boldsymbol{\lambda }_{{0}}$ -PMP model is simulated with joint potential $h\left(\boldsymbol{q},\widehat{\boldsymbol{\theta }}\right)$ defined, initially, by current estimate of the parameter vector $\widehat{\boldsymbol{\theta }}$ and with the desired pointing targets ${{\tilde{X}}^{H}}$ coming from the human down-sampled data. For each desired pointing target, the equilibrium wrist configurations (at steady-state) generated by the $\boldsymbol{\lambda }_{{0}}$ -PMP model are collected: ${{\tilde{Q}}^{M}}=\left[\begin{array}{*{35}{l}} \boldsymbol{q}_{1}^{H} & \boldsymbol{q}_{2}^{H} & \ldots & \boldsymbol{q}_{{{N}_{0}}}^{H} \end{array}\right]$ .
  • Step 2.  
    Given the human pointing strategy ${{\tilde{Q}}^{H}}$ , the model pointing strategy QM and the actual estimation of the parameter vector $\widehat{\boldsymbol{\theta }}$ , a gradient direction is approximated by evaluating ${{\nabla}_{\boldsymbol{\theta }}}e\left(\boldsymbol{\theta }\right)$ (equation (24)).
  • Step 3.  
    The parameter vector is updated as:
    Equation (25)
    where the scalar β is computed with a line search method (see [34] for more details). The algorithm is then repeated from step 1 until $e\left(\boldsymbol{\theta }\right)$ becomes less than a specified threshold epsilon.
Figure 6.

Figure 6. The nonlinear inverse optimization (NIO) algorithm used to estimate subject-specific intrinsic potential h. Note that, differing from [34], the ${{\lambda}_{0}}$ -PMP model was used at every iteration to optimize the parameter vector $\boldsymbol{\theta }$ .

Standard image High-resolution image

3. Results

The joint potential was estimated for six different subjects whose pointing strategies have been previously measured in [11]. For each Donders' surface, we sampled nine rotation vectors and we calculated the corresponding task-space positions ${{\tilde{X}}^{H}}$ and joint-space configuration ${{\tilde{Q}}^{H}}$ .

For the initial guess $\boldsymbol{\theta }_{{0}}$ , the stiffness matrix in equation (21) was initialized as ${{K}^{J}}=1.33{{I}_{3\times 3}}$ (${{I}_{n\times n}}$ being the $n\times n$ identity matrix) and the most comfortable posture $\boldsymbol{q}_{{0}}$ was initialized at the center of the wrist range of motion (see [11]). To speed up the computation without losing in accuracy, the $\boldsymbol{\lambda }_{{0}}$ -PMP model (Step 1. of the algorithm) was simulated with the variable step size ode15s solver (MATLAB/Simulink MathWorks Inc.) with: max step size  =0.1 (s), min step size $=0.0001$ (s), initial step size $=0.001$ (s), relative tolerance $=\text{auto}$ , absolute tolerance $=\text{auto}$ . The task-space stiffness $K=10\centerdot {{I}_{2\times 2}}$ Nm rad−1 and joint-space damping $W=0.02\centerdot {{I}_{3\times 3}}$ Nms rad−1 were set in order to have fast convergence to steady-state so as to reduce the computational burden while at the same time keeping the evolution of the system stable. Hence, each desired pointing target $\boldsymbol{x}_{i}^{H}$ was simulated for 1 (s) and the equilibrium configuration $q_{i}^{M}$ was selected as that corresponding to the last sample of the simulation. The NIO was terminated after 500 iterations.

Figure 7 shows the individual stiffness ellipsoids relative to the potential fields estimated via the NIO algorithm. The stiffness ellipsoids are a graphical representation of the 3D stiffness KJ. The minor and major axes of the ellipses represent the directions of lower and higher stiffness respectively and highlight that all subjects show an anisotropic joint-space elastic field. The most comfortable equilibrium posture $\boldsymbol{q}_{{0}}$ estimated via the NIO defines the center of each ellipsoid. For comparison, we also show an isotropic elastic field (sphere) of 0.5 Nm rad−1. The distributions of the estimated parameters are shown in figure 8. The diagonal stiffness coefficient, Kfe (or K22 in 21), was found to be on average higher than Kps (or K11 in 21) and Krud (or K33 in 21), and Kps on average was the lowest. The off-diagonal stiffness coefficient were always lower than the diagonal ones. Kpf and Kpr (representing the coupling between PS and FE and PS and RUD respectively) where tightly distributed around zero, while Kfr had a broader distribution with a prevalence of positive values. The distribution of the most comfortable postures are shown in figure 8(b). The $q_{0}^{\text{ps}}$ was the most variable coefficient with preference for positive values. Differently, $q_{0}^{\text{rud}}$ was mainly negative except for one subject while $q_{0}^{\text{fe}}$ showed a broad tuning around the zero.

Figure 7.

Figure 7. Estimated postural costs. The minor and major ellipses' axes represent the directions of smaller and higher stiffness respectively. Each ellipsoid is centred on the most comfortable posture $\boldsymbol{q}_{{0}}$ . The inner spheres are used as reference and represent an isotropic elastic field of 0.5 Nm rad−1. Crosses mark the origin of each plane. (a) Subject 1. (b) Subject 2. (c) Subject 3. (d) Subject 4. (e) Subject 5. (f) Subject 6.

Standard image High-resolution image
Figure 8.

Figure 8. Distribution of the parameter vector $\boldsymbol{\theta }$ . (a) Stiffness coefficients; (b) equilibrium postures. Each marker represent a different subject. Kps, Kfe,Krud are the diagonal elements (K11, K22, K33) of the stiffness matrix. Kpf, Kpr, Kfr are the off-diagonal elements of the stiffness matrix and represent elastic coupling between PS-FE, PS-RUD and FE-RUD respectively.

Standard image High-resolution image

After the estimation was completed, the six subject-specific intrinsic potentials were used to solve the same pointing task described in section 4 with the $\boldsymbol{\lambda }_{{0}}$ -PMP model. As shown in figure 9 the Donders'surface fitting the model-generated rotation vectors are in good agreement with both the curvatures and the offsets of the experimental Donders'surface found for each subject. To further explore the similarity between the experimental and the simulated postural strategy, we sampled both surfaces at 100 data points and used the Donders'law (20) to generate the corresponding rx component of the rotation vectors. The components were then used to calculate a root-mean-squared-error $\text{RMS}{{\text{E}}_{{{r}_{x}}}}$ :

Equation (26)
Figure 9.

Figure 9. Comparison between the experimentally measured Donders for six subjects and the Donders reproduced by the $\boldsymbol{\lambda }_{{0}}$ -PMP. The estimated intrinsic costs were used in the ${{\lambda}_{0}}$ -PMP to compute the $\boldsymbol{}{{\nabla}_{q}}h$ and its task-space effect $\boldsymbol{\lambda }_{{0}}$ when solving the pointing task of section 4. (a) Subject 1. (b) Subject 2. (c) Subject 3. (d) Subject 4. (e) Subject 5. (f) Subject 6.

Standard image High-resolution image

As shown in figure 10 the highest error (relative to subject 4) was about ${{1.5}^{\circ}}$ and, as also visible in figure 9, the estimation was more accurate for subjects 1, 3 and 5. The RMSE error is within the range of thickness (deviations of the experimental rotations vector from the Donders'surface) measured experimentally [11]. It should be noted that we have stopped the NIO after 500 steps without considering additional performance measure for the termination. By increasing the number of iterations, the errors can be further reduced, however it is out of the scope of this work to reach a perfect match between the experimental and the simulated strategies.

Figure 10.

Figure 10. Root mean square errors between the experimental Donders'surfaces and those fitted on on the simulated pointing strategies.

Standard image High-resolution image

4. Discussion

As mentioned by Frank and Earl [22] ' movement is performed against a background of subtle postural adjustments'. Our work specifically addresses, from a kinematic perspective, the coordination of posture and movement in presence of redundancy. Humans are well known to solve kinematic redundancy by stereotypically selecting one specific posture to accomplish redundant tasks, a motor synergy known as Donders' law. A salient feature of human motor control is that postural control seems to subserve some static optimality purposes without interfering with the dynamics of movement generation, at least for movements performed at comfortable speed.

Pursuing a principled and bioinspired approach, we blend a minimum principle framework [20], used in Robotics to solve redundancy, with the separation principle, derived from neuroscientific evidence. This allows for separation of postural strategies from generation of motion.

Following [20], we reformulate the velocity-resolution control as a constrained optimization problem, typically solved via the Lagrange multiplier (LM) method. However, while most of the literature treats LM as dummy variables to quickly get rid of in calculations, we emphasize that LM can be interpreted as task-space force fields.

The main contribution of our work is in applying the separation principle at the task-space level by splitting LM $\boldsymbol{\lambda }$ into a static and a dynamic component, $\boldsymbol{\lambda }_{{0}}$ and $\boldsymbol{\lambda }_{{\text{dyn}}}$ respectively. This approach has several advantages.

First, as an element of the task-space, $\boldsymbol{\lambda }_{{0}}$ has the sufficient and necessary degrees-of-freedom to cancel any effect of the joint potential in the task-space itself. In other words, the presence of $\boldsymbol{\lambda }_{{0}}$ allows the manipulator to achieve 'comfortable' positions (i.e. minimizing a postural cost) without influencing the task, i.e. to move within its null-space towards a minimum of elastic potential (the presence of joint damping W allows dissipation of energy and ensures stability). This is the key to capture postural models, as a unique joint-space configuration is associated to any given (reachable) task-space configuration.

Second, our approach allows for the framing of kinematic problems in terms of force fields. One immediate advantage is that, once a kinematic problem is viewed as a force-control policy, it can be simply superimposed with other force-control policies, without necessarily freezing the system within an imposed Donders' strategy. In our view, this is very important because Donders' law is known to be a 'soft-contraint', which can be adapted to cope with different contexts [12, 19] or violated by voluntary control [1]. Another aspect is that it is well known that the human brain can learn both dynamic and static force fields [29, 45]. Our approach suggests that postural models can be viewed as static force fields and could, in principle, be learned and processed by the same structure used to learn and compensate for gravity, in any posture.

Third, the task-space separation of the LM also allows the formulation of a general framework that can accommodate several human motor control theories. We have highlighted how different movement generation models, see table 1, can be accommodated in our framework by using different task-space policy $\boldsymbol{\Pi}\left(\boldsymbol{x}_{{d}},\boldsymbol{x}\right)$ for the generation of dynamic force fields. As a particular example, we have used the PMP task-space policy $\boldsymbol{\Pi}\left(\boldsymbol{x}_{{d}},\boldsymbol{x}\right)=K\left(\boldsymbol{x}_{{d}}-\boldsymbol{x}\right)$ to generate one possible $\boldsymbol{\lambda }_{{\text{dyn}}}$ . This resulted in an extended model ($\boldsymbol{\lambda }_{{0}}$ -PMP) which retained the computational effectiveness of the classical PMP approach but extended it with the possibility to account for Donders' law. In recent years, the PMP has found extensive applications as a bioinspired motion planner for (highly redundant) humanoid robots performing reaching, bimanual coordination and/or tool use tasks [36, 54]. Our (extended) $\boldsymbol{\lambda }_{{0}}$ -PMP model can be applied to the same range of problems. However, in this work we mainly focused on the human wrist that, despite its importance in manipulation, is a relatively neglected motor domain. In addition, similar to the human eye, the nonlinearity of the 3DOF human wrist is non-trivial as it involves 3D rotations, which are not just nonlinear but also non-commutative. In this latter sense, we think our case-study complements the abundant range of applications already addressed by the literature on PMP [36, 37, 54].

The extended $\boldsymbol{\lambda }_{{0}}$ -PMP model was used to capture experimental motor synergies from human subjects based on a nonlinear inverse optimization method readapted from literature [34]. In re-adapting this method, our main contribution was to use the fitted human motor strategy, rather than raw data, to down-sample and filter human behaviors; furthermore, the $\boldsymbol{\lambda }_{{0}}$ -PMP was used to iteratively estimate the parameters of the cost function h.

4.1. Relation to existing approaches

Since the 70s, a variety of techniques to control multiple and redundant degrees of freedom (DOF) in robots have been proposed. Although apparently different, English and Maciejewski [20] showed how most of the methods proposed in the past are in fact specializations of a general approach first introduced by Liegeois [35]. More recently, Peters and colleagues [44] highlighted how a unifying view can be found behind these approaches, based on Gauss's principle of least constraint. Despite its generality, only recently [7, 52, 53] Gauss's principle has been brought up to the attention of roboticists, who typically relied on d'Alembert's principle of virtual works to solve constrained problems in mechanics. However, Gauss's principle of least constraint is a genuine minimum principle [33], useful to analyze scenarios involving very general constraints in terms of constrained optimization problems, typically solved via Lagrangian multipliers.

Gauss's principle of least constraint requires the inertia matrix of a mechanical system to be defined. The inertia matrix, symmetric and positive-definite, acts as a metric for the system [58] defining its geodesics and unforced motions. This is also the key to redundancy resolution. In fact, if we push/pull an ideal manipulator through its end-effector, this will generate a unique motion, shaped by the inertias of its links, despite any possible redundancy. This is for example at the core of the approach proposed by Khatib and colleagues [30]. However, this approach alone would not lead to repeatable trajectories and instantaneous minimization via quadratic programming of biomechanical or robotic efforts is still necessary to ensure repeatability, leading to formulations similar to (4).

It should be noted that an ideal mechanical system consisting of joint inertias and elastic potential would not be stable, rather it would oscillated indefinitely if some form of damping is not accounted for [17], increasing thus the number of parameters.

Here we are interested in kinematic planning and, in some instances, inertial parameters might not even be available or necessary (e.g. planning reaching motion with obstacles avoidance). The instantaneous effort to be minimized here is the analogous of a viscoelastic power (4), first proposed by [20], which requires 'joint damping' W and postural cost $h\left(\boldsymbol{q}\right)$ . The damping matrix W, symmetric and positive-definite, plays the role of a metric for the system while the postural cost (21) has been commonly deployed to solve redundancy in both industrial and biomedical robotic applications, e.g. in recent years see [17, 5961].

All approaches presented so far, including ours, lead to a form of instantaneous minimization, formally similar to (4). Such an instantaneous minimization is different from the global minimization deployed, for example, in transport methods [56] which however do not comply (in their original form) with Donders' Law.

Our main contribution is to use constrained minimization of an instantaneous cost, solved with Lagrange multipliers, and apply separation principle to the Lagrange multipliers themselves, which can be seen as task-space forces. This is novel, to our best knowledge, and is referred to as 'task-space separation principle'. One immediate advantage is the possibility to reformulate postural control paradigms as a force-controlled strategy which can be superimposed with other task-space strategies, as shown in table 1. In fact, this allows for global optimization to be reconsidered and applied only to the task-space, so expanding the list in table 1. This also leads to a form of hierarchical control similar to the framework proposed by Todorov et al [51] to reduce the burden of computing optimal solutions for high-dimensional systems. Central to their framework is the introduction of a low-level controller that does not interfere with the desired task-space dynamics, generated and optimized via a high-level controller. Following a hierarchical control approach as in [51] we will also be able to blend transport models and optimal control in our framework. This will be part of future works, although a hint is given in appendix.

4.2. Limitations and future works

A first limitation of the present study is that, since the main objective is capturing motor strategies such as Donders' law, we have purposely left the joint damping matrix W out of the fitting parameters, while focusing on joint stiffness parameters, following [10]. The main reason is that the damping matrix W does not influence static postures, i.e. Donders' law, which is the main focus of this paper. Rather, the effects of the damping matrix W are important in explaining motion and its effects on task trajectories will be the objective of future studies.

A second limitation of the present study, focused on postural control, is that a systematic analysis of the LM dynamic component $\boldsymbol{\lambda }_{{\text{dyn}}}$ is deferred to future work. Here, we simply show how it can be used to generate motion in the task-space, for example in accordance with velocity resolution control schemes. In addition we also show how the well known passive motion paradigm (PMP) can be extended ($\boldsymbol{\lambda }_{{0}}$ -PMP) to capture Donders' law (not possible with the original formulation of the PMP) and to generate task motions (a limitation of the study in [10]). In future studies, we shall address the extent to which transport models proposed in literature, such as optimal feedback control policies [23, 50, 51], can be incorporated.

Lastly, we have assumed that the only potential field is due to the wrist elasticity and we have therefore neglected any contribution that could arise from the gravity potential. Future works will be devoted to the analysis of anti-gravity contributions and how to mix together multiple $\boldsymbol{\lambda }_{{0}}$ arising from different potential fields.

Acknowledgment

This work was partly supported by the A*STAR Industrial Robotics Program, 2013–2016, and by the NMRC project BnB/0006b/2013, Ministry of Health, Singapore. The authors wish to thank the anonymous reviewers for constructive feedback and Ms Anusha for her help with proofreading.

Appendix.: PMP versus ${{\lambda}_{0}}$ -PMP during simulated pointing tasks

In this section we compare the PMP and ${{\lambda}_{0}}$ -PMP when simulating pointing tasks as described in section 2.2. Similar to human experiments [9, 10], the pointing task consisted of a central target (C) plus eight peripheral targets arranged over a circle (with a radius of ${{15}^{\circ}}$ ) and oriented along the cardinal directions East(E), North-East(NE), North(N), North-West(NW), West(W), South-West(SW), South(S) and South-East(SE).

The models were simulated with the same parameter setting by using the MATLAB/Simulink (MathWorks Inc.) ode4 (Runge–Kutta) Solver and with a fixed-step of 0.01 s. The intrinsic cost $h\left(\boldsymbol{q}\right)$ was defined as in equation (21) with ${{K}^{J}}=0.1\centerdot {{I}_{3\times 3}}$ Nm rad−1 and $q_{0}^{\text{PS}}={{10}^{\circ}}$ , ${{q}_{0}}^{\text{FE}}={{5}^{\circ}}$ , ${{q}_{0}}^{\text{RUD}}=-{{5}^{\circ}}$ . The intrinsic damping was set to $W=0.02\centerdot {{I}_{3\times 3}}$ Nms rad−1 and the task-space spring $K=0.1\centerdot {{I}_{2\times 2}}$ simulating a task-space elasticity comparable with the joint-space elasticity KJ (when $\boldsymbol{q}=\boldsymbol{q}_{{0}}$ , the task-space effect of the joint elasticity is ${{\left(J{{K}^{{{J}^{-1}}}}{{J}^{T}}\right)}^{-1}}$ ). Naturally, different model parameters would result into different dynamic and steady-state behaviour for the models. However, in this section we are not interested in capturing a specific solution. The goal is instead to highlight the differences between the two models regardless the parameter setting.

With the chosen parameter setting, each desired target $\boldsymbol{x}_{{d}}$ was presented for two seconds in order to give enough time to the models to reconfigure according the combination of the intrinsic and extrinsic potentials. Before running the pointing task, the wrist was initialized in $\boldsymbol{q}_{{|t=0}}={{\left[0~0~0\right]}^{T}}$ and, for the first two seconds of the simulation, the central target was kept as the desired target to let the wrist reconfigure in the most comfortable posture. After pointing to a peripheral target (two seconds of outbound movement), the wrist was commanded with $\boldsymbol{x}_{{d}}={{\left[0~0\right]}^{T}}$ so as to bring the wrist pointing to the central target (two seconds inbound movement).

Figures A1(a) and (b) show the task-space pointing paths generated via the PMP and $\boldsymbol{\lambda }_{{0}}$ -PMP respectively. Due to the lack of elements such as $\boldsymbol{\lambda }_{{0}}$ , the original PMP is not capable of reaching any of the desired targets as the intrinsic potential generates elastic torques which counteract the task-space force field $\boldsymbol{\lambda }_{{\text{dyn}}}$ . The $\boldsymbol{\lambda }_{{0}}$ -PMP can generate straight-line pointing paths as the $\boldsymbol{\lambda }_{{0}}$ compensates for the task-space effect of the intrinsic constraint. The evolution of the joint trajectories for the first two sequences of outbound and inbound movements are shown in figures A1(c) and (d). For both models, the dynamics are typical of a visco-elastic, first order system subject to step inputs and with a transient phase of about 1 (s). Note the difference in joint evolution when pointing to the (C) target. Due to the lack of the ${{\lambda}_{0}}$ and to the weak task-space stiffness K, the PMP converges toward an equilibrium configuration ($\boldsymbol{q}={{\left[{{10}^{\circ}}~{{2.5}^{\circ}}~-{{2.5}^{\circ}}\right]}^{T}}$ ) which is in between the most comfortable posture $\boldsymbol{q}_{{0}}={{\left[{{10}^{\circ}}~{{5}^{\circ}}~-{{5}^{\circ}}\right]}^{T}}$ and the optimal posture satisfying task-space constraint $\boldsymbol{q}_{{0}}={{\left[{{10}^{\circ}}~{{0}^{\circ}}~{{0}^{\circ}}\right]}^{T}}$ . Optimal pointing postures are instead generated by the ${{\lambda}_{0}}$ -PMP where the intrinsic potential is only allowed to adjust postures within the null-space. The paths generated by the two models in the joint-space, after removing the first two seconds of simulation (initial wrist reconfiguration), are shown in figures A1(e) and (f). For each joint configuration $\boldsymbol{q}_{{i}}$ resulting from the simulation, the corresponding wrist orientation Ri (equation (18)) and rotation vectors $\boldsymbol{r}_{{i}}$ (equation (15)) were calculated. The rotation vectors were thus fitted (nlinfit function, MATLAB R2013 MathWorks Inc.) with the quadratic Donders surface according to equation (20). Figure A3(b) shows how a ${{\lambda}_{0}}$ -PMP model equipped with an intrinsic potential as in equation (21) solves the redundancy problem with a Donders-like kinematic synergy as the rotation vectors are well fitted with the quadratic surface of equation (20). For the PMP, it is also possible to regress a similar Donders'surface (figure A3(a)) but the postural synergy interfere with the task and targets cannot be reached. In the next section the intrinsic potential is estimated from human data by using an inverse optimization approach. The results of the non-linear regression are shown in table A1 and the high value of variance accounted for (VAF) [11] suggests that the ${{\lambda}_{0}}$ -PMP can capture Donders-like constraints.

Figure A1.

Figure A1. (a) and (b) Task-space paths. (c) and (d) Evolution of joint trajectories. The beneficial effect of the $\boldsymbol{\lambda }_{{0}}$ can be appreciated when pointing at the (C) target ($\boldsymbol{x}_{{d}}={{\left[0~0\right]}^{T}}$ ) where the PS rotation does not affect this particular task. In the PMP, the intrinsic potential pushes the wrist angles towards the most comfortable posture $\boldsymbol{q}_{{0}}={{\left[{{10}^{\circ}}~{{5}^{\circ}}~-{{5}^{\circ}}\right]}^{T}}$ until an intermediate configuration $\boldsymbol{q}={{\left[{{10}^{\circ}}~{{2.5}^{\circ}}~-{{2.5}^{\circ}}\right]}^{T}}$ that balances both the task-space and the joint-space elasticity is reached. This makes impossible to point at the central target as shown in (a). For the ${{\lambda}_{0}}$ -PMP the intrinsic constraint can only affect the null-space, therefore, whenever pointing to the (C) target, the optimal policy consists in pushing PS at the most comfortable posture (${{q}^{\text{PS}}}=10$ ) while keeping FE and RUD at ${{0}^{\circ}}$ to satisfy the task constraint.

Standard image High-resolution image

Table A1. Donders'law fitting of rotation vectors simulated via PMP and ${{\lambda}_{0}}$ -PMP.

Model C1 C2 C3 C4 C5 C6 VAF (%)
PMP −0.1746 −0.0912 −0.0760 −0.0284 −0.2417 0.0654 99.3
${{\lambda}_{0}}$ -PMP −0.1745 −0.0896 −0.0729 −0.0313 −0.2455 0.0607 96.4

A.1. Optimizing $\boldsymbol{\lambda }_{{\text{dyn}}}$ with the task-space separation principle

In this section we briefly show how to combine the task-space separation principle with an optimal control approach that optimizes $\boldsymbol{\lambda }_{{\text{dyn}}}$ in compliance with Donders's like strategies. More details will be given in a separate work, while here we limit ourselves to show the results of this approach.

An optimal control framework is applied to the following dynamic equation:

Equation (A.1)

to determine the extrinsic input $\boldsymbol{\lambda }_{{\text{dyn}}}$ which minimizes the following cost:

Equation (A.2)

It should be noted that joint space boundary conditions can be derived via the $\boldsymbol{\lambda }_{{0}}$ -PMP from task-space boundary conditions:

Equation (A.3)

The problem was parametrized via cubic B-splines [6] and by using four control points for each desired target. For each pointing target the optimal parameters were identified with the Matlab function fmincon.

The resultant joint trajectories are shown in figure A2 and, compared to the $\boldsymbol{\lambda }_{{0}}$ -PMP, we observe that they follow a smoother dynamic although, as predicted by the task-space separation principle the equilibrium postures are the same. This is further highlighted in figure A3(c) where it is shown that the Donders' synergy is the same for both models.

Figure A2.

Figure A2. Wrist joint trajectories when pointing (both outbound and inbound) to the first two peripheral targets (E and NE, respectively). Dark colors are relative to the $\lambda 0$ -PMP and lighter colors are relative to the model with optimized $\boldsymbol{\lambda }_{{\text{dyn}}}$ . Markers represents the joint rotations at the (four) control points of the cubic B-splines.

Standard image High-resolution image
Figure A3.

Figure A3. Donders surfaces (or kinematic synergy) that best fit the rotation vectors (black dots) generated via the PMP (a), the $\boldsymbol{\lambda }_{{0}}$ -PMP (b). For the same intrinsic potential h, the models reproduce the same kinematic synergy, however, the wrist orientations generated via the PMP do not satisfy the task constraint. (c) Donders' synergy and rotation vectors the model simulated with the optimized $\boldsymbol{\lambda }_{{\text{dyn}}}$ . Black crosses are the rotation vectors corresponding to the (four) control points of the cubic B-splines.

Standard image High-resolution image

Footnotes

  • If $h\left(\boldsymbol{q}\right)$ is a mechanical potential, then $\frac{\text{d}h}{\text{d}t}$ denotes mechanical power and so does the term ${{\overset{\centerdot}{{\boldsymbol{q}}}\,}^{T}}W\overset{\centerdot}{{\boldsymbol{q}}}\,$ , consistent with the fact that mechanical power can be written as the scalar product of velocities (transposed, ${{\overset{\centerdot}{{\boldsymbol{q}}}\,}^{T}}$ ) with torques ($W\overset{\centerdot}{{\boldsymbol{q}}}\,$ ).

Please wait… references are loading.
10.1088/1748-3190/aa5558