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 run chaotic neural networks
109 these last years. The complex dynamics of such a networks leads to
110 various potential application areas: associative
111 memories~\cite{Crook2007267} and digital security tools like hash
112 functions~\cite{Xiao10}, digital
113 watermarking~\cite{1309431,Zhang2005759}, or cipher
114 schemes~\cite{Lian20091296}. In the former case, the background idea
115 is to control chaotic dynamics in order to store patterns, with the
116 key advantage of offering a large storage capacity. For the latter
117 case, the use of chaotic dynamics is motivated by their
118 unpredictability and random-like behaviors. Thus, investigating new
119 concepts is crucial in this field, because new threats are constantly
120 emerging. As an illustrative example, the former standard in hash
121 functions, namely the SHA-1 algorithm, has been recently weakened
122 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} frequently constitute the
127 nodes of the network. These neurons have an inherent chaotic behavior,
128 which is usually assessed through the computation of the Lyapunov
129 exponent. An alternative approach is to consider a well-known neural
130 network architecture: the MultiLayer Perceptron (MLP). These networks
131 are suitable to model nonlinear relationships between data, due to
132 their universal approximator capacity. Thus, this kind of networks can
133 be 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 by combining 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 first contribution 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 the equivalence between chaotic
148 iterations and a class of globally recurrent MLP.
149 The investigation the converse problem is the second contribution:
150 we indeed study the ability for
151 classical MultiLayer Perceptrons to learn a particular family of
152 discrete chaotic dynamical systems. This family, called chaotic
153 iterations, is defined by a Boolean vector, an update function, and a
154 sequence giving which component to update at each iteration. It has
155 been previously established that such dynamical systems can behave
156 chaotically, as it is defined by Devaney, when the chosen function has
157 a strongly connected iterations graph. In this document, we
158 experiment several MLPs and try to learn some iterations of this kind.
159 We show that non-chaotic iterations can be learned, whereas it is
160 far more difficult for chaotic ones. That is to say, we have
161 discovered at least one family of problems with a reasonable size,
162 such that artificial neural networks should not be applied
163 due to their inability to learn chaotic behaviors in this context.
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. Section~\ref{S3} is
169 devoted to the dual case of checking whether an existing neural network
171 Topological properties of chaotic neural networks
172 are discussed in Sect.~\ref{S4}. The
173 Section~\ref{section:translation} shows how to translate such
174 iterations into an Artificial Neural Network (ANN), in order to
175 evaluate the capability for this latter to learn chaotic behaviors.
176 This ability is studied in Sect.~\ref{section:experiments}, where
177 various ANNs try to learn two sets of data: the first one is obtained
178 by chaotic iterations while the second one results from a non-chaotic
179 system. Prediction success rates are given and discussed for the two
180 sets. The paper ends with a conclusion section where our contribution
181 is summed up and intended future work is exposed.
183 \section{Link between Chaotic Iterations and Devaney's Chaos}
185 In this section, the well-established notion of Devaney's mathematical
186 chaos is firstly recalled. Preservation of the unpredictability of
187 such dynamical system when implemented on a computer is obtained by
188 using some discrete iterations called ``chaotic iterations'', which
189 are thus introduced. The result establishing the link between chaotic
190 iterations and Devaney's chaos is finally presented at the end of this
193 In what follows and for any function $f$, $f^n$ means the composition
194 $f \circ f \circ \hdots \circ f$ ($n$ times).
196 \subsection{Devaney's chaotic dynamical systems}
198 Various domains such as physics, biology, or economy, contain systems
199 that exhibit a chaotic behavior, a well-known example is the weather.
200 These systems are in particular highly sensitive to initial
201 conditions, a concept usually presented as the butterfly effect: small
202 variations in the initial conditions possibly lead to widely different
203 behaviors. Theoretically speaking, a system is sensitive if for each
204 point $x$ in the iteration space, one can find a point in each
205 neighborhood of $x$ having a significantly different future evolution.
206 Conversely, a system seeded with the same initial conditions always
207 has the same evolution. In other words, chaotic systems have a
208 deterministic behavior defined through a physical or mathematical
209 model and a high sensitivity to the initial conditions. Besides
210 mathematically this kind of unpredictability is also referred to as
211 deterministic chaos. For example, many weather forecast models exist,
212 but they give only suitable predictions for about a week, because they
213 are initialized with conditions that reflect only a partial knowledge
214 of the current weather. Even the differences are initially small,
215 they are amplified in the course of time, and thus make difficult a
216 long-term prediction. In fact, in a chaotic system, an approximation
217 of the current state is a quite useless indicator for predicting
220 From mathematical point of view, deterministic chaos has been
221 thoroughly studied these last decades, with different research works
222 that have provide various definitions of chaos. Among these
223 definitions, the one given by Devaney~\cite{Devaney} is
224 well-established. This definition consists of three conditions:
225 topological transitivity, density of periodic points, and sensitive
226 point dependence on initial conditions.
228 Topological transitivity is checked when, for any point, any
229 neighborhood of its future evolution eventually overlap with any other
230 given region. More precisely,
232 \begin{definition} \label{def2}
233 A continuous function $f$ on a topological space $(\mathcal{X},\tau)$
234 is defined to be {\bf topologically transitive} if for any pair of
235 open sets $U$, $V \in \mathcal{X}$ there exists
239 $f^k(U) \cap V \neq \emptyset$.
242 This property implies that a dynamical system cannot be broken into
244 Intuitively, its complexity does not allow any simplification.
245 On the contrary, a dense set of periodic points is an
246 element of regularity that a chaotic dynamical system has to exhibit.
248 \begin{definition} \label{def3}
249 A point $x$ is called a {\bf periodic point} for $f$ of period~$n \in
250 \mathds{N}^{\ast}$ if $f^{n}(x)=x$.
253 \begin{definition} \label{def4}
254 $f$ is said to be {\bf regular} on $(\mathcal{X},\tau)$ if the set of
255 periodic points for $f$ is dense in $\mathcal{X}$ ( for any $x \in
256 \mathcal{X}$, we can find at least one periodic point in any of its
260 This regularity ``counteracts'' the effects of transitivity. Thus,
261 due to these two properties, two points close to each other can behave
262 in a completely different manner, leading to unpredictability for the
265 \begin{definition} \label{sensitivity}
266 $f$ has {\bf sensitive dependence on initial conditions} if there
267 exists $\delta >0$ such that, for any $x\in \mathcal{X}$ and any
268 neighborhood $V$ of $x$, there exist $y\in V$ and $n > 0$ such that
269 $d\left(f^{n}(x), f^{n}(y)\right) >\delta $. The value $\delta$ is called the
270 {\bf constant of sensitivity} of $f$.
275 \begin{definition} \label{def5}
276 $f$ is {\bf chaotic according to Devaney} on $(\mathcal{X},\tau)$ if
277 $f$ is regular, topologically transitive, and has sensitive
278 dependence to its initial conditions.
281 Let us notice that for a metric space the last condition follows from
282 the two first ones~\cite{Banks92}.
284 \subsection{Chaotic Iterations}
286 This section presents some basics on topological chaotic iterations.
287 Let us firstly discuss about the domain of iteration. As far as we
288 know, no result rules that the chaotic behavior of a function that has
289 been theoretically proven on $\R$ remains valid on the floating-point
290 numbers, which is the implementation domain. Thus, to avoid loss of
291 chaos this work presents an alternative, that is to iterate Boolean
292 maps: results that are theoretically obtained in that domain are
293 preserved in implementations.
295 Let us denote by $\llbracket a ; b \rrbracket$ the following interval
296 of integers: $\{a, a+1, \hdots, b\}$, where $a~<~b$. A {\it system}
297 under consideration iteratively modifies a collection of
298 $n$~components. Each component $i \in \llbracket 1; n \rrbracket$
299 takes its value $x_i$ among the domain $\Bool=\{0,1\}$. A~{\it
300 configuration} of the system at discrete time $t$ (also said at {\it
301 iteration} $t$) is the vector
303 $x^{t}=(x_1^{t},\ldots,x_{n}^{t}) \in \Bool^n$.
305 The dynamics of the system is described according to a function $f :
306 \Bool^n \rightarrow \Bool^n$ such that
308 $f(x)=(f_1(x),\ldots,f_n(x))$.
310 % Notice that $f^k$ denotes the
311 % $k-$th composition $f\circ \ldots \circ f$ of the function $f$.
313 Let be given a configuration $x$. In what follows
314 $N(i,x)=(x_1,\ldots,\overline{x_i},\ldots,x_n)$ is the configuration
315 obtained by switching the $i-$th component of $x$ ($\overline{x_i}$ is
316 indeed the negation of $x_i$). Intuitively, $x$ and $N(i,x)$ are
317 neighbors. The discrete iterations of $f$ are represented by the
318 oriented {\it graph of iterations} $\Gamma(f)$. In such a graph,
319 vertices are configurations of $\Bool^n$ and there is an arc labeled
320 $i$ from $x$ to $N(i,x)$ if and only if $f_i(x)$ is $N(i,x)$.
322 In the sequel, the {\it strategy} $S=(S^{t})^{t \in \Nats}$ is the
323 sequence defining the component to update at time $t$ and $S^{t}$
324 denotes its $t-$th term. We introduce the function $F_{f}$ that is
325 defined for any given application $f:\Bool^{n} \to \Bool^{n}$ by
326 $F_{f}: \llbracket1;n\rrbracket\times \mathds{B}^{n} \rightarrow
327 \mathds{B}^{n}$, s.t.
333 f_j(x) \textrm{ if } j= s \enspace , \\
334 x_{j} \textrm{ otherwise} \enspace .
339 \noindent With such a notation, configurations are defined for times
341 \begin{equation}\label{eq:sync}
342 \left\{\begin{array}{l}
343 x^{0}\in \mathds{B}^{n} \textrm{ and}\\
344 x^{t+1}=F_{f}(S^t,x^{t}) \enspace .
348 \noindent Finally, iterations defined in Eq.~(\ref{eq:sync}) can be
349 described by the following system:
353 X^{0} & = & ((S^t)^{t \in \Nats},x^0) \in
354 \llbracket1;n\rrbracket^\Nats \times \Bool^{n}\\
355 X^{k+1}& = & G_{f}(X^{k})\\
356 \multicolumn{3}{c}{\textrm{where } G_{f}\left(((S^t)^{t \in \Nats},x)\right)
357 = \left(\sigma((S^t)^{t \in \Nats}),F_{f}(S^0,x)\right) \enspace ,}
362 where $\sigma$ is the function that removes the first term of the
363 strategy ({\it i.e.},~$S^0$). This definition means that only one
364 component of the system is updated at an iteration: the $S^t$-th
365 element. But it can be extended by considering subsets for $S^t$.
367 Let us finally remark that, despite the use of the term {\it chaotic},
368 there is {\it priori} no connection between these iterations and the
369 mathematical theory of chaos presented previously.
371 \subsection{Chaotic Iterations and Devaney's Chaos}
373 In this subsection we recall the link we have established between
374 chaotic iterations and Devaney's chaos. The theoretical framework is
375 fully described in \cite{guyeux09}.
377 The {\bf distance} $d$ between two points $(S,x)$ and
378 $(\check{S},\check{x})\in \mathcal{X} = \llbracket1;n\rrbracket^\Nats
379 \times \Bool^{n}$ is defined by
381 d((S,x);(\check{S},\check{x}))=d_{e}(x,\check{x})+d_{s}(S,\check{S})
386 d_{e}(x,\check{x})=\sum_{j=1}^{n}\Delta
387 (x_{j},\check{x}_{j}) \in \llbracket 0 ; n \rrbracket
391 d_{s}(S,\check{S})=\frac{9}{2n}\sum_{t=0}^{\infty
392 }\frac{|S^{t}-\check{S}^{t}|}{10^{t+1}} \in [0 ; 1] \enspace .
395 This distance is defined to reflect the following
396 information. Firstly, the more two systems have different components,
397 the larger the distance between them is. Secondly, two systems with
398 similar components and strategies, which have the same starting terms,
399 must induce only a small distance. The proposed distance fulfill
400 these requirements: on the one hand its floor value reflects the
401 difference between the cells, on the other hand its fractional part
402 measures the difference between the strategies.
404 The relation between $\Gamma(f)$ and $G_f$ is clear: there exists a
405 path from $x$ to $x'$ in $\Gamma(f)$ if and only if there exists a
406 strategy $s$ such that the parallel iteration of $G_f$ from the
407 initial point $(s,x)$ reaches the configuration $x'$. Using this
408 link, Guyeux~\cite{GuyeuxThese10} has proven that,
409 \begin{theorem}%[Characterization of $\mathcal{C}$]
410 \label{Th:Caracterisation des IC chaotiques}
411 Let $f:\Bool^n\to\Bool^n$. $G_f$ is chaotic (according to Devaney)
412 if and only if $\Gamma(f)$ is strongly connected.
415 Checking if a graph is strongly connected is not difficult. For
416 example, consider the function $f_1\left(x_1,\dots,x_n\right)=\left(
417 \overline{x_1},x_1,x_2,\dots,x_{n-1}\right)$. As $\Gamma(f_1)$ is
418 obviously strongly connected, then $G_{f_1}$ is a chaotic map.
420 With this material, we are now able to build a first chaotic neural
421 network, as defined in the Devaney's formulation.
423 \section{A chaotic neural network in the sense of Devaney}
426 Let us firstly introduce the vectorial negation
427 $f_{0}(x_{1},\dots,x_{n}) =(\overline{x_{1}},\dots,\overline{x_{n}})$,
428 which is such that $\Gamma(f_0)$ is strongly connected. Considering
429 the map $F_{f_0}:\llbracket 1; n \rrbracket \times \mathds{B}^n \to
430 \mathds{B}^n$ associated to the vectorial negation, we can build a
431 multilayer perceptron neural network modeling $F_{f_0}$. Hence, for
432 all inputs $(s,x) \in \llbracket 1;n\rrbracket \times \mathds{B}^n$,
433 the output layer will produce $F_{f_0}(s,x)$. It is then possible to
434 link the output layer and the input one, in order to model the
435 dependence between two successive iterations. As a result we obtain a
436 global recurrent neural network that behaves as follows (see
437 Fig.~\ref{Fig:perceptron}).
440 \item The network is initialized with the input vector
441 $\left(S^0,x^0\right) \in \llbracket 1;n\rrbracket \times
442 \mathds{B}^n$ and computes the output vector
443 $x^1=F_{f_0}\left(S^0,x^0\right)$. This last vector is published as
444 an output one of the chaotic neural network and is sent back to the
445 input layer through the feedback links.
446 \item When the network is activated at the $t^{th}$ iteration, the
447 state of the system $x^t \in \mathds{B}^n$ received from the output
448 layer and the initial term of the sequence $(S^t)^{t \in \Nats}$
449 ($S^0 \in \llbracket 1;n\rrbracket$) are used to compute the new
450 output. This new output, which represents the new state of the
451 dynamical system, satisfies:
453 x^{t+1}=F_{f_0}(S^0, x^t) \in \mathds{B}^n \enspace .
459 \includegraphics[scale=0.625]{perceptron}
460 \caption{A perceptron equivalent to chaotic iterations}
461 \label{Fig:perceptron}
464 The behavior of the neural network is such that when the initial state
465 is $x^0~\in~\mathds{B}^n$ and a sequence $(S^t)^{t \in \Nats}$ is
466 given as outside input, then the sequence of successive published
467 output vectors $\left(x^t\right)^{t \in \mathds{N}^{\ast}}$ is exactly
468 the one produced by the chaotic iterations formally described in
469 Eq.~(\ref{eq:CIs}). It means that mathematically if we use similar
470 input vectors they both generate the same successive outputs
471 $\left(x^t\right)^{t \in \mathds{N}^{\ast}}$, and therefore that they
472 are equivalent reformulations of the iterations of $G_{f_0}$ in
473 $\mathcal{X}$. Finally, since the proposed neural network is build to
474 model the behavior of $G_{f_0}$, which is chaotic according to
475 Devaney's definition of chaos, we can conclude that the network is
476 also chaotic in this sense.
478 The previous construction scheme is not restricted to function $f_0$.
479 It can be extended to any function $f$ such that $G_f$ is a chaotic
480 map by training the network to model $F_{f}:\llbracket 1; n \rrbracket
481 \times \mathds{B}^n \to \mathds{B}^n$. Due to
482 Theorem~\ref{Th:Caracterisation des IC chaotiques}, we can find
483 alternative functions $f$ for $f_0$ through a simple check of their
484 graph of iterations $\Gamma(f)$. For example, we can build another
485 chaotic neural network by using $f_1$ instead of $f_0$.
487 \section{Checking whether a neural network is chaotic or not}
490 We focus now on the case where a neural network is already available,
491 and for which we want to know if it is chaotic. Typically, in
492 many research papers neural network are usually claimed to be chaotic
493 without any convincing mathematical proof. We propose an approach to
494 overcome this drawback for a particular category of multilayer
495 perceptrons defined below, and for the Devaney's formulation of chaos.
496 In spite of this restriction, we think that this approach can be
497 extended to a large variety of neural networks. We plan to study a
498 generalization of this approach in a future work.
500 We consider a multilayer perceptron of the following form: inputs
501 are $n$ binary digits and one integer value, while outputs are $n$
502 bits. Moreover, each binary output is connected with a feedback
503 connection to an input one.
506 \item During initialization, the network if we seed it with $n$~bits denoted
507 $\left(x^0_1,\dots,x^0_n\right)$ and an integer value $S^0$ that
508 belongs to $\llbracket1;n\rrbracket$.
509 \item At iteration~$t$, the last output vector
510 $\left(x^t_1,\dots,x^t_n\right)$ defines the $n$~bits used to
511 compute the new output one $\left(x^{t+1}_1,\dots,x^{t+1}_n\right)$.
512 While the remaining input receives a new integer value $S^t \in
513 \llbracket1;n\rrbracket$, which is provided by the outside world.
516 The topological behavior of these particular neural networks can be
517 proven to be chaotic through the following process. Firstly, we denote
518 by $F: \llbracket 1;n \rrbracket \times \mathds{B}^n \rightarrow
519 \mathds{B}^n$ the function that maps the value
520 $\left(s,\left(x_1,\dots,x_n\right)\right) \in \llbracket 1;n
521 \rrbracket \times \mathds{B}^n$ into the value
522 $\left(y_1,\dots,y_n\right) \in \mathds{B}^n$, where
523 $\left(y_1,\dots,y_n\right)$ is the response of the neural network
524 after the initialization of its input layer with
525 $\left(s,\left(x_1,\dots, x_n\right)\right)$. Secondly, we define $f:
526 \mathds{B}^n \rightarrow \mathds{B}^n$ such that
527 $f\left(x_1,x_2,\dots,x_n\right)$ is equal to
529 \left(F\left(1,\left(x_1,x_2,\dots,x_n\right)\right),\dots,
530 F\left(n,\left(x_1,x_2,\dots,x_n\right)\right)\right) \enspace .
532 Then $F=F_f$ and this recurrent neural network produces exactly the
533 same output vectors, when feeding it with
534 $\left(x_1^0,\dots,x_n^0\right)$ and $S \in \llbracket 1;n
535 \rrbracket^{\mathds{N}}$, than chaotic iterations $F_f$ with initial
536 condition $\left(S,(x_1^0,\dots, x_n^0)\right) \in \llbracket 1;n
537 \rrbracket^{\mathds{N}} \times \mathds{B}^n$. In the rest of this
538 paper, we will call such multilayer perceptrons CI-MLP($f$), which
539 stands for ``Chaotic Iterations based MultiLayer Perceptron''.
541 Checking if CI-MLP($f$) behaves chaotically according to Devaney's
542 definition of chaos is simple: we need just to verify if the
543 associated graph of iterations $\Gamma(f)$ is strongly connected or
544 not. As an incidental consequence, we finally obtain an equivalence
545 between chaotic iterations and CI-MLP($f$). Therefore, we can
546 obviously study such multilayer perceptrons with mathematical tools
547 like topology to establish, for example, their convergence or,
548 contrarily, their unpredictable behavior. An example of such a study
549 is given in the next section.
551 \section{Topological properties of chaotic neural networks}
554 Let us first recall two fundamental definitions from the mathematical
557 \begin{definition} \label{def8}
558 A function $f$ is said to be {\bf expansive} if $\exists
559 \varepsilon>0$, $\forall x \neq y$, $\exists n \in \mathds{N}$ such
560 that $d\left(f^n(x),f^n(y)\right) \geq \varepsilon$.
563 \begin{definition} \label{def9}
564 A discrete dynamical system is said to be {\bf topologically mixing}
565 if and only if, for any pair of disjoint open sets $U$,$V \neq
566 \emptyset$, we can find some $n_0 \in \mathds{N}$ such that for any $n$,
567 $n\geq n_0$, we have $f^n(U) \cap V \neq \emptyset$.
570 As proven in Ref.~\cite{gfb10:ip}, chaotic iterations are expansive
571 and topologically mixing when $f$ is the vectorial negation $f_0$.
572 Consequently, these properties are inherited by the CI-MLP($f_0$)
573 recurrent neural network previously presented, which induce a greater
574 unpredictability. Any difference on the initial value of the input
575 layer is in particular magnified up to be equal to the expansivity
578 Let us then focus on the consequences for a neural network to be chaotic
579 according to Devaney's definition. First of all, the topological
580 transitivity property implies indecomposability.
582 \begin{definition} \label{def10}
583 A dynamical system $\left( \mathcal{X}, f\right)$ is {\bf
584 indecomposable} if it is not the union of two closed sets $A, B
585 \subset \mathcal{X}$ such that $f(A) \subset A, f(B) \subset B$.
588 \noindent Hence, reducing the set of outputs generated by CI-MLP($f$),
589 in order to simplify its complexity, is impossible if $\Gamma(f)$ is
590 strongly connected. Moreover, under this hypothesis CI-MLPs($f$) are
593 \begin{definition} \label{def11}
594 A dynamical system $\left( \mathcal{X}, f\right)$ is {\bf strongly
595 transitive} if $\forall x,y \in \mathcal{X}$, $\forall r>0$, $\exists
596 z \in \mathcal{X}$, $d(z,x)~\leq~r \Rightarrow \exists n \in
597 \mathds{N}^{\ast}$, $f^n(z)=y$.
599 According to this definition, for all pairs of points $(x, y)$ in the
600 phase space, a point $z$ can be found in the neighborhood of $x$ such
601 that one of its iterates $f^n(z)$ is $y$. Indeed, this result has been
602 established during the proof of the transitivity presented in
603 Ref.~\cite{guyeux09}. Among other things, the strong transitivity
604 leads to the fact that without the knowledge of the initial input
605 layer, all outputs are possible. Additionally, no point of the output
606 space can be discarded when studying CI-MLPs: this space is
607 intrinsically complicated and it cannot be decomposed or simplified.
609 Furthermore, those recurrent neural networks exhibit the instability
612 A dynamical system $\left( \mathcal{X}, f\right)$ is unstable if for
613 all $x \in \mathcal{X}$, the orbit $\gamma_x:n \in \mathds{N}
614 \longmapsto f^n(x)$ is unstable, that means: $\exists \varepsilon >
615 0$, $\forall \delta>0$, $\exists y \in \mathcal{X}$, $\exists n \in
616 \mathds{N}$, such that $d(x,y)<\delta$ and
617 $d\left(\gamma_x(n),\gamma_y(n)\right) \geq \varepsilon$.
619 This property, which is implied by the sensitive point dependence on
620 initial conditions, leads to the fact that in all neighborhoods of any
621 point $x$, there are points that can be apart by $\varepsilon$ in the
622 future through iterations of the CI-MLP($f$). Thus, we can claim that
623 the behavior of these MLPs is unstable when $\Gamma (f)$ is strongly
626 Let us now consider a compact metric space $(M, d)$ and $f: M
627 \rightarrow M$ a continuous map. For each natural number $n$, a new
628 metric $d_n$ is defined on $M$ by
629 $$d_n(x,y)=\max\{d(f^i(x),f^i(y)): 0\leq i<n\} \enspace .$$
631 Given any $\varepsilon > 0$ and $n \geqslant 1$, two points of $M$ are
632 $\varepsilon$-close with respect to this metric if their first $n$
633 iterates are $\varepsilon$-close.
635 This metric allows one to distinguish in a neighborhood of an orbit
636 the points that move away from each other during the iteration from
637 the points that travel together. A subset $E$ of $M$ is said to be
638 $(n, \varepsilon)$-separated if each pair of distinct points of $E$ is
639 at least $\varepsilon$ apart in the metric $d_n$. Denote by $H(n,
640 \varepsilon)$ the maximum cardinality of an $(n,
641 \varepsilon)$-separated set,
643 The {\it topological entropy} of the map $f$ is defined by (see e.g.,
644 Ref.~\cite{Adler65} or Ref.~\cite{Bowen})
645 $$h(f)=\lim_{\varepsilon\to 0} \left(\limsup_{n\to \infty}
646 \frac{1}{n}\log H(n,\varepsilon)\right) \enspace .$$
649 Then we have the following result \cite{GuyeuxThese10},
651 $\left( \mathcal{X},d\right)$ is compact and the topological entropy
652 of $(\mathcal{X},G_{f_0})$ is infinite.
655 We have explained how to construct truly chaotic neural networks, how
656 to check whether a given MLP is chaotic or not, and how to study its
657 topological behavior. The last thing to investigate, when comparing
658 neural networks and Devaney's chaos, is to determine whether
659 artificial neural networks are able to learn or predict some chaotic
660 behaviors, as it is defined in the Devaney's formulation (when they
661 are not specifically constructed for this purpose). This statement is
662 studied in the next section.
664 \section{Suitability of Artificial Neural Networks
665 for Predicting Chaotic Behaviors}
667 In the context of computer science different topic areas have an
668 interest in chaos, as for steganographic
669 techniques~\cite{1309431,Zhang2005759}. Steganography consists in
670 embedding a secret message within an ordinary one, while the secret
671 extraction takes place once at destination. The reverse ({\it i.e.},
672 automatically detecting the presence of hidden messages inside media)
673 is called steganalysis. Among the deployed strategies inside
674 detectors, there are support vectors
675 machines~\cite{Qiao:2009:SM:1704555.1704664}, neural
676 networks~\cite{10.1109/ICME.2003.1221665,10.1109/CIMSiM.2010.36}, and
677 Markov chains~\cite{Sullivan06steganalysisfor}. Most of these
678 detectors give quite good results and are rather competitive when
679 facing steganographic tools. However, to the best of our knowledge
680 none of the considered information hiding schemes fulfills the Devaney
681 definition of chaos~\cite{Devaney}. Indeed, one can wonder whether
682 detectors continue to give good results when facing truly chaotic
683 schemes. More generally, there remains the open problem of deciding
684 whether artificial intelligence is suitable for predicting topological
687 \subsection{Representing Chaotic Iterations for Neural Networks}
688 \label{section:translation}
690 The problem of deciding whether classical feedforward ANNs are
691 suitable to approximate topological chaotic iterations may then be
692 reduced to evaluate ANNs on iterations of functions with Strongly
693 Connected Component (SCC)~graph of iterations. To compare with
694 non-chaotic iterations, the experiments detailed in the following
695 sections are carried out using both kinds of function (chaotic and
696 non-chaotic). Let us emphasize on the difference between this kind of
697 neural networks and the Chaotic Iterations based MultiLayer
700 We are then left to compute two disjoint function sets that contain
701 either functions with topological chaos properties or not, depending
702 on the strong connectivity of their iterations graph. This can be
703 achieved for instance by removing a set of edges from the iteration
704 graph $\Gamma(f_0)$ of the vectorial negation function~$f_0$. One can
705 deduce whether a function verifies the topological chaos property or
706 not by checking the strong connectivity of the resulting graph of
709 For instance let us consider the functions $f$ and $g$ from $\Bool^4$
710 to $\Bool^4$ respectively defined by the following lists:
711 $$[0, 0, 2, 3, 13, 13, 6, 3, 8, 9, 10, 11, 8, 13, 14,
712 15]$$ $$\mbox{and } [11, 14, 13, 14, 11, 10, 1, 8, 7, 6, 5, 4, 3, 2,
713 1, 0] \enspace.$$ In other words, the image of $0011$ by $g$ is
714 $1110$: it is obtained as the binary value of the fourth element in
715 the second list (namely~14). It is not hard to verify that
716 $\Gamma(f)$ is not SCC (\textit{e.g.}, $f(1111)$ is $1111$) whereas
717 $\Gamma(g)$ is. Next section shows how to translate iterations of
718 such functions into a model amenable to be learned by an ANN.
720 This section presents how (not) chaotic iterations of $G_f$ are
721 translated into another model more suited to artificial neural
722 networks. Formally, input and output vectors are pairs~$((S^t)^{t \in
723 \Nats},x)$ and $\left(\sigma((S^t)^{t \in \Nats}),F_{f}(S^0,x)\right)$
724 as defined in~Eq.~(\ref{eq:Gf}).
726 Firstly, let us focus on how to memorize configurations. Two distinct
727 translations are proposed. In the first case, we take one input in
728 $\Bool$ per component; in the second case, configurations are
729 memorized as natural numbers. A coarse attempt to memorize
730 configuration as natural number could consist in labeling each
731 configuration with its translation into decimal numeral system.
732 However, such a representation induces too many changes between a
733 configuration labeled by a power of two and its direct previous
734 configuration: for instance, 16~(10000) and 15~(01111) are closed in a
735 decimal ordering, but their Hamming distance is 5. This is why Gray
736 codes~\cite{Gray47} have been preferred.
738 Let us secondly detail how to deal with strategies. Obviously, it is not
739 possible to translate in a finite way an infinite strategy, even if
740 both $(S^t)^{t \in \Nats}$ and $\sigma((S^t)^{t \in \Nats})$ belong to
741 $\{1,\ldots,n\}^{\Nats}$. Input strategies are then reduced to have a
742 length of size $l \in \llbracket 2,k\rrbracket$, where $k$ is a
743 parameter of the evaluation. Notice that $l$ is greater than or equal
744 to $2$ since we do not want the shift $\sigma$~function to return an
745 empty strategy. Strategies are memorized as natural numbers expressed
746 in base $n+1$. At each iteration, either none or one component is
747 modified (among the $n$ components) leading to a radix with $n+1$
748 entries. Finally, we give an other input, namely $m \in \llbracket
749 1,l-1\rrbracket$, which is the number of successive iterations that
750 are applied starting from $x$. Outputs are translated with the same
753 To address the complexity issue of the problem, let us compute the
754 size of the data set an ANN has to deal with. Each input vector of an
755 input-output pair is composed of a configuration~$x$, an excerpt $S$
756 of the strategy to iterate of size $l \in \llbracket 2, k\rrbracket$,
757 and a number $m \in \llbracket 1, l-1\rrbracket$ of iterations that
760 Firstly, there are $2^n$ configurations $x$, with $n^l$ strategies of
761 size $l$ for each of them. Secondly, for a given configuration there
762 are $\omega = 1 \times n^2 + 2 \times n^3 + \ldots+ (k-1) \times n^k$
763 ways of writing the pair $(m,S)$. Furthermore, it is not hard to
766 \displaystyle{(n-1) \times \omega = (k-1)\times n^{k+1} - \sum_{i=2}^k n^i} \nonumber
771 \dfrac{(k-1)\times n^{k+1}}{n-1} - \dfrac{n^{k+1}-n^2}{(n-1)^2} \enspace . \nonumber
773 \noindent And then, finally, the number of input-output pairs for our
776 2^n \times \left(\dfrac{(k-1)\times n^{k+1}}{n-1} - \dfrac{n^{k+1}-n^2}{(n-1)^2}\right) \enspace .
778 For instance, for $4$ binary components and a strategy of at most
779 $3$~terms we obtain 2304~input-output pairs.
781 \subsection{Experiments}
782 \label{section:experiments}
784 To study if chaotic iterations can be predicted, we choose to train
785 the MultiLayer Perceptron. As stated before, this kind of network is
786 in particular well-known for its universal approximation
787 property. Furthermore, MLPs have been already considered for chaotic
788 time series prediction. For example, in~\cite{dalkiran10} the authors
789 have shown that a feedforward MLP with two hidden layers, and trained
790 with Bayesian Regulation backpropagation, can learn successfully the
791 dynamics of Chua's circuit.
793 In these experimentations we consider MLPs having one hidden layer of
794 sigmoidal neurons and output neurons with a linear activation
795 function. They are trained using the Limited-memory
796 Broyden-Fletcher-Goldfarb-Shanno quasi-newton algorithm in combination
797 with the Wolfe linear search. The training process is performed until
798 a maximum number of epochs is reached. To prevent overfitting and to
799 estimate the generalization performance we use holdout validation by
800 splitting the data set into learning, validation, and test subsets.
801 These subsets are obtained through random selection such that their
802 respective size represents 65\%, 10\%, and 25\% of the whole data set.
804 Several neural networks are trained for both iterations coding
805 schemes. In both cases iterations have the following layout:
806 configurations of four components and strategies with at most three
807 terms. Thus, for the first coding scheme a data set pair is composed
808 of 6~inputs and 5~outputs, while for the second one it is respectively
809 3~inputs and 2~outputs. As noticed at the end of the previous section,
810 this leads to data sets that consist of 2304~pairs. The networks
811 differ in the size of the hidden layer and the maximum number of
812 training epochs. We remember that to evaluate the ability of neural
813 networks to predict a chaotic behavior for each coding scheme, the
814 trainings of two data sets, one of them describing chaotic iterations,
817 Thereafter we give, for the different learning setups and data sets,
818 the mean prediction success rate obtained for each output. These
819 values are computed considering 10~trainings with random subsets
820 construction, weights and biases initialization. Firstly, neural
821 networks having 10 and 25~hidden neurons are trained, with a maximum
822 number of epochs that takes its value in $\{125,250,500\}$ (see
823 Tables~\ref{tab1} and \ref{tab2}). Secondly, we refine the second
824 coding scheme by splitting the output vector such that each output is
825 learned by a specific neural network (Table~\ref{tab3}). In this last
826 case, we increase the size of the hidden layer up to 40~neurons, and
827 we consider larger number of epochs.
830 \caption{Prediction success rates for configurations expressed as boolean vectors.}
833 \begin{tabular}{|c|c||c|c|c|}
835 \multicolumn{5}{|c|}{Networks topology: 6~inputs, 5~outputs and one hidden layer} \\
838 \multicolumn{2}{|c||}{Hidden neurons} & \multicolumn{3}{c|}{10 neurons} \\
840 \multicolumn{2}{|c||}{Epochs} & 125 & 250 & 500 \\
842 \multirow{6}{*}{\rotatebox{90}{Chaotic}}&Output~(1) & 90.92\% & 91.75\% & 91.82\% \\
843 & Output~(2) & 69.32\% & 78.46\% & 82.15\% \\
844 & Output~(3) & 68.47\% & 78.49\% & 82.22\% \\
845 & Output~(4) & 91.53\% & 92.37\% & 93.4\% \\
846 & Config. & 36.10\% & 51.35\% & 56.85\% \\
847 & Strategy~(5) & 1.91\% & 3.38\% & 2.43\% \\
849 \multirow{6}{*}{\rotatebox{90}{Non-chaotic}}&Output~(1) & 97.64\% & 98.10\% & 98.20\% \\
850 & Output~(2) & 95.15\% & 95.39\% & 95.46\% \\
851 & Output~(3) & 100\% & 100\% & 100\% \\
852 & Output~(4) & 97.47\% & 97.90\% & 97.99\% \\
853 & Config. & 90.52\% & 91.59\% & 91.73\% \\
854 & Strategy~(5) & 3.41\% & 3.40\% & 3.47\% \\
857 \multicolumn{2}{|c||}{Hidden neurons} & \multicolumn{3}{c|}{25 neurons} \\ %& \multicolumn{3}{|c|}{40 neurons} \\
859 \multicolumn{2}{|c||}{Epochs} & 125 & 250 & 500 \\ %& 125 & 250 & 500 \\
861 \multirow{6}{*}{\rotatebox{90}{Chaotic}}&Output~(1) & 91.65\% & 92.69\% & 93.93\% \\ %& 91.94\% & 92.89\% & 94.00\% \\
862 & Output~(2) & 72.06\% & 88.46\% & 90.5\% \\ %& 74.97\% & 89.83\% & 91.14\% \\
863 & Output~(3) & 79.19\% & 89.83\% & 91.59\% \\ %& 76.69\% & 89.58\% & 91.84\% \\
864 & Output~(4) & 91.61\% & 92.34\% & 93.47\% \\% & 82.77\% & 92.93\% & 93.48\% \\
865 & Config. & 48.82\% & 67.80\% & 70.97\% \\%& 49.46\% & 68.94\% & 71.11\% \\
866 & Strategy~(5) & 2.62\% & 3.43\% & 3.78\% \\% & 3.10\% & 3.10\% & 3.03\% \\
868 \multirow{6}{*}{\rotatebox{90}{Non-chaotic}}&Output~(1) & 97.87\% & 97.99\% & 98.03\% \\ %& 98.16\% \\
869 & Output~(2) & 95.46\% & 95.84\% & 96.75\% \\ % & 97.4\% \\
870 & Output~(3) & 100\% & 100\% & 100\% \\%& 100\% \\
871 & Output~(4) & 97.77\% & 97.82\% & 98.06\% \\%& 98.31\% \\
872 & Config. & 91.36\% & 91.99\% & 93.03\% \\%& 93.98\% \\
873 & Strategy~(5) & 3.37\% & 3.44\% & 3.29\% \\%& 3.23\% \\
879 Table~\ref{tab1} presents the rates obtained for the first coding
880 scheme. For the chaotic data, it can be seen that as expected
881 configuration prediction becomes better when the number of hidden
882 neurons and maximum epochs increases: an improvement by a factor two
883 is observed (from 36.10\% for 10~neurons and 125~epochs to 70.97\% for
884 25~neurons and 500~epochs). We also notice that the learning of
885 outputs~(2) and~(3) is more difficult. Conversely, for the
886 non-chaotic case the simplest training setup is enough to predict
887 configurations. For all network topologies and all outputs the
888 obtained results for the non-chaotic case outperform the chaotic
889 ones. Finally, the rates for the strategies show that the different
890 networks are unable to learn them.
892 For the second coding scheme (\textit{i.e.}, with Gray Codes)
893 Table~\ref{tab2} shows that any network
894 learns about five times more non-chaotic configurations than chaotic
895 ones. As in the previous scheme, the strategies cannot be predicted.
897 Let us now compare the two coding schemes. Firstly, the second scheme
898 disturbs the learning process. In fact in this scheme the
899 configuration is always expressed as a natural number, whereas in the
900 first one the number of inputs follows the increase of the boolean
901 vectors coding configurations. In this latter case, the coding gives a
902 finer information on configuration evolution.
905 \caption{Prediction success rates for configurations expressed with Gray code}
908 \begin{tabular}{|c|c||c|c|c|}
910 \multicolumn{5}{|c|}{Networks topology: 3~inputs, 2~outputs and one hidden layer} \\
913 & Hidden neurons & \multicolumn{3}{c|}{10 neurons} \\
915 & Epochs & 125 & 250 & 500 \\ %& 1000
917 \multirow{2}{*}{Chaotic}& Config.~(1) & 13.29\% & 13.55\% & 13.08\% \\ %& 12.5\%
918 & Strategy~(2) & 0.50\% & 0.52\% & 1.32\% \\ %& 1.42\%
920 \multirow{2}{*}{Non-Chaotic}&Config.~(1) & 77.12\% & 74.00\% & 72.60\% \\ %& 75.81\%
921 & Strategy~(2) & 0.42\% & 0.80\% & 1.16\% \\ %& 1.42\%
924 & Hidden neurons & \multicolumn{3}{c|}{25 neurons} \\
926 & Epochs & 125 & 250 & 500 \\ %& 1000
928 \multirow{2}{*}{Chaotic}& Config.~(1) & 12.27\% & 13.15\% & 13.05\% \\ %& 15.44\%
929 & Strategy~(2) & 0.71\% & 0.66\% & 0.88\% \\ %& 1.73\%
931 \multirow{2}{*}{Non-Chaotic}&Config.~(1) & 73.60\% & 74.70\% & 75.89\% \\ %& 68.32\%
932 & Strategy~(2) & 0.64\% & 0.97\% & 1.23\% \\ %& 1.80\%
937 Unfortunately, in practical applications the number of components is
938 usually unknown. Hence, the first coding scheme cannot be used
939 systematically. Therefore, we provide a refinement of the second
940 scheme: each output is learned by a different ANN. Table~\ref{tab3}
941 presents the results for this approach. In any case, whatever the
942 network topologies, the maximum epoch number and the kind of
943 iterations, the configuration success rate is slightly improved.
944 Moreover, the strategies predictions rates reach almost 12\%, whereas
945 in Table~\ref{tab2} they never exceed 1.5\%. Despite of this
946 improvement, a long term prediction of chaotic iterations still
951 \caption{Prediction success rates for split outputs.}
954 \begin{tabular}{|c||c|c|c|}
956 \multicolumn{4}{|c|}{Networks topology: 3~inputs, 1~output and one hidden layer} \\
959 Epochs & 125 & 250 & 500 \\
962 Chaotic & \multicolumn{3}{c|}{Output = Configuration} \\
964 10~neurons & 12.39\% & 14.06\% & 14.32\% \\
965 25~neurons & 13.00\% & 14.28\% & 14.58\% \\
966 40~neurons & 11.58\% & 13.47\% & 14.23\% \\
969 Non chaotic & \multicolumn{3}{c|}{Output = Configuration} \\
971 %Epochs & 125 & 250 & 500 \\
973 10~neurons & 76.01\% & 74.04\% & 78.16\% \\
974 25~neurons & 76.60\% & 72.13\% & 75.96\% \\
975 40~neurons & 76.34\% & 75.63\% & 77.50\% \\
978 Chaotic/non chaotic & \multicolumn{3}{c|}{Output = Strategy} \\
980 %Epochs & 125 & 250 & 500 \\
982 10~neurons & 0.76\% & 0.97\% & 1.21\% \\
983 25~neurons & 1.09\% & 0.73\% & 1.79\% \\
984 40~neurons & 0.90\% & 1.02\% & 2.15\% \\
986 \multicolumn{4}{c}{} \\
988 Epochs & 1000 & 2500 & 5000 \\
991 Chaotic & \multicolumn{3}{c|}{Output = Configuration} \\
993 10~neurons & 14.51\% & 15.22\% & 15.22\% \\
994 25~neurons & 16.95\% & 17.57\% & 18.46\% \\
995 40~neurons & 17.73\% & 20.75\% & 22.62\% \\
998 Non chaotic & \multicolumn{3}{c|}{Output = Configuration} \\
1000 %Epochs & 1000 & 2500 & 5000 \\
1002 10~neurons & 78.98\% & 80.02\% & 79.97\% \\
1003 25~neurons & 79.19\% & 81.59\% & 81.53\% \\
1004 40~neurons & 79.64\% & 81.37\% & 81.37\% \\
1007 Chaotic/non chaotic & \multicolumn{3}{c|}{Output = Strategy} \\
1009 %Epochs & 1000 & 2500 & 5000 \\
1011 10~neurons & 3.47\% & 9.98\% & 11.66\% \\
1012 25~neurons & 3.92\% & 8.63\% & 10.09\% \\
1013 40~neurons & 3.29\% & 7.19\% & 7.18\% \\
1018 \section{Conclusion}
1020 In this paper, we have established an equivalence between chaotic
1021 iterations, according to the Devaney's definition of chaos, and a
1022 class of multilayer perceptron neural networks. Firstly, we have
1023 described how to build a neural network that can be trained to learn a
1024 given chaotic map function. Then, we found a condition that allow to
1025 check whether the iterations induced by a function are chaotic or not,
1026 and thus if a chaotic map is obtained. Thanks to this condition our
1027 approach is not limited to a particular function. In the dual case, we
1028 show that checking if a neural network is chaotic consists in
1029 verifying a property on an associated graph, called the graph of
1030 iterations. These results are valid for recurrent neural networks
1031 with a particular architecture. However, we believe that a similar
1032 work can be done for other neural network architectures. Finally, we
1033 have discovered at least one family of problems with a reasonable
1034 size, such that artificial neural networks should not be applied in
1035 the presence of chaos, due to their inability to learn chaotic
1036 behaviors in this context. Such a consideration is not reduced to a
1037 theoretical detail: this family of discrete iterations is concretely
1038 implemented in a new steganographic method \cite{guyeux10ter}. As
1039 steganographic detectors embed tools like neural networks to
1040 distinguish between original and stego contents, our studies tend to
1041 prove that such detectors might be unable to tackle with chaos-based
1042 information hiding schemes. Furthermore, iterations such that not all
1043 of the components are updated at each step are very common in
1044 biological and physics mechanisms. Therefore, one can reasonably
1045 wonder whether neural networks should be applied in these contexts.
1047 In future work we intend to enlarge the comparison between the
1048 learning of truly chaotic and non-chaotic behaviors. Other
1049 computational intelligence tools such as support vector machines will
1050 be investigated too, to discover which tools are the most relevant
1051 when facing a truly chaotic phenomenon. A comparison between learning
1052 rate success and prediction quality will be realized. Concrete
1053 consequences in biology, physics, and computer science security fields
1054 will be stated. Lastly, thresholds separating systems depending on
1055 the ability to learn their dynamics will be established.
1057 \bibliography{chaos-paper}% Produces the bibliography via BibTeX.
1061 % ****** End of file chaos-paper.tex ******