Quick viewing(Text Mode)

Towards a Theory of Swarm Intelligence Major Approaches

Towards a Theory of Swarm Intelligence Major Approaches

Towards a Theory of Intelligence Major Approaches

 Ant based: Use of based:  A third approach is based on bees: Direct communication through dance Multiple pheromones and more powerful pheromones

Characteristics of Swarm Behavior

 Many agents  Generally simple perception  Generally simple information processing  Some form of interaction ()  No centralized control 

Ants

 Perception. Follow trail Orientation by sun (even when cloudy)  Action. Wander to find a food source When a food source is found:  Lay pheromones on path back to the nest  Use sun to use a short path home Ant-Based

 Primary use: shortest path problems  Example:

Dynamic Ant-Based Algorithms

food  Secondary use: Dynamic shortest path problems Maximize throughput  Example:

nest Representative Application

 Routing.  Example: Representative Application

 Ants age as they traverse the network  Their age depends on:  Length of path  Time to wait at a node  At each node, create routing table based on start node of the ant.  Ants drop pheromones, inversely proportional to age. Is it ?

 Many agents  Simple perception and processing: Follow strongest pheromone trail with a certain probability  Drop pheromones based on age  No centralized control  Dynamic load-balancing emerges

Birds

 Perception. Can see a certain range:

Action. Attempt to stay close But not too close Birds

Action. Fly into about the same direction as birds around them Flocking Algorithms

 Primary use: Dynamic Coverage  Example:

Is it Swarm Intelligence?

 Many agents  Simple, limited range perception  Flocking: Simple processing  Interaction: The way the flocking is done  No centralized control  Emergence: fault tolerant coverage of an area

Necessary Conditions for Swarm Behavior

 Many agents  Agents perceive  The part that pertains to solving the task at hand is ideally very simple  Agents process information  The part that pertains to solving the task at hand is ideally very simple  Agents act  No centralized control  Some form of interaction  Something emerges What can and cannot be formalized as swarm?

 Sand pile (no)   Corals  >2, >10 agents?  Construction site (no)

Optimization

 There are two kinds of swarm based optimization algorithms: Particle Swarm Optimization (PSO) related to bird systems. Ant-Colony Optimization (ACO) based on ant systems. Particle Swarm Optimization  Designed to find optima for continuous functions.  Not guaranteed.

Properties of PSO

 PSO is generally thought of as a flocking .  How should we formalize PSO as a flocking algorithm? PSO as Flocking (Attempt One)

 Many agents  Perception: Each agent only trivially considers their neighbor (viewing radius is empty)  Processing: Consider own max and global max in determining your velocity vector.  Optimization emerges

Problems with Attempt One

 While no centralized control, a global piece of information.  How do we determine the global max, without centralized control?

PSO as Flocking (Attempt Two)

 Each agent trivially considers all of their neighbors (viewing radius is the world)  How to determine max? Similar to a bee dance? Doesn’t have to be exact. Anything else? Perhaps a separate Swarm approach?  Evaluation: Perception is complex and cockeyed.

PSO as Flocking (Attempt Three)

 Each agent has a reasonable viewing radius.  Consider own max and those in viewing radius.  Evaluation: Perception is not as complex and follows flocking more closely  Performance: Needs to be evaluated.

PSO as Ant System

 Since we are generous, why not attempt to formalize PSO as an Ant System.  We want to learn from nature, but do not necessarily want to be bound by it. PSO as Ant System

 Nest is placed somewhere in the domain of the function.  Pre-Processing: Ants explore their world by randomly walking to random locations for a random amount of time. Now the ants are distributed just like the birds were. [Actually, the birds start out at random locations.]

PSO as Ant System

 Algorithm: Each ant explores its world, noting its own maximum.  It goes back to the nest after a while, laying a pheromone trail corresponding to its maximum value from the position of where that value is found.  When other ants leave the nest, they follow the trail with the highest number.  When reaching the maximum, they explore it, just like they did before.

Is it Swarm Intelligence?

 Many agents  Simple perception  Simple processing  Pheromones are used: dynamic pheromone values  Emergence: A pretty good maximum is found  No centralized control  Anthill becomes repository of global max. Is it Swarm Intelligence?

 Different to PSO, in that we take location of nest rather than own maximum into account, when it comes to exploring the domain.  Question: How important is it that we travel from our own max to the global max rather than from the nest location to the global max?  This needs to be investigated. Is it Swarm Intelligence?

 Modification: Similar to ACO, every time an ants goes down the (strongest or second or whatever strongest) pheromone trail, the trail gets less strong. This way, the second, third, etc. strongest max points get explored too.  It would be interesting to compare it to PSO, head to head! Needs to be done. Is it Swarm Intelligence?

 Once ants go back to the nest, they follow the new max.  We could have ants go back to their own max, however, there is no pheromone path from their own max to that of the global max.  Would have to use super-ant vision or super-ant olfactory sense.  Performance: Needs to be evaluated. Is it Swarm Intelligence?

 While not exactly the same as PSO, it is probably close enough!  I’d love for someone to do a simulation of this and other formalizations I proposed earlier.  After all, PSO is not flocking either and would have to be tested, given the proposed modifications. Evaluation

 While not following the PSO algorithms to the letter, PSO can be formalized as an ant system or as a bird system. Challenge

 ACO ( Optimization)  Where does it fit? Ant-Colony Optimization

 An optimization algorithm that was developed for TSP.  Can be used on problems that can be reduced to TSP or other graph problems.

Ant-Colony Optimization

 Snapshot:

Is it Swarm Intelligence?

 Many agents  Medium complex perception: member of candidate list, pheromone strength, distance to neighboring nodes  Simple processing: Follow best path with certain probability  Pheromones evaporate as a function of traffic  “Super ant” gets to lay pheromones along shortest path.  Good solutions to TSP emerge Is it Swarm Intelligence?

 Key issue: How to conceptualize the algorithm for determining the best bath so far. It needs a central repository and, like PSO, requires a comparison algorithm.  Easy to do in a programming language, use a priority queue as a data structure.  Conceptually, we need a separate ant system to do so.  Have ants record the length of their path. This is a simple operation. Is it Swarm Intelligence?

 Use a sorted list to record the paths in a global repository, say the ant hill.  Each ant could just move down a “list” of numbers and determine whether its number is less than the next number and if so, drops its own number. Seems simple.  After determining the max, some other ants clean up all those numbers. ACO as Flocking

 Can we formalize ACO as flocking? Shortest Path as Flocking Shortest Path as Flocking

 Two lanes leading up to fork.  One lane from then on.  will pick a random path at the fork, as initially, there are not enough boids to affect a direction.  Boids reappear at start node when they reach the goal node, i.e. they “respawn.”

Shortest Path as Flocking

 Where the paths merge, boids will back up due to bottleneck.  Eventually, this backs up to the fork.  Then, boids will select that path over the other.  This is the shortest path. Evaluation

 To be investigates: Does the system reach a steady state?  To be investigated: Should one just read off the data when enough boids backed up? Conclusions

 There are a wide variety of swarm techniques.  PSO and ACO were inspired by the underlying biology but do not adhere to it.

Lesson Learned

 ACO and PSO can be considered as instantiation of natural swarm system.  In an ironic twist, some of the operations of those two systems are simpler to execute in code than in a natural system.  As such, we might argue for a computational swarm system, in which there are many agents an in which each agent executes simple procedures.

Future Work

 Determine sufficient requirements for Swarm Intelligence.  Initial answer: one pheromone or simple flocking.  Could it be none of the above?  We have attempted to reduce ACO and PSO to each other, but have not come up with a pure approach.