Learning Complex Motion Plans using Neural ODEs with Safety and Stability Guarantees

accepted to ICRA 2024

Farhad Nawaz*, Tianyu Li, Nikolai Matni, Nadia Figueroa

*farhadn@seas.upenn.edu

Link
GitHub

Abstract: We propose a Dynamical System (DS) approach to learn complex, possibly periodic motion plans from kinesthetic demonstrations using Neural Ordinary Differential Equations (NODE). To ensure reactivity and robustness to disturbances, we propose a novel approach that selects a target point at each time step for the robot to follow, by combining tools from control theory and the target trajectory generated by the learned NODE.  A correction term to the NODE model is computed online by solving a quadratic program that guarantees stability and safety using Control Lyapunov Functions (CLFs) and Control Barrier Functions (CBFs), respectively. Our approach outperforms baseline DS learning techniques on the LASA handwriting dataset and complex periodic trajectories. It is also validated on the Franka Emika robot arm to produce stable motions for wiping and stirring tasks that do not have a single attractor, while being robust to perturbations and safe around humans and obstacles.

Illustration of a spurious attractor in the presence of a disturbance

Motion plan using NODE

Motion plan using the corrected CLF-NODE

Stirring a  pan with disturbances

Kinesthetic teaching

Task execution with human interaction

The blue arrow denotes a perturbation away from the nominal target trajectory

Wiping a mannequin with disturbances

Kinesthetic teaching

Task execution with disturbances

The blue arrows denote perturbations away from the nominal target trajectory

Wiping a white board with dynamic obstacles

Kinesthetic teaching

Nominal task execution

Dynamic obstacle avoidance

The purple spheres denote the moving obstacle at different time

Comparison of trajectory reproductions on periodic motions

I Shape

O Shape

S Shape

Wiping a white board

Wiping a mannequin

Disturbance rejection and obstacle avoidance on LASA data set

Performance comparison on some shapes from LASA data set