400 likes | 536 Views
Ants in the Pants! An Overview. Real world insect examples Theory of Swarm Intelligence From Insects to Realistic A.I. Algorithms Examples of AI applications. Bees. Colony cooperation Regulate hive temperature Efficiency via Specialization: division of labour in the colony
E N D
Ants in the Pants!An Overview • Real world insect examples • Theory of Swarm Intelligence • From Insects to Realistic A.I. Algorithms • Examples of AI applications
Bees • Colony cooperation • Regulate hive temperature • Efficiency via Specialization: division of labour in the colony • Communication : Food sources are exploited according to quality and distance from the hive
Termites • Cone-shaped outer walls and ventilation ducts • Brood chambers in central hive • Spiral cooling vents • Support pillars
Ants • Organizing highways to and from their foraging sites by leaving pheromone trails • Form chains from their own bodies to create a bridge to pull and hold leafs together with silk • Division of labour between major and minor ants
Social Insects • Problem solving benefits include: • Flexible • Robust • Decentralized • Self-Organized
Summary of Insects • The complexity and sophistication of Self-Organization is carried out with no clear leader • What we learn about social insects can be applied to the field of Intelligent System Design • The modeling of social insects by means of Self-Organization can help design artificial distributed problem solving devices. This is also known as Swarm Intelligent Systems.
Four Ingredients of Self Organization • Positive Feedback • Negative Feedback • Amplification of Fluctuations - randomness • Reliance on multiple interactions
Types of Interactions For Social Insects • Direct Interactions • Food/liquid exchange, visual contact, chemical contact (pheromones) • Indirect Interactions (Stigmergy) • Individual behavior modifies the environment, which in turn modifies the behavior of other individuals
WEB CLUSTERING Why? The size of the internet has doubling its size every year. Estimated 2.1 billion as of July 2001 Organizing and categorizing document is not scalable to the growth of internet. Document clustering? Is the operation of grouping similar document to classes that can be used to obtain an analysis of the content. Ant clustering algorithm categorize web document to different interest domain.
Ant Colony Models for Data Clustering Data clustering? is the task that seek to identify groups of similar objects based on the value of their attributes. • Messor sancta ants collect and pile dead corpses to form “cemeteries” (Deneubourg et al. ) f: fraction of items in the neighborhood of the agent k1, k2: threshold constants
Ant Colony Models for Data Clustering The model later extend by Lume & Faieta to include distance function d, between data objects . • c is a cell, N(c) is the number of adjacent cells of c, alpha is constant
Homogeneous Multi-agent System for Document Clustering • Main components: colony of agents, feature vector of web document, 2D grid. • Rule: agent move one step at a time to an adjacent cell. Only a single agent and/or a single item are allowed to occupy a cell at a time. Picking up or dropping item based on Pp & Pd • N(c) = 8,oi is the item at cell i, g(oi) determine the similarity of oi and other item of oj, where j E N(c) • Density:
Homogeneous Multi-agent System for Document Clustering Similarity measure r is the number of common term in doci and docj m,n is the total number of term in doci and docj, respectively. F is the frequency
Experimental Results • Experimental data: 84 web pages from 4 different categories: Business, Computer, Health and Science. These web page have 17,776 distinct words. • Use 30x30 toroidal grid • 15 agents. • tmax is 300,000. k1 and k2 in [0.01, 0.2] increment of 0.05 for each run.
Experimental Results • t = 0
Experimental Results • t = 50,000
Experimental Results • t = 200,000
Experimental Results • t = 300,000
Experimental Result • Table
Particle Swarm Optimization • Particle Swarm Optimization (PSO) applies to concept of social interaction to problem solving. • It was developed in 1995 by James Kennedy and Russ Eberhart [Kennedy, J. and Eberhart, R. (1995). “Particle Swarm Optimization”, Proceedings of the 1995 IEEE International Conference on Neural Networks, pp. 1942-1948, IEEE Press.] (http://dsp.jpl.nasa.gov/members/payman/swarm/kennedy95-ijcnn.pdf ) • It has been applied successfully to a wide variety of search and optimization problems. • In PSO, a swarm of n individuals communicate either directly or indirectly with one another search directions (gradients). • PSO is a simple but powerful search technique.
Particle Swarm Optimization:Swarm Topology • In PSO, there have been two basic topologies used in the literature • Ring Topology (neighborhood of 3) • Star Topology (global neighborhood) I0 I0 I1 I1 I4 I4 I3 I2 I3 I2
Particle Swarm Optimization:The Anatomy of a Particle • A particle (individual) is composed of: • Three vectors: • The x-vector records the current position (location) of the particle in the search space, • The p-vector records the location of the best solution found so far by the particle, and • The v-vector contains a gradient (direction) for which particle will travel in if undisturbed. • Two fitness values: • The x-fitness records the fitness of the x-vector, and • The p-fitness records the fitness of the p-vector. Ik X = <xk0,xk1,…,xkn-1> P = <pk0,pk1,…,pkn-1> V = <vk0,vk1,…,vkn-1> x_fitness = ? p_fitness = ?
Particle Swarm Optimization:Swarm Search • In PSO, particles never die! • Particles can be seen as simple agents that fly through the search space and record (and possibly communicate) the best solution that they have discovered. • So the question now is, “How does a particle move from on location in the search space to another?” • This is done by simply adding the v-vector to the x-vector to get another x-vector (Xi = Xi + Vi). • Once the particle computes the new Xi it then evaluates its new location. If x-fitness is better than p-fitness, then Pi = Xi and p-fitness = x-fitness.
25 20 15 pbest 10 v(k) v(k+1) 5 gbest 5 10 15 20 25 Particle Swarm Optimization
Particle Swarm Optimization:Swarm Search • Actually, we must adjust the v-vector before adding it to the x-vector as follows: • vid = vid + 1*rnd()*(pid-xid) + 2*rnd()*(pgd-xid); • xid = xid + vid; • Where i is the particle, • 1,2 are learning rates governing the cognition and social components • Where g represents the index of the particle with the best p-fitness, and • Where d is the dth dimension.
Particle Swarm Optimization:Swarm Search • Intially the values of the velocity vectors are randomly generated with the range [-Vmax, Vmax] where Vmax is the maximum value that can be assigned to any vid.
Particle Swarm Optimization:Swarm Types • In his paper, [Kennedy, J. (1997), “The Particle Swarm: Social Adaptation of Knowledge”, Proceedings of the 1997 International Conference on Evolutionary Computation, pp. 303-308, IEEE Press.] • Kennedy identifies 4 types of PSO based on 1 and 2 . • Given: vid = vid + 1*rnd()*(pid-xid) + 2*rnd()*(pgd-xid); xid = xid + vid; • Full Model (1, 2 > 0) • Cognition Only (1 > 0 and 2 = 0), • Social Only (1 = 0 and 2 > 0) • Selfless (1 = 0, 2 > 0, and g i)
Particle Swarm Optimization:Related Issues • There are a number of related issues concerning PSO: • Controlling velocities (determining the best value for Vmax), • Swarm Size, • Neighborhood Size, • Updating X and Velocity Vectors, • Robust Settings for (1 and 2), • An Off-The-Shelf PSO • Carlisle, A. and Dozier, G. (2001). “An Off-The-Shelf PSO”, Proceedings of the 2001 Workshop on Particle Swarm Optimization, pp. 1-6, Indianapolis, IN. (http://antho.huntingdon.edu/publications/Off-The-Shelf_PSO.pdf)
Particle Swarm:Controlling Velocities • When using PSO, it is possible for the magnitude of the velocities to become very large. • Performance can suffer if Vmax is inappropriately set. • Two methods were developed for controlling the growth of velocities: • A dynamically adjusted inertia factor, and • A constriction coefficient.
Particle Swarm Optimization:The Inertia Factor • When the inertia factor is used, the equation for updating velocities is changed to: • vid = *vid + 1*rnd()*(pid-xid) + 2*rnd()*(pgd-xid); • Where is initialized to 1.0 and is gradually reduced over time (measured by cycles through the algorithm).
Particle Swarm Optimization:Swarm and Neighborhood Size • Concerning the swarm size for PSO, as with other ECs there is a trade-off between solution quality and cost (in terms of function evaluations). • Global neighborhoods seem to be better in terms of computational costs. The performance is similar to the ring topology (or neighborhoods greater than 3). • There has been little research on the effects of swarm topology on the search behavior of PSO.
Particle Swarm Optimization:Particle Update Methods • There are two ways that particles can be updated: • Synchronously • Asynchronously • Asynchronous update allows for newly discovered solutions to be used more quickly I0 I1 I4 I3 I2
The Future? Telecommunications Cleaning Ship Hulls Miniaturization Medical Pipe Inspection Satellite Maintenance Self-Assembling Robots Engine Maintenance Job Scheduling Combinatorial Optimization Pest Eradication Data Clustering Interacting Chips in Mundane Objects Vehicle Routing Distributed Mail Systems Optimal Resource Allocation
Dumb parts, properly connected into a swarm, yield smart results.