Embodied AI Glossary中文

Spatial Vector Algebra

空间向量代数Advanced

A notation that packs angular and linear quantities into 6-dimensional vectors for computing multi-body dynamics.

Spatial vector algebra was systematically developed by Roy Featherstone, and forms the mathematical foundation of his book Rigid Body Dynamics Algorithms. The approach packs a rigid body's angular velocity and linear velocity into a single 6-dimensional 'motion vector,' and its torque and force into a single 6-dimensional 'force vector,' with inertia likewise written as a 6×6 spatial inertia matrix — letting Newton's equation for translation and Euler's equation for rotation merge into one 6-dimensional equation. Motion vectors and force vectors are two distinct kinds of quantity, each with its own cross-product operation; they're fundamentally the same as the twist and wrench from screw theory. The benefit is shorter formulas and a uniform way of transforming between coordinate frames, which keeps recursive algorithms tidy: the recursive Newton-Euler algorithm (RNEA, for inverse dynamics), the articulated body algorithm (ABA, for forward dynamics), and the composite rigid body algorithm (CRBA, for the mass matrix) all use this notation. Dynamics libraries such as Pinocchio are all built on Featherstone's algorithms.

ExampleA torso tumbling through the air has its velocity written as a 6-dimensional vector: by Featherstone's convention, the first 3 entries are angular velocity and the last 3 are linear velocity (some libraries use the opposite order, so it pays to check when reading code). Converting from a parent link's frame to a child link's frame is just multiplying by a single 6×6 transformation matrix, which converts angular and linear velocity together in one step.

Also called
Spatial Vectors, 6D Spatial Vectors
Related
Recursive Newton-Euler Algorithm · Articulated Body Algorithm · Composite Rigid Body Algorithm · Twist · Wrench · Pinocchio
Sources
Roy Featherstone: Spatial Vectors and Rigid-Body Dynamics
Roy Featherstone: spatial_v2 software (accompanies Rigid Body Dynamics Algorithms)
Pinocchio (GitHub)

See it in the full glossary →