# Least action principles and their application to constrained and task-level problems in robotics and biomechanics

Vincent de Sapio, Oussama Khatib, Scott Delp

► To cite this version:

Vincent de Sapio, Oussama Khatib, Scott Delp. Least action principles and their application to constrained and task-level problems in robotics and biomechanics. Multibody System Dynamics, 2008, 19 (3), pp.303 - 322. 10.1007/s11044-007-9097-8 . hal-01380098

HAL Id: hal-01380098

https://hal.science/hal-01380098

Submitted on 12 Oct 2016

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>
# Least action principles and their application to constrained and task-level problems in robotics and biomechanics

Vincent De Sapio · Oussama Khatib · Scott Delp

**Abstract** Least action principles provide an insightful starting point from which problems involving constraints and task-level objectives can be addressed. In this paper, the *principle of least action* is first treated with regard to holonomic constraints in multibody systems. A variant of this, the *principle of least curvature* or *straightest path*, is then investigated in the context of geodesic paths on constrained motion manifolds. Subsequently, task space descriptions are addressed and the operational space approach is interpreted in terms of least action. Task-level control is then applied to the problem of cost minimization. Finally, task-level optimization is formulated with respect to extremizing an objective criterion, where the criterion is interpreted as the action of the system. Examples are presented which illustrate these approaches.

**Keywords** Least action · Constraints · Task-level control · Musculoskeletal system · Optimization

## 1 Introduction

Variational principles have shared a rich history in mathematics and physics. Their efficacy has been particularly apparent with regard to problems in mechanics. Of special importance among variational principles are so-called *least action* principles [6, 14, 20]. The fundamental theme associated with these principles is that the evolution of a dynamical system can be revealed by examining the stationary condition for an appropriately defined action integral.

<footnote>V. De Sapio (✉) · O. Khatib
Artificial Intelligence Laboratory, Stanford University, Stanford, CA 94305, USA
e-mail: vdesap@robotics.stanford.edu</footnote>

<footnote>O. Khatib
e-mail: khatib@robotics.stanford.edu</footnote>

<footnote>S. Delp
Neuromuscular Biomechanics Laboratory, Stanford University, Stanford, CA 94305, USA
e-mail: delp@stanford.edu</footnote>
In the field of robotics, there has been more interest in the multibody equations of motion that result from such principles than in the principles themselves. However, significant insight can be derived by using a least action principle as a point of departure for framing problems in robotics. In this paper, we will apply this approach to holonomically constrained systems and task-level control problems involving rheonomic servo constraints. We will also address task-level optimization problems where a task consistent path is sought which extremizes some criterion.

We begin with the application of least action to constrained systems, which yields the constrained Euler-Lagrange equations. A special case of this is investigated in the context of least curvature, or straightest path, on a constrained motion manifold. An example is presented which addresses the problem of computing geodesics for a surface, using a mechanical analog.

Subsequently, least action is applied to task space by interpreting the operational space approach [18] with regard to least action for rheonomically constrained systems. Task/posture decomposition is then applied to the problem of performing a task while minimizing some instantaneous criterion. Finally, by defining action in terms of a performance criterion, task-level optimization is formulated with respect to an extremization objective. Examples of these approaches are presented for model problems involving robotics and the biomechanics of movement.

## 2 Constrained least action

While least action can refer to a general family of variational principles, perhaps the most significant among these is Hamilton's principle of least action. This principle states that the path, $q(t)$, of a system in configuration space over an interval, $[t_o, t_f]$, is such that the action is stationary under all path variations that vanish at the endpoints, $q(t_o)$ and $q(t_f)$. It is noted that this does not strictly imply a minimization of the action, as the name of the principle suggests, but rather an extremization of the action. For schleronomic systems (no explicit time dependence) the action is defined as,

$$I \triangleq \int_{t_o}^{t_f} \mathcal{L}(q, \dot{q}) dt \qquad (1)$$

where $q$ is a set of $n$ generalized coordinates and $\mathcal{L} = T - V$ is the Lagrangian of the system. For conciseness, we will often refrain from explicitly denoting the functional dependence of $q$ on $\dot{q}$. This practice will also be employed with other quantities throughout the paper.

In the absence of constraints, least action requires that

$$\delta I = 0 \quad \forall \delta |\delta q(t_o) = \delta q(t_f) = 0 \qquad (2)$$

where $\delta$ represents the first variation. Least action can also be applied to multibody systems with auxiliary holonomic constraint equations. We introduce a set of $m$ holonomic (and schleronomic) constraint equations, $\phi(q) = 0$. The first variation of the constraint equations is $\delta\phi = \Phi\delta q = 0$, where the matrix, $\Phi(q) = \partial\phi/\partial q \in \mathbb{R}^{mc \times n}$, is the constraint Jacobian. In this case, the principle of least action can be stated as,

$$\delta I = 0 \quad \forall \delta |\delta q(t_o) = \delta q(t_f) = 0 \quad \text{and} \quad \Phi \delta q = 0. \qquad (3)$$
Thus, least action seeks the path, $q(t)$, in configuration space that results in a stationary value of action, $I$, under all path variations, $\delta q$, that vanish at the endpoints and satisfy the constraints.

For forced systems, the principle of least action is modified such that the variation in the action is given by

$$ \delta I = \delta \int_{t_o}^{t_f} \mathcal{L} dt + \int_{t_o}^{t_f} \boldsymbol{\tau} \cdot \delta \boldsymbol{q} dt. \quad (4) $$

Calculus of variations and integration by parts can be applied to this problem [14]. The derivation is straightforward and leads to

$$ \delta I = \int_{t_o}^{t_f} \left( \frac{\partial \mathcal{L}}{\partial \boldsymbol{q}} - \frac{d}{dt} \frac{\partial \mathcal{L}}{\partial \dot{\boldsymbol{q}}} + \boldsymbol{\tau} \right) \cdot \delta \boldsymbol{q} dt. \quad (5) $$

This makes use of the condition that the path variations vanish at the endpoints. The additional condition,

$$ \delta I = 0 \quad \forall \delta \boldsymbol{q} | \boldsymbol{\Phi} \delta \boldsymbol{q} = \mathbf{0} \quad (6) $$

applied to (5) implies the following orthogonality relation at any instant,

$$ \left( \frac{d}{dt} \frac{\partial \mathcal{L}}{\partial \dot{\boldsymbol{q}}} - \frac{\partial \mathcal{L}}{\partial \boldsymbol{q}} - \boldsymbol{\tau} \right) \cdot \delta \boldsymbol{q} = 0 \quad \forall \delta \boldsymbol{q} \in \ker(\boldsymbol{\Phi}) \quad (7) $$

where ker() represents the kernel or null space operator. Thus,

$$ \left( \frac{d}{dt} \frac{\partial \mathcal{L}}{\partial \dot{\boldsymbol{q}}} - \frac{\partial \mathcal{L}}{\partial \boldsymbol{q}} - \boldsymbol{\tau} \right) \in \ker(\boldsymbol{\Phi})^{\perp} = \mathrm{im}(\boldsymbol{\Phi}^{\mathrm{T}}) \quad (8) $$

where im() represents the image or range operator. This implies the familiar constrained Euler-Lagrange equations,

$$ \frac{d}{dt} \frac{\partial \mathcal{L}}{\partial \dot{\boldsymbol{q}}} - \frac{\partial \mathcal{L}}{\partial \boldsymbol{q}} = \boldsymbol{\tau} + \boldsymbol{\Phi}^{\mathrm{T}} \boldsymbol{\lambda} \quad (9) $$

where $\lambda$ is a set of $m$ unknown Lagrange multipliers. Identical equations could have been obtained by embedding the constraints directly in the Lagrangian. In this case, the Lagrangian in (4) would be replaced by the following augmented Lagrangian with the constraints adjoined,

$$ \mathcal{L}_{\mathrm{aug}}(\boldsymbol{q}, \dot{\boldsymbol{q}}, \boldsymbol{\lambda}) \triangleq \mathcal{L}(\boldsymbol{q}, \dot{\boldsymbol{q}}) + \boldsymbol{\lambda}^{\mathrm{T}} \boldsymbol{\phi}(\boldsymbol{q}) \quad (10) $$

and the stationary value of $I$ would be sought for all variations that vanish at the endpoints. We note that,

$$ \delta \mathcal{L}_{\mathrm{aug}} = \delta \mathcal{L} + \boldsymbol{\lambda}^{\mathrm{T}} \delta \boldsymbol{\phi} = \delta \mathcal{L} + \boldsymbol{\lambda}^{\mathrm{T}} \boldsymbol{\Phi} \delta \boldsymbol{q}. \quad (11) $$

Using indicial notion with summation over repeated indices, we can express (9) as,

$$ \underbrace{\frac{\partial^2 T}{\partial \dot{q}_i \partial \dot{q}_j}}_{M_{ij}} \ddot{q}_j + \underbrace{\frac{\partial^2 T}{\partial \dot{q}_i \partial q_j}}_{b_i} \dot{q}_j - \underbrace{\frac{\partial T}{\partial q_i}}_{g_i} + \underbrace{\frac{\partial V}{\partial q_i}}_{g_i} = \tau_i + \Phi_{ji} \lambda_j \quad (12) $$
or in standard matrix form,

$$ M(q)\ddot{q} + b(q, \dot{q}) + g(q) = \tau + \Phi^T \lambda \quad (13) $$

subject to $\phi(q) = 0$. For the stationary value of $I$ to correspond to a minimum requires that the second variation, $\delta^2 I$, be greater than or equal to zero. In [27], this condition is shown to be satisfied, for sufficiently small time intervals, $[t_o, t_f]$, if the following is satisfied,

$$ \int_{t_o}^{t_f} \delta \dot{q}^T M \delta \dot{q} dt \ge 0 \quad (14) $$

which corresponds to $M$ being positive definite over the actual path. For classical Lagrangian systems, this condition is met.

Since (13) forms a set of second order differential equations, it is appropriate to complement it with the second derivative of the constraint equations,

$$ \ddot{\phi} = \Phi \ddot{q} + \dot{\Phi} \dot{q} = 0. \quad (15) $$

In practice, the integration of the forward dynamics would also require constraint stabilization to mitigate drift in the constraints. Baumgarte stabilization [3] involves replacing our original acceleration constraint equations with a linear combination of acceleration, velocity and position constraint terms,

$$ \ddot{\phi} + \beta \dot{\phi} + \alpha \phi = \Phi \ddot{q} + \dot{\Phi} \dot{q} + \beta \Phi \dot{q} + \alpha \phi = 0. \quad (16) $$

### 3 Least curvature or straightest path

In the previous section, we reviewed the application of the principle of least action to a general class of holonomically constrained multibody systems. In this section, we will restrict the domain of our examination to investigate alternate statements of least action.

The special case of a particle moving in $n$ dimensions, $r(t) = q(t) \in \mathbb{R}^n$, under holonomic constraints but no applied force can be described by,

$$ M \ddot{r} = \Phi^T \lambda \quad \text{subject to} \quad \phi(r) = 0. \quad (17) $$

This system can be equivalently represented using Gauss' principle of least constraint [9, 11, 13] which states that the Gauss function, $G$, is stationary under all acceleration variations that satisfy the constraints. That is,

$$ \delta G = 0 \quad \forall \delta |\delta \ddot{q} \in \ker(\Phi). \quad (18) $$

Since the Gauss function is a positive definite quadratic form, Gauss' principle is a strict minimization principle. For this system, the Gauss function is defined as

$$ G \triangleq \frac{1}{2} M (\ddot{r} - \ddot{r}_*)^T (\ddot{r} - \ddot{r}_*) \quad (19) $$

where $\ddot{r}_*$ is the unconstrained acceleration of the system. That is, $\ddot{r}_*$ is the acceleration that the system would exhibit in the absence of constraints. In this case, where no applied forces are present, $\ddot{r}_* = 0$. So

$$ G = \frac{1}{2} M \ddot{r}^T \ddot{r} = \frac{1}{2} M \langle \ddot{r}, \ddot{r} \rangle. \quad (20) $$
The vector **r** can be parameterized in terms of arc length, *s*, in which case we have the following relationships,

$$ \dot{\mathbf{r}} = \frac{d\mathbf{r}}{dt} = \frac{d\mathbf{r}}{ds} \frac{ds}{dt} \qquad (21) $$

and

$$ \ddot{\mathbf{r}} = \frac{d}{dt} \frac{d\mathbf{r}}{dt} = \frac{d^2\mathbf{r}}{ds^2} \left(\frac{ds}{dt}\right)^2 + \frac{d\mathbf{r}}{ds} \frac{d^2s}{dt^2}. \qquad (22) $$

Substituting (22) into (20), and noting that $||d\mathbf{r}/ds||^2 = 1$ and $\frac{d}{ds}||d\mathbf{r}/ds||^2 = 0$, we have

$$ \mathcal{G} = \frac{1}{2} M \left[ k^2 \left( \frac{ds}{dt} \right)^4 + \left( \frac{d^2 s}{dt^2} \right)^2 \right] \qquad (23) $$

subject to the constraints, where the term $k = ||d^2\mathbf{r}/ds^2|| = ||\mathbf{r}''||$ is the extrinsic path curvature. The term $ds/dt$ is the particle speed, determined from the system state, and $d^2s/dt^2$ is the tangential acceleration. Both $k^2$ and $(d^2s/dt^2)^2$ are positive numbers. Additionally, they can be selected (and minimized) independently of each other. Therefore, minimizing $\mathcal{G}$ subject to the constraints implies that $k^2$ (and $k$) is minimized subject to the constraints and that $d^2s/dt^2 = 0$.

The implication that curvature is minimized reflects Hertz' principle of least curvature [15, 19, 22] which states that under force-free constrained motion, a system will follow the path of least extrinsic curvature, $k$, on the constrained motion manifold, $Q^p$. Further, this constrained minimization implies $\nabla k^2 \perp T_r(Q^p)$, where $T_r(Q^p)$ denotes the tangent space of $Q^p$ at the point $\mathbf{r}$. We note

$$ \nabla k^2 = \frac{\partial}{\partial \mathbf{r}''} ||\mathbf{r}''||^2 = 2\mathbf{r}'' = 2 \frac{d^2 \mathbf{r}}{ds^2} \qquad (24) $$

so

$$ \frac{d^2 \mathbf{r}}{ds^2} \perp T_r(Q^p). \qquad (25) $$

This implies that the covariant derivative, $D/ds$, of the path tangent vanishes,

$$ \frac{D}{ds} \frac{d\mathbf{r}}{ds} = \operatorname{proj}_T \left( \frac{d}{ds} \frac{d\mathbf{r}}{ds} \right) = \operatorname{proj}_T \left( \frac{d^2\mathbf{r}}{ds^2} \right) = \mathbf{0} \qquad (26) $$

where $\operatorname{proj}_T()$ denotes the projection of a vector onto the tangent space. The intrinsic geodesic curvature of the path,

$$ k_g = \left\| \frac{D}{ds} \frac{d\mathbf{r}}{ds} \right\| \qquad (27) $$

is thus zero. This implies that under force-free constrained motion a system will follow geodesics (paths for which $k_g = 0$) on the constrained motion manifold. This is illustrated in Fig. 1.

Since a geodesic path minimizes arc length, the condition of zero geodesic curvature is equivalent to finding a path which minimizes the action defined in terms of arc length. That is

$$ \delta I = \delta \int ds = 0 \qquad (28) $$
<figure><img src="image_2.png" /><figcaption>**Fig. 1** Geodesic force-free paths on a constrained motion manifold. Force-free motion minimizes the extrinsic path curvature, *k*, subject to the constraints, yielding zero geodesic (intrinsic) curvature, $k_g$</figcaption></figure>

subject to the constraints. Equivalently, for a system with no external forces, this fact can be concluded from Jacobi's form of least action [14] which states,

$$ \delta I = \delta \int_{t_0}^{t_f} T dt = 0 \qquad (29) $$

subject to the constraints. In this case, the Lagrangian has been replaced by the kinetic energy alone (no potential energy). Since

$$ dt = \sqrt{M/2T} ds \qquad (30) $$

we have

$$ \delta I = \delta \int \sqrt{MT/2} ds = 0. \qquad (31) $$

Because *T* is constant for this system (31) implies that arc length is minimized on the constrained motion manifold.

## 3.1 Computing geodesics using a mechanical analog

One application of the least curvature principle involves computing the geodesics of a surface by solving an analogous mechanical system. By the principle of least curvature, solutions of this system will trace out geodesics on the constrained motion surface $Q^p \subset \mathbb{R}^3$. Given the system

$$ M\ddot{r} = \Phi^T \lambda \quad \text{subject to } \phi(r) = 0 \qquad (32) $$

where $\phi(r) = 0$ is an implicit representation of the surface represented parametrically by $r(u, v)$. Using the acceleration form of the constraint equation, the system of (32) can be solved to yield the differential equations,

$$ \ddot{r} = -\Phi^T (\Phi \Phi^T)^{-1} \dot{\Phi} \dot{r} \qquad (33) $$
or, incorporating constraint stabilization

$$ \ddot{r} = -\mathbf{\Phi}^T (\mathbf{\Phi}\mathbf{\Phi}^T)^{-1} (\dot{\mathbf{\Phi}}\dot{\mathbf{r}} + \beta\mathbf{\Phi}\dot{\mathbf{r}} + \alpha\mathbf{\Phi}). \quad (34) $$

Thus, (34) represents a mechanically derived approach for computing geodesics. Equation (34) is not limited to $\mathbb{R}^3$ and can be used to compute geodesics in $\mathbb{R}^n$.

### 3.1.1 Example

We can apply (34) to the problem of computing geodesics for the surface,

$$ \phi(x, y, z) = 4 + x^2 + y^2 - \left(z - \frac{1}{3} \cos 3x \cos 3y\right)^2 = 0. \quad (35) $$

The constraint Jacobian is computed directly from $\phi$ as

$$ \mathbf{\Phi} = \left( \frac{\partial \phi}{\partial x} \quad \frac{\partial \phi}{\partial y} \quad \frac{\partial \phi}{\partial z} \right) \quad (36) $$

and (34) yields a system of 3 second order nonlinear differential equations in $x$, $y$ and $z$,

$$ (\ddot{x} \ddot{z})^T = -\mathbf{\Phi}^T (\mathbf{\Phi}\mathbf{\Phi}^T)^{-1} (\dot{\mathbf{\Phi}}\dot{\mathbf{r}} + \beta\mathbf{\Phi}\dot{\mathbf{r}} + \alpha\mathbf{\Phi}). \quad (37) $$

Specifying the point $(x_o, y_o, z_o) = (.25, -.25, -1.85)$ as one initial condition, we can solve (37) using different departure directions, $(\dot{x}_o, \dot{y}_o, \dot{z}_o)$. It is noted that the choice of the initial condition and departure directions must be consistent with the kinematics of the system. That is, $\phi(x_o, y_o, z_o) = 0$, and $\mathbf{\Phi}^T(\dot{x}_o\dot{y}_o\dot{z}_o) = 0$. The resulting geodesics are shown in Fig. 2. It is noted that the specific time parameterization used does not affect the shape of the paths, only the speed at which they are traversed. Therefore, only the direction (not the magnitude) of the initial velocity dictates the shape of the path.

<figure><img src="image_3.png" /><figcaption>**Fig. 2** Solving the system of (34) geodesic force-free paths were computed for the surface $\phi = 4 + x^2 + y^2 - (z - \frac{1}{3} \cos 3x \cos 3y)^2 = 0$. All paths were chosen to emanate from the point $(0.25, -0.25, -1.85)$</figcaption></figure>
## 4 Least action in task space

The task space description of robotic systems, as formalized by Khatib with the operational space approach [17], presents an avenue of investigation with regard to the principle of least action. This is fundamentally due to the observation that tasks can be interpreted as rheonomic constraints enforced by a control law. The task space control problem can thus be interpreted as a rheonomically constrained least action problem.

We begin by expressing the dynamical equations for an unconstrained and fully actuated system in the form:

$$ \tau = J^T f + N^T \tau_p = M\ddot{q} + b + g \quad (38) $$

where the control torque has been decomposed into a task component, $J^T f$, and a null space or posture component, $N^T \tau_p$. The term $J(q) = \partial x/\partial q \in \mathbb{R}^{m_T \times n}$ is the Jacobian associated with task vector, $x(q) \in \mathbb{R}^{m_T}$. The term $f \in \mathbb{R}^{m_T}$ is the operational space force, $N(q)^T = \mathbf{1} - J^T \bar{J}^T \in \mathbb{R}^{n \times n}$ is the null space projection matrix, and $\bar{J}^T \in \mathbb{R}^{m_T \times n}$ is the dynamically consistent inverse [18] of the task Jacobian. The term $\tau_p \in \mathbb{R}^n$ is an arbitrary generalized force vector that is projected into the null space, $N^T$. Projecting (38) into task space yields the operational space equations [18],

$$ f = \Lambda(q)\ddot{x} + \mu(q, \dot{q}) + p(q) \quad (39) $$

where $\Lambda(q) \in \mathbb{R}^{m_T \times m_T}$ is the operational space mass matrix, $\mu(q, \dot{q}) \in \mathbb{R}^{m_T}$ is the operational space centrifugal and Coriolis force vector, and $p(q) \in \mathbb{R}^{m_T}$ is the operational space gravity vector [18],

$$ \Lambda = (J M^{-1} J^T)^{-1}, \quad (40) $$

$$ \mu = \Lambda J M^{-1} b - \Lambda \dot{J} \dot{q}, \quad (41) $$

$$ p = \Lambda J M^{-1} g. \quad (42) $$

As suggested earlier, tasks can be viewed as rheonomic servo (control) constraints [2, 5, 11] which enforce some motion control objective. In particular, we can express a task in the form of a set of rheonomic trajectory constraints, $x(q) = x_d(t)$, where $x_d$ is a desired task space trajectory.

Noting that $\delta x_d = \mathbf{0}$, since time is fixed under all virtual variations, we have $\delta x = J \delta q = \mathbf{0}$. Application of the principle of least action then yields:

$$ \delta I = 0 \quad \forall \delta q(t_o) = \delta q(t_f) = \mathbf{0} \quad \text{and} \quad J \delta q = \mathbf{0}. \quad (43) $$

Thus,

$$ \delta I = \int_{t_o}^{t_f} \left( \frac{\partial \mathcal{L}}{\partial q} - \frac{d}{dt} \frac{\partial \mathcal{L}}{\partial \dot{q}} \right) \cdot \delta q \, dt = 0 \quad \forall \delta q \mid J \delta q = \mathbf{0}. \quad (44) $$

This implies the following Euler-Lagrange equations,

$$ \frac{d}{dt} \frac{\partial \mathcal{L}}{\partial \dot{q}} - \frac{\partial \mathcal{L}}{\partial q} = J^T f. \quad (45) $$

As in Sect. 2, identical equations could have been obtained by embedding the rheonomic constraints directly in the Lagrangian. Adjoining the constraints yields

$$ \mathcal{L}_{\text{aug}}(q, \dot{q}, \lambda) \triangleq \mathcal{L}(q, \dot{q}) + f^T [x(q) - x_d(t)] \quad (46) $$
and the stationary value of I would be sought for all variations that vanish at the endpoints. Recalling that $\delta\mathbf{x}_d = \mathbf{0}$,

$$ \delta\mathcal{L}_{\text{aug}} = \delta\mathcal{L} + \mathbf{f}^T \delta\mathbf{x} = \delta\mathcal{L} + \mathbf{f}^T \mathbf{J} \delta\mathbf{q}. \quad (47) $$

In either case, (45) can be expressed as

$$ \mathbf{J}^T \mathbf{f} = \mathbf{M} \ddot{\mathbf{x}} + \mathbf{b} + \mathbf{g} \quad (48) $$

subject to $\ddot{\mathbf{x}}(\mathbf{q}) = \ddot{\mathbf{x}}_d(t)$. This is similar to (38) except that no null space term is present. That is, $\boldsymbol{\tau} = \mathbf{J}^T \mathbf{f}$ (absent any null space torque) achieves the control objective consistent with least action. Projecting (45) into task space yields the operational space equations noted earlier,

$$ \mathbf{f} = \mathbf{\Lambda} \ddot{\mathbf{x}} + \boldsymbol{\mu} + \mathbf{p}. \quad (49) $$

Since the trajectory constraints are being imposed by a servo, in practice they cannot be perfectly achieved in open loop and drift would occur. Consequently the trajectory constraint equations need to be augmented with feedback terms. For example, the expression

$$ \ddot{\mathbf{x}} = \mathbf{f}^* = \ddot{\mathbf{x}}_d(t) + k_v [\dot{\mathbf{x}}_d(t) - \dot{\mathbf{x}}] + k_p [\mathbf{x}_d(t) - \mathbf{x}] \quad (50) $$

represents a linear servo control law. This is analogous to the numerical constraint stabilization that was employed in (16). The equations of motion for our servo enabled system are

$$ \mathbf{f} = \hat{\mathbf{\Lambda}} \mathbf{f}^* + \hat{\boldsymbol{\mu}} + \hat{\mathbf{p}} \quad (51) $$

where the $\hat{\cdot}$ represents estimates of the dynamic properties since the servo is assumed not to have perfect knowledge of the system. Equation (51) provides feedback linearization by compensating for the dynamics of the system.

## 5 Least action of cost criteria

We now pose the problem of minimizing a cost criterion subject to a motion control task. This can be performed for an instantaneous potential based criterion, $U(\mathbf{q})$, by using a gradient descent method in conjunction with the task/posture decomposition of (38). Given the Lagrangian form of the system equations of motion

$$ \boldsymbol{\tau} = \frac{d}{dt} \frac{\partial \mathcal{L}}{\partial \dot{\mathbf{q}}} - \frac{\partial \mathcal{L}}{\partial \mathbf{q}} \quad (52) $$

our overall control torque is

$$ \boldsymbol{\tau} = \mathbf{J}^T \mathbf{f} + N^T \boldsymbol{\tau}_p. \quad (53) $$

The posture term, $\boldsymbol{\tau}_p$, can be chosen to correspond to the gradient descent, $-\partial U/\partial \mathbf{q}$, of our cost criterion. In this case, the equations of motion are

$$ \mathbf{J}^T \mathbf{f} = \frac{d}{dt} \frac{\partial \mathcal{L}}{\partial \dot{\mathbf{q}}} - \frac{\partial \mathcal{L}}{\partial \mathbf{q}} + N^T \frac{\partial U}{\partial \mathbf{q}} \quad (54) $$
or in matrix form

$$J^T f = M \ddot{q} + b + g + N^T g_U \quad (55)$$

subject to the task $\ddot{x}(q) = \ddot{x}_d(t)$. The term $g_U$ is the gradient of the potential, $U$, analogous to the gravity vector, $g$, in the Lagrangian system (gradient of the potential energy, $V$). We complement (55) with the task space control law given by (50) and (51).

Gradient descent seeks to reduce an instantaneous criterion rather than extremize a criterion over an integration interval. To address this latter case, we define the action integral associated with a cost criterion as

$$I \triangleq \int_{t_o}^{t_f} L(q, \dot{q}) dt \quad (56)$$

where $L(q, \dot{q})$ is an instantaneous criterion. If no task trajectory constraints are specified we have

$$\delta I = 0 \quad \forall \delta |\delta q(t_o) = \delta q(t_f) = 0. \quad (57)$$

It is noted that (56) and (57) represent an optimization problem where a path, $q(t)$, is sought [4] rather than an optimal control problem where a control history, $u(t)$, is sought. The optimal control problem will not be discussed here but the reader is referred to [7, 25].

Equations (56) and (57) result in the Euler-Lagrange equations,

$$\frac{d}{dt} \frac{\partial L}{\partial \dot{q}} - \frac{\partial L}{\partial q} = 0. \quad (58)$$

Using indicial notion, we can express (58) as

$$\underbrace{\frac{\partial^2 L}{\partial \dot{q}_i \partial \dot{q}_j}}_{M_{L_{ij}}} \ddot{q}_j + \underbrace{\frac{\partial^2 L}{\partial \dot{q}_i \partial q_j}}_{b_{L_i} + g_{L_i}} \dot{q}_j - \frac{\partial L}{\partial q_i} = 0 \quad (59)$$

or, in matrix form,

$$M_L(q, \dot{q})\ddot{q} + b_L(q, \dot{q}) + g_L(q) = 0. \quad (60)$$

As in Sect. 2, if $M_L$ is positive definite over the actual path the stationary value of $I$ corresponds to a minimum (given a sufficiently small time interval).

Thus far, the sets of second order differential equations that have been derived from least action principles have been assumed to form initial value problems (IVP). That is, the initial conditions $q(t_o)$ and $\dot{q}(t_o)$ were assumed to be specified, rather than the boundary conditions, $q(t_o)$ and $q(t_f)$, that appear in the action integral. It may, however, be more appropriate to pose the system of (58) as a two point boundary value problem (TPBVP) where $q(t_o)$ and $q(t_f)$ are specified. In this case, various shooting methods can be employed to solve the TPBVP. These solution methods will not be addressed here but the reader is referred to [7, 23].

Imposing rheonomic task trajectory constraints, $x(q) = x_d(t)$, implies

$$\delta I = 0 \quad \forall \delta |\delta q(t_o) = \delta q(t_f) = 0 \text{ and } J \delta q = 0 \quad (61)$$

which yields the system

$$\frac{d}{dt} \frac{\partial L}{\partial \dot{q}} - \frac{\partial L}{\partial q} = J^T \lambda \quad (62)$$
or

$$J^T \lambda = M_L \ddot{q} + b_L + g_L \quad (63)$$

subject to $\ddot{x}(q) = \ddot{x}_d(t)$. Projecting (63) into task space yields the operational space equations for this system:

$$\lambda = \Lambda_L(q, \dot{q})\ddot{x} + \mu_L(q, \dot{q}) + p_L(q) \quad (64)$$

where $\Lambda_L$, $\mu_L$, and $p_L$ are analogous to $\Lambda$, $\mu$, and $p$. That is, they have the same form as the expressions in (40) through (42), but with $M$, $b$, and $g$ replaced by $M_L$, $b_L$, and $g_L$.

Applying constraint stabilization, the trajectory constraints can be expressed as

$$\ddot{x} = \lambda^* = \ddot{x}_d(t) + \beta[\dot{x}_d(t) - \dot{x}] + \alpha[x_d(t) - x] \quad (65)$$

and the constraint stabilized system is

$$\lambda = \Lambda_L \lambda^* + \mu_L + p_L \quad (66)$$

## 5.1 Robotic cost criterion

The norm of the torque change in a robotic system serves as one example of a mechanical performance criterion. Using this criterion, we may seek a motion which extremizes the integral of the torque change over the movement interval (see Sect. 5.2). If we apply this optimization to the actuator torque associated with overcoming gravity, we have the following action integral.

$$I = \int_{t_o}^{t_f} L(q, \dot{q}) dt \triangleq \int_{t_o}^{t_f} \dot{g} \cdot \dot{g} dt. \quad (67)$$

### 5.1.1 Example

We wish to solve the optimization problem of (56) and (61) for the $n = 4$ degree-of-freedom robot manipulator shown in Fig. 3. Specifically, a trajectory, $q(t)$, is sought which moves the

<figure><img src="image_4.png" /><figcaption>**Fig. 3 (Left)** A redundant torque actuated robot. Initial and final configurations, $q(t_o)$ and $q(t_f)$, associated with movement to a target, $x_f$, along a prescribed path, $x_d(t)$, are shown. (Right) Time history of the robot between configurations $q(t_o)$ and $q(t_f)$. Motion corresponds to extremization of the gravity torque change action integral, subject to the rheonomic constraint</figcaption></figure>
<figure><img src="image_5.png" /><figcaption>**Fig. 4 (Left)** Time history of end effector trajectory for the robot manipulator showing compliance with the rheonomic constraint. **(Right)** Time history of gravity torque change, $L(q, \dot{q}) = \dot{g} \cdot \dot{g}$, associated with extremizing the action integral (67), subject to the rheonomic constraint</figcaption></figure>

robot end effector to a target location, $\mathbf{x}_f$, along a prescribed path, $\mathbf{x}_d(t)$, while extremizing the action integral of (67) associated with gravity torque change. The manipulator is kinematically redundant with respect to the $m_T = 2$ degree-of-freedom motion task specified.

It is noted that for the specific definition of $L$ used in this example the expression,

$$M_{L_{ij}} = \frac{\partial^2 L}{\partial \dot{q}_i \partial \dot{q}_j} \qquad (68)$$

cannot generally be shown to be positive definite over any path that yields stationary action for arbitrary endpoint boundary conditions and task trajectory constraints. So, while least action will always yield an extremal solution it will not necessarily yield a minimal one in all cases.

Under task constraints, the system which extremizes the action is given by (63), (65), and (66). Figures 3 and 4 display time histories of joint motion, endpoint motion, and torque change for a simulation run. The solution yields the path between configurations $q(t_o)$ and $q(t_f)$ which extremizes gravity torque change, given rheonomic constraints on the end effector of the robot, $\mathbf{x} = \mathbf{x}_d(t)$.

## 5.2 Biomechanical cost criterion

We begin with a general consideration of biomechanical effort measures. An instantaneous effort measure can be used to seek a trajectory, consistent with task constraints, that minimizes the integral of that measure over the time interval of motion.

As a prelude to the muscle effort measure used here, we consider two effort measures based on skeletal dynamics. Mechanical power, $P$, can be used as an instantaneous effort measure. Power integrated over the movement interval yields

$$W \triangleq \int_{t_o}^{t_f} P dt = \int_{t_o}^{t_f} \tau \cdot \dot{q} dt. \qquad (69)$$

The minimum work model [24] thus seeks a trajectory, consistent with task constraints, that minimizes the work function, $W$. Rather than minimizing mechanical work another objective which may characterize human movement is the minimization of torque change.
The norm measure of instantaneous torque change is $||\dot{\boldsymbol{\tau}}||^2 = \dot{\boldsymbol{\tau}} \cdot \dot{\boldsymbol{\tau}}$. Integrating this measure over the movement interval yields

$$I \triangleq \int_{t_o}^{t_f} \dot{\boldsymbol{\tau}} \cdot \dot{\boldsymbol{\tau}} dt. \qquad (70)$$

The minimum torque change model [26] thus seeks a trajectory, consistent with task constraints that minimizes this integral.

The minimum work and minimum torque change models utilize quantities that are derivable purely from skeletal kinematics and that are not specific to muscle actuation. It is thus useful to consider an analogous measure which encodes information about the musculoskeletal system. Activation, which represents the normalized exertion of muscles, provides a natural starting point for constructing such a measure of neuromuscular action. Specifically, the magnitude of the muscle activation vector, $\boldsymbol{a}$, has been used as an optimization criterion in both static and dynamic optimizations [1, 8].

We begin by defining an instantaneous muscle effort measure, $L = ||\boldsymbol{a}||^2$. To express this measure in joint space, we first represent the joint torques, $\boldsymbol{\tau}$, in terms of muscle activation. To do this we employ a Hill-type active state model [28] with a stiff tendon assumption [10, 12]. In a Hill-type active state model, activation dynamics is modeled as a first order differential equation, relating muscle activation to muscle excitation. We will not consider activation dynamics in the subsequent analysis since the dynamics of our musculoskeletal system will be assumed to be much slower than the activation dynamics. Nevertheless, it may be desirable to consider it for application of the subsequent methodology to fast dynamic motions.

Given a stiff tendon assumption, the following relationship can be established,

$$\boldsymbol{\tau} = \boldsymbol{K}_{\tau}(\boldsymbol{q}, \dot{\boldsymbol{q}})\boldsymbol{a} \qquad (71)$$

where $\boldsymbol{K}_{\tau}(\boldsymbol{q}, \dot{\boldsymbol{q}})$ is the muscle torque-activation gain matrix. That is, for a system of $r$ muscles and $n$ generalized coordinates it maps muscle activation, $\boldsymbol{a}$, to joint torque, $\boldsymbol{\tau}$. The muscle torque-activation gain matrix is computed as

$$\boldsymbol{K}_{\tau} = - \left( \frac{\partial \boldsymbol{l}}{\partial \boldsymbol{q}} \right)^{\mathrm{T}} \mathrm{diag}(\boldsymbol{f}_{S}) = - \boldsymbol{L}^{\mathrm{T}} \boldsymbol{K}_{f} \qquad (72)$$

where $\boldsymbol{l}(\boldsymbol{q})$ is the vector of total muscle-tendon path lengths and $\boldsymbol{f}_S(l_M, \dot{l}_M)$ is the vector of muscle forces at full activation (saturation), as a function of the muscle lengths and muscle contraction velocities. For a given muscle-tendon pair, the muscle length and contraction velocity can be computed from the total muscle-tendon path length/velocity as

$$l_M = l - l_T = l_{T_o} \quad \text{and} \quad \dot{l}_M = \dot{l}. \qquad (73)$$

The term $l_T$ is the tendon length and it is constant in the stiff tendon model. That is, $l_T = l_{T_o}$, where $l_{T_o}$ is a constant tendon slack length.

The term $\boldsymbol{L}(\boldsymbol{q}) = \partial \boldsymbol{l}/\partial \boldsymbol{q}$ in (72) is the muscle Jacobian and $\boldsymbol{K}_f(\boldsymbol{q}, \dot{\boldsymbol{q}}) = \mathrm{diag}(\boldsymbol{f}_S)$ maps muscle activation, $\boldsymbol{a}$, to muscle force, $\boldsymbol{f}$. The saturation muscle forces, $\boldsymbol{f}_S$, used to construct $\boldsymbol{K}_f$ are computed from a constitutive model [10]. A typical muscle force-length-velocity surface at full activation is shown in Fig. 5. The normalization constants $f_o$, $l_{M_o}$, and $v_{M_o}$ represent the maximum isometric force, optimal fiber length, and maximum contraction velocity, respectively. These are parameters specific to an individual muscle.
There are typically more muscles spanning a set of joints than the number of generalized coordinates used to describe those joints. Thus, (71) will have an infinite set of solutions for **a**. Choosing the solution, **a**<sub>o</sub>, which has the smallest magnitude yields,

$$ \mathbf{a}_o = \mathbf{K}_{\tau}^{+} \boldsymbol{\tau} = \mathbf{K}_{\tau}^{T} (\mathbf{K}_{\tau} \mathbf{K}_{\tau}^{T})^{-1} \boldsymbol{\tau} \quad (74) $$

where $\mathbf{K}_{\tau}^{+}$ is the pseudo-inverse of $\mathbf{K}_{\tau}$. Our instantaneous muscle effort measure can then be expressed as

$$ L = \|\mathbf{a}_o\|^2 = \boldsymbol{\tau}^T (\mathbf{K}_{\tau} \mathbf{K}_{\tau}^T)^{-1} \boldsymbol{\tau}. \quad (75) $$

Expressing this effort measure in constituent terms and dissecting the structure, we have

$$ L = \boldsymbol{\tau}^T \left[ \underbrace{\mathbf{L}^T \left( \underbrace{\mathbf{K}_f \mathbf{K}_f^T}_{\text{kinematics}} \right)}_{\text{kinematics}} \underbrace{\mathbf{L}}_{\text{kinematics}} \right]^{-1} \boldsymbol{\tau}. \quad (76) $$

This allows us to gain some physical insight into what is being measured. The terms inside the brackets represent a measure of the net capacity of the muscles. This is a combination of the force generating kinetics of the muscles as well as the mechanical advantage of the muscles, as determined by the muscle path geometry. The terms outside of the brackets represent the kinetic torque requirements of the task/posture.

It is noted that the solution of (71) expressed in (74) corresponds to a constrained minimization of $\|\mathbf{a}\|^2$; however, this solution does not enforce the constraint that muscle activation must be positive (muscles can only produce tensile forces). Imposing inequality constraints, $a_i \ge 0$, on the activations requires a quadratic programming approach to performing the constrained minimization. In this case, the solution of (71) which minimizes $\|\mathbf{a}\|^2$ and satisfies $a_i \ge 0$ can be represented in shorthand as

$$ \mathbf{a}_o = \text{qp}(\mathbf{K}_{\tau}, \boldsymbol{\tau}, \|\mathbf{a}\|^2, a_i \ge 0) \quad (77) $$

where $\text{qp}(\cdot)$ represents the output of a quadratic programming function (e.g., quadprog() in the Matlab optimization toolbox [21]). Our muscle effort criterion is then $L = \|\mathbf{a}_o\|^2$,

<figure><img src="image_6.png" /><figcaption>**Fig. 5** Muscle force-length-velocity surface at full activation. The terms $f_o$, $l_{M_o}$, and $v_{M_o}$ are the maximum isometric force, optimal fiber length, and maximum contraction velocity, respectively. These are used as normalizing constants</figcaption></figure>
where $a_o$ is given by (77). Despite the preferred use of quadratic programming for computational purposes, (76) provides valuable insights at a conceptual level.

### 5.2.1 Example

In this problem, we consider a simplified $n = 3$ degree-of-freedom model of the human arm actuated by $r = 14$ muscles. The model is depicted in Fig. 6. The system is kinematically redundant with respect to the $m_T = 2$ degree-of-freedom task of positioning the hand. The muscle attachment and force-length data were taken from the study of [16]. The maximum isometric forces, $f_o$, optimal fiber lengths, $l_{M_o}$, and tendon slack lengths, $l_{T_o}$, are shown in Table 1.

We wish to control the hand to move to a target, $\mathbf{x}_f$, location while minimizing an instantaneous muscle effort criterion defined as

$$U(\mathbf{q}) \triangleq \mathbf{g}^T(\mathbf{K}_{\tau}\mathbf{K}_{\tau}^T)^{-1}\mathbf{g} \quad (78)$$

where $\mathbf{K}_{\tau} \in \mathbb{R}^{6 \times 12}$ is computed from (72) and each muscle force is modeled as

$$f_S(\mathbf{q}) = f_o e^{-5(\frac{l(\mathbf{q})}{l_{M_o}}-1)^2}. \quad (79)$$

In (78), the general torque term, $\tau$, has been replaced by the gravity torque, $g$, since gravity terms dominate in this example where the motion is relatively slow. No task trajectory, $\mathbf{x}_d(t)$, will be specified, just the final target location, $\mathbf{x}_f$.

The system given by (50), (51) and (55) can then be solved. We use a simplified form of (50) and (51) such that,

$$\mathbf{f}^* = k_p(\mathbf{x}_f - \mathbf{x}) - k_v\dot{\mathbf{x}}, \quad (80)$$

<figure><img src="image_7.png" /><figcaption>**Fig. 6** A simplified model of the human arm actuated by $r = 14$ muscles. The muscle attachment and force-length data were taken from the study of [16]</figcaption></figure>
<table><caption>**Table 1** Maximum isometric forces, $f_o$, optimal fiber lengths, $l_{M_o}$, and tendon slack lengths, $l_{T_o}$, for the 14 muscles used in the model of Fig. 6. The muscle attachment and force-length data were taken from the study of [16]</caption><thead><tr><th>Muscle</th><th>Span joint</th><th>f<sub>o</sub> (N)</th><th>l<sub>M<sub>o</sub></sub> (cm)</th><th>l<sub>T<sub>o</sub></sub> (cm)</th></tr></thead><tbody><tr><td>DELT1</td><td>shoulder</td><td>1142.60</td><td>9.76</td><td>9.30</td></tr><tr><td>DELT3</td><td>shoulder</td><td>259.88</td><td>13.67</td><td>3.80</td></tr><tr><td>TMAJ</td><td>shoulder</td><td>425.39</td><td>16.24</td><td>2.0</td></tr><tr><td>TMIN</td><td>shoulder</td><td>354.25</td><td>7.41</td><td>7.13</td></tr><tr><td>PECM1</td><td>shoulder</td><td>364.41</td><td>14.42</td><td>0.28</td></tr><tr><td>PECM3</td><td>shoulder</td><td>390.55</td><td>13.85</td><td>13.20</td></tr><tr><td>BRA</td><td>elbow</td><td>987.26</td><td>8.58</td><td>5.35</td></tr><tr><td>TLAT</td><td>elbow</td><td>624.30</td><td>11.38</td><td>9.80</td></tr><tr><td>TMED</td><td>elbow</td><td>624.30</td><td>11.38</td><td>9.08</td></tr><tr><td>PT</td><td>elbow</td><td>566.22</td><td>4.92</td><td>9.80</td></tr><tr><td>FDSM</td><td>wrist</td><td>91.03</td><td>7.49</td><td>31.80</td></tr><tr><td>FDPM</td><td>wrist</td><td>81.65</td><td>8.35</td><td>29.30</td></tr><tr><td>EPL</td><td>wrist</td><td>39.46</td><td>5.40</td><td>22.05</td></tr><tr><td>EIP</td><td>wrist</td><td>21.70</td><td>5.89</td><td>20.50</td></tr></tbody></table>

$$f = f^* + \hat{p}. \qquad (81)$$

In this case, no model of the dynamic properties (except for the gravity term, $\hat{p}$) is included in (81). Also, the terms $\ddot{x}_d(t)$ and $\dot{x}_d(t)$ have been omitted in (80) and $x_d(t)$ has been replaced by the final target location, $x_f$, since the goal is to move to a target location without specifying a trajectory.

To the posture space portion of (55), we add a dissipative term, $k_d \dot{q}$, and a gain, $k_e$, on the gradient descent term, $g_u$. Finally, the gravity vector, $g$, is perfectly compensated for in the overall control torque. Thus, we have

$$J^T f = M \ddot{q} + b + N^T (k_e g_u + k_d \dot{q}). \qquad (82)$$

Figures 7 and 8 display time histories of joint motion, hand motion and muscle effort for a simulation run. We can see that the controller achieves the final target objective while the null space control simultaneously seeks to reduce the instantaneous muscle effort (consistent with the task requirement). It is recalled that no compensation for the dynamics (except for gravity) was included in (81). Thus, there is no feedback linearization present in the control. Normally, perfect feedback linearization without explicit trajectory tracking would produce straight line motion to the goal. In the absence of feedback linearization, nonstraight line motion results.

We now wish to solve the optimization problem of (56) and (61). Specifically, a trajectory is sought which moves the hand to a target location (see Fig. 9), while extremizing muscle action,

$$I \triangleq \int_{t_o}^{t_f} L(q, \dot{q}) dt. \qquad (83)$$

In this case, we will define the instantaneous criterion as

$$L(q, \dot{q}) = \sum_{i=1}^{r} \left( \frac{l_{M_i} - l_{M_{o_i}}}{l_{M_{o_i}}} \right)^2 + \sum_{i=1}^{r} \left( \frac{\dot{l}_{M_i}}{v_{M_{o_i}}} \right)^2 + \dot{q}_3^2. \qquad (84)$$
<figure><img src="image_8.png" /><figcaption>**Fig. 7 (Left)** A redundant muscle-actuated model of the human arm. Initial and final configurations, $q(t_o)$ and $q(t_f)$, associated with gradient descent movement to a target, $x_f$, are shown. (Right) Time history of the arm motion to the target. Motion corresponds to gradient descent of the muscle effort, subject to the task requirement</figcaption></figure>

<figure><img src="image_9.png" /><figcaption>**Fig. 8 (Left)** Time history of hand trajectory for human arm model. (Right) Time history of muscle effort criterion, $U(q) = g^T(K_g K_g^T)^{-1}g$, associated with gradient descent. The null space control seeks to reduce the muscle effort but is also constrained by the task requirement</figcaption></figure>

It is noted that this is a modification of (76). Nevertheless, the criterion of (84) is just as suitable as (76) to demonstrate the relevant methods, and, it is computationally less demanding to generate and solve the Euler–Lagrange equations for (84) than for (76). The term $\dot{q}_3^2$ is included to mitigate excessive flexion-extension of the wrist.

As in Sect. 5.1.1, for the specific definition of $L$ used in this example, the expression

$$M_{L_{ij}} = \frac{\partial^2 L}{\partial \dot{q}_i \partial \dot{q}_j} \qquad (85)$$
<figure><img src="image_10.png" /><figcaption>**Fig. 9 (Left)** A redundant muscle-actuated model of the human arm. Initial and final configurations, $q(t_o)$ and $q(t_f)$, associated with movement to a target, $x_f$, are shown. (Right) Time history of the arm motion between configurations $q(t_o)$ and $q(t_f)$. Motion corresponds to extremization of the muscle effort action integral</figcaption></figure>

<figure><img src="image_11.png" /><figcaption>**Fig. 10 (Left)** Time history of hand trajectory for human arm model. (Right) Time history of muscle effort criterion associated with extremizing the action integral (84)</figcaption></figure>

cannot generally be shown to be positive definite over any path that yields stationary action for arbitrary endpoint boundary conditions and task trajectory constraints.

Under task constraints the system which extremizes the muscle action is given by equations (63) and (66), where the servo law,

$$ \ddot{x} = \lambda^* = \alpha(x_f - x) - \beta\dot{x} \quad (86) $$

is used. The solution yields the muscle action extremizing path between configurations $q(t_o)$ and $q(t_f)$, given the hand target constraint. Figures 9 and 10 display time histories of joint
motion, hand motion and muscle effort for a simulation run. The straight line motion of the
hand results from the feedback linearization employed.

6 Conclusion

In this paper, least action principles have been used as a template for investigating problems involving constraints and task-level control. With regard to constraints the principle of least action and the principle of least curvature were addressed for holonomically constrained multibody systems. In particular, the principle of least curvature was demonstrated as an insightful means of computing geodesics, using a mechanical analog.

Least action also provides a perspective for interpreting task-level control problems in
terms of rheonomic servo constraints. Control in task space, as governed by the operational
space equations of motion, was shown to involve the rheonomically constrained minimiza-
tion of action. This fact provides a basis for investigating the constrained extremization of
cost criteria. Replacing the Lagrangian, $L$, with a cost criterion, $L$, least action can be used
to formulate an extremization problem. From the corresponding Euler–Lagrange equations,
we derived the task space description of the system, given a set of rheonomic trajectory
constraints.

Examples of action extremization were presented for a problem involving a torque actu-
ated robot manipulator and for problems involving muscle-based actuation of a human arm
model. The action extremization problem was solved for the example of a four degree-of-
freedom robot using a torque change criterion. Subsequently, a Hill-type model was used
to establish a muscle-based cost criterion. An example was presented which demonstrated
the gradient descent minimization of a muscle-based potential for a three degree-of-freedom
human arm model. Another example was presented which demonstrated the extremization
of a muscle-based action integral for the same arm model. These examples serve to illus-
trate the efficacy of our approaches and provide a practical motivation for addressing more
complex problems of this type in robotics and biomechanics.

**Acknowledgements** Support for this work was provided by National Institute of Health U54GM072970, HD33929 and HD046814. The authors would like to thank Jaeheung Park, James Warren and Clay Anderson for their helpful comments on this work. Vincent De Sapio would also like to thank Sandia National Laboratories for supporting this work.

**References**

1. Anderson, F.C., Pandy, M.G.: Static and dynamic optimization solutions for gait are practically equivalent. J. Biomech. 34(2), 153–161 (2001)

2. Bajodah, A.H., Hodges, D.H., Chen, Y.: Inverse dynamics of servo-constraints based on the generalized inverse. Nonlinear Dyn. 39(1–2), 179–196 (2005)

3. Baumgarte, J.: Stabilization of constraints and integrals of motion in dynamical systems. Comput. Methods Appl. Mech. Eng. 1, 1–16 (1972)

4. Biess, A., Nagurka, M., Flash, T.: Simulating discrete and rhythmic multi-joint human arm movements by optimization of nonlinear performance indices. Biol. Cybern. 95(1), 31–53 (2006)

5. Blajer, W., Kolodziejczyk, K.: A geometric approach to solving problems of control constraints: theory and a DAE framework. Multibody Syst. Dyn. 11(4), 343–364 (2004)

6. Bloch, A.M.: Nonholonomic Mechanics and Control. Springer, Berlin (2003)

7. Bryson, A.E.: Dynamic Optimization. Addison-Wesley, Reading (1999)

8. Crowninshield, R.D., Brand, R.A.: A physiologically based criterion of muscle force prediction in locomotion. J. Biomech. 14, 793–801 (1981)
9. De Sapio, V., Khatib, O.: Operational space control of multibody systems with explicit holonomic constraints. In Proceedings of the 2005 IEEE International Conference on Robotics and Automation, Barcelona, pp. 2961–2967 (2005)

10. De Sapio, V., Warren, J., Khatib, O., Delp, S.: Simulating the task-level control of human motion: a methodology and framework for implementation. Vis. Comput. 21(5), 289–302 (2005)

11. De Sapio, V., Khatib, O., Delp, S.: Task-level approaches for the control of constrained multibody systems. Multibody Syst. Dyn. 16(1), 73–102 (2006)

12. De Sapio, V., Warren, J., Khatib, O.: Predicting reaching postures using a kinematically constrained shoulder model. In: Lenarčič, J., Roth, B. (eds.) Advances in Robot Kinematics, pp. 209–218. Springer, Berlin (2006)

13. Gauss, K.F.: Über ein neues allgemeines Grundgesetz der Mechanik (On a new fundamental law of mechanics). J. Reine Angew. Math. 4, 232–235 (1829)

14. Goldstein, H., Poole, C., Safko, J.: Classical Mechanics, 3rd edn. Addison-Wesley, Reading (2002)

15. Hertz, H.: The Principles of Mechanics Presented in a New Form. Dover, New York (2004)

16. Holzbaur, K.R.S., Murray, W.M., Delp, S.L.: A model of the upper extremity for simulating musculoskeletal surgery and analyzing neuromuscular control. Ann. Biomed. Eng. 33(6), 829–840 (2005)

17. Khatib, O.: A unified approach to motion and force control of robot manipulators: the operational space formulation. Int. J. Robot. Res. 3(1), 43–53 (1987)

18. Khatib, O.: Inertial properties in robotic manipulation: an object level framework. Int. J. Robot. Res. 14(1), 19–36 (1995)

19. Lanczos, C.: The Variational Principles of Mechanics, 4th edn. Dover, New York (1986)

20. Marsden, J.E., Ratiu, T.S.: Introduction to Mechanics and Symmetry. Springer, Berlin (1999)

21. Optimization Toolbox 3—User’s Guide. The Mathworks (2007)

22. Papavastavridis, J.G.: Analytical Mechanics: A Comprehensive Treatise on the Dynamics of Constrained Systems for Engineers, Physicists, and Mathematicians. Oxford University Press, Oxford (2002)

23. Roberts, S.M., Shipman, J.S.: Two-Point Boundary Value Problems: Shooting Methods. American Elsevier, Oxford (1972)

24. Soechting, J.F., Buneo, C.A., Herrmann, U., Flanders, M.: Moving effortlessly in three dimensions: does wonders law apply to arm movement? J. Neurosci. 15(9), 6271–6280 (1995)

25. Stengel, R.F.: Optimal Control and Estimation. Dover, New York (1994)

26. Uno, Y., Kawato, M., Suzuki, R.: Formation and control of optimal trajectory in human multijoint arm movement. Biol. Cybern. 61, 89–101 (1989)

27. Vujanović, B.D., Atanacković, T.M.: An Introduction to Modern Variational Techniques in Mechanics and Engineering. Birkhäuser, Basel (2004)

28. Zajac, F.E.: Muscle and tendon: properties, models, scaling, and application to biomechanics and motor control. In: Bourne, J.R. (ed.) Critical Reviews in Biomedical Engineering, pp. 359–411. CRC Press, Boca Raton (1989)