Jeu de Nim : des cartes qui apprennent à gagner

Avec un simple jeu de 32 cartes, une « machine » apprend à gagner au jeu de Nim en tirant les leçons de ses défaites. Une activité débranchée pour comprendre l'apprentissage par renforcement.

Comment une machine peut-elle apprendre à gagner à un jeu sans jamais comprendre la stratégie ? Avec « Les cartes qui apprennent à jouer au jeu de Nim », Axel Palaude propose une activité débranchée qui le montre avec un simple jeu de 32 cartes. Une partie des cartes joue le rôle d’une « machine » qui s’améliore partie après partie, en éliminant les coups qui l’ont fait perdre.

L’activité illustre de façon très concrète le principe de l’apprentissage par renforcement, une des familles de l’intelligence artificielle.

Le principe en bref

Un humain affronte une « machine » faite de cartes. Pour jouer, la machine tire une carte au hasard qui lui dit combien d’objets prendre. Quand elle perd, on retire la carte du dernier coup qu’elle a joué : elle ne pourra plus refaire cette erreur. Après une douzaine de défaites au maximum, elle gagne à tous les coups.

Quelle est la règle du jeu de Nim ?

  • Au départ : 8 cartes de carreau sont posées en ligne, de l’as au 7.
  • À son tour : chaque joueur prend 1, 2 ou 3 cartes.
  • Pour gagner : il faut prendre la dernière carte (l’as de carreau).
  • Ordre : l’humain joue toujours en premier, la machine ensuite.

Comment fabriquer la machine ?

Les 24 autres cartes du jeu servent de « cerveau » à la machine. Chaque couleur correspond à un coup :

Carte tiréeCoup joué par la machine
Pique ♠prendre 1 carte
Cœur ♥prendre 2 cartes
Trèfle ♣prendre 3 cartes
  1. Sous chaque carreau, placer un petit paquet mélangé de 3 cartes : un pique, un cœur et un trèfle. Chaque paquet correspond à une situation de jeu (« il reste 8 cartes », « il en reste 7 », etc.).
  2. Retirer les coups impossibles : le paquet « il reste 2 cartes » n’a pas de trèfle, le paquet « il reste 1 carte » ne contient qu’un pique.
  3. Au total, il faut 8 piques, 7 cœurs et 6 trèfles.

Comment la machine apprend-elle ?

  1. Elle joue : quand c’est son tour, elle retourne la première carte du paquet qui correspond au nombre de carreaux restants, et prend 1, 2 ou 3 carreaux selon la couleur.
  2. Si elle gagne : toutes les cartes tirées retournent dans leur paquet, qu’on remélange.
  3. Si elle perd : on retire définitivement la carte de son dernier coup, celui qui l’a menée à la défaite. Les autres cartes retournent dans leurs paquets.
  4. Si un paquet est vide : la machine abandonne, car tous les coups possibles depuis cette situation mènent à la défaite.

On rejoue jusqu’à ce que la machine gagne à chaque partie. Dans cette version à 8 cartes, elle perd au maximum 12 fois avant de jouer parfaitement.

Le secret du jeu

Celui qui laisse à l’adversaire un multiple de 4 (4 ou 8 cartes) est sûr de gagner. En partant de 8, l’humain est donc perdant si la machine joue bien. La machine finit par « trouver » cette stratégie sans jamais la comprendre, simplement parce que les mauvais coups ont disparu de ses paquets.

Quel intérêt pédagogique ?

  • Comprendre l’apprentissage machine : la machine progresse par essais et erreurs, sans réfléchir ;
  • Démystifier l’IA : derrière l’impression d’intelligence, il n’y a que des règles simples conçues par des humains ;
  • Faire des mathématiques : chercher soi-même la stratégie gagnante et la comparer à celle de la machine ;
  • Parler de l’erreur : comme un élève, la machine apprend de ses échecs.

Quelques questions pour le débriefing : pourquoi retire-t-on seulement la carte du dernier coup ? La machine a-t-elle « compris » le jeu ? En quoi est-ce différent de notre façon d’apprendre ?

Quelles variantes ?

  • Construire la machine pas à pas : commencer avec les seuls carreaux, puis ajouter les paquets un à un ;
  • Laisser commencer la machine : elle finit alors par abandonner dès le départ, car elle est en position perdante ;
  • Machine contre machine : avec deux jeux de 32 cartes ;
  • Récompenser les victoires plutôt que punir les défaites (version de Malika More et Florent Madelaine) ;
  • Sans jeu de cartes : 8 allumettes ou jetons pour le jeu, et 8, 7 et 6 objets de trois sortes pour la machine.

Le document est diffusé sous licence libre Creative Commons et déposé sur l’archive ouverte HAL (hal-03514954).

Découvrir le document sur HAL :

https://hal.science/hal-03514954

Et si les élèves cherchaient eux-mêmes la stratégie ?

Pour préparer ou prolonger l’activité, une fiche d’Éduscol (ministère français de l’Éducation nationale, 2016) propose de faire découvrir la stratégie gagnante aux élèves du cycle 3 (8 à 11 ans, soit de la P4 à la S1 environ) avec 16 bouchons pour deux joueur·euses. Elle s’inscrit dans les ressources « Sciences et technologie » et fait le lien avec les mathématiques et l’algorithmique.

  • Séance 1 (1 h), trouver l’algorithme gagnant : les élèves jouent, formulent des règles « si l’adversaire fait… alors je fais… », puis réalisent une affiche qui explique leur astuce ;
  • Séance 2 (1 h), trouver les positions perdantes : en faisant varier le nombre de bouchons, ils découvrent que les multiples de 4 sont perdants (avec 26 bouchons, il faut en retirer 2 pour en laisser 24) ;
  • Prolongements : d’autres jeux de stratégie et une recherche sur ce qu’est un algorithme.

Les deux activités se complètent bien : les élèves trouvent d’abord la stratégie en réfléchissant, puis observent une « machine » qui y arrive sans réfléchir du tout.

À voir aussi : L’informatique sans ordinateur : le guide CS Unplugged ; Didak’lab : un laboratoire pour expérimenter l’IA