\documentclass[xcolor=hyperref,hyperef={naturalnames,pdfpagelabels},french]{beamer}
\usepackage{etex}
\usepackage[beamer]{preambule}
\usepackage[french,vlined,boxed]{algorithm2e}
\usepackage{bookmark}
\usepackage{movie15}
%\usepackage{multimedia}
% \usepackage{cclicenses}
% \usepackage{cclicence}


\setlength{\columnseprule}{0pt}

\graphicspath{{/home/moi/Lycee/2nde/2009_10/}{/home/moi/Photos/Maths/}{/home/moi/Figures/FigSTI/}{/home/moi/Figures/FigSeconde/}{/home/moi/Figures/figuresTS/}{/home/moi/Lycee/TDmaple/2007_8/}{/home/moi/IREM/IREM10_06_09/}}

%\usefont{OT1}{cmtt}{b}{n}

\newcommand\xc{\lstset{numbers=none,language=XCAS,xleftmargin=10pt,%
keywordstyle =\color{orange!60}\bfseries,basicstyle=\ttfamily\color{white},commentstyle=\normalfont\scriptsize\slshape,breaklines=true,backgroundcolor=\color{black!90!red},frame=trBL,framerule=1pt,framesep=4pt,rulesep=1pt,showstringspaces=false,stringstyle=\slshape,captionpos=b}
}


\newcommand\caml{
\lstset{numbers=none,language=Caml,xleftmargin=10pt,%
keywordstyle =\color{blue!40}\bfseries,basicstyle=\ttfamily\color{white},commentstyle=\normalfont\scriptsize\slshape,breaklines=true,backgroundcolor=\color{black!90!blue},frame=trBL,framerule=1pt,framesep=4pt,rulesep=1pt,showstringspaces=false,stringstyle=\slshape,captionpos=b}
}
\renewcommand\FancyVerbFormatLine[1]{\colorbox{green}{#1}}



\newcommand{\reponse}[1]{
\begin{center}
\textcolor{blue!70}{\texttt{#1}}
\end{center}
}





\mode<presentation>
{
  \usetheme[secheader]{Madrid}
  % or ...Warsaw

  \setbeamercovered{highly dynamic}
  % or whatever (possibly just delete it)
}
\usepackage{elephantbird}

\title[] % (optional, use only with long paper titles)
{Algorithmes en probabilités}

\subtitle{ Illustrations avec XCAS et CAML}

\author[] % (optional, use only with lots of authors)
{Guillaume CONNAN  }
% - Give the names in the same order as the appear in the paper.
% - Use the inst{?} command only if the authors have different
%   affiliation.

\institute{\textsc{IREM} de Nantes}% (optional, but mostly needed)

\logo{\includegraphics[scale=0.15]{logoirem}}

\date[] % (optional, should be abbreviation of conference name)
{\today}
% - Either use conference name or its abbreviation.
% - Not really informative to the audience, more for people (including
%   yourself) who are reading the slides online

\subject{Algorithmes en probabilités}


\beamerdefaultoverlayspecification{<+->}

\AtBeginSubsubsection[]
{
  \begin{frame}<beamer>
    \frametitle{Sommaire}
 {\scriptsize
\begin{multicols}{2}
    \tableofcontents[currentsection,currentsubsection]
       \end{multicols}
}

  \end{frame}
}




\AtBeginSubsection[]
{
  \begin{frame}<beamer>
    \frametitle{Sommaire}
 {\scriptsize
\begin{multicols}{2}
    \tableofcontents[currentsection,currentsubsection]
       \end{multicols}
}

  \end{frame}
}





\AtBeginSection[]
{
  \begin{frame}<beamer>
    \frametitle{Sommaire}
 {\scriptsize
\begin{multicols}{2}
    \tableofcontents[currentsection]
       \end{multicols}
}

  \end{frame}
}


% If you wish to uncover everything in a step-wise fashion, uncomment
% the following command: 

\beamerdefaultoverlayspecification{<+->}


% \usepackage[scaled]{helvet} % With " scaled " option
% \usepackage{eulervm} %


\begin{document}


\begin{frame}
  \titlepage
\end{frame}

\begin{frame}
 \frametitle{Sommaire}
{\scriptsize
\begin{multicols}{2} 
 \tableofcontents
\end{multicols}
}

 
 \end{frame}


\section{Pile ou face}


\begin{frame}
  On lance trois fois de suite une pièce de monnaie. On veut compter combien de
fois pile (ou face) tombe.
\end{frame}


\begin{frame}[fragile]
\xc
Avec XCAS, on utilisera~:

\begin{itemize}
\item \verb+rand(k)+ qui renvoie un entier aléatoirement compris entre 0 et
  $k-1$~;
\item  \verb+count_eq(entier,liste)+  compte  le  nombre de  fois  ou
  \verb+entier+ apparaît dans \verb+liste+
\end{itemize}
\end{frame}

\begin{frame}[fragile]
\xc
 
\begin{lstlisting}
piece(n):={
T:=NULL;
for(k:=1;k<=n;k:=k+1){
X:=0;
if(rand(2)==1){X:=X+1}
if(rand(2)==1){X:=X+1}
if(rand(2)==1){X:=X+1}
T:=T,X;
}
return(evalf([count_eq(0,[T])/n,count_eq(1,[T])/n,count_eq(2,[T])/n,count_eq(3,[T])/n])
)}:;
\end{lstlisting}


\end{frame}




\begin{frame}[fragile]
\xc
 
\begin{lstlisting}
piece(5000)
\end{lstlisting}

renvoie \verb+[0.1262,0.387,0.366,0.1208]+.


\pause

En  effet, on  peut vérifier  avec \verb+binomial(n,k,p)+  qui renvoie
$\binom{n}{k}p^k(1-p)^{n-k}$~:

\pause

\begin{lstlisting}
[seq(binomial(3,k,0.5),k=0..3)]
\end{lstlisting}

renvoie \verb+[0.125,0.375,0.375,0.125]+

\end{frame}





\section{Tirage de boules}


\begin{frame}
  
On dispose de trois urnes, la  première contenant 7 boules blanches et 4
noires, la deuxième 5 blanches et 2 noires, la troisième 6 blanches et 3
noires.

On  tire une  boule dans  chaque urne  et on  note le  nombre  de boules
blanches obtenues.

On adaptera l'algorithme précédent.

\end{frame}



\begin{frame}[fragile]
\xc
\begin{lstlisting}
boules(n):={
T:=NULL;
for(k:=1;k<=n;k:=k+1){
X:=0;
if(rand(11)<7){X:=X+1}
if(rand(7)<5){X:=X+1}
if(rand(9)<6){X:=X+1}
T:=T,X;
}
return(evalf([count_eq(0,[T])/n,count_eq(1,[T])/n,count_eq(2,[T])/n,count_eq(3,[T])/n])
)}:;
\end{lstlisting}
\end{frame}

\begin{frame}[fragile]
\xc

On obtient \verb+[0.0358,0.2253818182,0.4453272727,0.2934909091]+

\pause

Or,      par     exemple,   $\frac{7}{11}\times     \frac{5}{7}\times
\frac{6}{9}\approx 0,303$ et $\frac{4}{11}\times \frac{2}{7}\times
\frac{3}{9}\approx 0,034$.


\end{frame}




\section{Problème du Duc de Toscane}



\begin{frame}
  Cosme II de Médicis  (Florence 1590-1621), Duc de Toscane, fut le  protecteur de l'illustre Gallilée
(né à Pise le 15 février 1564 et mort à Florence le 8 janvier 1642) son ancien précepteur. Profitant
d'un moment de répit du savant entre l'écriture d'un théorème sur la chute des corps et la création
de la lunette astronomique, le Grand Duc lui soumet le problème suivant~:~il a observé qu'en lançant
trois dés cubiques et en  faisant la somme des numéros des faces, on obtient  plus souvent 10 que 9,
alors qu'il y a autant de façons d'obtenir 9 que 10, à savoir six. 

\end{frame}



\begin{frame}
  
On pourra utiliser \texttt{ranm(lignes,colonnes,'expérience')} qui renvoie une
matrice \texttt{lignes}$\times$\texttt{colonnes} où  chaque terme est un
résultat de \texttt{expérience}.

\end{frame}

\begin{frame}[fragile]
\xc
 

\begin{lstlisting}
toscane(n):={
T:=ranm(1,n,'rand(6)+rand(6)+rand(6)+3');
return("Obtenir 9 :"+count_eq(9,T)*100.0/n+"%"," Obtenir 10 :"+count_eq(10,T)*100.0/n+"%")
}:;
\end{lstlisting}

\pause

Alors, pour $100\,000$ tirages, on obtient

 \texttt{"Obtenir 9 :11.263\%"," Obtenir 10 :12.535\%"}

\end{frame}


\section{Le lièvre et la tortue}

\begin{frame}
  
On  rappelle le  jeu  bien connu~:~on  dispose  d'un dé  cubique. On  le
lance. Si  un six  sort, le  lièvre gagne sinon  la tortue  avance d'une
case. La tortue a gagné lorsqu'elle a avancé six fois de suite.

Il est aisé de montrer que  la probabilité que la tortue gagne $\bbp(T)$
est égale à $\left(\frac{5}{6}\right)^6\approx 0,335$.

\end{frame}



\begin{frame}[fragile]
\xc
 
\begin{lstlisting}
jeutortue(n):={
local simul,L,T,face,lancer;
L:=0;T:=0;
 pour simul de 1 jusque n faire
   face:=rand(6)+1; lancer:=1;
   tantque(face<6) et (lancer<6) faire
     face:=rand(6)+1;
     lancer:=lancer+1;
   ftantque
   si face==6
     alors L:=L+1
     sinon T:=T+1
   fsi
 fpour

return("Tortue :"+T*100.0/n+"% Lièvre : "+L*100.0/n+"%")
}:;
\end{lstlisting}
\end{frame}



\begin{frame}[fragile]
\xc
 

Alors on peut simuler $100\,000$ parties en entrant~:

\begin{lstlisting}
jeutortue(100000)
\end{lstlisting}

et on obtient par exemple~:

\begin{center}
  \texttt{Tortue :33.639\% Lièvre : 66.361\%}
\end{center}

\end{frame}



\begin{frame}
  
On peut modifier légèrement  le programme précédent pour déterminer quel
nombre maximum de lancers on doit fixer pour rendre le jeu favorable à la
tortue.

\end{frame}


\begin{frame}[fragile]
\xc
 
\begin{lstlisting}
jeutortue(n,lancer_max):={
local simul,L,T,face,lancer;
L:=0;T:=0;
 pour simul de 1 jusque n faire
   face:=rand(6)+1; lancer:=1;
   tantque(face<6) et (lancer<lancer_max)faire
     face:=rand(6)+1;
     lancer:=lancer+1;
   ftantque
   si face==6
     alors L:=L+1
     sinon T:=T+1
   fsi
 fpour

return(T*100.0/n)
}:;
\end{lstlisting}

\end{frame}

\begin{frame}

On n'a cette fois en sortie que le pourcentage de parties gagnées par la
tortue.

\end{frame}



\begin{frame}[fragile]
\xc
 On    trace    ensuite   le    nuage    de    points   de    coordonnées
\verb+(lancer_max,jeutortue(10000,k))+ avec \texttt{k} variant de 1 à
10 par exemple.


\begin{lstlisting}
nuage_points([seq([k,jeutortue(10000,k)],k=1..10)]),droite(y=50)
\end{lstlisting}

\end{frame}



\begin{frame}
\begin{figure}
\begin{center}
  \includegraphics[width=0.9\linewidth]{tortue}
\end{center}
\end{figure}

\end{frame}




\section{Intervalle de fluctuation en 2\up{nde}}




\begin{frame}[fragile]
              

Le document d'accompagnement affirme que pour des échantillons de taille
$n$  obtenus à partir  d'un modèle  de Bernoulli,  95\% des  mesures des
fréquences     mesurées     sont     comprises     dans     l'intervalle
$\left[p-\frac{1}{\sqrt{n}},p+\frac{1}{\sqrt{n}}\right]$   avec  $p$  la
proportion à mesurer.

\pause

On simule ici  1000 échantillons de taille $n$  d'un modèle de Bernoulli
ayant une probabilité $p$ exprimée en nombre entier de dixièmes.

\pause

\verb+ranm(1,n,'rand(10)')+ permet d'obtenir $n$ nombres compris entre 0
et 9.

\pause

\verb+count_inf(10*p,T)/n+ permet de compter  les occurrences dans T des
nombres strictement inférieurs à $10p$~:~la fréquence théorique est $p$.


\pause
On  compte 1  dès que  la fréquence  observée est  dans  l'intervalle de
confiance.

\end{frame}


\begin{frame}[fragile]
\xc
 
\begin{lstlisting}
echantillon(n,p):={
S:=0;
 for(k:=1;k<=1000;k:=k+1){
   T:=ranm(1,n,'rand(10)');
   f:=count_inf(10*p,T)/n;
     if((f>=(p-1./sqrt(n)))and(f<=(p+1./sqrt(n))))
     then{S:=S+1}
 }
return(S*0.1)
}:;
\end{lstlisting}
\end{frame}



\begin{frame}[fragile]
\xc
 

Par exemple, pour $n=100$ et $p=0,4$~:

\begin{lstlisting}[caption={}]
echantillon(100,0.4)
\end{lstlisting}

\reponse{95.9}

\pause

On relance autant  de fois que l'on veut le calcul  pour observer que le
nombre obtenu est supérieur à 95.

\pause

Nous  ne discuterons  pas ici  de la  pertinence d'une  telle expérience
devant des élèves de 2\up{nde}...

\end{frame}




\end{document}

%%% Local Variables: 
%%% TeX-master: t
%%% End: 
