IA Block Blast basée sur le Hierarchical Reasoning Model (HRM) avec MCTS + réseau de neurones.
# 1. Créer un environnement virtuel
python -m venv .venv
# Windows
.venv\Scripts\activate
# Linux/Mac
source .venv/bin/activate
# 2. Installer les dépendances
pip install -r blockblast/requirements.txt
# Pour GPU NVIDIA (recommandé, beaucoup plus rapide pour l'entraînement) :
pip install torch --index-url https://download.pytorch.org/whl/cu128 --force-reinstall# Lancer le serveur web + interface
python -m blockblast.server
# Puis ouvrir http://127.0.0.1:5000 dans le navigateur| Onglet | Description |
|---|---|
| 🎮 Jouer | Jouer manuellement ou regarder l'IA jouer (heuristique ou HRM) |
| 🧠 Entraînement | Lancer l'entraînement self-play du réseau HRM (style AlphaZero) |
| ⚔️ Duel | Comparer l'IA heuristique vs l'IA HRM sur les mêmes parties |
| 📊 Benchmark | Tester les performances de chaque moteur |
| 🔬 Analyse | Analyser la position courante (éval heuristique + HRM) |
- HRM : Réseau hiérarchique avec H-Level (stratégie) et L-Level (tactique)
- MCTS : Monte Carlo Tree Search guidé par le réseau neuronal
- Heuristique : Recherche exhaustive avec évaluation de plateau (fonctionne sans entraînement)
blockblast/
├── __init__.py # Package init
├── game_engine.py # Moteur de jeu complet (plateau 8×8, pièces, scoring)
├── hrm_network.py # Réseau neuronal HRM adapté pour Block Blast
├── mcts_agent.py # Agent MCTS + recherche exhaustive
├── train.py # Entraînement self-play (AlphaZero-style)
├── play.py # Interface terminal
├── server.py # Serveur API Flask
├── blockblast_ui.html # Interface web
└── requirements.txt # Dépendances Python