Flocking (behavior)

Flocking (behavior)

Flocking - the collective motion of a large number of self-propelled entities - is a behaviour exhibited by many living beings such as birds, fish, bacteria, and insects [cite web | url = http://arxiv.org/abs/cond-mat/9811336v1| title = Alternating steady state in one-dimensional flocking | format = | publisher = Journal of Physics A: Mathematical and General | accessmonthday = June 13 |accessyear = 2008 ] .As a common demonstration of emergence and emergent behavior, it was first simulated on a computer in 1986 by Craig Reynolds with his simulation program, Boids. This program simulates simple agents that are allowed to move according to a set of basic rules. The result is akin to a flock of birds, a school of fish, or a swarm of insects.Basic flocking is controlled by three simple rules:

#Separation - avoid crowding neighbours (short range repulsion)
#Alignment - steer towards average heading of neighbours
#Cohesion - steer towards average position of neighbours (long range attraction)

With these three simple rules, the flock moves in an extremely realistic way, creating complex motion and interaction that would be extremely hard to create otherwise.

Flocking is a common technology in screensavers, and has found its use in animation. Flocking has been used in many films Harv|Gabbai|2005 to generate crowds which move more realistically. Tim Burton's "Batman Returns" (1992) featured flocking penguins, and Disney's "The Lion King" (1994) included a wildebeest stampede.

From a practical perspective, flocking has been considered as a means to control the behavior of Unmanned Air Vehicles (UAVs) Harv|Gabbai|2005.

Measurement

Measurements of bird flocking have been made (Feder 2007) using high-speed cameras, and a computer analysis has been made to test the simple rules of flocking mentioned above. It is found that they generally hold true in the case of bird flocking, but the long range attraction rule (cohesion) applies to the nearest 5-10 neighbors of the flocking bird and is independent of the distance of these neighbors from the bird. In addition, there is an anisotropy with regard to this cohesive tendency, with more cohesion being exhibited towards neighbors to the sides of the bird, rather than in front or behind. This is no doubt due to the field of vision of the flying bird being directed to the sides rather than directly forward or backward.

Algorithmic complexity

In flocking simulations, there is no central control; each bird behaves autonomously. In other words, each bird has to decide for itself which flocks to consider as its environment. Usually environment is defined as a circle (2D) or orb (3D) with a certain radius (representing reach).

A basic implementation of a flocking algorithm has complexity O(n^2) - each bird searches through all other birds to find those who falls into his environment.

Possible improvements:
* bin-lattice spatial subdivision. Entire area the flock can move in is divided into a large number of bins. Each bin stores which birds it contains. Each time a bird moves from one bin to another, lattice has to be updated.
** Example: 2D(3D) grid in a 2D(3D) flocking simulation.
** Complexity: O(n k) , k is number of surrounding bins to consider; just when bird's bin is found in O(1)

Lee Spector, Jon Klein, Chris Perry and Mark Feinstein studied the emergence of collective behavior in evolutionary computation systems. [cite web | url=http://hampshire.edu/lspector/gecco2003-collective.html | author=Spector, L. | coauthors=Klein, J.; Perry, C.; and Feinstein, M. | year=2003 | title=Emergence of Collective Behavior in Evolving Populations of Flying Agents | work=Proceedings of the Genetic and Evolutionary Computation Conference (GECCO-2003) | publisher=Springer-Verlag | accessdate=2007-05-01]

References


* [http://www.gabbai.com/academic/complexity-and-the-aerospace-industry-understanding-emergence-by-relating-structure-to-performance-using-multi-agent-systems/ link]

*

*

*

External links

* [http://www.red3d.com/cwr/boids/ Craig Reynolds' Boids page]
* [http://lrss.fri.uni-lj.si/people/ilbajec/publications.htm Iztok Lebar Bajec's fuzzy logic based flocking publications]
* [http://www.lalena.com/AI/Flock/ Flocking Simulator] - A flocking behavior simulator in Java. Run online or free download. Includes multiple flocks, predators, obstacles and food.
* [http://ccl.northwestern.edu/netlogo NetLogo] , a free software for multi-agent modeling, simulation, and the like, including a flocking simulation.
* [http://www.visualbots.com/index.htm VisualBots] - Freeware multi-agent simulator in Microsoft Excel - Visual Basic syntax
* [http://www.dcs.shef.ac.uk/~paul/publications/boids/index.html 3D Java Boids demonstrating bird flocking (Paul Richmond)]


Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Look at other dictionaries:

  • Flocking — may refer to:*Flocking (behavior) *Flocking (texture) See also *Flock …   Wikipedia

  • Collective animal behavior — Sort sol. Starling flock at sunset in Denmark Collective animal behavior describes the coordinated behavior of large groups of similar animals and the emergent properties of these groups. Facets of this topic include the costs and benefits of… …   Wikipedia

  • Mobbing (animal behavior) — For mobbing in relation to human bullying behavior see Mobbing Crows mobbing a Red tailed Hawk. Mobbing in animals is an antipredator behavior which occurs when individuals of a certain species …   Wikipedia

  • Herd behavior — Herd behaviour describes how individuals in a group can act together without planned direction. The term pertains to the behaviour of animals in herds, flocks, and schools, and to human conduct during activities such as stock market bubbles and… …   Wikipedia

  • Sheep — For other uses, see Sheep (disambiguation). Domestic sheep A research flo …   Wikipedia

  • Swarm intelligence — (SI) is artificial intelligence based on the collective behavior of decentralized, self organized systems. The expression was introduced by Gerardo Beni and Jing Wang in 1989, in the context of cellular robotic systems [ Beni, G., Wang, J. Swarm… …   Wikipedia

  • Domestic sheep — taxobox name = Domestic sheep status = DOM image width = 250px image caption = A research flock at U.S. Sheep Experiment Station near Dubois, Idaho regnum = Animalia phylum = Chordata classis = Mammalia ordo = Artiodactyla familia = Bovidae… …   Wikipedia

  • Swarm — The term swarm (shoaling, swarming or flocking) is applied to fish, insects, birds and microorganisms, such as bacteria, and describes a behavior of an aggregation () of animals of similar size and body orientation, generally cruising in the same …   Wikipedia

  • Flock (birds) — A flock is a group of birds conducting flocking behavior in flight, or while foraging. The term is akin to the herd amongst mammals. The benefits of aggregating in flocks are varied and flocks will form explicitly for specific purposes. Flocking… …   Wikipedia

  • Digg — Digg, Inc. Type Private Founded San Francisco, California, United States[1] …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”