An emergent algorithm is an algorithm that is built to exhibit emergent behavior: rather than directly coding the overall behavior a designer wants, the algorithm implements a set of simple building-block behaviors at a local level, and the more complex overall behavior arises, or emerges, only once those simple pieces are combined and run together. A commonly cited example is a fuzzy motion controller used to steer a robot, where the robot's movement adapts to environmental obstacles as a consequence of simple local rules rather than an explicit global path plan. Other cited implementations of the same idea include cellular automata, artificial neural networks, and swarm intelligence systems such as ant colony optimization and the bees algorithm. Writers on the subject describe emergent algorithms as aiming at several traits together: a predictable effect at the global, whole-system level, achieved without any component needing global visibility into the rest of the system, without any centralized controller directing the components, and with a tendency for the system to self-stabilize rather than diverge. These four traits are the article's own account of what distinguishes an emergent algorithm from an ordinary centrally-directed one, though the source material itself flags this characterization as disputed rather than firmly settled.
Sources
Emergent algorithm (Wikipedia)
Lead sectionQuote, Lead section
An emergent algorithm is an algorithm that exhibits emergent behavior.
View the Source Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.
Sign in to dispute this or suggest a correction.