The Scientific World Journal

The Scientific World Journal / 2015 / Article

Research Article | Open Access

Volume 2015 |Article ID 904364 | 16 pages |

A Seed-Based Plant Propagation Algorithm: The Feeding Station Model

Academic Editor: Xinyu Li
Received25 Dec 2014
Revised10 Feb 2015
Accepted10 Feb 2015
Published02 Mar 2015


The seasonal production of fruit and seeds is akin to opening a feeding station, such as a restaurant. Agents coming to feed on the fruit are like customers attending the restaurant; they arrive at a certain rate and get served at a certain rate following some appropriate processes. The same applies to birds and animals visiting and feeding on ripe fruit produced by plants such as the strawberry plant. This phenomenon underpins the seed dispersion of the plants. Modelling it as a queuing process results in a seed-based search/optimisation algorithm. This variant of the Plant Propagation Algorithm is described, analysed, tested on nontrivial problems, and compared with well established algorithms. The results are included.

1. Introduction

Plants have evolved a variety of ways to propagate. Propagation with seeds is perhaps the most common of them all and one which takes advantage of all sorts of agents ranging from wind to water, birds, and animals. In [1] a Plant Propagation Algorithm based on the way the strawberry plant propagates using runners has been introduced. Here, we consider the case where the strawberry plant uses seeds to propagate.

Plants rely heavily on the dispersion of their seeds to colonise new territories and to improve their survival [2, 3]. There are a lot of studies and models of seed dispersion particularly for trees [26]. Dispersion by wind and ballistic means is probably the most studied of all approaches [79]. However, in the case of the strawberry plant, given the way the seeds stick to the surface of the fruit (Figure 1(a)) [10], dispersion by wind or mechanical means is very limited. Animals, however, and birds in particular are the ideal agents for dispersion [2, 3, 11, 12] in this case.

There are many biologically inspired optimization algorithms in the literature [13, 14]. The Flower Pollination Algorithm (FPA) is inspired by the pollination of flowers through different agents [8]; the swarm data clustering algorithm is inspired by pollination by bees [15]; Particle Swarm Optimization (PSO) is inspired by the foraging behavior of groups of animals and insects [16, 17]; the Artificial Bee Colony (ABC) simulates the foraging behavior of honey bees [18, 19]; the Firefly algorithm is inspired by the flashing fireflies when trying to attract a mate [20, 21]; the Social Spider Optimization (SSO) algorithm is inspired by the cooperative behavior of social spiders [22]. The list could easily be extended.

The Plant Propagation Algorithm (PPA) also known as the strawberry algorithm was inspired by the way plants and specifically the strawberry plants propagate using runners [1, 23]. The attraction of PPA is that it can be implemented easily for all sorts of optimization problems. Moreover, it has few algorithm specific arbitrary parameters. It follows the principle that plants in good spots with plenty of nutrients will send many short runners. They send few long runners when in nutrient poor spots. With long runners PPA tries to explore the search space while short runners enable it to exploit the solution space well. In this paper, we investigate an alternative PPA which is entirely based on the propagation by seeds of the strawberry plant. Because of the periodic nature of fruit and seed production, it amounts to setting up a feeding station for the attention of potential seed-dispersing agents [24], Hence the feeding station model used here and the resulting Seed-Based Plant Propagation Algorithm or SbPPA.

SbPPA is tested on both unconstrained and constrained benchmark problems also used in [22, 29, 30]. Experimental results are presented in Tables 47 in terms of best, mean, worst, and standard deviation for all algorithms. The paper is organised as follows. In Section 2 we briefly introduce the feeding station model representing strawberry plants in fruit and the main characteristics of the paths followed by different agents that disperse the seeds. Section 3 presents the SbPPA in pseudocode form. The experimental settings, results, and convergence graphs for different problems are given in Section 4.

2. Aspects of the Feeding Station Model

Some animals and plants depend on each other to conserve their species [31]. Thus, many plants require, for effective seed dispersal, the visits of frugivorous birds or animals according to a certain distribution [2, 3, 32, 33].

Seed dispersal by different agents is also called “seed shadow” [32]; this shows the abundance of seeds spread globally or locally around parent plants. Here a queuing model is used which, in the context of a strawberry feeding station model, involves two parts:(1)the quantity of fruit or seeds available to agents which implies the rate at which the agents will visit the plants,(2)a probability density function that tells us about the service rate with which the agents are served by the plants.

The model estimates the quantity of seeds that is spread locally compared to that dispersed globally [3438]. There are two aspects that need to be balanced: exploitation, which is represented by the dispersal of seeds around the plants, and exploration which ensures that the search space is well covered.

Agents arrive at plants in a random process. Assume that at most one agent arrives to the plants in any unit of time (orderliness condition). It is further supposed that the probability of arrivals of agents to the plants remains the same for a particular period of time. This period corresponds to when the plants are in fruit and during which time the number of visitors is stable (stationarity condition). Furthermore, it is assumed that the arrival of one agent does not affect the rest of arrivals (independence).

With these assumptions in mind, the arrival of agents to plants follows a Poisson process [39, 40], which can be formally described as follows. Let be the random variable representing the number of arrivals per unit of time . Then, the probability of arrivals over is where denotes the mean arrival rate of agents per time unit . On the other hand, the time taken by agents in successfully eating fruit and leaving to disperse its seeds, in other words the service time for agents, is expressed by a random variable which follows the exponential probability distribution [41]. This can be expressed as follows: where is the average number of agents that can feed at time . Let us assume that the arrival rate of agents is less than the fruits available on all plants per unit of time; therefore .

We assume that the system is in steady state. Let denote the average number of agents in the strawberry field (some already eating and the rest waiting to feed) and the average number of agents waiting to get the chance to feed. If we denote the average number of agents eating fruits by , then by Little’s formula [42], we have

Since the plant needs to maximise dispersion, this is equivalent to having a large in (3). Therefore, from this equation, we need to solve the following problem: where , which represents the population size in the implementation. The simple limits on the variables are , . The optimum solution to this particular problem is , , and .

Frugivores may travel far away from the plants and hence will disperse the seeds far and wide. This feeding behaviour typically follows a Lévy distribution [4345]. In the following we present some basic facts about it.

2.1. Lévy Distribution

The Lévy distribution is a probability density distribution for random variables. Here the random variables represent the directions of flights of arbitrary birds. This function ranges over real numbers in the domain represented by the problem search space.

The flight lengths of the agents served by the plants follow a heavy tailed power law distribution [14], represented by where denotes the Lévy distribution with index . Lévy flights are unique arbitrary excursions whose step lengths are drawn from (5). An alternative form of Lévy distribution is [14] This implies that In terms of the Fourier transform [14], the limiting value of can be written as where is the Gamma function [46], defined by The steps are generated by Mantegna’s algorithm [14]. This algorithm ensures that the behaviour of Lévy flights is symmetric and stable as shown in Figure 3(b).

3. Strawberry Plant Propagation Algorithm: The Feeding Station Model

We assume that the arrival of different agents (birds and animals) to the plants to feed is according to the Poisson distribution [40]. As per the solution of problem (4), the mean arrival rate is , and is the size of the agents population. Let be the possible numbers of agents visiting the plants per unit time. With these assumptions the graphic representation of (1) results in Figure 2.

As already stated, it is essential in this algorithm to balance exploration and exploitation. To this end, we choose a threshold value of the Poisson probability that dictates how much exploration and exploitation are done during the search. The probability means that exploitation is covered. In this case, (10) below is used, which helps the algorithm to search locally: where denotes the rate of dispersion of the seeds locally, around SP;   and   are the coordinates of the seeds and , respectively; and are the lower and upper bounds defining the search space of the problem and . The indices   and   are mutually exclusive.

On the other hand, if then global dispersion of seeds becomes more prominent. This is implemented by using the following equation: where is a step drawn from the Lévy distribution [14] and is a random coordinate within the search space. Equations (10) and (11) perturb the current solution, the results of which can be seen in Figures 3(a) and 3(b), respectively.

As mentioned in Algorithm 1, we first collect the best solutions from the first trial runs to form a population of potentially good solutions denoted by . The convergence rate of SbPPA is shown in Figures 4 and 5 for different test problems used in our experiments (see Appendices). The statistics values best, worst, mean, and standard deviation are calculated based on .

(1) NP Population size, Counter of trial runs, Maximum experiments
(2) for  : MaxExp do
(3)  if    then
(4)    Create a random population of seeds ,
      using (12) and collect the best solutions from each trial run, in .
(5)    Evaluate the population .
(6)   end if
(7)   while    do
(8)    Use updated population .
(9)   end while
(10)  while (the stopping criteria is not satisfied) do
(11)   for   to   do
(12)    if  , then,             (Global or local seed dispersion)
(13)     for   to   do             ( is number of dimensions)
(14)      if  rand   then,              (PR = Perturbation Rate)
(15)       Update the current entry according to (11)
(16)      end if
(17)     end for
(18)    else
(19)     for   to   do
(20)      if  rand   then,
(21)       Update the current entry according to (10)
(22)       end if
(23)     end for
(24)    end if
(25)   end for
(26)   Update current best
(27)  end while
(28)  Return: Updated population and global best solution.
(29) end for

The seed-based propagation process of SP can be represented in the following steps.(1)The dispersal of seeds in the neighbourhood of the SP, as shown in Figure 1(e), is carried out either by fruits fallen from strawberry plants after they become ripe or by agents. The step lengths for this phase are calculated using (10).(2)Seeds are spread globally through agents, as shown in Figures 1(c) and 1(d). The step lengths for these travelling agents are drawn from the Lévy distribution [14].(3)The probabilities, , that a certain number of agents will arrive to SP to eat fruits and disperse it, is used as a balancing factor between exploration and exploitation.

For implementation purposes, we assume that each SP produces one fruit, and each fruit is assumed to have one seed; by a solution we mean the current position of the seed to be dispersed. The number of seeds in the population is denoted by . Initially we generate a random population of seeds using where is the coordinate of solution , and are the coordinates of the bounds describing the search space of the problem, and . This means that , , represents the position of the seed in population .

4. Experimental Settings and Discussion

In our experiments we tested SbPPA against some recently developed algorithms and some well established and standard ones. Our set of test problems includes benchmark constrained and unconstrained optimization problems [22, 30, 48, 49]. The results are compared in terms of statistics (best, worst, mean and standard deviation) for solutions obtained by SbPPA; ABC [18, 50]; PSO [51]; FF [21]; HPA [29]; SSO-C [22]; Classical Evolutionary Programming (CEP) [30]; and Fast Evolutionary Programming (FEP) [30]. The detailed descriptions of these problems are given in Appendices.

In Tables 4 and 7, the significance of results is shown in terms of win/tie/loss (see Table  2 in [52]) according to the following notations:(i)(+) when SbPPA is better;(ii)() when the results are approximately the same as those obtained with SbPPA;(iii)(−) when SbPPA is worse.Moreover, in Tables 5 and 6 the significance of results obtained with SbPPA is highlighted.

4.1. Parameter Settings

The parameter settings are given in Tables 13.

PSO [16, 29] ABC [18, 29] HPA [29] SbPPA [47]

SN = 100 Agents = 100 NP = 10
MCN = Iteration number = Iteration number =
MR = 0.8 PR = 0.8
Limit =
= Limit =

CEP [30, 53, 54] FEP [30] SbPPA

Population size Population size
Tournament size Tournament size = 10 PR = 0.8
) = 0.05

PSO [51] ABC [50] FF [21] SSO-C [22] SbPPA [47]

SN = 40 Fireflies = 25 NP = 10
MCN = 6000 Iteration number = 2000 Iteration number = 500 Iteration number = 800
MR = 0.8 PF = 0.7 PR = 0.8
Weight factors = 0.9 to 0.4

Fun. Dim Algorithm Best Worst Mean SD




SbPPA −1.031628−1.031628 −1.031628


10 ABC

30 ABC

30 ABC

30 ABC

30 ABC

Function number Algorithm Maximum generations Mean SD

CEP 2000

CEP 5000

CEP 20000

CEP 1500