Vous êtes sur la page 1sur 5

Master 1 - Probabilités-Statistiques

Travaux pratiques

1 Conseils pour le compte-rendu


Pour les compte-rendus des TP qui seront à rendre au cours du semestre, il est demandé
de suivre les étapes suivantes pour résoudre chaque exercice:

1. Rappeler clairement ce qui est demandé.

2. Expliquer la méthodologie suivie pour la résolution du problème.

3. Donner le listing commenté du programme utilisé.

4. Illustrer, graphiquement ou à l’aide d’un tableau, les résultats obtenus.

5. Commenter ces résultats. Cette étape est bien entendu importante, et souvent
négligée. On ne demande pas forcément un commentaire très long, mais au moins
quelques remarques pertinentes.

2 Introduction à Scilab
Scilab est un logiciel de calcul matriciel gratuit développé par l’INRIA. On y retrouve la
plupart des fonctions de Matlab, avec une interface graphique un peu moins sophistiquée.

2.1 À savoir avant toutes choses


1. Vous disposez d’une aide dans la fenêtre Scilab et si vous connaissez le nom d’une
fonction, vous pouvez obtenir le descriptif de son utilisation par help nomfonction.

2. Vous trouverez sur la page web de Bruno Pinçon (IECN) un manuel pour démarrer
en Scilab.

3. Vous pouvez télécharger gratuitement la dernière version de Scilab sur la page web
www-rocq.inria.fr/scilab/ .

1
2.2 Manipulation de matrices
Voici quelques commandes de base sur les matrices, l’affichage et les booléens. Cette
dernière notion vous permettra d’éviter de nombreuses boucles. Afin de vous y (ré)habi-
tuer, exécutez les commandes suivantes.

1. Fabrication manuelle d’une matrice (nuance avec ou sans le “;” final):


M=[1 3 5;-2 6 1]

2. Extraction de la première ligne ou de la troisième colonne:


l = M(1, :); c = M(:, 3)

3. Transposée de M: N=M’

4. Fabrication automatique d’un vecteur:


[0 : 0.1 : 2]

5. Fabrication automatique d’une matrice de zéros:


P = zeros(4, 5)

6. Suppression de la deuxième colonne:


P(:, 2) = [ ]

7. Fabrication d’une matrice par blocs:


x = [1 : 2]; P = [x 2 ∗ x; 3 ∗ x 4 ∗ x]

8. Affichage propre d’un résultat:


p=3.14;
disp(’une valeur approchée de pi = ’+string(p)+’ au centième près.’)

9. Vecteurs booléens (pratiques pour trier):


l=(M>2)

Exercice 1 Répondre aux questions suivantes récapitulant certaines notions de base de


Scilab.

1.1 Que fait la commande A = ones(M)?

1.2 Fabriquez une matrice 3 × 4 qui contient M en haut à gauche, x’ en haut à droite, x
en bas à gauche et [0 0] en bas à droite, en utilisant la construction par blocs.

1.3 Que calcule la commande s = ones(x)0 ∗ x?

1.4 Expliquez la commande suivante: x=[-2:.5:2];l=(x>-1 & x<1);x(l)=3.14; x

1.5 Si x et y sont deux vecteurs (colonne), comment calculer leur produit scalaire?

1.6 Tester les commandes additionnelles suivantes:


a=sum(x), a=mean(x), x.ˆ2, sort(x), -sort(-x), (x>0), M.ˆ2, Mˆ2

2
2.3 Générateurs de variables aléatoires préprogrammés
Le générateur le plus simple s’appelle rand. Il permet de simuler des nombres pseudo-
aléatoires distribués selon la loi uniforme sur [0, 1]. La fonction grand permet de simuler
des échantillons suivant toutes les lois de probabilité classiques (reportez-vous à l’aide en
ligne pour en savoir plus).

Exercice 2 Répondez aux questions élémentaires suivantes sur la simulation de variables


aléatoires.

2.1 Testez la commande suivante (parions sur 0.2113249) : rand(1,1)

2.2 Testez les commandes suivantes :


rand(2,4), grand(1,3,’exp’,2), grand(3,1,’’nor’’,1,2)
Attention aux paramètres des lois exponentielles et normales (mean=moyenne et standard
deviation=écart-type).

2.3 Que font les commandes suivantes :

1. plot2d(cumsum(rand(1,1000))./[1:1000])

2. plot2d([1:1000],cumsum(rand(1,1000))./[1:1000],4)

3. xbasc(); plot2d(cumsum(-log(rand(1,1000)))./[1:1000])

4. histplot(100,grand(1,1000,’exp’,2))

5. xtitle(’Histogramme expo’)

2.4 Création de fonctions


Pour créer et utiliser une fonction, tapez le texte de la fonction dans un fichier grâce
à un éditeur (vous pouvez mettre plusieurs fonctions dans un même fichier), puis, dans
la fenêtre Scilab, utilisez la commande getf(’nom du fichier’) et appeler ensuite la
fonction. Attention : si la fonction n’utilise pas d’arguments, tapez nom fonction().

3 Simulation de variables aléatoires


On se propose ici de passer en revue et de programmer les méthodes de simulation vues
en cours et en td. Rappelons que pour vérifier qu’une simulation de variable aléatoire est
satisfaisante on peut

1. Commencer par simuler un assez grand nombre de réalisations de variables aléatoires


suivant la loi étudiée.

2. Calculer le temps mis par notre programme, et le comparer éventuellement à celui


fourni par grand.

3
3. Tracer un histogramme de la distribution empirique obtenue, et le comparer avec
celui de la distribution théorique.
4. Certains tests statistiques, tels que le χ2 ou Kolmogorov-Smirnov, peuvent être mis
en oeuvre. Il faut pour cela se reporter au cours de Statistiques.

Exercice 3 Testez et interprétez la fonction suivante :


function rejet
X=zeros(1,10000);
for i=1:10000
x=rand(1,2);
while x(1)>sin(%pi*x(2))
x=rand(1,2);
end
X(i)=x(2);
end
xbasc()
histplot(100,X);
Y=[0:0.05:1];
plot2d(Y,%pi*sin(%pi*Y)/2);

Exercice 4 En vous reportant au cours et aux exercices de td, simuler les variables
aléatoires suivantes, en validant la simulation selon le protocole ci-dessus.
4.1 Variable aléatoire discrète: Poisson.

4.2 Variables aléatoires continues: exponentielle, γa,b avec a ∈ (0, 1).

4.3 Variable aléatoire de loi 12 δ0 (dx) + 12 e−x 1x≥0 .

4.4 Vecteur aléatoire gaussien de R2 tel que


 
10 16
m = [−4, 7] et Γ= .
16 40

4 Loi forte des grands nombres et TCL


On se propose ici de visualiser les principaux théorèmes limites connus à l’aide de simu-
lations.

Exercice 5 Rappelons le théorème suivant: soit {Xi ; i ≥ 1} une suite de variables


aléatoires indépendantes identiquement distribuées de même loi que X. Si X admet un
moment d’ordre 1 fini, c’est-à-dire que E[|X|] < ∞, alors la suite (X̄n )n des moyennes em-
piriques converge vers l’espérance de X presque sûrement. Réciproquement, si la moyenne
empirique converge presque sûrement vers un réel a, alors X est intégrable et a = E[X].

4
5.1 Illustrez la loi forte des grands nombres grâce aux lois simulées précédemment.

5.2 Illustrez le côté nécessaire des hypothèses de la loi des grands nombres.

Exercice 6 Rappelons aussi la propriété suivante (TCL): soit {Xi ; i ≥ 1} une suite de
variables aléatoires indépendantes identiquement distribuées de même loi µ de moyenne
m et de variance σ 2 finie. Alors la suite de v.a. {Z (n) ; n ≥ 1}, où


 
(n) X̄n − m X1 + · · · + Xn
Z = n , avec X̄n = ,
σ n

converge en loi vers une loi gaussienne centrée réduite. Afin de vérifier le TCL par
simulation, répondre aux questions suivantes:

6.1 Écrire une fonction qui


(n) (n)
1. simule 1000 réalisations Z1 , . . . , Z1000 indépendantes de la variable Z (n) (on prendra
n = 500 et la loi exponentielle de paramètre 2 pour µ).
(n)
2. trace un histogramme des (Zi )i .

3. superpose à ce graphique la densité de la gaussienne.

6.2 Illustrez le côté nécessaire des hypothèses du TCL.

Vous aimerez peut-être aussi