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 techniqueIA de jeu

Comparaison d'IA de prédateurs

Implémenter la recherche de chemin à partir de zéro, combiner des systèmes décisionnels avec NavMesh et comparer les prédateurs configurés sur cent exécutions automatisées.

Comparaison d'IA de prédateurs aperçu

Rôle

Développeur collaboratif en IA et recherche de chemin

Moteur

Unity

Plateforme

Windows

Équipe

Équipe de 5 personnes

Dates

2 oct.-13 nov. 2025

Résultat

Exploration technique

Ce sur quoi j’ai travaillé

Un banc d'essai Unity de prédateurs et de gazelles comparant une navigation A* personnalisée à des agents décisionnels FSM et MCTS utilisant NavMesh pour leurs déplacements.

  • Nous avons implémenté et débogué collectivement les trois approches lors de sessions de développement partagées.
  • Nous avons développé A* à partir de zéro, notamment la génération automatique de grille, les connexions entre nœuds, les coûts, l'évaluation heuristique, les ensembles ouverts et fermés, la reconstruction du chemin et son suivi.
  • Le générateur de grille projette des rayons vers le bas sur la couche du sol, puis relie les points voisins lorsque des rayons de visibilité ne trouvent aucun obstacle.
  • Nous avons implémenté une FSM avec les états Wait, Search, Chase, Follow, Leap et Eat, en utilisant NavMesh après la sélection du comportement par le système décisionnel.
  • Nous avons implémenté la sélection, l'expansion, la simulation et la rétropropagation de MCTS, en utilisant aussi NavMesh pour exécuter les actions choisies.
  • Nous avons automatisé 100 exécutions de référence avec dix gazelles par exécution et exporté les résultats pour comparaison.

Détails techniques

Programmation

C#

Technologies complémentaires

Unity NavMesh

Décomposition du développement

Au cœur des systèmes

01

Navigation A* personnalisée

Notre générateur de grille projette des rayons depuis le dessus vers la couche du sol afin de placer automatiquement les nœuds. Les nœuds voisins projettent des rayons les uns vers les autres et se connectent lorsqu'aucun obstacle ne bloque le segment. La recherche utilise les coûts des nœuds, les ensembles ouverts et fermés, une heuristique de distance absolue, la reconstruction du chemin et son suivi écrits par l'équipe.

02

FSM et MCTS avec NavMesh

La FSM alterne entre Wait, Search, Chase, Follow, Leap et Eat. MCTS évalue les actions candidates par sélection, expansion, simulation et rétropropagation. Dans les deux cas, le système décisionnel choisit quoi faire et Unity NavMesh exécute le trajet physique.

03

Référence automatisée

Chaque exécution contient dix gazelles et se termine après soixante secondes ou lorsque le scénario est terminé. Sur cent itérations automatisées, le prédateur MCTS configuré a réalisé en moyenne 4,92 captures, le prédateur FSM 2,78 et le prédateur A* à cible aléatoire 1,45. Ces résultats décrivent les agents complets, et non la qualité intrinsèque des algorithmes de navigation.

Problèmes et solutions

Comparer des responsabilités différentes

A* résout la navigation, tandis que FSM et MCTS prennent des décisions de plus haut niveau. Un classement direct pourrait laisser croire à tort que A* est lui-même un algorithme décisionnel inférieur.

Les résultats sont présentés comme une comparaison de prédateurs entièrement configurés. L'agent A* choisissait une cible aléatoire, tandis que FSM et MCTS choisissaient des actions avant de déléguer le déplacement à NavMesh.

Visuels de présentation

Bilan

L'étude a clarifié la frontière entre la recherche de chemin et la prise de décision. Construire A* à partir de zéro a exposé les mécanismes de construction de graphe et de recherche, tandis que FSM et MCTS ont montré comment des choix de plus haut niveau peuvent influencer la poursuite.