• Aucun résultat trouvé

Démarche d’apprentissage de la dynamique des modèles atomiques

2.3 Optimisation des phases de la méthode multi-niveaux

3.1.2 Démarche d’apprentissage de la dynamique des modèles atomiques

Un modèle DEVS peut se composer d’un grand nombre de modèles atomiques dont les dy-namiques peuvent varier. Dans notre problématique de pondération du graphe de modèles, il est nécessaire d’évaluer la fréquence d’émission de messages entre chaque couple de modèles ato-miques. Or, cette fréquence est parfaitement dépendante de la dynamique du modèle atomique émetteur. Afin de déterminer chaque fréquence, il est nécessaire d’apprendre chacune des diffé-rentes dynamiques individuellement dans le but de créer un automate à états probabilistes pour chacune d’entre elle. L’apprentissage de cet automate se fait au travers de l’étude d’une base d’ap-prentissage fournie par le biais de la simulation d’un modèle atomique individuel.

Base d’apprentissage

Chaque modèle atomique possède une dynamique dont l’algorithme d’optimisation du parti-tionnement n’a pas connaissance. Ils peuvent être perçus comme une"boîte grise"car, même si la dynamique est inconnue, certaines informations sont tout de même accessibles. En effet, avant chaque transition interne la fonctionλ est appelée pour effectuer une sortie. Même si la donnée

émise n’est pas connue, il est possible de déterminer le temps écoulé entre chaque appel de la fonctionλ. Ces durées, notéesdi, reflètent la dynamique du modèle atomique car plus lesdisont faibles plus le modèle effectue des sorties et inversement. En effet, ces durées sont un indicateur fiable permettant de déterminer la fréquence d’émission de messages entre les modèles atomiques.

FIGURE3.1 – Illustration de la notion de "boîte grise" comme représentant d’un modèle atomique

La simulation individuelle d’un modèle atomique durant un certain laps de temps fournit une séquence d’observationsO={d1,d2,· · ·,dk}. Pour garantir la création d’un automate à états pro-babilistes proche de la dynamique du modèle atomique, il est nécessaire d’avoir des séquences d’observations suffisamment grandes, sans que le temps prit par la génération de celles-ci ne soit trop important. À partir de ces séquences d’observations et par application d’un algorithme d’ap-prentissage, un automate à états probabilistes est créé pour représenter la dynamique du modèle atomique. Mais qu’est ce qu’un automate à état probabiliste ?

Qu’est ce qu’un automate à état probabiliste ?

Un automate à état probabiliste est une construction abstraite, généralement sous forme d’un graphe orienté, se composant d’un nombre fini d’états. Chaque état décrit la configuration d’un système en attente d’exécuter une transition, où une transition est un ensemble d’actions à exécuter lorsqu’une condition est remplie ou lorsqu’un événement est reçu. La particularité des automates à état probabiliste est que chaque transition de l’automate est équipée d’une probabilité. Le passage d’un état à un autre s’effectue en fonction de ces probabilités. L’automate est une représentation de l’évolution du système au cours du temps. En effet, celui-ci est susceptible de se trouver dans chaque état mais seulement un à la fois. L’état dans lequel se trouve le système est appelé "état courant". La figure3.2 est un exemple d’automate à état probabiliste à 3 états, où chaque étatSi peut effectuer une transition vers un étatSjavec une certaine probabilité (Pi,j).

La notion d’automate à état probabiliste a été introduite par Michael O. Rabin en 1963 dans [Rab63]. Il définit un automate à état probabiliste comme suit :

Définition 29 (Automate fini probabiliste) : Un automate fini probabiliste A est un

quintupleA= (S,α,P,s0,F)où -Sest l’ensemble fini des états -α est l’alphabet fini d’entrée

-Pest la matrice de transition des états associés à chaque entrée -s0∈Sest l’état initial du système

-Fest l’ensemble des états acceptants

Ce type de structure semble être parfaitement adéquat pour représenter la dynamique des mo-dèles atomiques. Cependant, il est important de réaliser un apprentissage fiable pour garantir l’ob-tention de séquences statistiquement proches de celles obtenues par simulation. La qualité de la pondération du graphe de modèle repose entièrement sur la qualité de cet apprentissage, d’où l’importance de bien choisir la méthode.

Apprentissage et simulation

Le processus de pondération du graphe de modèles repose sur l’apprentissage de la dynamique que contiennent les modèles atomiques. Pour garantir un résultat optimal, il serait nécessaire d’ap-prendre la dynamique de chaque modèle atomique. Or, de part le temps des apprentissages lié à la taille du graphe de modèles et la création d’éventuels doublons, il n’est pas envisageable d’em-ployer une telle démarche. Cette observation nous pousse à émettre l’hypothèse qu’un modèle comportantn modèles atomiques se compose deNd <ndynamiques différentes (contenues par les modèles atomiques). Ceci garantit l’existence de plusieurs modèles atomiques ayant la même dynamique. Pour chacune de ces dynamiques, on réalise une simulation individuelle d’un modèle atomique et on récolte la séquence d’observations des durées écoulées entre chaque émission de messages. Chaque séquence d’observations est considérée comme une base d’apprentissage à la-quelle est appliquée une méthode d’apprentissage. Nous verrons, en section3.1.3, que le choix de la méthode d’apprentissage est dépendant du type d’automate à états probabilistes que l’on souhaite obtenir et de son utilité ?

Chacun desNpapprentissages donne naissance à un automate à état probabiliste qui reflète au mieux la dynamique du modèle appris. Ceci veut dire que lorsque l’on simule l’automate, la sé-quence d’observations obtenue doit être statistiquement proche de celle obtenue par simulation du modèle atomique. Attention, nous parlons bien d’une proximité "statistique", la séquence générée ne respectera certainement pas la logique du modèle mais seulement les statistiques d’apparition des différentes durées. Or, c’est cette seule information qui nous est nécessaire pour déterminer la fréquence d’émission de messages et par conséquent, le poids des arcs du graphe de modèles. À partir des ces automates à états probabilistes, on remplace chaque modèle atomique du graphe de modèles par l’automate qui représente sa dynamique. Ainsi, la simulation de ce graphe d’au-tomates permet d’obtenirnséquences d’observations (une par modèle) à partir desquelles il est

possible de déterminer la fréquence d’émission moyenne de chaque modèle atomique. En consi-dérant qu’une séquence d’observations contenant les durées entre deux émissions d’un modèle atomique se compose de k valeurs distinctes d1,d2,· · ·,dk qui se répètent dans la séquence, on noteni∀i=1,· · ·,k le nombre de fois où une duréedi apparaît dans cette séquence. La durée moyenne d’émission entre deux sorties est donnée par :

dmoy= ki=1 di×ni ki=1 ni

On en déduit la fréquence moyenne d’émission par :

fmoy= 1

dmoy

Pour chaque automate, et donc chaque dynamique, on obtient une fréquence moyennefmoy. Ainsi, chaque arc sortant d’un sommet du graphe se voit attribuer la fréquence moyenne fmoy dépendam-ment de l’automate auquel est rattaché le sommet.

Pour les modèles atomiques sans entrée, l’intérêt de cette approche repose exclusivement sur le fait que l’apprentissage desNpdynamiques est moins coûteux que la génération d’une séquence suffisamment grande pour garantir l’obtention d’une fréquence moyenne fiable par simulation. Cependant, nous verrons dans la section3.3que les modèles atomiques peuvent être soumis à des entrées. Pour respecter cette particularité, certaines modifications ont du être réalisées notamment en ce qui concerne la génération de séquences par simulation du graphe d’automates. Mais avant de nous intéresser plus en détail à cela, il est nécessaire de choisir une méthode d’apprentissage nous permettant d’atteindre nos objectifs.