Conclusion
Le mouvement brownien est l'objet central du calcul des
probabilités moderne. Il intervient dans de très nombreux
modèles en physique, chimie, biologie, sciences économiques et
mathématiques financières. Il est tout à la fois une
martingale, un processus gaussien, un processus à accroissements
indépendants et un processus de Markov. Ces diverses
propriétés qui en font le processus stochastique par excellence,
sont présentées dans ce mémoire avec les deux outils
qu'ils permettent de développer : l'intégrale d'Itô et la
notion d'équation différentielle stochastique.
2
3
4
5
6
7
8
2
3
4
5
6
7
8
55
Annexe
code de simulation sous Scilab
Le code suivant représente un code Scilab de simulation
de la trajectoire Marche aléatoire sur Z.
1 function [ a]= marche ( n , p , x0 )
X=[ x0 ]
for k =1:n do
X=[X,X( $ ) +2*( rand ( ) <p ) -1]
end;
xset ( 'window ' ,1)
plot (X)
a=[X]
|
9 endfunction
Le code suivant représente un code Scilab de simulation
des plusieurs trajectoires Marche aléatoire sur Z.
1 function X = marche1D ( n , p , x0 ,N)
X = zeros ( n+1 ,N)
I = [ 1 : n+1] '
for i =1:N
a = marche ( n , p , x0 )
X ( : , i ) = a ' ;
end
plot ( I ,X)
|
9 endfunction
Le code suivant représente un code Scilab de simulation
de la trajectoire Marche aléatoire sur Z2.
1 function [X, Y] = chaine2 ( n , x0 , y0 , p1 , p2 , p3 )
Le code suivant représente un code Scilab de simulation
de la trajectoire Marche aléatoire sur Z3.
1 function [X, Y] = chaine3 ( n , x0 , y0 , z0 , p1 , p2 , p3 ,
p4 , p5 )
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
X( 1 ) = x0 ;
Y ( 1 ) = y0 ;
e1 = [ 1 ; 0 ] ; e2 = [ 0 ; 1 ] ;
e3 = -e1 ; e4 = -e2 ;
D = [ e1 e2 e3 e4 ] ;
P = [ p1 ; p2 ; p3 ] ;
fi g u r e
for i = 1: n do
a = grand (1 , " mul " ,1 ,P ) ;
X( i +1) = X( i ) +D( 1 , : ) * a ;
Z( i +1) = Y( i ) +D( 2 , : ) * a ;
end
for i = 1: n
plot (X( i : i +1) ,Y( i : i +1) , ' r ' )
sleep ( 1 )
end
e n d fun c t ion
X( 1 ) = x0 ;
Y ( 1 ) = y0 ;
Z ( 1 ) = z0 ;
e1 = [ 1 ; 0 ; 0 ] ; e2 = [ 0 ; 1 ; 0 ] ; e3 = [ 0 ; 0 ; 1 ] ;
e4 = -e1 ; e5 = -e2 ; e6 = -e3 ;
D = [ e1 e2 e3 e4 e5 e6 ] ;
P = [ p1 ; p2 ; p3 ; p4 ; p5 ] ;
fi g u r e
for i = 1: n do
a = grand (1 , " mul " ,1 ,P ) ;
X( i +1) = X( i ) +D( 1 , : ) * a ;
Z( i +1) = Y( i ) +D( 2 , : ) * a ;
BB( i +1) = Z( i ) +D( 3 , : ) * a ;
end
for i = 1: n
plot3d (X( i : i +1) ,Y( i : i +1) ,Z( i : i +1) , 'b ' )
sleep ( 1 )
end
e n d fun c t ion
Le code suivant représente un code Scilab de simulation de
la trajectoire Mouvement Brownien sur 1[8.
1
2
3
4
|
function B=simulbrown ( n ,m, Delta )
Z = grand (m, n , " nor " ,0 ,1) ;
/ / vecteur colonne compose de m v . a . iid N( 0 , 1 )
B = zeros (m+1 ,n ) ;
|
5
|
/ / initialisation : trajectoires du mouvement brownien
|
6
|
temps = zeros (m+1 ,1) ;
|
7
|
for i = 1 : m
|
8
|
B( i + 1 , : ) = B( i , : ) + sqrt ( Delta ) *Z( i , : )
|
9
|
temps(i+1,1) = temps ( i , 1 ) + Delta
|
10
|
end
|
11
|
a=B
|
12
|
plot (temps , B) ;
|
13
|
endfunction
|
Le code suivant représente un code Scilab de simulation de
la trajectoire Mouvement Brownien sur 1[82.
1 / / Parametres de la simulation
2 function a=simulbrown2d(T,N)
3
4
|
h = T/N;
sh = sqrt(T/N);
|
5 / / Initialisation des vecteurs de calcul
6 temps = h * [ 0 :N] ;
7 x = zeros ( size (temps)) ;
8 y = zeros ( size (temps)) ;
9 / / calcul des vecteurs de bruits sur x et y
10 bruitX = grand (N, 1 , " nor " ,0 , sqrt(T));
11 bruitY = grand (N, 1 , " nor " ,0 , sqrt (T) ) ;
12 / / calcul de la trajectoire
13
14
15
16
17
18
19
|
for i = 2:N+1
x ( i ) = x ( i -1) + sh * bruitX ( i -1) ;
y ( i ) = y ( i -1) + sh * bruitY ( i -1) ;
end
a=[x , y]
plot(x,y);
title ( 'Mouvement brownien en 2D ' ) ;
|
20 endfunction
58
|