Kakoha
À proposProjets
CVContact
EN
FR
Kakoha
EN
FR

Dhiaeddine Mokaddem

Programmeur gameplay spécialisé dans les systèmes, l'IA, le multijoueur, la réalité virtuelle, les outils et l'optimisation.

AccueilProjetsCVContact
dhiaeddine.mokaddem@gmail.comLinkedInitch.ioGame Jolt
Tous les projets
Exploration techniqueApprentissage automatique

Entraînement d'un labyrinthe avec ML-Agents

Entraîner un agent inspiré de Pac-Man grâce à la perception, aux décisions discrètes, aux actions et au retour de récompense dans des expériences de labyrinthe fixe et aléatoire.

Rôle

Développeur collaboratif ML-Agents

Moteur

Unity

Plateforme

Windows

Équipe

Équipe de 5 personnes

Dates

11-25 sept. 2025

Résultat

Exploration technique

Ce sur quoi j’ai travaillé

Une étude Unity ML-Agents où un agent de labyrinthe apprend à collecter vingt pastilles tout en évitant deux ennemis se déplaçant aléatoirement.

  • Nous avons conçu et implémenté collectivement l'environnement d'entraînement au sein d'une équipe de cinq personnes.
  • L'agent observe les positions relatives sur la grille pour lui-même, les ennemis et les pastilles ; la version à labyrinthe aléatoire expose aussi les murs.
  • L'espace d'action utilise quatre directions de déplacement discrètes.
  • Le façonnage de la récompense combine les récompenses de collecte, une pénalité de capture avec redémarrage de l'épisode, une pénalité cumulative pour les déplacements sans progression et un bonus de réussite.
  • Nous avons entraîné 64 environnements en parallèle pour accélérer les itérations et évalué la progression avec des graphiques de récompense cumulée et des comptes de victoires enregistrés.

Détails techniques

Programmation

C#

Technologies complémentaires

Unity ML-Agents

Décomposition du développement

Au cœur des systèmes

01

Conception de l'environnement et des observations

Chaque épisode commence avec vingt pastilles, un agent et deux ennemis qui se déplacent aléatoirement. Les observations utilisent des coordonnées personnalisées de grille du labyrinthe plutôt que des coordonnées brutes du monde. La version plus difficile fournit aussi les positions des murs des dispositions randomisées, augmentant la quantité d'état que la politique doit interpréter.

02

Façonnage de la récompense et actions discrètes

L'agent choisit parmi quatre directions de déplacement discrètes. Il reçoit une récompense positive lorsqu'il collecte une pastille, une récompense négative et un redémarrage lorsqu'il est capturé, une petite pénalité cumulative lorsqu'il se déplace sans progresser et un bonus lorsqu'il collecte les vingt pastilles.

03

Entraînement parallèle et progression enregistrée

Nous avons dupliqué l'environnement 64 fois pour entraîner plus rapidement. Un enregistrement au téléphone a été utilisé car le PC d'entraînement était déjà sollicité ; pendant le clip, le nombre cumulé de victoires passe de 58 095 à 58 125 tandis que certains épisodes parallèles échouent encore.

04

Progression de l'entraînement et évaluation

Les courbes de récompense cumulée montrent une forte progression pendant l'entraînement, suivie d'un long plateau puis d'une amélioration. L'exécution à labyrinthe fixe est devenue généralement capable de terminer le niveau, même si le comportement aléatoire des ennemis produisait encore des épisodes infructueux.

Problèmes et solutions

Éviter les oscillations sur place

Les premiers agents apprenaient à vibrer sur place et à réagir aux ennemis sans progresser réellement vers les pastilles.

Nous avons ajouté une petite récompense négative pour les déplacements sans collecte de pastille. La pénalité est faible à chaque étape, mais elle s'accumule lorsque l'agent se tortille sans avancer.

Généralisation et capacité d'apprentissage

La randomisation des murs, de l'agent, des ennemis et de leurs déplacements a fortement augmenté l'espace d'observation et la difficulté d'entraînement.

Nous avons comparé la disposition randomisée à une configuration à labyrinthe fixe. La disposition fixe conservait des acteurs et des ennemis randomisés tout en réduisant suffisamment la variabilité structurelle pour permettre un apprentissage plus fiable.

Captures d’entraînement

Bilan

L'exercice a montré que la conception des observations et le façonnage de la récompense peuvent compter autant que la boucle d'apprentissage elle-même. L'agent final a bien fonctionné dans la plupart des exécutions, mais des échecs occasionnels subsistaient face au comportement randomisé des ennemis.