1 Introduction

Nature ecosystem is a dynamic assemblage of organisms, interacting with each other and with the physical environment they live in. Today, the study of the relations between these elements has become an important research field since it is more and more related to economic issues in agriculture as well as to the protection of the environment. Nature ecosystems have also been the rich source of mechanisms for designing computational systems to solve difficult engineering and computer science problems. Modeling is an important tool for the comprehension of complex systems such as nature ecosystems and the model inspired from nature ecosystem is instantiated as an optimizer for numerical function and engineering optimization.

In this paper, we design a novel model inspired from growth behaviors of plant root system and the model is instantiated as a novel algorithm called “root growth algorithm” (RGA) for higher-dimensional numerical function optimization and simulation of plant root system. The main motivation of the proposed model is to make use of the main characteristics of plant root growth in the soil. In this work, to prove the approach is effective a comprehensive comparative study on the performances of well-known evolutionary and swarm-based algorithms for optimizing a set of numerical functions is presented. The other objective of the study is to simulate the interactive relationships between changing soil environment and the root growth. The results show that the root growth model is feasible and RGA is a powerful search and optimization approach.

This paper is structured as follows: Sect. 2 presents a brief overview of related work about computational root growth models and biologically inspired algorithms. Root growth model is presented in Sect. 3. Root system of plant is simulated in Sect. 4. In Sect. 5, experimental settings and experimental results are given. Finally, Sect. 6 concludes the paper.

2 Related work

Computational root growth models or “virtual root system of plant” are increasingly seen as a useful tool for comprehending complex relationships between gene function, plant physiology, root system development, and the resulting plant form. Therefore accurate root growth models for simulation of root–soil interactions are of major significance. In the field of modeling root system of plant, there already exists a variety of elaborate approaches (Gerwitz and Page 1974; Pages et al. 1989; White et al. 2005; Lynch 2007; Hodge 2009; Leitner et al. 2010). Simple spatial models of root growth and development have been available for a long time (Gerwitz and Page 1974). In Pages et al. (1989), a quantitative three-dimensional dynamic model of the root system architecture is presented. The model takes into account current observations on the morphogenesis of the maize root system. There is now considerable evidence linking root architecture with water and nutrient acquisition efficiency (White et al. 2005; Lynch 2007; Hodge 2009). The structure and dynamics of root system architecture, however, is complex, and architectural modelling has resulted from the need to incorporate space into models and to take account of the biophysical interactions taking place between roots and their environment. In Leitner et al. (2010), a dynamic root system growth model is proposed based on L-Systems. The modular approach is developed to root growth and architecture modelling with a special focus on soil root interactions. The approaches model root systems from different perspectives. However, the complexity of the root–soil system requires an accurate and detailed description not only of each subsystem, but also of their mutual linkage and influence.

In the past few decades, in pursuit of finding solution to the optimization problems many researchers have been drawing inspiration from the nature (Eberhart et al. 2001). A lot of such biologically inspired algorithms have been developed, such as a basic genetic algorithm (GA), particle swarm optimization (PSO), differential evolution (DE) and so on. The five components are included in a basic GA. They are a fitness evaluation unit, a random number generator and genetic operators for reproduction, crossover and mutation operations (Holland 1975). In PSO, a population of particles starts to move in search space by following the current optimum particles and changing the positions in order to find out the optimal solution. The positions of these particles refer to possible solutions of the function to be optimized. Evaluating the function by the particles’ positions provides the fitness values of those solutions (Kennedy and Eberhart 1995). The DE algorithm which is also a population-based algorithm is like genetic algorithms using the similar operators: crossover, mutation and selection. The main difference between them in constructing better solutions is that DE relies on mutation operation while genetic algorithm relies on crossover (Price and Storn 1995). There are still many other algorithms based on biology behaviors, such as evolutionary programming (EP) (Fogel et al. 1965), ant colony optimization (ACO) (Dorigo et al. 1991), artificial immune system (AIS) (De Castro and Von Zuben 1999), artificial bee colony (ABC) (Karaboga and Basturk 2008) and so on. The relationship between these biology behaviors and algorithms listed in Table 1. There are some improved hybrid approaches based on swarm intelligence for optimization. The hybrid FPSO + FGA approach that combines PSO and GA using fuzzy logic to integrate the results of both methods and for parameters tuning is a useful tool in solving complex optimization problems (Valdez et al. 2011). We should note that there are some algorithms based on plant growth theory for numerical function. Plant growth simulation algorithm (PGSA) is a powerful evolutionary algorithm simulating plant growth that has been proposed for solving the global optimization problem of integer programming (Tong et al. 2005). Another optimization algorithm, plant growth optimization (PGO) is presented on the basis of the plant growth characteristics including leaf growth, branching, phototropism and spatial occupancy (Cai et al. 2008). These algorithms with their stochastic means are well equipped to handle such problems. However, the algorithms inspired from plant root models are very few.

Table 1 The relationship between biology behaviors and algorithms

In this paper, we present a root growth model inspired from growth behaviors of plant root system. The model can be formulated as an optimization algorithm called RGA for higher-dimensional numerical function optimization and simulation of root growth patterns of plant. The two self-adaptive strategies in accordance with growth behaviours of root hairs are employed in RGA to improve the performance of the algorithm.

3 Proposed root growth model

3.1 Description for growth behaviors of root system

A plant begins from its seed and the growth of root is indispensable for plant growth. All roots of a plant can be seen as a system composed by a large number of root hairs and tips. At the end of the 1960s, Lindenmayer introduced Transformational-generative grammar into biology and developed a variant of a formal grammar, namely L-Systems, most famously used to model the growth processes of plant development. L-Systems are based on simple rewriting rules and branching rules and successfully make a formal description for the plant growth. We use L-Systems to describe growth behavior of root system as follows (Sheng and Lei 1995):

  1. (1)

    A seed germinates in the soil, partly becoming stems of plant above the earth’s surface. The other part grows down, becoming root system of plant. New root hairs grow from the root tips.

  2. (2)

    More new root hairs grow from the root tips of old root hairs. The behavior of root system which is repeated is called as branching of the root tips.

  3. (3)

    Most root hairs and root tips are similar to each other. The entire root system of plant has self-similar structure. The root system of each plant is composed of numerous root hairs and root tips with similar structure.

3.2 Plant morphology

The impact of roots and rhizosphere traits on plant resource efficiency is important. The uneven concentration of nutrients in the soil makes root hairs growing towards different directions. This characteristic of root growth relates to the morphogenesis model in biological theory. The formation of the model could be considered as a complex process that cells are differentiated and generate new spatial structure with a clear definition. When the rhizome of root system grows, three or four growing points with different rotation directions will be generated at each root tip. The rotation diversifies the growth direction of the root tip. Root tips from which root hairs germinate contain undifferentiated cells. These cells are considered as fluid bags in which there are homogeneous chemical constituents. One of chemical constituents is a version of the growth hormone, called as morphactin. The morphactin concentration is a parameter of the morphogenesis model. The parameter changes between 0 and l. The morphactin concentration determines whether cells start to divide. When cells start to divide, root hairs appear (Mainzer 1997).

With regard to the process of root growth, there have been the following conclusions in biology:

  1. (1)

    If root system of plant have more than one root tip, which root tips could germinate root hairs depends on their morphactin concentration. The probability of new root hairs germinating is higher from root tips with larger morphactin concentration than root tips with less ones.

  2. (2)

    The morphactin concentration in cells is not static, but depends on its surroundings, in other words, the spatial distribution of nutrients in the soil. After new root hairs germinate and grow, the morphactin concentration will be reallocated among new root tips in line with the new concentration of nutrients in the soil.

In order to simulate the above process, it is assumed that the sum of the morphactin concentration of is constant (considered as 1) in the morphactin state space of the multi-cellular closed system. If there are \(n\) root tips \(x_{i} \; (i=1, 2,\ldots , n)\) which are \(D\)-dimensional vectors, the morphactin concentration of any cell is defined as \(E_{i}\;(i=1, 2, \ldots , n)\). The morphactin concentration of each root tip can be expressed as:

$$\begin{aligned} E_{i} = \frac{{1/f\left( {x_{i} } \right) }}{{\sum \nolimits _{{i = 1}}^{n} {1/f\left( {x_{i} } \right) } }} \end{aligned}$$
(1)

where \(f \)(*) is objective function which represents the spatial distribution of nutrients in the soil. In expression (1), the morphactin concentration of each root tip is determined by the relative position of each point and environmental information (objective function value) at this position. Therefore, \(n\) root tips correspond to \(n\) morphactin concentration value. When new root hairs germinate, the morphactin concentration may be changed.

3.3 Branching of the root tips

Branching of the root tips in the root growth model proposed is important for the simulation and the instantiated algorithm. There are four rules for branching of the root as follow:

  1. (1)

    Plant growth begins from a seed.

  2. (2)

    In each cycle of growth process, some excellent root tips which have larger morphactin concentration values (The fitness values in the instantiated algorithm) are selected to branch.

  3. (3)

    The distance should not be close between the selected root tips in order to make spatial distribution of the root system wider and increase the diversity of the fitness values.

  4. (4)

    If the number of the root tips selected equals the predefined value, the loop of the selection process terminates.

The flowchart of the selection process of the root tips is showed in Fig. 1. In order to produce a new growing point from the old root tip in memory, the proposed model uses the following expression:

$$\begin{aligned} pg_{{lj}} = \left\{ {\begin{array}{l@{\quad }l} {x_{{ij}} + ({2 \times \delta _{{ij}} - 1})} &{} {j = k} \\ {x_{{ij}} } &{} {j \ne k} \\ \end{array}} \right. \end{aligned}$$
(2)

where \(k\in \{1, 2, \ldots , D\}\) are randomly chosen indexes and \(j\in \{1, 2, \ldots , D\}\). \(pg_{l}\;(i=1, 2, \ldots , S)\) are \(S\) new growing points. \(\delta _{ij}\) is a random number between [\(-\)1, 1].

Fig. 1
figure 1

The selection process of the root tips

3.4 Root hair growth

After new growing points are produced, root hairs begin to grow from these growing points. Root hair growth depends on its growth angle and growth length. The growth angle is a vector for measuring the growth direction of root hair. The growth angle of each root hair \(\varphi _{i}(i=~1, 2, \ldots , n)\) which is produced randomly can be expressed as:

$$\begin{aligned} ( {\phi _1,\phi _2,\ldots ,\phi _D })=rand( D) \end{aligned}$$
(3)
$$\begin{aligned} \varphi _i =\frac{( {\phi _1 ,\phi _2 ,\ldots ,\phi _D })}{\sqrt{\phi _{1}^2 +\phi _{2}^2 +\cdots +\phi _\mathrm{D}^2 } } \end{aligned}$$
(4)

The growth length of each root hair is defined as \(\delta _{i }\;(i=1, 2, \ldots , n)\) which is an important parameter in the root growth model. Some strategies of tuning the parameter can produce multiple versions of the root growth model. After growing, a new root tip is produced by the following expression:

$$\begin{aligned} x_i =x_i +\delta _i \varphi _i \end{aligned}$$
(5)

In order to simulate the trophotropism of root system, some rules are defined as follows:

  1. (1)

    If morphactin concentration (fitness) of a new root tip is better than old one in the same cycle \(t\), the root tip will continue to grow. A new root tip in the inner loop can be expressed as:

    $$\begin{aligned} x_i^t =x_i^t +\delta _i \varphi _i \end{aligned}$$
    (6)

    But the number of iterations in the inner loop is a predefined value. While the number of iterations in the inner loop equals a predefined value, the inner loop stops.

  2. (2)

    If morphactin concentration of a new root tip is worse than old one in the same cycle \(t\), the root tip will stop growing and \(t~=~t+1\). A new root tip can be expressed as:

    $$\begin{aligned} x_i^{t+1} =x_i^{t+1} +\delta _i \varphi _i \end{aligned}$$
    (7)

3.5 Root growth algorithm

The root growth model proposed is instantiated as RGA for simulation of root system of plant and higher-dimensional numerical function optimization. The threshold of the distance between root tips and the growth length of each root hair are important parameters for RGA. The flowchart of the RGA is presented in Fig. 2. The pseudocode for the RGA is listed in Table 2.

Fig. 2
figure 2

The flowchart of the RGA

4 Simulation of root system of plant

4.1 Simulating root–soil interaction

As the first stage of a comprehensive root growth model, the objective of the study was to simulate the interactive relationships between changing soil environment and the root growth. In the simulation, Ackley function is used as soil environment in computer. Ackley function is presented in Sect. 4.1 and the setting of the parameters is the same as one in Sect. 4.2. Figures 3 and 4 shows the simulation result of root–soil interaction. The color changes in the simulation of soil indicate the uneven distribution of nutrients in the soil. The root system is represented by points and a point represents a root tip. It is simulated successfully that the roots of plant grow towards the directions with the higher concentration of nutrients. It is also illustrated that RGA can obtain optimal solution for numerical function optimization in Figs. 3 and 4.

Table 2 Pseudocode for the RGA

4.2 Simulating self-adaptive growth of root hairs

The self-adaptive growth is a significant characteristic for the growth of plant root system. Simulating self-adaptive growth of root hairs is important for learning relationships between the nutrient concentration of the soil and the growth length of root hairs. The self-adaptive strategies in accordance with growth behaviours of root hairs can improve the performance of RGA. So the two self-adaptive strategies are proposed to optimize numerical functions and simulate self-adaptive growth of root hairs in this section.

Fig. 3
figure 3

The simulation of root–soil interaction

Fig. 4
figure 4

The contour chart of root–soil interaction

Rastrigin function is used as soil environment in computer. Rastrigin function is presented in Sect. 4.1 and the setting of the parameters is the same as one in Sect. 4.2. The growth length of each root hair \(\delta _{i}\;(i=1, 2, \ldots , n)\) is the master variable for self-adaptive growth of root hairs. The variable which is an important parameter in root growth model can produce multiple versions of the model and the proper tuning of the parameter can improve the result of the instantiated algorithm for optimization. The two strategies of self-adaptive growth are proposed as follows:

  1. (1)

    The growth length of all root hairs is the same when initialized. At set intervals of cycle times, root growth length decreases by the specific rate \(\alpha \). If the fitness value of a root tip is not changed at set intervals of cycle times, its root growth length increases by the specific rate \(\beta \). But root growth length cannot exceed its initial value after increasing. The pseudocode of the first strategy of self-adaptive growth is listed in Table 3. Figure 5 shows the simulation of the first self-adaptive growth strategy. A point represents the growth length of a root tip. The distribution of root tips to polarization is obvious after some generations. One part of root tips grow toward the direction with the best concentration of nutrients and the other part exploit more extensive region of the soil. The simulation indicates the trophotropism of root system and the relationship competition between root hairs. The roots of plant grow towards the directions with the higher concentration of nutrients, but if too many root hairs concentrated in the same area with the higher concentration of nutrients, some week root hairs leave the area. The simulation also shows the instantiated algorithm, RGA, for optimization can find the optimal solution. The variation of RGA with the first self-adaptive growth strategy is named as “RGA-\(\alpha \)”.

  2. (2)

    The growth length of all root hairs change as their fitness values change. The pseudocode and the formula of the second strategy of self-adaptive growth are listed in Table 4 in which \(\tau \) is a nonnegative number. Figure 6 shows the simulation of the second self-adaptive growth strategy. The roots of plant grow towards the same direction with the high concentration of nutrients. From the view point of the optimization, the second self-adaptive growth strategy can make all points moving toward the area with the largest fitness value and then these points move around back and forth for intensive search. So RGA using the strategy of self-adaptive growth can obtain better optimal solution easily and quickly. The variation of RGA with the second self-adaptive growth strategy is named as “RGA-\(\tau \)”.

Table 3 Pseudocode for the first self-adaptive growth strategy
Fig. 5
figure 5

The simulation of the first self-adaptive growth strategy

5 Numerical experiments for optimization

5.1 Benchmark functions

The set of benchmark functions contains eight functions that are commonly used in evolutionary computation literature (Krink et al. 2002; Shi and Ebrehart 1998; Shi and Eberhart 1999; Karaboga and Akay 2009) to show solution quality and convergence rate. The first four functions are unimodal problems and the remaining functions are multimodal. The functions are listed below. The dimensions, initialization ranges, global optimum, and the criterion of each function are listed in Table 5.

  1. (1)

    Sphere function

    $$\begin{aligned} f_1 (x)=\sum \limits _{i=1}^D {x_i^2 } \end{aligned}$$
    (8)
  2. (2)

    SumSquares function

    $$\begin{aligned} f_2 (x)=\sum \limits _{i=1}^D {ix_i^2} \end{aligned}$$
    (9)
  1. (3)

    Rosenbrock function

    $$\begin{aligned} f_3 (x)=\sum \limits _{i=1}^{D-1} {({100(x_{i}^2 -x_{i+1})^2+(1-x_i)^2})} \end{aligned}$$
    (10)
  2. (4)

    Schwefel 2.22 function

    $$\begin{aligned} f_4 (x)=\sum \limits _{i=1}^D {\left| {x_i } \right| } +\prod \limits _{i=1}^D {\left| {x_i } \right| } \end{aligned}$$
    (11)
  3. (5)

    Rastrigin function

    $$\begin{aligned} f_5 (x)=\sum \limits _{i=1}^D {( {x_{i}^2 -10\cos (2\pi x_i )+10})} \end{aligned}$$
    (12)
  4. (6)

    Schwefel function

    $$\begin{aligned} f_6 (x)=\sum \limits _{i=1}^D {-x_i \sin ( {\sqrt{\left| {x_i } \right| } })} \end{aligned}$$
    (13)
  5. (7)

    Ackley function

    $$\begin{aligned} f_7 (x)&= 20+e-20e^{\left( {-0.2\sqrt{\frac{1}{D}\sum \nolimits _{i=1}^D {x_{i}^2 } }}\right) }\nonumber \\&\quad -e^{\left( {\frac{1}{D}\sum \nolimits _{i=1}^D {\cos (2\pi x_i )} }\right) } \end{aligned}$$
    (14)
  6. (8)

    Griewank function

    $$\begin{aligned} f_8 (x)=\frac{1}{4{,}000}\left( {\sum \limits _{i=1}^D {x_i^2 } }\right) -\left( {\prod \limits _{i=1}^D {\cos \left( \frac{x_i }{\sqrt{i} }\right) } }\right) +1\nonumber \\ \end{aligned}$$
    (15)
Table 4 Pseudocode for the second self-adaptive growth strategy
Fig. 6
figure 6

The simulation of the second self-adaptive growth strategy

Table 5 Parameters of the benchmark functions

5.2 Settings

The proposed algorithm RGA with the two self-adaptive strategies come into being two variations, RGA-\(\alpha \) and RGA-\(\tau \). RGA-\(\alpha \) and RGA-\(\tau \) are compared with GA, DE and PSO and they are run in MATLAB 7 on a Personal Computer with a Pentium Dual Core 2.20 GHz processor and 1 GB memory.

For the experiments, the value of the common parameter, total evaluation number, used in each algorithm was chosen to be the same. Population size in GA, DE and PSO was 50. The maximal number of fitness function evaluations was 2,000,000 for all functions.

For GA, a binary coded standard GA were employed. The rate of single point crossover operation was 0.8. Mutation rate was 0.01. The selection method was stochastic uniform sampling technique. Generation gap is the proportion of the population to be replaced. Chosen generation gap value in experiments was 0.9. For DE, F was set to 0.5. Crossover rate was chosen to be 0.9 as recommended in Corne et al. (1999). For PSO, inertia weight was 0.6 and cognitive and social components were both set to 1.8 (Vesterstrom and Thomsen 2004).

The parameter settings of RGA-\(\alpha \) and RGA-\(\tau \) for simulation and optimization are listed in Table 6. All parameter values have been tested many times to obtain better simulation and optimal solution and then were used.

Table 6 Parameter setting of RGA-\(\alpha \) and RGA-\(\tau \)

5.3 Numerical results and comparison

The GA, DE, PSO RGA-\(\alpha \) and RGA-\(\tau \) algorithms are compared on eight functions with 30 and 45 dimensions described in the previous section and are listed in Table 5. Each of the experiments in this section was repeated 30 times. The mean values, the standard deviation, the minimum values and the maximum values produced by the algorithms have been recorded in Tables 7 and 8. The best values obtained by the five algorithms for each function are marked as bold. The mean best function value profiles are shown in Figs. 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21 and 22.

Table 7 Comparison of results with 30D obtained by GA, DE, PSO, RGA-\(\alpha \) and RGA-\(\tau \)
Table 8 Comparison of results with 45D obtained by GA, DE, PSO, RGA- \(\alpha \) and RGA-\(\tau \)

5.3.1 Analyzing numerical results with 30D

As shown in Table 7, RGA-\(\tau \) algorithm can obtain better performance than the other algorithms on Sphere, Rosenbrock, Schwefel 2.22, Rastrigin, and Griewank functions with 30D. PSO algorithm shows better performance on SumSquares and Ackley functions. GA and DE obtain better optimal solution on Schwefel function. RGA-\(\alpha \) can also obtain better performance on every function.

Fig. 7
figure 7

\(f_{1}\), Sphere with 30D

Fig. 8
figure 8

\(f_{2}\), SumSquares with 30D

Fig. 9
figure 9

\(f_{3}\), Rosenbrock with 30D

Fig. 10
figure 10

\(f_{4}\), Schwefel 2.22 with 30D

Fig. 11
figure 11

\(f_{5}\), Rastrigin with 30D

Fig. 12
figure 12

\(f_{6}\), Schwefel with 30D

Sphere and SumSquares function are two unimodal variable–separable functions. On the two functions, PSO and RGA-\(\tau \) obtained satisfying results. However, RGA-\(\tau \) algorithm showed the best performance on Sphere and the search performance order is RGA-\(\tau \) \(>\) PSO \(>\) RGA-\(\alpha \) \(>\) GA \(>\) DE. PSO algorithm shows the better performance on SumSquares and the search performance order is PSO \(>\) RGA-\(\tau \) \(>\) RGA-\(\alpha \) \(>\) GA \(>\) DE.

Fig. 13
figure 13

\(f_{7}\), Ackley with 30D

Fig. 14
figure 14

\(f_{8}\), Griewank with 30D

Fig. 15
figure 15

\(f_{1}\), Sphere with 45D

Fig. 16
figure 16

\(f_{2}\), SumSquares with 45D

Fig. 17
figure 17

\(f_{3}\), Rosenbrock with 45D

Fig. 18
figure 18

\(f_{4}\), Schwefel 2.22 with 45D

Fig. 19
figure 19

\(f_{5}\), Rastrigin with 45D

Fig. 20
figure 20

\(f_{6}\), Schwefel with 45D

Fig. 21
figure 21

\(f_{7}\), Ackley with 45D

Rosenbrock and Schwefel 2.22 functions are two unimodal non-separable functions. On the two functions, RGA-\(\tau \) algorithm showed the best performance. On Rosenbrock function, PSO was a little worse than RGA-\(\tau \). GA and DE cannot obtain better performance on this function. On Schwefel 2.22 function, PSO, RGA-\(\alpha \) and GA can also obtain better optimal solution. The search performance order on the two functions is RGA-\(\tau >\) PSO \(>\) RGA-\(\alpha >\) GA \(>\) DE.

Fig. 22
figure 22

\(f_{8}\), Griewank with 45D

Rastrigin and Schwefel functions are two multimodal variable–separable functions. As it can be seen in Fig. 11, the convergence profile of RGA-\(\tau \) was significantly better than the other four algorithms and PSO, DE, GA and RGA-\(\alpha \) also trapped in the local optimum soon on Rastrigin function. The search performance order on Rastrigin function is RGA-\(\tau >\) RGA-\(\alpha >\) PSO \(>\) GA \(>\) DE. On Schwefel, GA and DE show the better performance. The search performance order is GA \(>\) DE \(>\) RGA-\(\tau >\) RGA-\(\alpha >\) PSO.

Ackley and Griewank functions are two multimodal non-separable functions. On these two functions, the results obtained by RGA-\(\tau \) and PSO were significantly better than GA and DE, as shown in Figs. 13 and 14. RGA-\(\alpha \) can also obtain better results than GA and DE. On Ackley function, PSO showed a better converge performance than RGA-\(\tau \) and the search performance order is PSO \(>\) RGA-\(\tau >\) RGA-\(\alpha >\) GA \(>\) DE. But on Griewank function, RGA-\(\tau \) converged better. PSO algorithm converged fast at the beginning and trapped in the local optimum soon on Griewank function. The search performance order is RGA-\(\tau >\) PSO \(>\) RGA-\(\alpha >\) DE \(>\) GA.

5.3.2 Analyzing numerical results with 45D

As shown in Table 8, RGA-\(\tau \) algorithm can obtain better performance than the other algorithms on Sphere, Rosenbrock, Schwefel 2.22, Rastrigin, and Griewank functions with 45D. PSO algorithm shows better performance on SumSquares and Ackley functions. DE obtains the best optimal solution on Schwefel function. RGA-\(\alpha \) can also obtain better performance on most functions.

On Sphere and SumSquares function, both PSO and RGA-\(\tau \) obtained satisfying results. However, RGA-\(\tau \) algorithm showed the best performance on Sphere and the search performance order is RGA-\(\tau >\) PSO \(>\) RGA-\(\alpha >\) GA \(>\) DE. PSO algorithm shows the better performance on SumSquares and the search performance order is PSO \(>\) RGA-\(\tau >\) GA \(>\) DE \(>\) RGA-\(\alpha \).

On Rosenbrock and Schwefel 2.22 functions, RGA-\(\tau \) algorithm showed the best performance. On the two function, RGA-\(\tau \), GA and DE cannot obtain better performance on this function. The search performance order on the two functions is RGA-\(\tau >\) PSO \(>\) GA \(>\) RGA-\(\alpha >\) DE.

As it can be seen in Fig. 19, the convergence profile of RGA-\(\tau \) was significantly better than the other four algorithms and PSO, DE, GA and RGA-\(\alpha \) also trapped in the local optimum soon on Rastrigin function. The search performance order on Rastrigin function is RGA-\(\tau >\) PSO \(>\) GA \(>\) DE \(>\) RGA-\(\alpha \). On Schwefel, DE show the better performance. The search performance order is DE \(>\) RGA-\(\alpha >\) RGA-\(\tau >\) GA \(>\) PSO.

On Ackley and Griewank functions, the results obtained by RGA-\(\tau \) were significantly better than GA and DE, as shown in Figs. 21 and 22. PSO also obtains better results. RGA-\(\alpha \) can also obtain better results than GA and DE. On Ackley function, PSO showed a better converge performance than RGA-\(\tau \) and the search performance order is PSO \(>\) RGA-\(\tau >\) RGA-\(\alpha >\) GA \(>\) DE. But on Griewank function, RGA-\(\tau \) converged better. PSO algorithm converged fast at the beginning and trapped in the local optimum soon on Griewank function. The search performance order is RGA-\(\tau >\) PSO \(>\) RGA-\(\alpha >\) GA \(>\) DE.

Overall, RGA algorithm with the two self-adaptive strategies can obtain good performance on most functions with higher-dimension, especially on the unimodal non-separable function and the multimodal non-separable functions. RGA-\(\tau \) shows very good performance. The second self-adaptive strategy is matched with RGA better. So RGA based on root growth model is appropriate for higher dimensional numerical function optimization.

5.4 Parameter \(\tau \) Tuning

While solving a problem by an optimization algorithm, adjusting algorithm parameters have significant importance on the performance of the algorithm. A fine tuning of control parameters is required for most of the algorithms to obtain desired solutions (Table 9).

Table 9 Experimental results of RGA-\(\tau \) under varying \(\tau \) values

As listed Table 6, RGA employs some control parameters, but effect of only parameter \(\tau \) on the performance of RGA is analyzed in this paper. Because \(\tau \) is a characteristic parameter in the second self-adaptive growth strategy for RGA and appropriate values of parameter \(\tau \) can improve performance of RGA notably. In the experiment, the maximal number of fitness function evaluations was 2,000,000 for Sphere, SumSquares, Rosenbrock, Schwefel 2.22, Rastrigin, Ackley and Griewank functions and 200,000 for Schwefel function to make the figure of effect of \(\tau \) parameter clear. In tables reporting the experimental results, mean values and standard deviations of 20 runs are presented.

In the experiment, the values of parameter \(\tau \) are changed as 1, 50, 100, 500 and 1,000. Results of this experiment are reported on Table 8. Results in this table show that when other parameters are the same, different values of parameter \(\tau \) can make the results obtained by RGA distinct on the same function. Reason of this fact is that parameter \(\tau \) decides the growth length of root hairs which can make RGA exploring new regions better. But the performance of the algorithm on Schwefel function was not highly influenced by the increment in the value of parameter \(\tau \). The mean best function value profiles with different values of parameter \(\tau \) are shown in Figs. 23, 24, 25, 26, 27, 28, 29 and 30 which clearly demonstrate the results in Table 8. So parameter \(\tau \) has an important effect on RGA.

Fig. 23
figure 23

Effect of \(\tau \) parameter on Sphere function

Fig. 24
figure 24

Effect of \(\tau \) parameter on SumSquares function

Fig. 25
figure 25

Effect of \(\tau \) parameter on Rosenbrock function

Fig. 26
figure 26

Effect of \(\tau \) parameter on Schwefel 2.22 function

Fig. 27
figure 27

Effect of \(\tau \) parameter on Rastrigin function

Fig. 28
figure 28

Effect of \(\tau \) parameter on Schwefel function

Fig. 29
figure 29

Effect of \(\tau \) parameter on Ackley function

Fig. 30
figure 30

Effect of \(\tau \) parameter on Griewank function

6 Conclusion

In this paper, we present a root growth model based on root growth behaviours in the soil. By using this model as a computational metaphor, we propose a novel algorithm called RGA for simulation of plant root system and higher-dimensional numerical function optimization. For simulation, some root growth behaviours, root–soil interaction and self-adaptive growth of root hairs, are simulated. The characteristics of root growth are showed in the form of images. For optimization, numerical results obtained from the proposed algorithm have been compared with those obtained from GA, DE and PSO. It is seen from the comparison that RGA performs better than GA, DE and PSO. RGA can optimize higher-dimensional numerical function better.