Ant Colony Optimization
Ant Colony Optimization
复制标题
DOI:
10.1007/978-3-540-39930-8_5
复制
发表时间:
2004
期刊:
影响因子:
--
通讯作者:
V. Maniezzo;L. Gambardella;Fabio de Luigi
中科院分区:
文献类型:
--
作者:
V. Maniezzo;L. Gambardella;Fabio de Luigi
Ant Colony Optimization (ACO) is a paradigm for designing metaheuristic algorithms for combinatorial optimization problems. The first algorithm which can be classified within this framework was presented in 1991 [21, 13] and, since then, many diverse variants of the basic principle have been reported in the literature. The essential trait of ACO algorithms is the combination of a priori information about the structure of a promising solution with a posteriori information about the structure of previously obtained good solutions. Metaheuristic algorithms are algorithms which, in order to escape from local optima, drive some basic heuristic: either a constructive heuristic starting from a null solution and adding elements to build a good complete one, or a local search heuristic starting from a complete solution and iteratively modifying some of its elements in order to achieve a better one. The metaheuristic part permits the lowlevel heuristic to obtain solutions better than those it could have achieved alone, even if iterated. Usually, the controlling mechanism is achieved either by constraining or by randomizing the set of local neighbor solutions to consider in local search (as is the case of simulated annealing [46] or tabu search [33]), or by combining elements taken by different solutions (as is the case of evolution strategies [11] and genetic [40] or bionomic [56] algorithms). The characteristic of ACO algorithms is their explicit use of elements of previous solutions. In fact, they drive a constructive low-level solution, as GRASP [30] does, but including it in a population framework and randomizing the construction in a Monte Carlo way. A Monte Carlo combination of different solution elements is suggested also by Genetic Algorithms [40], but in the case of ACO the probability distribution is explicitly defined by previously obtained solution components. The particular way of defining components and associated probabilities is problem-specific, and can be designed in different ways, facing a trade-off between the specificity of the information used for the conditioning and the number of solutions which need to be constructed before effectively biasing the probability dis-