[PDF] Simulation Pourquoi employer ici le mot «





Previous PDF Next PDF



Progression de 2 - « type spiralée »

Notion de probabilités simulation. Algorithme : Du pseudo-langage à Algobox/Ti (avec simulation – Boucles). Raisonnement : vocabulaire sur les ensembles



Probabilité-Simulation TI-83 Premium CE

3°) a) Simuler 20 lancers d'un dé. b) Déterminer le nombre de fois où la face 6 a été obtenue. c) Représenter les résultats obtenus à ces 20 lancers à 



algorithmique.pdf

Langages de programmation. Langage algorithmique. Sur TI. Sur Casio. Logiciel Algobox a)Compléter l'algorithme pour obtenir cette nouvelle simulation.



ALGORITHMIQUE AU LYCÉE Thème 1 - Probabilités

Question 4 : Modifier l'algorithme précédent de manière à simuler un Cet exercice se programme aussi bien sur calculatrices TI 83 ou CASIO 35 + USB.



Probabilités et statistiques Travaux pratiques avec Matlab

3.5 Simulation de lois par leur fonction de répartition . . . . . . . . . 18 Matlab 4 utilise un algorithme de ce type pour implémenter la fonction rand.



Simulation

Pourquoi employer ici le mot « simuler » ? Parce qu'une suite de nombres générée par un algorithme n'est pas vraiment aléatoire. Si on connaît les valeurs d' 



Livret dactivités pour la spécialité mathématiques

Module Turtle pour TI-83 Premium CE Edition Python grande diversité de problèmes mathématiques et algorithmiques. ... Thème : probabilités listes.



Thèse numéro

21/09/2007 est cher l'enseignement des probabilités



Untitled

Codez cet algorithme dans le langage de votre choix (en binômes l'un peut coder en TI et l'autre en Python). Aide TI : MATH>PROBA>5 nbrAleatEnt



Structures et algorithmes aléatoires

17/12/2014 étude de la distribution de probabilité des entrées d'un algo ... Pierre Brémaud markov chains gibbs elds



Probabilités simulation et algorithmique (pour TI) - Unistra

simulation en statistique leur dénominateur ommun étant l’utilisation d’une simulation réalisée à l’aide d’une calculatrice Motivation : e type d’a tivités permet de faire travailler deux aspects du programme : l’algorithmique et la familiarisation ave l’aléatoire



Probabilités Simulation TI 84 + français

Simulation du lancer d’une pièce On peut convenir que les chiffres pairs (0 2 4 6 8) correspondent à l’apparition de "Pile" et que les chiffres impairs (1 3 5 7 9) correspondent à l’apparition de "Face" L’exemple ci-contre correspond au tirage "P-F-F-F-P-P-F-P-F-P"



Principes de base des modèles de simulation - Université Laval

Notes: La simulation n’a de sens que si on a les données pour construire un modèle (et estimer les paramètres) de façon assez précise et réaliste ? $$ ÉQUILIBRE : RÉALISME DU MODÈLE vs ANALYSE STATISTIQUE FLEXIBILITÉ: En pratique on ne cesse jamais de modifier les modèles et les programmes

Université des Sciences et Technologies de Lille

U.F.R. de Mathématiques Pures et Appliquées

Bât. M2, F-59655 Villeneuve d"Ascq CedexSimulation

Charles SUQUET

Agrégation Externe 2007-2008

2Ch.Suquet,Simulation

Table des matières

1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

2 Méthode théorique pour simuler une v.a.r.. . . . . . . . . . . . . . . . .6

3 Méthodes particulières pour lois usuelles. . . . . . . . . . . . . . . . . .9

3.1 Lois discrètes à support fini. . . . . . . . . . . . . . . . . . . . .9

3.2 Lois binomiales et multinomiales. . . . . . . . . . . . . . . . . .11

3.3 Lois de Poisson. . . . . . . . . . . . . . . . . . . . . . . . . . . .13

3.4 Lois géométriques. . . . . . . . . . . . . . . . . . . . . . . . . . .15

3.5 Lois gaussiennes. . . . . . . . . . . . . . . . . . . . . . . . . . . .17

4 Algorithmes de rejet. . . . . . . . . . . . . . . . . . . . . . . . . . . . .17

4.1 Simulation de lois uniformes par rejet. . . . . . . . . . . . . . . .18

4.2 Simulation de lois à densité par rejet. . . . . . . . . . . . . . . .22

4.3 Simulation d"une loi discrète par rejet. . . . . . . . . . . . . . . .26

5 Simulation de vecteurs aléatoires par transformation. . . . . . . . . . . .28

5.1 Loi uniforme par transformation affine. . . . . . . . . . . . . . .29

5.1.1 Principe. . . . . . . . . . . . . . . . . . . . . . . . . . .29

5.1.2 Loi uniforme sur un parallélogramme. . . . . . . . . . .29

5.1.3 Loi uniforme sur un triangle ou un polygone. . . . . . .30

5.1.4 Loi uniforme sur un simplexe deRd. . . . . . . . . . . .31

5.1.5 Loi uniforme sur un ellipsoïde. . . . . . . . . . . . . . .34

5.2 Vecteur gaussien de covariance donnée. . . . . . . . . . . . . . .34

6 Méthode polaire. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36

3 Index algorithme du rejet,17

Box Muller,17

espacements,32 fonction quantile,7 générateur congruentiel,5 inverse généralisée d"une f.d.r.,7 loi de Poisson,13 de Weibull,9 de Zipf,27

Gamma,25

géométrique,15 multinomiale,12 loi uniforme sphère,38 loi à symétrie radiale,37 quantile,7 simplexe,31 simulation loi binomiale,11 loi de Cauchy,8 loi de Poisson,13 loi de Zipf,27 loi discrète,9 loi Gamma,25 loi géométrique,16 loi multinomiale,12 loi uniforme ellipsoïde,34 parallélogramme,29 simplexe,31triangle,30 loi à symétrie radiale,42 lois de Weibull,9 lois exponentielles,9 rejet densité,22 loi discrète,26 v.a. gaussiennes,17 vecteur gaussien,34 statistiques d"ordre,32 transformation affine,29 4

Simulation de variables et vecteurs

aléatoires

1 Introduction

La simulation informatique du hasard a de multiples applications : simulation de phé- nomènes physiques, méthodes de Monte-Carlo pour le calcul d"intégrales, étude de tests statistiques ou d"estimateurs, simulation de fonctionnements de réseaux ou de systèmes complexes, cryptographie, imagerie, algorithmes probabilistes,...

Théoriquement, la génération de nombres aléatoires suivant une loi donnée se ramène

à la génération de suites de variables aléatoires indépendantes de loi uniforme sur[0,1].

En effet, on peut montrer que si lesXisont des variables de Bernoulli indépendantes de même paramètrep= 1/2, la v.a.U:=?+∞ k=1Xk2-ksuit la loi uniforme sur[0,1]. Le

problème se ramène donc à la génération d"une suite de " bits » aléatoires indépendants

pouvant prendre chacun la valeur0ou la valeur1avec même probabilité1/2. En d"autre termes, il suffirait de réaliser un jeu de pile ou face infini avec une pièce parfaitement

équilibrée1. Cette méthode n"est évidemment pas réaliste et en pratique on a recours à

l"informatique pour " simuler » une telle suite. Pourquoi employer ici le mot " simuler »? Parce qu"une suite de nombres générée par un algorithme n"est pas vraiment aléatoire. Si on connaît les valeurs d"initialisation et l"algorithme, on peut calculer (et donc pré- voir) les termes de la suite. Néanmoins on considèrera que l"on a un bon générateur de nombres aléatoires si on ne parvient pas à distinguer la suite de nombres pseudo

aléatoires produite d"une suite véritablement aléatoire. La signification précise de cette

phrase demanderait tout un développement amenant à s"interroger sur la notion même de hasard. On pourra utilement consulter à ce sujet [2]. Pour l"utilisation en statistique, nous nous contenterons de dire qu"un générateur est acceptable s"il passe avec succès une batterie de tests statistiques courants. Les fonctionsrandomdes principaux langages de programmation ou logiciels sont bâties sur des algorithmes arithmétiques dont le plus simple correspond au générateur

congruentiel linéaire. Il s"agit de générer une suite de nombres(Xn)n≥1vérifiant une

relation de récurrence X n+1=aXn+cmodM(1)1

Sip?= 1/2, la loi deUest une loi singulière à fonction de répartition continue mais n"ayant pas de

densité par rapport à la mesure de Lebesgue.5 et d"en déduire une suite(Un)n≥1à valeurs dans[0,1[en prenantUn=Xn/M. Par exemple la fonctionrandde Scilab utilise (1) avecM= 231,a= 843 314 861et c= 453 816 693. La suite(Un)ainsi construite est complètement déterministe, car pé- riodique. Cependant sa période est tellement grande qu"on peut en pratique la consi- dérer comme une suite aléatoire, du moins pour des besoins statistique courants (son usage est déconseillé en cryptographie). Remarquons d"ailleurs que même siUnétait ici aléatoire, ses valeurs seraient de la formek2-31et on obtiendrait la loi uniforme n"est pas trop gênant pour les deux raisons suivantes. D"une part la loi uniformeμnsur D tend vers l"infini2et d"autre part les nombres réels sont représentés en machine par des rationnels dyadiques de la formek2-j, de sorte que tous les réels de[k2-j,(k+ 1)2-j[ sont confondus. Dans ce document, nous nous situons en aval du problème de la construction d"un

générateur de nombres aléatoires. On suppose que l"on sait générer une suite i.i.d.(Un)

de variables aléatoires de loi uniforme sur[0,1]. On se propose de construire et de justifier mathématiquement des algorithmes permettant à partir de là de simuler une variable aléatoire ou un vecteur aléatoire de loi donnée. On donnera une traduction de certains de ces algorithmes en Scilab à titre d"illustration. Scilab est un logiciel libre développé par l"INRIA. Il existe en version Linux et Windows. On peut le télécharger depuis le site de l"INRIA à l"URL :http://scilabsoft.inria.fr/ On trouvera également sur ce site de la documentation.

2 Méthode théorique pour simuler une v.a.r.

SoitXune variable aléatoire réelle de fonction de répartitionF, définie par Rappelons queFest croissante, continue à droite et limitée à gauche en tout point deR, que l"ensemble de ses discontinuités est au plus dénombrable et queFa pour limite0en-∞et1en+∞. Dans le cas particulier oùFest continue et strictement croissante sur toutR, elle réalise une bijection deRsur]0,1[et admet donc un inverse F -1:]0,1[→Rau sens classique. SiUest une variable aléatoire de loi uniforme sur]0,1[, alorsY:=F-1(U)a même loiqueX. On le vérifie facilement en calculant la fonction de répartition deY:

Autrement dit, si pour chaquen,Unsuit la loi uniforme discrète surDn, la suite de v.a.(Un)n≥1

converge en loi versUde loi uniforme sur[0,1[. L"erreur commise sur la f.d.r. deμnen la remplaçant

par la f.d.r. de la loi uniforme sur[0,1]est majorée par2-net2-31?4,7×10-10est suffisamment petit pour un usage courant de cette approximation.6Ch.Suquet,Simulation Dans cette suite d"égalités, la deuxième repose sur la croissance deFet deF-1qui de la fonction de répartition de la loi uniforme sur]0,1[(qui coïncide sur[0,1]avec l"identité) et au fait queF(x)?[0,1].

Cette propriété permet donc, à partir d"un générateur aléatoire fournissant des réa-

lisations d"une v.a. uniforme, de simuler une v.a. de même loi queX, en admettant que l"on sache calculerF-1. Dans un souci de généralisation, ceci nous conduit à poser la

définition suivante.Définition 1.SiFest la fonction de répartition d"une variable aléatoire, soninverse

généralisée(ou fonction quantile) est définie par ?u?]0,1[, F-1(u) := inf{x?R;F(x)≥u}.(4) L"équationF(x) =upeut avoir soit une solution unique, soit aucune solution, soit une infinité de solutions. La détermination graphique deF-1(u)dans chacune de ces configurations est illustrée figure1.1. Théorème 2.SoientXune variable aléatoire réelle de fonction de répartitionFetU

une variable aléatoire de loi uniforme sur]0,1[. AlorsXetF-1(U)ont même loi.Preuve.En préalable, pour pouvoir parler de la " variable aléatoireF-1(U)», il nous

faut vérifier la mesurabilité de l"applicationF-1◦U: Ω→R. Celle-ci s"obtient par composition en notant queF-1est une fonction croissante, donc borélienne. Ce point étant acquis, on voit facilement que la seule adaptation à apporter à la preuve du cas particulier oùFest continue et strictement croissante est la justification de l"équivalence avecF-1définie par (4). Par commodité, nous noterons A u:={t?R;F(t)≥u}, d"oùF-1(u) = infAu. toutn≥1,F-1(u)< x+ 1/net commeF-1(u) = infAu, il existe untn?Autel que F on en déduit Grâce à la continuité à droite deFau pointx, on en déduit3en faisant tendrenvers directe de (5) est ainsi démontrée. xy 0u

F-1(u)

xy 0u

F-1(u)

xy 0u

F-1(u)

Figure1.1 - Détermination graphique de l"inverse généraliséRemarque 3.Il était commode dans la démonstration de considérer la loi uniforme sur

l"intervalleouvert]0,1[. Comme{0}et{1}sont de mesure de Lebesgue nulle, cette loi est la même que la loi uniforme sur[0,1[ou]0,1]ou[0,1]. Du point de vue informatique, il y a cependant une nuance car la loi uniforme simulée par la machine est la loi uniforme

Voici des exemples simples d"utilisation deF-1pour la simulation.Exemple 1(loi de Cauchy).SiUsuit la loi uniforme sur]0,1[,Y:= tan?π(U-1/2)?

suit la loi de Cauchy de densitét?→1π(1+t2).8Ch.Suquet,Simulation Exemple 2(lois exponentielles).SiUsuit la loi uniforme sur]0,1[,Y:=-lnUa suit la loi exponentielle de paramètrea. En fait iciF(x) = 1-exp(-ax)s"inverse enF-1(u) = ln(1-u)a

, mais on exploite le fait que1-Ua même loi queU.Exemple 3(lois de Weibull).Les lois de Weibull sont très utilisées en fiabilité. La loi

Weib(a,b,c)de paramètresa >0,b≥0etc >0est caractérisée par sa fonction de survieG(x) = 1-F(x)donnée par G a,b,c(x) = exp? -?x-bc a? ,pourx≥b. Clairementbest un paramètre de localisation etcun paramètre d"échelle de sorte queWeib(a,b,c)se déduit par translation et changement d"échelle de la loiWeib(a) =

Weib(a,0,1)de fonction de survie

G a(x) = exp(-xa),pourx≥0. La simulation de la loiWeib(a,b,c)se ramène ainsi à celle deWeib(a). En exploitant à nouveau le fait queUet1-Uont même loi, on voit immédiatement queY:= (-lnU)1/a suit la loiWeib(a).

3 Méthodes particulières pour lois usuelles

3.1 Lois discrètes à support fini

SoitXune variable aléatoire discrète dont l"ensemble des valeurs possibles est fini :

X(Ω) ={x1,...,xd}.

Notons

p k:=P(X=xk), s0:= 0, sk:=? Les pointss0,s1,...,sdinduisent une partition de[0,1]et siUest une variable de loi uniforme sur[0,1[,P(U?[sk-1,sk[) =sk-sk-1=pk. On en déduit que Y:=d? k=1x k1[sk-1,sk[(U)(6) a même loi queX. L"écriture (6) est commode pour un mathématicien, mais il serait maladroit de la programmer telle quelle, car lesdmultiplicationsxk1[sk-1,sk](U)et la somme de leursdrésultats sont inutiles. En pratique, il suffit de trouver pourU(ω) Y(ω) =xk. C"est exactement ce que fait la fonction Scilabdiscr1.scidont voici le code.Ch.Suquet,Simulation9 function [y]=discr1(x,p) // simule une variable aléatoire discrète // d"ensemble de valeurs possibles x_1,....,x_d // avec probabilités respectives p_1,...,p_d // x=( x_1,....,x_d), p=(p_1,...,p_d) if sum(p) ~= 1 then error("La somme des probabilités doit valoir 1"); end rand("uniform"); d=length(p); pp=[0 p(1:(d-1))]; cpp=cumsum(pp); cp=cumsum(p);

U=rand(1,1);

k=find((cpp<= U)&(UY(ω).function [y]=discr2(x,p) // simule une variable aléatoire discrète // d"ensemble de valeurs possibles x_1,....,x_d // avec probabilités respectives p_1,...,p_d // x=( x_1,....,x_d), p=(p_1,...,p_d) // on optimise le nombre de tests en réarrangeant p // par ordre décroissant et en quittant dès que la bonne valeur de // k est trouvée if sum(p) ~= 1 then error("La somme des probabilités doit valoir 1"); end10Ch.Suquet,Simulation rand("uniform"); d=length(p); [pr,i]=sort(p); //réarrangement de p xr=x(i(:)); // réindexation correspondante pour x cpr=cumsum(pr);

U=rand(1,1);

k=1; while U>=cpr(k), k=k+1; end y=xr(k) endfunction

3.2 Lois binomiales et multinomiales

Pour simuler une variable aléatoireXde loi binomialeBin(n,p), plutôt que d"utiliser l"algorithme précédent, il est préférable de remarquer que la sommeSndenvariables de Bernoulli indépendantes et de même paramètrepsuit la loiBin(n,p). Pour générer loi uniforme sur[0,1]. AinsiXa même loi que S n:=n? k=11 On évite ainsi l"inconvénient du calcul des valeurs de la f.d.r. deXqui font intervenir des coefficients binomiaux et des puissances depet1-p. En Scilab, un moyen commode de programmer une indicatrice est d"utiliser la fonc- tionbool2s(dont le nom signifieBoolean to string). Elle prend en argument un booléen (vrai%Tou faux%F) et retourne la valeur1pour vrai et0pour faux. D"où le code très simple suivant :function [Y] = simbin1(n,p) // simule une v.a. de loi Bin(n,p) rand("uniform");U=rand(1,n);

Y=sum(bool2s(U<=p))

endfunction Pour les débutants en Scilab, noter que dans ce code,Uest un vecteur de longueur n, il représente une réalisation(U1(ω),...,Un(ω))du vecteur aléatoire(U1,...,Un). De Cette méthode pour simuler une variable aléatoire de loi binomiale se généralise à la simulation d"unvecteur aléatoirede loi multinomiale. Rappelons que la loi multinomiale

sert à modéliser le total des résultats observés pour chaque type dans une suite d"épreuves

répétées indépendantes ayant chacunedtypes de résultats possibles. Par exemple si onCh.Suquet,Simulation11

lance200fois un dé, on obtient un vecteur de dimension6dont lai-ème composante est le nombre total d"apparitions de la face numéroiau cours des200lancers. Ce vecteur suit la loi multinomiale de paramètres200et(p1,p2,p3,p4,p5,p6), où lespivalent tous1/6si le dé est équilibré. Plus formellement, le vecteur aléatoireNsuit la loi multinomiale de paramètresnet(p1,...,pd)oùn?N?et lespisont strictement positifs et de somme1, si pour toutd-uple(j1,j2,...,jd)d"entiers tels quej1+j2+···+jd=n, P ?N= (j1,j2,...,jd)?=n!j

1!j2!...jd!pj11pj22...pjdd.

Un coup d"oeil sur cette formule devrait vous convaincre de l"intérêt d"éviter le calcul de ces probabilités. On remarque alors opportunément que le vecteur aléatoireNamême loique?n k=1Xk, où lesXksont des vecteurs aléatoires discrets deRd, indépendants et de même loi donnée par P où l"on a posé v i:= (0,...,0,1, i0,...,0).

Autrement dit, on se ramène à un modèle d"épreuves répétées indépendantes et le vecteur

aléatoireXkest un codage binaire du résultat de lakeépreuve. Pour simuler lesXk, on adapte de manière évidente (6) au cas d"un vecteur aléatoire discret. Notons doncs0:= 0etsi=p1+···+pipouri= 1,...d. LesUkdésignant toujours des variables i.i.d. de loi uniforme sur[0,1], on voit finalement queNa même loi que S n:=n? k=1d i=1v Voici un code Scilab inspiré de cette formule (notez la permutation des sommations qui permet de construire le vecteur aléatoireY=Sncomposante par composante, évitant l"utilisation devi).function [Y]=simultin1(n,p) // simulation d"un vecteur aléatoire de loi multinomiale de paramètres // n (nombre d"épreuves) et p vecteur des probabilités de résultats // élémentaires pour une épreuve. // Retourne un vecteur colonne. d=length(p); s=[0 cumsum(p)];// graduation de [0,1] en d intervalles de longueur p(i) rand("uniform");U=rand(1:n); Y=zeros(d,1); // initialisation12Ch.Suquet,Simulation for i=1:d, Y(i,1)=sum(bool2s((s(i)<=U)&(U3.3 Lois de Poisson La variable aléatoire discrèteXsuit la loi de Poisson de paramètreα(α?R?+) si

X(Ω) =Net?k?N,P(X=k) =e-ααkk!.

L"algorithme de simulation que nous allons proposer pour cette loi repose sur le lemme

suivant.Lemme 4.Soit(Ei)i≥1une suite de variables aléatoires indépendantes et de même loi

exponentielle de paramètreα. NotonsS1:=E1et pourn≥2,Sn:=E1+···+En. On a alors mesure de Lebesgueλn+1deRn+1: f n+1: (x1,...,xn+1)?-→αn+1exp?-α(x1+···+xn+1)?1Rn+1 +(x1,...,xn+1), parce que ses composantes sont indépendantes et de même densitéf1par rapport àλ1. A et on remarque que A n+1∩Rn+1 +f n+1dλn+1. Pour calculer cette intégrale, il est commode d"utiliser le changement de variable linéaire bijectif ?: (x1,...,xn+1)?-→(s1,...,sn+1),oùsk:=? i, k= 1,...,n+ 1. On voit immédiatement que l"application?-1est donnée parx1=s1etxk=sk-sk-1 pourk≥2et que son déterminant vaut1. En notant pour allégerA+n+1:=An+1∩Rn+1+, la formule de changement de variable pour les bijections linéaires s"écrit donc ?(A+ Pour déterminer?(A+n+1), on note queA+n+1est caractérisé par les inéquations : En remplaçantxpar?-1(s)dans ces inéquations, on obtient la caractérisation de voit ainsi que où l"on a notéBnle simplexe B Cette écriture de?(A+n+1)en produit cartésien nous permet d"appliquer le théorème de

Fubini Tonelli pour obtenir

B ndλn(s1,...,sn)?? =αnλn(Bn)? 1

αexp(-αt)dt

=αnλn(Bn)e-α. Il ne reste plus qu"à vérifier queλn(Bn) = 1/n!pour achever la preuve de (7). On peut le voir de manière géométrique en notantCn:= [0,1]netC?nle sous-ensemble deCobtenu en supprimant dansCtous les points ayant au moins deux coordonnées égales. Comme C n\C?nest inclus dans une réunion finie d"hyperplans (d"équationsi=sj) tous deλn- mesure nulle,λn(Cn) =λn(C?n). On partitionne alorsC?nenn!simplexes se déduisant de B mesure de Lebesgueλnétant invariante par permutation de coordonnées, on en déduit

n(C?n) =n!λn(B?n), puis1 =λn(Cn) =n!λn(Bn).Pour compléter le lemme4, remarquons que l"on peut étendre (7) au cas particulier

quotesdbs_dbs22.pdfusesText_28
[PDF] Algorithmes et programmation en Pascal TD corrigés - Limuniv-mrsfr

[PDF] Notes de cours / Algo et Python

[PDF] Algorithmique et Programmation Projet : algorithme de - DI ENS

[PDF] Score ASIA

[PDF] Un algorithme de simulation pour résoudre un problème de probabilité

[PDF] Algorithme PanaMaths

[PDF] Algorithmique en classe de première avec AlgoBox - Xm1 Math

[PDF] Algorithme U prend la valeur [expression de la suite - Maths en ligne

[PDF] Rappels sur les suites - Algorithme - Lycée d Adultes

[PDF] Les tableaux - Luc Brun

[PDF] Les tableaux 1 Exercice 1 - Lipn

[PDF] Terminale S Exercices sur les suites Exercice 1 On consid`ere la

[PDF] Cours d algorithmique BTS SIO première année - Bienvenue sur le

[PDF] Algorithmique et programmation, un levier pour développer des

[PDF] Algorithmique et Structures de Données