
Robot Dynamics: Equations and Algorithms
Roy Featherstone
Department of Computer Science
University of Wales, Aberystwyth
Penglais, Aberystwyth SY23 3DB, Wales, UK
David Orin
Department of Electrical Engineering
Ohio State University
Columbus, OH 43210-1272, USA
Abstract
This paper reviews some of the accomplishments in
the field of robot dynamics research, from the devel-
opment of the recursive Newton-Euler algorithm to
the present day. Equations and algorithms are given
for the most important dynamics computations, ex-
pressed in a common notation to facilitate their pre-
sentation and comparison.
1 Introduction
Many contributions have been made in the area of
robot dynamics since the earliest work more than two
decades ago. In the field of the dynamics of mecha-
nisms, the robotics community has especially focused
on the problem of computational efficiency. In fact,
many of the most efficient algorithms in dynamics,
that are applicable to a wide class of mechanisms, were
developed by robotics researchers [23, 33, 10].
While computational efficiency continues to be im-
portant for the simulation and control of increasingly
complex mechanisms operating at higher speeds, other
aspects of the dynamics problem are also important.
Algorithms should be formulated with a compact set
of equations for ease of development and implemen-
tation. On the other hand, there should be a clear
relationship between these equations and the recur-
sive set from which the greatest computational effi-
ciency is obtained. The use of spatial notation and
spatial operator algebra [11, 29] has been very effec-
tive in this regard. Also, it is important to develop
algorithms which have applicability to robotic mech-
anisms with general geometries and joint structures.
While the early algorithms [23, 33, 10] were applica-
0
c
2000 IEEE. Personal use of this material is permitted.
However, permission to reprint/republish this material for ad-
vertising or promotional purposes or for creating new collective
works for resale or redistribution to servers or lists, or to reuse
any copyrighted component of this work in other works must be
obtained from the IEEE.
This is an electronic version of a paper that appeared orig-
inally in Proc. IEEE Int. Conf. Robotics & Automation, San
Francisco, CA, 2000, pp. 826–834. It is word-for-word identical
to the original, but the formatting is slightly different.
ble to single, open-chain manipulators with either ro-
tational or prismatic joints, general joint models have
since been developed and applied to more complex
configurations [11].
The purpose of this paper is to review some of the
major contributions in robot dynamics. The equa-
tions and algorithms for the most important recursive
computations will be presented in a common, concise
notation in Section 3. As given, the algorithms are
directly applicable to tree-structure mechanisms. The
equations for closed-loop systems are then developed
in a compact form, and this is followed by a discussion
of global analysis techniques. Space does not permit
us to include references to all of the important con-
tributions in the field. None-the-less the most cited
papers are generally included.
2 Foundational Work in Robot Dy-
namics
Early efforts in robot dynamics were directed to ex-
pressing the equations of motion for robot manipula-
tors, and other single open-chain systems, in the most
efficient form. Algorithms were developed for the most
common computations for robot analysis, control, and
simulation. In this section, emphasis will be placed on
outlining the major contributions and the work most
often cited. Unfortunately, space does not permit us
to provide a comprehensive review of the extensive lit-
erature in the area. See some of the early books in the
area for additional references [7, 11].
The classic approach to expressing the equations of
motion was based on a Lagrangian formulation [18,
31] of the problem. Algorithms developed using
Lagrangian dynamics were O(N
4
), and had to be
adapted for real-time control. Efficient low-order al-
gorithms were sought for three major computations:
1. inverse dynamics in which the required joint ac-
tuator torques/forces are computed from a speci-
fication of the manipulator’s trajectory (position,
velocity, and acceleration),
2. forward dynamics in which the applied joint ac-