The model represents the behavior of flocks. In general flocking behavior is the behavior exhibited when a group of birds, called a flock, are foraging or in flight. There are parallels with thresholding behavior of fish, the swarming behavior of insects, and herd behavior of land animals.With this model we tried to show the complex flock behavior using simple rules. The first model of flocks was generated in 1986 by Craig Reynolds. As it is described in his work, flock exhibits many contrasts. It is made up of discrete birds yet overall motion seems fluid; it is simple in concept yet is so visually complex, it seems randomly arrayed, but still is synchronized.
Applications
Basic models of flocking behavior are controlled by three simple rules:
Source:red3d.com/cwr/boids
To implement the rules we should defined the SPACE_DIMENSION, SOCIETY_SIZE, VISION.
After that the angles of 8 directions were defined and each of them were assocciated with particular movement.
Counting of majority direction helped to understant the direction to which the bird should move.
In the model separation was implemented by checking the neighboring cells and if it is empty agent can move to that cell.
For alignment the majority of the directions in the neighborhood was counted based on heading.
For the last step agent was moved to cell defined by previous steps.
When the first running the model, it will show a map with the behavior of flocks.
These parameters should be set at the beginning:
SPACE_DIMENSION = 50
SOCIETY_SIZE = 50
VISION = 10 – 0 to 10
We can see that birds following the direction and thereis clustering shown by different colors.
When running the model it should be noticed that when the cluster close tothe border birds chanhgetheir direction automatically.
SPACE_DIMENSION = 100
SOCIETY_SIZE = 100
VISION = 3 – 0 to 10
For extending the model and for seing morecomprehensive behavior folowing features can be considered:
For implementing the model agent based modelling was used. The main characteristics of agent-based models are:
TerraMe supports cellular automata, agent-based models. With Terrame it is easier to create comprehensive models by using build in tools and functions. Especially using features like:
There are several implementations of this model.
Flocking,by NetLogo Models Library, http://ccl.northwestern.edu/netlogo/models/Flocking
Neat algorithms-Floacking by Btuntage H.http://harry.me/blog/2011/02/17/neat-algorithms-flocking/
Boids,by Craig Reynolds, http://red3d.com/cwr/boids/
Wilensky, U. (1998). NetLogo Flocking model. http://ccl.northwestern.edu/netlogo/models/Flocking. Center for Connected Learning and Computer-Based Modeling, Northwestern University, Evanston, IL.
Btuntage H. (2011) Neat algorithms-Floacking http://harry.me/blog/2011/02/17/neat-algorithms-flocking/
Flocking (behavior), http://en.wikipedia.org/wiki/Flocking_(behavior)