67 lines
2.4 KiB
Markdown
67 lines
2.4 KiB
Markdown
# 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.
|
|
|
|
|