Available online at www.sciencedirect.com

SciVerse ScienceDirect PfOCGCl ¡Q

Computer Science

Procedía Computer Science 18 (2013) 861 - 868

International Conference on Computational Science, ICCS 2013

Multi-objective Flower Algorithm for Optimization

Xin-She Yanga'1'*, Mehmet Karamanoglua, Xingshi Heb

aSchool of Science and Technology, Middlesex University, London NW4 4BT, UK b School of Science, Xi'an Polytechnic University, Xi'an, P. R. China

Abstract

Flower pollination algorithm is a new nature-inspired algorithm, based on the characteristics of flowering plants. In this paper, we extend this flower algorithm to solve multi-objective optimization problems in engineering. By using the weighted sum method with random weights, we show that the proposed multi-objective flower algorithm can accurately find the Pareto fronts for a set of test functions. We then solve a bi-objective disc brake design problem, which indeed converges quickly.

Keywords: Algorithm, benchmark, flower algorithm, optimization, metaheuristics, engineering design.

1. Introduction

Engineering design optimization typically concerns multiple, often conflicting, objectives or multi-criteria, and can thus be very challenging to solve. Therefore, some compromise and approximations are needed to provide sufficiently good estimates to the true Pareto front of the problem of interest. Then, decision-makers can rank different options, depending on their preferences or their utilities [1, 2, 3, 5, 6, 7, 23]. In contrast with single objective optimization, multi-objective optimization has its additional challenging issues such as time complexity, inhomogeneity and dimensionality. To map the Pareto front accurately is very time-consuming, and there is no guarantee that these solutions points will distribute uniformly on the front. Single objective optimization typically has a single point in the solution space as its optimal solution, while for bi-objective optimization; the Pareto front corresponds to a curve. Higher dimensional problems can have extremely complex hypersurface as its Pareto front [16,17, 29]. Consequently, these problems can be extremely challenging to solve.

Nature-inspired algorithms have shown their promising performance and have thus become popular and widely used, and these algorithms are mostly swarm intelligence based [4, 8, 22, 29, 30, 31, 32, 12, 13]. These algorithms have also been used to solve multiobjective optimization problems.

Therefore, the aim of this paper is to extend the flower pollination algorithm (FPA), developed by Xin-She Yang in 2012 [34], for single objective optimization to solve multiobjective optimization. The rest of this paper is organized as follows: We first outline the basic characteristics of flower pollination and then introduce in detail the ideas of flower pollination algorithm in Section 2. We then validate the FPA by numerical experiments and a few selected multi-objective benchmarks in Section 3. Then, in Section 4, we solve a real-world disc brake design benchmark with two objectives. Finally, we discuss some relevant issues and conclude in Section 5.

* Xin-She Yang (email:x.yang@mdx.ac.uk) 1 Corresponding Author

ELSEVIER

1877-0509 © 2013 The Authors. Published by Elsevier B.V.

Selection and peer review under responsibility of the organizers of the 2013 International Conference on Computational Science doi: 10.1016/j.procs.2013.05.251

2. Nature-Inspired Flower Pollination Algorithm

2.1. Pollination of Flowering Plants

Flowering plant has been evolving for at least more than 125 million years. It is estimated that there are over a quarter of a million types of flowering plants in Nature and that about 80% of all plant species are flowering species. It still remains a mystery how flowering plants came to dominate the landscape from Cretaceous period [26]. The primary purpose of a flower is ultimately reproduction via pollination. Flower pollination is typically associated with the transfer of pollen, and such transfer is often linked with pollinators such as insects, birds, bats and other animals. In fact, some insects and certain flowers have co-evolved into a very specialized flower-pollinator partnership. For example, some flowers can only depend on a specific species of insects or birds for successful pollination.

Abiotic and biotic pollination are two main forms in the pollination process. About 90% of flowering plants belong to biotic pollination. That is, pollen is transferred by a pollinator such as insects and animals. About 10% of pollination takes abiotic form which does not require any pollinators. Wind and diffusion help pollination of such flowering plants, and grass is a good example of abiotic pollination [9, 10]. Pollinators, or sometimes called pollen vectors, can be very diverse. It is estimated there are at least about 200,000 varieties of pollinators such as insects, bats and birds. Honeybees are a good example of pollinator, and they have also developed the so-called flower constancy. That is, these pollinators tend to visit exclusive certain flower species while bypassing other flower species. Such flower constancy may have evolutionary advantages because this will maximize the transfer of flower pollen to the same or conspecific plants, and thus maximizing the reproduction of the same flower species. Such flower constancy may be advantageous for pollinators as well, because they can be sure that nectar supply is available with their limited memory and minimum cost of learning, switching or exploring. Rather than focusing on some unpredictable but potentially more rewarding new flower species, flower constancy may require minimum investment cost and more likely guaranteed intake of nectar [27].

By a close look into the world of flowering plants, pollination can be achieved by self-pollination or cross-pollination. Cross-pollination, or allogamy, means pollination can occur from pollen of a flower of a different plant, while self-pollination is the fertilization of one flower, such as peach flowers, from pollen of the same flower or different flowers of the same plant, which often occurs when there is no reliable pollinator available. Biotic, cross-pollination may occur at long distance, and the pollinators such as bees, bats, birds and flies can fly a long distance, thus they can considered as the global pollination. In addition, bees and birds may behave as Levy flight behaviour [19], with jump or fly distance steps obeying a Levy distribution. Furthermore, flower constancy can be considered as an increment step using the similarity or difference of two flowers. From the biological evolution point of view, the objective of the flower pollination is the survival of the fittest and the optimal reproduction of plants in terms of numbers as well as the most fittest.

2.2. Flower Pollination Algorithm

Based on the above characteristics of flower pollination, Xin-She Yang developed the Flower pollination algorithm (FPA) in 2012 [34]. For simplicity, we use the following four rules:

1. Biotic and cross-pollination can be considered as a process of global pollination process, and pollen-carrying pollinators move in a way which obeys Levy flights (Rule 1).

2. For local pollination, abiotic and self-pollination are used (Rule 2).

3. Pollinators such as insects can develop flower constancy, which is equivalent to a reproduction probability that is proportional to the similarity of two flowers involved (Rule 3).

4. The interaction or switching of local pollination and global pollination can be controlled by a switch probability p e [0,1], with a slight bias towards local pollination (Rule 4).

From the implementation point of view, a set of updating formulae are needed. Now we convert the above rules into updating equations. First, in the global pollination step, flower pollen gametes are carried by pollinators such as insects, and pollen can travel over a long distance because insects can often fly and move in a much longer range. Therefore, Rule 1 and flower constancy can be represented mathematically as

x\+1 = xi + yL(X)(x'i - *.),

Flower Pollination Algorithm (or simply Flower Algorithm)

Objective min or max f(x), x = (x1, x2,..., xd)

Initialize a population of n flowers/pollen gametes with random solutions Find the best solution gt in the initial population Define a switch probability p e [0,1]

Define a stopping criterion (either a fixed number of generations/iterations or accuracy) while (t <MaxGeneration)

for i = 1 : n (all n flowers in the population) if rand < p,

Draw a (d-dimensional) step vector L which obeys a Levy distribution Global pollination via x\+1 = xt + L(gt - xt) else

Draw e from a uniform distribution in [0,1] Do local pollination via x'+1 = xi + e(xj - x'k) end if

Evaluate new solutions

If new solutions are better, update them in the population end for

Find the current best solution gt end while

Output the best solution found

Figure 1: Pseudo code of the proposed Flower Pollination Algorithm (FPA).

where xt is the pollen i or solution vector xi at iteration t, and g„ is the current best solution found among all solutions at the current generation/iteration. Here y is a scaling factor to control the step size. In addition, L(j) is the parameter that corresponds to the strength of the pollination, which essentially is also the step size. Since insects may move over a long distance with various distance steps, we can use a Levy flight to mimic this characteristic efficiently. That is, we draw L > 0 from a Levy distribution

jf(j) sin(nJ/2) 1

L---r+j, (s » so > 0). (2)

n s1+j

Here, r(J) is the standard gamma function, and this distribution is valid for large steps s > 0. Then, to model the local pollination, both Rule 2 and Rule 3 can be represented as

xt+1 = x\ + e(xj - x'k), (3)

where xj and x'k are pollen from different flowers of the same plant species. This essentially mimics the flower constancy in a limited neighbourhood. Mathematically, if x'j and x'k comes from the same species or selected from the same population, this equivalently becomes a local random walk if we draw e from a uniform distribution in [0,1].

Though Flower pollination activities can occur at all scales, both local and global, adjacent flower patches or flowers in the not-so-far-away neighbourhood are more likely to be pollinated by local flower pollen than those far away. In order to mimic this, we can effectively use a switch probability (Rule 4) or proximity probability p to switch between common global pollination to intensive local pollination. To start with, we can use a naive value of p = 0.5 as an initially value. A preliminary parametric showed that p = 0.8 might work better for most applications.

2.3. Multi-objective Flower Pollination Algorithm (MOFPA)

There are quite a few approaches to dealing multi-objectives using algorithms that have been tested by single-objective optimization problems. Perhaps, the simplest way is to use a weighted sum to combine all multiple objectives into a composite single objective

f = Yj wifi, Z wi = 1, wi > 0, (4)

i=1 i=1

where m is the number of objectives and wi(i = 1,..., m) are non-negative weights. In order to obtain the Pareto front accurately with solutions uniformly distributed on the front, we have to use random weights wi, which can be drawn from a uniform distribution, or low-discrepancy random numbers.

3. Simulation and Results

Various test functions for multi-objective optimization exist [35, 37, 38], though there is no agreed set available at present. Ideally, a new algorithm should be tested again all known test functions, however, this is a time-consuming task. In practice, we often use a subset of some widely used functions with diverse properties of Pareto fronts. To validate the proposed MOFA, we have selected a subset of these functions with convex, non-convex and discontinuous Pareto fronts. We will first use four test functions, and then solve a bi-objective disc brake design problem.

The parameters in MOFPA are fixed in the rest of the paper, based on a preliminary parametric study, and we will use p = 0.8, X = 1.5 and a scaling factor y = 0.1. The population size n = 50 and the number of iterations is set to t = 1000.

3.1. Test Functions

For simplicity in this paper, we have tested the following four functions:

• ZDT1 function with a convex front [37, 38]

f1(x) = X1, h(x) = ¿(1 - fg),

g = 1 + d=2Xi, X1 € [0,1], i = 2,..., 30, (5)

where d is the number of dimensions. The Pareto-optimality is reached when g = 1.

• ZDT2 function with a non-convex front

f1(x) = X1, f2(x) = g(1 - f1)2,

ZDT3 function with a discontinuous front

f1(x) = X1, f2(x) = g

1 -a/- - -sin(10nf1)

where g in functions ZDT2 and ZDT3 is the same as in function ZDT1. In the ZDT3 function, f1 varies from 0 to 0.852 and f2 from -0.773 to 1.

LZ function [15, 36]

f1 = X1 + \\xj - sin(6nx1 + J-n) |J1| JY' d

2 r n 12

f2 = 1 - VX7 + + X [Xj - sin(6nx1 + d) ,

'€J2

where J1 = {j| j is odd } and J2 = {j|j is even } where 2 < j < d. This function has a Pareto front f2 = 1 - - f with a Pareto set

Xj = sin(6nx1 + —), j = 2,3,..., d, x1 € [0,1]. (7)

We first generated 100 Pareto points by MOFPA, and then compared the Pareto front generated by MOFPA with the true front f2 = 1 - -f of ZDT1, and the results are shown in Fig. 2.

Let us define the distance or error between the estimated Pareto front PFe to its corresponding true front PFt as

Ef = ||PFe - PFt||2 = ^(PFe - PFj)2, (8)

where N is the number of points. The convergence property can be viewed by following the iterations. As this measure is an absolute measure, which depends on the number of points. Sometimes, it is easier to use relative measure using generalized distance

Y^PFj - PFj)2. (9)

3.2. Performance Comparison

To see how the proposed algorithm performs in comparison with other algorithms, we now compare the performance of the proposed MOFPA with other established multiobjective algorithms. Not all algorithms have extensive published results, so we have carefully selected a few algorithms with available results from the literature. In case of the results are not available, we have tried to implement the algorithms using well-documented studies and then generated new results using these algorithms. In particular, we have used other methods for comparison, including vector evaluated genetic algorithm (VEGA) [25], NSGA-II [8], multi-objective differential evolution (MODE) [28, 2], differential evolution for multi-objective optimization (DEMO) [24], multi-objective bees algorithms (Bees) [20], and Strength Pareto Evolutionary Algorithm (SPEA) [8, 16]. The performance measures in terms of generalized distance Dg are summarized in Table 1 for all the above major methods.

From Table 1, we can see that the proposed MOFPA obtained better results for almost all four cases.

Table 1: Comparison of Dg for n = 50 and t = 500 iterations.

Methods ZDT1 ZDT2 ZDT3 LZ

VEGA 3.79E-02 2.37E-03 3.29E-01 1.47E-03

NSGA-II 3.33E-02 7.24E-02 1.14E-01 2.77E-02

MODE 5.80E-03 5.50E-03 2.15E-02 3.19E-03

DEMO 1.08E-03 7.55E-04 1.18E-03 1.40E-03

Bees 2.40E-02 1.69E-02 1.91E-01 1.88E-02

SPEA 1.78E-03 1.34E-03 4.75E-02 1.92E-03

MOFPA 7.11E-05 1.24E-05 5.49E-04 7.92E-05

4. Design of a Disc Brake With Two Objectives

There are a few dozen benchmarks in the engineering literature [14, 20, 22, 21]. We now use the MOFPA to solve a disc brake design benchmark [11, 18, 22]. The objectives are to minimize the overall mass and the braking time by choosing optimal design variables: the inner radius r, outer radius R of the discs, the engaging force F and the number of the friction surface s. This is under the design constraints such as the torque, pressure, temperature, and length of the brake. This bi-objective design problem can be written as:

9 82 v 106(r2 _ r2)

Minimize fi(x) = 4.9 x 10-5(R2 - r2)(s - 1), f2(x) = ' / 3- ;, (10)

Fs(R3 - r3)

Figure 2: Pareto front of test function ZDT1.

subject to

£1(X) = 20 - (R - r) < 0,

g2(x) = 2.5(s + 1) - 30 < 0,

g3(x) = 314F-T2) - 0-4 < 0, g4(x) = 2'22X(R°3y-r3) -1 < 0,

The simple limits are

g5(x) = 900 - om6RF-r°;-r3) < 0.

55 < r < 80, 75 < R < 110, 1000 < F < 3000, 2 < s < 20.

It is worth pointing out that s is discrete. In general, we have to extend MOFPA in combination with constraint handling techniques to deal with mixed integer problems efficiently. However, since there is only one discrete variable, we can use the simplest branch-and-bound method.

The above results for these benchmarks and test functions suggest that MOFPA is a very efficient algorithm for multi-objective optimization. It can deal with highly nonlinear problems with complex constraints and diverse Pareto optimal sets.

Figure 3: Pareto front of the disc brake design.

5. Conclusions

We have successfully extended a flower algorithm for single-objective optimization to solve multi-objective design problems. Numerical experiments and design benchmarks have shown that MOFPA is very efficient with an almost exponential convergence rate. This observation is based on the comparison of FPA with other algorithms for solving multi-objective optimization problems.

The standard FPA has its simplicity and flexibility, and in many ways, it has some similarity to that of cuckoo search and other algorithms with Levy flights [29, 33]. FPA has only one key parameter p together with a scaling factor y, which makes the algorithm easier to implement.

It is worth pointing out that we have only done some preliminary parametric studies. Future studies can focus on more detailed parametric analysis and their possible links with performance. Furthermore, the linearity in the main updating formulas makes it possible to do some theoretical analysis in terms of dynamic systems or Markov chain theories. This could form an useful topic for further research.

References

[1] Abbass H. A. and Sarker R., (2002). The Pareto diffential evolution algorithm, Int. J. Artificial Intelligence Tools, 11(4), 531-552 (2002).

[2] Babu B. V. and Gujarathi A. M., Multi-objective differential evolution (MODE) for optimization of supply chain planning and management, in: IEEE Congress on Evolutionary Computation (CEC 2007), pp. 2732-2739.

[3] Cagnina, L. C., Esquivel, S. C., and Coello, C. A., Solving engineering optimization problems with the simple constrained particle swarm optimizer, Informatica, 32, 319-326 (2008).

[4] Coello C. A. C., (1999). An updated survey of evolutionary multiobjective optimization techniques: state of the art and future trends, in: Proc. of 1999 Congress on Evolutionary Computation, CEC99, DOI 10.1109/CEC.1999.781901

[5] Deb K., (1999). Evolutionary algorithms for multi-criterion optimization in engieering design, in: Evolutionary Aglorithms in Engineering and Computer Science, Wiley, pp. 135-161.

[6] Deb K., Pratap A. and Moitra S., (2000). Mechanical component design for multiple objectives using elitist non-dominated sorting GA, in:

Proceedings of the Parallel Problem Solving from Nature VI Conference, Paris, 16-20 Sept 2000, pp. 859-868.

[7] Deb K., (2001). Multi-Objective optimization using evolutionary algorithms, John Wiley & Sons, New York.

[8] Deb K., Pratap A., Agarwal S., Mayarivan T., (2002). A fast and elistist multiobjective algorithm: NSGA-II, IEEE Trans. Evol. Computation, 6, 182-197.

[9] Oily Fossils provide clues to the evolution of flowers, Science Daily, 5 April 2001. http://www.sciencedaily.com/releases/2001/04/010403071438.htm

[10] Glover, B. J., (2007). Understanding Flowers and Flowering: An Integrated Approach, Oxford University Press, Oxford, UK.

[11] Gong W. Y., Cai Z. H., Zhu L., An effective multiobjective differential evolution algorithm for engineering design, Struct. Multidisc. Optimization, 38, 137-157 (2009).

[12] Gandomi, A. H., Yang, X. S., Talatahari, S., and Deb, S., (2012). Coupled eagle strategy and differential evolution for unconstrained and constrained global optimization, Computers & Mathematics with Applications, 63(1), 191-200 (2012).

[13] Gandomi, A. H., and Yang, X. S., (2011). Benchmark problems in structural optimization, in: Computational Optimization, Methods and Algorithms (Eds. S. Koziel and X. S. Yang), Study in Computational Intelligence, SCI 356, Springer, pp. 259-281.

[14] Kim J. T., Oh J. W. and Lee I. W., (1997). Multiobjective optimization of steel box girder brige, in: Proc. 7th KAIST-NTU-KU Trilateral Seminar/Workshop on Civil Engineering, Kyoto, Dec (1997).

[15] Li H. and Zhang Q. F., (2009). Multiobjective optimization problems with complicated Paroto sets, MOEA/D and NSGA-II, IEEE Trans. Evol. Comput., 13, 284-302.

[16] Madavan N. K., (2002). Multiobjective optimization using a pareto differential evolution approach, in: Congress on Evolutionary Computation (CEC'2002), Vol. 2, New Jersey, IEEE Service Center, pp. 1145-1150.

[17] Marler R. T. and Arora J. S., (2004). Survey of multi-objective optimization methods for engineering, Struct. Multidisc. Optim., 26, 369-395.

[18] Osyczka A. and Kundu S., (1995). A genetic algorithm-based multicriteria optimization method, Proc. 1st World Congr. Struct. Multidisc. Optim., Elsevier Sciencce, pp. 909-914.

[19] Pavlyukevich I.: Levy flights, non-local search and simulated annealing, J. Computational Physics, 226, 2007, pp.1830-1844.

[20] Pham D. T. and Ghanbarzadeh A., (2007). Multi-Objective Optimisation using the Bees Algorithm, in: 3rd International Virtual Conference on Intelligent Production Machines and Systems (IPROMS 2007): Whittles, Dunbeath, Scotland, 2007

[21] Rangaiah G., Multi-objective Optimization: Techniques and Applications in Chemical Engineering, World Scientific Publishing, (2008).

[22] Ray L. and Liew K. M., (2002). A swarm metaphor for multiobjective design optimization, Eng. Opt., 34(2), 141-153.

[23] Reyes-Sierra M. and Coello C. A. C., (2006). Multi-objective particle swarm optimizers: A survey of the state-of-the-art, Int. J. Comput. Intelligence Res., 2(3), 287-308.

[24] Robic T. and Filipic B., DEMO: differential evolution for multiobjective optimization, in: EMO 2005 (eds. C. A. Coello Coello et al.), LNCS 3410, 520-533 (2005).

[25] Schaffer J.D., (1985). Multiple objective optimization with vector evaluated genetic algorithms, in: Proc. 1st Int. Conf. Genetic Aglorithms, pp. 93-100.

[26] Walker, M.: How flowers conquered the world, BBC Earth News, 10 July 2009. http://news.bbc.co.uk/earth/hi/earth_news/newsid_8143000/8143095.stm

[27] Waser, N.M., Flower constancy: definition, cause and measurement. The American Naturalist, 127(5), 1986, pp. 596-603.

[28] Xue F., Multi-objective differential evolution: theory and applications, PhD thesis, Rensselaer Polytechnic Institute, (2004).

[29] Yang, X. S., Engineering Optimization: An Introduction with Metaheuristic Applications, John Wiley and Sons, USA (2010).

[30] Yang, X. S., A new metaheuristic bat-inspired algorithm, in: Nature-Inspired Cooperative Strategies for Optimization (NICSO 2010) (Eds J. R. Gonzalez eta al.), SCI 284, 65-74 (2010).

[31] Yang, X. S., (2011). Bat algorithm for multi-objective optimisation, Int. J. Bio-Inspired Computation, 3(5), pp. 267-274.

[32] Yang, X. S. and Gandomi, A. H., (2012). Bat algorithm: a novel approach for global engineering optimization, Engineering Computations, 29(5), pp. 464-483.

[33] Yang, X. S., (2011). Review of meta-heuristics and generalised evolutionary walk algorithm, Int. J. Bio-Inspired Computation, 3(2), pp. 77-84.

[34] Yang, X. S. (2012), Flower pollination algorithm for global optimization, in: Unconventional Computation and Natural Computation, Lecture Notes in Computer Science, Vol. 7445, pp. 240-249.

[35] Zhang Q. F., Zhou A. M., Zhao S. Z., Suganthan P. N., Liu W., Tiwari S., (2009). Multiobjective optimization test instances for the CEC 2009 special session and competition, Technical Report CES-487, University of Essex, UK.

[36] Zhang Q. F. and Li H., (2007). MOEA/D: a multiobjective evolutionary algorithm based on decomposition, IEEE Trans. Evol. Comput., 11, 712-731 (2007).

[37] Zitzler E. and Thiele L., (1999). Multiobjective evolutonary algorithms: A comparative case study and the strength pareto approach, IEEE Evol. Comp., 3, 257-271.

[38] E. Zitzler, K. Deb, and L. Thiele, (2000). Comparison of multiobjective evolutionary algorithms: Empirical results, Evol. Comput., 8, pp. 173-195