]> AND Private Git Repository - hdrcouchot.git/blob - sdd.tex
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
0bd7629f2613a94d737b0a7b52b0ca71f949cc14
[hdrcouchot.git] / sdd.tex
1
2
3
4 \JFC{Chapeau chapitre à faire}
5
6
7
8 Cette section énonce quelques notions suffisantes 
9 à la compréhension de ce document.
10 Elle commence par formaliser ce que sont les systèmes dynamiques booléens 
11 (section \ref{sub:sdd}) 
12 et montre comment en extraire leur graphe d'itérations (section~\ref{sub:grIter})
13 et d'interactions (section~\ref{sub:sdd:inter}). 
14 Elle se termine en définissant une distance sur l'espace 
15 $\llbracket 1;n\rrbracket^{\Nats}\times \Bool^n$ (section~\ref{sub:metric})
16 qui permet ensuite (section~\ref{sec:charac}) d'établir la chaoticité des 
17 systèmes dynamiques booléens.
18
19
20
21
22
23 \section{Système dynamique booléen}\label{sub:sdd}
24
25 Soit $n$ un entier naturel. Un système dynamique booléen est 
26 défini à partir d'une fonction booléenne:
27 \[
28 f:\Bool^n\to\Bool^n,\qquad x=(x_1,\dots,x_n)\mapsto f(x)=(f_1(x),\dots,f_n(x)),
29 \]
30 et un {\emph{schéma des itérations}} qui peuvent être 
31 parallèles, séquentielles ou asynchrones \ldots 
32 Le schéma des itérations parallèles est défini comme suit:
33 à partir d'une configuration initiale $x^0\in\Bool^n$, la suite 
34 $(x^{t})^{t \in \Nats}$ 
35 des configurations du système est construite à partir de la relation de récurrence
36 $x^{t+1}=f(x^t)$. Tous les $x_i$, $1 \le i \le n$ 
37 sont ainsi mis à jour à chaque itération. 
38 Le  schéma qui ne modifie qu'un élément
39 $i$, $1 \le i \le n$ à chaque itération 
40 est le schéma \emph{asynchrone}. 
41 Plus formellement, à la  $t^{\textrm{ème}}$ itération, seul le  $s_{t}^{\textrm{ème}}$ 
42 composant (entre 1 et $n$) est mis à jour.
43 La suite $s = \left(s_t\right)_{t \in \mathds{N}}$ est une séquence d'indices
44 de $\llbracket 1;n \rrbracket$ appelée \emph{stratégie}. Formellement, dans 
45 ce mode opératoire,
46 soit $F_f: \llbracket1;n\rrbracket\times \Bool^{n}$ vers $\Bool^n$ définie par 
47 \[
48 F_f(i,x)=(x_1,\dots,x_{i-1},f_i(x),x_{i+1},\dots,x_n).
49 \]
50
51 Dans le schéma des itérations asynchrones pour une configuration initiale
52 $x^0\in\Bool^n$ et une stratégie $s\in
53 \llbracket1;n\rrbracket^\Nats$, les configurations $x^t$
54 sont définies par la récurrence
55 \begin{equation}\label{eq:asyn}
56 x^{t+1}=F_f(s_t,x^t).
57 \end{equation}
58
59 Soit alors $G_f$ une fonction de $\llbracket1;n\rrbracket^\Nats\times\Bool^n$ 
60 dans lui même définie par 
61 \[
62 G_f(s,x)=(\sigma(s),F_f(s_0,x)),
63 \] 
64 où $\forall t\in\Nats,\sigma(s)_t=s_{t+1}$.
65 En d'autres termes la fonction $\sigma$ décale
66 la stratégie fournie en argument d'un élément vers la gauche en supprimant 
67 l'élément de tête. 
68 Les itérations parallèles de $G_f$ depuis un point initial
69 $X^0=(s,x^0)$ décrivent la même orbite que les  
70 itérations asynchrones de $f$ induites par $x^0$ et la  stratégie
71 $s$.
72
73 \section{Graphe d'itérations}\label{sub:grIter}
74
75 Soit $f$ une fonction de $\Bool^n$ dans lui-même. 
76 Le {\emph{graphe des itérations asynchrones}} associé à $f$ est le 
77 graphe orienté $\Gamma(f)$ défini ainsi: 
78 l'ensemble de ses sommets est $\Bool^n$ et pour chaque $x\in\Bool^n$ et  
79 $i\in \llbracket1;n\rrbracket$, le graphe $\Gamma(f)$ 
80 contient un arc de $x$ vers $F_f(i,x)$. 
81 La relation entre $\Gamma(f)$ et $G_f$ est claire: il  existe un 
82 chemin  de $x$ à  $x'$ dans $\Gamma(f)$ si et seulement s'il existe une 
83 stratégie  $s$ telle que les itérations  parallèles $G_f$ à partir 
84 du point $(s,x)$ mènent au point $x'$.
85
86
87 Dans ce qui suit, et par souci de concision, le terme \emph{graphe des itérations}
88 est une abréviation de  graphe des itérations asynchrones.
89 La figure~\ref{fig:xplgraphIter} donne deux exemples de graphes d'itérations 
90 pour les fonctions $g$ et $h$ définies dans $\Bool^2$ qui sont reprises tout au long 
91 de ce document. 
92
93
94
95 \begin{figure}%
96 \centering
97 \begin{minipage}{0.40\textwidth}
98   \begin{center}
99     \includegraphics[height=4cm]{images/g.pdf}
100   \end{center}
101 \caption{$g(x_1,x_2)=(\overline{x_1},x_1\overline{x_2}) $}%
102 \label{fig:g:iter}%
103 \end{minipage}
104 \qquad
105 \begin{minipage}{0.40\textwidth}%
106   \begin{center}
107     \includegraphics[height=4cm]{images/h.pdf}
108   \end{center}
109 \caption{$h(x_1,x_2)=(\overline{x_1},x_1\overline{x_2}+\overline{x_1}x_2)$}%
110 \label{fig:h:iter}%
111 \end{minipage}%
112 \end{figure}%
113
114 % \begin{figure}%[t]
115 %   \begin{center}
116 %     \subfloat[$g(x_1,x_2)=(\overline{x_1},x_1\overline{x_2}) $]{
117 %       \begin{minipage}{0.40\textwidth}
118 %         \begin{center}
119 %           \includegraphics[height=4cm]{images/g.pdf}
120 %         \end{center}
121 %       \end{minipage}
122 %       \label{fig:g:iter}
123 %     }
124 %     \subfloat[$h(x_1,x_2)=(\overline{x_1},x_1\overline{x_2}+\overline{x_1}x_2)$]{
125 %       \begin{minipage}{0.40\textwidth}
126 %         \begin{center}
127 %           \includegraphics[height=4cm]{images/h.pdf}
128 %         \end{center}
129 %       \end{minipage}
130 %       \label{fig:h:iter}
131 %     }    \end{center}
132 %     \caption{Graphes d'itérations de fonctions booléennes dans $\Bool^2$}
133 %     \label{fig:xplgraphIter}
134 %   \end{figure}
135
136
137
138
139
140
141
142 \section{Graphe d'interactions}\label{sub:sdd:inter}
143
144 Pour $x\in\Bool^n$ et $i\in\llbracket 1;n\rrbracket$, on nomme  
145 $\overline{x}^i$ la configuration obtenue en niant le 
146 $i^{\textrm{ème}}$ composant de $x$. En d'autres termes
147 $\overline{x}^i=(x_1,\dots,\overline{x_i},\dots,x_n)$.
148 Des interactions entre les composants du 
149 système peuvent être mémorisées 
150 dans la {\emph{matrice Jacobienne discrète}} $f'$.
151 Celle-ci est définie comme étant la fonction  qui  à chaque 
152 configuration $x\in\Bool^n$ associe la matrice de taille 
153 $n\times n$ 
154 \[
155 f'(x)=(f_{ij}(x)),\qquad 
156 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).
157 \]
158 On note que dans l'équation donnant la valeur de $f_{ij}(x)$, 
159 les termes $f_i(\overline{x}^j)$, $f_i(x)$, 
160 $\overline{x}^j_j$ et $x_j$ sont considérés comme des entiers naturels 
161 égaux à $0$ ou à $1$ et que le calcul est effectué dans $\Z$.
162
163 En outre, les interactions peuvent se  représenter à l'aide d'un 
164 graphe $G(f)$ orienté et signé défini ainsi: 
165 l'ensemble des sommets est 
166 $\llbracket1;n\rrbracket$ et il existe un arc de $j$ à $i$ de signe
167  $s\in\{-1,1\}$, noté $(j,s,i)$, si $f_{ij}(x)=s$ pour au moins
168 un $x\in\Bool^n$. 
169 On note que la présence de 
170 deux arcs de signes opposés entre deux sommets donnés 
171 est possible.
172
173
174
175
176
177 \begin{figure}%
178 \centering
179 \begin{minipage}{0.40\textwidth}
180   \begin{center}
181     \includegraphics[height=3cm]{images/gp.pdf}
182   \end{center}
183 \caption{$g(x_1,x_2)=(\overline{x_1},x_1\overline{x_2}) $}%
184 \label{fig:g:inter}%
185 \end{minipage}
186 \qquad
187 \begin{minipage}{0.40\textwidth}
188   \begin{center}
189     \includegraphics[height=3cm]{images/hp.pdf}
190   \end{center}
191 \caption{$h(x_1,x_2)=(\overline{x_1},x_1\overline{x_2}+\overline{x_1}x_2)$}%
192 \label{fig:h:inter}%
193 \end{minipage}%
194 \caption{Graphes d'interactions de fonctions booléennes dans $\Bool^2$}
195 \label{fig:xplgraphInter}
196 \end{figure}%
197
198
199
200
201
202
203
204
205
206 Soit $P$ une suite d'arcs de $G(f)$ de la forme
207 \[
208 (i_1,s_1,i_2),(i_2,s_2,i_3),\ldots,(i_r,s_r,i_{r+1}).
209 \]
210 Alors, $P$ est dit un chemin de $G(f)$ de longueur $r$ et de signe
211 $\Pi_{i=1}^{r}s_i$ et  $i_{r+1}$ est dit accessible depuis
212 $i_1$. 
213 $P$ est un {\emph{circuit}} si $i_{r+1}=i_1$ et si les sommets
214 $i_1$,\ldots $i_r$ sont deux à deux disjoints.
215 Un sommet $i$ de $G(f)$ a une {\emph{boucle}} 
216 positive (resp. négative) , si $G(f)$ a un 
217 arc positif (resp. un arc négatif) de $i$ vers lui-même.
218
219
220
221
222
223 \section{Distance sur l'espace $\llbracket 1;n\rrbracket^{\Nats}\times \Bool^n$}\label{sub:metric}
224 On considère l'espace $\mathcal{X}=\llbracket 1;n\rrbracket^{\Nats}\times
225 \Bool^n$ et
226 on définit la distance $d$ entre les points $X=(s,x)$ et
227 $X'=(s',x')$ de $\mathcal{X}$ par 
228 \[
229 d(X,X')= d_H(x,x')+d_S(s,s'),~\textrm{où}~
230 \left\{
231 \begin{array}{l}
232 \displaystyle{d_H(x,x')=\sum_{i=1}^n |x_i-x'_i|}\\[5mm] 
233 \displaystyle{d_S(s,s')=\frac{9}{n}\sum_{t\in\Nats}\frac{|s_t-s'_t|}{10^{t+1}}}.
234 \end{array}
235 \right.\,.
236 \]
237 On note que dans le calcul de $d_H(x,x')$-- 
238 appelée \gls{distanceHamming} (cf. glossaire) entre $x$ et $x'$-- 
239 les termes $x_i$ et $x'_i$ sont considérés comme des entiers naturels 
240 égaux à $0$ ou à $1$ et que le calcul est effectué dans $\Z$.
241 De plus, la \gls{partieentiere} (cf. glossaire) 
242 $\lfloor d(X,X')\rfloor$ est égale à $d_H(x,x')$ soit la distance 
243 de Hamming entre $x$ et $x'$. 
244 %D'autre part, $d(X,X')-\lfloor d(X,X')\rfloor=d_S(s,s')$ 
245 %mesure la différence entre $s$ et $s'$.
246 On remarque que la partie décimale est inférieure à $10^{-l}$ si
247 et seulement si les $l$ premiers termes des deux stratégies sont égaux. 
248 De plus, si la 
249 $(l+1)^{\textrm{ème}}$ décimale  
250 de $d_S(s,s')$ 
251 n'est pas nulle, alors $s_l$ est différent de  $s'_l$. 
252
253 On peut démontrer que pour toute fonction booléenne $f$, 
254 $G_f$ est continue sur $\mathcal{X}$ (cf annexe~\ref{anx:cont}).   
255