diff --git a/module2/exo1/toy_document_fr.Rmd b/module2/exo1/toy_document_fr.Rmd index d75d3d31549a34735077803d027f63d4dee9dfbb..e2841d89a83e6e19b94f0996afe71d57a691a163 100644 --- a/module2/exo1/toy_document_fr.Rmd +++ b/module2/exo1/toy_document_fr.Rmd @@ -20,7 +20,7 @@ pi ``` # En utilisant la méthode des aiguilles de Buffon -Mais calculé avec la **méthode** [des aiguilles de Buffon] (https://fr.wikipedia.org/wiki/Aiguille_de_Buffon), on obtiendrait comme **approximation** : +Mais calculé avec la __méthode__ [des aiguilles de Buffon] (https://fr.wikipedia.org/wiki/Aiguille_de_Buffon), on obtiendrait comme __approximation__: ```{r pressure, echo=FALSE} set.seed(42) @@ -30,8 +30,23 @@ theta = pi/2*runif(N) 2/(mean(x+sin(theta)>1)) ``` -# Avec un argument “fréquentiel” de surface +# Avec un argument "fréquentiel" de surface -Sinon, une méthode plus simple à comprendre et ne faisant pas intervenir d’appel à la fonction sinus se base sur le fait que si **X** \$sim U(0,1) et +Sinon, une méthode plus simple à comprendre et ne faisant pas intervenir d’appel à la fonction sinus se base sur le fait que si $X\sim U(0,1)$ et $Y\sim U(0,1)$ alors $P[X^2+Y^2\leq 1] = \pi/4$ -**Y** \$sim U(0,1) alors \ No newline at end of file +(voir [méthode de Monte Carlo sur wikipedia] (https://fr.wikipedia.org/wiki/M%C3%A9thode_de_Monte-Carlo#D%C3%A9termination_de_la_valeur_de_%CF%80). Le code suivant illustre ce fait. + +```{r} +set.seed(42) +N = 1000 +df = data.frame(X = runif(N), Y = runif(N)) +df$Accept = (df$X**2 + df$Y**2 <=1) +library(ggplot2) +ggplot(df, aes(x=X,y=Y,color=Accept)) + geom_point(alpha=.2) + coord_fixed() + theme_bw() +``` + +Il est alors aisé d’obtenir une approximation (pas terrible) de $\pi en comptant combien de fois, en moyenne, $X^2 + Y^2$ est inférieur à 1: + +```{r} +4*mean(df$Accept) +```