1 Cette section énonce les notions fondamentales relatives aux systèmes dynamiques
2 booléens et à la mesure du chaos. Le formalisme des systèmes dynamiques
3 booléens est donné en section~\ref{sub:sdd}, suivi des méthodes de déduction des
4 graphes d'itérations (section~\ref{sub:grIter}).
6 %(section~\ref{sub:sdd:inter}).
7 % La notion de retards est présentée en
8 % section~\ref{sub:sdd:retards}.
9 Enfin, une distance sur l'espace $\llbracket 1;n\rrbracket^{\Nats}\times
10 \Bool^n$ est définie en section~\ref{sub:metric}, qui permet ensuite d'établir
11 la nature chaotique des systèmes dynamiques booléens, abordée en
12 section~\ref{section:caracterisation}.
14 \subsection{Système dynamique booléen}\label{sub:sdd}
16 Soit $n$ un entier naturel. Un système dynamique booléen est
17 défini à partir d'une fonction booléenne:
19 f:\Bool^n\to\Bool^n,\qquad x=(x_1,\dots,x_n)\mapsto f(x)=(f_1(x),\dots,f_n(x)),
21 et un {\emph{schéma itératif}} ou encore \emph{mode de mise à jour} qui peut
22 être parallèle, séquentiel ou asynchrone%, et intégrer ou non des retards
23 . À partir d'une configuration initiale $x^0\in\Bool^n$, la suite $(x^{t})^{t
24 \in \Nats}$ des configurations du système est construite selon l'un des
27 \item \textbf{Schéma parallèle synchrone :} basé sur la relation de récurrence
28 $x^{t+1}=f(x^t)$. Tous les $x_i$, $1 \le i \le n$, sont ainsi mis à jour à
29 chaque itération en utilisant l'état global précédent du système ($x^t$).
30 \item \textbf{Schéma séquentiel synchrone :} basé sur une mise à jour successive
31 des différents éléments du système, selon un ordre défini. Le mode séquentiel
32 de référence est basé sur la séquence ordonnée des éléments, de 1 à $n$.
33 \item \textbf{Schéma asynchrone :} cette terminologie a plusieurs acceptations
34 dans la littérature, mais celle qui reste la plus répandue, et que nous
35 retenons ici, consiste à ne modifier qu'un élément $i$, $1 \le i \le n$, à
36 chaque itération. Le choix de l'élément qui est modifié à chaque itération est
37 défini par une suite. Lorsque cette suite est strictement cyclique (sans
38 occurrences multiples dans le motif) sur l'ensemble des éléments $\{1,\ldots
39 n\}$, alors on retrouve le comportement du mode séquentiel synchrone.
40 \item \textbf{Schéma chaotique:} dans ce schéma, ce n'est plus un seul élément
41 qui est modifié à chaque itération, mais une partie des éléments de
42 $\{1,\ldots n\}$. Dans le premier cas particulier où c'est un singleton
43 $\{k\}$, $1 \le k \le n$, qui est modifié à chaque itération, on retrouve le
44 mode asynchrone, et si la séquence des singletons est ordonnée et cyclique,
45 alors on retrouve le mode séquentiel. Dans le second cas particulier où c'est
46 $\{1, \ldots, n\}$ qui est modifié à chaque itération, on retrouve le mode
47 parallèle. Ce mode généralise donc les trois autres modes précédents.
48 Plus formellement, à la $t^{\textrm{ème}}$
49 itération, seuls les éléments de la partie
50 $s_{t} \in \mathcal{P}(\{1, \ldots, n\})$ sont mis à
51 jour. La suite $S = \left(s_t\right)_{t \in \mathds{N}}$ est une séquence
53 de $\{ 1, \ldots,n \}$ appelée \emph{stratégie}.
54 Dans ce mode opératoire, on définit la fonction\linebreak
55 $F_f:~\mathcal{P}(\{1, \ldots, n\}) \times \Bool^{n} \rightarrow \Bool^n$ par
59 f_i(x) \textrm{ si $i \in s$;}\\
63 Dans le schéma des itérations chaotiques, pour une configuration initiale
64 $x^0\in\Bool^n$ et une stratégie $S = \left(s_t\right)_{t \in \mathds{N}}
65 \in \mathcal{P}(\{1, \ldots, n\})^{\Nats}$,
67 configurations $x^t$ sont définies par la récurrence
68 \begin{equation}\label{eq:asyn}
71 Soit alors $G_f$ une fonction de $\mathcal{P}(\{1, \ldots, n\})^{\Nats}\times\Bool^n$
72 dans lui-même définie par
74 G_f(S,x)=(\sigma(S),F_f(s_0,x)),
76 où $\forall t\in\Nats,\sigma(S)_t=s_{t+1}$.
77 En d'autres termes la fonction $\sigma$ \emph{décale}
78 la stratégie fournie en argument d'un élément vers la gauche en supprimant
80 Les itérations parallèles de $G_f$ depuis un point initial
81 $X^0=(S,x^0)$ décrivent la même orbite que les
82 itérations chaotiques de $f$ induites par $x^0$ et la stratégie
86 \subsection{Graphe d'itérations chaotiques}\label{sub:grIter}
88 Soit $f$ une fonction de $\Bool^n$ dans lui-même.
89 Le {\emph{graphe des itérations chaotiques}} associé à $f$ est le
90 graphe orienté $\Gamma(f)$ défini ainsi:
91 l'ensemble de ses sommets est $\Bool^n$ et pour chaque $x\in\Bool^n$ et
92 $s\in \mathcal{P}(\{1, \ldots, n\})$, le graphe $\Gamma(f)$
93 contient un arc de $x$ vers $F_f(s,x)$.
94 La relation entre $\Gamma(f)$ et $G_f$ est claire: il existe un
95 chemin de $x$ à $x'$ dans $\Gamma(f)$ si et seulement s'il existe une
96 stratégie $S$ telle que les itérations parallèles $G_f$ à partir
97 du point $(S,x)$ mènent à un point $(.,x')$.
99 Dans ce qui suit, et par souci de concision, le terme \emph{graphe des itérations}
100 est une abréviation de graphe des itérations chaotiques.
101 La figure~\ref{fig:xplgraphIter} donne deux exemples de graphes d'itérations
102 pour les fonctions $g$ et $h$ définies dans $\Bool^2$, qui sont reprises tout au long
107 \subfloat[$g(x_1,x_2)=(\overline{x_1},x_1\overline{x_2}) $]{
108 \begin{minipage}{0.40\textwidth}
110 \includegraphics[width=\columnwidth]{images/g}
115 \subfloat[$h(x_1,x_2)=(\overline{x_1},x_1\overline{x_2}+\overline{x_1}x_2)$]{
116 \begin{minipage}{0.40\textwidth}
118 \includegraphics[width=\columnwidth]{images/h}
124 \caption{Graphes d'itérations de fonctions booléennes dans $\Bool^2$.}
125 \label{fig:xplgraphIter}
128 % \subsection{Graphe d'interactions}\label{sub:sdd:inter}
130 % Pour $x\in\Bool^n$ et $i\in\llbracket 1;n\rrbracket$, on nomme
131 % $\overline{x}^i$ la configuration obtenue en niant le
132 % $i^{\textrm{ème}}$ composant de $x$. En d'autres termes
133 % $\overline{x}^i=(x_1,\dots,\overline{x_i},\dots,x_n)$.
134 % Des interactions entre les composants du
135 % système peuvent être mémorisées
136 % dans la {\emph{matrice Jacobienne discrète}} $f'$.
137 % Celle-ci est définie comme étant la fonction qui à chaque
138 % configuration $x\in\Bool^n$ associe la matrice de taille
139 % $n\times n$ définie par :
141 % f'(x)=(f'_{ij}(x)),\qquad
142 % f'_{ij}(x)=\frac{f_i(\overline{x}^j)-f_i(x)}{\overline{x}^j_j-x_j}\qquad (i,j\in\llbracket1;n\rrbracket).
145 % On note que dans l'équation donnant la valeur de $f'_{ij}(x)$, les termes
146 % $f_i(\overline{x}^j)$, $f_i(x)$, $\overline{x}^j_j$ et $x_j$ sont considérés
147 % comme des entiers naturels égaux à $0$ ou à $1$ et que le calcul est effectué
148 % dans $\Z$. Cela est important car le signe des $f'_{ij}(x)$ nous donne une
149 % information supplémentaire sur la dynamique du système.
151 % En outre, les interactions peuvent se représenter à l'aide d'un
152 % graphe $G(f)$ orienté et signé défini ainsi:
153 % l'ensemble des sommets est
154 % $\llbracket1;n\rrbracket$ et il existe un arc de $j$ à $i$ de signe
155 % $s\in\{-1,1\}$, noté $(j,s,i)$, si $f'_{ij}(x)=s$ pour au moins
157 % On note que la présence de
158 % deux arcs de signes opposés entre deux sommets donnés
163 % \subfloat[$g(x_1,x_2)=(\overline{x_1},x_1\overline{x_2}) $]{
164 % \begin{minipage}{0.40\textwidth}
166 % \includegraphics[height=3cm]{images/gp.pdf}
169 % \label{fig:g:inter}
171 % \subfloat[$h(x_1,x_2)=(\overline{x_1},x_1\overline{x_2}+\overline{x_1}x_2)$]{
172 % \begin{minipage}{0.40\textwidth}
174 % \includegraphics[height=3cm]{images/hp.pdf}
177 % \label{fig:h:inter}
179 % \caption{Graphes d'interactions de fonctions booléennes dans $\Bool^2$}
180 % \label{fig:xplgraphInter}
183 % Soit $P$ une suite d'arcs de $G(f)$ de la forme
185 % (i_1,s_1,i_2),(i_2,s_2,i_3),\ldots,(i_r,s_r,i_{r+1}).
187 % Alors, $P$ est dit un \emph{chemin} de $G(f)$ de longueur $r$ et de signe
188 % $\Pi_{i=1}^{r}s_i$ et $i_{r+1}$ est dit accessible depuis
190 % $P$ est un {\emph{circuit}} si $i_{r+1}=i_1$ et si les sommets
191 % $i_1$,\ldots $i_r$ sont deux à deux disjoints.
192 % Un sommet $i$ de $G(f)$ a une {\emph{boucle}}
193 % positive (resp. négative) , si $G(f)$ a un
194 % arc positif (resp. un arc négatif) de $i$ vers lui-même.
196 % \subsection{Retards entre les éléments du système}
197 % \label{sub:sdd:retards}
199 % La notion de retard provient initialement du besoin de prendre en compte les
200 % délais de transfert d'information entre les éléments du système. Lorsque l'on
201 % se place dans le contexte général, ces délais peuvent eux-mêmes varier dans le
202 % temps. On décrit donc le retard de l'élément $j$ par rapport à l'élément $i$ à
203 % l'instant $t$ par $r_j^i(t)$. Ainsi, l'information reçue de $j$ en $i$ à $t$ a
204 % été générée à l'instant (ou itération) $s_j^i(t)=t-r_j^i(t)$. On en déduit que
205 % la mise à jour de l'élément $i$ de l'instant $t$ à $t+1$ s'écrit :
207 % x_i(t+1) = f_i(x_1^{s_1^i(t)},x_2^{s_2^i(t)},\dots,x_i^t,\dots,x_{n-1}^{s_{n-1}^i(t)},x_n^{s_n^i(t)})
209 % On constate que même si le modèle le permet, on ne met généralement pas de délai
210 % entre l'élément $i$ et lui-même car cela n'a pas d'intérêt pratique fort.
212 \subsection{Distance sur l'espace $\mathcal{P}(\{1, \ldots, n\})^{\Nats}\times \Bool^n$}\label{sub:metric}
213 Pour $A$ et $B$ deux ensembles de l'univers $\Omega$,
214 on rappelle la définition de l'opérateur
215 de \emph{différence ensembliste} symétrique :
217 A \Delta B = (A \cap \overline{B}) \cup (\overline{A} \cap B)
219 où $\overline{B}$ désigne le complémentaire de $B$ dans $\Omega$.
221 On considère l'espace $\mathcal{X}=\mathcal{P}(\{1, \ldots, n\})^{\Nats}\times
223 on définit la distance $d$ entre les points $X=(S,x)$ et
224 $X'=(S',x')$ de $\mathcal{X}$ par
226 d(X,X')= d_H(x,x')+d_S(S,S'),~\textrm{où}~
229 \displaystyle{d_H(x,x')=\sum_{i=1}^n |x_i-x'_i|}\\[5mm]
230 \displaystyle{d_S(S,S')=\frac{9}{n}\sum_{t\in\Nats}\frac{|S_t \Delta S'_t|}{10^{t+1}}}.
234 On note que dans le calcul de $d_H(x,x')$ --
235 appelée \gls{distanceHamming} (cf. glossaire)
237 les termes $x_i$ et $x'_i$ sont considérés comme des entiers naturels
238 égaux à $0$ ou à $1$ et que le calcul est effectué dans $\Z$.
239 On note aussi que le symbole $|.|$ est utilisé avec deux sémantiques
240 différentes dans ce calcul:
241 on somme des valeurs absolues dans la distance
242 de Hamming tandis que l'on somme des cardinalités d'ensemble dans
244 De plus, la \gls{partieentiere} (cf. glossaire)
245 $\lfloor d(X,X')\rfloor$ est égale à $d_H(x,x')$ soit la distance
246 de Hamming entre $x$ et $x'$.
247 %D'autre part, $d(X,X')-\lfloor d(X,X')\rfloor=d_S(s,s')$
248 %mesure la différence entre $s$ et $s'$.
249 On remarque que la partie décimale est inférieure à $10^{-l}$ si
250 et seulement si les $l$ premiers termes des deux stratégies sont égaux.
252 $(l+1)^{\textrm{ème}}$ décimale
254 n'est pas nulle, alors $s_l$ est différent de $s'_l$.
256 La fonction $d$ est une somme de deux fonctions.
257 La fonction $d_H$ est la distance de Hamming; il est aussi établi que la
258 somme de deux distances est une distance.
259 Ainsi, pour montrer que $d$ est aussi une distance, il suffit
260 de montrer que $d_S$ en une aussi.
262 Soit $S$, $S'$ et $S''$ trois parties de $\{1,\ldots,n\}$.
264 \item De manière évidente, $d_s(S,S')$ est positive ou bien nulle si
265 et seulement si $S$ et $S'$ sont égales.
266 \item Comme la différence symétrique est commutative, la valeur de
267 $d_S(S,S')$ est égale à celle de $d_S(S',S)$.
268 \item On a enfin la succession d'éléments suivants:
271 S \Delta S' & = & (S \cap \overline{S'}) \cup (\overline{S} \cap S')\\
272 & = & (S \cap \overline{S'} \cap S'' ) \cup (S \cap \overline{S'} \cap \overline{S''} ) \cup (\overline{S} \cap S'\cap S'') \cup (\overline{S} \cap S'\cap \overline{S''})\\
273 & \subseteq & (S \cap \overline{S'} \cap S'' ) \cup (S \cap \overline{S'} \cap \overline{S''} ) \cup (\overline{S} \cap S'\cap S'') \cup (\overline{S} \cap S'\cap \overline{S''}) \cup \\
274 & & (\overline{S} \cap \overline{S'} \cap S'') \cup (S \cap S' \cap \overline{S''} ) \cup (\overline{S} \cap \overline{S'} \cap S'') \cup (S \cap S' \cap \overline{S''})\\
275 & = & (\overline{S'} \cap S'' ) \cup (S \cap \overline{S''} ) \cup (\overline{S} \cap S'') \cup (S'\cap \overline{S''}) \\
276 & = & (S \Delta S'') \cup (S'' \Delta S')
279 On en déduit ainsi que
280 $|S \Delta S'| \le |S \Delta S''| + |S'' \Delta S'|$ et donc que
281 l'égalité triangulaire $d_S(S,S') \le d_S(S,S'') + d_S(S'',S')$ est établie.
284 On peut démontrer que pour toute fonction booléenne $f$,
285 $G_f$ est continue sur $\mathcal{X}$ (cf.~annexe~\ref{anx:cont}).
287 \subsection{Temps de mélange}
288 \label{sec:mixingtime}
290 Le temps de mélange (\emph{mixing time})~\cite{LevinPeresWilmer2006}, est une
291 des métriques usuelles pour estimer la vitesse de convergence des lignes d'une
292 matrice de Markov vers une distribution spécifique. Elle est définie par le
293 nombre minimal d'itérations nécessaires pour obtenir une déviation inférieure à
294 un $\varepsilon$ donné pour chaque ligne de la matrice.
298 %%% TeX-master: "main"