/boids-simulation

Simulation of boids according to Craig W. Reynolds researches. It can be used to represent flocks of birds or schools of fishes.

Primary LanguageJavaScript

Starling Murmurations Simulation

Auteur

Visuel

Rendu de l'algorithme

Description

Programme personnel développé en Javascript afin de développer mes compétences dans ce langage tout en m'initiant aux essaims de robots en simulant un banc de poissons ou la murmuration d'étourneaux. Ce travail est basé sur les travaux de recherches de Craig W. Reynolds en 1986.

Banc de poissons

Murmuration d'étourneaux

Règles

L'idée est que chaque robot, appelé Boid (pour Bird-oid) doit suivre quelques simples règles :

  • Essayer d'éviter les obstacles (en l'occurence, les bords)
  • Essayer d'éviter la collision avec les autres boids qui s'approcheraient trop près de lui
  • Essayer de s'aligner avec les boids voisins
  • Essayer d'accorder sa vitesse avec les boids voisins

En outre, j'ai ajouté une quatrième règle :

  • En présence d'un prédateur, essayer de l'éviter

Installation

Récupération des sources

  • Depuis l'invité de commandes (HTTP):
$ git clone https://github.com/jeunotca/boids-simulation.git
$ cd boids-simulation.git

Dépendances

Ce programme a été réalisé à l'aide de :

Prédateur

Le prédateur est matérialisé par le curseur de votre souris. Pour l'activer ou le désactiver, il suffit de cliquer (gauche). Vous verrez si le prédateur est présent grâce au disque rouge qui apparaîtra autour du curseur.

Apparition du prédateur

Utilisation

Exécution du projet

Il suffit d'ouvrir index.html dans votre navigateur favori !

Live demo

Vous pouvez trouver une démonstration de ce programme sur mon site : https://jeunot-caire.fr/projects/boids-simulation/

Remerciements