0% ont trouvé ce document utile (0 vote)
8 vues5 pages

Processus Stochastique : Loi Normale et Corrélations

Le document présente des exercices sur les variables aléatoires gaussiennes et la corrélation entre des variables aléatoires. Il inclut des calculs de densité de probabilité, de fonction de répartition cumulative, ainsi que des visualisations graphiques des résultats. Enfin, il aborde la génération de données pour des vecteurs aléatoires représentant l'âge, la taille et le poids d'individus.

Transféré par

MOSTEFAOUI Sarah
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
8 vues5 pages

Processus Stochastique : Loi Normale et Corrélations

Le document présente des exercices sur les variables aléatoires gaussiennes et la corrélation entre des variables aléatoires. Il inclut des calculs de densité de probabilité, de fonction de répartition cumulative, ainsi que des visualisations graphiques des résultats. Enfin, il aborde la génération de données pour des vecteurs aléatoires représentant l'âge, la taille et le poids d'individus.

Transféré par

MOSTEFAOUI Sarah
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

2eme année Ingénieur

Partie 2: Exemple de Processus StochastiqueTapez une équation ici .


Exercice 1 : La variable aléatoire gaussienne
2
(x−μ )

Donner l’expression de la loi normale (gaussienne) :f(x) = 1 2σ
2

e
σ √2 π

Soit la variable aléatoire G qui suit la loi normale N(, 2). Représentez la fonction de densité de
probabilité (pdf). On choisit =4 , 2 = 1.

function gaus_plot()
% Paramètres de la distribution normale
mu = 4; % moyenne
sigma2 = 1; % variance

% Génération des valeurs x


x = linspace(mu - 4*sqrt(sigma2), mu + 4*sqrt(sigma2), 1000);

% Calcul des PDF


pdf_values = normpdf(x, mu, sqrt(sigma2));

% Calcul des CDF en utilisant la fonction gaus_cdf


cdf_values = gaus_cdf(mu, sigma2, x);

% Création de la figure
figure;

% Tracer le PDF
subplot(1, 2, 1); % Deux sous-graphes dans une seule ligne
plot(x, pdf_values, 'b-', 'LineWidth', 2);
title('Fonction de Densité de Probabilité (PDF)');
xlabel('x');
ylabel('Densité');
grid on;

% Tracer le CDF
subplot(1, 2, 2); % Deux sous-graphes dans une seule ligne
plot(x, cdf_values, 'r-', 'LineWidth', 2);
title('Fonction de Répartition Cumulative (CDF)');
xlabel('x');
ylabel('Probabilité cumulée');
grid on;

end

function cdf_values = gaus_cdf(mu, sigma2, x)


% Fonction qui calcule la CDF d'une loi normale N(mu, sigma^2)
sigma = sqrt(sigma2); % Calcul de l'écart-type
cdf_values = 0.5 * (1 + erf((x - mu) / (sigma * sqrt(2)))); % Formule de la CDF
end
2eme année Ingénieur

Sur l’axe horizontal, quelle serait la valeur correspondant à une fonction de répartition cdf égale
à 0.5 ? Justifiez :

G=μ=4 , sur l'axe horizontal, la valeur correspondant à une fonction de répartition CDF égale
à 0.5 est 4. Cela signifie que pour cette distribution normale, il y a une probabilité de 50% que
la variable aléatoire soit inférieure ou égale à 4.

Pour G∼N(4,1) : La moyenne μ=4 . Donc, lorsque F(x)=0.5. on : x=μ=4

Vérifier votre réponse en affichant le graphe de la cdf (utiliser la fonction gaus_cdf(, 2)), les deux
graphes pdf et cdf doivent être affichés au même temps.

Commande : >> gaus_plot()

Déterminer (a partir du 2eme graphe) les probabilités suivantes :

P (0<G<3) P (3<G<5) P (G>5)

cdf(3)−cdf(0) = 0.15 -0 = 0.15 cdf(5)−cdf(3) = 0.84 -0.15 1−cdf(5) = 1 – 0.84 = 0.16


= 0.69

On suppose maintenant qu’une VA X suit la loi N(, 2). Afin de voir l’effet de la variance sur
la courbe de la pdf, nous fixons la moyenne  =1 et nous varions la valeur de 2 entre 0.5 et 10. Nous
utilisons les commandes suivantes :

>> clf
2eme année Ingénieur
>> m=1, gaus_pdf (m, 0.5)
>> axis([-10 10 0 0.6]), hold on
>> gaus_pdf (m, 1)
..
.
>> gaus_pdf (m, 10)
clf;

% Fixer la moyenne
m = 1;

% Tracer la PDF pour différentes valeurs de variance


gaus_pdf(m, 0.5); % Pour sigma^2 = 0.5
axis([-10 10 0 0.6]); % Ajuster les axes
hold on; % Maintenir le graphique pour ajouter d'autres courbes

gaus_pdf(m, 1); % Pour sigma^2 = 1


gaus_pdf(m, 2); % Pour sigma^2 = 2
gaus_pdf(m, 5); % Pour sigma^2 = 5
gaus_pdf(m, 10); % Pour sigma^2 = 10

% Ajouter une légende et des titres


legend({'\sigma^2 = 0.5', '\sigma^2 = 1', '\sigma^2 = 2', '\sigma^2 = 5', '\sigma^2 =
10'}, 'Location', 'northeast');
title('Effet de la Variance sur la PDF');
xlabel('x');
ylabel('Densité');
grid on;

A partir des graphes obtenus et en considérant l’événement A={0<X<2}, quelle est la valeur de
2 correspondant a P(A) maximale (expliquez) :

Peut-on prédire la fonction de répartition pour une valeur très petite de la


variance (0.00001) ? . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . .
................. .................. ..............
2eme année Ingénieur

Exercice 2: Le vecteur aléatoire/ La corrélation entre des variables aléatoires

Soit le vecteur aléatoire (A, T, P) représentant l’âge, la taille et le poids d’une personne.

Que fait chaque ligne de ce code :

age = fix(rand(in,1)*30+20.5) : La fonction fix() arrondit les valeurs vers zéro, ce qui signifie que les âges
générés seront compris entre 20 et 50 ans car :

 rand(in,1) génère un vecteur colonne contenant in valeurs aléatoires uniformément distribuées entre 0 et
1.

 En multipliant par 30, on étend l'intervalle à [0, 30].

 En ajoutant 20.5, on déplace l'intervalle à [20.5, 50.5].

height = fix(randn(in,1)*12+168): Cette ligne génère un vecteur de hauteurs pour in personnes, avec une
moyenne de 168 cm et un écart-type de 12 cm, en arrondissant chaque hauteur à un entier.

height(height<150) = 150 + randn(sum(height<150),1)*3: Cette ligne ajuste toutes les hauteurs dans le
vecteur height qui sont inférieures à 150 cm, en leur attribuant une nouvelle valeur centrée autour de 150 cm avec
un écart-type de 3 cm. Cela garantit que toutes les hauteurs respectent une limite minimale de 150 cm.

Nous souhaitons générer 1000 enregistrements du vecteur (fonction person_d), et visualiser les
variations de chaque variable par rapport à l’autre. Completer le code :

>> a= person_d(1000)
>> subplot(131); stat_plot(a, 'weight', 'height')
>> . . . . . . . . . >> . . . . . . . . .
Commenter la corrélation entre ces variables.
clc , clear all
% Générer 1000 enregistrements
a = person_d(1000);

% Visualiser les variations


figure;

% Tracer le poids par rapport à la taille


subplot(1, 3, 1); % Première sous-figure
stat_plot(a, 'weight', 'height');
title('Poids vs Taille');
xlabel('Taille (cm)');
ylabel('Poids (kg)');
2eme année Ingénieur
grid on;

% Tracer le poids par rapport à l'âge


subplot(1, 3, 2); % Deuxième sous-figure
stat_plot(a, 'weight', 'age');
title('Poids vs Âge');
xlabel('Âge (ans)');
ylabel('Poids (kg)');
grid on;

% Tracer la taille par rapport à l'âge


subplot(1, 3, 3); % Troisième sous-figure
stat_plot(a, 'height', 'age');
title('Taille vs Âge');
xlabel('Âge (ans)');
ylabel('Taille (cm)');
grid on;
function stat_plot(data, var1, var2)
% Fonction pour tracer var1 contre var2 à partir des données
% data : matrice contenant les données (âge, taille, poids)
% var1 : nom de la première variable (ex: 'weight')
% var2 : nom de la deuxième variable (ex: 'height')

% Identifier les indices des colonnes


col1 = find(strcmp({'age', 'height', 'weight'}, var1));
col2 = find(strcmp({'age', 'height', 'weight'}, var2));

% Tracer les données


plot(data(:, col1), data(:, col2), 'o');
xlabel(var1);
ylabel(var2);
end

Vous aimerez peut-être aussi