1 % ****** Start of file chaos-paper.tex ******
6 numerical bibliography, %(default)
7 %jcp,% short, numerical bibliography,
16 \usepackage{graphicx}% Include figure files
17 \usepackage{dcolumn}% Align table columns on decimal point
18 \usepackage{bm}% bold math
21 \usepackage[mathlines]{lineno}% Enable numbering of text and display math
22 \linenumbers\relax % Commence numbering lines
23 % The amssymb package provides various useful mathematical symbols
25 % The amsthm package provides various useful mathematical fonts
27 % Various mathematical packages
28 \PassOptionsToPackage{cmex10draft}{graphics}
29 \usepackage[standard]{ntheorem}
31 \usepackage{stmaryrd} % llbracket
32 \usepackage{dsfont} % mathds
33 \usepackage{multirow} % tables
35 \newcommand{\ie}{\textit{i.e.}}
36 \newcommand{\Nats}[0]{\ensuremath{\mathds{N}}}
37 \newcommand{\R}[0]{\ensuremath{\mathds{R}}}
38 \newcommand{\Bool}[0]{\ensuremath{\mathds{B}}}
42 \title[Recurrent Neural Networks and Chaos]{Recurrent Neural Networks
43 and Chaos: Construction, Evaluation, \\
44 and Prediction Ability}
46 \author{Jacques M. Bahi}
47 \author{Jean-Fran\c{c}ois Couchot}
48 \author{Christophe Guyeux}
49 \email{christophe.guyeux@univ-fcomte.fr.}
50 \author{Michel Salomon}
51 \altaffiliation[Authors in ]{alphabetic order}
53 Computer Science Laboratory (LIFC), University of Franche-Comt\'e, \\
54 IUT de Belfort-Montb\'eliard, BP 527, \\
55 90016 Belfort Cedex, France
60 \newcommand{\CG}[1]{\begin{color}{red}\textit{#1}\end{color}}
64 Many research works deal with chaotic neural networks for various
65 fields of application. Unfortunately, up to now these networks are
66 usually claimed to be chaotic without any mathematical proof. The
67 purpose of this paper is to establish, based on a rigorous theoretical
68 framework, an equivalence between chaotic iterations according to the
69 Devaney's formulation of chaos and a particular class of neural
70 networks. On the one hand we show how to build such a network, on the
71 other hand we provide a method to check if a neural network is a
72 chaotic one. Finally, the ability of classical feedforward multilayer
73 perceptrons to learn sets of data obtained from a chaotic dynamical
74 system is regarded. Various Boolean functions are iterated on finite
75 states, some of them are proven to be chaotic as it is defined by
76 Devaney. In that context, important differences occur in the training
77 process, establishing with various neural networks that chaotic
78 behaviors are far more difficult to learn.
81 %%\pacs{Valid PACS appear here}% PACS, the Physics and Astronomy
82 % Classification Scheme.
83 %%\keywords{Suggested keywords}%Use showkeys class option if keyword
88 Chaotic neural networks have received a lot of attention due to the
89 appealing properties of deterministic chaos (unpredictability,
90 sensitivity, and so on). However, such networks are often claimed
91 chaotic without any rigorous mathematical proof. Therefore, in this
92 work a theoretical framework based on the Devaney's definition of
93 chaos is introduced. Starting with a relationship between chaotic
94 iterations and Devaney's chaos, we firstly show how to build a
95 recurrent neural networks that is equivalent to a chaotic map and
96 secondly a way to check whether an already available network, is
97 chaotic or not. We also study different topological properties of
98 these truly chaotic neural networks. Finally, we show that the
99 learning, with neural networks having a feedforward structure, of
100 chaotic behaviors represented by data sets obtained from chaotic maps,
101 is far more difficult than non chaotic behaviors.
105 \section{Introduction}
108 Several research works have proposed or used chaotic neural networks
109 these last years. This interest comes from their complex dynamics and
110 the various potential application areas. Chaotic neural networks are
111 particularly considered to build associative memories
112 \cite{Crook2007267} and digital security tools like hash functions
113 \cite{Xiao10}, digital watermarking \cite{1309431,Zhang2005759}, or
114 cipher schemes \cite{Lian20091296}. In the first case, the background
115 idea is to control chaotic dynamics in order to store patterns, with
116 the key advantage of offering a large storage capacity. For the
117 computer security field, the use of chaotic dynamics is motivated by
118 their unpredictability and random-like behaviors. Indeed,
119 investigating new concepts is crucial in this field, because new
120 threats are constantly emerging. As an illustrative example, the
121 former standard in hash functions, namely the SHA-1 algorithm, has
122 been recently weakened after flaws were discovered.
124 Chaotic neural networks have been built with different approaches. In
125 the context of associative memory, chaotic neurons like the nonlinear
126 dynamic state neuron \cite{Crook2007267} are frequently used to build
127 the network. These neurons have an inherent chaotic behavior, which is
128 usually assessed through the computation of the Lyapunov exponent. An
129 alternative approach is to consider a well-known neural network
130 architecture: the MultiLayer Perceptron. MLP networks are basically
131 used to model nonlinear relationships between data, due to their
132 universal approximator capacity. Thus, this kind of networks can be
133 trained to model a physical phenomenon known to be chaotic such as
134 Chua's circuit \cite{dalkiran10}. Sometimes, a neural network which
135 is build using transfer functions and initial conditions that are both
136 chaotic, is itself claimed to be chaotic
137 \cite{springerlink:10.1007/s00521-010-0432-2}.
139 What all of these chaotic neural networks have in common is that they
140 are claimed to be chaotic despite a lack of any rigorous mathematical
141 proof. The purpose of this paper is to fill this gap, using a
142 theoretical framework based on the Devaney's definition of chaos
143 \cite{Devaney}. This mathematical theory of chaos provides both
144 qualitative and quantitative tools to evaluate the complex behavior of
145 a dynamical system: ergodicity, expansivity, and so on. More
146 precisely, in this paper, which is an extension of a previous work
147 \cite{bgs11:ip}, we establish an equivalence between chaotic
148 iterations and a class of globally recurrent multilayer perceptrons.
149 We investigate the converse problem too, that is, the ability for
150 classical MultiLayer Perceptrons (MLP) to learn a particular family of
151 discrete chaotic dynamical systems. This family, called chaotic
152 iterations, is defined by a Boolean vector, an update function, and a
153 sequence giving the component to update at each iteration. It has
154 been previously established that such dynamical systems can behave
155 chaotically, as it is defined by Devaney, when the chosen function has
156 a strongly connected iterations graph. In this document, we will
157 experiment several MLPs and try to learn some iterations of this kind.
158 We will show that non-chaotic iterations can be learned, whereas it is
159 far more difficult for chaotic ones. That is to say, we have
160 discovered at least one family of problems with a reasonable size,
161 such that artificial neural networks should not be applied in the
162 presence of chaos, due to their inability to learn chaotic behaviors
165 The remainder of this research work is organized as follows. The next
166 section is devoted to the basics of chaotic iterations and Devaney's
167 chaos. Section~\ref{S2} formally describes how to build a neural
168 network that operates chaotically. The following two~sections are
169 devoted to the dual case: checking whether an existing neural network
170 is chaotic or not (Section \ref{S3}), and discussion on topological
171 properties of chaotic neural networks (Section~\ref{S4}). The
172 Section~\ref{section:translation} shows how to translate such
173 iterations into an Artificial Neural Network (ANN), in order to
174 evaluate the capability for this latter to learn chaotic behaviors.
175 This ability is studied in Sect.~\ref{section:experiments}, where
176 various ANNs try to learn two sets of data: the first one is obtained
177 by chaotic iterations while the second one results from a non-chaotic
178 system. Prediction success rates are given and discussed for the two
179 sets. The paper ends with a conclusion section where our contribution
180 is summed up and intended future work is exposed.
182 \section{Link between Chaotic Iterations and Devaney's Chaos}
184 In this section, the well-established notion of Devaney's mathematical
185 chaos is firstly presented. Preservation of the unpredictability of
186 such dynamical system when implemented on a computer is obtained by
187 using some discrete iterations called ``chaotic iterations'', which
188 are thus introduced. The result establishing the link between chaotic
189 iterations and Devaney's chaos is finally recalled at the end of this
192 In what follows and for any function $f$, $f^n$ means the composition
193 $f \circ f \circ \hdots \circ f$ ($n$ times).
195 \subsection{Devaney's chaotic dynamical systems}
197 Various domains such as physics, biology, or economy, contain systems
198 that exhibit a chaotic behavior, a well-known example is the weather.
199 These systems are in particular highly sensitive to initial
200 conditions, a concept usually presented as the butterfly effect: small
201 variations in the initial conditions possibly lead to widely different
202 behaviors. Theoretically speaking, a system is sensitive if for each
203 point $x$ in the iteration space, one can find a point in each
204 neighborhood of $x$ having a significantly different future evolution.
205 Conversely, a system seeded with the same initial conditions always
206 has the same evolution. In other words, chaotic systems have a
207 deterministic behavior defined through a physical or mathematical
208 model and a high sensitivity to the initial conditions. Besides
209 mathematically this kind of unpredictability is also referred to as
210 deterministic chaos. For example, many weather forecast models exist,
211 but they give only suitable predictions for about a week, because they
212 are initialized with conditions that reflect only a partial knowledge
213 of the current weather. Even if initially the differences are small,
214 they are amplified in the course of time, and thus make difficult a
215 long-term prediction. In fact, in a chaotic system, an approximation
216 of the current state is a quite useless indicator for predicting
219 From mathematical point of view, deterministic chaos has been
220 thoroughly studied these last decades, with different research works
221 that have provide various definitions of chaos. Among these
222 definitions, the one given by Devaney~\cite{Devaney} is well
223 established. This definition consists of three conditions:
224 topological transitivity, density of periodic points, and sensitive
225 point dependence on initial conditions.
227 Topological transitivity is checked when, for any point, any
228 neighborhood of its future evolution eventually overlap with any other
229 given region. More precisely,
231 \begin{definition} \label{def2}
232 A continuous function $f$ on a topological space $(\mathcal{X},\tau)$
233 is defined to be {\bf topologically transitive} if for any pair of
234 open sets $U$, $V \in \mathcal{X}$ there exists $k>0$ such that
235 $f^k(U) \cap V \neq \emptyset$.
238 This property implies that a dynamical system cannot be broken into
239 simpler subsystems. It is intrinsically complicated and cannot be
240 simplified. On the contrary, a dense set of periodic points is an
241 element of regularity that a chaotic dynamical system has to exhibit.
243 \begin{definition} \label{def3}
244 A point $x$ is called a {\bf periodic point} for $f$ of period~$n \in
245 \mathds{N}^{\ast}$ if $f^{n}(x)=x$.
248 \begin{definition} \label{def4}
249 $f$ is said to be {\bf regular} on $(\mathcal{X},\tau)$ if the set of
250 periodic points for $f$ is dense in $\mathcal{X}$ ($\forall x \in
251 \mathcal{X}$, we can find at least one periodic point in any of its
255 This regularity ``counteracts'' the effects of transitivity. Thus,
256 due to these two properties, two points close to each other can behave
257 in a completely different manner, leading to unpredictability for the
260 \begin{definition} \label{sensitivity}
261 $f$ has {\bf sensitive dependence on initial conditions} if there
262 exists $\delta >0$ such that, for any $x\in \mathcal{X}$ and any
263 neighborhood $V$ of $x$, there exist $y\in V$ and $n > 0$ such that
264 $d\left(f^{n}(x), f^{n}(y)\right) >\delta $. $\delta$ is called the
265 {\bf constant of sensitivity} of $f$.
270 \begin{definition} \label{def5}
271 $f$ is {\bf chaotic according to Devaney} on $(\mathcal{X},\tau)$ if
272 $f$ is regular, topologically transitive, and has sensitive
273 dependence to its initial conditions.
276 Let us notice that for a metric space the last condition follows from
277 the two first ones~\cite{Banks92}.
279 \subsection{Chaotic Iterations}
281 This section presents some basics on topological chaotic iterations.
282 Let us firstly discuss about the domain of iteration. As far as we
283 know, no result rules that the chaotic behavior of a function that has
284 been theoretically proven on $\R$ remains valid on the floating-point
285 numbers, which is the implementation domain. Thus, to avoid loss of
286 chaos this work presents an alternative, that is to iterate Boolean
287 maps: results that are theoretically obtained in that domain are
288 preserved in implementations.
290 Let us denote by $\llbracket a ; b \rrbracket$ the following interval
291 of integers: $\{a, a+1, \hdots, b\}$, where $a~<~b$. A {\it system}
292 under consideration iteratively modifies a collection of
293 $n$~components. Each component $i \in \llbracket 1; n \rrbracket$
294 takes its value $x_i$ among the domain $\Bool=\{0,1\}$. A~{\it
295 configuration} of the system at discrete time $t$ (also said at {\it
296 iteration} $t$) is the vector
298 $x^{t}=(x_1^{t},\ldots,x_{n}^{t}) \in \Bool^n$.
300 The dynamics of the system is described according to a function $f :
301 \Bool^n \rightarrow \Bool^n$ such that
303 $f(x)=(f_1(x),\ldots,f_n(x))$.
305 % Notice that $f^k$ denotes the
306 % $k-$th composition $f\circ \ldots \circ f$ of the function $f$.
308 Let be given a configuration $x$. In what follows
309 $N(i,x)=(x_1,\ldots,\overline{x_i},\ldots,x_n)$ is the configuration
310 obtained by switching the $i-$th component of $x$ ($\overline{x_i}$ is
311 indeed the negation of $x_i$). Intuitively, $x$ and $N(i,x)$ are
312 neighbors. The discrete iterations of $f$ are represented by the
313 oriented {\it graph of iterations} $\Gamma(f)$. In such a graph,
314 vertices are configurations of $\Bool^n$ and there is an arc labeled
315 $i$ from $x$ to $N(i,x)$ iff $f_i(x)$ is $N(i,x)$.
317 In the sequel, the {\it strategy} $S=(S^{t})^{t \in \Nats}$ is the
318 sequence defining the component to update at time $t$ and $S^{t}$
319 denotes its $t-$th term. We introduce the function $F_{f}$ that is
320 defined for any given application $f:\Bool^{n} \to \Bool^{n}$ by
321 $F_{f}: \llbracket1;n\rrbracket\times \mathds{B}^{n} \rightarrow
322 \mathds{B}^{n}$, s.t.
328 f_j(x) \textrm{ if } j= s \enspace , \\
329 x_{j} \textrm{ otherwise} \enspace .
334 \noindent With such a notation, configurations are defined for times
336 \begin{equation}\label{eq:sync}
337 \left\{\begin{array}{l}
338 x^{0}\in \mathds{B}^{n} \textrm{ and}\\
339 x^{t+1}=F_{f}(S^t,x^{t}) \enspace .
343 \noindent Finally, iterations defined in Eq.~(\ref{eq:sync}) can be
344 described by the following system:
348 X^{0} & = & ((S^t)^{t \in \Nats},x^0) \in
349 \llbracket1;n\rrbracket^\Nats \times \Bool^{n}\\
350 X^{k+1}& = & G_{f}(X^{k})\\
351 \multicolumn{3}{c}{\textrm{where } G_{f}\left(((S^t)^{t \in \Nats},x)\right)
352 = \left(\sigma((S^t)^{t \in \Nats}),F_{f}(S^0,x)\right) \enspace ,}
357 where $\sigma$ is the function that removes the first term of the
358 strategy ({\it i.e.},~$S^0$). This definition means that only one
359 component of the system is updated at an iteration: the $S^t$-th
360 element. But it can be extended by considering subsets for $S^t$.
362 Let us finally remark that, despite the use of the term {\it chaotic},
363 there is {\it priori} no connection between these iterations and the
364 mathematical theory of chaos presented previously.
366 \subsection{Chaotic Iterations and Devaney's Chaos}
368 In this subsection we recall the link we have established between
369 chaotic iterations and Devaney's chaos. The theoretical framework is
370 fully described in \cite{guyeux09}.
372 The {\bf distance} $d$ between two points $(S,x)$ and
373 $(\check{S},\check{x})\in \mathcal{X} = \llbracket1;n\rrbracket^\Nats
374 \times \Bool^{n}$ is defined by
376 d((S,x);(\check{S},\check{x}))=d_{e}(x,\check{x})+d_{s}(S,\check{S})
381 d_{e}(x,\check{x})=\sum_{j=1}^{n}\Delta
382 (x_{j},\check{x}_{j}) \in \llbracket 0 ; n \rrbracket
386 d_{s}(S,\check{S})=\frac{9}{2n}\sum_{t=0}^{\infty
387 }\frac{|S^{t}-\check{S}^{t}|}{10^{t+1}} \in [0 ; 1] \enspace .
390 This distance is defined to reflect the following
391 information. Firstly, the more two systems have different components,
392 the larger the distance between them. Secondly, two systems with
393 similar components and strategies, which have the same starting terms,
394 must induce only a small distance. The proposed distance fulfill
395 these requirements: on the one hand its floor value reflects the
396 difference between the cells, on the other hand its fractional part
397 measure the difference between the strategies.
399 The relation between $\Gamma(f)$ and $G_f$ is clear: there exists a
400 path from $x$ to $x'$ in $\Gamma(f)$ if and only if there exists a
401 strategy $s$ such that the parallel iteration of $G_f$ from the
402 initial point $(s,x)$ reaches the configuration $x'$. Using this
403 link, Guyeux~\cite{GuyeuxThese10} has proven that,
404 \begin{theorem}%[Characterization of $\mathcal{C}$]
405 \label{Th:Caracterisation des IC chaotiques}
406 Let $f:\Bool^n\to\Bool^n$. $G_f$ is chaotic (according to Devaney)
407 if and only if $\Gamma(f)$ is strongly connected.
410 Checking if a graph is strongly connected is not difficult. For
411 example, consider the function $f_1\left(x_1,\dots,x_n\right)=\left(
412 \overline{x_1},x_1,x_2,\dots,x_\mathsf{n}\right)$. As $\Gamma(f_1)$ is
413 obviously strongly connected, then $G_{f_1}$ is a chaotic map.
415 With this material, we are now able to build a first chaotic neural
416 network, as defined in the Devaney's formulation.
418 \section{A chaotic neural network in the sense of Devaney}
421 Let us firstly introduce the vectorial negation
422 $f_{0}(x_{1},\dots,x_{n}) =(\overline{x_{1}},\dots,\overline{x_{n}})$,
423 which is such that $\Gamma(f_0)$ is strongly connected. Considering
424 the map $F_{f_0}:\llbracket 1; n \rrbracket \times \mathds{B}^n \to
425 \mathds{B}^n$ associated to the vectorial negation, we can build a
426 multilayer perceptron neural network modeling $F_{f_0}$. Hence, for
427 all inputs $(s,x) \in \llbracket 1;n\rrbracket \times \mathds{B}^n$,
428 the output layer will produce $F_{f_0}(s,x)$. It is then possible to
429 link the output layer and the input one, in order to model the
430 dependence between two successive iterations. As a result we obtain a
431 global recurrent neural network that behaves as follows (see
432 Fig.~\ref{Fig:perceptron}).
435 \item The network is initialized with the input vector
436 $\left(S^0,x^0\right) \in \llbracket 1;n\rrbracket \times
437 \mathds{B}^n$ and computes the output vector
438 $x^1=F_{f_0}\left(S^0,x^0\right)$. This last vector is published as
439 an output one of the chaotic neural network and is sent back to the
440 input layer through the feedback links.
441 \item When the network is activated at the $t^{th}$ iteration, the
442 state of the system $x^t \in \mathds{B}^n$ received from the output
443 layer and the initial term of the sequence $(S^t)^{t \in \Nats}$
444 ($S^0 \in \llbracket 1;n\rrbracket$) are used to compute the new
445 output. This new output, which represents the new state of the
446 dynamical system, satisfies:
448 x^{t+1}=F_{f_0}(S^0, x^t) \in \mathds{B}^n \enspace .
454 \includegraphics[scale=0.625]{perceptron}
455 \caption{A perceptron equivalent to chaotic iterations}
456 \label{Fig:perceptron}
459 The behavior of the neural network is such that when the initial state
460 is $x^0~\in~\mathds{B}^n$ and a sequence $(S^t)^{t \in \Nats}$ is
461 given as outside input, then the sequence of successive published
462 output vectors $\left(x^t\right)^{t \in \mathds{N}^{\ast}}$ is exactly
463 the one produced by the chaotic iterations formally described in
464 Eq.~(\ref{eq:CIs}). It means that mathematically if we use similar
465 input vectors they both generate the same successive outputs
466 $\left(x^t\right)^{t \in \mathds{N}^{\ast}}$, and therefore that they
467 are equivalent reformulations of the iterations of $G_{f_0}$ in
468 $\mathcal{X}$. Finally, since the proposed neural network is build to
469 model the behavior of $G_{f_0}$, which is chaotic according to
470 Devaney's definition of chaos, we can conclude that the network is
471 also chaotic in this sense.
473 The previous construction scheme is not restricted to function $f_0$.
474 It can be extended to any function $f$ such that $G_f$ is a chaotic
475 map by training the network to model $F_{f}:\llbracket 1; n \rrbracket
476 \times \mathds{B}^n \to \mathds{B}^n$. Due to
477 Theorem~\ref{Th:Caracterisation des IC chaotiques}, we can find
478 alternative functions $f$ for $f_0$ through a simple check of their
479 graph of iterations $\Gamma(f)$. For example, we can build another
480 chaotic neural network by using $f_1$ instead of $f_0$.
482 \section{Checking if a neural network is chaotic or not}
485 We focus now on the case where a neural network is already available,
486 and for which we want to know if it is chaotic or not. Typically, in
487 many research papers neural network are usually claimed to be chaotic
488 without any convincing mathematical proof. We propose an approach to
489 overcome this drawback for a particular category of multilayer
490 perceptrons defined below, and for the Devaney's formulation of chaos.
491 In spite of this restriction, we think that this approach can be
492 extended to a large variety of neural networks. We plan to study a
493 generalization of this approach in a future work.
495 We consider a multilayer perceptron of the following form: as inputs
496 it has $n$ binary digits and one integer value, while it produces $n$
497 bits. Moreover, each binary output is connected with a feedback
498 connection to an input one.
501 \item At initialization, the network is feeded with $n$~bits denoted
502 $\left(x^0_1,\dots,x^0_n\right)$ and an integer value $S^0$ that
503 belongs to $\llbracket1;n\rrbracket$.
504 \item At iteration~$t$, the last output vector
505 $\left(x^t_1,\dots,x^t_n\right)$ defines the $n$~bits used to
506 compute the new output one $\left(x^{t+1}_1,\dots,x^{t+1}_n\right)$.
507 While the remaining input receives a new integer value $S^t \in
508 \llbracket1;n\rrbracket$, which is provided by the outside world.
511 The topological behavior of these particular neural networks can be
512 proven to be chaotic through the following process. Firstly, we denote
513 by $F: \llbracket 1;n \rrbracket \times \mathds{B}^n \rightarrow
514 \mathds{B}^n$ the function that maps the value
515 $\left(s,\left(x_1,\dots,x_n\right)\right) \in \llbracket 1;n
516 \rrbracket \times \mathds{B}^n$ into the value
517 $\left(y_1,\dots,y_n\right) \in \mathds{B}^n$, where
518 $\left(y_1,\dots,y_n\right)$ is the response of the neural network
519 after the initialization of its input layer with
520 $\left(s,\left(x_1,\dots, x_n\right)\right)$. Secondly, we define $f:
521 \mathds{B}^n \rightarrow \mathds{B}^n$ such that
522 $f\left(x_1,x_2,\dots,x_n\right)$ is equal to
524 \left(F\left(1,\left(x_1,x_2,\dots,x_n\right)\right),\dots,
525 F\left(n,\left(x_1,x_2,\dots,x_n\right)\right)\right) \enspace .
527 Then $F=F_f$ and this recurrent neural network produces exactly the
528 same output vectors, when feeding it with
529 $\left(x_1^0,\dots,x_n^0\right)$ and $S \in \llbracket 1;n
530 \rrbracket^{\mathds{N}}$, than chaotic iterations $F_f$ with initial
531 condition $\left(S,(x_1^0,\dots, x_n^0)\right) \in \llbracket 1;n
532 \rrbracket^{\mathds{N}} \times \mathds{B}^n$. In the rest of this
533 paper, we will call such multilayer perceptrons CI-MLP($f$), which
534 stands for ``Chaotic Iterations based MultiLayer Perceptron''.
536 Checking if CI-MLP($f$) behaves chaotically according to Devaney's
537 definition of chaos is simple: we need just to verify if the
538 associated graph of iterations $\Gamma(f)$ is strongly connected or
539 not. As an incidental consequence, we finally obtain an equivalence
540 between chaotic iterations and CI-MLP($f$). Therefore, we can
541 obviously study such multilayer perceptrons with mathematical tools
542 like topology to establish, for example, their convergence or,
543 contrarily, their unpredictable behavior. An example of such a study
544 is given in the next section.
546 \section{Topological properties of chaotic neural networks}
549 Let us first recall two fundamental definitions from the mathematical
552 \begin{definition} \label{def8}
553 A function $f$ is said to be {\bf expansive} if $\exists
554 \varepsilon>0$, $\forall x \neq y$, $\exists n \in \mathds{N}$ such
555 that $d\left(f^n(x),f^n(y)\right) \geq \varepsilon$.
558 \begin{definition} \label{def9}
559 A discrete dynamical system is said to be {\bf topologically mixing}
560 if and only if, for any pair of disjoint open sets $U$,$V \neq
561 \emptyset$, $n_0 \in \mathds{N}$ can be found such that $\forall n
562 \geq n_0$, $f^n(U) \cap V \neq \emptyset$.
565 As proven in Ref.~\cite{gfb10:ip}, chaotic iterations are expansive
566 and topologically mixing when $f$ is the vectorial negation $f_0$.
567 Consequently, these properties are inherited by the CI-MLP($f_0$)
568 recurrent neural network presented previously, which induce a greater
569 unpredictability. Any difference on the initial value of the input
570 layer is in particular magnified up to be equal to the expansivity
573 Now, what are the consequences for a neural network to be chaotic
574 according to Devaney's definition? First of all, the topological
575 transitivity property implies indecomposability.
577 \begin{definition} \label{def10}
578 A dynamical system $\left( \mathcal{X}, f\right)$ is {\bf
579 indecomposable} if it is not the union of two closed sets $A, B
580 \subset \mathcal{X}$ such that $f(A) \subset A, f(B) \subset B$.
583 \noindent Hence, reducing the set of outputs generated by CI-MLP($f$),
584 in order to simplify its complexity, is impossible if $\Gamma(f)$ is
585 strongly connected. Moreover, under this hypothesis CI-MLPs($f$) are
588 \begin{definition} \label{def11}
589 A dynamical system $\left( \mathcal{X}, f\right)$ is {\bf strongly
590 transitive} if $\forall x,y \in \mathcal{X}$, $\forall r>0$, $\exists
591 z \in \mathcal{X}$, $d(z,x)~\leq~r \Rightarrow \exists n \in
592 \mathds{N}^{\ast}$, $f^n(z)=y$.
594 According to this definition, for all pairs of points $(x, y)$ in the
595 phase space, a point $z$ can be found in the neighborhood of $x$ such
596 that one of its iterates $f^n(z)$ is $y$. Indeed, this result has been
597 established during the proof of the transitivity presented in
598 Ref.~\cite{guyeux09}. Among other things, the strong transitivity
599 leads to the fact that without the knowledge of the initial input
600 layer, all outputs are possible. Additionally, no point of the output
601 space can be discarded when studying CI-MLPs: this space is
602 intrinsically complicated and it cannot be decomposed or simplified.
604 Furthermore, those recurrent neural networks exhibit the instability
607 A dynamical system $\left( \mathcal{X}, f\right)$ is unstable if for
608 all $x \in \mathcal{X}$, the orbit $\gamma_x:n \in \mathds{N}
609 \longmapsto f^n(x)$ is unstable, that means: $\exists \varepsilon >
610 0$, $\forall \delta>0$, $\exists y \in \mathcal{X}$, $\exists n \in
611 \mathds{N}$, such that $d(x,y)<\delta$ and
612 $d\left(\gamma_x(n),\gamma_y(n)\right) \geq \varepsilon$.
614 This property, which is implied by the sensitive point dependence on
615 initial conditions, leads to the fact that in all neighborhoods of any
616 point $x$, there are points that can be apart by $\varepsilon$ in the
617 future through iterations of the CI-MLP($f$). Thus, we can claim that
618 the behavior of these MLPs is unstable when $\Gamma (f)$ is strongly
621 Let us now consider a compact metric space $(M, d)$ and $f: M
622 \rightarrow M$ a continuous map. For each natural number $n$, a new
623 metric $d_n$ is defined on $M$ by
624 $$d_n(x,y)=\max\{d(f^i(x),f^i(y)): 0\leq i<n\} \enspace .$$
626 Given any $\varepsilon > 0$ and $n \geqslant 1$, two points of $M$ are
627 $\varepsilon$-close with respect to this metric if their first $n$
628 iterates are $\varepsilon$-close.
630 This metric allows one to distinguish in a neighborhood of an orbit
631 the points that move away from each other during the iteration from
632 the points that travel together. A subset $E$ of $M$ is said to be
633 $(n, \varepsilon)$-separated if each pair of distinct points of $E$ is
634 at least $\varepsilon$ apart in the metric $d_n$. Denote by $H(n,
635 \varepsilon)$ the maximum cardinality of an $(n,
636 \varepsilon)$-separated set,
638 The {\it topological entropy} of the map $f$ is defined by (see e.g.,
639 Ref.~\cite{Adler65} or Ref.~\cite{Bowen})
640 $$h(f)=\lim_{\varepsilon\to 0} \left(\limsup_{n\to \infty}
641 \frac{1}{n}\log H(n,\varepsilon)\right) \enspace .$$
644 Then we have the following result \cite{GuyeuxThese10},
646 $\left( \mathcal{X},d\right)$ is compact and the topological entropy
647 of $(\mathcal{X},G_{f_0})$ is infinite.
650 We have explained how to construct truly chaotic neural networks, how
651 to check whether a given MLP is chaotic or not, and how to study its
652 topological behavior. The last thing to investigate, when comparing
653 neural networks and Devaney's chaos, is to determine whether
654 artificial neural networks are able to learn or predict some chaotic
655 behaviors, as it is defined in the Devaney's formulation (when they
656 are not specifically constructed for this purpose). This statement is
657 studied in the next section.
659 \section{Suitability of Artificial Neural Networks
660 for Predicting Chaotic Behaviors}
662 In the context of computer science different topic areas have an
663 interest in chaos, as for steganographic
664 techniques~\cite{1309431,Zhang2005759}. Steganography consists in
665 embedding a secret message within an ordinary one, while the secret
666 extraction takes place once at destination. The reverse ({\it i.e.},
667 automatically detecting the presence of hidden messages inside media)
668 is called steganalysis. Among the deployed strategies inside
669 detectors, there are support vectors
670 machines~\cite{Qiao:2009:SM:1704555.1704664}, neural
671 networks~\cite{10.1109/ICME.2003.1221665,10.1109/CIMSiM.2010.36}, and
672 Markov chains~\cite{Sullivan06steganalysisfor}. Most of these
673 detectors give quite good results and are rather competitive when
674 facing steganographic tools. However, to the best of our knowledge
675 none of the considered information hiding schemes fulfills the Devaney
676 definition of chaos~\cite{Devaney}. Indeed, one can wonder whether
677 detectors continue to give good results when facing truly chaotic
678 schemes. More generally, there remains the open problem of deciding
679 whether artificial intelligence is suitable for predicting topological
682 \subsection{Representing Chaotic Iterations for Neural Networks}
683 \label{section:translation}
685 The problem of deciding whether classical feedforward ANNs are
686 suitable to approximate topological chaotic iterations may then be
687 reduced to evaluate ANNs on iterations of functions with Strongly
688 Connected Component (SCC)~graph of iterations. To compare with
689 non-chaotic iterations, the experiments detailed in the following
690 sections are carried out using both kinds of function (chaotic and
691 non-chaotic). Let us emphasize on the difference between this kind of
692 neural networks and the Chaotic Iterations based MultiLayer
695 We are then left to compute two disjoint function sets that contain
696 either functions with topological chaos properties or not, depending
697 on the strong connectivity of their iteration graph. This can be
698 achieved for instance by removing a set of edges from the iteration
699 graph $\Gamma(f_0)$ of the vectorial negation function~$f_0$. One can
700 deduce whether a function verifies the topological chaos property or
701 not by checking the strong connectivity of the resulting graph of
704 For instance let us consider the functions $f$ and $g$ from $\Bool^4$
705 to $\Bool^4$ respectively defined by the following lists:
706 $$[0, 0, 2, 3, 13, 13, 6, 3, 8, 9, 10, 11, 8, 13, 14,
707 15]$$ $$\mbox{and } [11, 14, 13, 14, 11, 10, 1, 8, 7, 6, 5, 4, 3, 2,
708 1, 0] \enspace.$$ In other words, the image of $0011$ by $g$ is
709 $1110$: it is obtained as the binary value of the fourth element in
710 the second list (namely~14). It is not hard to verify that
711 $\Gamma(f)$ is not SCC (\textit{e.g.}, $f(1111)$ is $1111$) whereas
712 $\Gamma(g)$ is. Next section shows how to translate iterations of
713 such functions into a model amenable to be learned by an ANN.
715 This section presents how (not) chaotic iterations of $G_f$ are
716 translated into another model more suited to artificial neural
717 networks. Formally, input and output vectors are pairs~$((S^t)^{t \in
718 \Nats},x)$ and $\left(\sigma((S^t)^{t \in \Nats}),F_{f}(S^0,x)\right)$
719 as defined in~Eq.~(\ref{eq:Gf}).
721 Firstly, let us focus on how to memorize configurations. Two distinct
722 translations are proposed. In the first case, we take one input in
723 $\Bool$ per component; in the second case, configurations are
724 memorized as natural numbers. A coarse attempt to memorize
725 configuration as natural number could consist in labeling each
726 configuration with its translation into decimal numeral system.
727 However, such a representation induces too many changes between a
728 configuration labeled by a power of two and its direct previous
729 configuration: for instance, 16~(10000) and 15~(01111) are closed in a
730 decimal ordering, but their Hamming distance is 5. This is why Gray
731 codes~\cite{Gray47} have been preferred.
733 Secondly, how do we deal with strategies. Obviously, it is not
734 possible to translate in a finite way an infinite strategy, even if
735 both $(S^t)^{t \in \Nats}$ and $\sigma((S^t)^{t \in \Nats})$ belong to
736 $\{1,\ldots,n\}^{\Nats}$. Input strategies are then reduced to have a
737 length of size $l \in \llbracket 2,k\rrbracket$, where $k$ is a
738 parameter of the evaluation. Notice that $l$ is greater than or equal
739 to $2$ since we do not want the shift $\sigma$~function to return an
740 empty strategy. Strategies are memorized as natural numbers expressed
741 in base $n+1$. At each iteration, either none or one component is
742 modified (among the $n$ components) leading to a radix with $n+1$
743 entries. Finally, we give an other input, namely $m \in \llbracket
744 1,l-1\rrbracket$, which is the number of successive iterations that
745 are applied starting from $x$. Outputs are translated with the same
748 To address the complexity issue of the problem, let us compute the
749 size of the data set an ANN has to deal with. Each input vector of an
750 input-output pair is composed of a configuration~$x$, an excerpt $S$
751 of the strategy to iterate of size $l \in \llbracket 2, k\rrbracket$,
752 and a number $m \in \llbracket 1, l-1\rrbracket$ of iterations that
755 Firstly, there are $2^n$ configurations $x$, with $n^l$ strategies of
756 size $l$ for each of them. Secondly, for a given configuration there
757 are $\omega = 1 \times n^2 + 2 \times n^3 + \ldots+ (k-1) \times n^k$
758 ways of writing the pair $(m,S)$. Furthermore, it is not hard to
761 \displaystyle{(n-1) \times \omega = (k-1)\times n^{k+1} - \sum_{i=2}^k n^i} \nonumber
766 \dfrac{(k-1)\times n^{k+1}}{n-1} - \dfrac{n^{k+1}-n^2}{(n-1)^2} \enspace . \nonumber
768 \noindent And then, finally, the number of input-output pairs for our
771 2^n \times \left(\dfrac{(k-1)\times n^{k+1}}{n-1} - \dfrac{n^{k+1}-n^2}{(n-1)^2}\right) \enspace .
773 For instance, for $4$ binary components and a strategy of at most
774 $3$~terms we obtain 2304~input-output pairs.
776 \subsection{Experiments}
777 \label{section:experiments}
779 To study if chaotic iterations can be predicted, we choose to train
780 the MultiLayer Perceptron. As stated before, this kind of network is
781 in particular well-known for its universal approximation
782 property. Furthermore, MLPs have been already considered for chaotic
783 time series prediction. For example, in~\cite{dalkiran10} the authors
784 have shown that a feedforward MLP with two hidden layers, and trained
785 with Bayesian Regulation backpropagation, can learn successfully the
786 dynamics of Chua's circuit.
788 In these experimentations we consider MLPs having one hidden layer of
789 sigmoidal neurons and output neurons with a linear activation
790 function. They are trained using the Limited-memory
791 Broyden-Fletcher-Goldfarb-Shanno quasi-newton algorithm in combination
792 with the Wolfe linear search. The training process is performed until
793 a maximum number of epochs is reached. To prevent overfitting and to
794 estimate the generalization performance we use holdout validation by
795 splitting the data set into learning, validation, and test subsets.
796 These subsets are obtained through random selection such that their
797 respective size represents 65\%, 10\%, and 25\% of the whole data set.
799 Several neural networks are trained for both iterations coding
800 schemes. In both cases iterations have the following layout:
801 configurations of four components and strategies with at most three
802 terms. Thus, for the first coding scheme a data set pair is composed
803 of 6~inputs and 5~outputs, while for the second one it is respectively
804 3~inputs and 2~outputs. As noticed at the end of the previous section,
805 this leads to data sets that consist of 2304~pairs. The networks
806 differ in the size of the hidden layer and the maximum number of
807 training epochs. We remember that to evaluate the ability of neural
808 networks to predict a chaotic behavior for each coding scheme, the
809 trainings of two data sets, one of them describing chaotic iterations,
812 Thereafter we give, for the different learning setups and data sets,
813 the mean prediction success rate obtained for each output. These
814 values are computed considering 10~trainings with random subsets
815 construction, weights and biases initialization. Firstly, neural
816 networks having 10 and 25~hidden neurons are trained, with a maximum
817 number of epochs that takes its value in $\{125,250,500\}$ (see
818 Tables~\ref{tab1} and \ref{tab2}). Secondly, we refine the second
819 coding scheme by splitting the output vector such that each output is
820 learned by a specific neural network (Table~\ref{tab3}). In this last
821 case, we increase the size of the hidden layer up to 40~neurons, and
822 we consider larger number of epochs.
825 \caption{Prediction success rates for configurations expressed as boolean vectors.}
828 \begin{tabular}{|c|c||c|c|c|}
830 \multicolumn{5}{|c|}{Networks topology: 6~inputs, 5~outputs and one hidden layer} \\
833 \multicolumn{2}{|c||}{Hidden neurons} & \multicolumn{3}{c|}{10 neurons} \\
835 \multicolumn{2}{|c||}{Epochs} & 125 & 250 & 500 \\
837 \multirow{6}{*}{\rotatebox{90}{Chaotic}}&Output~(1) & 90.92\% & 91.75\% & 91.82\% \\
838 & Output~(2) & 69.32\% & 78.46\% & 82.15\% \\
839 & Output~(3) & 68.47\% & 78.49\% & 82.22\% \\
840 & Output~(4) & 91.53\% & 92.37\% & 93.4\% \\
841 & Config. & 36.10\% & 51.35\% & 56.85\% \\
842 & Strategy~(5) & 1.91\% & 3.38\% & 2.43\% \\
844 \multirow{6}{*}{\rotatebox{90}{Non-chaotic}}&Output~(1) & 97.64\% & 98.10\% & 98.20\% \\
845 & Output~(2) & 95.15\% & 95.39\% & 95.46\% \\
846 & Output~(3) & 100\% & 100\% & 100\% \\
847 & Output~(4) & 97.47\% & 97.90\% & 97.99\% \\
848 & Config. & 90.52\% & 91.59\% & 91.73\% \\
849 & Strategy~(5) & 3.41\% & 3.40\% & 3.47\% \\
852 \multicolumn{2}{|c||}{Hidden neurons} & \multicolumn{3}{c|}{25 neurons} \\ %& \multicolumn{3}{|c|}{40 neurons} \\
854 \multicolumn{2}{|c||}{Epochs} & 125 & 250 & 500 \\ %& 125 & 250 & 500 \\
856 \multirow{6}{*}{\rotatebox{90}{Chaotic}}&Output~(1) & 91.65\% & 92.69\% & 93.93\% \\ %& 91.94\% & 92.89\% & 94.00\% \\
857 & Output~(2) & 72.06\% & 88.46\% & 90.5\% \\ %& 74.97\% & 89.83\% & 91.14\% \\
858 & Output~(3) & 79.19\% & 89.83\% & 91.59\% \\ %& 76.69\% & 89.58\% & 91.84\% \\
859 & Output~(4) & 91.61\% & 92.34\% & 93.47\% \\% & 82.77\% & 92.93\% & 93.48\% \\
860 & Config. & 48.82\% & 67.80\% & 70.97\% \\%& 49.46\% & 68.94\% & 71.11\% \\
861 & Strategy~(5) & 2.62\% & 3.43\% & 3.78\% \\% & 3.10\% & 3.10\% & 3.03\% \\
863 \multirow{6}{*}{\rotatebox{90}{Non-chaotic}}&Output~(1) & 97.87\% & 97.99\% & 98.03\% \\ %& 98.16\% \\
864 & Output~(2) & 95.46\% & 95.84\% & 96.75\% \\ % & 97.4\% \\
865 & Output~(3) & 100\% & 100\% & 100\% \\%& 100\% \\
866 & Output~(4) & 97.77\% & 97.82\% & 98.06\% \\%& 98.31\% \\
867 & Config. & 91.36\% & 91.99\% & 93.03\% \\%& 93.98\% \\
868 & Strategy~(5) & 3.37\% & 3.44\% & 3.29\% \\%& 3.23\% \\
874 Table~\ref{tab1} presents the rates obtained for the first coding
875 scheme. For the chaotic data, it can be seen that as expected
876 configuration prediction becomes better when the number of hidden
877 neurons and maximum epochs increases: an improvement by a factor two
878 is observed (from 36.10\% for 10~neurons and 125~epochs to 70.97\% for
879 25~neurons and 500~epochs). We also notice that the learning of
880 outputs~(2) and~(3) is more difficult. Conversely, for the
881 non-chaotic case the simplest training setup is enough to predict
882 configurations. For all network topologies and all outputs the
883 obtained results for the non-chaotic case outperform the chaotic
884 ones. Finally, the rates for the strategies show that the different
885 networks are unable to learn them.
887 For the second coding scheme, Table~\ref{tab2} shows that any network
888 learns about five times more non-chaotic configurations than chaotic
889 ones. As in the previous scheme, the strategies cannot be predicted.
891 Let us now compare the two coding schemes. Firstly, the second scheme
892 disturbs the learning process. In fact in this scheme the
893 configuration is always expressed as a natural number, whereas in the
894 first one the number of inputs follows the increase of the boolean
895 vectors coding configurations. In this latter case, the coding gives a
896 finer information on configuration evolution.
899 \caption{Prediction success rates for configurations expressed with Gray code}
902 \begin{tabular}{|c|c||c|c|c|}
904 \multicolumn{5}{|c|}{Networks topology: 3~inputs, 2~outputs and one hidden layer} \\
907 & Hidden neurons & \multicolumn{3}{c|}{10 neurons} \\
909 & Epochs & 125 & 250 & 500 \\ %& 1000
911 \multirow{2}{*}{Chaotic}& Config.~(1) & 13.29\% & 13.55\% & 13.08\% \\ %& 12.5\%
912 & Strategy~(2) & 0.50\% & 0.52\% & 1.32\% \\ %& 1.42\%
914 \multirow{2}{*}{Non-Chaotic}&Config.~(1) & 77.12\% & 74.00\% & 72.60\% \\ %& 75.81\%
915 & Strategy~(2) & 0.42\% & 0.80\% & 1.16\% \\ %& 1.42\%
918 & Hidden neurons & \multicolumn{3}{c|}{25 neurons} \\
920 & Epochs & 125 & 250 & 500 \\ %& 1000
922 \multirow{2}{*}{Chaotic}& Config.~(1) & 12.27\% & 13.15\% & 13.05\% \\ %& 15.44\%
923 & Strategy~(2) & 0.71\% & 0.66\% & 0.88\% \\ %& 1.73\%
925 \multirow{2}{*}{Non-Chaotic}&Config.~(1) & 73.60\% & 74.70\% & 75.89\% \\ %& 68.32\%
926 & Strategy~(2) & 0.64\% & 0.97\% & 1.23\% \\ %& 1.80\%
931 Unfortunately, in practical applications the number of components is
932 usually unknown. Hence, the first coding scheme cannot be used
933 systematically. Therefore, we provide a refinement of the second
934 scheme: each output is learned by a different ANN. Table~\ref{tab3}
935 presents the results for this approach. In any case, whatever the
936 network topologies, the maximum epoch number and the kind of
937 iterations, the configuration success rate is slightly improved.
938 Moreover, the strategies predictions rates reach almost 12\%, whereas
939 in Table~\ref{tab2} they never exceed 1.5\%. Despite of this
940 improvement, a long term prediction of chaotic iterations appear to be
944 \caption{Prediction success rates for split outputs.}
947 \begin{tabular}{|c||c|c|c|}
949 \multicolumn{4}{|c|}{Networks topology: 3~inputs, 1~output and one hidden layer} \\
952 Epochs & 125 & 250 & 500 \\
955 Chaotic & \multicolumn{3}{c|}{Output = Configuration} \\
957 10~neurons & 12.39\% & 14.06\% & 14.32\% \\
958 25~neurons & 13.00\% & 14.28\% & 14.58\% \\
959 40~neurons & 11.58\% & 13.47\% & 14.23\% \\
962 Non chaotic & \multicolumn{3}{c|}{Output = Configuration} \\
964 %Epochs & 125 & 250 & 500 \\
966 10~neurons & 76.01\% & 74.04\% & 78.16\% \\
967 25~neurons & 76.60\% & 72.13\% & 75.96\% \\
968 40~neurons & 76.34\% & 75.63\% & 77.50\% \\
971 Chaotic/non chaotic & \multicolumn{3}{c|}{Output = Strategy} \\
973 %Epochs & 125 & 250 & 500 \\
975 10~neurons & 0.76\% & 0.97\% & 1.21\% \\
976 25~neurons & 1.09\% & 0.73\% & 1.79\% \\
977 40~neurons & 0.90\% & 1.02\% & 2.15\% \\
979 \multicolumn{4}{c}{} \\
981 Epochs & 1000 & 2500 & 5000 \\
984 Chaotic & \multicolumn{3}{c|}{Output = Configuration} \\
986 10~neurons & 14.51\% & 15.22\% & 15.22\% \\
987 25~neurons & 16.95\% & 17.57\% & 18.46\% \\
988 40~neurons & 17.73\% & 20.75\% & 22.62\% \\
991 Non chaotic & \multicolumn{3}{c|}{Output = Configuration} \\
993 %Epochs & 1000 & 2500 & 5000 \\
995 10~neurons & 78.98\% & 80.02\% & 79.97\% \\
996 25~neurons & 79.19\% & 81.59\% & 81.53\% \\
997 40~neurons & 79.64\% & 81.37\% & 81.37\% \\
1000 Chaotic/non chaotic & \multicolumn{3}{c|}{Output = Strategy} \\
1002 %Epochs & 1000 & 2500 & 5000 \\
1004 10~neurons & 3.47\% & 9.98\% & 11.66\% \\
1005 25~neurons & 3.92\% & 8.63\% & 10.09\% \\
1006 40~neurons & 3.29\% & 7.19\% & 7.18\% \\
1011 \section{Conclusion}
1013 In this paper, we have established an equivalence between chaotic
1014 iterations, according to the Devaney's definition of chaos, and a
1015 class of multilayer perceptron neural networks. Firstly, we have
1016 described how to build a neural network that can be trained to learn a
1017 given chaotic map function. Then, we found a condition that allow to
1018 check whether the iterations induced by a function are chaotic or not,
1019 and thus if a chaotic map is obtained. Thanks to this condition our
1020 approach is not limited to a particular function. In the dual case, we
1021 show that checking if a neural network is chaotic consists in
1022 verifying a property on an associated graph, called the graph of
1023 iterations. These results are valid for recurrent neural networks
1024 with a particular architecture. However, we believe that a similar
1025 work can be done for other neural network architectures. Finally, we
1026 have discovered at least one family of problems with a reasonable
1027 size, such that artificial neural networks should not be applied in
1028 the presence of chaos, due to their inability to learn chaotic
1029 behaviors in this context. Such a consideration is not reduced to a
1030 theoretical detail: this family of discrete iterations is concretely
1031 implemented in a new steganographic method \cite{guyeux10ter}. As
1032 steganographic detectors embed tools like neural networks to
1033 distinguish between original and stego contents, our studies tend to
1034 prove that such detectors might be unable to tackle with chaos-based
1035 information hiding schemes. Furthermore, iterations such that not all
1036 of the components are updated at each step are very common in
1037 biological and physics mechanisms. Therefore, one can reasonably
1038 wonder whether neural networks should be applied in these contexts.
1040 In future work we intend to enlarge the comparison between the
1041 learning of truly chaotic and non-chaotic behaviors. Other
1042 computational intelligence tools such as support vector machines will
1043 be investigated too, to discover which tools are the most relevant
1044 when facing a truly chaotic phenomenon. A comparison between learning
1045 rate success and prediction quality will be realized. Concrete
1046 consequences in biology, physics, and computer science security fields
1047 will be stated. Lastly, thresholds separating systems depending on
1048 the ability to learn their dynamics will be established.
1050 \bibliography{chaos-paper}% Produces the bibliography via BibTeX.
1054 % ****** End of file chaos-paper.tex ******