Estimation des états avec des filtres de Kalman
Découvre les bases des filtres de Kalman pour l'estimation d'état dans des systèmes dynamiques.
― 8 min lire
Table des matières
- Les bases de la théorie de l'estimation
- La philosophie bayésienne
- Problèmes d'estimation
- Systèmes Dynamiques
- Le filtre bayésien récursif
- Dérivation du filtre bayésien récursif
- Cas de croyance gaussienne
- Bases du filtre de Kalman (KF)
- Étapes du filtre de Kalman
- Filtre de Kalman 1D
- Composants clés du filtre de Kalman 1D
- Caractéristiques du filtre de Kalman
- Filtre de Kalman étendu (EKF)
- Filtre de Kalman à état d'erreur (ESKF)
- Filtre de Kalman itéré étendu (IEKF)
- Filtre de Kalman itéré à état d'erreur (IESKF)
- Conclusion
- Source originale
- Liens de référence
Les filtres de Kalman sont des outils utilisés pour estimer l'état d'un système au fil du temps. Ils fonctionnent en prenant des mesures souvent bruyantes et en les combinant avec des valeurs estimées d'un modèle pour produire un résultat plus précis. Cette technique est utile dans divers domaines, y compris la robotique, la finance et l'analyse de données.
Les bases de la théorie de l'estimation
La théorie de l'estimation se concentre sur la prévision des valeurs ou des paramètres inconnus d'un système basés sur des données observées. En pratique, cela implique d'interpréter des données et de prendre des décisions, ce qui peut être particulièrement délicat lorsque les données sont incertaines.
Par exemple, considérons le suivi du poids d'une personne sur un an. Disons que le poids moyen est de 70 kg, mais que les mesures quotidiennes peuvent varier en raison de nombreux facteurs. L'objectif est d'estimer le poids moyen tout en tenant compte de ces variations.
Dans ce scénario :
- Les données observées font référence aux mesures de poids quotidiennes.
- Le paramètre à estimer est le poids moyen.
- Le bruit aléatoire prend en compte les divers facteurs affectant les mesures quotidiennes.
La philosophie bayésienne
L'estimation peut être vue à travers différentes lentilles. Une perspective est l'approche fréquentiste, qui considère les paramètres inconnus comme des valeurs fixes. À l'inverse, l'approche bayésienne voit ces paramètres comme des variables aléatoires qui peuvent être estimées en utilisant des informations antérieures.
Dans l'estimation bayésienne, avoir des connaissances antérieures sur un paramètre peut être bénéfique. Par exemple, savoir que le poids moyen est d'environ 70 kg peut conduire à une meilleure estimation lors de l'observation des poids quotidiens.
Dans un cadre Bayésien, la relation entre les données observées et les estimations est définie par un ensemble de règles qui aident à mettre à jour les croyances sur le paramètre mesuré en fonction de nouvelles preuves.
Problèmes d'estimation
Les problèmes d'estimation tournent généralement autour de l'objectif de trouver le meilleur modèle en utilisant les données disponibles. Il existe plusieurs types de situations d'estimation :
Filtrage : Cela implique d'estimer une valeur actuelle en fonction des observations passées et présentes. L'objectif est de réduire le bruit des données.
Lissage : Cela cherche à estimer des valeurs en se basant sur toutes les observations, généralement effectué après que toutes les données ont été collectées.
Prédiction : Dans ce cas, l'accent est mis sur la prévision des valeurs futures en fonction des données actuelles.
Interpolation : Cela implique d'estimer des valeurs à des points spécifiques en fonction des données existantes.
Systèmes Dynamiques
Un système dynamique change au fil du temps, et ces changements peuvent être décrits par des variables d'état, des entrées de contrôle et des observations.
Dans un système dynamique, les relations suivantes existent :
- La variable d'état représente la condition actuelle du système.
- Les entrées de contrôle influencent l'évolution du système.
- Les observations fournissent des informations sur l'état du système.
En modélisant ces relations, nous pouvons mieux prédire comment un système se comportera au fil du temps.
Le filtre bayésien récursif
En utilisant des observations et des entrées de contrôle, le degré de croyance dans l'état actuel peut être défini mathématiquement. Le filtre bayésien récursif utilise les principes de l'estimation bayésienne pour mettre à jour en continu cette croyance au fur et à mesure que de nouvelles données deviennent disponibles.
En appliquant des règles statistiques bayésiennes et l'hypothèse de Markov (qui stipule que l'état futur d'un processus dépend seulement de son état actuel, pas de ses états passés), nous dérivons un filtre récursif qui affine progressivement les estimations d'état.
Dérivation du filtre bayésien récursif
La formulation du filtre bayésien récursif est dérivée à travers une série d'étapes systématiques impliquant l'application de règles bayésiennes et d'hypothèses sur les transitions d'état.
Le filtre fonctionne en prédisant l'état actuel basé sur des estimations passées et ensuite en affinant cette prédiction avec de nouvelles observations. Cela donne un moyen dynamique de garder trace de l'état d'un système.
Cas de croyance gaussienne
Lorsque l'état à estimer suit une distribution gaussienne, le Filtre de Kalman entre en jeu. Ce filtre suppose que l'état prédit et les observations sont tous deux normalement distribués.
Le filtre de Kalman calcule un état prédit basé sur des informations antérieures et corrige ensuite cet état avec de nouvelles mesures.
Bases du filtre de Kalman (KF)
Le filtre de Kalman utilise divers symboles pour désigner des valeurs spécifiques liées à l'état du système et à ses Prédictions. Les scalaires, les vecteurs et les matrices représentent des valeurs moyennes et leur incertitude.
À tout moment, le filtre suit la position du robot et mesure les données qu'il reçoit des capteurs. En utilisant ces informations, il construit un modèle de mouvement et un modèle d'observation, qui doivent être linéaires.
Étapes du filtre de Kalman
Le filtre de Kalman se compose de deux étapes principales :
Étape de prédiction : Cela implique de calculer l'état prédit basé sur l'état précédent et le modèle de mouvement.
Étape de correction : Cela utilise les nouvelles observations pour ajuster l'état prédit.
En alternant entre ces deux étapes, le filtre affine continuellement son estimation de l'état du système.
Filtre de Kalman 1D
Le filtre de Kalman peut aussi être simplifié en une version unidimensionnelle où la variable d'état est une valeur unique. Les principes restent les mêmes, mais les équations sont plus simples, se concentrant uniquement sur les valeurs scalaires.
Composants clés du filtre de Kalman 1D
- Moyenne de prédiction : La valeur attendue de l'étape de prédiction.
- Variance de prédiction : L'incertitude associée à l'état prédit.
- Moyenne de correction : La valeur attendue mise à jour après incorporation de nouvelles mesures.
- Variance de correction : L'incertitude associée à l'état corrigé.
Caractéristiques du filtre de Kalman
Le filtre de Kalman incarne une approche typique de filtrage bayésien. Il repose sur des prédictions faites à partir de l'état précédent et les met à jour en utilisant des observations pour améliorer la précision.
Le processus consiste à calculer la différence (innovation) entre la valeur observée et la valeur prédite. Selon la confiance dans ces observations, l'estimation finale pèse différemment les valeurs prédites et observées.
Filtre de Kalman étendu (EKF)
La plupart des systèmes réels sont non linéaires, rendant le filtre de Kalman traditionnel moins efficace. Le filtre de Kalman étendu entre en jeu ici en utilisant des approximations de premier ordre pour linéariser des fonctions non linéaires.
Cela permet au filtre de Kalman étendu d'appliquer les mêmes principes que le filtre de Kalman, en s'adaptant à des modèles non linéaires pour une estimation d'état plus précise.
Filtre de Kalman à état d'erreur (ESKF)
Le filtre de Kalman à état d'erreur estime l'erreur dans la variable d'état plutôt que l'état lui-même directement. En se concentrant sur l'état d'erreur linéarisé, l'ESKF fournit des estimations plus rapides et plus précises par rapport au traditionnel EKF.
L'ESKF s'appuie sur la distinction entre l'état réel du système et l'état nominal sans erreurs. Alors que l'EKF linéarisé l'état réel, l'ESKF ne linéarise que l'erreur, améliorant l'efficacité computationnelle.
Filtre de Kalman itéré étendu (IEKF)
Dans les cas où la linéarisation de l'EKF introduit des erreurs, le filtre de Kalman itéré étendu affine l'étape de correction à travers des ajustements répétitifs. Ce processus réduit les erreurs de linéarisation et fournit une estimation plus précise de l'état.
Filtre de Kalman itéré à état d'erreur (IESKF)
Semblable à l'IEKF, le filtre de Kalman itéré à état d'erreur se concentre sur l'affinement des estimations de l'état d'erreur. Il met à jour itérativement l'erreur jusqu'à convergence, ce qui donne de meilleures performances par rapport à ses homologues non itératifs.
Conclusion
Les filtres de Kalman, avec leurs variations comme l'EKF, l'ESKF, l'IEKF et l'IESKF, sont des outils puissants pour estimer l'état de systèmes dynamiques au fil du temps. En combinant des prévisions avec des observations bruyantes, ils fournissent une méthode d'estimation d'état précise qui est largement applicable dans divers domaines. L'évolution de ces méthodes de filtrage a permis leur utilisation dans des systèmes de plus en plus complexes, les rendant inestimables dans la technologie et la recherche.
Titre: Notes on Kalman Filter (KF, EKF, ESKF, IEKF, IESKF)
Résumé: The Kalman Filter (KF) is a powerful mathematical tool widely used for state estimation in various domains, including Simultaneous Localization and Mapping (SLAM). This paper presents an in-depth introduction to the Kalman Filter and explores its several extensions: the Extended Kalman Filter (EKF), the Error-State Kalman Filter (ESKF), the Iterated Extended Kalman Filter (IEKF), and the Iterated Error-State Kalman Filter (IESKF). Each variant is meticulously examined, with detailed derivations of their mathematical formulations and discussions on their respective advantages and limitations. By providing a comprehensive overview of these techniques, this paper aims to offer valuable insights into their applications in SLAM and enhance the understanding of state estimation methodologies in complex environments.
Auteurs: Gyubeom Im
Dernière mise à jour: 2024-06-27 00:00:00
Langue: English
Source URL: https://arxiv.org/abs/2406.06427
Source PDF: https://arxiv.org/pdf/2406.06427
Licence: https://creativecommons.org/licenses/by/4.0/
Changements: Ce résumé a été créé avec l'aide de l'IA et peut contenir des inexactitudes. Pour obtenir des informations précises, veuillez vous référer aux documents sources originaux dont les liens figurent ici.
Merci à arxiv pour l'utilisation de son interopérabilité en libre accès.
Liens de référence
- https://alida.tistory.com
- https://alida.tistory.com/92
- https://alida.tistory.com/11#67.2.-jacobian-matrix
- https://alida.tistory.com/63#6.1.1-jacobian-computation-for-the-filter-correction
- https://alida.tistory.com/63#6.3-eskf-reset
- https://en.wikipedia.org/wiki/Kalman_filter
- https://arxiv.org/abs/1711.02508
- https://youtu.be/wVsfCnyt5jA
- https://jinyongjeong.github.io/2017/02/14/lec03_kalman_filter_and_EKF/
- https://blog.csdn.net/liu3612162/article/details/114120772
- https://arxiv.org/pdf/2102.03804.pdf
- https://github.com/gaoxiang12/slam_in_autonomous_driving
- https://arxiv.org/pdf/2010.08196.pdf
- https://arxiv.org/pdf/2307.09237.pdf
- https://www.research-collection.ethz.ch/bitstream/handle/20.500.11850/263423/1/ROVIO.pdf
- https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=7266781
- https://cgabc.xyz/posts/784a80cb/
- https://docs.ufpr.br/~danielsantos/ProbabilisticRobotics.pdf