Une simulation enfin sans défaut
Dans l’article précédent,
nous expliquions qu’Excel avait la particularité – lors du recalcul d’un
classeur – de n’effectuer que les calculs qui, selon lui, étaient nécessaires.
Quand nous débutons le calcul
de l’itération n°10 en calculant la ligne n°1, toute la partie du modèle
ci-dessus placée en dessous, c’est-à-dire l’ensemble des lignes 2 à 7, se
trouve encore en l’état de l’itération n°9. Donc le compteur en B3 est toujours
à 9. C’est pour cela que le pourcentage en F1 – et celui en F2, mais on ne le
voit pas ici car il est nul – est obtenu en divisant la valeur de la colonne E
par 9.
Il y a une autre chose
fondamentale, concernant le calcul par Excel, qu’il faut savoir. C’est qu’Excel
ne peut pas calculer toutes les cellules à la fois, il faut bien qu’il procède
par ordre. Et cet ordre est le suivant :
- Excel calcule ligne par ligne, du haut vers le bas ;
- dans chaque ligne, Excel calcule de gauche à droite.
Bien entendu, quand les
formules l’y obligent, Excel est un peu obligé d’aller voir ailleurs pour les
évaluer, mais cela lui complique la tâche.
Ceci explique qu’un modèle où
chaque formule ne dépend que de cellules placée au-dessous d’elle et/ou à sa
gauche se calcule plus vite qu’un modèle où cette règle n’est pas respectée.
Reprenons notre dernier
modèle :
Quand le calcul passe à la
ligne n°3, B3 passe à 10 et les pourcentages de F3 à F6 sont tous justes.
Quand le calcul passe à la
ligne n°4, B4 passe à 2, mais ce dé est ignoré car le test en E2 pour vérifier
si l’on avait obtenu un 2 a déjà été calculé. On perd donc le dixième dé quand
celui-ci est un 1, un 2 ou un 3 car, dans ces cas, le dixième test en
E1, E2 ou E3 ne peut s’effectuer.
Le remède est donc tout
simplement de déplacer le bloc D1:F7 de façon que, désormais, tous les
calculs s’effectuent bien du haut vers le bas, et de gauche à droite.
Voici ce que l’on aurait
obtenu, avec les tirages précédents, si l’on avait fait cela :
Remarque – La morale de
l’histoire est que, même si Excel – avec la fonction alea() et le calcul
itératif – vous permet de créer un modèle de simulation stochastique (joli mot
pour dire aléatoire), vous devez prendre un certain nombre de précautions pour
être sûr que ce modèle obtienne des résultats exacts !
3 Commentaire(s):
Bonjour! Je me suis bien amusé à reproduire ce petit simulateur de dé tout en apprenant à utiliser cette option de calcul itératif qui pourrait fort me servir, merci bien!
Cependant, j'ai été fort surpris du modèle de dé choisi! Il m'a apparu immédiatement comme étant un dé à 7 faces (la probabilité d'un 7 est faible, je le concède, mais existe; 1/30000 pour mon essai).
J'ai testé et réfléchi à plusieurs autres modèles de dé, mais tous avaient des défauts...
Pouvez-vous parler un peu de la fonction alea(), des différentes options pour arrondir, et si finalement il est possible de créer un vrai dé à 6 faces?
D'avance merci
Julien
By
Anonyme, sur 10:00 AM
Oups erreur de ma part après recherche la fonction alea() retourne des nombres de 0 à 1 non compris [0 1[ Nous avons donc bien un dé à 6 faces?!
J'ai cependant des erreurs qui apparaissent lors du bilan, la somme des lancés de 1 à 6 ne correspondant pas au compteur...
By
Anonyme, sur 11:32 AM
Pour en juger, il faut que je voie votre modèle...
Si vous avez fait exactement comme moi, vous n'auriez pas de problème :)
By
Hervé Thiriez, sur 11:09 AM
Enregistrer un commentaire
<< Accueil