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

Authors: Muhammad Sulaiman; Abdellah Salhi
Journal: The Scientific World Journal
 (2015)

---

## Abstract

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.


---

## Body

## 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 [2–6]. Dispersion by wind and ballistic means is probably the most studied of all approaches [7–9]. 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.Strawberry plant propagation: through seed dispersion [25–28].
(a)
Strawberry fruit with seeds
(b)
Strawberry flower
(c)
A strawberry eaten by bird(s)
(d)
A bird eating strawberries
(e)
Strawberry plants showing runners and seeded fruitThere 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 4–7 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 [34–38]. 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 X′ be the random variable representing the number of arrivals per unit of time t. Then, the probability of k arrivals over t is
(1)PX′=k=λtke-λtk!,
where λ denotes the mean arrival rate of agents per time unit t. 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:
(2)St=μe-μt,
where μ is the average number of agents that can feed at time t. 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. LetA denote the average number of agents in the strawberry field (some already eating and the rest waiting to feed) and Aq 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
(3)A=Aq+λμ.Since the plant needs to maximise dispersion, this is equivalent to having a largeAq in (3). Therefore, from this equation, we need to solve the following problem:
(4)MaximizeAq=A-λμ,subjecttog1(λ,μ)=λ<μ+1,hhhhhhihhhhIhhhλ>0,μ>0,
where A=10, which represents the population size in the implementation. The simple limits on the variables are 0<λ, μ≤100. The optimum solution to this particular problem is λ=1.1, μ=0.1, and Aq=1.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 [43–45]. 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
(5)L(s)~s-1-β,
where L(s) denotes the Lévy distribution with index β∈(0,2). Lévy flights are unique arbitrary excursions whose step lengths are drawn from (5). An alternative form of Lévy distribution is [14]
(6)L(s,γ,μ)=γ2π1s-μ3/2·exp⁡-γ2s-μ,0<μ<s<∞,0,Otherwise.
This implies that
(7)lims→∞Ls,γ,μ≈γ2π1s3/2.
In terms of the Fourier transform [14], the limiting value of L(s) can be written as
(8)lims→∞L(s)=αβΓ(β)sin(πβ/2)πs1+β,
where Γ(β) is the Gamma function [46], defined by
(9)Γβ=∫0∞‍xβ-1e-xdx.
The steps L(s) 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).


## 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
(5)L(s)~s-1-β,
where L(s) denotes the Lévy distribution with index β∈(0,2). Lévy flights are unique arbitrary excursions whose step lengths are drawn from (5). An alternative form of Lévy distribution is [14]
(6)L(s,γ,μ)=γ2π1s-μ3/2·exp⁡-γ2s-μ,0<μ<s<∞,0,Otherwise.
This implies that
(7)lims→∞Ls,γ,μ≈γ2π1s3/2.
In terms of the Fourier transform [14], the limiting value of L(s) can be written as
(8)lims→∞L(s)=αβΓ(β)sin(πβ/2)πs1+β,
where Γ(β) is the Gamma function [46], defined by
(9)Γβ=∫0∞‍xβ-1e-xdx.
The steps L(s) 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 λ=1.1, and NP=10 is the size of the agents population. Let k=1,2,…,A be the possible numbers of agents visiting the plants per unit time. With these assumptions the graphic representation of (1) results in Figure 2.Figure 2
Distribution of agents arriving at strawberry plants to eat fruit and disperse seeds.Overall performance of SbPPA on Spring Design Problem.
(a)
Perturbations by  (10)
(b)
Perturbations by  (11)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 probabilityPoiss(λ)<0.05 means that exploitation is covered. In this case, (10) below is used, which helps the algorithm to search locally:
(10)xi,j*=xi,j+ξjxi,j-xl,jifPR≤0.8;j=1,2,…,n;iii,l=1,2,…,NP;i≠l,xi,j,Otherwise,
where PR denotes the rate of dispersion of the seeds locally, around SP; xi,j*  and  xi,j∈[ajbj] are the jth coordinates of the seeds Xi* and Xi, respectively; aj and bj are the jth lower and upper bounds defining the search space of the problem and ξj∈[-11]. The indices l  and  i are mutually exclusive.On the other hand, ifPoiss(λ)≥0.05 then global dispersion of seeds becomes more prominent. This is implemented by using the following equation:
(11)xi,j*=xi,j+Lixi,j-θjifPR≤0.8,θj∈ajbj,hhi=1,2,…,NP;hhj=1,2,…,n,xi,j,Otherwise,
where Li is a step drawn from the Lévy distribution [14] and θj 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 Algorithm1, we first collect the best solutions from the first NP trial runs to form a population of potentially good solutions denoted by popbest. 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 popbest.Algorithm 1:Seed-based Plant Propagation Algorithm (SbPPA) [47].
(1) NP← Population size, r← Counter of trial runs, MaxExp← Maximum experiments
(2)for  r=1: MaxExp do
(3)if  r≤NP  then
(4)    Create a random population of seedspop={Xi∣i=1,2,…,NP},
using (12) and collect the best solutions from each trial run, in popbest.
(5)    Evaluate the populationpop.
(6)end if
(7)while  r>NP  do
(8)     Use updated populationpopbest.
(9)end while
(10)while (the stopping criteria is not satisfied) do
(11)for  i=1 to NP  do
(12)if  Poiss(λ)i≥0.05, then,             ⊳ (Global or local seed dispersion)
(13)for  j=1 to n  do             ⊳ (n is number of dimensions)
(14)if  rand ≤PR  then,                 ⊳  (PR = Perturbation Rate)
(15)         Update the current entry according to (11)
(16)end if
(17)end for
(18)else
(19)for  j=1 to n  do
(20)if  rand ≤PR  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 forPerformance of SbPPA on unconstrained global optimization problems.
(a)
(b)
(c)
(d)
(e)
(f)Performance of SbPPA on constrained global optimization problems (see Appendices).
(a)
(b)
(c)
(d)
(e)
(f)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 Figure1(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 Figures1(c) and 1(d). The step lengths for these travelling agents are drawn from the Lévy distribution [14].(3)
The probabilities,Poiss(λ), that a certain number k 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 solutionXi we mean the current position of the ith seed to be dispersed. The number of seeds in the population is denoted by NP. Initially we generate a random population of NP seeds using
(12)xi,j=aj+bj-ajηj,j=1,…,n,
where xi,j∈[ajbj] is the jth coordinate of solution Xi, aj and bj are the jth coordinates of the bounds describing the search space of the problem, and ηj∈(01). This means that Xi=[xi,j], forj=1,…,n, represents the position of the jth seed in population pop.


## 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 Tables4 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 Tables1–3.Table 1
Parameters used for each algorithm for solving unconstrained global optimization problemsf1–f10. All experiments are repeated 30 times.
PSO [16, 29]
ABC [18, 29]
HPA [29]
SbPPA [47]
M
=
100
SN = 100
Agents = 100
NP = 10
G
max
⁡
=
(
Dimension
×
20,000
)
M
MCN =(Dimension×20,000)SN
Iteration number =(Dimension×20,000)Agents
Iteration number =(Dimension×20,000)NP
c
1
=
2
MR = 0.8
c
1
=
2
PR  =  0.8
c
2
=
2
Limit =(SN×dimension)2
c
2
=
2
Poiss
(
λ
)
=
0.05
W =  (Gmax⁡-iterationindex)Gmax⁡
—
Limit =(Agents×dimension)2
—
—
—
W =  (Iterationnumber-iterationindex)Iterationnumber
—Table 2
Experimental setup used for each algorithm for solving unconstrained global optimization problemsf11–f26. All experiments are repeated 50 times.
CEP [30, 53, 54]
FEP [30]
SbPPA
Population sizeμ=100
Population sizeμ=100
NP
=
10
Tournament sizeq=10
Tournament sizeq = 10
PR = 0.8
η
=
3.0
η
=
3.0
Poiss
(
λ) = 0.05Table 3
Parameters used for each algorithm for solving constrained optimization problems.  All experiments are repeated 30 times.
PSO [51]
ABC [50]
FF [21]
SSO-C [22]
SbPPA [47]
M
=
250
SN = 40
Fireflies = 25
N
=
50
NP = 10
G
max
⁡
=
300
MCN = 6000
Iteration number = 2000
Iteration number = 500
Iteration number = 800
c
1
=
2
MR = 0.8
q
=
1.5
PF = 0.7
PR = 0.8
c
2
=
2
—
α
=
0.001
—
Poiss
(
λ
)
=
0.05
Weight factors = 0.9 to 0.4
—
—
—
—Table 4
Results obtained by SbPPA, HPA, PSO, and ABC. All problems in  this table are unconstrained.
Fun.
Dim
Algorithm
Best
Worst
Mean
SD
f
1
4
ABC
(
+
)
0.0129
(
+
)
0.6106
(
+
)
0.1157
(
+
)
0.111
PSO
(
-
)
6.8991
E
-
08
(
+
)
0.0045
(
+
)
0.001
(
+
)
0.0013
HPA
(
+
)
2.0323
E
-
06
(
+
)
0.0456
(
+
)
0.009
(
+
)
0.0122
SbPPA
1.08
E
-
07
7.05
E
-
06
3.05
E
-
06
3.14
E
-
06
f
2
2
ABC
(
+
)
1.2452
E
-
08
(
+
)
8.4415
E
-
06
(
+
)
1.8978
E
-
06
(
+
)
1.8537
E
-
06
PSO
(
≈
)
0
(
≈
)
0
(
≈
)
0
(
≈
)
0
HPA
(
≈
)
0
(
≈
)
0
(
≈
)
0
(
≈
)
0
SbPPA
0
0
0
0
f
3
2
ABC
(
≈
)
0
(
+
)
4.8555
E
-
06
(
+
)
4.1307
E
-
07
(
+
)
1.2260
E
-
06
PSO
(
≈
)
0
(
+
)
3.5733
E
-
07
(
+
)
1.1911
E
-
08
(
+
)
6.4142
E
-
08
HPA
(
≈
)
0
(
≈
)
0
(
≈
)
0
(
≈
)
0
SbPPA
0
0
0
0
f
4
2
ABC
(
≈
)
-

1.03163
(
≈
)
-

1.03163
(
≈
)
-

1.03163
(
≈
)
0
PSO
(
≈
)
-

1.03163
(
≈
)
-

1.03163
(
≈
)
-

1.03163
(
≈
)
0
HPA
(
≈
)
-

1.03163
(
≈
)
-

1.03163
(
≈
)
-

1.03163
(
≈
)
0
SbPPA
−1.031628
−1.031628
−1.031628
0
f
5
6
ABC
(
≈
)
-

50.0000
(
≈
)
-

50.0000
(
≈
)
-

50.0000
(
-
)
0
PSO
(
≈
)
-

50.0000
(
≈
)
-

50.0000
(
≈
)
-

50.0000
(
-
)
0
HPA
(
≈
)
-

50.0000
(
≈
)
-

50.0000
(
≈
)
-

50.0000
(
-
)
0
SbPPA
-
50.0000
-
50.0000
-
50.0000
5.88
E
-
09
f
6
10
ABC
(
+
)
-

209.9929
(
+
)
-

209.8437
(
+
)
-

209.9471
(
+
)
0.044
PSO
(
≈
)
-

210.0000
(
≈
)
-

210.0000
(
≈
)
-

210.0000
(
-
)
0
HPA
(
≈
)
-

210.0000
(
≈
)
-

210.0000
(
≈
)
-

210.0000
(
+
)
1
SbPPA
-
210.0000
-
210.0000
-
210.0000
4.86
E
-
06
f
7
30
ABC
(
+
)
2.6055
E
-
16
(
+
)
5.5392
E
-
16
(
+
)
4.7403
E
-

16
(
+
)
9.2969
E
-
17
PSO
(
≈
)
0
(
≈
)
0
(
≈
)
0
(
≈
)
0
HPA
(
≈
)
0
(
≈
)
0
(
≈
)
0
(
≈
)
0
SbPPA
0
0
0
0
f
8
30
ABC
(
+
)
2.9407
E
-
16
(
+
)
5.5463
E
-
16
(
+
)
4.8909
E
-
16
(
+
)
9.0442
E
-
17
PSO
(
≈
)
0
(
≈
)
0
(
≈
)
0
(
≈
)
0
HPA
(
≈
)
0
(
≈
)
0
(
≈
)
0
(
≈
)
0
SbPPA
0
0
0
0
f
9
30
ABC
(
≈
)
0
(
+
)
1.1102
E
-
16
(
+
)
9.2519
E
-
17
(
+
)
4.1376
E
-
17
PSO
(
≈
)
0
(
+
)
1.1765
E
-
01
(
+
)
2.0633
E
-
02
(
+
)
2.3206
E
-
02
HPA
(
≈
)
0
(
≈
)
0
(
≈
)
0
(
≈
)
0
SbPPA
0
0
0
0
f
10
30
ABC
(
+
)
2.9310
E
-
14
(
+
)
3.9968
E
-
14
(
+
)
3.2744
E
-
14
(
+
)
2.5094
E
-
15
PSO
(
≈
)
7.9936
E
-
15
(
+
)
1.5099
E
-
14
(
+
)
8.5857
E
-
15
(
+
)
1.8536
E
-
15
HPA
(
≈
)
7.9936
E
-
15
(
+
)
1.5099
E
-
14
(
+
)
1.1309
E
-
14
(
+
)
3.54
E
-
15
SbPPA
7.994
E
-
15
7.99361
E
-
15
7.994
E
-
15
7.99361
E
-
15Table 5
Results obtained by SbPPA, CEP, and FEP. All problems in this table are unconstrained [30].
Function  number
Algorithm
Maximum   generations
Mean
SD
f
11
CEP
2000
2.60
E
-
03
1.70
E
-
04
FEP
8.10
E
-
03
7.70
E
-
04
SbPPA
9.45
E
-
13
4.08
E
-
12
f
12
CEP
5000
2
1.2
FEP
0.3
0.5
SbPPA
3.93
E
-
02
3.76
E
-
02
f
13
CEP
20000
6.17
13.61
FEP
5.06
5.87
SbPPA
1.86
E
+
01
2.25
E
+
00
f
14
CEP
1500
577.76
1125.76
FEP
0
0
SbPPA
0
0
f
15
CEP
3000
1.80
E
-
02
6.40
E
-
03
FEP
7.60
E
-
03
2.60
E
-
03
SbPPA
3.61
E
-
03
1.31
E
-
03
f
16
CEP
9000
-
7.92
E
+
03
6.35
E
+
02
FEP
-
1.26
E
+
04
5.26
E
+
01
SbPPA
-
1.16
E
+
04
6.04
E
+
01
f
17
CEP
5000
89
23.1
FEP
4.60
E
-
02
1.20
E
-
02
SbPPA
8.73
E
+
00
9.88
E
-
01
f
18
CEP
100
0.398
1.50
E
-
07
FEP
0.398
1.50
E
-
07
SbPPA
3.98
E
-
01
0Table 6
Results obtained by SbPPA, CEP, and FEP. All problems in this table are unconstrained [30].
Function  number
Algorithm
Maximum  generations
Mean
SD
f
19
CEP
100
3
0
FEP
3.02
0.11
SbPPA
3
3.05
E
-
15
f
20
CEP
100
-
3.86
E
+
00
1.40
E
-
02
FEP
-
3.86
E
+
00
1.40
E
-
05
SbPPA
-
3.86
E
+
00
2.75
E
-
15
f
21
CEP
200
-
3.28
E
+
00
5.80
E
-
02
FEP
-
3.27
E
+
00
5.90
E
-
02
SbPPA
-
3.32
E
+
00
2.91
E
-
14
f
22
CEP
100
-
6.86
E
+
00
2.67
E
+
00
FEP
-
5.52
E
+
00
1.59
E
+
00
SbPPA
-
1.02
E
+
01
4.30
E
-
09
f
23
CEP
100
-
8.27
2.95
FEP
-
5.52
2.12
SbPPA
-
1.04
E
+
01
7.73
E
-
09
f
24
CEP
100
-
9.1
2.92
FEP
-
6.57
3.14
SbPPA
-
1.05
E
+
01
1.03
E
-
07
f
25
CEP
100
1.66
1.19
FEP
1.22
0.56
SbPPA
9.98
E
-
01
1.13
E
-
16
f
26
CEP
4000
4.70
E
-
04
3.00
E
-
04
FEP
5.00
E
-
04
3.20
E
-
04
SbPPA
3.07
E
-
04
6.80
E
-
15Table 7
Results obtained by SbPPA, PSO, ABC, FF, and SSO-C. All problems in this table are standard constrained optimization problems.
Fun. name
Optimal
Algorithm
Best
Mean
Worst
SD
CP1
−15
PSO
(
≈
)
-

15
(
≈
)
-

15
(
≈
)
-

15
(
-
)
0
ABC
(
≈
)
-

15
(
≈
)
-

15
(
≈
)
-

15
(
-
)
0
FF
(
+
)
14.999
(
+
)
14.988
(
+
)
14.798
(
+
)
6.40
E
-
07
SSO-C
(
≈
)
-

15
(
≈
)
-

15
(
≈
)
-

15
(
-
)
0
SbPPA
-
15
-
15
-
15
1.95
E
-
15
CP2
-
30665.539
PSO
(
≈
)
-

30665.5
(
+
)
-

30662.8
(
+
)
-

30650.4
(
+
)
5.20
E
-
02
ABC
(
≈
)
-

30665.5
(
+
)
-

30664.9
(
+
)
-

30659.1
(
+
)
8.20
E
-
02
FF
(
≈
)
-

3.07
E
+
04
(
+
)
-

30662
(
+
)
-

30649
(
+
)
5.20
E
-
02
SSO-C
(
≈
)
-

3.07
E
+
04
(
≈
)
-

30665.5
(
+
)
-

30665.1
(
+
)
1.10
E
-
04
SbPPA
-
30665.5
-
30665.5
-
30665.5
2.21
E
-
06
CP3
-
6961.814
PSO
(
+
)
-

6.96
E
+
03
(
+
)
-

6958.37
(
+
)
-

6942.09
(
+
)
6.70
E
-
02
ABC
(
-
)
-

6961.81
(
+
)
-

6958.02
(
+
)
-

6955.34
(
-
)
2.10
E
-
02
FF
(
+
)
-

6959.99
(
+
)
-

6.95
E
+
03
(
+
)
-

6947.63
(
-
)
3.80
E
-
02
SSO-C
(
-
)
-

6961.81
(
+
)
-

6961.01
(
+
)
-

6960.92
(
-
)
1.10
E
-
03
SbPPA
-
6961.5
-
6961.38
-
6961.45
0.043637
CP4
24.306
PSO
(
-
)
24.327
(
+
)
2.45
E
+
01
(
+
)
24.843
(
+
)
1.32
E
-
01
ABC
(
+
)
24.48
(
+
)
2.66
E
+
01
(
+
)
28.4
(
+
)
1.14
FF
(
-
)
23.97
(
+
)
28.54
(
+
)
30.14
(
+
)
2.25
SSO-C
(
-
)
24.306
(
-
)
24.306
(
-
)
24.306
(
-
)
4.95
E
-
05
SbPPA
24.34442
24.37536
24.37021
0.012632
CP5
-
0.7499
PSO
(
≈
)
-

0.7499
(
+
)
-

0.749
(
+
)
-

0.7486
(
+
)
1.20
E
-
03
ABC
(
≈
)
-

0.7499
(
+
)
-

0.7495
(
+
)
-

0.749
(
+
)
1.67
E
-
03
FF
(
+
)
-

0.7497
(
+
)
-

0.7491
(
+
)
-

0.7479
(
+
)
1.50
E
-
03
SSO-C
(
≈
)
-

0.7499
(
≈
)
-

0.7499
(
≈
)
-

0.7499
(
-
)
4.10
E
-
09
SbPPA
0.7499
0.749901
0.7499
1.66
E
-
07
Spring Design Problem
Not known
PSO
(
+
)
0.012858
(
+
)
0.014863
(
+
)
0.019145
(
+
)
0.001262
ABC
(
≈
)
0.012665
(
+
)
0.012851
(
+
)
0.01321
(
+
)
0.000118
FF
(
≈
)
0.012665
(
+
)
0.012931
(
+
)
0.01342
(
+
)
0.001454
SSO-C
(
≈
)
0.012665
(
+
)
0.012765
(
+
)
0.012868
(
+
)
9.29
E
-
05
SbPPA
0.012665
0.012666
0.012666
3.39
E
-
10
Welded beam design problem
Not known
PSO
(
+
)
1.846408
(
+
)
2.011146
(
+
)
2.237389
(
+
)
0.108513
ABC
(
+
)
1.798173
(
+
)
2.167358
(
+
)
2.887044
(
+
)
0.254266
FF
(
+
)
1.724854
(
+
)
2.197401
(
+
)
2.931001
(
+
)
0.195264
SSO-C
(
≈
)
1.724852
(
+
)
1.746462
(
+
)
1.799332
(
+
)
0.02573
SbPPA
1.724852
1.724852
1.724852
4.06
E
-
08
Speed reducer design optimization
Not known
PSO
(
+
)
3044.453
(
+
)
3079.262
(
+
)
3177.515
(
+
)
26.21731
ABC
(
+
)
2996.116
(
+
)
2998.063
(
+
)
3002.756
(
+
)
6.354562
FF
(
+
)
2996.947
(
+
)
3000.005
(
+
)
3005.836
(
+
)
8.356535
SSO-C
(
≈
)
2996.113
(
≈
)
2996.113
(
≈
)
2996.113
(
+
)
1.34
E
-
12
SbPPA
2996.114
2996.114
2996.114
0


## 4.1. Parameter Settings

The parameter settings are given in Tables1–3.Table 1
Parameters used for each algorithm for solving unconstrained global optimization problemsf1–f10. All experiments are repeated 30 times.
PSO [16, 29]
ABC [18, 29]
HPA [29]
SbPPA [47]
M
=
100
SN = 100
Agents = 100
NP = 10
G
max
⁡
=
(
Dimension
×
20,000
)
M
MCN =(Dimension×20,000)SN
Iteration number =(Dimension×20,000)Agents
Iteration number =(Dimension×20,000)NP
c
1
=
2
MR = 0.8
c
1
=
2
PR  =  0.8
c
2
=
2
Limit =(SN×dimension)2
c
2
=
2
Poiss
(
λ
)
=
0.05
W =  (Gmax⁡-iterationindex)Gmax⁡
—
Limit =(Agents×dimension)2
—
—
—
W =  (Iterationnumber-iterationindex)Iterationnumber
—Table 2
Experimental setup used for each algorithm for solving unconstrained global optimization problemsf11–f26. All experiments are repeated 50 times.
CEP [30, 53, 54]
FEP [30]
SbPPA
Population sizeμ=100
Population sizeμ=100
NP
=
10
Tournament sizeq=10
Tournament sizeq = 10
PR = 0.8
η
=
3.0
η
=
3.0
Poiss
(
λ) = 0.05Table 3
Parameters used for each algorithm for solving constrained optimization problems.  All experiments are repeated 30 times.
PSO [51]
ABC [50]
FF [21]
SSO-C [22]
SbPPA [47]
M
=
250
SN = 40
Fireflies = 25
N
=
50
NP = 10
G
max
⁡
=
300
MCN = 6000
Iteration number = 2000
Iteration number = 500
Iteration number = 800
c
1
=
2
MR = 0.8
q
=
1.5
PF = 0.7
PR = 0.8
c
2
=
2
—
α
=
0.001
—
Poiss
(
λ
)
=
0.05
Weight factors = 0.9 to 0.4
—
—
—
—Table 4
Results obtained by SbPPA, HPA, PSO, and ABC. All problems in  this table are unconstrained.
Fun.
Dim
Algorithm
Best
Worst
Mean
SD
f
1
4
ABC
(
+
)
0.0129
(
+
)
0.6106
(
+
)
0.1157
(
+
)
0.111
PSO
(
-
)
6.8991
E
-
08
(
+
)
0.0045
(
+
)
0.001
(
+
)
0.0013
HPA
(
+
)
2.0323
E
-
06
(
+
)
0.0456
(
+
)
0.009
(
+
)
0.0122
SbPPA
1.08
E
-
07
7.05
E
-
06
3.05
E
-
06
3.14
E
-
06
f
2
2
ABC
(
+
)
1.2452
E
-
08
(
+
)
8.4415
E
-
06
(
+
)
1.8978
E
-
06
(
+
)
1.8537
E
-
06
PSO
(
≈
)
0
(
≈
)
0
(
≈
)
0
(
≈
)
0
HPA
(
≈
)
0
(
≈
)
0
(
≈
)
0
(
≈
)
0
SbPPA
0
0
0
0
f
3
2
ABC
(
≈
)
0
(
+
)
4.8555
E
-
06
(
+
)
4.1307
E
-
07
(
+
)
1.2260
E
-
06
PSO
(
≈
)
0
(
+
)
3.5733
E
-
07
(
+
)
1.1911
E
-
08
(
+
)
6.4142
E
-
08
HPA
(
≈
)
0
(
≈
)
0
(
≈
)
0
(
≈
)
0
SbPPA
0
0
0
0
f
4
2
ABC
(
≈
)
-

1.03163
(
≈
)
-

1.03163
(
≈
)
-

1.03163
(
≈
)
0
PSO
(
≈
)
-

1.03163
(
≈
)
-

1.03163
(
≈
)
-

1.03163
(
≈
)
0
HPA
(
≈
)
-

1.03163
(
≈
)
-

1.03163
(
≈
)
-

1.03163
(
≈
)
0
SbPPA
−1.031628
−1.031628
−1.031628
0
f
5
6
ABC
(
≈
)
-

50.0000
(
≈
)
-

50.0000
(
≈
)
-

50.0000
(
-
)
0
PSO
(
≈
)
-

50.0000
(
≈
)
-

50.0000
(
≈
)
-

50.0000
(
-
)
0
HPA
(
≈
)
-

50.0000
(
≈
)
-

50.0000
(
≈
)
-

50.0000
(
-
)
0
SbPPA
-
50.0000
-
50.0000
-
50.0000
5.88
E
-
09
f
6
10
ABC
(
+
)
-

209.9929
(
+
)
-

209.8437
(
+
)
-

209.9471
(
+
)
0.044
PSO
(
≈
)
-

210.0000
(
≈
)
-

210.0000
(
≈
)
-

210.0000
(
-
)
0
HPA
(
≈
)
-

210.0000
(
≈
)
-

210.0000
(
≈
)
-

210.0000
(
+
)
1
SbPPA
-
210.0000
-
210.0000
-
210.0000
4.86
E
-
06
f
7
30
ABC
(
+
)
2.6055
E
-
16
(
+
)
5.5392
E
-
16
(
+
)
4.7403
E
-

16
(
+
)
9.2969
E
-
17
PSO
(
≈
)
0
(
≈
)
0
(
≈
)
0
(
≈
)
0
HPA
(
≈
)
0
(
≈
)
0
(
≈
)
0
(
≈
)
0
SbPPA
0
0
0
0
f
8
30
ABC
(
+
)
2.9407
E
-
16
(
+
)
5.5463
E
-
16
(
+
)
4.8909
E
-
16
(
+
)
9.0442
E
-
17
PSO
(
≈
)
0
(
≈
)
0
(
≈
)
0
(
≈
)
0
HPA
(
≈
)
0
(
≈
)
0
(
≈
)
0
(
≈
)
0
SbPPA
0
0
0
0
f
9
30
ABC
(
≈
)
0
(
+
)
1.1102
E
-
16
(
+
)
9.2519
E
-
17
(
+
)
4.1376
E
-
17
PSO
(
≈
)
0
(
+
)
1.1765
E
-
01
(
+
)
2.0633
E
-
02
(
+
)
2.3206
E
-
02
HPA
(
≈
)
0
(
≈
)
0
(
≈
)
0
(
≈
)
0
SbPPA
0
0
0
0
f
10
30
ABC
(
+
)
2.9310
E
-
14
(
+
)
3.9968
E
-
14
(
+
)
3.2744
E
-
14
(
+
)
2.5094
E
-
15
PSO
(
≈
)
7.9936
E
-
15
(
+
)
1.5099
E
-
14
(
+
)
8.5857
E
-
15
(
+
)
1.8536
E
-
15
HPA
(
≈
)
7.9936
E
-
15
(
+
)
1.5099
E
-
14
(
+
)
1.1309
E
-
14
(
+
)
3.54
E
-
15
SbPPA
7.994
E
-
15
7.99361
E
-
15
7.994
E
-
15
7.99361
E
-
15Table 5
Results obtained by SbPPA, CEP, and FEP. All problems in this table are unconstrained [30].
Function  number
Algorithm
Maximum   generations
Mean
SD
f
11
CEP
2000
2.60
E
-
03
1.70
E
-
04
FEP
8.10
E
-
03
7.70
E
-
04
SbPPA
9.45
E
-
13
4.08
E
-
12
f
12
CEP
5000
2
1.2
FEP
0.3
0.5
SbPPA
3.93
E
-
02
3.76
E
-
02
f
13
CEP
20000
6.17
13.61
FEP
5.06
5.87
SbPPA
1.86
E
+
01
2.25
E
+
00
f
14
CEP
1500
577.76
1125.76
FEP
0
0
SbPPA
0
0
f
15
CEP
3000
1.80
E
-
02
6.40
E
-
03
FEP
7.60
E
-
03
2.60
E
-
03
SbPPA
3.61
E
-
03
1.31
E
-
03
f
16
CEP
9000
-
7.92
E
+
03
6.35
E
+
02
FEP
-
1.26
E
+
04
5.26
E
+
01
SbPPA
-
1.16
E
+
04
6.04
E
+
01
f
17
CEP
5000
89
23.1
FEP
4.60
E
-
02
1.20
E
-
02
SbPPA
8.73
E
+
00
9.88
E
-
01
f
18
CEP
100
0.398
1.50
E
-
07
FEP
0.398
1.50
E
-
07
SbPPA
3.98
E
-
01
0Table 6
Results obtained by SbPPA, CEP, and FEP. All problems in this table are unconstrained [30].
Function  number
Algorithm
Maximum  generations
Mean
SD
f
19
CEP
100
3
0
FEP
3.02
0.11
SbPPA
3
3.05
E
-
15
f
20
CEP
100
-
3.86
E
+
00
1.40
E
-
02
FEP
-
3.86
E
+
00
1.40
E
-
05
SbPPA
-
3.86
E
+
00
2.75
E
-
15
f
21
CEP
200
-
3.28
E
+
00
5.80
E
-
02
FEP
-
3.27
E
+
00
5.90
E
-
02
SbPPA
-
3.32
E
+
00
2.91
E
-
14
f
22
CEP
100
-
6.86
E
+
00
2.67
E
+
00
FEP
-
5.52
E
+
00
1.59
E
+
00
SbPPA
-
1.02
E
+
01
4.30
E
-
09
f
23
CEP
100
-
8.27
2.95
FEP
-
5.52
2.12
SbPPA
-
1.04
E
+
01
7.73
E
-
09
f
24
CEP
100
-
9.1
2.92
FEP
-
6.57
3.14
SbPPA
-
1.05
E
+
01
1.03
E
-
07
f
25
CEP
100
1.66
1.19
FEP
1.22
0.56
SbPPA
9.98
E
-
01
1.13
E
-
16
f
26
CEP
4000
4.70
E
-
04
3.00
E
-
04
FEP
5.00
E
-
04
3.20
E
-
04
SbPPA
3.07
E
-
04
6.80
E
-
15Table 7
Results obtained by SbPPA, PSO, ABC, FF, and SSO-C. All problems in this table are standard constrained optimization problems.
Fun. name
Optimal
Algorithm
Best
Mean
Worst
SD
CP1
−15
PSO
(
≈
)
-

15
(
≈
)
-

15
(
≈
)
-

15
(
-
)
0
ABC
(
≈
)
-

15
(
≈
)
-

15
(
≈
)
-

15
(
-
)
0
FF
(
+
)
14.999
(
+
)
14.988
(
+
)
14.798
(
+
)
6.40
E
-
07
SSO-C
(
≈
)
-

15
(
≈
)
-

15
(
≈
)
-

15
(
-
)
0
SbPPA
-
15
-
15
-
15
1.95
E
-
15
CP2
-
30665.539
PSO
(
≈
)
-

30665.5
(
+
)
-

30662.8
(
+
)
-

30650.4
(
+
)
5.20
E
-
02
ABC
(
≈
)
-

30665.5
(
+
)
-

30664.9
(
+
)
-

30659.1
(
+
)
8.20
E
-
02
FF
(
≈
)
-

3.07
E
+
04
(
+
)
-

30662
(
+
)
-

30649
(
+
)
5.20
E
-
02
SSO-C
(
≈
)
-

3.07
E
+
04
(
≈
)
-

30665.5
(
+
)
-

30665.1
(
+
)
1.10
E
-
04
SbPPA
-
30665.5
-
30665.5
-
30665.5
2.21
E
-
06
CP3
-
6961.814
PSO
(
+
)
-

6.96
E
+
03
(
+
)
-

6958.37
(
+
)
-

6942.09
(
+
)
6.70
E
-
02
ABC
(
-
)
-

6961.81
(
+
)
-

6958.02
(
+
)
-

6955.34
(
-
)
2.10
E
-
02
FF
(
+
)
-

6959.99
(
+
)
-

6.95
E
+
03
(
+
)
-

6947.63
(
-
)
3.80
E
-
02
SSO-C
(
-
)
-

6961.81
(
+
)
-

6961.01
(
+
)
-

6960.92
(
-
)
1.10
E
-
03
SbPPA
-
6961.5
-
6961.38
-
6961.45
0.043637
CP4
24.306
PSO
(
-
)
24.327
(
+
)
2.45
E
+
01
(
+
)
24.843
(
+
)
1.32
E
-
01
ABC
(
+
)
24.48
(
+
)
2.66
E
+
01
(
+
)
28.4
(
+
)
1.14
FF
(
-
)
23.97
(
+
)
28.54
(
+
)
30.14
(
+
)
2.25
SSO-C
(
-
)
24.306
(
-
)
24.306
(
-
)
24.306
(
-
)
4.95
E
-
05
SbPPA
24.34442
24.37536
24.37021
0.012632
CP5
-
0.7499
PSO
(
≈
)
-

0.7499
(
+
)
-

0.749
(
+
)
-

0.7486
(
+
)
1.20
E
-
03
ABC
(
≈
)
-

0.7499
(
+
)
-

0.7495
(
+
)
-

0.749
(
+
)
1.67
E
-
03
FF
(
+
)
-

0.7497
(
+
)
-

0.7491
(
+
)
-

0.7479
(
+
)
1.50
E
-
03
SSO-C
(
≈
)
-

0.7499
(
≈
)
-

0.7499
(
≈
)
-

0.7499
(
-
)
4.10
E
-
09
SbPPA
0.7499
0.749901
0.7499
1.66
E
-
07
Spring Design Problem
Not known
PSO
(
+
)
0.012858
(
+
)
0.014863
(
+
)
0.019145
(
+
)
0.001262
ABC
(
≈
)
0.012665
(
+
)
0.012851
(
+
)
0.01321
(
+
)
0.000118
FF
(
≈
)
0.012665
(
+
)
0.012931
(
+
)
0.01342
(
+
)
0.001454
SSO-C
(
≈
)
0.012665
(
+
)
0.012765
(
+
)
0.012868
(
+
)
9.29
E
-
05
SbPPA
0.012665
0.012666
0.012666
3.39
E
-
10
Welded beam design problem
Not known
PSO
(
+
)
1.846408
(
+
)
2.011146
(
+
)
2.237389
(
+
)
0.108513
ABC
(
+
)
1.798173
(
+
)
2.167358
(
+
)
2.887044
(
+
)
0.254266
FF
(
+
)
1.724854
(
+
)
2.197401
(
+
)
2.931001
(
+
)
0.195264
SSO-C
(
≈
)
1.724852
(
+
)
1.746462
(
+
)
1.799332
(
+
)
0.02573
SbPPA
1.724852
1.724852
1.724852
4.06
E
-
08
Speed reducer design optimization
Not known
PSO
(
+
)
3044.453
(
+
)
3079.262
(
+
)
3177.515
(
+
)
26.21731
ABC
(
+
)
2996.116
(
+
)
2998.063
(
+
)
3002.756
(
+
)
6.354562
FF
(
+
)
2996.947
(
+
)
3000.005
(
+
)
3005.836
(
+
)
8.356535
SSO-C
(
≈
)
2996.113
(
≈
)
2996.113
(
≈
)
2996.113
(
+
)
1.34
E
-
12
SbPPA
2996.114
2996.114
2996.114
0


## 5. Conclusion

In this paper, a new metaheuristic referred to as the Seed-Based Plant Propagation Algorithm (SbPPA) [47] has been proposed. Plants have evolved a variety of ways to propagate. Propagation through 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. The strawberry plant uses both runners and seeds to propagate. Here we consider the propagation through seeds that the strawberry plant has evolved, to design an efficient optimization algorithm.To capture the dispersal process, we adopt a queuing approach which, given the extent of fruit produced, indicates the extent of seeds dispersed and hence the effectiveness of the search/optimization algorithm based on this process. Looking at the random process of agents using the plants (feeding station) it is reasonable to assume that it is of the Poisson type. 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. To this end, we choose a threshold value of the Poisson probability that dictates how much exploration and exploitation are done during the search. An alternative strategy has been adopted here. This strategy consists in making sure that the initial population is as good as the user can afford it to be by using best solutions found so far. The effects of this strategy on convergence are shown through convergence plots of Figures4 and 5, for some of the solved problems. SbPPA is easy to implement as it requires less arbitrary parameter settings than other algorithms. The success rate of SbPPA increases as it gets its population of best solutions. It has been implemented for both unconstrained and constrained optimization problems. Its performance, compared to that of other algorithms, points to SbPPA as being superior.



---

*Source: 904364-2015-03-02.xml*