• Aucun résultat trouvé

4.2 La méthode d’inférence brute

4.2.2 Algorithme de la méthode d’apprentissage des modèles : MoT-AN 91

données de séries temporelles. Nous appelons cet algorithme, par MoT-AN (Modélisation des T-AN).

Tout d’abord, nous introduisons les entrées de l’algorithme ; il prend comme première entrée des données de séries temporelles discrétisées, c’est-à-dire des chronogrammes (voir définition 4.2 en page 87), et la deuxième entrée est le graphe d’influences (définition 4.3 en page 89). Comme il est indiqué précédemment, le graphe d’influences peut être trouvé par la fouille des bases de données ou par des méthodes automatiques qui calculent la corrélation entre les composants du système à modéliser à partir de ses données de séries temporelles (Villaverde et al., 2016).

L’algorithme prend aussi en entrée un modèle présenté en T-AN (définition 3.7 dans le chapitre 3 en page 65), dont l’ensemble des transitions locales temporisées est vide ; le T-AN ne contient alors que des automates (représentant les composants du système) et leurs états locaux (déduits à partir de leurs niveaux discrets dans les chronogrammes).

Ainsi, l’objectif de MoT-AN est de remplir le vide dans l’ensemble des transitions locales temporisées du T-AN pris en entrée. Compte tenu des influences entre les composants (ou en supposant toutes les influences possibles si aucune connaissance à priori n’est disponible), MoT-AN génère les transitions locales temporisées qui pourraient entraîner la même dynamique que celle observée dans les données de séries temporelles prises sous la forme des chronogrammes.

92 4.2 — La méthode d’inférence brute En effet, MoT-AN trouve toutes les transitions locales temporisées candidates telles qu’elles peuvent produire chaque changement dans la dynamique. Un changement dans la dynamique (observée à travers les chronogrammes) correspond à une modification du niveau discret d’un composant du système (un automate en T-AN). Il se produit à cause d’une régulation activatrice ou inhibitrice sur le composant modifié qui est présenté en T-AN par une transition locale temporisée. Par conséquent, MoT-AN trouve ces transitions locales temporisées dont chacune s’écrit sous la forme suivante : τ = ai

`

δ aj, en identifiant son origine (ori(τ) = ai), sa destination (dest(τ) = aj), tous les automates inclus dans sa condition (cond(τ) = `) et finalement son délai (delai(τ) = δ) qui dépend de chaque automate impliqué dans τ.

Par la suite, trouver toutes ces informations permet d’en déduire les signes des régulations responsables de chaque changement dans la dynamique du système. En effet, si dans τ = ai

`

δ aj, i < j alors il s’agit d’une régulation activatrice sinon si i > j c’est une régulation inhibitrice.

Nous donnons dans la suite (en page 93), le pseudo-code de l’algorithme MoT-AN. Plus loin dans ce manuscrit, au chapitre 6, nous donnons son implémentation en Answer Set Programming (ASP).

Pour une meilleure compréhension du pseudo-code, nous introduisons dans la remarque suivante quelques notations.

Remarque. Pour calculer le délai d’une transition locale temporisée qui a produit un changement de niveau d’un composant a à un instant t, il faut toujours se projeter dans le passé de la dynamique du système (c’est-à-dire avant d’atteindre l’instant t) et voir ce qui s’est passé pour causer ce changement. En général, ce sont les changements de niveaux des régulateurs de a qui provoquent le changement de niveaux de a. Ainsi, nous avons besoin d’identifier tous les changements de niveaux des régulateurs de a qui se sont produits avant celui de a qui s’est produit à l’instant t. On note alors par Πx

t le dernier instant ayant produit un changement du composant x avant d’arriver à l’instant t ; i.e., ∀x ∈ Σ, Πx

t < t. On suppose qu’à t = 0, tous les composants du système à modéliser commencent dans un état comme s’ils venaient d’être changés.

Exemple. Prenons l’exemple des chronogrammes des composants x et y sur les 20 unités de temps dans la figure 4.2 en page 88. Pour t = 5, on a Πx

5 = 0 et Πy

5 = 2 sont respectivement les derniers changements de x et y avant t = 5.

Et pour t = 17 on a : Πx

17 = 12 et Πy

17 = 13.

Dans la suite, la notation Πx

t — l’instant du dernier changement du composant x avant d’arriver à l’instant t — est utile pour faciliter la compréhension du pseudo-code de l’algorithme 1, MoT-AN (ci-dessous).

Chapitre 4 — L’inférence des réseaux d’automates avec le temps 93 Algorithm 1 MoT-AN : Modélisation des réseaux d’automates avec le temps.

Entrées :

- AN = (Σ, S, T ) : un T-AN avec T = ∅ ;

- Γ =Sa∈ΣΓa : chronogrammes des données de séries temporelles ;

- χ(N, E) =Sa∈Σχa(Na, Ea) : graphe d’influences entre les automates de AN ; - n ∈ N : le nombre maximal des régulateurs sur un composant dans une transition

locale temporisée apprise.

Sortie : Φ : l’ensemble des T-AN qui réalisent les chronogrammes Γ. – Soit Tappr i s := ∅ //ensemble de toutes les transitions apprises

– Étape 1 :

pour chaque point temporel t dans Γ où un composant a change son niveau discret de i vers j faire //en T-AN, c’est le changement de l’état local ai vers aj

• pour chaque ` ∈ ℘(Na), |`| ≤ n faire

//pour chaque combinaison possible des régulateurs de a

τ := ai `δ aj telle que, si ∃ τ0=ck `cδc cl ∈ ϕ avec ai ∈ `c, Πc t ≥ Πa t, ∀bx ∈ `, Πc t ≥ Πb t alors

//τ est bloquée par τ0 donc τ n’est activée que quand τ0 se termine à Πc

t

δ = t − Πc t

sinon //τ est activée à partir de l’instant qui est égal au maximum des //instants entre les derniers changements de a et des automates de `

δ = t − max(Πa t, Πd t) avec dx ∈ ` ∧ ∀bx ∈ `, b 6= d, Πb t ≤ Πd t.

ajouter τ dans Tc hange(t).

//Tc hange(t) est l’ensemble des transitions apprises par changement à l’instant t

• ajouter toutes les transitions locales temporisées de Tc hange(t) dans Tappr i s. – Étape 2 :

Créer autant que possible dans Φ des T-AN appris, ANk

appr i s = (Σ, S, Tk

appr i s) avec k ≤ |Φ| et |Φ| est le nombre total des T-AN appris. Tk

appr i s ⊆ Tappr i s est l’ensemble minimal des transitions locales temporisées qui pourraient réaliser Γ, c’est-à-dire :

∀ANk

appr i s = (Σ, S, Tk

appr i s) ∈ Φ, @Tk0

appr i s ⊂ Tk

appr i s tel que Tk0

appr i s peut réaliser Γ, autrement dit,

∀t un point temporel dans Γ, si ∃a ∈ Σ tel que a change de niveau à t alors, |Tk

94 4.3 — Validation du résultat de MoT-AN Par conséquent, l’algorithme 1, MoT-AN, génère un ensemble de T-AN qui satisfont la dynamique exprimée par les données de séries temporelles sous la forme des chronogrammes. Nous donnons dans la section 4.3 suivante, un exemple d’application de cet algorithme pour mieux comprendre ses étapes tout en proposant une méthode qui valide son résultat.

4.3 Validation du résultat de MoT-AN

Nous montrons dans cette section, la preuve pratique que l’algorithme 1, MoT-AN, est capable de retrouver toutes les transitions locales temporisées qui sont effectivement responsables des changements dans la dynamique du système à modéliser.