Activité Ergo Jr : Tic-Tac-Toe (work in progress)

###Edit du 25/03/2016 :
##Topics d’enseignants et d’élèves en lien avec cette activité :
(le cahier des charge a été adapté à chaque fois en fonction du niveau des élèves, des objectifs et des technologies utilisés)


##Description générale de l’activité

Titre de l’activité

Tic-Tac-Toe, un jeu résolu

Durée :

7 séances de 2 à 4h suivant les niveaux

Thématique :

Théorie des jeux

Notions concernées :

Mathématiques, programmation et Stratégie. Manipulation et programmation de deux Ergo_Jr

Objectifs pédagogiques :

Construction d’un setup ; résolution de problème, théorie des jeux, programmation
Résolution de problèmes complexes, permettre à l’Ergo_Jr de jouer et gagner au tic-tac-toe (morpion)

Utilisateurs ciblés :

les terminales ou des secondes STI2D car difficulté élevée

Prérequis :

Usage de Snap, notion de programmation et d’algorythmie

Modalités pédagogiques :

Travail de groupe, 2 ou 3 élèves par groupe.

Matériels et logiciels :

1 ergo + Snap. Ne marche pas avec VREP.
1 ergo par groupe d’élèves.
bibliothèque “modèle inverse” (permet de trouver automatiquement les angles des 6 moteurs pour atteindre un point x,y,z de l’espace)
bibliothèque “QRcode”

Évaluations :

  • Validité du dispositif réalisé
  • QCM des notions techniques
  • Enregistrement vidéo ou screencast explicitant le travail réalisé
  • Présentation orale du projet terminé

#Proposition du déroulement/cahier des charges
###Résumé des séances:

  • Etape 1: Construire, avec du papier, une grille de jeu (3x3 cases) possédant un emplacement pour l’ergo Jr

    • Réfléchir au meilleur endroit où placer le robot
    • Réfléchir aux dimensions de la grille (que tous les points soient accessibles pour le robot)
    • Construire physiquement la grille
  • Etape 2: Déterminer, grâce à la programmation par démonstration, les positions que doit prendre le robot pour atteindre chaque case

    • Amener le robot à chaque point de la grille
    • Relever les points correspondant aux cases dans l’espace
    • Noter ces points
    • Faire en sorte que le robot puisse revenir à chaque position de l’espace
  • Etape 3: Créer le mouvement pour dessiner une croix et un rond

    • Analyser les différences entre les mouvements
    • Coder ce mouvement (par démonstration ou par codage)
    • Faire des essais de réalisation
  • Etape 4: Construire des Qr code

    • Analyser la forme et la taille nécessaire pour réaliser des QRcodes de croix et de ronds
    • Contraintes des QRcodes (bonne résolution, dimensions, luminosité …)
    • Réalisation des QRcodes sur du papier
  • Etape 5: Implementer le jeu:

    • Sous étape 1 :
      • Réfléchir aux règles
      • Réfléchir aux contraintes numériques et physiques du robot
      • Notion d’algorithmie et de programmation
    • Sous étape 2 :
      • Réfléchir à l’algorithme de résolution (algo min-max)
      • Inscrire tous les états finaux possibles
      • Construire un arbre d’évolution (de l’état initial à final)
    • Sous étape 3 :
      • Créer l’algorithme qui ne perd jamais au tic-tac-toe

Remarques :

Cette activité peut également être réalisée sur la base d’autres jeux dis résolus, comme par exemple le jeu du baton (cf Fort boyard) ou le jeu de Nim, etc

Liens de référence : /


Séance 1

Titre de la séance :

Un setup d’expérimentation

Durée :

2h à 4h

Modalité(s) pédagogique(s) :

Groupes de 2 ou 3

Matériels et logiciels :

Ergo_Jr, Snap!

Contexte :

Construire, avec par exemple du papier, une grille de jeu (3x3 cases) possédant un emplacement pour l’ergo Jr

Question/consigne :

« Construit un plateau de jeu permettant de réaliser des manipulations avec l’Ergo_Jr (on parle ici de setup expérimental) ».

Travail en groupe :

  • Réfléchir au meilleur endroit où placer le robot
  • Réfléchir aux dimensions de la grille (que tous les points soient accessibles pour le robot)
  • Construire physiquement la grille

Bilan

Mise en commun des informations trouvées et présentation des programmes faits par les groupes.


Séance 2

Titre de la séance :

Ergo_Jr, un robot mobile.

Durée : 2h à 4h

Modalité(s) pédagogique(s) :

Groupes de 2 ou 3

Matériels et logiciels :

Ergo_Jr, Snap!, avec ou sans “modèle inverse”

Contexte :

préparation des données nécessaires pour réaliser le comportement de jeu

Question/consigne :

« Déterminer, grâce à la programmation par démonstration, les positions que doit prendre le robot pour atteindre chaque case ».

Travail en groupe :

  • Amener le robot à chaque point de la grille
  • Relever les points correspondant aux cases dans l’espace
  • Noter ces points
  • Faire en sorte que le robot puisse revenir à chaque position de l’espace

Bilan :

Mise en commun des informations trouvées et présentation des programmes faits par les groupes.


Séance 3

Titre de la séance :

Ergo_Jr, un robot artiste.

Durée :

2h à 4h

Modalité(s) pédagogique(s) :

Groupes de 2 ou 3

Matériels et logiciels :

Ergo_Jr, Snap! code séance 2

Contexte :

Permettre au robot d’agir sur la grille

Question/consigne :

« Créer le mouvement pour dessiner une croix et un rond ».

Travail en groupe :

  • Analyser les différences entre les mouvements
  • Coder ce mouvement (par démonstration ou par codage)
  • Faire des essais de réalisation

Bilan :

Mise en commun des informations trouvées et présentation des programmes faits par les groupes.


Séance 4

Titre de la séance :

Ergo_Jr, un robot qui voit et reconnait.

Durée :

2h à 4h

Modalité(s) pédagogique(s) :

Groupes de 2 ou 3

Matériels et logiciels :

Ergo_Jr, Snap!

Contexte :

L’Ergo_Jr doit pouvoir reconnaitre les actions de l’adversaire (où il place ses croix et ronds), permettre à l’Ergo_Jr d’interagir

Question/consigne :

« créer des QRcode permettant de jouer contre l’Ergo_Jr ».

Travail en groupe :

  • Analyser la forme et la taille nécessaire pour réaliser des QRcodes pour les croix et les ronds
  • Contraintes des QRcodes (bonne résolution, dimensions, luminosité …)
  • Réalisation des QRcodes sur du papier

Bilan :

Mise en commun des informations trouvées et présentation des programmes faits par les groupes.


Séance 5

Titre de la séance :

Découverte du jeu

Durée :

2h à 4h

Modalité(s) pédagogique(s) :

cours théorique, débat, discussion

Matériels et logiciels :

/

Contexte :

le setup étant prët il faut maintenant implementer le jeu

Question/consigne :

« »

Travail en groupe :

  • Réfléchir aux règles
  • Réfléchir aux contraintes numériques et physiques du robot
  • Notion d’algorithmie et de programmation

Bilan :

Mise en commun des informations trouvées et présentation des programmes faits par les groupes.


Séance 6

Titre de la séance :

Découverte du jeu

Durée :

2h à 4h

Modalité(s) pédagogique(s) :

cours théorique: analyse du jeu et traduction algorythmique

Matériels et logiciels :

Snap!

Contexte :

le setup étant prët il faut maintenant implementer le jeu

Question/consigne :

« »

Travail en groupe :

  • Réfléchir à l’algorithme de résolution (algo min-max)
  • Inscrire tous les états finaux possibles
  • Construire un arbre d’évolution (de l’état initial à final)

Bilan :

Mise en commun des informations trouvées et présentation des programmes faits par les groupes.


Séance 7

Titre de la séance :

A vous de jouer

Durée :

2h à 4h

Modalité(s) pédagogique(s) :

Groupes de 2 ou 3

Matériels et logiciels :

Ergo_Jr, Snap!, code séance 2, 3, 4 + grille de jeu

Contexte :

toutes les informations pour réaliser le projet sont disponibles

Question/consigne :

« Créer l’algorithme qui ne perd jamais au tic-tac-toe ».

Travail en groupe :

  • réaliser le projet (les algorythmes de résolution du Tic-Tac-Toe sont facilement trouvables sur le web)

Bilan :

Mise en commun des informations trouvées et présentation des programmes faits par les groupes.

1 Like

Très bonne activité, je suis déjà emballé avant de commencer :grinning:
Je pense proposer cette activité à un groupe d’élève en spécialité ISN.
Dans un premier temps l’activité peut être simplifiée en faisant jouer au hasard l’ergo-jr dans une des cases encore vide du jeu. L’implémentation de l’algo min-max est plutôt difficile car les élèves ne connaissent pas la notion d’arbre ni la notion de récursivité.

effectivement l’idée est de donner une première approche de ces notions d’une façon générale, pour apprendre à les manipuler sans nécessairement connaitre leur fonctionnement intrinsèque.

d’autres problèmes peuvent venir en amont faire une première illustration de ces problématiques, je pense particulièrement à: la tour de Hanoï, cas classique pour aborder la récursivité.

En tous cas merci pour ce retour (j’espère en avoir d’autres) et surtout pour votre enthousiasme!
Nous pourrons parler plus en détails de votre idée durant notre prochain réunion du 13/01

PS:

rajouter une étape (séance?) sur l’approche aléatoire d’un processus de décision est une très bonne idée

Pour ce qui est du hasard on peut même imaginer de faire construire aux élèves leur propre fonction random

  1. middle square pour le coté historique et mettre en évidence la difficulté de simuler du pseudo hasard avec un algo déterministe

  2. congruence linéaire pour montrer comment améliorer les choses

  3. et si les élèves sont intéressés finir avec Mersenne-Twister

Comme je compte donner cette activité en projet ISN à un groupe de 3 ou 4 élèves ils vont avoir 4 mois pour réfléchir à tout çà…

2 Likes