Penguins Search Optimization Algorithm (PeSOA) | SpringerLink

9 downloads 237961 Views 443KB Size Report
In this paper we propose a new meta-heuristic algorithm called penguins Search Optimization Algorithm (PeSOA), based on collaborative hunting strategy of ...
Penguins Search Optimization Algorithm (PeSOA) Youcef Gheraibia1 and Abdelouahab Moussaoui2 1

2

Computing Department, Mohamed Cherif Messadia Univercity, SOUK AHRAS 41000, Algeria [email protected] Computing Department, Ferhat Abbas Univercity, SETIF 19000, Algeria

Abstract. In this paper we propose a new meta-heuristic algorithm called penguins Search Optimization Algorithm (PeSOA), based on collaborative hunting strategy of penguins. In recent years, various effective methods, inspired by nature and based on cooperative strategies, have been proposed to solve NP-hard problems in which, no solutions in polynomial time could be found. The global optimization process starts with individual search process of each penguin, who must communicate to his group its position and the number of fish found. This collaboration aims to synchronize dives in order to achieve a global solution (place with high amounts of food). The global solution is chosen by election of the best group of penguins who ate the maximum of fish. After describing the behavior of penguins, we present the formulation of the algorithm before presenting the various tests with popular benchmarks. Comparative studies with other meta-heuristics have proved that PeSOA performs better as far as new optimization strategy of collaborative and progressive research of the space solutions. Keywords: Meta-heuristic, Optimization, Penguins, Bio-inspiration, NP-hard.

1

Introduction

The development of new artificial systems based on meta-heuristics, inspired by natural phenomena, has proved its effectiveness in solving NP-hard problems. These new strategies find their applications in many fields such as aeronautics, computer science, artificial intelligence, medical imagering, biology, etc. These techniques are as varied as the sources of inspiration from which they emerge (physical, biological, ecological behavior, etc..). The first work in the field of optimization began around the year 1952 with the use of stochastic methods [16]. Rechenberg in 1965 designed the first algorithm using evolution strategies in the optimization [14]. The year 1970 was marked by the revolution in optimization algorithms inspired by natural and biological phenomena with cellular automata [6]. From that time many optimization algorithms have been proposed, John Holland [10] with genetic algorithms until this M. Ali et al. (Eds.): IEA/AIE 2013, LNAI 7906, pp. 222–231, 2013. c Springer-Verlag Berlin Heidelberg 2013 

Penguins Search Optimization Algorithm (PeSOA)

223

recent years with the wide use of inspiration by various domains in the optimization algorithms [24,12,22], such as Bacterial Foraging Optimization Algorithm [13], Bat algorithm [25], Firefly algorithm [22], and cuckoo search (CS) [23]. Meta-heuristics can be classified in different ways [12,27,1,2]. Most of methods use the concept of population, in which a set of solutions are computed in parallel at each iteration, such as genetic algorithms, PSO (Particle Swarm Optimization Algorithm) [3] and the ACO (Ant Colony Optimization) [5]. Other meta-heuristics use the history of their search in order to guide the optimization in subsequent iterations by adding a learning phase of intermediate results that will lead to an optimal solution. However some algorithms such as guided local search, modify the representation of the problem. This allows us to classify the meta-heuristics into two categories: the first class gathers methods with dynamic objective function and the second one groups methods with static objective function. In this paper we propose a new meta-heuristic, called PeSOA (Penguins Search Optimization Algorithm), based on hunting behavior of penguins. The hunting strategy of penguins is more than fascinating since they can collaborate their efforts and synchronize their dives to optimize the global energy in the process of collective hunting and nutrition. First we formulate the algorithm by the idealization of collaborative hunting behavior of penguins, then we present the results obtained by comparison of the PeSOA with other methods used in the optimization as PSO and GA.

2

Hunting Strategy of Penguins

The optimality theory of foraging behavior was modeled in the works of [15,16]. These two studies hypothesized that dietary behavior may be explained by economic reasoning: when the gain of energy is greater than the expenditure required to obtain this gain, so it comes to a profitable food search activity. Penguins, as biological beings, use this assumption to extract information about the time and cost of food searches and energy content of prey, on one hand, and the choice to hunt or not in the selected area, depending on its high resource and the distance between feeding areas, on the other. The behavior of air-breathing aquatic predators including penguins was noticed by [11]. The surface is a place for penguins as they are forced to return after each foraging trip. A trip implies immersion in apnea. The duration of a trip is limited by the oxygen reserves of penguins, and the speed at which they use it, that is to say their metabolism [7,26]. The works in the field of animal behavioral ecology of penguins has given us clear and motivating ideas for the development of a new optimization method based on the behavior of penguins. Penguins are sea birds, unable to fly because of their adaptation to aquatic life [7,28,21,9]. The wings are ideal for swimming and can be considered as fins: penguins fly through water and can dive more than 520m to search for food. Although this is more efficient and less tiring to swim underwater than at the surface, they must regularly return to the surface to breath. They are able to keep breathing while swimming rapidly (7 to 10 km / h) [8]. During the dives, the

224

Y. Gheraibia and A. Moussaoui

penguin’s heart rate slows down. Under water, the hunting eyes of the penguin are wide open, his cornea is protected by a nictitating membrane. The retina allows him to distinguish shapes and colors. Penguins feed on fish and squid. For this, they must hunt in group and synchronize their dives to optimize the foraging [21]. Penguins communicate with each other with vocalizations. These vocalizations are unique to each penguin (like fingerprints in humans). Therefore, they allow the unique identification of each penguin and the recognition of penguins to each other [7]. This factor of identification and recognition is important since there is a large size of the colonies and a great similarity of the penguins. The amount of the necessary food for a penguin is variable depending on species, age, variety and quantity of food available in each region. Studies had shown that a colony of 5 million of penguins may eat daily 8 million pounds of krill and small fish [7].

3

The PeSOA Algorithm

The optimization algorithm based on the hunting behavior of penguins can be described in numerous ways. While all methods agree to optimize their objective functions such as maximizing the amount of energy extracted from the energy invested, we propose to simplify the optimization function by using rules, described below, to guide the search strategy by the penguins: Rule 1: A penguin population is made up of several groups. Rule 2: Each group is composed of a variable number of penguins that can vary depending on food availability in a specific location. Rule 3: They hunt in group and move randomly until they find food when oxygen reserves are not depleted. Rule 4: They can perform simultaneous dives to a depth identical. Rule 5: Each group of penguins starts searching in a specific position (hole ”i”) and random levels (levels ”j1, j2, ..., jn”). Rule 6: Each penguin looks for foods in random way and individually in its group, and after rough number of dives, penguins back on the ice to share with its affiliate’s, the location (represented by the level or depth of the dive) where he found food and plenty of it (represented by the amount of eaten fich). This rule ensures intra-group communication. Rule 7: At one level, one can have from 0 to N penguins (penguin or any group) according to the abundance of food. Rule 8: If the number of fish in a hole is not enough (or none) for the group, part of the group (or the whole group) migrates to another hole. (This rule ensures inter-group communication) Rule 9: The group who ate the most fish delivers us the location of rich food represented by the hole and the level. In the algorithm each penguin is represented by the hole ”i” and level ”j” and the number of fish eaten. The distribution of penguins is based on probabilities of existence of fish in both holes and levels. The penguins are divided into groups

Penguins Search Optimization Algorithm (PeSOA)

225

(not necessarily the same cardinality) and begin searching in random positions. After a fixed number of dives, the penguins back on the ice to share with its affiliate’s depth (level) and quantity (number) of the food found (Intergroup Communication). The penguins of one or more groups with little food, follow at the next dive, the penguins who chased a lot of fish. Pseudocode of the algorithm PeSOA : Generate random population of P solutions (penguins) in groups ; Initialize the probability of existence of fish in the holes and levels; For i=1 to number of generations; For each individual i ∈ P do While oxygen reserves are not depleted do - Take a random step. - Improve the penguin position using Eqs. (1) - Update quantities of fish eaten for this penguin. End End - Update quantities of eaten fish in the holes, levels and the best group. - Redistributes the probabilities of penguins in holes and levels (these probabilities are calculated based on the number of fish eaten). - Update best-solution End All Penguins ( i ) represent a solution (Xi)are distributed in groups, and each group search food in defined holes (Hj) with differences levels (Lk). In this process penguins sorted in order to their groups and start search in a specific hole and level according to food disponibility probability (Pjk).In each cycle, Accordingly, the position of the penguin with each new solution is Adjusted as follows: Dnew = DLastLast + rand() |XLocalBest − XLocalLast |

(1)

Where Rand() is a random number for distribution; and we have three solution, the best local solution ,the last solution and the new solution. the calculations in update solution equation (equation 1) are repeated for each penguins in each group, and after several plunged , penguins communicate to each other the best solution witch represented by the number of eaten fish, and we calculate the new distribution probability of holes and levels.

4 4.1

Implementation and Validation Implementation and Numerical Simulation

After the mathematical formulation of the problem and for a visual representation of the results, we implemented the algorithm of penguins (PeSOA) in Linux with the open source tool, Scilab [18]. The validation of the algorithm

226

Y. Gheraibia and A. Moussaoui

is done with different benchmarks test function which we know in advance the solution. One of the functions commonly used for validation of new algorithms is the Rastrigin function [4], described by: f(x) = 10.n +

n 

x2i − 10. cos(2.π.xi ) − 5.12 ≤ xi ≤ 5.12

(2)

i=1

The function of Rastringin is a non-convex function; it is a typical example of non linear multimodal function widely used to test the performance of optimization algorithms. The global minimum of Rastingin function is the origin, where its value is zero: f(x) = 0 x(i) = 0, i = 1 : n (3) Figure 1 represents a 3D graph of the Rastingin function to optimize. The optimization algorithm of penguins (PeSOA) reaches the global optimum (f(x) = 0 ) without difficulty as shown in Figure 2.

Fig. 1. Rastringin function, its global minimum is at the origin, where its value is zero

As shown in Figure 2, the penguin population reached a global optimum after a certain number of iterations without stuck in local optima. The two key points of any optimization algorithms are actually operated by PeSOA, on one hand, diversification and exploration of the search space and on the other hand; the exploitation of the best positions encountered by other penguins. For the variability of tests, we randomly vary the number of penguins between 10 and 300, the number of holes between 3 and 30, and the number of levels between 2 and 15. The number of dives is fixed at 5, in all iterations. According to the result sets of our simulation, we have found that there are no ideal parameters for our algorithm. However, we have also seen that the parameters haven’t any influence on the convergence of the algorithm unless they are attached to very small values. Indeed, the number of penguins must be large enough to find all optima. The number of levels and holes are proportional to the number of penguins. For the rest of the simulation, we set the number of penguins, the number of holes and the number of levels at 40, 5 and 5, respectively.

Penguins Search Optimization Algorithm (PeSOA)

227

Fig. 2. The initial population of penguins (2.a) with their initial position of groups, Figure (2.b) is the distribution of penguins after 10 iterations and the third dive, (2.c) after 30 iterations with the Rastringin function.

4.2

Testing and Comparison of PeSOA with PSO and GA

The PeSOA algorithm is population based. The individuals representing the population are handling a set of solutions in parallel, in each iteration. In our simulation we compared our algorithm with two well-known optimization algorithms: PSO (Particle Swarm Optimization) and GA (Genetic Algorithm). In recent years, many variations of these two algorithms have been proposed to enrich the research strategies and to optimize the number of iterations required to ensuring a better convergence to the optimal solution. In our case we opted for the two standard versions. Each new algorithm must obviously be tested and validated through standardized benchmarks [5,19,20] with a set of test functions. Several test functions exist where each expresses a certain number of criteria to verify the characteristics of the optimization algorithm such as robustness, sensitivity, etc. In our simulation, we used the following test functions: The Function of De Jong. De Jong function is a test function also known as the sphere function. De Jong function is continuous, convex and uni-modal. It is defined by: n  x2i − 5.12 ≤ xi ≤ 5.12 (4) f(x) = i=1

De Jong function has a global minimum; f (x) = 0, x (i) = 0, i = 1: n. The Function of Rosenbrock. Classical Rosenbrock function is also known under the name of the function banane, is a non-convex function, widely used as typical test function for optimization problems. Rosenbrock function is defined by:

228

Y. Gheraibia and A. Moussaoui

Fig. 3. Comparison of the performance of the different methods for De Jong Function

Fig. 4. Comparison of the performance of the different methods for Rosenberg function

f(x) =

n−1 

100.(xi+1 − x2i )2 + (1 − xi )2

− 2.048 ≤ xi ≤ 2.048

(5)

i=1

and has a global minimum at: f(x) = 0, x (i) = 1, i = 1:n. From the two figures (4 and 5), we can see that, with the 80 tested for the three algorithms and for both functions (De Jong and Rosenberg), the algorithms reached the global minimum in a similar path, as both functions are simple and contain only one global minimum. The Function of Schwefel. This function is special, because the global minimum is rather remote (the geometric point of view) for the best local minimum. It is defined by: f(x) =

n 

−xi . sin

 xi  − 500 ≤ xi ≤ 500

(6)

i=1

Schwefel Function has a global minimum: f(x) =-n.418.9829 x(i) = 420.9687, i = 1: n. The figure below shows that the 80 tests for the three algorithms with Schwefel function , the PeSOA shows a rapid convergence relative to the two other PSO algorithms and GA.

Penguins Search Optimization Algorithm (PeSOA)

229

Fig. 5. Comparison of the performance of the different methods for Schwefel function

The Function of Michalewicz. Michalewicz function is a multimodal test function also having many local minima. It is defined through the following formula:   2 2.m n  i.xi f(x) = sin xi . sin m = 10, 0 ≤ xi ≤ Π (7) Π i=1 Michalewicz function has a global minimum: f(x) = -1.8013 (m = 10), i = 1: n.

Fig. 6. Comparison of the performance of the different methods for Michalewicz function

Finally, the figure below shows the Michalewicz function witch is a function with n! local minima. While the performances of the PSO algorithm relapse significantly for this function, the PeSOA converges to the global optimum, but very slowly. This can be explained by the fact that penguins are divided between local minima and the global minimum. That said, the three algorithms converge to the optimum despite that there are many local minima, with a slight advantage to PeSOA.

230

5

Y. Gheraibia and A. Moussaoui

Discussion

Comparison of PeSOA with other algorithms such as PSO and GA, has exhibited a strong performance since it happens to converge for all test functions, to the global optimum, in a reasonable number of iterations. Indeed, the principle of letting the penguins seek the optimum in a set number of dives, communicating information within the same group of penguins (intra-communication), then the entire population (inter-communication) provides both rapid and optimal convergence. The algorithms were executed 80 times on a recent computer clocked at 3.4 GHz. The stopping criterion of algorithms is defined by a tolerance of 0.00001. The penguins share their positions after a number of dives, which is, among many other advantages, one of the most important of PeSOA since the right way does not necessarily always starts with the right first stage.

6

Conclusion

In this paper we have formulated a new meta-heuristic for continuous optimization problems. The new approach based on the collaborative strategy of hunting in penguins. The proposed algorithm is validated on well-known benchmarks from the literature and a comparison is made with both GA and PSO algorithms. Simulation and comparison showed that PeSOA is more robust and efficient compared to other algorithms because its research strategy does not rely only on changing the next position of the best found but the course of the algorithm is accomplished in groups. The simulation indicated, also, that the distribution of penguins in the last step is balanced between the global minimum and other local minima. The algorithm can detect all local minima and the global minimum in the search space if the number of penguins is large enough. The PeSOA algorithm can be described other ways, for example we can introduce the principles of reproduction and migration to enhance the search mechanism, which will lead to other variants of the algorithm for solving problems optimization and discrete multi-objective problems. Also, the hybridization of PeSOA algorithm with other algorithms can be potentially fruitful.

References 1. Blum, C., Roli, A.: Metaheuristics in combinatorial optimization: Overview and conceptural comparision. ACM Comput. 35, 268–308 (2003) 2. Bonabeau, E., Dorigo, M., Theraulaz, G.: Swarm Intelligence: From Natural to Artificial Systems. Oxford University Press (1999) 3. Bratton, D., Kennedy: Defining a standard for particle swarm optimization. Elsevier Publishing (2007) 4. Chattopadhyay, R.: A study of test functions for optimization algorithms. J. Opt. Theory Appl. 3, 231–236 (1971) 5. Colorni, A., Dorigo, M., Maniezzo, M.: Distributed Optimization by Ant Colonies, pp. 134–142. Elsevier Publishing (1991)

Penguins Search Optimization Algorithm (PeSOA)

231

6. Gardner, M.: Mathematical Games - The fantastic combinations of John Conway’s new solitaire game “life”, 120–123 (1970) (archived from the original on June 3, 2009) 7. Simpson, G.: Penguins: Past and Present, Here and There. Yale University Press (1976) 8. Green, K., Williams, R., Green, M.G.: Foraging ecology and diving behavior of Macaroni Penguins (Eudypteschrysolophus) at Heard Island. Arine Ornithology 26, 27–34 (1998) 9. Hanuise, N., Bost, C.A., Huin, W., Auber, A., Halsey, L.G., Handrich, Y.: Measuring foraging activity in a deep-diving bird: comparing wiggles, oesophageal temperatures and beak-opening angles as proxies of feeding. The Journal of Experimental Biology 213, 3874–3880 (2010) 10. Holland, J.H.: Adaptation in Natural and Artificial Systems. University of Michigan Press, Ann Arbor (1975) 11. Houston, A., McNamara, J.M.: A general theory of central place foraging for singleprey loaders. Theoretical Population Biology 28, 233–262 (1985) 12. Jason, B: Clever Algorithms Nature-Inspired Programming Recipes. Lulu Enterprises (January 2011) 13. Liu, Y., Passino, K.: Biomimicry of social foraging bacteria for distributed optimization: Models, principles, and emergent behaviors. Journal of Optimization Theory and Applications 115(3), 603–628 (2002) 14. Rechenberg, I.: Cybernetic Solution Path of an Experimental Problem, Royal Aircraft. Establishment Library Translation (1965) 15. MacArthur, R.H., Pianka, E.: On optimal use of a patchy environment. The American Naturalist 100, 603–609 (1966) 16. Mori, Y.: Optimal diving behavior for foraging in relation to body size. The American Naturalist 15, 269–276 (2002) 17. Robbins, H., Monro, S.: A Stochastic Approximation Method. Annals of Mathematical Statistics 22, 400–407 (1951) 18. Scilab Consortium (DIGITEO). SCILAB 5.3.2 (2010) 19. Schoen, F.: A wide class of test functions for global optimization. Global Optimization Journal 3, 133–137 (1993) 20. Shang, Y.W., Qiu, Y.H.: A note on the extended rosenrbock function. Evolutionary Computation 14, 119–126 (2006) 21. Takahashi, A., Sato, K., Nishikawa, J., Watanuki, Y., Naito, Y.: Synchronous diving behavior of Adelie penguins. Journal of Ethology 22, 5–11 (2004) 22. Yang, X.S.: Nature-Inspired Metaheuristic Algorithms. Luniver Press (2008) 23. Yang, X.S., Deb, S.: Cuckoo search via Levy flight, vol. 9, pp. 210–214. IEEE Publications (2009) 24. Yang, X.S.: Biology-derived algorithms in engineering optimization. In: Handbook of Bioinspired Algorithms and Applications, pp. 589–600 (2005) 25. Yang, X.S.: Bat algorithm for multi-objective optimization. IJBIC 5, 267–274 (2011) 26. Yann, T., Yves, C.: Synchronous underwater foraging behavior in penguins. Cooper Ornithological Soc. 101, 179–185 (2005) 27. Yang, X.S.: Engineering Optimization: An Introduction with Metaheuristic Applications. Wiley (2010) 28. Wayen, L.: Penguins of the World. Firefly Books (October 1, 1997)

Suggest Documents