Université de Paris XIIVal de Marne Probabilités
Maîtrise de Mathématiques M1 Année 20052006
TP 1
Simulation de variables aléatoires
(3 heures)
http ://perso-math.univ-mlv.fr/users/printems.jacques/maitrise/2005-06/Proba/
L'objet de ce TP est la simulation de variables aléatoires à valeurs réelles de lois données
(i.e. dont on connait la densité) à partir de la loi uniforme. Les simulations seront faites
sous scilab (Cf. www-rocq.inria.fr/scilab).
On propose deux méthodes de simulation :
(a) l'inversion de la fonction de répartition ;
(b) la méthode du rejet.
Préliminaire.
Simuler N = 10000 réalisations indépendantes d'une v.a. gaussienne centrée
réduite et représenter les graphiquement sous la forme d'un histogramme (Cf.
commandes rand et histplot).
La densité empirique de notre précédent exemple d'échantillon est représentée
graphiquement par l'histogramme.
Que constate-t-on en terme de densités empiriques et théoriques de l'échan-
tillon ?
On note dans tout ce qui suit, U([a, b]), la loi uniforme sur l'intervalle [a, b]. On dira
qu'une v.a. X suit la loi U([a, b]) si sa densité vaut 1 sur l'intervalle [a, b].
Exercice 1.
1. Soit X une v.a.
R t de densité p(x) > 0. On considère sa fonction de répartition F (t) =
P{X ≤ t} = −∞ p(x) dx. Montrer que F est bijective de R sur [0, 1]. On note F −1 sa
fonction réciproque.
2. Montrer que si U est un v.a. qui suit la loi uniforme sur [0,1], alors F −1 (U ) et X ont
même loi.
3. On suppose maintenant que X est une v.a. admettant comme fonction de répartition
F dénie comme
F (x) = 1 − exp(−αxβ ), si x > 0,
F (x) = 0, sinon.
On suppose pouvoir simuler la loi uniforme (Cf. command rand). Écrire un script
scilab simulant m (nombre fourni par l'utilisateur) réalisations indépendantes de X
avec α = 0.5 et β = 3. Comparer les densités empiriques et théoriques (cf. commandes
histplot, plot2d).
1
Exercice 2. (méthode de Box-Muller).
On note E(θ) la loi exponentielle de paramètre θ > 0. On dira que la v.a. X suit la loi
E(θ) si sa densité vaut θ exp(−θx).
1. Donner une méthode de simulation des v.a. de loi E(θ) à partir de la loi uniforme en
s'inspirant de l'exercice 1.
√
2. Soit ρ une v.a. de loi E(1/2) et Θ une v.a. de loi U([0, 2π]). Montrer que X = ρ cos(Θ)
√
et Y = ρ sin(Θ) sont des v.a. gaussiennes centrées réduites et indépendantes.
3. On suppose que l'on sait simuler la loi uniforme (par l'intermédiaire de la commande
rand). Déduire des questions précédentes une simulation sous scilab de m (fourni par
l'utilisateur) réalisations indépendantes de la loi gaussienne centrée réduite et tracer
son histogramme.
Exerice 3. (méthode de rejet ou hit-or-miss due à Von Neumann).
On désire simuler une v.a. de densité f . On suppose que l'on sait simuler une v.a. Y de
densité g telle que f (x) ≤ kg(x) pour un certain k > 0. On considère l'algorithme
(a) Simuler U de loi U([0, 1]) et Y de densité g .
(b) Poser Z = kg(Y )U .
(c) Si Z < f (Y ), on pose V = Y , sinon on retourne en (a).
Alors on peut montrer que l'algorithme converge en temps ni et que V est une v.a. de
densité f . Pourquoi ?
Nous allons utiliser cette technique pour proposer une autre simulation de la loi normale.
1. Montrer que si X est de loi N (0, 1), alors |X| a pour densité
µ 2¶
2 x
f (x) = √ exp − 1]0,+∞[ (x), x ∈ R.
2π 2
2. Utiliser la méthode de rejet, en comparant f à la densité d'une loi exponentielle de
paramètre 1, pour simuler la variable aléatoire |X|. Montrer enn que pour simuler
X , il sut de simuler Y = |X| et une v.a. ε valant +1 ou −1 (avec probabilités égales)
et de poser X = εY .
q
+On pourra voir que la meilleure constante de rejet vaut 2e π.
3. Écrire un script scilab exécutant cette méthode et comparer les densités empiriques
obtenues avec la densité théorique.