Vous êtes sur la page 1sur 2

{"cells":[{"metadata":{},"cell_type":"markdown","source":"# TP 2 simulation des

variables aléatoires à densité\n"},{"metadata":


{},"cell_type":"markdown","source":"## Un exemple "},{"metadata":
{},"cell_type":"markdown","source":"La fonction Python ci-dessous prend en argument
un entier naturel $m$ non nul et tire $m$ réel uniformément dans $[0;1]$, puis
affiche l'histogramme. Pouveez-vous expliquer son fonctionnement ?"},{"metadata":
{"trusted":false,"scrolled":true},"cell_type":"code","source":"\nimport numpy as
np\nimport matplotlib.pyplot as plt\n\nplt.clf()\n\nEch= np.random.rand(1000) #
tester avec des échantillons de plus en plus gros\nplt.hist(Ech,20, density=True)
# Création de l'histogramme\n\n# on peut rajouter la densité\
nx=np.linspace(min(Ech),max(Ech),200)\ny=np.ones(len(x))\nplt.plot(x,y)\
nplt.show()","execution_count":1,"outputs":[{"output_type":"display_data","data":
{"application/
javascript":"element.append(window._basthonDomNodeBus.pop(0));"},"metadata":{}}]},
{"metadata":{},"cell_type":"markdown","source":"## Exercice 1\n\nEn utilisant
uniquement la commande rand(), expliquer comment simuler une variable aléatoire
suivant une loi uniforme continue sur $[a,b]$."},{"metadata":
{"trusted":false},"cell_type":"code","source":"","execution_count":null,"outputs":
[]},{"metadata":{},"cell_type":"markdown","source":"## Exercice 2\n\n1. Montrer que
si $U$ suit la loi uniforme sur $] 0;1[$ et $X$ est une variable aléatoire à
densité dont la fonction de répartition $F$ est une bijection de $] a; b[$ avec
$-\\infty \\leq a<b \\leq+\\infty$ sur $] 0;1[$, alors la variable $Y=F^{-1}(U)$
suit la même loi que $X$. \n(Pas de Python ici, juste des maths).\n\n\n2. On dit
qu'une variable aléatoire $X$ à densité suit une loi de Cauchy si une densité est
donnée par\n$$f:\\, t\\in \\mathbb{R}\\mapsto \\cfrac{1}{\\pi(1+t^2)}.$$\nCalculer
la fonction de répartition et exprimer pour tout $t\\in \\, ]0;1[,$ $F^{-1}(t)$. \
n\n3. En déduire un programme Cauchy qui simule une loi de Cauchy.\n\n4. Tester
votre programme en affichant un histogramme comme à l'exercice 1.\n"},{"metadata":
{"trusted":false},"cell_type":"code","source":"## Question 3\ndef Cauchy() : # pas
d'argument\n U=\n X=\n return
X","execution_count":12,"outputs":[{"output_type":"stream","text":"
File \"<input>\", line 3\n U=\n ^\nSyntaxError: invalid syntax\
n","name":"stderr"},{"output_type":"error"}]},{"metadata":
{"trusted":false},"cell_type":"code","source":"# Question 4\n\nm=2000 # taille de
l'échantillon\nEch=[]\nfor i in range(m): # construction de l'echantillon\n ...\
n \nplt.hist(Ech,bins=np.linspace(-5,5,20), density=True) # Création de
l'histogramme entre [-5,5] avec 20 classes \n\n# on peut rajouter la densité pour
comparer\nx=np.linspace(-5,5,200)\ny=...\nplt.plot(x,y)\
nplt.show()","execution_count":13,"outputs":[]},{"metadata":
{},"cell_type":"markdown","source":"5. Que fait le code suivant ?"},{"metadata":
{"trusted":false},"cell_type":"code","source":"Liste=100*np.linspace(5,100,10)\
nE=[]\nfor m in Liste :\n \n U= np.random.rand(int(m))\n
L=np.tan(np.pi*(U-1/2))\n e=sum(L)/m\n E.append(e)\nplt.plot(Liste,E) \
nplt.show()","execution_count":14,"outputs":[{"output_type":"display_data","data":
{"application/
javascript":"element.append(window._basthonDomNodeBus.pop(0));"},"metadata":{}}]},
{"metadata":{},"cell_type":"markdown","source":"## Exercice : simulation de la loi
exponentielle (un classique à connaître)\n\nNous avons vu à l'exercice précédent
que si $U$ suit la loi uniforme sur $] 0;1[$ et $X$ est une variable aléatoire à
densité dont la fonction de répartition $F$ est une bijection de $] a; b[$ avec
$-\\infty \\leq a<b \\leq+\\infty$ sur $] 0;1[$, alors la variable $Y=F^{-1}(U)$
suit la même loi que $X$.\n\nEn déduire un programme qui simule une loi
exponentielle à partir d'une loi uniforme sur $]0;1]$."},{"metadata":
{"trusted":false},"cell_type":"code","source":"import numpy as np\nimport
matplotlib.pyplot as plt\nimport random as rd\n\n\ndef simuExp():\n u= ...\n
return ...","execution_count":null,"outputs":[]},{"metadata":
{},"cell_type":"markdown","source":"## Méthode de rejet\nLire la section 5.3 des
notes de cours (chapitre 6) et faire les exercices 9 et 10."},{"metadata":
{},"cell_type":"markdown","source":"Réponse de l'exercice 9 : (pas de Python)\n\n\
n...........\n...........\n\n\n"},{"metadata":
{"trusted":false},"cell_type":"code","source":"import numpy as np\nimport
matplotlib.pyplot as plt\nimport random as rd\n\n## Exercice 10\n\n# question 1 :
le tracé\n\nx=\ny=\nplt.plot( , )","execution_count":null,"outputs":[]},
{"metadata":{"trusted":false},"cell_type":"code","source":"# question 2\n\ndef
simulation():\n ...","execution_count":null,"outputs":[]},{"metadata":
{"trusted":false},"cell_type":"code","source":"# Tester ensuite votre programme\n\
nprint(simulation())","execution_count":null,"outputs":[]},{"metadata":
{"trusted":false},"cell_type":"code","source":"# Pour vérifier l'accord entre
théorie et pratique, afficher la densité et l'histogramme d'un échantillon\n\n\
n","execution_count":null,"outputs":[]},{"metadata":
{},"cell_type":"markdown","source":"## Si vous avez fini, simulation de la loi
Beta\n\nDans tout l'exercice, $n$ et $m$ sont des entiers naturels non nuls. On
pose $$\\beta( n, m)=\\int_0^1 u^{n-1}(1-u)^{m-1} \\mathrm{~d} u.$$\nOn considère
la fonction $f_{n, m}$ définie par $$f_{n,m}(x)=\\mathbf{1}_{] 0,1[}(x) \\frac{1}
{\\beta(n, m)} x^{n-1}\\left(1-x^{m-1}\\right).$$\n\n1. Montrer que $f_{n, m}$ est
une densité de probabilité.\n\n2. Comment simuler une loi beta de paramètres $(n;m)
$ ?\n\n3. (et vraiment si vous avez encore fini, calculer l'espérance et la
variance de la loi $\\beta(n,m)$.)\n\n"},{"metadata":
{"trusted":false},"cell_type":"code","source":"","execution_count":null,"outputs":
[]}],"metadata":{"kernelspec":{"name":"python3","display_name":"Python
3","language":"python"}},"nbformat":4,"nbformat_minor":2}

Vous aimerez peut-être aussi