**3. Case study 2: Chaos synthesis**

This part introduces the notion of chaos synthesis by means of evolutionary algorithms and develops a new method for chaotic systems synthesis, [13]. This method is similar to genetic programming and grammatical evolution and is being applied along with evolutionary algorithms: differential evolution, self-organizing migrating, genetic algorithm, simulated annealing and evolutionary strategies. The aim of this investigation is to synthesize new

#### 12 Name of the Book 80 Simulated Annealing – Single and Multiple Objective Problems Simulated Annealing in Research and Applications <sup>13</sup>

and simple chaotic systems based on some elements contained in a pre-selected existing chaotic system and a properly defined cost function. The investigation consists of two case studies based on the aforementioned evolutionary algorithms in various versions. For all algorithms, 100 simulations of chaos synthesis were repeated and then averaged to guarantee the reliability and robustness of the proposed method. The most significant results were carefully selected, visualized and commented on in this chapter.

More brief and simple description of above algorithmically defined cost function can be also

The input to this cost function is a synthesized function and the output is the fitness (quality) of the synthesized function (i.e., the individual in the population). In the cost function, it was tested twice to see if the behavior of the just-synthesized formula is really chaotic. The first test was done in step 2 (unique appearance in the data series) and the second one, in step 4,

The reason why in step 5) the sum of the non-unique data appearances was returned is based on the fact that the evolution is searching for minimal values. In this case, the value 2 means that some data element appears in the 500-data series twice, and 1 would means that there is

To make sure that the results so obtained are correct, all written synthesized functions were used for automatic generation of bifurcation diagrams and Lyapunov exponents, as further

SA algorithms have been applied 100 times in order to find artificially synthesized functions that can produce chaos. All of these experiments were done using the *Mathematica* software. The primary aim of this comparative study is not to show which algorithm is better or worse, but to show that symbolic regression is able to synthesize some new (at least in the sense of

Based on the results from experiments, two different sets of figures were created. The first set shows the performances of different algorithms from different points of view (see [13]), the second set (Figure 11 - Figure 14) shows behaviors of the selected synthesized programs, i.e., bifurcation diagrams. The synthesized programs are also appended to each figure in the form of the mathematical formula. Figure 15 shows an example of the so-called program length histogram, generated from 100 simulations. Program length (in *Mathematica* command: LeafCount, denoted as LC) means a number of elements that create a mathematical formula.

• **Result verification.** To be sure that the results as presented in the paper are correct, all written synthesized functions were used for automatic generation of bifurcation diagrams

• **Simulation results.** Based on the results (see selected Figures 11 - 14) and the selected bifurcation diagrams, it can be stated that all simulations give satisfactory results and that

• **Range of chaos and interval of observation.** During evolutions, chaos was searched by focusing on interval [0, 4], based on the a priori known behavior of the logistic equation

evolutionary synthesis of chaos is capable of solving this class of problems.

calculate *λ* for *Data*[ *fsynt*, 300, ... , *fsynt*, 500] , *i f λ* > 0 write all to file

(9)

Simulated Annealing in Research and Applications 81

*Data*[ *fsynt*, 1, ..., *fsynt*, 500] := *fsynt*, *<sup>k</sup>*+<sup>1</sup> = *fsynt*, *<sup>k</sup>*(*xstart*), *k* ∈ [1, 500]

*if Data*[ *fsynt*, 1] �= *Data*[ *fsynt*, 2] �= .... �= *Data*[ *fsynt*, 500]

no periodicity and thus synthesized system is possible candidate for chaos.

done as in Equation 9.

*then* �

*else* penalize individual

where the Lyapunov exponent was tested numerically [5].

mathematical description and behavior) chaotic systems.

As a summary, the following statements are presented: As a summary, the following statements are presented:

⎧ ⎨ ⎩

discussed below.

**3.2. Simulations and results**

and Lyapunov exponents.

Deterministic chaos, discovered by [21] is a fairly active area of research in the last few decades. The Lorenz system produces a well-known chaotic attractor in a simple three-dimensional autonomous system of ordinary differential equations, [21], [22]. For discrete chaos, there is another famous chaotic system, called the logistic equation [23], which was found based on a predator-prey model showing complex dynamical behaviors. These simple models are widely used in the study of chaos today, while other similar models exist (e.g., canonical logistic equation [24] and 1D or 2D coupled map lattices, [25]). To date, a large set of nonlinear systems that can produce chaotic behaviors have been observed and analyzed. Chaotic systems thus have become a vitally important part of science and engineering at the theoretical as well as practical levels of research. The most interesting and applicable notions are, for example, chaos control and chaos synchronization related to secure communications, amongst others.

The aim of the present investigation is to show that EA-based symbolic regression (i.e., handling with symbolic objects to create more complex structures) is capable of synthesizing chaotic behavior in the sense that mathematical descriptions of chaotic systems are synthesized symbolically by means of evolutionary algorithms. The ability of EAs to successfully solve this kind of black-box problems has been proven many times before (see, for example, [26], [27]), and is proven once again here in this paper.
