Le singe fou (ou le singe flou ?)

En avril 2010, CaRMetal s’est vu doter d’un nouvel outil de vérification de conjectures.
lundi 26 avril 2010
par  Alain BUSSER

La logique trivalente de Jan Lukasiewicz appelle naturellement une extension à la logique multivalente, ou logique floue où des propositions ont une valeur de vérité quelconque de 0 (proposition complètement fausse) à 1 (proposition complètement vraie). Le monkey de CaRMetal permet d’indiquer non seulement que la construction de l’élève est fausse, mais aussi à quel point elle est fausse.

La proposition « \forall n \in \N, n^2+n+41 \mbox{ est premier} » est fausse. Il est plutôt facile de démontrer qu’elle est fausse, il suffit de montrer un contre-exemple (par exemple avec n=41). Mais si on demande à des élèves de démontrer ladite proposition, beaucoup d’entre eux vont essayer pour plusieurs valeurs de n et trouver des nombres premiers :

n n^2+n+41 statut
0 41 premier
1 43 premier
2 47 premier
3 53 premier
4 61 premier
5 71 premier
6 83 premier
7 97 premier
8 113 premier
9 131 premier
10 151 premier

Au bout de quelques lignes, le « on voit bien que n^2+n+41 est toujours premier » se transforme insidieusement en « c’est bien la preuve que n^2+n+41 est toujours premier ». D’ailleurs si on vérifie avec la valeur suivante : n=11, 11^2+11+41=173 est premier ! Et voilà !

Cette façon de faire illustre bien la différence qu’il y a entre induction (logique) (le raisonnement de l’élève) et déduction logique (le raisonnement attendu par le prof). Le fait que la preuve par récurrence ressemble plus à une induction qu’à une déduction, et l’enseignement de plus en plus présent, de la statistique inférentielle, n’arrangent pas les choses...

Mais tout de même, l’élève qui répond « oui d’après le tableau ci-dessus » a-t-il autant faux que celui qui répond « oui parce que 0^2+0+41=41 qui est premier » ? Avant de répondre que oui, il est bon de se rappeler que la conjecture \forall n \in  \N, 2^{2^n}+1\mbox{ est premier} a résisté un siècle (de Fermat à Euler) à des gens que l’on serait enclin à considérer comme plus forts que le lycéen moyen...

Le monkey de CaRMetal permet justement de donner une note de qualité à une construction, sous la forme d’un pourcentage de constructions correctes parmi les variantes obtenues en secouant la figure. Quelques exemples ci-dessous :

Arcanes

Depuis la version 3.5, CaRMetal possède un nouveau bouton qui représente un singe :

(en y regardant bien, on dirait plus particulièrement un macaque rhesus)

Tant que ce bouton est enfoncé (clic gauche de la souris), les points qui ne sont pas fixes ni liés à des courbes parcourent au hasard la fenêtre graphique en suivant une marche aléatoire dont l’angle de rotation n’est pas nécessairement \frac{\pi}{2} mais un angle aléatoire uniforme entre \pm \frac{1}{2} radian (qu’Éric Hakenholz appelle spin), le rayon vecteur étant toujours de 5 pixels (extrait de PointObject.java dans le code source de CaRMetal, lequel est placé sous license GNU GPL) :

Lorsqu’un point, sous l’influence du Monkey, tente de sortir de la fenêtre, il rebondit de manière à retourner vers l’intérieur de celle-ci, en suivant un algorithme qui rappelle les réflexions élastiques de l’algorithme Gendy de Iannis Xenakis (à part qu’ici, le contexte est graphique bidimensionnel, alors que Gendy synthétise des sons stochastiques).

Pour voir l’effet produit sur le mouvement d’un point par le Monkey, il suffit de construire un point et de cocher l’option « activer la trace » de ce point (onglet « aspect » de ses propriétés). On voit alors la trace laissée par le point :

PNG

À l’intérieur de la fenêtre, le mouvement du point est une marche aléatoire, approximation d’un mouvement brownien, et la position instantanée du point est un vecteur aléatoire gaussien d’espérance la position initiale du point, et dont l’écart-type est fonction croissante du temps (pour être précis, proportionnel à la racine carrée de celui-ci). De plus, les rebonds sur les bords de la fenêtre sont non linéaires et il est difficile de prévoir le comportement à long terme du Monkey de manière probabiliste. L’expérience montre que le parcours du point est uniforme dans la fenêtre ! Voici comment on peut le vérifier :

On crée un rectangle dont les sommets ont pour coordonnées respectives

(windoww/2,windowh(4))
(windoww/2,-windowh/4)
(-windoww/2,-windowh/4)
(-windoww/2,windowh/4)

(qui est donc l’homothétique de la fenêtre entière, avec pour rapport \frac{1}{2}) ce qui fait que ce rectangle ne bougera pas puisque en définissant les coordonnées de ses sommets par formules, ceux-ci sont devenus fixes :

PNG

et puisque ce rectangle a été baptisé du doux nom de poly3 par CaRMetal, compter le nombre de fois que le point mobile P1 sera à l’intérieur du rectangle, avec

sum(inside(P1,poly3))

et diviser par le nombre total de positions du point P1 qui n’est autre que

sum(1)

PNG

Au bout de quelques minutes, la fréquence de passage dans le rectangle se rapproche de \frac{1}{4} :

PNG

Le fait que la fréquence s’approche de \frac{1}{4} alors que le rapport de l’homothétie est \frac{1}{2} est intéressant à analyser en ces temps de disparition du rapport des aires du programme de Seconde...

Symétrique

Exercice extrait de « la géométrie du compas » : Construire au compas seul, le symétrique d’un point par rapport à une droite. La magie de ce nouveau créateur carmetallien d’exerciciels, c’est qu’on peut très bien créer la figure avec des outils (ici la réflexion par rapport à la droite) et enlever ces outils pour la solution de l’élève. Donc on construit une droite par deux points (a priori mobiles) et un point (bleu) puis son symétrique par rapport à la droite :

PNG

Pour faire joli, on peut rendre invisibles les points qui ont servi à construire la droite (avec l’outil « gomme ») :

PNG

Ensuite, juste pour embêter l’élève qui fera l’exercice, on active l’environnement restreint, et on ne laisse dans ledit environnement, que le compas et l’essentiel :

PNG

On constate alors que la palette d’outils à droite de la figure se retrouve réduite à sa portion congrue ! Il suffit alors comme expliqué dans l’article introductif, de cliquer sur « créer un exercice » (ou utiliser le raccourci clavier) pour avoir la magnifique fenêtre suivante :

PNG

En cliquant sur le cadre du haut on se prépare à sélectionner les objets à construire d’un simple clic, ici sur le symétrique dont on apprend au passage qu’il s’appelle P6 :

PNG

Ensuite il suffit de cliquer sur « créer » pour que l’exercice soit testable par l’élève. Si on veut que l’élève ne puisse pas modifier l’environnement restreint, on peut exporter l’exercice au format html.


Supposons que, confronté à cet exercice, un élève construise un cercle passant par le point bleu, ses deux intersections avec l’axe de symétrie, et que par ces deux intersections il construise les deux cercles passant par le point bleu, dont l’intersection donne la solution du problème. En cliquant sur « tester l’exercice », il aperçoit une barre de progression indiquant où en est le Monkey dans ses expériences (qui sont invisibles) puis le message suivant :

PNG

Ce message ne dit pas seulement que la construction n’est pas bonne, il indique aussi qu’elle est bonne dans la moitié des cas ! Cette information éclaire sur les raisons possibles de l’erreur. Il suffit alors de cliquer sur le Monkey pour voir qu’effectivement, dans la moitié des cas, la construction redonne le point de départ au lieu de son symétrique :

PNG

L’explication est que l’intersection des deux cercles étant formée de deux points, pour des raisons de gestion de la continuité, on a une chance sur deux de tomber sur le bon. La solution est de modifier le point construit pour qu’il soit « loin de » l’autre. Le test après ça confirme que la construction est bonne (dans tous les cas).

PNG

Milieux

L’énoncé est le suivant :


Construire le triangle dont ABC est le triangle des milieux.

La construction est très rapide avec l’outil « translation » (sélectionné à droite) :

PNG

Mais en enlevant l’outil « translation » de l’environnement restreint (après avoir activé celui-ci) la construction est un peu moins facile :

PNG

Puisque la construction du triangle rouge ne peut se faire sans ses 3 sommets, ce sont eux qu’il faudrait choisir comme objets à construire. Cependant c’est plus simple de ne choisir que le triangle comme objet à construire.


Maintenant l’élève qui fait l’exercice va être obligé de construire 6 droites : Les côtés du triangle ABC en vert, et les parallèles à ceux-ci par les sommets de ABC, en marron :

PNG

Le test de l’exercice donne pour réponse :

PNG

À interpréter comme le fait que la construction est correcte dans tous les cas où elle a un sens, ce qui introduit discrètement la notion de « presque sûrement ».

Isocélie

Un exercice peut très bien avoir plusieurs réponses différentes entre elles mais toutes correctes. La question est alors de savoir si on en attend une ou si on les attend toutes. Exemple :


Construire un triangle ABC isocèle en C ayant un angle de 40° tel que AB=2 unités.

Si l’angle en A est de 40°, celui en B aussi et celui en C est alors égal à 100° (le point B a été construit avec l’outil « segment de longueur fixe ») :

PNG

Mais il y a un autre tel triangle, celui où les angles en A et B valent 70° (dans ce cas l’angle en C vaut 40° comme demandé) :

PNG

Et en comptant les symétriques de ces deux triangles par rapport à (AB), on compte finalement 4 positions possibles pour le point C :

PNG

Ces points s’appellent P1, P2, P5 et P8 ; on en aura besoin pour la suite. Si on crée un exercice où seul P1 est demandé, on est doublement embêté :

  1. L’élève qui construit un autre point que P1 a faux ;
  2. L’élève qui ne construit que P1 a juste.

Alors l’idée est tentante, de demander les 4 sommets C possibles :

PNG

Mais dans ce cas, l’élève qui ne construit qu’un seul de ces points a un message d’erreur. D’ailleurs même si 3 des 4 points sont bons, le message d’erreur persiste.

Cela est dû à ce que les éléments sélectionnés comme réponse à l’exercice sont associés par une conjonction alors qu’on eût ici, souhaité une disjonction. Comment faire alors ?


On ne veut qu’un seul point pour la réponse, mais on veut qu’il puisse sous l’effet du Monkey, être égal à P1, P2, P5 ou P8. Pour cela on peut aider le Monkey avec un dé, ici appelé « e », et égal au hasard à 0, 1, 2 ou 3 :

PNG

(c’est un objet de type « expression »).

Alors le point qui peut être égal à P1, P2, P5 ou P8 est un point M dont l’abscisse vaut

if(e==0;x(P1);if(e==1;x(P2);if(e==2;x(P5);x(P8))))

Ne pas oublier de laisser la chaîne entre x et y de manière que l’ordonnée de M soit elle aussi égale à celle de P1, P2, P5 ou P8 !

Après il suffit de choisir M comme objet à construire (et cacher les cibles P1, P2 etc) :

PNG


Si on construit un des bons triangles (ici avec la macro « rotation », le triangle de sommet P2), le test de l’exercice donne ceci :

PNG

C’est exactement l’effet souhaité : Non seulement du fait que le triangle construit est correct, on ne peut considérer que la construction est totalement fausse, mais même, en lisant un taux d’échec d’environ trois quarts, on devine qu’il manque trois autres triangles ! D’ailleurs en construisant les trois autres triangles, on a le message de triomphe « construction correcte » attendu.

Tétraèdre

Le singe peut-il devenir tridimensionnel ? Pour créer un exercice de section de tétraèdre par exemple, il suffit de faire comme avec les onglets précédents, mais à partir d’une figure de l’espace. Après avoir « construit » un tétraèdre centré sur le repère (qu’on a ensuite caché pour ne pas alourdir la figure), on place trois points I et J sur des arêtes de celui-ci, et K sur une face. Mais il y a deux cas de figure, selon l’arête coupée par (JK) :

PNG

PNG

Le problème ici est le contraire de celui de l’onglet précédent : Il y a plusieurs cas de figure, et on les veut tous. Le fait que les cibles soient liées entre elles par une conjonction et non une disjonction, est donc ici nécessaire.

On réalise la construction dans chaque cas de figure puis on crée l’exercice où la liste des cibles est formée des 2 polygones obtenus (on n’en voit qu’un seul à la fois, mais on peut entrer leurs noms au clavier) :

PNG

Ensuite si un élève ne construit qu’un seul de ces polygones, même s’il est correct, il aura un message d’erreur :

PNG

Bien entendu celui qui donne tous les cas de figure aura la « construction correcte » souhaitée.

Orthocentre

Idée de fou (conforme au titre de cet article) : Et si dans l’environnement restreint, on enlevait tous les outils ? Quoi, même la création de point ? Tout, même la création de point ! Quelle serait alors l’utilité d’un exercice infaisable ? En fait pas si infaisable que ça puisque même sans outil, on peut quand même créer une figure : Avec JavaScript !

Pour faire un exemple pas trop long, on demande juste de construire l’orthocentre du triangle ABC, et cette fois-ci, l’énoncé est écrit dans la figure (c’est ce qu’il aurait fallu faire dans les autres onglets d’ailleurs). On commence par construire le fameux orthocentre mais on cache les traits de construction (4 droites) :

PNG

Ensuite, comme promis, on enlève tous les outils de l’environnement restreint (en fait on laisse juste les outils expression et texte pour permettre à l’élève d’exprimer sa rage d’être privé d’outils mais l’éditeur JavaScript permet aussi de laisser des commentaires) :

PNG

Dans l’éditeur d’exerciciels, on choisit comme unique cible, l’orthocentre (ci-dessous il s’appelle P1) et on le cache pour éviter la recherche au pifomètre :

PNG

Une fois cliqué sur « créer », l’exercice paraît très dénudé, sans ses outils :

PNG

Cependant, puisque l’éditeur JavaScript reste accessible, on peut faire la construction de l’orthocentre par un CarScript ; voici un exemple :

PNG

(on crée les deux droites (AB) et (AC) puis les perpendiculaires à ces droites respectivement par C et par B, c’est-à-dire les hauteurs menées par C et par B, puis leur intersection)

Après un clic sur le feu vert, la construction s’est réalisée :

PNG

Un clic sur le rhesus agite la figure dans une danse effrénée, mais les hauteurs persistent à se couper en l’orthocentre. Et le clic sur « vérifier la construction » confirme que le script est correct :

PNG

Pour voir ce que ceci a d’innovant, voir les deux onglets suivants.

Fibonacci

Il est même possible d’utiliser CaRMetal pour faire des exercices d’algorithmique « pure » (sans géométrie). Mais le Monkey n’étant pas capable de vérifier autre chose que des constructions, il faut trouver le moyen de lui faire connaître des nombres sans communiquer ceux-ci sous forme numérique. Comment communique-t-on avec un singe ?

Bingo, par des dessins ! Par contre il faut faire ici un dessin (tous les points immobiles) et pas une figure (où les points pourraient bouger). L’exercice relativement classique de trouver un algorithme calculant la suite de Fibonacci devient maintenant l’exercice suivant :


Écrire un algorithme représentant les 20 premières valeurs de la suite de Fibonacci, les abscisses des points allant de 1 à 20, et les ordonnées étant les valeurs successives de la suite. On écrira le programme en JavaScript et on n’oubliera pas de fixer les 20 points avec « SetFixed(...,true) ».

Une première difficulté pour la création de ce scripticiel est la création du nuage de points ! Pour cela rien ne vaut un bon CarScript, par exemple, juste pour vérifier que même créés différemments les deux nuages de points coïncident, avec la formule de Binet :

PNG

  • Dans la ligne 6, un arrondi a été nécessaire pour être certain d’avoir des nombres entiers, en effet JavaScript arrondit parfois un peu bizarrement.
  • Les lignes 3 et 8 sont indispensables pour que l’exercice soit insensible au Monkey.
  • La ligne 9 sert à rendre la cible invisible. Cacher 20 points un par un, c’est un peu fastidieux...
  • Les lignes 4 et 10 ne servent pas à construire la cible mais un texte qui va servir à la suite (la liste des cibles, elle aussi fastidieuse à élaborer à la souris).

L’exécution de ce script crée non seulement les 20 points du nuage, mais aussi la liste de leurs noms, dans une fenêtre que CaRMetal a créée à cet usage :

PNG

Il suffit de copier (Ctrl+C ou Pomme+C) le texte en question (et se le garder sous l’oreille). La phase suivante c’est la création de l’exercice proprement dit, de demander de cacher les cibles, et une fois positionné sur leur liste, de coller ladite liste qui était bien au chaud derrière l’oreille (Ctrl+V ou Pomme+V) :

PNG

On remarque que l’environnement restreint n’a pas été activé. En effet la méthode consistant à entrer les coordonnées des points un par un, en s’aidant par exemple de la calculatrice, est également fastidieuse pour l’élève...

Voici un exemple de ce qui est attendu :

PNG

Là encore, les lignes 4 et 10 sont indispensables, la proposition de l’élève ne devant pas plus bouger que les 20 points de l’énoncé. Une fois le script exécuté, le clic sur « vérifier la construction » donne l’affichage triomphal attendu :

PNG

Conclusion

La logique floue sert essentiellement à gérer des systèmes experts qui ne raisonnent pas de façon binaire (diagnostic progressif ou probabiliste) ; et l’évaluation automatique d’exerciciels nécessite plus ou moins un système expert. Donc il est nettement logique que la logique floue soit utilisée pour réaliser des exerciciels. Et on s’attend à trouver de nombreux et même vieux travaux sur la question. Et bien apparemment non...

Le Monkey n’est pas réellement nouveau. Le logiciel Cinderella utilise une technique analogue appelée randomized theorem checking. Cependant

  • L’émission automatique de conjecture se fait dans Cinderella lui-même, pas dans l’exercice exporté ;
  • Il n’est pas possible de voir la figure bouger (le Monkey de Cinderella est et reste invisible) ;
  • Le langage CindyScript de Cinderella n’est pas aussi répandu que JavaScript ;
  • Il ne semble pas possible de combiner le langage de scripts avec les exercices de construction dans Cinderella ;
  • Cinderella n’est pas libre...


Commentaires

Logo de reillesjeanclaude
mercredi 2 mai 2012 à 12h52 - par  reillesjeanclaude

Ah !Si j’avais eu la chance d’avoir de tels professeurs de mathématiques je comprendrais enfin pourquoi je ne comprends rien aux mathématiques...Enfin,leurs intelligences font plaisir à voir !

Annonces

Prochains rendez-vous de l’IREM

Séminaire EDIM-IREM

- Mercredi 8 février 2017, 14h-18h, campus du Tampon, amphi 120 B
- Mercredi 8 mars 2017, 14h-18h, PTU, Saint-Denis, salle S23.6
- Mercredi 12 avril 2017, 14h-18h, campus du Tampon
- Mercredi 3 mai 2017, 14h-18h, PTU, Saint-Denis, salle S23.6
- Mardi 13 juin 2017, 14h-18h, campus du Tampon
- Mercredi 14 juin 2017, 14h-18h, PTU, Saint-Denis, salle S23.6

Semaine des mathématiques

Du 23 mars au 4 avril 2017 dans l’académie de la Réunion.


Brèves

Travailler à plusieurs

lundi 19 décembre 2016

Les enseignements d’exploration au lycée imposent aux enseignants de travailler ensemble. Chantal Tuffery-Rochdi a analysé dans sa thèse les pratiques des enseignants de MPS (méthodes et pratiques scientifiques). Elle répond aux questions des Cahiers pédagogiques.

Un document sur Eduscol

mardi 19 mai 2015

Un document clarifiant bien la façon dont les mêmes concepts vivent en mathématiques et dans les sciences « exactes » les utilisant, publié par Eduscol en octobre 2014. Citons-les :
« Le document proposé ci-dessous s’adresse aux professeurs de mathématiques, physique-chimie et sciences de l’ingénieur intervenant dans le segment [Bac-3 ; Bac+3]. Il vise à les informer des différences de présentation et d’interprétation qui sont faites de certains concepts mathématiques dans les autres disciplines. Ces éclaircissements peuvent contribuer à harmoniser et à clarifier l’utilisation de ces notions auprès des élèves. »

Les métiers des mathématiques et de l’informatique

dimanche 22 mars 2015

Une brochure de l’ONISEP réalisée à l’initiative des cinq sociétés savantes, Femmes & Mathématiques, Société informatique de France, Société française de statistique, Société de mathématiques appliquées et industrielles, Société mathématique de France, représentant l’ensemble de la communauté française d’informatique et de mathématiques.

Histoire de la comptabilité

vendredi 28 décembre 2012

Sur ce site (en anglais) dédié à la comptabilité, on trouve des informations intéressantes sur l’histoire et les pratiques de ce domaine, qui peuvent être utiles aux professeurs enseignant des mathématiques financières (et aussi aux autres...).

La CGE et la réforme des lycées

lundi 16 janvier 2012

La Conférence des Grandes Écoles publie 19 préconisations pour la réforme du lycée.

Sur le Web : Les 19 préconisations

Pratique des mathématiques en série STD2A

lundi 16 janvier 2012

Le site de l’IGEN offre des recommandations et des ressources pour enseigner les mathématiques en série STD2A. Les thèmes abordés (couleurs et nuances de gris, arcs et architecture, jeux vidéos, photo et tableur, perspectives parallèles...) sont de nature à donner aussi des idées d’activités aux enseignants des autres séries !

En cheminant avec Kakeya

lundi 16 janvier 2012

Un livre (à télécharger) de Vincent Borelli et Jean-Luc Rullière qui présente le calcul intégral et la dérivation en s’appuyant sur la question de Kakeya. Pour les lycéens, les étudiants et tous les esprits curieux qui souhaitent voir les mathématiques sous un jour différent.

Sur le Web : Livre à télécharger

Bicentenaire Galois

lundi 12 septembre 2011

À l’occasion du bicentenaire de la naissance d’Évariste Galois (1811-2011), l’Institut Henri Poincaré et la Société mathématique de France organisent un ensemble de manifestations et proposent un site contenant diverses ressources documentaires susceptibles d’intéresser les enseignants.

Statistiques

Dernière mise à jour

dimanche 5 février 2017

Publication

730 Articles
Aucun album photo
125 Brèves
11 Sites Web
126 Auteurs

Visites

499 aujourd'hui
717 hier
1924400 depuis le début
29 visiteurs actuellement connectés