Flocking simulation: State of the art
It is easy to imagine by observing the movements of a flock of birds or a school of fish that we are dealing with a single giant entity with a will of its own. Indeed, one is quickly absorbed by the lightning synchronicity with which hundreds of members can gather, change direction or escape from a predator. And yet it is indeed the individual actions of the elements that make up the flock that allow such behaviours to emerge.
A flock of bird is therefore considered to be a complex system. Under this name are grouped systems composed of a multitude of members whose individual interactions bring out global properties. One property of such a system is its ability to self-organize through a collection of simple mechanisms. And at the origin of these mechanisms are the interactions of each element with its environment.
This bibliographical report is a popularization and synthesis exercise which aims to provide a first experience of scientific research on a subject of my choice. Thus, based on the knowledge acquired during my first year of engineering studies in terms of simulation of complex systems and a certain curiosity for biomimicry , I decided to present and then carry out several approaches to the simulation of a bird flock as well as an application in neural networks.
The first approach concerns the work of Craig Reynolds in 1986 with the development of rules between individuals called "Boid" in order to create an autonomous simulation.
This next chapter addresses the notion of cellular automata with the work of James Shannon in 2013 and its application in the simulation of flocking behaviors.
This chapter focuses on the particle system optimizations developed by James Kennedy and Russell Eberhart in 1995, which was originally inspired by the behavior of a flock of birds.
In this chapter we will use the optimizing behavior of the PSO detailed previously to train a neural network to solve the XOR logic.
This presentation is based on the following report:
In this bibliographic report, we will focus on the simulation of flocks of birds, schools of fish or any system capable of demonstrating emergent behaviors. We will use theoretical approaches such as Reynolds’s Boid theory, Shannon’s cellular automata model or Kennedy’s particle systems to create autonomous simulations. In fact, we will discover that the creation of a Unity simulation of a flock of birds in 3D can be achieved with only three rules and some environmental pressure. We will also learn about cellular automata, starting with Conway’s game of life and progressing to the creation of our own cellular automaton to simulate flock behaviors. Next, we will discuss an optimization technique using particle systems that was originally based on the behavior of a flock foraging for food. Finally, we will visualize this optimization technique through a simulation and then use it to train a neural network.
Complex systems, Emergent behaviors, Boids, Cellular automtata, Particle system optimization, Neural networks