IA Pilote Chrome Dino
Intelligence Artificielle capable de piloter le dinosaure de Chrome de manière totalement autonome en évitant les obstacles en temps réel via un réseau de neurones.
Étapes du projet
Feature Engineering
TerminéIdentification des variables critiques : distance de l'obstacle, hauteur, vitesse du jeu.
Data Collection
TerminéCapture de plus de 4 000 lignes de données en jouant manuellement pour l'entraînement.
Training
TerminéMise en place d'un réseau de neurones (MLPClassifier) via Scikit-Learn.
Test & Analysis
TerminéAnalyse des performances initiales (66% de précision sur les sauts).
Retraining & Optimization
TerminéApplication de techniques de rééquilibrage (Oversampling) pour atteindre 87% de précision.
Inference
TerminéDéploiement du modèle .pkl dans la boucle Pygame pour une décision en temps réel (< 1ms).
Architecture de la Boucle d'Inférence
Avant Oversampling (Précision 66%)
Run
Jump
FN (Crash)
Jump OK
Le modèle "préfère" courir car c'est l'action majoritaire.
Après Oversampling (Précision 87%)
Run
Jump
FN
Jump OK
La diagonale est équilibrée : le modèle a "appris" l'importance du saut.
Stratégie de Data Quality : Optimisation par Oversampling
Description du défi technique
Lors des premières itérations, le modèle souffrait d'un déséquilibre des classes majeur : les phases de course représentaient plus de 95 % du dataset. En conséquence, l'IA avait développé une stratégie "paresseuse", préférant ne jamais sauter pour maximiser statistiquement sa précision globale, au détriment de sa survie (60 % de collisions non évitées).
Analyse de la Matrice de Confusion
On observe un taux de Faux Négatifs (FN) critique. Le modèle prédit la "Course" alors qu'un obstacle est présent, car il n'a pas assez appris l'importance vitale de l'action de saut.
En appliquant une technique d'Oversampling, j'ai rééquilibré le poids de la classe minoritaire ("Jump").
Résultat : La diagonale de la matrice est désormais équilibrée. Le taux de réussite des sauts est passé de 40 % à 85 %, prouvant que le modèle a "appris" à prioriser l'évitement des obstacles, même s'ils sont rares dans le flux de données global.
Feature Importance : Évolution de la prise de décision
Le cerveau de l'IA ne traite pas l'information de la même manière selon l'intensité du jeu. Ce Radar Chart illustre comment le modèle adapte ses priorités pour survivre à haute vitesse.
"L'IA accorde 40% d'importance supplémentaire à la vitesse passé les 1000 points. Au début de la partie, le modèle se concentre presque exclusivement sur la distance de l'obstacle. Cependant, à mesure que le jeu accélère, le MLP (Multi-Layer Perceptron) déplace son attention vers la vitesse du jeu : le timing du saut devient plus critique que la simple présence de l'objet."
Démonstration de l'Inférence en Temps Réel
Ce média capture l'état réel du système. On y observe le laser de distance (input sensoriel) alimentant le MLPClassifier, tandis que la jauge de confiance (output) oscille en fonction de l'imminence du danger. Ce pipeline garantit une prise de décision en moins d'une milliseconde, permettant au dinosaure de réagir avec une précision chirurgicale, même à haute vitesse.