Computational Intelligence and Neuroscience

Volume 2016, Article ID 1510256, 12 pages

http://dx.doi.org/10.1155/2016/1510256

## Solving the Traveling Salesman’s Problem Using the African Buffalo Optimization

Faculty of Computer Systems & Software Engineering, Universiti Malaysia Pahang, 26300 Kuantan, Malaysia

Received 16 April 2015; Revised 2 August 2015; Accepted 27 August 2015

Academic Editor: Hong Man

Copyright © 2016 Julius Beneoluchi Odili and Mohd Nizam Mohmad Kahar. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

This paper proposes the African Buffalo Optimization (ABO) which is a new metaheuristic algorithm that is derived from careful observation of the African buffalos, a species of wild cows, in the African forests and savannahs. This animal displays uncommon intelligence, strategic organizational skills, and exceptional navigational ingenuity in its traversal of the African landscape in search for food. The African Buffalo Optimization builds a mathematical model from the behavior of this animal and uses the model to solve 33 benchmark symmetric Traveling Salesman’s Problem and six difficult asymmetric instances from the TSPLIB. This study shows that buffalos are able to ensure excellent exploration and exploitation of the search space through regular communication, cooperation, and good memory of its previous personal exploits as well as tapping from the herd’s collective exploits. The results obtained by using the ABO to solve these TSP cases were benchmarked against the results obtained by using other popular algorithms. The results obtained using the African Buffalo Optimization algorithm are very competitive.

#### 1. Introduction

The growing need for profit maximization and cost minimization has never been greater in human history than what we have today. This need has made optimization a very favoured area of scientific investigations. This development has led to the design of a number of optimization algorithms. Some of the most popular algorithms are the Particle Swarm Optimization [1], Ant Colony Optimization [2], Genetic Algorithm [3], Artificial Bee Colony [4], and many others. However, the above algorithms do have some drawbacks ranging from premature convergence [5], delay in obtaining results, easily being stuck in local minima, and complicated fitness function to having many parameters that require setting up [6]. An attempt to proffer solutions to some of the weaknesses of these algorithms is the motivation for the development of the African Buffalo Optimization (ABO).

The ABO is a population-based stochastic optimization technique that has its inspiration from the behaviour of African buffalos: a species of wild cows, similar to their domestic counterparts that navigate their way through thousands of kilometres in the African rain forests and savannahs by moving together in a large herd of, sometimes, over a thousand buffalos. Their migration is inspired by their search for lush grazing lands. They tend to track the movement of the rainy seasons when they can get lush grazing pastures. As the seasons differ from location to location in the vast African landscape, the buffalos are always mobile in pursuit of their target pastures. In ABO, our interest is in how the buffalos are able to organize themselves in searching the solution space with two basic modes of communications, that is, the alarm “waaa” sounds to indicate the presence of dangers or lack of good grazing fields and, as such, asking the animals to explore other locations that may hold greater promise. On the other hand, the alert “maaa” sound is used to indicate favourable grazing area and is an indication to the animals to stay on to exploit the available resources.

*The Traveling Salesman Problem*. The Traveling Salesman’s Problem (TSP) is the problem faced by a salesman who, starting from a particular town, has the assignment of finding the shortest possible round trip through a given set of customer towns or cities. The salesman has a mandate to visit each city once before finally returning to the starting town/city. The Travelling Salesman’s Problem (TSP) can be represented by a complete weighted graph with being the set of nodes (cities) and being the set of edges fully connecting the nodes in the graph . In this graph, each edge is given a weight which represents the distance between cities and . It may be important to emphasize that the distance between towns/cities may be symmetric (where the distances between the cities are the same in either going or returning from the towns/cities) or asymmetric (where due to some restrictions, possibly, due to one-way lanes or other reasons, the distances of going from city to city may not be the same). The basic minimization equation for TSP is given towns and their coordinates, find an integer permutation with being the city “”, our task is to minimize the sum of the cities [7, 8]. ConsiderHere, represents the distance between city “” and city and is the distance of city “” and city “.” The aim is to find the shortest path between the adjacent cities in the form of a vector of cities.

This paper is organized in this way: Section 1 introduces the African Buffalo Optimization and the Travelling Salesman’s Problem; Section 2 presents a brief review of relevant literature; Section 3 discusses the basic flow of the African Buffalo Optimization (ABO) algorithm; Section 4 is concerned with how the ABO solves the TSP; Section 5 deals with the experiments and discussion of the results of the symmetric TSP instances; Section 6 is concerned with the experiments on the asymmetric TSP instances and the discussions of the results; Section 7 examines the performance of ABO vis-à-vis Neural Networks methods; Section 8 draws conclusions on the study.

#### 2. Literature Review

Nature-inspired algorithms (NAs) draw their inspiration from the complex but highly organised attributes of nature. Nature-inspired algorithms which are generally stochastic became the hotbed of several researchers due to the inefficiencies of the exact optimization algorithms (as the problem size enlarges) like the Linear Programming, [9], Dynamic Programming [10], finite elements [11], and finite volume methods. In general NAs simulate the interplay and, sometimes, interdependence of natural elements such as plants, animals, and rivers. The most popular class of algorithms among the NAs are the biology-inspired algorithms. A handful of other NAs, however, are inspired by Chemistry or Physics. Some of those algorithms inspired by Chemistry or Physics include Harmony Search (HS) algorithm, Intelligent Water Drop (IWD), Simulated Annealing (SA), and Black Hole (BH) [12]. In this study, our interest is the biology-inspired optimization algorithms.

Biology-inspired algorithms (BAs) can be categorised into three broad classes, namely, Evolutionary Algorithms (EAs) that are inspired by natural evolutions, the Swarm Intelligence (SI) which simulates the collective behavior in plants and animals, and, thirdly, Ecology algorithms which are concerned with simulating the inter- and intracooperative or competitive interactions within the ecosystem [13].

The Evolutionary Algorithms (EAs), generally, simulate the iterative progress comprising growth, development, reproduction, selection, and survival as seen in a population. EAs are concerned with the feasible solutions that emanate iteratively from generation to generation towards the best solution. EAs employ fitness-based selection within the population of solutions in a way that fitter solutions are selected for survival into the next generation of solutions. In this category of EAs are Genetic Programming (GP), Paddy Field Algorithm (PFA), Evolutionary Strategies (ES), Genetic Algorithm (GA), and the Differential Evolution (DE) [12]. It may be necessary to state that experts have different opinions on the classification of Differential Evolution as an Evolutionary Algorithm. The classification of DE as an Evolutionary Algorithm stems from its use of “Evolution” as one of its parameters (just like other EAs). A critical expert may not class Differential Evolution as being bioinspired, actually [14].

The second category of BAs is the Swarm Intelligence (SI) algorithms which are concerned with the collective social behavior of organisms. The motivation of Swarm Intelligence is the collective intelligence of groups of simple agents such as insects, fishes, birds, bacteria, worms, and other animals based on their behavior in real life. As simple as these animals are, they are able to exhibit exceptional intelligence whenever they work collectively as a group. These algorithms track the collective behavior of animals that exhibit decentralized, self-organized patterns in their foraging duties. Examples of these algorithms are the Bee Colony Optimization (BCO), Firefly Algorithm (FFA), Particle Swarm Optimization (PSO), Ant Colony Optimization (ACO), Artificial Bee Colony (ABC), Bacteria Foraging Algorithm (BFA), and so on [15].

The third category of BAs is the Ecology algorithms which are concerned with the numerous inter- or intraspecies competitive or cooperative interactions within the natural ecosystems. The ecosystem is made up of living organisms along with their abiotic environment with which the organisms interact such as water, air, and soil. Cooperation among organisms includes division of labor and represents the core of their sociality. Some of the interactions are cooperative and others are competitive leading to a complex and harmonious balancing within the ecosystem. Algorithms in this category are the PS2O, Invasive Weed Colony Optimization, and biogeography-based optimization [16].

The development of the African Buffalo Optimization (ABO) is in response to the observed lapses in the existing algorithms. The ABO belongs to the Swarm Intelligence class of algorithms based on the social behavior in animals with the aim of achieving greater exploitation and exploration of the search space, ease of use, and faster speed in achieving the optimal result with its use of relatively fewer parameters in solving combinatorial optimization problems.

##### 2.1. Ant Colony Optimization (ACO)

Ant Colony Optimization algorithm is a population-based optimization technique developed by Marco Dorigo and has been successfully applied to solve several NP-hard combinatorial optimization problems. This algorithm was inspired by the behavior of ant colonies, especially, by their foraging behavior in real life. Usually ants, when leaving their nests, move randomly around the areas surrounding their nests in search for food. If any of the ants come across food, it first collects some pieces of the food and, on its way back to the nest, deposits a chemical substance called pheromones as a way of communicating to its peers that there has been a breakthrough. Other nearby ants, on perceiving the fragrance of the pheromone, understand and move towards the pheromone path. Once they discover the food source, they, in turn, drop fresh pheromones as a way of alerting other ants. In a matter of time, several ants pick this information and are on the pheromone path.

Another interesting part of the ants’ behavior is that as they return to the nest, they optimize their route. In a short while, the ants have created a shorter route to the food source than the previous routes. Moreover, in case an obstruction is put on the shorter route, making movements impossible, the ants are able to find another short route among the available options to evade the obstacle. The highlights of this algorithm include tapping into the indirect communication of a colony of (artificial) ants using pheromone trails as a means of communication, tracking their cooperative ability to solve a complex problem, and harnessing their capacity to optimize their routes from the food source to the nest and vice versa.

There have been several modifications of the ant colony algorithms starting from the initial Ant System (AS), to Ant Colony System (ACS), to Min-Max Ant System (MMAS), and then to the Ant Colony Optimization (ACO) algorithms, and so forth [17]. In ACO, a colony of ants in each iteration constructs a solution probabilistically as ant at node selects the next node to move on to. The choice of node is influenced by the pheromone trail value and the available heuristic . In TSP, . So an ant moves from location to location with the probabilityHere, represents the pheromone trail, represents the local heuristic information represents the iteration, represents the nodes ant can go to, and and are parameters that bias the pheromone trails. By the end of an iteration, the pheromone trail on each edge is updated using the following equation:In (3), represents the pheromone trail in iteration ; takes any values from 0.1 to 0.9. The amount of pheromone deposited by the best ant is represented by In (4), represents cost of the best solution .

A critical examination of the Ant Colony Optimization technique of solving optimization problems reveals that there is little or no similarity between the ACO’s search mechanism and that of the ABO. This could be due to their application of different search techniques in arriving at solutions: while the ACO employs path construction technique, the ABO favours path improvement search mechanism.

##### 2.2. Particle Swarm Optimization

Particle Swarm Optimization which was inspired by the social behavior of birds flocking or fish schooling is one of the biology-inspired computation techniques developed by Eberhart and Kennedy [18]. This algorithm obtains solutions using a swarm of particles, where each particle represents a candidate solution. When compared to evolutionary computation paradigms, a swarm is similar to a population and a particle represents an individual. In searching for a solution, the particles are flown through a multidimensional search space, where the position of each particle is adjusted according to its own experience and that of its neighbors. The velocity vector drives the optimization process as well as highlighting each particle’s experience and the information exchange within its neighborhood. Just like the ABO, PSO has two controlling equations in its search for solution and these are (5) and (6). Considerwhere represents the present velocity, is the previous velocity, is the constriction factor, and are the acceleration coefficients, and are random numbers, is the individual particles’ best position, is the present position, and is the swarm’s best position. The next equation in PSO that calculates the position of the swarm is In PSO algorithm, the particles move in the domain of an objective function , where represents the variables to be optimized. Each particle, at a particular iteration, is associated with three vectors:(a)Present position, denoted by : This vector records the present position of a particular particle.(b)Present velocity, denoted by : This vector stores the particle’s direction of search.(c)Individual’s best position, denoted by : This vector records the particular particle’s best solution so far since the search began (since the beginning of the algorithm’s execution). In addition to these, the individual particles relate with the best particle in the swarm which PSO algorithm tracks, in each iteration, to help direct the search to promising areas [19].

##### 2.3. Artificial Bee Colony

This algorithm, which is inspired by the behavior of natural honey bee swarm, was proposed by Karaboga and Akay in 2009 [20]. It searches for solution through the use of three classes of bees: scout bees, onlooker bees, and employed bees. Scout bees are those that fly over the search space in search for solutions (food source). The onlooker bees, on the other hand, are the ones that stay in the nest waiting for the report of the scout bees while the employed bees refer to the class of bees which, after watching the waggle dance of the scout bees, opts to join in harvesting the food source (exploitation). A particular strength of this algorithm lies in its bee transformation capabilities. For instance, a scout bee could transform to an employed bee once it (the same scout bee) is involved in harvesting the food source and vice versa.

Generally, the bees can change their statuses depending on the needs of the algorithm at a particular point in time. In this algorithm, the food source represents a solution to the optimization problem. The volume of nectar in a food source represents the quality (fitness) of the solution. Moreover, each employed bee is supposed to exploit only one food source, meaning that the number of employed bees is the same as the number of food sources. The scout bees are always exploring for new food sources with higher nectar quantity and/or quality (fitness) within the neighbourhood. The bees evaluate the nectar fitness usingwhere is a randomly chosen parameter index; is a random number within a given range; is a food source.

The quality (fitness) of a solution is calculated using the following equation:From the foregoing discussion, it is clear that there is slight similarity between (5) in PSO and (7) in ABO since each algorithm subtracts a variable from the personal and individual bests of the particles/buffalos. For PSO, the subtracted variable is the present position and for ABO, it is the immediate-past explored location (the* waaa* values, ). However, the two equations are different in several respects: while the PSO uses (being the constriction factor) or (as inertia factor, in some versions of the PSO), there are no such equivalents in ABO. Moreover, while the PSO employs random numbers ( and ), ABO does not use random numbers, only learning parameters. Also, PSO uses acceleration coefficients ( and ); ABO does not. In the case of the ABC, even though it employs the same search technique in arriving at solutions, the algorithm procedures are quite different.

##### 2.4. Information Propagation

In searching for solutions to an optimization problem, the ACO employs the path construction technique while the PSO, ABC, and the ABO use the path improvement technique. However, while the PSO uses the Von Neumann (see Figure 1) as its best technique for information propagation [21], the ACO obtains good results using the ring topology [22] and the ABO uses the star topology which connects all the buffalos together. The Von Neumann topology enables the particles to connect to neighboring particles on the east, west, north, and south. Effectively, a particular particle relates with the other four particles surrounding it. The ABO employs the star topology such that a particular buffalo is connected to every other buffalo in the herd. This enhances ABO’s information dissemination at any particular point in time.