GRAINE
Terminé
Projet d'intégration de Licence 3 – Université de Cergy Pontoise – 1 mois

Génération procédurale de créatures apprenant à survivre dans un monde inconnu. La partie intelligence artificielle des créatures a pour but l'apprentissage de la survie et se basant sur la fusion d'un réseau de neurones et d'algorithmes génétiques.

Période : Mars 2016
Équipe : 5 Développeurs
Langage : C++
Outils : Réseaux de Neurones, Algorithme génétique, Multithreading, Bibliothèque graphique Allegro
Plateforme : PC (Linux)
Project image

Présentation du projet

Ce projet est réalisé au cours de la 3ème année de Licence Informatique à l'université de Cergy-Pontoise, au sein du "Projet d'Intégration".

Il est divisé en deux parties :

  • La partie génération des créatures, se basant sur de la génération procédurale d'ADN de différentes espèces et de faire évoluer cette génération dans le temps
  • La partie intelligence artificielle des créatures qui a pour but l'apprentissage de la survie et se basant sur la fusion d'un réseau de neuronne et d'algorithmes génétiques.

Membres du groupe

Le groupe est composé de cinq personnes, réparties comme cela :


Génération procédurale de créatures :


Intelligence artificielle :

Objectif

L'objectif optimal de cet exercice sur la partie intelligence artificielle aurait été de pouvoir créer des créatures devenant autonome dans un environnement inconnu en ne connaissant que les actions qu'elles pouvaient éxécuter. Le premier objectif que nous nous sommes fixé étaient de faire en sorte que nos créatures cherchent à se nourrir. Pour cela, nous faisions apparaître une dizaine de créature à distance égale d'une source de nourriture (symbolisé par une pomme). Nous laissions les créatures se mouvoir comme elles le souhaitaient. A la fin d'un temps donné, nous prenions les meilleures créatures (celles le plus proche de la pomme par exemple), mixions leurs réseaux de neuronnes avec un algorithme génétique et l'ont recommençait la mannoeuvre.

Résultats

Au bout d'un certain nombre de générations nos créatures commençaient à se diriger naturellement vers la source de nourriture. Malheureusement par manque de temps, il nous fut impossible de pousser l'expérience plus loin.

Sources et documentation du projet

Pour la partie intelligence artificielle et apprentissage, les informations sont sur mon Github à l'adresse https://github.com/Eresia/GRAINE

Pour la partie génération procédurale de créatures, les informations sont sur le Github de Vincent Monot à l'adresse https://github.com/Agurato/Graine_DNA