Logiciel libre de géométrie, d'analyse et de simulation multiplateforme par Yves Biton
 
Accueil - Exemples

Arbre binomial dynamique : Utilisation récursive de constructions

publication lundi 29 août 2016.


Dans cet article nous allons expliquer comment utiliser des constructions de façon récursive pour obtenir une version simplifiée de la figure ci-dessous :

Nous allons pour cela créer deux constructions que nous implémenterons de façon récursive.

Remarque préliminaire : Si vous avez échoué à créer vos constructions (étapes 1 et 3), vous pouvez les télécharger ci-dessous, les décompresser dans un dossier de votre disque dur et utiliser ces fichiers au lieu de ceux que vous êtes censés avoir créés par vos propres moyens

Zip - 2 ko
Constructions

Etape1
Etape2
Etape3
Etape4

Etape 1 : Création d’une première construction

Créez une figure vierge (avec longueur unité) avec l’icône .

Assurez-vous avec le menu Options - Figure en cours que l’unité d’angle de la figure est bien le degré.

A l’aide de l’icône (création d’un calcul réel), créez six calculs (dans cet ordre) :

- Un calcul nommé coefRay avec comme formule 0.7

- Un calcul nommé coefAng avec comme formule 0.7

- Un calcul nommé p avec comme formule 0.25

- Un calcul nommé nbsDem avec comme formule 1

- Un calcul nommé n avec comme formule 0

- Un calcul nommé ray avec comme formule 4.8

- Un calcul nommé ang avec comme formule 45

Créez un point libre que nous appellerons A avec l’icône . Placez-le à gauche et au milieu de la figure.

Avec l’icône créez une droite horizontale passant par A.

Utilisez l’icône pour créer le cercle de centre A et de rayon ray.

Utilisez l’icône pour créer l’intersection de la droite horizontale avec ce cercle (cliquez quand vous voyez affiché cette intersection).

Utilisez l’outil rotation pour créer l’image B du dernier point créé par la rotation de centre A et d’angle ang (cliquez d’abord dur le centre A de la rotation, entrez ang comme angle puis cliquez sur le dernier point créé).

Utilisez l’outil symétrie axiale pour créer l’image C du point B dans la symétrie axiale par rapport à la droite horizontale (il faut cliquer d’abord sur l’axe de symétrie puis sur le point dont on veut créer l’image).

Créez maintenant une droite horizontale passant par B (icône ).

Créez maintenant, dans cet ordre, quatre calculs réels () :

- Un calcul nommé q avec comme formule 1-p

- Un calcul nommé n1 avec comme formule n+1

- Un calcul nommé ray1 avec comme formule ray*coefRay

- Un calcul nommé ang1 avec comme formule ang*coefAng

Utilisez maintenant l’icône pour créer un point D lié à la droite horizontale passant par B (comme ci-dessous).

Créez dans cet ordre, trois calculs réels () :

- Un calcul nommé n2 avec comme formule n+1

- Un calcul nommé ray2 avec comme formule ray*coefRay

- Un calcul nommé ang2 avec comme formule ang*coefAng

Utilisez l’outil symétrie axiale pour créer l’image E du point D dans la symétrie axiale par rapport à la droite horizontale passant par A.

Dans la palette de style de flèches, activez la petite flèche pleine.

Utilisez l’icône pour créer les vecteurs $\overrightarrow{AB}$ et $\overrightarrow{AC}$.

Avec l’icône créez les milieux des segments [AB] et [AC].

Créez maintenant en bleu un affichage de la valeur de p lié au milieu du segment [AB]. Pour cela, utilisez l’icône , cliquez sur le milieu puis remplissez la boîte de dialogue comme ci-dessous (3 décimales demandées et un affichage centré horizontalement et verticalement) :

De même créez en vert un affichage de la valeur de q lié au milieu de [AC] :

Créez maintenant les milieux des segments [BD] et [CE] (icône ).

Nous allons maintenant créer en bleu un affichage LaTeX lié au milieu de [BD] avec l’icône . Pour cela cliquez sur le milieu de [BD] puis remplissez la boîte de dialogue comme ci-dessous. Le code LaTeX est S_{\Val{n1}}. \Val{n1} est un code LaTeX spécifique à MathGraph32 qui demande un affichage dynamique de la valeur de n1 (avec deux décimales par défaut ce qui ici importe peu car n1 est entier) . On obtiendra ainsi la lettre S avec comme indice la valeur de n1 :

Créez de même en vert un affichage LaTeX lié au milieu de [CE] comme ci-dessous. Le code LaTeX est \overline {S_{\Val{n2}}}. Il affichera, sous une barre, la lettre S avec comme indice la valeur de n2 :

Notre figure est prête pour créer notre première construction.

Il est important que les objets aient bien été créés dans l’ordre que nous avons indiqué. Si l’ordre n’est pas le bon ,la macro ne pourra pas être implémentée de façon itérative. Vous pouvez modifier cet ordre en utilisant le protocole de la figure (touche F5). Dans cette boîte de dialogue, les flèches de droite permettent de remonter ou descendre un objet dans la liste des objets créés.

Utilisez l’outil pour masquer les milieux de [BD] et [CE].

A ce stade votre figure doit ressembler à la figure ci-dessous :

Passons à la création de la construction :

Utilisez pour commencer le menu Construction - Choix des éléments sources - Numériques.

Au début vous obtenez la boîte de dialogue ci-dessous (l’ordre des éléments à gauche doit être le même) :

Cliquez sur le bouton Insérer (ou double-cliquez sur chaque valeur) pour obtenir ceci :

Désignons maintenant les objets sources graphiques : Il n’y en a qu’un : le point A. Utilisez le menu Construction - Choix des éléments sources - graphiques puis cliquez sur le point A qui se met à clignoter.

Désignons maintenant les objets finaux numériques avec le menu Construction - Choix des éléments finaux - Numériques. Cliquez sur n1 puis, en appuyant sur la touche Shift, cliquez sur ang2 de façon à obtenir ce qui suit :

Reste à choisir les objets finaux graphiques avec le menu Construction - Choix des éléments finaux - Graphiques. Cliquez sur :

- les vecteurs $\overrightarrow{AB}$ et $\overrightarrow{AC}$

- Les deux affichages de valeurs liés aux milieux de [AB] et [AC]

- Les deux affichages LaTex

- Les points D et E

Avant de finir la construction, masquez les points D et E avec l’outil .

Maintenant utilisez le menu Constructions - Finir la construction en cours. Remplissez la boîte de dialogue comme ci-dessous. Le champ Info sert à renseigner l’utilisateur lorsqu’il utilise la construction .
Voici son contenu si vous voulez le copier-coller :

#1:Valeur de coefRay (coefficient de réduction à chaque étape pour la longueur des flèches)
#2:Valeur de coefAng (coefficient de réduction à chaque étape pour l'angle des flèches avec l'horizontale)
#3:Valeur de p (probabilité de succès)
#4:Valeur de n (le rang de génération de branche)
#5:Le rayon de départ (longueur des flèches)
#6:L'angle de départ en degrés de la première flèche avec l'horizontale
##7:Le point origine de l'arbre

Enregistrez la figure à l’emplacement de votre choix par sécurité. Nous l’appellerons ArbreBinomial1. Utilisez le menu Constructions - Enregistrer une construction de la figure dans un fichier pour enregistrer la construction ConstArbre à l’emplacement de votre choix.

Quelques explications : Cette construction sera implémentée de façon récursive. Les objets sources doivent figurer dans la figure en premier dans la liste des objets créés. Ce sont pour nous : coefRay, coefAngle, p, n, ray, ang. Les trois premiers seront communs à toutes les implémentations. Le seul objet source graphique est le point initial de l’arbre. Lors des implémentations successives, les objets sources non communs seront remplacés par les premiers objets finaux. La construction sera de nouveau implémentée pour n1, ray1, ang1, le point B, puis pour n2, ray2, ang2, le point C et le pas sera de 4 car on saute 4 objets finaux pour passer de n1 à n2.

Etape 2 : Début de la création de la figure finale

Créez une nouvelle figure qui contiendra notre figure finale. Vérifiez qu’elle utilise bien le degré comme unité d’angle.

Créez un point libre au milieu et à gauche de la figure.

Créez les calculs suivants (dans cet ordre) :

- Un calcul nommé coefRay avec comme formule 0.7

- Un calcul nommé coefAng avec comme formule 0.7

- Un calcul nommé p avec comme formule 0.25

- Un calcul nommé nbsDem avec comme formule 1 (il ne servira qu’à l’étape 4)

- Un calcul nommé n avec comme formule 0

- Un calcul nommé ray avec comme formule 4.8

- Un calcul nommé ang avec comme formule 45

Utilisez le menu Constructions - Incorporer une construction dans la figure depuis un fichier et incorporez dans cette figure la construction ConstArbre.

Nous allons maintenant créer une macro chargée d’implémenter cette construction de façon récursive.

Utilisez le menu Macros - Nouvelle macro - Macro de construction - Récursive. Cliquez en haut et à gauche de la figure pour désigner l’emplacement de son intitulé.

Remplissez la première boîte de dialogue comme ci-dessous :

Une deuxième boîte de dialogue s’ouvre. Vous devez affecter les objets sources.

Affectez à l’objet source numéro 1 le calcul coefRay comme ci-dessous :

De même affectez :

- A l’élément source n° 2 le calcul coefAng

- A l’élément source n° 3 le calcul p

- A l’élément source n° 4 le calcul n

- A l’élément source n° 5 le calcul ray

- A l’élément source n° 6 le calcul ang

Validez. Il vous est maintenant demandé de cliquer sur le point origine de l’arbre. Cliquez sur le point libre que vous avez créé.

La macro apparaît. En cliquant sur son intitulé vous devez voir apparaître l’arbre binomial. Si cela fonctionne bien annulez l’exécution de cette macro (icône ).

Enregistrez cette figure à l’emplacement de votre choix. Nous l’appellerons ArbreBinomialFinal.

Etape 3 : Création d’une deuxième macro-construction

Reprenez la figure ArbreBinomial1. Nous allons la modifier pour créer une autre construction qui elle sera chargée d’afficher les probabilités au bout des branches.

Utilisez l’outil pour démasquer les points D et E.

Utilisez l’icône pour créer un nouveau calcul nommé nbsDem contenant comme formule 1. Ce calcul fera partie des objets sources communs à toutes les implémentations. Il faut donc le reclasser. Pour cela utilisez le protocole de la figure (touche de raccourci F5). Utilisez les flèches de reclassement d’objet sur la droite pour que nbsDem se retrouve immédiatement après le calcul p. nbsDem représentera le nombre de succès souhaité.

De même créez un nouveau calcul nommé nbs et utilisez la touche F5 pour reclasser nbs immédiatement après le calcul ang.

Créez un calcul nommé nbs1 contenant comme formule nbs+1 et utilisez la touche F5 pour le reclasser juste après le calcul ang1. nbs1 représente le nombre de succès quand on passe à une branche supérieure.

Créez un calcul nommé nbs2 contenant comme formule nbs et utilisez la touche F5 pour le reclasser juste après le calcul ang2. nbs2 représente le nombre de succès quand on passe à une branche inférieure.

A l’aide de l’icône créez les calculs suivants :

- Un calcul nommé nbe1 contenant comme formule n1-nbs1

- Un calcul nommé nbe2 contenant comme formule n2-nbs2

- Un calcul nommé pb1 contenant comme formule p^nbs1*q^nbe1

- Un calcul nommé pb2 contenant comme formule p^nbs2*q^nbe2

- Un calcul nommé test1 contenant comme formule nbs1=nbsDem

- Un calcul nommé test2 contenant comme formule nbs2=nbsDem

Utilisez maintenant l’icône pour créer un affichage LaTeX lié au point D. Cliquez sur le point D et remplissez la boîte de dialogue comme ci-dessous. N’oubliez pas de bien chosir le mode d’alignement centré horizontalement et avec la flèche gauche pour l’alignement horizontal. Le code LaTeX à entrer est le suivant : \textcolor{\If{test1}{red}{black}}{\rightarrow \Val{p,3}^{\Val{nbs1}}\times \Val{q,3}^{\Val{nbe1}}=\Val{pb1,9}}

Utilisez maintenant l’icône pour créer un affichage LaTeX lié au point E. Cliquez sur le point E et remplissez la boîte de dialogue comme ci-dessous. N’oubliez pas de bien chosir le mode d’alignement centré horizontalement et avec la flèche gauche pour l’alignement horizontal. Le code LaTeX à entrer est le suivant : \textcolor{\If{test2}{red}{black}}{\rightarrow \Val{p,3}^{\Val{nbs2}}\times \Val{q,3}^{\Val{nbe}}=\Val{pb2,9}}

Utilisez le menu Construction - Choix des éléments sources - Numériques.

Choisissez comme éléments sources (dans cet ordre ) : coefRay, coefAng, p, nbsDem, n, ray, ang et nbs.

Utilisez le menu Construction - Choix des éléments sources - Graphiques. Cliquez sur le point A.

Utilisez le menu Construction - Choix des éléments finaux- Numériques. Sélectionnez les calculs de n1 à nbs2 comme ci-dessous :

Utilisez le menu Construction - Choix des éléments finaux - Graphiques. Cliquez sur les points D et E et les deux affichages LaTeX liés à D et E.

Utilisez l’icône pour masquer les points D et E.

Il nous reste à finaliser notre construction avec le menu Utilisez le menu Construction - Finir la construction en cours. Remplissez la boîte de dialogue comme ci-dessous. Voici le contenu du champ Infos si vous voulez le copier-coller :

#1:Valeur de coefRay (coefficient de réduction à chaque étape pour la longueur des flèches)
#2:Valeur de coefAng (coefficient de réduction à chaque étape pour l'angle des flèches avec l'horizontale)
#3:Valeur de p (probabilité de succès)
#4;Valeur de nbsDem (nombre de succès souhaité)
#5:Valeur de n (le rang de génération de branche)
#6:Le rayon de départ (longueur des flèches)
#7:L'angle de départ en degrés de la première flèche avec l'horizontale
#8:Le nombre de succès (doit être initialisé à zéro)
#9:Le point origine de l'arbre

Par sécurité, enregistrez cette figure sous le nom ArbreBinomial2.

Utilisez la menu Constructions - Enregistrer une construction de la figure dans un fichier et enregistrez la construction ConstProbas à l’emplacement de votre choix.

Etape 4 : Achèvement de la figure finale

Reprenez la figure ArbreBinomial (qui sera notre figure finale) dans laquelle nous avons déjà créé une macro implémentant la construction ConstArbre.

Utilisez le menu Constructions - Incorporer une construction dans la figure depuis un fichier et allez chercher la construction ConstProbas à l’endroit où vous l’avez sauvegardée.

Nous allons lui rajouter une macro implémentant la construction ConstProbas.

Utilisez le menu Macros - Nouvelle macro - Macro de construction - Récursive. Cliquez en haut et à gauche de la figure pour désigner l’emplacement de son intitulé.

Remplissez la première boîte de dialogue comme ci-dessous. Prenez garde de bien affecter à chaque niveau de récursion la macro ConstProbas et de bien cocher la case Ne créer que les objets de dernière génération. Lorsque cette construction sera implémentée de façon récursive, les objets finaux autres que ceux servant à implémenter la prochaine génération ne seront pas créés pour les niveaux intermédiaires. Ce n’est que pour le dernière génération que seront implémentés tous les objets finaux. Ainsi les affichages LaTeX contenant les probabilités ne seront implémentés que pour les branches finales de l’arbre.

Une nouvelle boîte de dialogue apparaît pour affecter les objets sources numériques.

- Affectez à l’élément n° 1 le calcul coefRay

- Affectez à l’élément n° 2 le calcul coefAng

- Affectez à l’élément n° 3 le calcul p

- Affectez à l’élément n° 4 le calcul nbsDem

- Affectez à l’élément n° 5 le calcul n

- Affectez à l’élément n° 6 le calcul ray

- Affectez à l’élément n° 7 le calcul ang

- Affectez à l’élément n° 8 le calcul nbs

Il vous est maintenant demandé de cliquer sur le point origine de l’arbre. Cliquez sur le même point libre que pour la première macro.

Cliquez sur chacune des deux macros pour l’exécuter. Vous devez voir apparaître l’arbre complet et, au bout des branches finales, les probabilités, en rouge lorsque le nombre de succès est nbsDem (pour l moment égal à 1 et en noir dans les autres cas.

Pour compléter cette figure nous allons créer un curseur qui représentera la nombre de succès demandés.

Utilisez l’icône pour créer un curseur à valeurs entières comme ci-dessous.

Utilisez la touche de fonction F6 pour activer l’outil servant à modifier ou reclasser les objets numériques.

Cliquez sur k (qui figure en fin de liste) puis cliquez sur le bouton Reclasser vers le début.

Maintenant nbsDem va pouvoir utiliser la valeur de k.

Cliquez sur nbsDem puis cliquez sur le bouton Modifier. Entrez comme formule k.

Cliquez sur le bouton Fermer pour refermer la boîte de dialogue.

Quand vous capturez le curseur vous voyez les probabilités en bout de branche s’actualiser.

Utilisez l’icône pour créer :

- un nouveau calcul nommé q contenant comme formule 1-p

- un nouveau calcul nommé coeBin contenant comme formule nCr(4,k)

- un nouveau calcul nommé k’ contenant comme formule 4-k

- un nouveau calcul nommé pk contenant comme formule coebin*p^k*q^k'

Pour finir, nous allons créer un affichage LaTeX donnant la probabilité P(X=k) où X est une variable aléatoire suivant la loi binomiale de paramètres n=4 et p.

Utilisez l’icône , en haut à droite du curseur en entrez comme code LaTeX P\left( X=k \right)=\left( \begin{array}{l} 4 \\\Val{k} \end{array} \right)\Val{p,3}^\Val{k}\times \left( 1-\Val{p,3} \right)^\Val{k'} = \Val{coebin}\times \Val{p,3}^\Val{k}\times \Val{q,3}^\Val{k'}\approx \Val{pk,9}

La figure est finie et vous pouvez utiliser l’outil pour masquer les deux macros.

Voici ci-dessous la figure finale :