corrigés du mastermind hors publication, liens vers les fichiers utiles
This commit is contained in:
+1
-1
@@ -23,7 +23,7 @@ Chaque projet est découpé en phases dans son fichier `JALONS.md`, sur une **pr
|
|||||||
| [Le Jeu de la Vie](jeu_de_la_vie/) | L'automate cellulaire de Conway : quatre règles, et des structures qui émergent | Grilles 2D, fonctions pures, POO | non |
|
| [Le Jeu de la Vie](jeu_de_la_vie/) | L'automate cellulaire de Conway : quatre règles, et des structures qui émergent | Grilles 2D, fonctions pures, POO | non |
|
||||||
| [Labyrinthe](labyrinthe/) | Générer un labyrinthe parfait, puis le résoudre automatiquement | Graphes, arbres couvrants, DFS et BFS, récursivité | oui, `src/maze.py` |
|
| [Labyrinthe](labyrinthe/) | Générer un labyrinthe parfait, puis le résoudre automatiquement | Graphes, arbres couvrants, DFS et BFS, récursivité | oui, `src/maze.py` |
|
||||||
| [Wa-Tor](wator/) | Simuler un monde torique où des requins chassent des thons | Grilles 2D, simulation, POO | non |
|
| [Wa-Tor](wator/) | Simuler un monde torique où des requins chassent des thons | Grilles 2D, simulation, POO | non |
|
||||||
| [Mastermind et algorithmes génétiques](mastermind/) | Faire évoluer une population de combinaisons jusqu'à trouver le code secret | POO, paradigme fonctionnel, optimisation | oui, `src/algo_gen.py` et `src/combinaison.py` |
|
| [Mastermind et algorithmes génétiques](mastermind/) | Faire évoluer une population de combinaisons jusqu'à trouver le code secret | POO, paradigme fonctionnel, optimisation | oui, les deux classes abstraites de `src/` |
|
||||||
|
|
||||||
Le Jeu de la Vie et le Labyrinthe sont les deux plus accessibles pour démarrer. Le Labyrinthe est celui qui recoupe le plus directement le programme de Terminale, entre le chapitre Graphes et le chapitre Récursivité.
|
Le Jeu de la Vie et le Labyrinthe sont les deux plus accessibles pour démarrer. Le Labyrinthe est celui qui recoupe le plus directement le programme de Terminale, entre le chapitre Graphes et le chapitre Récursivité.
|
||||||
|
|
||||||
|
|||||||
@@ -8,10 +8,9 @@ Le **Mastermind** est un jeu de déduction : un joueur choisit une combinaison s
|
|||||||
|
|
||||||
Plutôt que de coder une IA par force brute, ce projet applique un **algorithme génétique** : on fait évoluer une population de combinaisons candidates en s'inspirant de la sélection naturelle (tournoi, croisement, mutation) jusqu'à trouver la solution.
|
Plutôt que de coder une IA par force brute, ce projet applique un **algorithme génétique** : on fait évoluer une population de combinaisons candidates en s'inspirant de la sélection naturelle (tournoi, croisement, mutation) jusqu'à trouver la solution.
|
||||||
|
|
||||||
Une base de code complète est disponible dans `../src/` :
|
Vous ne partez pas de rien : deux classes abstraites vous sont fournies, `Individual_Interface`
|
||||||
- `algo_gen.py` - framework de l'algorithme génétique
|
et `Problem_Interface`. Vous en héritez, et vous écrivez les méthodes qu'elles laissent vides.
|
||||||
- `combinaison.py` - représentation d'un individu (une combinaison)
|
La fiche de TP et l'activité guidée vous mènent pas à pas.
|
||||||
- `src_mastermind_fiche.md` - fiche TP détaillée avec toutes les consignes
|
|
||||||
|
|
||||||
## Compétences mobilisées
|
## Compétences mobilisées
|
||||||
|
|
||||||
@@ -42,9 +41,10 @@ Une base de code complète est disponible dans `../src/` :
|
|||||||
|
|
||||||
## Ressources
|
## Ressources
|
||||||
|
|
||||||
- `../src/src_mastermind_fiche.md` - fiche TP complète avec toutes les consignes
|
- [Fiche de TP](https://florianmathieu.prof/hub-docs/nsi/terminale/Projets/src/src_mastermind_fiche/) - toutes les consignes, dans l'ordre
|
||||||
- `../src/algo_gen.py` - squelette du framework générique
|
- [Activité guidée](https://florianmathieu.prof/hub-docs/nsi/terminale/Projets/src/Activit%C3%A9/) - le pas à pas complet, avec les explications
|
||||||
- `../src/combinaison.py` - classe individu à compléter
|
- [`individual_interface.py`](https://florianmathieu.prof/hub-docs/nsi/terminale/Projets/src/individual_interface/individual_interface.py) - classe abstraite d'un individu, à hériter
|
||||||
|
- [`problem_interface.py`](https://florianmathieu.prof/hub-docs/nsi/terminale/Projets/src/problem_interface/problem_interface.py) - classe abstraite d'un problème, à hériter
|
||||||
- [Algorithme génétique - Wikipedia](https://fr.wikipedia.org/wiki/Algorithme_génétique)
|
- [Algorithme génétique - Wikipedia](https://fr.wikipedia.org/wiki/Algorithme_génétique)
|
||||||
- [Mastermind - Wikipedia](https://fr.wikipedia.org/wiki/Mastermind)
|
- [Mastermind - Wikipedia](https://fr.wikipedia.org/wiki/Mastermind)
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
from problem_sup import *
|
from _problem_sup import *
|
||||||
|
|
||||||
BEST_KEPT = 5
|
BEST_KEPT = 5
|
||||||
|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
from problem_interface import *
|
from problem_interface import *
|
||||||
from combinaison import *
|
from _combinaison import *
|
||||||
|
|
||||||
class Problem_5(Problem_Interface) :
|
class Problem_5(Problem_Interface) :
|
||||||
"""
|
"""
|
||||||
+2
-2
@@ -1,5 +1,5 @@
|
|||||||
from algo_gen import *
|
from _algo_gen import *
|
||||||
from problem_4 import *
|
from _problem_4 import *
|
||||||
|
|
||||||
if __name__=="__main__":
|
if __name__=="__main__":
|
||||||
p = Problem_4([
|
p = Problem_4([
|
||||||
|
|||||||
Reference in New Issue
Block a user