Files
BUT3-IA-Jeux-PUBLIC/README.md
2025-09-04 11:38:32 +02:00

2.4 KiB

BUT3-IA-Jeux-PUBLIC

Dépôt pour ressource cours IA sur les jeux de BUT3. Formellement MATH 5.1 et DEV 5.5

évaluation. MATH 5.1 examen sur table 100% DEV 5.5 TPs filés et éventuel mini projet final. soutenance probable. note différenciée par groupe possible

Des ressources sont disponibles dans le répertoire 2023-24.

Notes de cours.

Premier cours (mardi 2/9/2025)

Au tableau.

Résumé du cours.

Réflexion sur la nature d'un jeu. Classification de divers jeux. Focus sur les jeux à 2 joueurs, tour par tour, à information complète, et déterministe, nbre de coups finis, durée du jeu finie.

Explication informelle des notions suivantes: Stratégie gagnante, états, graphe des états, arbre de jeu.

Un peu d'histoire brièvement : Deepblue vs Kasparov aux échecs, MoGo et Monte Carlo Tree Search, AlphaGo.

Illustration de Minimax et approximations.

Point de blocage taille de l'arbre de jeu.

Exemple du jeu de Nim et de son arbre de jeu pour 5 allumettes. Condition de défaite : prendre la dernière allumette.

Illustration apprentissage par renforcement en info débranché pour le Jeu de Nim

Second cours (jeudi 4/9/2025)

Au tableau.

Résumé du cours.

  • Idée détaillée et Pseudo code de minimax pour le jeu de Nim
  • variante qui détecte si j'ai déjà gagné et donc pas besoin de continuer la boucle pour voir d'autres coups.
  • variante coupe à profondeur fixe, discussion d'évaluateur de position
  • variante mémoïsation avec deux tableaux (cache des positions déja évaluées, un tableau par joueur).

Rappel de ce que nous avons vu avec détails historique et une premioère passe pour alpha beta avec les transparents du cours (dispo dans le répertoire le plus ancien).

à faire en salle machine

  • créer un git individuel BUT3Jeux partagé avec moi
  • dans un sous répertoire TP1, coder minimax pour le jeu de Nim
  • Prendre soin de garder plusieurs versions dans des fichiers distincts (version de base sans optimisation, puis avec).
  • Ajouter un README.md dans TP1 détaillant ce que fait chaque version, si elle fonctionne correctement ou pas.
  • tester votre code
  • Reprendre votre code pour compter le nombre d'états visités dans chaque version
  • Tester pour différents nombre d'allumettes 5, 7, 13, 19, 31... Écrire un tableau avec le nombre d'états visités pour chaque variante plus ou moins avancées.