Skip to content
forked from jqlee85/boids

Implementation of Boids on JS Canvas

License

Notifications You must be signed in to change notification settings

sugar-syrup/boids

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Boids Simulation

Introduction to Boids

Boids is an artificial life program, developed by Craig Reynolds in 1986, which simulates the flocking behavior of birds. The term "Boids" is a play on the word "birds," reflecting the program's goal to mimic the complex and emergent behavior of flocks.

Core Principles

The behavior of each boid is governed by three simple rules:

  1. Separation: Boids try to maintain a small distance from nearby boids to avoid collisions. This rule prevents overcrowding within the flock.

  2. Alignment: Boids align their direction with that of their neighbors. This rule ensures that the boids move cohesively as a group, following a similar path.

  3. Cohesion: Boids move towards the average position of their neighbors. This rule draws the boids together, preventing them from straying too far from the group.

Emergent Behavior

Despite the simplicity of the individual rules, when applied collectively to a group of boids, they result in complex and lifelike flocking behavior. The boids interact locally with one another, and there is no centralized control or leader. This leads to the emergence of sophisticated patterns and formations, akin to what is observed in nature.

Applications

The Boids model has been widely used in various fields such as computer graphics, animation, and robotics. It has also inspired research in swarm intelligence and the study of emergent systems. The simplicity and elegance of the Boids algorithm make it a powerful tool for understanding and replicating the behavior of decentralized systems.

Author

Jesse Lee [Updated by NISER COding Club]

This is a Simulation for NISER Open Day by Coding Club.

About

Implementation of Boids on JS Canvas

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 71.4%
  • CSS 19.2%
  • HTML 9.4%