Système dynamique séquentiel

Cette page se comprend mieux après la lecture de Théorie des graphes.

Un système dynamique séquentiel (SDS, sequential dynamical system en anglais) est un formalisme décrivant la façon dont l'état des sommets d'un graphe change en fonction de leurs voisins, dans un ordre donné. Par exemple, un ensemble de personnes peut être représenté par un graphe, où chaque personne est un sommet et deux personnes sont connectées lorsqu'elles sont en contact. Dans un problème d'épidémie, l’état de ces personnes peut correspondre à leur état de santé : sains ou infectieux. Leur état de santé dépend de leurs voisins : un individu est infecté si un de ses voisins est infecté. Si l'état de santé est mis à jour dans un ordre, alors la propagation de cette épidémie se modélise par un système dynamique séquentiel. La notion d'ordre, ou de séquence, est une différence essentielle par rapport à des formalismes tels que les automates cellulaires, où l'application de fonctions selon les voisins se fait en parallèle (i.e., tous les états sont mis à jour en même temps). Le but de ce formalisme est d'étudier les transitions entre les différents états possibles du système, c'est-à-dire l'espace des phases, selon le graphe, les fonctions, et l'ordre.

Définition

Un système dynamique séquentiel (SDS) repose sur un graphe fini G {\displaystyle G} , c'est-à-dire un ensemble de sommets pouvant être connectés deux à deux par des arêtes[A 1]. Chacun des sommets de ce graphe a un état, dans l'ensemble fini K {\displaystyle K} . De plus, il existe pour chaque sommet v V ( G ) {\displaystyle v\in V(G)} une fonction F v {\displaystyle F_{v}} qui met à jour l'état de v {\displaystyle v} selon l'état de sommets déterminés de V ( G ) {\displaystyle V(G)} . L'ensemble des mises à jour des états est ordonné par un mot w = ( w 1 , . . . , w k ) , w i V ( G ) {\displaystyle w=(w_{1},...,w_{k}),w_{i}\in V(G)} . Ainsi, un SDS est défini par le triplet ( G , ( F v ) v , w ) {\displaystyle (G,(F_{v})_{v},w)} . Une fois l'ensemble des mises à jour effectué dans l'ordre donné par w {\displaystyle w} , l'état du graphe a changé, ce qui se décrit formellement par [ F G , w ] : K n K n {\displaystyle [F_{G},w]:K^{n}\rightarrow K^{n}} .

Exemple : réseau booléen

Articles connexes : Fonction logique et Réseau booléen.
État du système étape par étape
État initial x {\displaystyle x} selon chacun des x i {\displaystyle x_{i}} , montrant l'ordre et les fonctions.
Application de F 0 {\displaystyle F_{0}} . L'état x 0 {\displaystyle x_{0}} devient 1 1 = 1 {\displaystyle 1\cdot 1=1} .
Application de F 1 {\displaystyle F_{1}} . L'état x 1 {\displaystyle x_{1}} devient 1 + 1 = 1 {\displaystyle 1+1=1} .
Application de F 2 {\displaystyle F_{2}} . L'état x 2 {\displaystyle x_{2}} devient 1 1 = 0 {\displaystyle 1\oplus 1=0} .
Application de F 0 {\displaystyle F_{0}} . L'état x 0 {\displaystyle x_{0}} devient 1 0 = 0 {\displaystyle 1\cdot 0=0} .
Application de F 1 {\displaystyle F_{1}} . L'état x 1 {\displaystyle x_{1}} devient 0 + 0 = 0 {\displaystyle 0+0=0} . Les états ne changent plus.
Play Pause Stop Précédent Suivant Select
 

La définition d'un système dynamique séquentiel peut se faire en définissant successivement les éléments suivants : le graphe G {\displaystyle G} (quels sont les sommets et les arêtes), les états possibles K {\displaystyle K} des sommets, les fonctions mettant à jour les états, et l'ordre de mise à jour. Dans cet exemple, le graphe est formé de 3 sommets numérotés 0 {\displaystyle 0} , 1 {\displaystyle 1} et 2 {\displaystyle 2} , liés en un cycle. L'état x v {\displaystyle x_{v}} de chacun des sommets v {\displaystyle v} est 0 ou 1, c'est-à-dire que K = { 0 , 1 } {\displaystyle K=\{0,1\}} . Un graphe où chaque sommet peut prendre deux états est appelé réseau booléen. L'état de l'ensemble du système dynamique est donné par l'état de chacun des trois sommets, soit x = ( x 0 , x 1 , x 2 ) {\displaystyle x=(x_{0},x_{1},x_{2})} .

Pour mettre à jour les états des sommets, il existe trois fonctions F i : K 4 K 4 {\displaystyle F_{i}:K^{4}\rightarrow K^{4}} . Concrètement, la fonction F i {\displaystyle F_{i}} ne change que l'état du sommet i {\displaystyle i} . Pour changer l'état, elle se fonde sur le voisinage du sommet. Par exemple, l'état peut être changé en appliquant une fonction logique sur les états des deux sommets voisins :

F 0 ( x 0 , x 1 , x 2 ) = ( x 1 x 2 , x 1 , x 2 ) {\displaystyle F_{0}(x_{0},x_{1},x_{2})=(x_{1}\cdot x_{2},x_{1},x_{2})} , où {\displaystyle \cdot } représente la fonction ET
F 1 ( x 0 , x 1 , x 2 ) = ( x 0 , x 0 + x 2 , x 2 ) {\displaystyle F_{1}(x_{0},x_{1},x_{2})=(x_{0},x_{0}+x_{2},x_{2})} , où + {\displaystyle +} représente la fonction OU
F 2 ( x 0 , x 1 , x 2 ) = ( x 0 , x 1 , x 0 x 1 ) {\displaystyle F_{2}(x_{0},x_{1},x_{2})=(x_{0},x_{1},x_{0}\oplus x_{1})} , où {\displaystyle \oplus } représente la fonction OU exclusif

Un ordre possible de mise à jour consiste à exécuter tout d'abord F 0 {\displaystyle F_{0}} , puis F 1 {\displaystyle F_{1}} et enfin F 2 {\displaystyle F_{2}} . Cet ordre est dénoté w = ( 0 , 1 , 2 ) {\displaystyle w=(0,1,2)} , et est illustré ci-contre, partant de l'état x = ( 0 , 1 , 1 ) {\displaystyle x=(0,1,1)} . La notation [ F G , ( 0 , 1 , 1 ) ] {\displaystyle [F_{G},(0,1,1)]} consiste à appliquer les fonctions dans l'ordre donné par w {\displaystyle w} et à renvoyer le résultat une fois toutes les fonctions appliquées[Note 1]. Ainsi qu'illustré étape par étape, le résultat est [ F G , ( 0 , 1 , 1 ) ] = ( 1 , 1 , 0 ) {\displaystyle [F_{G},(0,1,1)]=(1,1,0)} . Formellement, appliquer la troisième fonction sur le résultat de la seconde, elle-même venant du résultat de la première, s'écrit [ F G , ( w 0 , w 1 , w 2 ) ] = F w 2 , G F w 1 , G F w 0 , G {\displaystyle [F_{G},(w_{0},w_{1},w_{2})]=F_{w_{2},G}\circ F_{w_{1},G}\circ F_{w_{0},G}} . Appliquer une fonction F v {\displaystyle F_{v}} est appelé mise à jour de l'état x v {\displaystyle x_{v}} , tandis qu'appliquer toutes les fonctions par [ F G , w ] {\displaystyle [F_{G},w]} à partir d'un état x {\displaystyle x} est appelé mise à jour du système.

Espace des phases

Espace des phases pour l'exemple du réseau booléen. Ainsi qu'illustré pas à pas, il y a une transition de 011 à 110.
Espace des phases en utilisant comme fonctions
F 0 ( x 0 , x 1 , x 2 ) = ( x 1 + x 2 , x 1 , x 2 ) {\displaystyle F_{0}(x_{0},x_{1},x_{2})=(x_{1}+x_{2},x_{1},x_{2})} , F 1 ( x 0 , x 1 , x 2 ) = ( x 0 , x 0 x 2 , x 2 ) {\displaystyle F_{1}(x_{0},x_{1},x_{2})=(x_{0},x_{0}\cdot x_{2},x_{2})} et F 2 ( x 0 , x 1 , x 2 ) = ( x 0 , x 1 , x 0 + x 1 ) {\displaystyle F_{2}(x_{0},x_{1},x_{2})=(x_{0},x_{1},x_{0}+x_{1})} .

L'espace des phases décrit les transitions entre les différents états possibles du système. Il s'agit donc d'un graphe, où un sommet correspond à un état possible, et un arc va d'un sommet à un autre s'il existe une transition entre les deux états. Formellement, l'espace des phases est le graphe dirigé Γ {\displaystyle \Gamma } . Chaque sommet ayant un état parmi K {\displaystyle K} possibles, l'ensemble des états correspond à toutes les combinaisons possibles d'états initiaux des n {\displaystyle n} sommets. Ainsi, V ( Γ ) = { x K n } {\displaystyle V(\Gamma )=\{x\in K^{n}\}} . L'ensemble des arêtes est donné en prenant comme source chacun des sommets (i.e., état possible) et comme destination son résultat par la mise à jour du système : E ( Γ ) = { ( x , [ F G , w ] ( x ) ) | x V ( Γ ) } {\displaystyle E(\Gamma )=\{(x,[F_{G},w](x))|x\in V(\Gamma )\}} . Le principal but des SDS est de « déduire autant d'informations que possible sur la structure de l'espace des phases Γ {\displaystyle \Gamma } , selon les propriétés du graphe G {\displaystyle G} , les fonctions ( F v ) v {\displaystyle (F_{v})_{v}} , et l'ordre de mise à jour w {\displaystyle w}  »[A 2].

Références

(en) Henning S. Mortveit et Christian M. Reidys - An introduction to sequential dynamical systems, Springer, 2008, (ISBN 9780387498799).

  1. Préface.
  2. Chapitre 1 : What is a Sequential Dynamical System? p. 3-4

Notes

  1. Par définition, appliquer les fonctions en suivant un ordre revient à définir un système séquentiel. Cependant, certaines fonctions peuvent être appliquées en parallèle : par exemple, deux fonctions se suivant dans l'ordre et n'utilisant pas les mêmes sommets peuvent être appliquées en même temps.
  • icône décorative Portail de la physique
  • icône décorative Portail des mathématiques