Algorithmes et programmes autour des listes et des tirages avec ou sans remise

samedi 30 mars 2013
par  Nordine Bernard TOUMACHE

1. Tirages avec remise

Les machines du type TI-83 de Texas Instrument ou les Casio du même genre sont équipées de fonctions qui permettent de simuler facilement des tirages successifs avec remise.

J’utilise le mode programme, dans l’écran qui suit, uniquement pour que le texte soit entièrement dans l’écran, sinon les instructions utilisées fonctionnent dans l’écran de calcul.

PNG - 152.9 ko

On applique plusieurs fois ce programme :

PNG - 165.1 ko

Ce programme envoie une liste de six éléments qui sont des entiers « aléatoires » entre 1 et 5, on peut dire qu’il simule six tirages successifs avec remise dans une boite contenant, par exemple, trois boules noires et deux blanches en décidant que les noires sont les entiers 1, 2, 3 et les blanches 4 et 5. Le dernier écran donne trois séries de six tirages ; les tirages étant supposés aléatoires.

On peut aisément, à partir de là, faire un programme qui calcule des fréquences qui avoisinent des probabilités pourvu que n soit grand.

2. Tirages sans remise

Le programme de l’écran suivant envoie une p-liste d’entiers aléatoires et tous distincts entre 1 et n, p ≤ n, il simule donc p tirages aléatoires et sans remise parmi n boules.

PNG - 175.7 ko
PNG - 170.4 ko
PNG - 160.4 ko

Pour n=7 et p=4 on obtient :

PNG - 151.7 ko

Dans l’écran précédent on a tiré, de façon aléatoire, successivement et sans remise quatre boules parmi 7 et on a obtenu les boules 4, 2, 6, 7.

3. Les éléments de la liste sont-ils tous distincts ?

L’algorithme est le suivant :

  • On génère une liste L1 d’entiers.
  • Un compteur F démarre à 0.
  • On ordonne L1 dans l’ordre croissant.
  • On balaye cette dernière liste L1 du premier à l’avant dernier et, dès qu’un terme est égal au suivant, le compteur F augmente de 1.
  • Si, à la fin, F=0 alors ils sont tous distincts, sinon ils ne le sont pas.

Le programme suivant traduit cet algorithme :

PNG - 197.7 ko
PNG - 160.8 ko
PNG - 161.2 ko

Comme applications on a :

a) Le problème des anniversaires : l’exercice est adapté d’un exercice proposé dans Les certitudes du hasard d’Arthur Engel.

Dans un groupe de 30 personnes, par exemple une classe de lycée, quelle est la probabilité qu’il y en ait au moins deux ayant la même date d’anniversaire ?

La probabilité se calcule aisément, mais pour la simulation on utilise l’algorithme suivant pour faire un programme qui a déjà été fait dans un autre article de l’auteur :

  • On génère n listes de 30 entiers aléatoires de 1 à 365 (qui sont 30 jours dans l’année).
  • On initialise un compteur C à 0.
  • Pour chacune de ces listes on teste si ses éléments sont tous distincts, si la réponse est oui le compteur C augmente de 1.
  • À la fin on fait afficher C/n qui est, pour n assez grand, la probabilité de l’évènement contraire.

Exemple : On utilise le menu « programme » uniquement pour que le texte tienne entièrement dans l’écran :

PNG - 153.9 ko

Le programme génère une liste L1 de 30 dates de naissances, visible dans le menu « STAT » si on veut :

PNG - 145.4 ko

Toutes les valeurs de L1 sont-elles distinctes ou non ?

PNG - 148.7 ko

Elles ne sont pas toutes distinctes, dans ce groupe de 30 personnes il y en a au moins 2 qui ont la même date d’anniversaire, pour l’algorithme ci-dessus le compteur C ne varie pas.

b) Le problème des canards : l’exercice est aussi adapté d’un exercice proposé dans Les certitudes du hasard d’Arthur Engel.

10 chasseurs tirent, sans échec et de façon aléatoire, sur 10 canards sauvages, plusieurs chasseurs pouvant toucher le même canard.
Combien de canards survivent en moyenne ?

Arthur Engel fait alors ce commentaire : « l’expérience peut être réalisée sans effusion de sang ».

Le calcul des probabilités et de l’espérance mathématique ne soulèvent pas de difficulté, mais voilà comment simuler cette situation :

  • On génère une liste de 10 entiers aléatoires entre 1 et 10.
  • Les canards survivants sont les entiers manquants.

Exemple : Le menu « programme » n’est utilisé, dans l’écran qui suit, que dans l’intention de faire passer le texte entièrement dans l’écran.

PNG - 154.9 ko

Ce programme génère la liste L1 de l’écran suivant :

PNG - 145.8 ko

Dans cette liste, qu’on peut voir affichée dans le menu « STAT », il manque 1, 3, 7, 9, 10. Il y a donc 5 survivants.

Pour faire trouver le nombre de survivants à la machine, ce nombre est en fait la valeur du compteur F de l’algorithme du (3), il suffit de rajouter dans le programme « DISTINCT » vu plus haut, l’instruction « afficher F », ce qui est fait dans l’écran suivant qui affiche la fin du programme « DISTINCT » ainsi que la nouvelle instruction :

PNG - 160.9 ko

On teste alors ce nouveau programme sur la liste L1 vue plus haut, où il y a 5 canards survivants :

PNG - 149.4 ko

Le programme voit bien 5 canards survivants.

On dispose maintenant de tous les ingrédients pour faire un programme qui simule et donne une réponse au problème des canards, ce que nous allons faire.

Les écrans qui suivent donnent le programme qui calcule, pour n simulations de l’expérience aléatoire, la moyenne des canards survivants.

PNG - 206.9 ko
PNG - 201.3 ko
PNG - 193.5 ko

Dans l’écran précédent l’instruction « Then » est passée 2 fois, ne prendre en compte qu’une seule fois cette instruction.

Les écrans qui suivent donnent les moyennes pour n=100 puis pour n=1000 :

PNG - 182.5 ko
PNG - 182.5 ko

On ne résiste pas à la tentation de voir si ces résultats « collent » aux calculs des probabilités :

La probabilité pour un canard donné de survivre est 0.910, c’est la probabilité que tous les chasseurs tirent sur un autre que lui.

Si on note Xi la variable aléatoire qui vaut 1 si le canard i survit et 0 sinon, i=0, 1, ..., 10, alors Xi vaut 1 avec la probabilité 0.910.

La variable aléatoire X=∑Xi est alors une loi binomiale de paramètres 10 et 0.910, d’où son espérance mathématique E(X)=10*0.910=3.4867… qui est la réponse au problème posé.


Commentaires

Annonces

Prochains rendez-vous de l’IREM

Séminaire EDIM-IREM

- Mercredi 14 juin 2017, 14h-18h, PTU, Saint-Denis, salle S23.6
- Mercredi 21 juin 2017, 14h-18h, 146 route de Grand-Coude, Saint-Joseph


Brèves

Décès de Roger Mohr

mardi 27 juin

On sait bien que Nicolas Bourbaki n’était pas le nom d’une personne mais le pseudonyme d’un groupe. L’équivalent en informatique théorique est Claude Livercy, auteur de la théorie des programmes. Roger Mohr était un des membres de Claude Livercy.

À travers les labyrinthes : algorithmes et fourmis

dimanche 1er septembre 2013

Quand les chercheurs mettent au point des modèles d’optimisation et de recherche de plus court chemin qui s’inspirent du comportement de masse de colonies de fourmis...
À écouter : Sur les Épaules de Darwin, émission diffusée sur France Inter samedi 31 août 2013.

Rencontres Mondiales du Logiciel Libre à St-Joseph

mardi 20 août 2013

Les RMLLd se dérouleront pour la 2e fois à Saint-Joseph du 22 au 25 août.
C’est une opportunité pour les élèves qui suivent la spécialité ISN et les passionnés d’informatique.

Voici pour le samedi et le dimanche quelques interventions choisies :
- http://2013.d.rmll.info/Raspberry-votre-ordinateur-au-format-carte-de-credit?lang=fr
- http://2013.d.rmll.info/Materiel-libre-et-DIY?lang=fr
- http://2013.d.rmll.info/Arduino-de-l-electronique-libre?lang=fr

Noter aussi les conférences Art et Culture du dimanche, ainsi qu’une conférence plus engagée.

Le programme complet se trouve ici. Une radio sera ouverte pour l’occasion.
Des plaquettes à distribuer se trouvent ici.

Hyper-vidéos pour l’algorithmique au lycée

dimanche 19 août 2012

Olivier Roizès, à la demande de l’ADIREM, a réalisé une collection d’hyper-vidéos de présentation de logiciels et environnements de programmation. Ces hyper-vidéos, c’est-à-dire des vidéos contenant des éléments clicables, devraient être utiles aux enseignants désireux de se familiariser avec Python, CaRMetal, R, Rurple, Scilab ou Xcas.

Ouverture du SILO

mardi 1er novembre 2011

Le SILO (Science Informatique au Lycée : Oui !) est un espace collaboratif documentaire de partage et de formation collégiale, à destination des professeurs appelés à enseigner l’informatique au lycée.

Une initiative du CNDP, de l’INRIA et de Pasc@line, à laquelle se sont associés SPECIF, fuscia, EPI et ePrep.

Sur le Web : Site du SILO

Introduction à la science informatique

lundi 12 septembre 2011

Le CRDP de Paris publie le premier ouvrage destiné aux professeurs chargés d’enseigner la nouvelle spécialité « Informatique et sciences du numérique » en Terminale S à la rentrée 2012. Cet ouvrage a été coordonné par Gilles Dowek, directeur de recherche à l’INRIA.

Sur la création de la spécialité ISN, on pourra également consulter l’interview donnée au Café pédagogique par l’inspecteur général Robert Cabanne.

Sur le Web : CRDP de Paris

Deux publications sur l’algorithmique

samedi 17 octobre 2009

L’IREM d’Aix-Marseille publie une brochure de 73 pages, téléchargeable librement, intitulée Algorithmes et logique au lycée. Ces notions sont illustrées et déclinées sur des exercices du programme de spécialité mathématique en série L, mais sont adaptables aux programmes à venir.

Le hors série thématique n° 37 du magazine Tangente, disponible actuellement en kiosque, s’intitule « Les algorithmes. Au cœur du raisonnement structuré ». Extrait de l’éditorial : « La rédaction de Tangente a conçu la quasi-totalité de ce hors série thématique pour qu’il puisse être lu par des élèves de Seconde ».

Une carte mentale pour l’algorithmique

jeudi 10 septembre 2009

Sur son site, Jean-Jacques Dhénin a publié une carte mentale géante qui renvoie vers plus de 30 documents en ligne sur l’algorithmique. Tout ce qu’il faut — et même davantage — pour faire face au nouveau programme de Seconde !

Un catalogue libre d’algorithmes pour le lycée

dimanche 30 août 2009

Guillaume Connan, de l’IREM de Nantes, publie un catalogue libre de 119 pages d’algorithmes pour le lycée. Sur son site très riche, on trouvera d’autres documents en rapport avec l’algorithmique, notamment sur l’utilisation des langages fonctionnels au lycée et sur la comparaison programmation fonctionnelle/programmation impérative.

L’algorithmique à l’IREM de Lille

vendredi 26 juin 2009

Le groupe AMECMI de l’IREM de Lille vient de mettre en ligne des ressources importantes au service des professeurs de Seconde :

- Algorithmique et programmation (Emmanuel Ostenne)
- Bibliographie amoureuse de l’algorithmique (Alain Juhel)

Statistiques

Dernière mise à jour

mercredi 9 août 2017

Publication

760 Articles
Aucun album photo
133 Brèves
11 Sites Web
132 Auteurs

Visites

104 aujourd'hui
404 hier
2073168 depuis le début
13 visiteurs actuellement connectés