# Using Bat Algorithm with Levy Walk to Solve Directing Orbits of Chaotic Systems

Xingjuan Cai, Lei Wang, Zhihua Cui, Qi Kang

► To cite this version:

Xingjuan Cai, Lei Wang, Zhihua Cui, Qi Kang. Using Bat Algorithm with Levy Walk to Solve Directing Orbits of Chaotic Systems. 8th International Conference on Intelligent Information Processing (IIP), Oct 2014, Hangzhou, China. pp.11-19, 10.1007/978-3-662-44980-6_2 . hal-01383311

HAL Id: hal-01383311

https://inria.hal.science/hal-01383311

Submitted on 18 Oct 2016

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>
# Using Bat Algorithm with Levy Walk to Solve Directing Orbits of Chaotic Systems

Xingjuan Cai<fnref n="1" />,<fnref n="2" />, Lei Wang<fnref n="1" />, Zhihua Cui<fnref n="2" />, and
Qi Kang<fnref n="1" />

**Abstract.** Bat algorithm is a novel swarm intelligent version by simulating the bat seeking behavior. However, due to the poor exploitation, the performance is not well. Therefore, a new variant named bat algorithm with Gaussian walk is proposed in which the original uniform sample manner is replaced by one Gaussian sample. In this paper, we want to further investigate the performance with Levy sampling manner. To test its performance, three other variants of bat algorithms are employed to compare, simulation results show our modification is superior to other algorithms.

**Keywords:** Bat algorithm, Levy walk, chaotic system

## 1 Introduction

Bat algorithm (BA)[1] is novel swarm intelligent algorithm [2] inspired by the echolocation behavior of bats with varying pulse rates of emission and loudness. Due to the simple concepts and easy implementation, it has been applied to many areas successfully. Tsai et al. [3] proposed an improved EBA to solve numerical optimization problems. G. Wang et al. [4] incorporated the mutation operator into the methodology of BA. Bora et al. [5] applied BA to solve the brushless DC wheel motor problem. Recently, Gandomi and Yang introduced chaos into BA so as to increase its global search mobility for robust global optimization [6].

However, due to the poor exploitation, BA can not achieve good performance when dealing with multi-modal problems. To solve this problem, a novel variant which is called bat algorithm with Gaussian walk (BAGW)[7] is designed, simulation results show it is effective. In this paper, we provide one attempt to replace Gaussian walk with Levy walk because Levy sample can escape from local optima with more probability, furthermore, we apply this algorithm to solve the directing orbits of chaotic systems.

The rest of this paper was organized as follows: Section 2 provides a short introduction for the bat algorithm with Levy walk, as well as in section 3, our experiments are provided.

<footnote n="1">¹Department of Control Science and Engineering, Tongji University, 201804, China</footnote>

<footnote n="2">² Complex System and Computational Intelligence Laboratory, Taiyuan University of Science and Technology, 030024, China
E-mail: xingjuancai@gmail.com</footnote>
## 2 Bat Algorithm with Levy Walk

In BA with Levy walk, each bat is defined by its position $\vec{x}_i(t)$, velocity $\vec{v}_i(t)$, frequency $\vec{f}_i$, loudness $A_i(t)$, and the emission pulse rate $r_i(t)$ in a D-dimensional search space. The new solutions $\vec{x}_i(t+1)$ at time $t+1$ is given by

$$x_{ik}(t+1) = x_{ik}(t) + v_{ik}(t+1) \quad (1)$$

and the velocity $v_{ik}(t+1)$ is updated by

$$v_{ik}(t+1) = v_{ik}(t) + (x_{ik}(t) - p_k(t)) \cdot f_{ik} \quad (2)$$

where $\vec{p}(t)$ is the current global best location found by all bats in the past generations. Frequency $f_{ik}$ is dominated by:

$$f_{ik} = f_{min} + (f_{max} - f_{min}) \cdot \beta \quad (3)$$

where $\beta \in [0, 1]$ is a random number drawn from a uniform distribution, two parameters $f_{min}$ and $f_{max}$ are assigned to 0.0 and 2.0 in practical implementation, respectively.

To improve the exploitation capability, there exists one local search strategy for each bat, once a solution (e.g. $\vec{x}_j(t+1)$) is selected, it will be changed as with a random walk:

$$\vec{x}_j(t+1) = \vec{p}(t) + \eta\mu \quad (4)$$

where $\mu$ is a random number sampled with Levy distribution, $\eta$ is a parameter to control the size of the random influence. Generally, in the first period, $\eta$ assigns a large number to enhance the escaping probability from local optimum. as well as $\eta$ is a small value in the later period to improve the local search probability. From our experiments, the parameter $\eta$ is decreased from 0.8 to 0.001.

<figure><img src="image_2.png" /><figcaption>Fig. 1. Problem Illustration</figcaption></figure>

For those bats whose positions are changed with Eq.(4) in iteration $t$, then in iteration $t+1$, the position of them will be updated with Eq.(2). In this velocity
update equation, $x_{ik}(t) - p_k(t)$ is closely to zero because $\vec{x}_i(t)$ is located in the neighbor of $\vec{p}(t)$, therefore, if $\vec{v}_i(t)$ is large, then this local search pattern will be destroyed (please refer to Fig.1). Thus, in our modification, if the position $\vec{x}_i(t)$ is updated with Eq.(4), then the velocity update equation of bat i is changed as follows:

$$v_{ik}(t+1) = (x_{ik}(t) - p_k(t)) \cdot f_{ik} \quad (5)$$

while for other bats, the velocities are still updated by Eq.(2).

For bat j, the loudness $A_i(t+1)$ and the rate $r_i(t+1)$ of pulse emission are updated as follows:

$$A_i(t+1) = \alpha A_i(t) \quad (6)$$

$$r_i(t+1) = r_i(0)[1 - \exp(-\gamma t)] \quad (7)$$

In this paper, $r_i(0) = 0.3$, $\gamma = 0.9$, $\alpha = 0.95$, and for each bat i, $A_i(0) = 0.9$. All of them are coming from experiments.

### Algorithm 1 Bat Algorithm with Gaussian Walk

Objective function $f(\vec{x}) = (x_1, x_2, ..., x_D)^T$;

Initialize the parameters for each bat: position $\vec{x}_i(0)$, velocity $\vec{v}_i(0)$, loudness $\vec{A}_i(0)$, rate $\vec{r}_i(0)$ and repulse frequency $\vec{f}_i(0)$;

t=0;

while t<Largest iterations do

Update the velocity for each bat with Eq.(2) or Eq.(5);

Update the position for each bat with Eq.(1);

if rand < $\vec{r}_i(t)$ then

Re-update the position and velocity of bat j around the selected best solution $\vec{p}(t)$ with Eq.(4);

Accept the new solution $\vec{x}_i(t+1)$ and velocity $\vec{v}_i(t)$;

end if

if rand < $\vec{A}_i(t)$&$f(\vec{x}_i(t)) < f(\vec{p}(t))$ then

Increase $\vec{r}_i(t)$ with Eq.(7) and reduce $\vec{A}_i(t)$ with Eq.(6);

end if

Rank the bats and find the current best $\vec{p}(t)$;

t=t+1;

end while

Output the best solution $\vec{p}(t)$;

## 3 Application to Direct Orbits of Chaotic Systems

Directing orbits of chaotic systems is a multi-modal numerical optimization problem [8][9]. Consider the following discrete chaotic dynamical system:

$$\vec{x}(t+1) = \vec{f}(\vec{x}(t)), \quad t = 1, 2, ..., N \quad (8)$$
where state $\vec{x}(t) \in R^n$, $\vec{f}: R^n \to R^n$ is continuously differentiable.

Let $\vec{x}_0 \in R^n$ be an initial state of the system. If small perturbation $\vec{u}(t) \in R^n$ is added to the chaotic system, then

$$ \vec{x}(t+1) = \vec{f}(\vec{x}(t)) + \vec{u}(t), \quad t = 0, 2, \dots, N-1 \quad (9) $$

where $||\vec{u}(t)|| \le \mu$, $\mu$ is a positive real constant.

The goal is to determine suitable $\vec{u}(t)$ so as to make $\vec{x}(N)$ in the $\epsilon$-neighborhood of the target $\vec{x}(t)$, i.e., $||\vec{x}(N) - \vec{x}(t)|| < \epsilon$, where a local controller is effective for chaos control.

Generally, assuming that $\vec{u}(t)$ acts only on the first component of $\vec{f}$, then the problem can be re-formulated as follows:

$$ \begin{array}{l} \min ||\vec{x}(N) - \vec{x}(t)|| \text{ by choosing suitable } \vec{u}(t), \quad t=0,2,\dots,N-1 \\ \text{S.t.} \end{array} $$

$$ \begin{cases} x_1(t+1) = f_1(\vec{x}(t)) + \vec{u}(t) \\ x_j(t+1) = \vec{f}_j(\vec{x}(t)) \quad \text{j=2,3,\dots,n} \end{cases} \quad (10) $$

$$ |u(t)| \le \mu \quad (11) $$

$$ \vec{x}(0) = \vec{x}_0 \quad (12) $$

As a typical discrete chaotic system, Hénon Map is employed as an example in this paper. Hénon Map can be described as follows:

$$ \begin{cases} x_1(t+1) = -px_1^2(t) + x_2(t) + 1 \\ x_2(t+1) = qx_1(t) \end{cases} \quad (13) $$

where $p = 1.4$, $q = 0.3$.

The target $\vec{x}(t)$ is set to be a fixed point of the system $(0.63135, 0.18941)^T$, $\vec{x}_0 = (0, 0)^T$, and $\vec{u}(t)$ is only added to $\vec{x}_1$ with the bound $\mu = 0.01, 0.02$ and $0.03$. The population is 20, and the largest generation is 1000.

To test the performance of BAGW, the standard version of bat algorithm (SBA)[1], bat algorithm with chaotic frequency (CBA)[6], bat algorithm with mutation operator (BAM)[4] and our modified bat algorithm (MBA) are used to compare.

Under the different values of N, Table 1-3 and Figure 2-10 list the comparison of SBA, CBA, BAM and MBA. It is obviously MBA is better than other two algorithms significantly.

## 4 Conclusion

In this paper, a new variant of BA, bat algorithm with Levy walk, is applied to solve the directing orbits of chaotic systems. Simulation results show it is effective. Furthermore research topics include other applications.
<table><caption>**Table 1.** Statistics Performance with $\mu=0.01$</caption><thead><tr><th>N</th><th>Algorithm</th><th>Mean Value</th><th>Standard Deviation</th></tr></thead><tbody><tr><td rowspan="4">7</td><td>SBA</td><td>1.3507e-02</td><td>2.4871e-04</td></tr><tr><td>CBA</td><td>1.3574e-02</td><td>2.2013e-04</td></tr><tr><td>BAM</td><td>1.3500e-02</td><td>1.7893e-04</td></tr><tr><td>MBA</td><td>1.3432e-02</td><td>1.6884e-04</td></tr><tr><td rowspan="4">8</td><td>SBA</td><td>1.4627e-03</td><td>2.4469e-04</td></tr><tr><td>CBA</td><td>1.4435e-03</td><td>3.9140e-04</td></tr><tr><td>BAM</td><td>1.2050e-03</td><td>3.4073e-04</td></tr><tr><td>MBA</td><td>1.2487e-03</td><td>2.3760e-04</td></tr><tr><td rowspan="4">9</td><td>SBA</td><td>9.1685e-04</td><td>4.4396e-04</td></tr><tr><td>CBA</td><td>7.3079e-04</td><td>3.3920e-04</td></tr><tr><td>BAM</td><td>6.8183e-04</td><td>3.5905e-04</td></tr><tr><td>MBA</td><td>7.0345e-04</td><td>5.1549e-04</td></tr></tbody></table>

<table><caption>**Table 2.** Statistics Performance with $\mu=0.02$</caption><thead><tr><th>N</th><th>Algorithm</th><th>Mean Value</th><th>Standard Deviation</th></tr></thead><tbody><tr><td rowspan="4">7</td><td>SBA</td><td>1.1719e-02</td><td>3.0371e-04</td></tr><tr><td>CBA</td><td>1.1785e-02</td><td>3.3121e-04</td></tr><tr><td>BAM</td><td>1.1674e-02</td><td>3.0044e-04</td></tr><tr><td>MBA</td><td>1.1618e-02</td><td>3.4935e-04</td></tr><tr><td rowspan="4">8</td><td>SBA</td><td>6.7194e-04</td><td>3.7888e-04</td></tr><tr><td>CBA</td><td>5.3853e-04</td><td>2.1505e-04</td></tr><tr><td>BAM</td><td>4.3811e-04</td><td>3.2369e-04</td></tr><tr><td>MBA</td><td>4.2412e-04</td><td>2.8488e-04</td></tr><tr><td rowspan="4">9</td><td>SBA</td><td>7.8986e-04</td><td>3.0203e-04</td></tr><tr><td>CBA</td><td>6.9046e-04</td><td>3.2074e-04</td></tr><tr><td>BAM</td><td>6.2232e-04</td><td>3.4635e-04</td></tr><tr><td>MBA</td><td>5.4411e-04</td><td>3.8880e-04</td></tr></tbody></table>

<table><caption>**Table 3.** Statistics Performance with $\mu=0.03$</caption><thead><tr><th>N</th><th>Algorithm</th><th>Mean Value</th><th>Standard Deviation</th></tr></thead><tbody><tr><td rowspan="4">7</td><td>SBA</td><td>1.0274e-02</td><td>5.4125e-04</td></tr><tr><td>CBA</td><td>1.0065e-02</td><td>4.3152e-04</td></tr><tr><td>BAM</td><td>1.0060e-02</td><td>3.3370e-04</td></tr><tr><td>MBA</td><td>1.0016e-02</td><td>4.0748e-04</td></tr><tr><td rowspan="4">8</td><td>SBA</td><td>8.0668e-04</td><td>4.1823e-04</td></tr><tr><td>CBA</td><td>6.7150e-04</td><td>3.1692e-04</td></tr><tr><td>BAM</td><td>6.3732e-04</td><td>3.8370e-04</td></tr><tr><td>MBA</td><td>5.3046e-04</td><td>3.4043e-04</td></tr><tr><td rowspan="4">9</td><td>SBA</td><td>8.4733e-04</td><td>4.9613e-04</td></tr><tr><td>CBA</td><td>1.0249e-03</td><td>4.8139e-04</td></tr><tr><td>BAM</td><td>8.6568e-04</td><td>5.3757e-04</td></tr><tr><td>MBA</td><td>7.1709e-04</td><td>3.9151e-04</td></tr></tbody></table>
<figure><img src="image_3.png" /><figcaption>Fig. 2. Dynamic Performance with Error=0.01 and N=7</figcaption></figure>

<figure><img src="image_4.png" /><figcaption>Fig. 3. Dynamic Performance with Error=0.01 and N=8</figcaption></figure>
<figure><img src="image_5.png" /><figcaption>Fig. 4. Dynamic Performance with Error=0.01 and N=9</figcaption></figure>

<figure><img src="image_6.png" /><figcaption>Fig. 5. Dynamic Performance with Error=0.02 and N=7</figcaption></figure>
<figure><img src="image_7.png" /><figcaption>Fig. 6. Dynamic Performance with Error=0.02 and N=8</figcaption></figure>

<figure><img src="image_8.png" /><figcaption>Fig. 7. Dynamic Performance with Error=0.02 and N=9</figcaption></figure>
<figure><img src="image_9.png" /><figcaption>Fig. 8. Dynamic Performance with Error=0.03 and N=7</figcaption></figure>

<figure><img src="image_10.png" /><figcaption>Fig. 9. Dynamic Performance with Error=0.03 and N=8</figcaption></figure>
<figure><img src="image_11.png" /><figcaption>Fig. 10. Dynamic Performance with Error=0.03 and N=9</figcaption></figure>

ACKNOWLEDGMENT

This paper is supported by Natural Science Foundation of China (61003053, 71371142, 61005090), the Fundamental Research Funds for the Central Universities, the Research Fund of State Key Lab. of Management and Control for Complex Systems and the Program for the Innovative Talents of Higher Learning Institutions of Shanxi.

References

1. X. Yang and A. H. Gandomi: Bat algorithm: a novel approach for global engineering optimization, *Engineering Computation*, vol.29, pp.464-483 (2012)

2. R. S. Parpinelli, H.S. Lopes:New inspirations in swarm intelligence: a survey, *International Journal of Bio-inspired Computation*, Vol.3, No.1, pp.1-16 (2011)

3. P. W. Tsai, J. S. Pan, B. Y. Liao, M. J. Tsai and V. Istanda: Bat algorithm inspired algorithm for solving numerical optimization problems, *Applied Mechanics and Materials*, vol. 148-149, pp. 134-137(2011)

4. G. Wang, L. Guo, H. Duan, L. Liu, H. Wang: A bat algorithm with mutation for UCAV path planning, *The Scientific World Journal*, vol. 2012, Article ID 418946, 15 pages, doi:10.1100/2012/418946 (2012)

5. T. C. Bora, L.S. Coelho, and L. Lebensztajn: Bat-inspired optimization approach for the brushless DC wheel motor problem, *IEEE Transactions on Magnetics*, vol.48, no.2, pp.947-950 (2012)

6. A. H. Gandomi and X. S. Yang: Chaotic bat algorithm, *Journal of Computational Science*, vol.5, pp.224-232 (2014)

7. X. J. Cai, L. Wang, Q. Kang, and Q. D. Wu: Bat algorithm with Gaussian walk, *International Journal of Bio-inspired Computation*, vol.6, no.3, pp.166-174 (2014)

8. B. Liu, L. Wang, Y.H. Jin: Directing orbits of chaotic systems by particle swarm optimization, *Chaos Solitons & Fractals*, vol.29, pp.454-461 (2006)

9. L. Wang, L.L. Li, F. Tang: Directing orbits of chaotic dynamical systems using a hybrid optimization strategy, *Physical Letters A*, vol.324, pp.22-25 (2004)