ajout instructions troisième cours

This commit is contained in:
Florent Madelaine 2024-09-17 14:13:41 +02:00
parent 1359d94175
commit 134e9dafd7

View File

@ -55,4 +55,25 @@ Troisième chose à faire.
* Ajout d'un readme expliquant le rôle de chaque fichier. * Ajout d'un readme expliquant le rôle de chaque fichier.
## Troisième cours (en salle TP, le 17/9/2024)
On revisite notre algorithme pour minimax pour le jeu de Nim pour l'optimiser.
### améliorer Minimax
* idée 0 : dans la boucle dans exploremax, si je trouve un coup après lequel je gagne (exploremin m'indique que je gagne) alors ce n'est pas la peine de chercher un autre coup gagnant, je peux arréter de chercher.
* idée 0bis : même chose pour une défaite dans exploremin.
Indication. changez votre code pour fabriquer une version optimisée tenant compte de cette idée.
Comparaison avec la version précédente. changez votre code pour compter le nombre d'état du jeu visité (il faut un compteur qui s'incrémente de 1 à chaque appel de exploremax ou exploremin).
* idée 1 : il peut arriver qu'on descende récursivement dans l'arbre de jeu, alors que au coup suivant je peux gagner.
Indication. changez votre code pour fabriquer une version optimisée qui commence par tester si je peux gagner tout de suite au prochain coup.
Si je peux, ceci évite de descendre dans l'arbre.
Si je ne peux pas, je descends dans l'arbre.
* idée 2 : on se rend compte que l'ordre des coups à une influence importante.
On pourrait énumérer les coups dans un ordre différent (par exemple au hasard) et étudier si ceci peut avoir un impact.
Indication. changez votre code pour permettre que la boucle qui teste les coups le fasse dans un ordre aléatoire. Testez si ceci améliore l'efficacité du code.