Ant Colony Optimization (ACO) is a class of metaheuristic algorithms sharing the common approach of constructing a solution on the basis of information provided both by a standard constructive heuristic and by previously constructed solutions. This paper is composed of three parts.The first one frames ACO in current trends of research on metaheuristics for combinatorial optimization. The second outlines current research within the ACO community, reporting recent results obtained on different problems, while the third part focuses on a particular research line, named ANTS, providing some details on the algorithm and presenting results recently obtained on a prototypical strongly constrained problem: the set partitioning problem.
IntroductionNowadays companies are facing many real world problems whose nature is intrinsically combinatorial. For example, trucks have to be routed, depots or sale points have to be located, containers have to be filled, wood or leather masters have to be cut, communication networks have to be designed, radio links must have an associated frequency, CPU time has to be scheduled, etc.Complexity theory tells us that the combinatorial problem underlying these applications is often not polynomial. Actual practice tells us that, unfortunately, the size of the instances met in real world applications rules out the possibility of solving them to optimality in an acceptable time. In addition, several operational constraints are often imposed to ensure feasibility of the solutions, constraints which further complicate the solution process. Nevertheless, these instances must be solved and the constraints must be taken into account. Thus, the need to bow down to suboptimal