• Aucun résultat trouvé

3.2 Consistance et convergence des estimations de l’EKF-SLAM

3.2.1 Définition de la consistance

Par définition, un estimateur d’état est dit consistant [12] si :

– les erreurs d’estimation sont à moyenne nulle, en d’autres termes, les estimations obte- nues ne doivent pas être biaisées ;

– la variance des erreurs est inférieure ou égale à celle estimée par le filtre.

En résumé, les différences, entre les positions réelles et estimées du véhicule et des amers, doivent être égales ou inférieures aux valeurs estimées des incertitudes définies dans la matrice de covariance. La consistance est l’un des premiers critères pour évaluer la performance d’un estimateur. Si un estimateur ne répond pas à ce critère, il est dit inconsistant. La précision de ces estimations ne pourra être garantie et l’estimateur ne sera donc pas fiable. De surcroît, la convergence des estimations du filtre vers leurs valeurs réelles ne sera plus garantie également. Pour évaluer la consistance des estimations des méthodes proposées, un test statistique re- posant sur une erreur normalisée au carré est employé. De plus, trois théorèmes de convergence des estimations d’une approche SLAM fondée sur un filtrage de Kalman sont proposés. Ils permettent de conclure ou non sur la convergence des méthodes proposées dans ce document.

3.2.1.1 Définition du test statistique

Critère de consistance d’un estimateur :

Il existe plusieurs tests statistiques permettant d’évaluer la consistance d’un filtre estimateur [12]. Ils reposent tous sur le calcul de l’erreur entre une estimation et la valeur réelle du vecteur de paramètres. Cette erreur à l’instant k s’écrit :

Dans cette expression, ˆX(k|k) représente l’estimation du filtre avec une matrice de covariance

associée P(k|k) et X(k) représente la valeur réelle du vecteur de paramètres. Pour que ce test soit fiable, cette valeur réelle doit être parfaitement connue, comme, par exemple, lors de l’uti- lisation de données simulées. Dans notre cadre expérimental, la vérité de terrain fournie par un capteur GPS est bruitée. Cette imprécision ne doit pas être négligée sinon le test de la consis- tance ne sera pas pertinent.

Le test statistique utilisé repose sur la définition d’une erreur normalisée d’estimation au carré1:

(k) = (˜X(k|k))T.P(k|k)−1.(˜X(k|k)) (3.2)

Cette distance (3.2) est similaire au carré d’une distance de Mahalanobis entre la valeur réelle et la valeur estimée d’un paramètre. L’objectif de ce test est de déterminer si l’erreur

˜X(k|k) correspond aux incertitudes définies dans la matrice de covariance P(k|k). En d’autres

termes, si la définition de la consistance d’un filtre estimateur énoncée au début du paragraphe est vérifiée. Pour prouver ceci, un test du χ2est appliqué sur l’erreur NEES1, (k) :

(k) ≤ χ2n,α (3.3)

Le coefficient n représente le nombre de degrés de liberté du vecteur d’état X (n = dim(X)). Le chiffre α permet de définir le seuil d’acceptation de l’hypothèse (3.3). Si le test est positif, les estimations sont dites consistantes, ne signifiant pas obligatoirement précises. Dans le cas contraire, les estimations ne sont plus consistantes. Leur convergence et leur précision ne sont plus garanties.

Test statistique fondé sur une simulation de Monte Carlo :

Le test statistique (équations (3.2) et (3.3)) peut s’effectuer à partir d’une seule simulation. Cependant, un unique test statistique reposant sur la distance NEES1est une mesure inadéquate de la consistance d’un filtre. En effet, la séquence d’erreurs ˜X est corrélée et ne suit pas une

distribution du χ2. Un test de consistance sur une seule séquence de simulation peut être positif alors que, pour N séquences, le test sera négatif. Inversement, une seule séquence de simulation peut révéler une inconsistance des résultats d’un estimateur alors que N séquences peuvent prouver le contraire. Pour citer Bar-Shalom [12] : « l’examen exhaustif d’un filtre non-linéaire nécessite de multiples séquences de Monte Carlo pour déterminer si ce filtre est consistant ».

Des simulations de Monte Carlo fournissent N échantillons indépendants i(k), i = 1, ..., N

de la variable aléatoire (k). La moyenne de ces échantillons s’écrit donc :

¯ (k) = 1 N N i=1 i(k) (3.4)

La variable N.¯ (k) possède une densité de probabilité du χ2 avec(N.n) degrés de liberté. Pour des séquences de Monte Carlo, le test du χ2, équation (3.3), s’écrit donc :

¯ (k) ≤ χ2N.n,α

N (3.5)

Le test statistique, utilisé dans ce manuscrit, pour statuer sur la consistance des estimations vient d’être défini. Pour en comprendre l’intérêt, des simulations avec un scénario simple de SLAM sont proposées.

3.2.1.2 Application du test statistique sur un exemple simple

0 100 200 300 400 500 600 700 800 900 −30 −20 −10 0 10 20 30 x [m] y [m]

Figure 3.1: Carte et trajectoire simulées : le véhicule avance en ligne droite, à une vitesse de3 ms−1, entre deux rangées d’amers espacés tous les40 m.

La figure 3.1 présente un exemple simple d’application de l’EKF-SLAM WorldCentric (cf. l’annexe F). Plusieurs simulations sont réalisées en fonction des données extéroceptives :

– la portée du télémètre est nulle. Aucune correction n’est réalisée par le filtre ;

– la portée du télémètre est fixée à30 m. Le véhicule n’observe que deux amers à chaque itération du filtre.

Les données proprioceptives et extéroceptives sont bruitées avec les valeurs présentées dans le tableau 3.1.

Simulations sans aucun filtrage

Dans ces simulations, le véhicule ne réalise aucune mesure extéroceptive. Sa position n’est donc pas corrigée par le filtre de Kalman. La figure 3.2 (a) représente l’évolution de la distance moyenne NEES, ¯ , sur la position du véhicule. Elle est calculée à partir de 20 simulations de

Valeurs des bruits

Télémètre laser données de contrôle

σρ[m] σβ [rad] σv [ms−1] σϕ[rad]

Simulation 0.1 π/180 0.02 3.π/180

0 50 100 150 200 250 300 0 1 2 3 4 5 6 nombre d’itérations

Valeur de la distance NEES

(a) 0 50 100 150 200 250 300 0 50 100 150 200 250 nombre d’itérations

valeur de la distance NEES

(b)

Figure 3.2: Evolution de la distance statistique NEES calculée par rapport à la position du

véhicule. Ces résultats sont obtenus avec 20 séquences de Monte Carlo de la simulation pré- sentée sur la figure 3.1. Le seuil de consistance est défini par la distribution du χ2et représenté en rouge. La figure (a) correspond à une simulation où un bruit gaussien est ajouté aux mesures proprioceptives et la figure (b) à une simulation où le bruit gaussien est ajouté à des mesures proprioceptives biaisées.

Monte Carlo lorsque les mesures proprioceptives sont seulement bruitées. La valeur de la dis- tance reste inférieure au seuil du χ2 pendant toute la simulation. Les résultats du filtre dans cette configuration sont consistants, même si ils ne sont pas précis. Lorsque un biais est ajouté sur la vitesse de déplacement du véhicule, la valeur de¯ dépasse très rapidement le seuil (cf. la figure 3.2 (b)). Les estimations du filtre sont inconsistantes car les mesures proprioceptives sont biaisées. Elles ne répondent pas aux critères d’utilisation d’un filtre de Kalman.

Simulations avec une correction du filtre

Cette simulation présente les résultats lorsque le robot réalise des observations de l’en- vironnement. Seul un bruit gaussien (et non biaisé) est ajouté aux mesures extéroceptives et proprioceptives. Les résultats (cf. sur la figure 3.3) introduisent les problèmes rencontrés lors de l’utilisation d’un filtre EKF pour résoudre le problème du SLAM. Comme le robot ne réa- lise aucune boucle où il pourrait observer de nouveau certains amers, l’incertitude sur les états estimés du véhicule ne devrait cesser de croître. Or, l’évolution de l’incertitude sur l’orienta- tion du véhicule (cf. la figure 3.3 (c)) augmente lors des100 premières itérations du filtre puis la valeur reste plus ou moins constante. Ce phénomène n’est pas cohérent avec l’augmentation constante de l’erreur sur la position du véhicule (cf. la figure 3.3 (b)). Il se traduit par une valeur de la distance NEES devenant supérieure au seuil du χ2(cf. la figure 3.3 (a)). D’après ce résul- tat et les définitions proposées précédemment, les estimations du filtre EKF-SLAM deviennent incohérentes à partir de la centième itération.

Le problème de consistance observé sur la figure 3.3 a pour origine la linéarisation des équations d’un système SLAM évaluée à partir de valeurs estimées et non exactes (cf. l’annexe

0 50 100 150 200 250 300 0 5 10 15 20 25 30 35 40 nombre d’itérations

valeur de la distance NEES

(a) 0 50 100 150 200 250 300 0 10 20 30 40 50 60 70 80 nombre d’itérations erreur [m] (b) 0 50 100 150 200 250 300 0.09 0.1 0.11 0.12 0.13 0.14 0.15 0.16 0.17 0.18 nombre d’itérations [rad] (c)

Figure 3.3: Présentation des résultats sur20 séquences de Monte Carlo de la simulation (cf.

sur la figure 3.1) : (a) évolution de la distance NEES, (b) évolution de l’erreur moyenne sur la position du véhicule et (c) évolution de l’incertitude à 3 écart-types sur l’orientation du véhicule.

A). Ce phénomène est détaillé dans la suite de ce chapitre.