Estimer les valeurs d’une variable, cas d’usage sur le filtre de Kalman
Mesurer les valeurs d’une variable à l’aide d’un capteur n’est pas toujours réalisable, ou bien la mesure manque de précision. Pour compenser ces valeurs, l’option de la mise en place d’observateurs d’état, tel que le filtre de Kalman, existe.
Utilisé dans une large gamme de domaines technologiques, allant du radar au robot, en passant par la communication, le filtre de Kalman est un filtre à réponse impulsionnelle infinie qui donne une estimation des états d’un système dynamique à partir d’une série de mesures incomplètes ou bruitées. Et indépendamment d’estimer ces valeurs et de donner l’état du système considéré, il permet aussi d’indiquer l’erreur commise sur cette estimation.
Il est donc plus qu’intéressant d’exposer le filtre de Kalman à une phase d’optimisation du code afin d’apprécier les potentiels gains. C’est justement l’exercice qui a été appliqué. Nous avons passé le filtre de Kalman généré par Matlab dans beLow-Explore pour voir si l’était possible de gagner en performance.
Vous trouverez sur notre bibliothèque de ressources le cas d’usage de ce filtre à réponse impulsionnelle infinie. Spoiler alert: l’application de 2 techniques d’optimisation ont généré d’intéressants gains.