Méthode de la transformée inverse
Type |
Méthode statistique (d) |
---|
La méthode de la transformée inverse est une méthode informatique pour produire une suite de nombres aléatoires de distribution donnée, à partir de l'expression de sa fonction de répartition et de tirages aléatoire uniforme sur [0;1].
Le problème que résout cette méthode est le suivant :
Soit X une variable aléatoire dont la loi est décrite par la fonction de répartition FX. On désire obtenir une suite de réalisations de X.
Explication
Cette méthode est fondée sur la propriété que la variable aléatoire U=FX(X) est distribuée uniformément sur [0;1] dès que la fonction de répartition FX est continue et strictement croissante sur La distribution recherchée s'obtient donc comme l'ensemble des antécédents x des tirages u selon une distribution uniforme pour la fonction de répartition FX. Autrement dit, la variable aléatoire FX−1(U) a pour fonction de répartition FX, où U est une variable aléatoire de loi uniforme sur [0;1].
Pour une formulation plus précise[De quoi ?], voir le Théorème de la réciproque dans l'article Fonction de répartition.
Exemples
Pour certaines lois, on sait inverser FX comme le montre la liste suivante :
Fonction de répartition FX | Fonction de répartition inverse FX−1(U) | |
---|---|---|
loi exponentielle de paramètre λ | -1⁄λln(1-U) | |
loi de Cauchy standard | tan(π U) | |
loi logistique standard | -ln U1-U | |
loi de Laplace | -sgn(U) ln(1 - 2 |U| ) |
Ainsi, par exemple, pour tirer au hasard une valeur selon la loi exponentielle de paramètre λ :
- on tire au hasard un nombre U entre 0 et 1 de manière uniforme
- puis on calcule -1⁄λln(1-U).
Calcul de l'inversion
Dans le cas général, on ne sait pas inverser la fonction FX de façon analytique. On ne sait pas obtenir une expression qui donne la valeur de x vérifiant FX(x)=u. Il faut alors procéder numériquement, pour résoudre en x l'équation FX(x)-u=0, en utilisant au choix une fonction tabulée, la méthode de dichotomie, la méthode de la fausse position, la méthode de la sécante ou encore la méthode de Newton.
Implémentation
La plupart des langages de programmation permettant de produire des nombres pseudo-aléatoires de distribution uniforme, il suffit de calculer l'antécédent des nombres tirés selon la fonction de répartition FX.
Voir aussi
- Méthode de rejet
- Cette méthode est aussi importante sur le plan théorique. Voir en particulier le Théorème de la réciproque dans l'article Fonction de répartition.
Références
- (en) Luc Devroye, Non-Uniform Random Variate Generation, New York, Springer-Verlag, (lire en ligne)