Скачать 166.18 Kb.

Hide Wikipedia is getting a new lookHelp us find bugs and complete user interface translations
Ant colony optimization From Wikipedia, the free encyclopedia Jump to: navigation, search Ant behavior was the inspiration for the metaheuristic optimization technique The ant colony optimization algorithm (ACO) is a probabilistic technique for solving computational problems which can be reduced to finding good paths through graphs. This algorithm is a member of ant colony algorithms family, in swarm intelligence methods, and it constitutes some metaheuristic optimizations. Initially proposed by Marco Dorigo in 1992 in his PhD thesis,^{[1][2]} the first algorithm was aiming to search for an optimal path in a graph, based on the behavior of ants seeking a path between their colony and a source of food. The original idea has since diversified to solve a wider class of numerical problems, and as a result, several problems have emerged, drawing on various aspects of the behavior of ants.
[edit] Overview [edit] Summary In the real world, ants (initially) wander randomly, and upon finding food return to their colony while laying down pheromone trails. If other ants find such a path, they are likely not to keep travelling at random, but to instead follow the trail, returning and reinforcing it if they eventually find food (see Ant communication). Over time, however, the pheromone trail starts to evaporate, thus reducing its attractive strength. The more time it takes for an ant to travel down the path and back again, the more time the pheromones have to evaporate. A short path, by comparison, gets marched over faster, and thus the pheromone density remains high as it is laid on the path as fast as it can evaporate. Pheromone evaporation has also the advantage of avoiding the convergence to a locally optimal solution. If there were no evaporation at all, the paths chosen by the first ants would tend to be excessively attractive to the following ones. In that case, the exploration of the solution space would be constrained. Thus, when one ant finds a good (i.e., short) path from the colony to a food source, other ants are more likely to follow that path, and positive feedback eventually leads all the ants following a single path. The idea of the ant colony algorithm is to mimic this behavior with "simulated ants" walking around the graph representing the problem to solve. [edit] Detailed The original idea comes from observing the exploitation of food resources among ants, in which ants’ individually limited cognitive abilities have collectively been able to find the shortest path between a food source and the nest.
In a series of experiments on a colony of ants with a choice between two unequal length paths leading to a source of food, biologists have observed that ants tended to use the shortest route. ^{[3]} ^{[4]} A model explaining this behaviour is as follows:
Ants use the environment as a medium of communication. They exchange information indirectly by depositing pheromones, all detailing the status of their "work". The information exchanged has a local scope, only an ant located where the pheromones were left has a notion of them. This system is called "Stigmergy" and occurs in many social animal societies (it has been studied in the case of the construction of pillars in the nests of termites). The mechanism to solve a problem too complex to be addressed by single ants is a good example of a selforganized system. This system is based on positive feedback (the deposit of pheromone attracts other ants that will strengthen it themselves) and negative (dissipation of the route by evaporation prevents the system from thrashing). Theoretically, if the quantity of pheromone remained the same over time on all edges, no route would be chosen. However, because of feedback, a slight variation on an edge will be amplified and thus allow the choice of an edge. The algorithm will move from an unstable state in which no edge is stronger than another, to a stable state where the route is composed of the strongest edges. [edit] Common extensions Here are some of most popular variations of ACO Algorithms [edit] Elitist ant system The global best solution deposits pheromone on every iteration along with all the other ants [edit] MaxMin ant system (MMAS)^{[5]} Added Maximum and Minimum pheromone amounts [τ_{max},τ_{min}] Only global best or iteration best tour deposited pheromone All edges are initialized to τ_{max} and reinitialized to τ_{max} when nearing stagnation. [edit] Ant Colony System It has been presented above.^{[6]} [edit] Rankbased ant system (ASrank) All solutions are ranked according to their fitness. The amount of pheromone deposited is then weighted for each solution, such that the solutions with better fitness deposit more pheromone than the solutions with worse fitness. [edit] Continuous orthogonal ant colony (COAC) The pheromone deposit mechanism of COAC is to enable ants to search for solutions collaboratively and effectively. By using an orthogonal design method, ants in the feasible domain can explore their chosen regions rapidly and efficiently, with enhanced global search capability and accuracy. The orthogonal design method and the adaptive radius adjustment method can also be extended to other optimization algorithms for delivering wider advantages in solving practical problems.^{[7]} [edit] Convergence For some versions of the algorithm, it is possible to prove that it is convergent (ie. it is able to find the global optimum in a finite time). The first evidence of a convergence ant colony algorithm was made in 2000, the graphbased ant system algorithm, and then algorithms for ACS and MMAS. Like most metaheuristics, it is very difficult to estimate the theoretical speed of convergence. In 2004, Zlochin and his colleagues^{[8]} have shown COA type algorithms could be assimilated methods of stochastic gradient descent, on the crossentropy and Estimation of distribution algorithm. They proposed that these metaheuristics as a "researchbased model". [edit] Application Knapsack problem. The ants prefer the smaller drop of honey over the more abundant, but less nutritious, sugar. Ant colony optimization algorithms have been applied to many combinatorial optimization problems, ranging from quadratic assignment to fold protein or routing vehicles and a lot of derived methods have been adapted to dynamic problems in real variables, stochastic problems, multitargets and parallel implementations. It has also been used to produce nearoptimal solutions to the travelling salesman problem. They have an advantage over simulated annealing and genetic algorithm approaches of similar problems when the graph may change dynamically; the ant colony algorithm can be run continuously and adapt to changes in real time. This is of interest in network routing and urban transportation systems. As a very good example, ant colony optimization algorithms have been used to produce nearoptimal solutions to the travelling salesman problem. The first ACO algorithm was called the Ant system ^{[9]} and it was aimed to solve the travelling salesman problem, in which the goal is to find the shortest roundtrip to link a series of cities. The general algorithm is relatively simple and based on a set of ants, each making one of the possible roundtrips along the cities. At each stage, the ant chooses to move from one city to another according to some rules:
