Ant Colony System (ACS) is a distributed (agent- based) algorithm which has been widely studied on the Symmetric Travelling Salesman Problem (TSP). The optimum parameters for this algorithm have to be found by trial and error. We use a Particle Swarm Optimization algorithm (PSO) to optimize the ACS parameters working in a designed subset of TSP instances. First goal is to perform the hybrid PSO-ACS algorithm on a single instance to find the optimum parameters and optimum solutions for the instance. Second goal is to analyze those sets of optimum parameters, in relation to instance characteristics. Computational results have shown good quality solutions for single instances though with high computational times, and that there may be sets of parameters that work optimally for a majority of instances.
EURISTICS algorithms, and their higher forms metaheuristics, have been widely used to find reasonable good solutions for NP-Hard problems. The performance of those heuristics is based on the optimum set-up of a set of parameters. The problem of fine-tuning those parameters is also a hard problem.
Fine-Tuning is an unavoidable task that needs a correct design of experiments. For statistical experimental design and analysis for heuristics see [4]. Heuristics as CALIBRA [1] and F-Race [3] have been designed as procedures for finding optimal parameters. Fine-tuning can be understood as “to find the set of parameters performing well on a wide set of instances”.
We have designed an algorithm, using a Particle Swarm Optimization (PSO) framework, to optimize the parameters of the ACS algorithm working on a “single” Symmetric Travelling Salesman Problem (TSP) instance. For each instance the algorithm computes an “optimal” set of ACS parameters. A second goal is to analyze jointly those sets of parameters, their performance on all instances (not only their related instance) and the characteristics of their related instances for the purpose of finding correlations.
Ant Colony Optimization (ACO) is a generic framework for ant-based optimization heuristic algorithms. In ACO algorithms ants are agents which, in the TSP case, construct tours by moving from city to city on the graph problem. Those ants are sharing information using a pheromone trail.
The first ACO algorithm, called Ant-System, was proposed in [5], [7] and [8]. A full review of ACO algorithms and applications can be found in [9]. ACS is a version of the Ant System that modifies the updating of the pheromone trail, see [6] and [11]. We have chosen this ACS algorithm to work with because of the theoretical background we have found on it, see [6] and [9], and the previous fine-tuning research on the parameters by [16].
PSO is a Swarm Intelligence method for global optimization. Given a domain D, there is defined a function ℜ → D f : assigning to each point of D a fitness value. In PSO there is a population (swarm) of individuals, named particles, moving on the domain and adjusting their trajectory to its own previous best position and the previous best position of the neighbourhood. We will use the Global PSO version which considers the neighbourhood as all the swarm. For a further review of the PSO [10], [13] and [14]. An example of PSO applications can be found in [12] and [15]. We have chosen PSO because it has an easy implementation for integer and real parameters, and, as genetic algorithms, it performs a “blind” search on all the possible sets of parameters.
In our algorithm the domain of the PSO will be all possible sets of parameters for ACS. For a position of a particle we compute the fitness by running the ACS algorithm with the parameters given by the position on a TSP instance.
Section II describes ACS and PSO algorithms. Section III describes the PSO-ACS algorithm, the parameters used on the PSO and the initial population of particles (set of feasible parameters for the ACS algorithm). Computational H results are given in section IV and finally in section V conclusions are set.
Let us introduce some notation about a TSP graph, where for a given instance denote V as the set of vertices, E as the set of edges (shortest paths between the vertices), c e cost of traversing edge e∈E.
The ACS works as follow: it has a population of n ants. Let denote for each arc e=(i,j) in the TSP-instance graph an initial heuristic value η e and an initial pheromone value τ e . η e is originally set to the inverse of the cost of traversing the edge e. τ e is initially set to τ 0 =1\L nn for all edge e, where L nn is equal to the inverse of the tour length computed by the nearest-neighbour-heuristic algorithm.
Let q 0 , α, ρ ∈ [0,1], be real values and ϕ, β integer values between 0 and 8. For each vertex s ∈V a neighbour set is defined among the nearest vertices, N(s). For a given ant r let be NV(r) the set of non-visited vertices. We denote J r (s)=N(s)∩NV(r) the set of non-visited vertices among the neighbour set for a given vertex s and a given ant r.
At each iteration, each ant constructs a tour solution for the TSP-instance. The constructions phase works as follows:
Each ant is initially set in a randomly vertex, then at each step the entire ants make a movement to a non-visited vertex. Given and ant r with an actual position (vertex) s, p k(rs) is computed as a reference value for visiting or not vertex k, where:
This formula includes a small modification respect to the original ACS algorithm including ϕ as exponent of the pheromone level, this will allow us a deeper research on the effects of the possible combinations of ϕ, β parameters.
A sample random value q is computed. If q≤q 0 we visit the city k∈V with maximum p k(rs) (exploitation of the knowledge) otherwise ACS follows a random-proportional rule on p k(rs) for all k∈V (biased exploration).
This content is AI-processed based on open access ArXiv data.