An Interactive Simulation and Analysis Software for Solving TSP using Ant Colony Optimization Algorithms Aybars UĞUR, Doğan AYDIN Department of Computer Engineering, University of Ege, 35100 Bornova-Izmir, Turkey, {aybars.ugur@ege.edu.tr, dogan.aydin@ege.edu.tr} Traveling Salesman Problem (TSP) is one of the extensively studied combinatorial optimization problems and tries to find the shortest route for salesperson which visits each given city precisely once. Ant Colony Optimization (ACO) algorithms have been used to solve many optimization problems in various fields of engineering. In this paper, a web-based simulation and analysis software (TSPAntSim) is developed for solving TSP using ACO algorithms with local search heuristics. Algorithms are tested on benchmark problems from TSPLIB and test results are presented. Importance of TSPAntSim providing also interactive visualization with real-time analysis support for researchers studying on optimization and people who have problems in form of TSP is discussed. Key words: simulation software; traveling salesman problem; ant colony optimization; local search heuristics; combinatorial optimization, visualization. 1. Introduction Traveling Salesman Problem (TSP) is the one of the well-known and extensively studied problems in discrete or combinatorial optimization and asks for the shortest roundtrip of minimal total cost visiting each given city (node) exactly once. Cost can be distance, time, money, energy, etc. TSP is an NP-hard problem and researchers especially mathematicians and scientists have been studying to develop efficient solving methods since 1950 s. Because, it is so easy to describe and so difficult to solve. Graph theory defines the problem as finding the Hamiltonian cycle with the least weight for a given complete weighted graph. The traveling salesman problem is widespread in engineering applications. It has been employed in designing hardware devices and radio electronic devices, in communications, in the architecture of computational networks, etc [1]. In addition, some industrial problems such as machine scheduling, cellular manufacturing and frequency assignment problems can be formulated as a TSP. One direct solving method is to select the route which has minimum total cost of all possible permutations of N cities. The number of permutations can be very large for even 40 cities. Every tour is represented in 2n different ways (for symmetrical TSP). Since there are n! possible ways to permute n numbers, the size of the search space is
then S =n! /(2n) =(n 1)! / 2. Rather than enumerating all possibilities, many approximation algorithms based on genetic algorithms (GA) [2], simulated annealing [3], tabu search [4], ant colony optimization [5,6,7,8] and neural networks [9] have been developed to yield good solutions within a reasonable time. Also, some exact algorithms based on the branch-and-cut method [10,11,12] have been proposed that enable even large TSP instances to be solved. Ant Colony Optimization (ACO) is a population-based approach which has been successfully applied to several NP-hard combinatorial optimization problems, firstly to Traveling Salesman Problem. ACO algorithms have been applied to various fields of engineering problems as a general optimization tool. Some published studies about using ACO algorithms to solve engineering problems can be found in [13,14,15,16,17]. ACO algorithms have virtual ants as agents that communicate indirect way and uses randomly propagation rules that make difficult to understand algorithms and agents behavior. ACO algorithms have many critical parameters that influence the performance dramatically and whose values are hard to estimate by researchers before. Many simulation and analysis tools have been developed for genetic algorithms [18, 19, 20], neural networks [21, 22] and other meta-heuristics [23, 24, 25] or artificial intelligence methods [26, 27] in the literature. But, there was not a comprehensive simulation and analysis software that has animation and tracing capabilities especially for researchers in the area of ACO. In this paper, an interactive simulation and analysis software is developed for solving TSP using Ant Colony Optimization algorithms. This web-based tool employing virtual ants and 2D interactive graphics is used to produce near-optimal solutions to the TSP and supports analysis and educational training with visualization of algorithms. Section 2 describes ant colony optimization and its variants. Section 3 provides detailed information on TSPAntSim simulation tool, section 4 illustrates some experimental results obtained by TSPAntSim and Section 5 concludes the article. 2. Ant Colony Optimization Ant Colony Optimization algorithms based on the foraging behavior of ants have first been introduced by Dorigo et al. in [5,28,6] and were formalized as a new metaheuristic in [29] by Dorigo and Di Caro. A meta-heuristic is a general purpose algorithmic framework that can be applied to different optimization problems with relatively few modifications [30]. Several ACO implementations in theoretical (i.e. [7, 31, 32, 33, 34, 35, 36, 37]) and practical industrial and engineering applications like networking (i.e. studies in British Telecommunications PLC), transportation, manufacturing (i.e. AntOptima software) have been introduced in recent years. In ACO, a number of artificial ants build solutions to the considered optimization problem at hand and exchange information on the quality of these solutions via a communication scheme that is reminiscent of the one adapted by real ants [30]. The ACO meta-heuristic algorithm skeleton is as follows:
procedure ACO algorithm meta-heuristic Set parameters, initialize pheromone trails while (termination condition not met) do ConstructSolutions ApplyLocalSearch % optional UpdateTrails end end ACO algorithm meta-heuristic As algorithm indicates that after the parameter and pheromone (a chemical substance that real ants deposit for local and indirect communication termed as stigmergy by Grassé [38]) trail initialization on the problem search space, each ant constructs its solution with the probabilistic selection policy and updates pheromone level on the graph according to their solutions. Additionally, local search methods can be applied on the each solution of ants for performance improvement. Detailed description of these three steps of algorithm is: ConstructSolutions: For the given problem instance, each ant starts a state, then traverses the states one by one. At each step, each ant computes a probability distribution function to choose one of states in this probability. This random selection is called as random proportional transition rule [30] (also called as pseudo-random proportional rule) and depends on the combination of two values: Attractiveness of the move, that is a heuristic function (depends on the problem) indicating the priory desirability of that move. The trail level of artificial pheromone, that indicates posteriori of the desirability of the move because it represents the learned desirability of the choosing the next possible states when in current state. Thanks to that, each ant incrementally constructs a solution for the instance to solve. ApplyLocalSearch: Before updating trail level, local search methods such as 2-opt, 3opt [39] and Lin-Kernighan [40] can be applied on each solution constructed in current iteration. Although this process is optional and problem specific, it improves the solutions obtained by the ants and has been used by state of art ACO algorithms. UpdateTrails: After the solutions constructed and calculated, pheromone level increases (called as pheromone depositing) and decreases (called as pheromone evaporation) on paths related to the good and bad solutions respectively.
The ACO algorithms that applied to TSP are: Ant System (AS), Elitist Ant System (ASe) [6], Ant Colony System (ACS) [41], Rank-based Ant System (RBAS) [42], BestWorst Ant System (BWAS) [43] and Max-Min Ant System (MMAS) [44]. ACO algorithms depart from each other because of their different implementation of pheromone updating and random proportional transition rule. So, pheromone updating and random proportional transition rule are one of the critical mechanisms in ACO. 2.1. Random Proportional Transition Rule (RPT Rule) According to the first ACO algorithm, Ant System for TSP, the probability that city j is selected to be visited next after city i can be written in a formula as follows: pij = [τ ij ]α [η ij ] β h Ω [τ ih ]α [η ih ] β 0 j Ω if (1) otherwise where τij is intensity of trail between cities i and j, ηij is visibility of city j from city i (ηij = 1 / d ij ), Ω is the set of unvisited cities, d ij is the distance between cities i and j. The intensity of the trail can be interpreted as an adaptive memory and is regulated by a constant parameter α. The latter criteria can be interpreted as a measure of desirability and is called visibility. It represents the heuristic function mentioned above and is regulated by a constant parameter β. It is important to note that the constant adjustable parameters, α and β, change the algorithm performance dramatically. If α = 0 the closest cities are more likely to be selected: this corresponds to a classical stochastic greedy algorithm. If, on the contrary, β = 0 only pheromone amplification at work: this method will lead to the rapid selection of tours that may not be optimal [30]. So, a tradeoff between tour length and trail intensity is necessary, but it is really hard to set the efficient values of that parameters without experiments. The best values of the parameters are commonly initialized by priory knowledge gathered from these empirical observations. All algorithms except Ant Colony System (ACS) use the same RPT rule. They vary from each others due to the different implementation of pheromone updating strategies. RPT rule is modified to allow explicitly for exploration in ACS as follows: arg max τ (i, j ) η (i, j ) β if q q0 j= (2) j Ω {[ ][ ] J } otherwise where q is a random number, q0 is a parameter (0 q0 1) and J is the previous probability distribution function given in Eq. (1). At each step, an ant in city i has to choose a city j to visit, it generates a uniformly distributed random value for q. if q q0 then the best edge is chosen (exploitation), otherwise an edge is chosen according to Eq. (1)(Biased exploration) [41]. 2.2. Pheromone Updating
Pheromone updating provides the positive and negative feedback in indirect multiple communication in colony. Positive feedback is implemented by pheromone laying on the good solutions for reinforcement. But increasing pheromone level without evaporation leads to algorithm stop the stagnation state. To avoid this, negative feedback mechanism is introduced through the pheromone evaporation on the all and sometimes bad paths. In AS, end of the each iteration t, each ant k deposits 1 / Lk ( Lk is the length of its tour) amount of pheromone independently and evaporates some value of pheromone from all edges by τij (t +1) = (1 ρ)τij (t ) equation where ρ ( 0 ρ 1 ) is the coefficient of decay. The pheromone laying by all ants yields performance decreasing and thus leading to AS worse than the state of art TSP solver, that encourages the researchers to make new variants of AS for performance improvement. Elitist strategy is the first modified version of AS algorithm in which at every cycle the trail laid on the edges belonging to the best tour is reinforced more than in AS by the elitist ants [36]. After each cycle, extra e / L* pheromone is added to the trail of each arc of the best so far tour T *, where e is the number of elitist ants and L* is the length of the best tour found from the beginning of the trail. In another modified algorithm RBAS, pheromone deposits of ants are weighted according to their ranks. The weight of the best-so-far tour is w and generally set as quarter of colony size. RBAS allows only (w-1) ranked best ants and best-so-far ant to deposit pheromone. Formally, best-so-far ant deposits w/l* amount of pheromone on its path and other ranked ants increase the pheromone level by the following formula where τij, r (t ) ( τ ij, r (t ) = 1 / Lr if (i, j ) T r (t ) where T r (t ) is the tour of the ant with rank r at iteration t ) are pheromones of ant with rank r. ( w r ) τij, r (t ) r= 1,..., w 1 (3) These two algorithms supply reinforcement with searching good solution near best tour by other ants. ACS uses two types of pheromone updating strategies: local and global. In global updating, after each iteration, only pheromones on best so far tour are updated by increasing pheromone level with ρ/ L* where ρ is the decay parameter mentioned above. Local pheromone update is performed after each step of tour construction by all ants with the following formula: τ ij = (1 ϕ) τ ij + ϕ τ 0 (4) where 0 < ϕ 1 is the local pheromone decay coefficient, τ0 is the initial value of the pheromone especially set as a nearest neighbor tour length. In MMAS, pheromone is deposited only on the best-so-far tour like ACS and reinitialized the pheromone level when a new best tour has been found. But additionally, it uses two new rules to avoid stagnation. Restrict the value of pheromone level on edges to range [τ min,τ max ]. Initialize the value of pheromone as τ max. All algorithms except BWAS, uses same evaporation rule. But in BWAS, pheromones on the worst tour T are evaporated by the formula: τ ij (t +1) = (1 ρ)τij (t ) where (i, j ) T and (i, j ) T *. Furthermore, the pheromone trail on an edge ( i j ) is subjected to mutation as in genetic algorithms with a probability p mut :
if a = 0 τ ij (t ) + τ mut τ ij (t + 1) = (5) if a 0, τ ij (t ) τ mut where i,j = 1,, n, i j, τ mut is a random number from a range depending on the iteration number and average pheromone value on the edge of the route T *, and a {0,1} is a random number [45]. 3. An Interactive ACO Simulation and Analysis Software for Solving TSP TSPAntSim, which is implemented as a standalone Java applet uses Java2D technology, is an interactive simulation environment to solve TSP by ants. TSPAntSim is available at http://yzgrafik.ege.edu.tr/projects/tspantsim/. It has ability to illustrate all the ACO algorithms and supports analysis of algorithms for different parameter values and ant behaviors. Figure 1 has the snapshots of TSPAntSim while an algorithm runs. As shown in Figure 1, simulation settings are entered from the right panel. TSP instances can be defined by using top panel and tabbed panel in the center illustrates simulation and analysis. Simulation speed can be controlled by bottom panel and also includes a progress bar. Cities with numbers defined in current instance are represented as circles on simulation panel. Bold polyline traveling all cities represent the best tour found so far and pheromone levels are shown as lines between cities. Figure 1: A screenshot of TSPAntSim. (a) General GUI, (b) Analysis panel, (c) Reporting panel 3.1 Capabilities of TSPAntSim To emphasize the capability of the environment, the system characteristics are listed below: 1. Web reachable: User can access the software through the internet with a Javaenabled browser. No installation is required. 2. ACO and local search algorithms support: TSPAntSim supports Ant System, Elitist Ant System, Rank-based Ant System, Best-Worst Ant System, Ant Colony System and Max-Min Ant System algorithms and they can be combined with local search algorithms easily. TSPAntSim uses 2-opt and 2.5-opt [46] local search heuristics for tour improvement. In 2-opt heuristic, a pair of edges in each ant tour are removed at the each iteration and their endpoints are reconnected in the only other way which gives a connected tour. This is done as long as the length of the ant tour decreases. The 2.5 opt algorithm similarly cuts and reconnects edges but the number of cut edges are three. It looks like simple 3-opt move but in a 2.5-Opt move one relocates a single city from its current location to a position between two current tour neighbors elsewhere in the tour [47]. 3. Easily setting of TSP instances: Users can select one of the TSP instance generation methods which they prefer. TSPLIB instances provided by TSPAntSim can be loaded or user can define a set of cities by adding points anywhere using mouse. A set of points can also be generated in random
locations. It is important to test ACO on different types of TSP instances because these classes of problems have structural differences that make them difficult for a particular algorithm and at the same time easy for another one [41]. 4. Flexible parameter settings: All parameters about the algorithms can be set by using panels and parameters windows easily. 5. Interactive and animated simulation: Test instances can be created and execution of algorithm can be observed interactively by mouse and the environment animates steps and iterations of algorithms during execution. 6. Different types of execution: Thanks to advantages of multi-threading, TSPAntSim presents four types of execution: normal, step by step, with ants and zoom to ant. In normal execution, selected algorithm runs faster but simulation of algorithm is poor too and only progress bar shows progress of the algorithm. It facilitates solving TSP instances and analyzing of parameters setting and algorithm comparisons quickly as possible. As the name indicates, step by step execution visually represents the changes of solution and pheromone level after the each iteration step by step. It is useful to analyze the solution, best tours, and pheromone level chances at the each iteration. Some Critical screenshots taken from the program during step by step execution of finding optimum tour of 100 cities are shown in Figure 2. Figure 2: Step by step execution for 100 cities problem (a) Screenshot of solution after 10 iterations (b) after 100 iterations (c) after 500 iterations (d) after 1000 iterations. How the colony solves the problem is illustrated in with ants execution. All ants trail and pheromone level is animated by virtual ants as shown in Figure 1-(a) thus yielding slower execution. It makes simpler to figure out both trail-laying trail-following behavior of real and virtual ants. Specially, both global and local pheromone updating on edges and changes of the pheromone levels can be seen visually at each ants move from one city to another. Simulation speed can be controlled with the slider component at bottom. In zoom to ant method (shown in figure 3), ants are indexed and ask to user for selecting one indexed ant before execution. The selection probabilities and available/unavailable are shown. By the way, behavior of virtual ant city selection and tour construction, and also the effects of RPT rule components could definitely be traced in real-time. Figure 3: Indexed (as 3 ) ant trail visualization with city probabilities 7. Real-time analysis support: TSPAntSim provides analysis of algorithms textually (Figure 1-(c)) and graphically (Figure 1-(b)). According to the user choice (the selection window shown in Figure 4-(a)), the following analysis that are commonly used (can be found in literature such as [48,6]) can be shown graphically;
Best tour-so-far represents the found best tour so far (solution) after the each iteration. Tour best represents the best ant tour length after the each iteration. Standard deviation illustrates the evolution of the standard deviation of populations tour length. Node branching is analysis of evolution of the average node branching number. (The branching number of a node is the number of edges that exit from the node, the pheromone concentration of which exceeds a small threshold [48]) TSPAntSim support different types of chart representation (shown in figure 1(b) and figure 4-(b)) by taking advantage of using free Java charting library jfreechart (http://www.jfree.org/jfreechart/). Additionally, another panel documents the algorithmic sequences during execution. Figure 4: (a) Analysis selection window (b) A screenshot of analysis panel after BWAS execution 8. Analysis document exporting: After the execution complete, a pdf type analysis document with charts and textual reports can be created if the user needs. 3.2 Architecture Overview TSPAntSim basically consists of three modules (Figure 5): Optimization, Visualization and Analysis. Optimization module includes ACO and local search algorithms (2-opt and 2.5-opt) and finds the optimum route for the current TSP instance. TSP instance can be constructed from ready TSPLIB instances and using add/delete and dragging operations from the GUI. The algorithms are implemented as threads that lead to availability to use pause/resume actions and change simulation speed. Additionally, this module stores the pheromone levels, city probabilities and ant positions for the simulation. Visualization module takes the responsibility of visualization of algorithms, TSP instances, ants, pheromones, optimum route, and etc. It takes the data from the outputs of optimization module during the execution of algorithms. This module supports animation of optimum route, virtual ants, pheromone levels and tracing the optimization step by step. The analysis module generates analysis information by manipulating the outputs of optimization algorithm iterations. This module contains analysis algorithms (such as standard deviation and node branching) about ACO and detailed documenting components. Documenting components consist of online chart and document generation classes. Specifically, with special libraries; itext (http://www.lowagie.com/itext/) and jfreechart, this core documenting components can output Acrobat PDF file analysis documents. A document has both generated charts and detailed online documents after algorithm execution. Figure 5. Architecture of TSPAntSim The GUI components are at the top level. GUI is implemented as a Java applet for web access. Application is user friendly and supports interactive simulation and training. TSP instances are constructed by using main panel on the left and top panel of TSPAntSim. Mouse events are used to add/delete
operations on cities and change locations of them in TSP instances. Bottom panel controls the simulation speed and shows progression of algorithm as a part of GUI. The main tabbed panel shows the simulation and its results by using middle layer components. Languages likes Java are object oriented. The total software development time is greatly reduced and the code quality is greatly enhanced by using object oriented approach for our software development process. Object orientation makes the software more flexible and reusable. So, it is easy to maintain and modify existing code. For example, new optimization algorithms that can be developed in the future can be added to the system easily. Other local search heuristics can be integrated with the system. Architecture that we proposed can also be changed easily by this way. 4. Experiments with TSPAntSim 4.1 Comparison of Algorithms To testing accuracy of algorithm implementations we compared them on some small size of TSPLIB instances. Tests are executed over 5 trials with the following parameters: α = 1, β = 5, m = 20 (population size), tmax = 10000, ρ = 0.5. Specifically, for MMAS ρ = 0.9 and β = 10, e (number of elitist ant) is set as 10 for Elitist AS, rank limit is set as 7 for RBAS and q0 is set as 0.9 for ACS. Table 1 shows the results obtained from the experiment. The computational results in Table 1 show that generally MMAS and BWAS achieve best performance. Regarding the performance of AS it can be seen that AS performs so poorly compared to other algorithms. Additionally, we can say that additional reinforcement techniques (EAS, RBAS and MMAS) implemented over the AS really increase the AS performance. Table 1: Computational results of TSPAntSim over small size of TSPLIB instances. Opt. indicates the known optimum solution value of instances 4.2 Evolutions of Standard Deviation Another experiment is generated to figure out tour construction behavior of ACO algorithms. In this experiment, each algorithm is run for the evolution of population standard deviation on Eil51 instance with same parameters. The obtained graphics is shown in figure 6. Figure 6: Evolution of the standard deviation of the population s tour lengths on Eil51 TSP instance. The graphics belong to the AS, EAS and RBAS indicate that their branching factor has greater values that tend to avoid algorithm getting trapped in local optima. On the contrary, high standard deviation values show tour construction divergence toward the optimal solution leading performance decreasing. To prove this idea, we run AS algorithm again to observe changes of iteration best tour and constructed solution after
each iteration. The resulting graphic is shown in figure 7 that shows clearly best tours divergence to the solution. The rest of the standard deviation s graphics implicitly illustrates why ACS, BWAS and MMAS show the better performance than others. Because averagely low standard deviation values indicate that ants try to find new good solution around best-so-far tour (solution) without bigger branching factors. Therefore, acceptable results can be achieved quickly. This tour generation behavior of ACS algorithm is shown in figure 8. Figure 8 clearly shows that at almost all iteration, at least one ant traverses on the current best tour or newer best tour. It causes to find optimal solution of Eil51 instance in early iterations (around after 100 iterations). Figure 7: Evolution of best tour and iteration best tour lengths for Ant System Figure 8: Evolution of best tour and iteration best tour lengths for Ant Colony System 5. Conclusion Main contribution of this paper is to develop a web-based interactive simulation and analysis software for solving TSP using ant colony optimization algorithms. There is no other interactive simulation environment including all ACO algorithms (AS, ASe, ACS, RBAS, BWAS and MMAS) applied to TSP by combining local search heuristics with analysis support in the literature. Researchers can prefer to compare results obtained from their own algorithms with ant colony optimization algorithms which are supported by TSPAntSim. They can also observe the effects of parameters of ACO algorithms by changing and simulating easily. TSPAntSim includes predefined TSPLIB instances and also provides capabilities about interactive city (point) operations (add, delete, drag, etc.) for users. Setting up ACO experiments only takes a few seconds. Also, people who have TSP instances to be solved can prefer TSPAntSim because of interaction capabilities of the program. Many practical applications can be modeled as a TSP or as variants of it. Transportation or route planning (of airlines, buses, delivery trucks and postal carriers, computer networks) is the most natural one of TSP applications. Some other fields that TSP can be directly applied are: minimum job scheduling, PCB drilling, cryptography, etc. References [1] [2] [3] [4] [5] Kureichik VV, Kureichik VM. A Genetic Algorithm for Finding a Salesman s Route. Journal of Computer and Systems Sciences International 2006; 45(1):89-95. Goldberg DE. Genetic algorithms in search, optimization and machine learning. MA: AddisonWesley, Reading,1989. Laarhoven PV, Aarts EHL. Simulated annealing: theory and applications. Kluwer Academic Publishers, 1987. Fiechter L. A parallel tabu search algorithm for large traveling salesman problems. Discrete Applied Mathematics and Combinatorial Operations Research and Computer Science 1994;51:243-267. Dorigo M, Maniezzo V, Colorni A.. Positive feedback as a search strategy. Technical Report, Dipartimento di Elettronica, Politecnico di Milano, 1991.
[6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] Dorigo M, Maniezzo V, Colorni A. The ant system: Optimization by a colony of cooperating agents. IEEE Transaction on Systems,Man, and Cybernetics Part-B 1996;26:29 41. Dorigo M, Gambardella LM. Ant colony system: A cooperative learning approach to the traveling salesman problem. IEEE Transaction on Evolutionary Computation 1997;1:53 66. Stützle T, Dorigo M. A short convergence proof for a class of ant colony optimization algorithms. IEEE Transactions on Evolutionary Computation 2002;6(4):358-365. Jin HD, Leung KS, Wong ML, Xu ZB. An efficient self-organizing map designed by genetic algorithms for the traveling salesman problem. IEEE Transaction on Systems,Man, and Cybernetics Part-B. 2003;33(6);877 887. Applegate D, Bixby R, Chvátal V, Cook W. On the solution of traveling salesman problems. Documenta Mathematica: Proc. Int. Cogr. Mathematicians 1998;3:645 656. Baraglia R, Hidalgo JI, Perego R. A hybrid Heuristic for the Traveling Salesman Problem. IEEE Transaction on Evolutionary Computation 2001:5;613-622. Padberg M, Rinaldi G. Optimization of a 532-city symmetric genetic traveling salesman problem by branch and cut. Operations Research Letters 1987; 6(1):1 7. Kuan SN, Ong HL, Ng KM. : Solving the feeder bus network design problem by genetic algorithms and ant colony optimization. Advances in Engineering Software 2006:37(6);351359. Coelho LDS, Mariani VC. Use of chaotic sequences in a biologically inspired algorithm for engineering design optimization. Expert Systems with Applications 2008:34(3);1905-1913. Foong WK, Simpson AR, Maier HR, et al. Ant colony optimization for power plant maintenance scheduling optimization - a five-station hydropower system. Annals of Operations Research 2008:159(1);433-450. Shelokar PS, Jayaraman VK, Kulkarni BD. An ant colony classifier system: application to some process engineering problems. Computers & Chemical Engineering 2004:28(9);1577-1584. Samrout M, Kouta R, Yalaoui F, et al. Parameter's setting of the ant colony algorithm applied in preventive maintenance optimization. Journal of Intelligent Manufacturing 2007:18(6);663-677. Liao YH, Sun CT. An educational genetic algorithms learning tool. IEEE Transaction on Education 2001:44;20 pp. Collins TD. Applying software visualization technology to support the use of evolutionary algorithms. Journal of Visual Languages & Computing 2003;14:123-150. Kollat JB, Reed P. A framework for Visually Interactive Decision-making and Design using Evolutionary Multi-objective Optimization (VIDEO). Environmental Modelling & Software 2007;22:1691-1704. Ringwood JV, Galvin G. Computer-aided learning in artificial neural networks. IEEE Transaction on Education 2002;45:380-387. Manic M, Wilamowsky B, Malinowsky A. Internet based neural network simulation tool. In proceeding IECON 02 2002;4:2870-2874. Ramírez JA, Guimaraes FG, Campelo F, Pereira EC, Barros PHL, Takahashi RHC, Saldanha RR. Optimise: A computational environment for teaching optimization in electrical engineering. IEEE Transaction on Magnetics 2004;40:695-698. Reiners T, Vob T. Teaching meta-heuristics within virtual learning environments. International Transactions in Operational Research 2004;11:225-238. Foulloy L, Boukezzoula R, Galichet S. An educational tool for fuzzy control. IEEE Transactions on Fuzzy Systems 2006;14:217-221. Effective Interactive AI Resources Workshop. IJCAI 2001. Symposium on Improving Instruction of Introductory AI. AAAI 1994. Dorigo M. Ottimizzazione, Apprendimento Automatico, ed Algoritmi Basati su Metafora Naturale. PhD thesis, Politecnico di Milano, 1992. Dorigo M, Di Caro G. Ant colony optimization: A new meta-heuristic. In Peter J. Angeline, Zbyszek Michalewicz, Marc Schoenauer, Xin Yao, and Ali Zalzala, eds., Proceedings of the Congress on Evolutionary Computation 1999;2:1470 1477. IEEE Press. Dorigo M, Birattari M, Stützle T. Ant Colony Optimization: Artificial Ants as a Computational Intelligence Technique. IEEE Computational Intelligence Magazine 2006:28-38. Costa, Hertz A. Ants can colour graphs. Journal of Operational Resarch Society 1997;48:295305. Leguizamόn G, Michalewicz Z. A new version of ant system for subset problems. In Proceeding CEC 99, 1999:1459-1464.
[33] Solnon. Ant can solve constraint satisfaction problems. IEEE Transactions on Evolutionary Computation 2002;6:347-357. [34] Campos LMD, Fernández-Luna JM, Gámez JA, Puetra JM. Ant colony optimization for learning bayesian network. International Journal of Approximate Reasoning 2002;31:291-311. [35] Lessing L, Dumitrescu I, Stützle T. A comparison between ACO algorithms for the set covering problem. In Proceeding ANTS 2004, ser. LNCS 3172, 2004;1-12. [36] Reimann M, K. Doerner, Hartl RF. D-ants: Saving based ants divide and conquer the vehicle routing problem. Compurers & Operations Research 2004;31:237-255. [37] Korb O, Stützle T, Exner TE. Application of ant colony optimization to structure-based drug design. In Proceeding ANTS 2006, ser. LNCS 4150, 2006;247-258. [38] Grassé PP. La Reconstruction dun id et les coordinations interindividuelles chez bellicosimetes natalensis et cubitemes sp. la théorie de la stigmerie: essai d Inrprétation du comportement des termites constructeurs. Insectes Sociaux 1959:6;41-81. [39] Lin S. Computer solutions for the traveling salesman problem. Bell Systems Journal 1965;44:2245-2269. [40] Lin S., Kernighan BW. An effective heuristic algorithm for the travelling salesman Problem. Operations Research 1973;21:498-516. [41] Dorigo M, Gambardella LM.Ant colonies for the traveling salesman problem. Bio Systems 1997;43:73-81. [42] Bullnheimer, Hartl RF, Strauss C. A new Ranked-Based version of the Ant System: A computational study. Central European Journal for Operational Research 1999;7:25-38. [43] Cordon O, Viana I.F., Moreno L. New ACO model integrating evolutionary computation concepts: The Best-Worst Ant System. In Proceeding ANTS 2000, 22-29, Brussels, 2000. [44] Stützle T, Hoos HH. Max-Min ant system. Future Generation Computer System 2000;16:889914. [45] Shtovba SD. Ant algorithms: theory and applications. Programming and Computer Software 2005;31:167-178. [46] Bentley JL. Fast algorithms for geometric traveling salesman problems, ORSA Journal on Computing. 1992; 4:387-411. [47] Johnson DS, McGeoch LA. The traveling salesman problem: A case study in local optimization. In Aarts, E. H. L., & Lenstra, J. K. (Eds.), Local Search in Combinatorial Optimization. Wiley and Sons, 1995. [48] Bonabeau E, Dorigo M, Theraulaz G. Swarm Intelligence from Natural to Artificial Systems. New York: Oxford University Press, 1999.
(a) (b) (c) Figure 2: A screenshot of TSPAntSim. (a) General GUI, (b) Analysis panel, (c) Reporting panel
(a) (b) (c) (d) Figure 2: Step by step execution for 100 cities problem (a) Screenshot of solution after 10 iterations (b) after 100 iterations (c) after 500 iterations (d) after 1000 iterations.
Figure 3: Indexed (as 3 ) ant trail visualization with city probabilities
(a) (b) Figure 4: (a) Analysis selection window (b) A screenshot of analysis panel after BWAS execution
PDF FILE Parameter Values APPLICATION GRAPHICAL USER INTERFACE OPTIMUM ROUTE VISUALIZATION MODULE ANALYSIS MODULE OPTIMIZATION MODULE ACO AND LOCAL SEARCH ALGORITHMS TSP INSTANCE TSP City (point) operations (add, delete, drag) TSPLIB Figure 5. Architecture of TSPAntSim Top Layer
(AS) (EAS) (RBAS) (ACS) (BWAS) (MMAS) Figure 6: Evolution of the standard deviation of the population s tour lengths on Eil51 TSP instance.
Figure 7: Evolution of best tour and iteration best tour lengths for Ant System
Figure 8: Evolution of best tour and iteration best tour lengths for Ant Colony System
Table 1: Computational results of TSPAntSim over small size of TSPLIB instances. Opt. indicates the known optimum solution value of instances TSP Opt. MMAS ACS ASE AS RBAS BWAS instance Eil51 426 427.6 428.1 428.3 437.3 428.1 427.9 Berlin52 7542 7542 7542 7542 7554.6 7542 7542 St70 675 676.6 678.9 696.4 702.1 686.4 676.2 Eil76 538 538.0 542.3 545.9 548.6 545.5 538.0 Rat99 1211 1211.2 1215.4 1251.5 1255.8 1221.3 1213.8