Silvère Bonnabel

silvere bonnabel
A recent interview in IEEE Control Systems Magazine.

Research interests
Systems and control
Machine learning
Computational statistics
Navigation and localization
Radar tracking algorithms
Optimization on manifolds
Industrial products

Selected industrial applications

Crane control with the world leader MANITOWOC (POTAIN). See this picture where I am experimenting the real-time controller on a 30 meters high crane. It has also been successfully tested and implemented on various cranes. See our mockup (video), and (paper) .

silvere bonnabel

Guidance and navigation with Safran Electronics & Defense, the No. 1 company in Europe for inertial navigation systems (INS). Our algorithm is embedded in the new drone Patroller (see picture below, courtesy of Safran Electronics & Defense).

silvere bonnabel

Below is displayed the yaw estimation error evolution over time when using our Invariant EKF for various initial errors from 5 up to 90 degrees:

silvere bonnabel

Albeit similar for small initial errors, the conventional EKF has much more trouble converging when initial errors are large, see below.

silvere bonnabel

Invariant Extended Kalman Filtering

The Kalman filter is an optimal tool to estimate some physical quantities, that are governed by linear differential equations. For nonlinear systems, the engineers resort to the extended Kalman filter (EKF), that works well in practice but does not possess any optimality properties and whose efficiency in practice may prove aleatory for challenging problems. Since its early implementation in the Apollo program in the sixties, though, it has been the state of the art for fusion of inertial measurement units (IMU) with other sensors, especially in the aerospace industry.

The invariant extended Kalman filter (IEKF), is a variant that improves the EKF for navigation, localization, and some related problems.

It has been successfully implemented by Safran Electronics and Defense (formerly Sagem) for a high performance inertial navigation application where it has led to substantial improvements over the existing industrial methods. It has been the object of various patents by this company. One patent was awarded a Sagem Innovation Award, as the most innovative patent filed by the company in 2015.

For more information about IEKF theory, please start with our Annual Review paper.

Our recent work on the two-frames group closes a long-standing theoretical gap.

Properties of the Invariant Kalman filter

The main point about the theory is that for a large class of systems related to navigation and robotics, the IEKF possesses properties akin to linear systems and to the linear Kalman filter. Namely,

A large class of nonlinear systems, named "group affine", possesses properties that remind of linear systems. Notably, the evolution between two trajectories is actually governed by a linear equation. This intriguing property is called "log-linearity" of the error as it is the log of the error that evolves via linear differential equations.

For group affine systems, the IEKF possesses convergence guarantees.

If the covariance matrix of the error is singular, then the estimate is physically restrained in a subspace of the state space. Only the IEKF - as opposed to conventional EKF - preserves this property under a set of conditions. For an example see (this article). This is important as nearly singular covariance matrices are often encountered in high performance navigation, and eigenvalues of the covariance matrix may drop at any time after a combination of observations.

The conventional EKF has difficulties in incorporating relative observations between state variables, as they lead to inconsistency of the estimates. This has caused its decline for Simultaneous Localization and Mapping (SLAM) in robotics. When using the Invariant EKF, relative observations are seamlessly handled. See this pdf.

For linear systems, it is possible to build a map through a finite dimensional integration F once and for all, such that for all initial condition x the vector Fx is the solution to the system at arbitrary predefined time t. This is called preintegration property. We have shown that all group affine systems possess the preintegration property, although being highly nonlinear.

One of the biggest success of the theory is to have introduced the group SE_2(3) that makes the inertial navigation (IMU) equations a group affine system.

We have also introduced the group SE_k(d), which makes the SLAM problem a group affine system.

See the PhD thesis of Axel Barrau for more details (pdf).

The invariant EKF approach differs from the literature revolving around "EKF on Lie groups" in that we are not pursuing how to accomodate the state representation but rather how to recover properties akin to the linear case. An interesting feature which illustrates this point is that the error we use to measure the discrepancy between the estimate and the true state, and upon which the estimator design is based, is not only determined by the chosen group structure and by the dynamical equations. Indeed, we have two invariant errors, and the one one shall choose depends on the form of the observations (the measurements). Note that the IEKF inherently handles Lie groups state spaces, and may thus also be considered an EKF on Lie groups when applied to an arbitrary system.

Optimization on manifolds

The geometry in algorithms can also stem from probabilistic considerations (information geometry), or from the intrinsic geometry of the problem. Indeed, in optimization and machine learning, some constraints on the search space (orthogonality constraints, low rank etc.) make the search space a submanifold. This has led to the realm of optimization on manifolds. The search space can generally be endowed with several geometries, but here again, the relevant geometries are often encoded in the invariances of the problem.

I introduced stochastic gradient and obtained the first convergence results when the search space is a Riemannian manifold in this paper.

Crane control

In partnership with Manitowoc (Potain Cranes), one of the world leading crane manifacturers, I have developped a controller for real-time assistance of crane operators in the field of construction. Owing to the complexity of construction sites, that notably involve men at work, full automation is deemed undesirable and operators must be kept in the loop. The goal of the controller is then to track the velocity reference from the operator, while guaranteeing the absence of sway, that is, undesirable residual oscillations. Our method only uses built-in crane sensors. As a result the state is unobservable and the method is largely open-loop. It builds on the celebrated flatness theory, coupled with a hierarchical control architecture based on a time-scale separation where modern variable-speed drives ensure fast closed-loop control of motor speeds, whereas our method allows to generate feedforward feasible anti-sway trajectories for the slower mechanical part. We experimented the approach on a mockup as well as on various cranes, including a 40 meters high tower crane. Tests conducted on crane operators with various levels of experience and one crane instructor confirm the benefits of the controller. See this paper.

Deep learning for navigation

When a wheeled vehicle (a car) is equipped with an inertial measurement unit (IMU), the inertial navigation equations can be aided with pseudo-measurements through an extended Kalman filter (EKF). Indeed, the EKF integrates the sensors signals (angular velocity from the gyroscopes and accelerations from the accelerometers) to estimate the position, velocity, and orientation of the IMU, hence of the car (the carrier). When the car stops for instance, we can "tell" the EKF it has stopped (which is a precious information to correct for sensors' biases) by creating a null velocity pseudo-measurement. This is called the zero velocity update (ZUPT). Similarly, we can "tell" the EKF the vertical speed of the car is null, through a pseudo-measurement, or that the car's lateral velocity is small (it results from slippage only). This is very useful information, and such pseudo-measurements have long been used by inertial navigation experts, but it requires to detect stops, and/or it requires to assess the noise parameters associated to such information in the Kalman filter. In turns, the slippage is higher than in straight lines, so that the noise matrix that models uncertainty associated with the null lateral velocity pseudo-measurement should depend on the type of motion. Both can be automatically adapted in real time, using a neural network, that has previously "learned" how to detect stops or more generally to detec when pseudo-measurements may be applied, as well as the extent of uncertainty corresponding to them (i.e., noise parameters), and this based only on the IMU signals. When a car stops, the dampers being flexible the chassis tends to move forth, and then back, which may be detected by a machine learning algorithm in the gyros/acceleros' signals. The method is schematically illustrated in the chart below, from Martin's Brossard PhD defense. silvere bonnabel The interesting point is that by using only the IMU signals, combining a Kalman filter with our dynamic learning based method trained on a set of trajectories for which we have ground truth, we end up with a localization algorithm that competes with state of the art that additionally uses cameras. Indeed, in our paper AI-IMU Dead Reckoning we achieve on average using the Kitti dataset 1.10 percent translational error and 0.23 deg/m rotational error versus respectively 1.17 and 0.27 for the well-known ORB-SLAM2 method, see this paper.

Accueil  |  Curriculum Vitae  |  Publications  |  Research interest  |  Teaching