Lancer de manière aléatoire des points dans un carré et observer s’ils sont ou non tombés dans le quart de disque inscrit dans le carré est une chose. Lancer de manière aléatoire des aiguilles sur un parquet et observer s’ils sont ou non tombés à cheval sur une rainure en est une autre. C’est ce qu’a fait Georges-Louis Leclerc de Buffon, un scientifique français du XVIIIe siècle. A sa grande surprise, le rapport entre le nombre d’aiguilles tombés sur une rainure et le nombre total des aiguilles lancées se rapprochait de 2/Pi (lorsque la taille de l’aiguille est égale à la distance séparant deux rainures). Nous sommes donc en possession d’un autre estimateur de Pi qui consiste à lancer de manière aléatoire des segments sur un réseau de droites parallèles. Pour ouvrir le projet dans une autre fenêtre cliquer ici.
Lançons 100 segments. Lançons 500 segments. Lançons 1000 segments. Plus le nombre de segments est grand, plus l’estimateur de Monte-Carlo du nombre Pi ainsi créé (rapport entre le nombre de segments coupant une ligne horizontale et le nombre total de segmentss) est précis. Il est intéressant de remarquer et de démontrer que le gain de précision est encore inversement proportionnel à la racine du nombre de segments considérés. Pour gagner une décimale dans notre approximation du nombre Pi, il est nécessaire de lancer 100 fois plus de segments. Cette remarque caractérise la vitesse de convergence de notre nouvel algorithme (qui n’est pas plus performant). Pour ouvrir le projet dans une autre fenêtre cliquer ici.
A la base de ce nouvel estimateur de Pi, le fait que la probabilité qu’un segment de longueur l lancé de manière aléatoire sur un réseau de droites parallèles distantes d’une longueur l elles aussi, est égale à 2/Pi. Georges-Louis Leclerc de Buffon l’a observé mais saurions-nous le comprendre et, pourquoi pas, le démontrer ? Pour cela nous devons isoler et distinguer deux variables. La première est la distance entre le milieu du segment et l’horizontale située juste au-dessous de lui (valeur comprise entre 0 et l). La deuxième est l’angle que forme le segment avec l’horizontale (valeur comprise entre 0 et 180°). Ensuite nous devons déterminer la contrainte qui lie deux variables lorsque le segment coupe l’horizontale. Pour ouvrir les projets dans une autre fenêtre cliquer ici et là.