Modeling dexterous movement: Developing dynamical systems

Dynamical system (DS) based control approaches offer a framework for robust control with the capability of fast adaptation from unexpected perturbations. In this project, we use time-invariant DSs to model complex movements, such as combined control of limb motion, from the collected human demonstration data with single or multiple equilibrium states.

Learning Dynamical Systems with bifurcation

DS for controlling rhythmic patterns are distinct from DS used to control point-to-point motion and current approaches switch at run time across these to enable multiple behaviors. This, however, may lead to jittering and jerky motions when switching across dynamics when these have different equilibrium. The figure below shows a robotic task (polishing) that requires multiple switches from point-to-point motion to cyclic ones.

We here offer an approach that encodes periodic and discrete dynamics in a single time-invariant DS by exploiting the concept of bifurcation, allowing for smooth transitions between the two. The following figure manifests the result of the case where bifurcations are exploited in the desired DS.

To learn a desired periodic motion, we propose a parameterization of the DS to offer an explicit way to control for its behavior, namely speed, location of the target, and shape of the limit cycle. Furthermore, we also explore the use of diffeomorphism and learn a mapping function to modify the initial linear limit cycle into a nonlinear limit cycle. The video below depicts our approach to learn complex-shaped non-linear limit cycles:

Learned Dynamical System from Human Demonstration Data

Dynamical systems offer a robust control of the robot, by allowing to adapt the movement rapidly in case of perturbations. In fact, as we can see in the figure below, we can generalize collected movement data (shown in red) to the whole workspace (blue arrows). The diagram shows a model that can switch between a point-to-point motion towards an attractor (reaching the screw in a. and going back in c.) and a periodic motion (b.), such as that of screwing or unscrewing that we find in watchmaking tasks.

As illustrated in the figure below, a DS model can also be exploited for embedding velocity and force to enable admittance control during a haptic task with an attractor at the origin. This DS modelling may be useful for the control of interactions in bimanual tasks including the interaction of forces.

Learned dynamical systems from human demonstration data

Dynamical systems with multiple equilibrium points are interesting for robot control, as they allow to easily switch across dynamics without incurring discontinuities. While most works assume that the number and type of dynamics are known, we focus on a scenario where unlabeled observations of the dynamical system are given. Determining the number of sub-dynamics and the equilibria’ locations is difficult and can be rarely done analytically. We propose a Graph-based spectral clustering method that takes advantage of a velocity-augmented kernel. We apply the algorithm to identify dynamics of a series of dynamics. We compare our algorithm to Kernel K-Means, Spectral Clustering and Gaussian Mixtures and show that, even when these algorithms are provided with the true number of sub-dynamics, they fail to cluster them correctly.

The proposed method is based on the eigenvalue decomposition of the Laplacian matrix applied to a specific graph structure. Exploiting the spectral properties of the Laplacian matrix, we show that we can cluster and project each sub-dynamics in orthogonal embedding spaces. Moreover, in these embedding spaces, each sub-dynamics is linearized and it is possible to identify the position of the equilibrium point.

Learning latent dynamical system

This research aims to learn latent simplistic and low-dimensional dynamical systems from high-dimensional and nonlinear demonstrations which can be obtained during the watchmaking process. The latent dynamical systems are globally exponentially stable and can be used, not only for learning complex dynamical systems, but also for trajectory clustering and classification. We consider exponential stability guarantees which are be obtained from different stability theories such as Lyapunov and Contraction. Furthermore, we investigate the impact of those on the accuracy of the learned model and their robustness to noise and sparse data.

Modeling of DS in Enclosed Boundary and Stability

Modulation Based Obstacle Avoidance

Closed-form dynamical systems (DS) have proven suitable for dynamic applications as no re-planning is required. Describing the obstacle avoidance as a modulation of the initial dynamics ensured that attractors are conserved.

Constraining Motion within Boundaries

An autonomous robot might be in a scenario where it has boundaries that cannot be passed. This might be a wall for a wheeled robot, or it can be safety or joint limits for a robot arm. This is stated as the constraint of staying within an obstacle. The boundary of the obstacle represents the limits of the free space. If we use the previously introduced obstacle description to denote enclosing hulls, the interior points of the classical obstacle become points of free space of the enclosing hull and vice versa. In many practical scenarios, a hull entails gaps or holes through which the agent enters or exits the space (e.g., door in a room). The inverted obstacle avoidance slows the agent down to zero while trying to approach this exit. For this reason, a guiding reference point for boundary obstacles is introduced.

Application to Robotic Arms

 The application to multiple degrees of freedom arm can be described and evaluated in joint space. Extending it to a robot that can be encapsulated in a circular shape is done via a constant margin around all obstacles. The danger field is evaluated at multiple evaluation points for each link along the robot arm, and the corresponding weight is calculated. The weights are designed to sum up to one to balance converging and avoiding. The velocity of each joint is evaluated starting at the joint closest to the base of the robot and continuing joint-by-joint towards the end-effector. This allows joints higher up the chain to potentially compensate for the avoidance motion from joints that are lower in the chain.

Fast Obstacle Avoidance in Dynamic Environments

In real-world scenarios, the knowledge of the environment is often just samples of the obstacles, e.g., distance sensors get information about the obstacle in several directions. We have developed a novel avoidance algorithm to treat this sensor data while ensuring collision avoidance in dynamic environments.

We use a concept called modulation. Hence we modulate (or change) the initial velocity, which might be the desired motion of an operator, to obtain a safe, collision-free velocity. Combining mathematical concepts from fluid dynamics and transferring them to robotics ensured a smooth motion that reached each goal.

Navigate in Confined and Dynamic Environments

The concepts were applied to shared-control of an operator on a dynamic wheelchair. We compared our new method, called Fast Obstacle Avoidance (FOA), to the existing avoidance method. And were able to show that not only does it allow us to adapt to changes faster, but also more confined environments.


Khadivar, F., Lauzana, I., & Billard, A. (2021). “Learning dynamical systems with bifurcations.” Robotics and Autonomous Systems, 136, 103700.  DOI:10.1016/j.robot.2020.103700.


Huber, L., Slotine, J.-J., and Billard, A. (2022). “Avoiding Dense and Dynamic Obstacles in Enclosed Spaces: Application to Moving in Crowds.” IEEE Transactions on Robotics. DOI


Huber, Lukas, Jean-Jacques Slotine, and Aude Billard. “Fast obstacle avoidance based on real-time sensing.” IEEE Robotics and Automation Letters (2022).