Académique Documents
Professionnel Documents
Culture Documents
Ce TP porte sur les entrées et sorties, les fon
tions et les outils graphiques dont vous disposez sous
Matlab.
1 Entrées et sorties
La
ommande input permet de demander à l'utilisateur Matlab d'entrer les valeurs de variables à
utiliser. La
ommande pause permet de stopper l'exé
ution Matlab. Vous pouvez pré
iser le nombre
de se
ondes de pose ou revenir à Matlab en appuyant sur n'importe quelle tou
he. La
ommande save
permet de sauvegarder dans un
hier, dont le nom par défaut est matlab.mat, le
ontenu de
ertaines
variables dont vous souhaitez garder une tra
e. Ce
hier peut être appelé par la
ommande load qui
restaure toutes les variables que vous avez sauvegardées.
✞ ☎
n=input ( ' E n t r e z l a v a l e u r de n : ' ) ; % Affe
tez une valeur à n.
a=input ( ' P r e
i s e z l a v a l e u r de a : ' ) ; % Affe
tez une valeur à a.
v=a . ^ [ 0 : n ℄ ; A=t o e p l i t z ( v ) ; d=det (A ) ; % Création de la matri
e de Toeplitz A
save r e s t o e p n a A d ; % Sauvegarde de n , a , A , d dans restoep . mat
lear % Effa
e toutes les variables de la session .
load r e s t o e p % Restaure les variables de restoep . mat .
who % Vérifi
ation .
✝ ✆
2 Fon
tions
Un ensemble de
ommandes Matlab peut être
onsidéré
omme une fon
tion. On peut voir une fon
tion
omme un sous-programme Matlab dont les paramètres éventuels sont les arguments de la fon
tion et
dont les résultats sont les images de
ette fon
tion. Beau
oup de fon
tions Matlab,
omme par exemple
mean, sont déjà é
rites en Matlab et le
ode Matlab
orrespondant est sto
ké dans un
hier dont le nom
se termine par .m. Pour mean, il s'agit de mean.m. Ajouter de nouvelles fon
tions à Matlab revient don
à é
rire de nouveaux
hiers de
e type. Il est d'usage d'appeler une fon
tion du même nom que le
hier
orrespondant.
Simulation de lois dis
rètes. Dans votre répertoire personnel, éditer le
hier probadis.m suivant
dont le
ode Matlab génère une réalisation aléatoire d'une loi dis
rète à support ni.
✞ ☎
fun
tion r e s = p r o b a d i s ( x , p )
% res = PROBADIS (x ,p)
% Input x ve
tor of real numbers ( support points in IR)
% p ve
tor of probability weights asso
iated to x
% i.e . non - negative real numbers su
h that sum (p ) == 1
% Output res random number
hosen from the finite dis
rete
% distribution on x (1) ,... , x(n ) with probability weights
% p (1) ,... , p(n ) where n == length (x ) == length (p)
%
% Renvoie UNE réalisation de la loi dis
rète à support fini sur IR dont les
% points de support sont les
omposantes du ve
teur x , et les poids sont les
%
omposantes du ve
teur p . Don
x(i ) a une probabilité p(i ) d ' être renvoyé .
%
% La méthode
onsiste à é
rire l ' intervalle [0 ,1℄
omme une réunion disjointe
% d ' intervalles de longueurs p (1) ,... , p(n ) puis à regarder au quel appartient
% la réalisation d ' une loi uniforme obtenue par un appel à rand . Les valeurs
% renvoyées par des appels su
essifs sont don
pseudo - indépendantes .
% Pour des raisons d ' effi
a
ité , les
onditions né
essaires suivantes ne sont
% pas
ontrlées par
ette fon
tion :
% - le nombre de paramètres passés est exa
tement 2
% - les deux paramètres x et p sont bien des ve
teurs et sont de même longueur
% - les
omposantes de p sont positives ou nulles et leur somme vaut 1.
%
% See also RDISCR .
%
% ### Copyright ( C ) D . Chafaï , 2003 -12 -06.
% ### http :// www . lsp . ups - tlse . fr/ Chafai / agregation . html
% ### Li
en
e GNU General Publi
Li
ense http :// www . gnu . org /
opyleft / gpl . html
%
ligne
onstituera l'aide a
hé lorsque l'utilisateur tapera help probadis. Finalement, la
ommande what
liste les
hiers Matlab du répertoire
ourant.
Voi
i une autre fon
tion de simulation de loi dis
rète, qui peut renvoyer une matri
e de réalisations.
✞ ☎
fun
tion X = r d i s
r (num, x , p )
%X = RDISCR ( num ,x ,p)
% Input num positive integer or a ve
tor [ lig ,
ol ℄ of integers
% x ve
tor of real numbers ( support points in IR)
% p ve
tor of probability weights asso
iated to x
% i.e . non - negative real numbers su
h that sum (p ) == 1
% Output X num - ve
tor or a num - matrix of random numbers
%
hosen from the finite dis
rete distribution on
% x (1) ,... , x(n ) with probability weights p (1) ,... , p(n)
% where n == length (x ) == length (p)
%
% Renvoie num réalisations ou une matri
e [ lig ,
ol ℄ de réalisations
% pseudo -i.i.d de la loi dis
rète à support fini sur IR dont les
% points de support sont les
omposantes du ve
teur x , et les poids sont les
%
omposantes du ve
teur p . Don
x(i ) a une probabilité p(i ) d ' être renvoyé .
%
% La méthode
onsiste à é
rire l ' intervalle [0 ,1℄
omme une réunion disjointe
% d ' intervalles de longueurs p (1) ,... , p(n ) puis à regarder au quel appartient
% la réalisation d ' une loi uniforme obtenue par un appel à rand . Les valeurs
% renvoyées par des appels su
essifs sont don
pseudo - indépendantes .
% Pour des raisons d ' effi
a
ité , les
onditions né
essaires suivantes ne sont
% pas
ontrlées par
ette fon
tion :
% - le nombre de paramètres passés est exa
tement 3
% - les deux paramètres x et p sont bien des ve
teurs et sont de même longueur
% - les
omposantes de p sont positives ou nulles et leur somme vaut 1
% - le paramètre num est un entier positif non nul une un
ouple de
e type
%
% See also PROBADIS .
%
% ### Copyright ( C ) D . Chafaï , 2003 -12 -06.
% ### http :// www . lsp . ups - tlse . fr/ Chafai / agregation . html
% ### Li
en
e GNU General Publi
Li
ense http :// www . gnu . org /
opyleft / gpl . html
%
i f length (num) == 1
num = [ num 1 ℄ ;
else
num = reshape (num, 1 , 2 ) ;
end
q = 1 − p;
P = [ 1 ,
umprod ( p ∗ o n e s ( 1 , n ) ) ℄ ; % puissan
es
roissantes de p
Q = [ f l i p l r (
umprod ( q ∗ o n e s ( 1 , n ) ) ) , 1 ℄ ; % puissan
es dé
roissantes de q
C = [ 1 ,
umprod ( [ n : − 1 : 1 ℄ ) . /
umprod ( [ 1 : n ℄ ) ℄ ; %
oef . du binme de i = 1 à n
B = C . ∗ P . ∗ Q; % ve
teur des poids de B(n ,p )
%
disp ( sprintf ( ' G é n é r a t i o n a l é a t o i r e de %d r é a l i s a t i o n s de B(%d,% f ) ' , r , n , p ) )
X = r d i s
r ( [ 1 , r ℄ , [ 0 : n ℄ ,B) ; % é
hantillonnage
% alternative :
%X =[℄
% for i =1: r
% X = [ X probadis ([0: n℄, B )℄;
% end
%
disp ( sprintf ( ' Tra
é d e s g r a p h i q u e . ' ) )
plot (
umsum(X ) . / [ 1 : length (X) ℄ , ' b ' ) % tra
é des moyennes empiriques
t i t l e ( ' L o i d e s Grands Nombres ' )
xlabel ( ' Nombre de r e a l i s a t i o n s ' )
ylabel ( ' Moyennes e m p i r i q u e s ' )
hold on
plot ( n ∗ p ∗ o n e s ( 1 , r ) , ' r −− ' ) % tra
é de la moyenne théorique
legend ( ' Empirique ' , ' T h e o r i q u e ' )
hold o f f
%
% Ave
Stixbox , inutile de
al
uler B et d ' appeler rdis
r ([1 , r ℄ ,[0: n℄,B)
% puisque qu ' un simple rbinom ([1 , r℄,n ,p ) suffit .
% Même si l ' on dé
ide d ' utiliser quand même prodadis , les
oeffi
ients
% binomiaux né
essaires au
al
ul de B peuvent se
al
uler beau
oup plus vite
% en utilisant la fon
tion Stixbox bin
oef qui fait appel à la fon
tion gamma .
%
✝ ✆
Exer
i
e 2.2. Soit (Xn )n∈N une suite de variables aléatoires i.i.d. de loi exponentielle E(λ) ave
λ > 0.
P P
Si Sn = nk=1 Xk , N0 = 0 et pour tout t > 0, Nt = ∞ n=1 I{Sn 6t} , (Nt )t>0 est un pro
essus de Poisson
d'intensité λ. Montrer que, pour tout t > 0, Nt suit la loi de Poisson P(λt). En déduire un
ode Matlab
permettant de générer un ve
teur aléatoire Y
ontenant N réalisations i.i.d. de loi P(λ) où les valeurs
N > 1 et λ > 0 sont ae
tées par l'utilisateur. Pour N assez grand, vérier la LGN sur les moyennes
empiriques su
essives de Y .
Exer
i
e 2.3. Pour N , N1 et n > 1 ave
N1 , n 6 N , la loi hypergéométrique H(N, N1 , n) est donnée,
pour tout k ∈ N ave
0 6 k 6 n, par P(X = k) = CN k
1
CN −N1 /CN . Créer un
ode Matlab permettant de
n−k n
générer un ve
teur aléatoire Z
ontenant M réalisations i.i.d. de loi H(N, N1 , n) où les valeurs M, N > 1
et N1 , n 6 N sont ae
tées par l'utilisateur.
1. Si N tend vers l'inni et le rapport N1 /N tend vers p ave
0 < p < 1, montrer que X
onverge
en loi vers la loi Binomiale B(n, p). Pour M, N assez grand et N1 = pN ave
0 < p < 1, tra
er
l'histogramme de Z et
omparer le à la loi B(n, p).
2. Si N , N1 et n tendent vers l'inni et le produit nN1 /N tend vers
√ λ > 0, montrer
√ que X
onverge en
loi vers la loi de Poisson P(λ). Pour M , N assez grand, N1 = λ N et n = N , tra
er l'histogramme
de Z et
omparer le à la loi P(λ).
3 Représentations graphiques
✞ ☎
{ I l l u s t r a t i o n de l a LGN pour l a l o i e x p o n e n t i e l l e }
lear ; n = 1 0 0 0 ; lambda = 0 . 5 ; X=−log ( rand ( n , 1 ) ) / lambda ;
figure ; % Création d ' une nouvelle fenêtre graphique .
plot (
umsum(X ) ' . / [ 1 : length (X) ℄ , ' b ' ) % Tra
e les moy . emp . su
essives de X.
t i t l e ( ' L o i d e s Grands Nombres ' ) % Titre de la figure .
xlabel ( ' Nombre de r é a l i s a t i o n s ' ) % Titre des abs
isses .
ylabel ( ' Moyennes e m p i r i q u e s ' ) % Titre des ordonnées .
hold on % Garde la fenêtre graphique .
plot ( 1 / lambda ∗ o n e s ( n , 1 ) , ' r −− ' ) ; % Tra
e la limite théorique .
legend ( ' Empirique ' , ' T h e o r i q u e ' ) ; % Légende .
✝ ✆
Exer i e 3.1. Ajouter à vos odes Matlab les représentations graphiques ren ontrées i-dessus.
1.8
1.6
Moyennes empiriques
1.4
1.2
0.8
0 100 200 300 400 500 600 700 800 900 1000
Nombre de realisations
Voi
i une fon
tion Matlab qui permet de simuler la loi uniforme dis
rète nie de façon rapide et
simple.
✞ ☎
fun
tion X = r i n t (num, k ) ;
% X = RINT ( num , k)
% Input num positive integer or a ve
tor [ lig ,
ol ℄ of integers
% k positive integer
% Output X num - ve
tor or a num - matrix of random numbers
%
hosen from uniform distribution on {1 ,... , k}
%
% Renvoie num réalisations ou une matri
e [ lig ,
ol ℄ de réalisations
% pseudo - indépendantes de la loi uniforme dis
rète sur les k premiers
% entiers non nuls {1 ,... , k }.
%
% La méthode
onsiste à
onsidérer la partie entière de 1+ kU où U suit une loi
% uniforme sur [0 ,1℄. Cette dernière s ' obtient via la fon
tion rand , et les
% valeurs renvoyées par des appels su
essifs sont don
pseudo - indépendantes .
%
% ### Copyright ( C ) D . Chafaï , 2003 -12 -06.
% ### http :// www . lsp . ups - tlse . fr/ Chafai / agregation . html
% ### Li
en
e GNU General Publi
Li
ense http :// www . gnu . org /
opyleft / gpl . html
%
i f length (num) == 1
num = [ num 1 ℄ ;
end
X =
e i l ( k ∗ rand (num ) ) ;
return ;
✝ ✆
Référen
es
[BL98℄ Ph. Barbe and M. Ledoux, Probabilités , De la li
en
e à l'agrégation, Belin, 1998.
[Bou86℄ N. Bouleau, Probabilités de l'ingénieur, variables aléatoires et simulation , Hermann, 1986.
[DCD82℄ D. Da
unha-Castelle and M. Duo, Probabilités et statistiques. Tome 1 , Masson, Paris, 1982,
Problèmes à temps xe.
[Y
a02℄ B. Y
art, Modèles et Algorithmes Markoviens, Mathématiques et Appli
ations, vol. 39, Springer,
2002.