162
Théorie de la Modélisation et de la Simulation Fondements formels et opérationnels de Record/VLE Raphaël Duboz – Fréderick Garcia – Gauthier Quesnel – Éric Ramat INRA (Institut National de la Recherche Agronomique) LIL (Laboratoire d’Informatique du Littoral) (LIL, INRA) Modélisation et simulation 1 / 113

Théorie de la Modélisation et de la Simulation ... · Plan 1 Modélisation et Simulation Définitions Paradigme et simulateur Classes de modèles 2 Formalismes de modélisation

  • Upload
    doanthu

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

Théorie de la Modélisation et de la SimulationFondements formels et opérationnels de Record/VLE

Raphaël Duboz – Fréderick Garcia – Gauthier Quesnel – Éric Ramat

INRA (Institut National de la Recherche Agronomique)LIL (Laboratoire d’Informatique du Littoral)

(LIL, INRA) Modélisation et simulation 1 / 113

Plan

1 Modélisation et SimulationDéfinitionsParadigme et simulateurClasses de modèles

2 Formalismes de modélisation

3 P-DEVS

4 Multi-formalisme et problématique du couplageModélisation multipleIntégration opérationelleIntégration formelle

(LIL, INRA) Modélisation et simulation 2 / 113

Plan

1 Modélisation et SimulationDéfinitionsParadigme et simulateurClasses de modèles

2 Formalismes de modélisation

3 P-DEVS

4 Multi-formalisme et problématique du couplageModélisation multipleIntégration opérationelleIntégration formelle

(LIL, INRA) Modélisation et simulation 3 / 113

Théorie M&SIntroduction

Les termes et concepts à développer :

Systèmes

Expérimentation

Modéles et modélisation

Paradigmes

Simulation

Spécification formelle

(LIL, INRA) Modélisation et simulation 4 / 113

Théorie M&SDéfinitions - Système

Définition 1Un système est caractérisé par le fait que l’on sait distinguer ce qui luiappartient de ce qui ne lui appartient pas.

Définition 2Le système est supposé contrôlable et/ou observable. Des variables,générées par l’environnement, agissent sur le comportement du systèmequi, à son tour, réagit sur cet environnement.

(LIL, INRA) Modélisation et simulation 5 / 113

Théorie M&SDéfinitions - Système

Définition 3Un système réel est une combinaison de un ou plusieurs élémentsstructurels inter-reliés tels que les états d’un élément sont influencés parses propres états et ceux des autres éléments.

Définition 4Mise en avant de l’aspect d’inter-influence des composantes du systèmeréel dont le comportement observé est, en partie, le résultat de cesinfluences.

(LIL, INRA) Modélisation et simulation 6 / 113

Théorie M&SDéfinitions - Schéma d’expérimentation

Définition 1Une expérimentation est un processus par lequel on récolte des donnéessur un système en agissant sur ses entrées [F. Cellier]

Définition 2Un schéma d’expérimentation définit un ensemble limité de circonstancessous lesquelles est conduite l’expérimentation:

variables observées,

séquencements des entrées,

conditions initiales,

conditions d’arrêt,

collecte et codage des données.

(LIL, INRA) Modélisation et simulation 7 / 113

Théorie M&SDéfinitions - Modèle

Définition 1Un modèle M d’un système S pour une expérimentation E est toute choseà laquelle on peut appliquer E pour répondre à des questions concernantS [M. Minsky]

(LIL, INRA) Modélisation et simulation 8 / 113

Théorie M&SDéfinitions - Modèle

Définition 2Construire une représentation simplifiée et observable du comportementet/ou de la structure d’un système réel afin de résoudre un problèmed’analyse ou de conception.

Définition 3modèle prédictif : on cherche à prédire une situation/un état dusystème ;

modèle descriptif : on capitalise la connaissance au sein d’un modèle.

(LIL, INRA) Modélisation et simulation 9 / 113

Théorie M&SDéfinitions - Modélisation

Définition 1La modélisation est un processus par lequel on organise lesconnaissances portant sur un système donné [B. Zeigler]

Définition 2Modéliser c’est abstraire de la réalité une description d’un systèmedynamique [P. A. Fishwick]

(LIL, INRA) Modélisation et simulation 10 / 113

Théorie M&SDéfinitions - Paradigme

DéfinitionUn paradigme est un ensemble de concepts, de lois et de moyens visant àdéfinir une collection de modèles.

Exempleéquations différentielles ;

file d’attentes ;

automates à états finis ;

automates cellulaires ;

...

(LIL, INRA) Modélisation et simulation 11 / 113

Théorie M&SDéfinitions - Système/Modèle/Paradigme/Expérimentation

(LIL, INRA) Modélisation et simulation 12 / 113

Théorie M&SIntroduction

(LIL, INRA) Modélisation et simulation 13 / 113

Théorie M&SDéfinitions - Simulation

Définition 1La simulation est la reproduction du comportement dynamique d’unsystème réel s’appuyant sur un modèle

Définition 2La simulation a pour objet d’observer le comportement en fonction dutemps d’un modèle d’un système

(LIL, INRA) Modélisation et simulation 14 / 113

Théorie M&SDéfinitions - Simulation informatique

Définition 1Traduction en programmes informatiques (algorithmes) du comportementdynamique des modèles. Exécution en temps fini.

(LIL, INRA) Modélisation et simulation 15 / 113

Théorie M&SParadigme et simulateur

il y a une distinction claire entre modèle et simulateur ;

les deux peuvent s’écrire comme des systèmes ;

il est possible d’établir des relations d’équivalence entre eux.

La notion d’erreur introduite par le simulateur n’est pas toujours simple àformuler.

sauf dans le cas d’un intégrateur où elle est peut souvent l’être (analysenumérique)

(LIL, INRA) Modélisation et simulation 16 / 113

Théorie M&SParadigme et simulateur

La séquence s0, s1, ...sn est appelée trajectoire d’état ;La séquence x0, x1, ...xn est appelée trajectoire d’entrée ;La séquence y0, y1, ...yn est appelée trajectoire de sortie ;

Modèle à temps discret

(LIL, INRA) Modélisation et simulation 17 / 113

Théorie M&SParadigme et simulateur

Simulateurt = t0s = s0

tant que t <= tf fairey(t) = λ(s(t), x(t))s(t + ∆t) = δ(s(t), x(t),∆t)

fin tant que

(LIL, INRA) Modélisation et simulation 18 / 113

Théorie M&SParadigme et simulateur

(LIL, INRA) Modélisation et simulation 19 / 113

Théorie M&SParadigme et simulateur

si possible, l’équation différentielle est résolue de façon analytique :I impossible dans la grande majorité des modèles ;I sinon on intégre l’équation par résolution numérique.

SimulateurL’idée sous jacente pour un intégrateur parfait :

ds(t)dt

= lim∆t→0

s(t + ∆t) − s(t)∆t

Donc, pour un intervalle de temps très petit :

s(t + ∆t) ≈ ∆tds(t)

∆t+ s(t)

s(t + ∆t) ≈ ∆t [f(x(t), s(t))] + s(t)

(LIL, INRA) Modélisation et simulation 20 / 113

Théorie M&SDéfinitions - Classes de modèles

temps :I modèle à temps continu, le temps est spécifié comme évoluant de

manière continue, le temps est un nombre réel ;I modèle à temps discret, le temps avance par sauts d’une valeur entière

à une autre, le temps est un entier.

variable d’états :I modèle à états discrets, les variables prennent leurs valeurs dans un

ensemble discret ;I modèle continu, les variables descriptives sont des nombres réels.

(LIL, INRA) Modélisation et simulation 21 / 113

Théorie M&SDéfinitions - Classes de modèles

(LIL, INRA) Modélisation et simulation 22 / 113

Théorie M&SDéfinitions

Hiérarchie de spécification

niveau nom que savons nous à ce niveau ?0 cadre d’observation quelles variables mesurer et com-

ment les observer sur une base detemps

1 relation d’entrée sor-tie

données indexées sur le temps. Pairsd’entrée – sortie

2 fonction d’entrée –sortie

connaissance de l’état initial (un en-trée→ une sortie)

3 transition d’états comment les entrées affectent lesétats et comment les états affectentles sorties

4 composants couplés comment les composants de niveauxinférieurs sont couplés

(LIL, INRA) Modélisation et simulation 23 / 113

Théorie M&SDéfinitions

Niveau 0Un cadre d’observation O est une structure O =< T ,X ,Y > où

T est la base de temps ;

X ensemble des valeurs d’entrée ;

Y ensemble des valeurs de sortie.

DescriptionT est un ensemble d’entiers ou de réels selon la représentation dutemps (discret ou continu) ;

le système est vu comme étant soumis aux éléments de X ;

Y est un ensemble représentant l’interface au travers de laquelle lesystème influe sur son environnement ;

X et Y sont des sous-ensembles quelconques d’entiers, de réels oude symboles.

(LIL, INRA) Modélisation et simulation 24 / 113

Théorie M&SDéfinitions

Niveau 1Une relation d’entrée-sortie IOR est une structure :

IOR =< T ,X ,Ω,Y ,R >

Ω est l’ensemble des segments d’entrée ;

R = (ωi , ρi)

Descriptionωi est une trajectoire d’entrée : variation d’une entrée entre ti et tjωi et ρi sont observés sur le même intervalle ;

spécification ambiguë car pour le même ωi , on peut observer deuxtrajectoires de sortie différentes.

(LIL, INRA) Modélisation et simulation 25 / 113

Théorie M&SDéfinitions

Hiérarchie de spécification

(LIL, INRA) Modélisation et simulation 26 / 113

Théorie M&SDéfinitions

Niveau 2Une fonction d’entrée-sortie IOF est une structure :

IOR =< T ,X ,Ω,Y ,F >

F est un ensemble de fonctions d’entrée-sortie.

Descriptionchaque fi définit un segment de sortie unique pour un segmentd’entrée ;

un état initial est définit.

(LIL, INRA) Modélisation et simulation 27 / 113

Théorie M&SDéfinitions

Hiérarchie de spécification

(LIL, INRA) Modélisation et simulation 28 / 113

Théorie M&SDéfinitions

Niveau 3Un système dynamique est une structure S =< T ,X ,Y ,Ω,Q ,∆,Λ > où

Q est l’ensemble des états du système ;

∆ : Q × Ω→ Q est la fonction de transition globale ;

Λ : Q → Y est la fonction de sortie.

Descriptionla fonction de transition globale du système définit l’état final obtenuaprès l’application d’un segment d’entrée ;

pas de définition des états intermédiaires ;

spécification du comportement à reproduire et non comment lereproduire.

(LIL, INRA) Modélisation et simulation 29 / 113

Théorie M&SDéfinitions

Hiérarchie de spécification

(LIL, INRA) Modélisation et simulation 30 / 113

Théorie M&SDéfinitions

Niveau 4Un système dynamique est une structure :

CS =< T ,X ,Y ,C ,EIC ,EOC , IC >

C est l’ensemble des modèles composants le modèle global ;

EIC est l’ensemble des couplages entre les entrées du modèle etentrées des sous-modèles ;

EOC est l’ensemble des couplages entre les sorties du modèle etsorties des sous-modèles ;

IC est l’ensemble des couplages entre les sous-modèles.

(LIL, INRA) Modélisation et simulation 31 / 113

Théorie M&SDéfinitions

Hiérarchie de spécification

(LIL, INRA) Modélisation et simulation 32 / 113

Plan

1 Modélisation et SimulationDéfinitionsParadigme et simulateurClasses de modèles

2 Formalismes de modélisation

3 P-DEVS

4 Multi-formalisme et problématique du couplageModélisation multipleIntégration opérationelleIntégration formelle

(LIL, INRA) Modélisation et simulation 33 / 113

Formalismes de modélisationIntroduction

AvertissementLe choix d’un formalisme reste un hypothèse forte dans le processus demodélisation. Il est important de tenir compte des propriétés du systèmedans ce choix !

Déterministe ou stochastiqueL’aspect déterministe ou stochastique est aussi à intégrer.

(LIL, INRA) Modélisation et simulation 34 / 113

Formalismes de modélisationEquations différentielles ordinaires

ClasseEtat continu, temps continu et pas d’espace

E.D.O d’ordre n : F(x, x′, . . . , x(n), t) = 0 où F est une fonction continue.

Le pendule simple12ml2θ −mglcosθ = −mglcosθ0

m : la masse

g : l’accéleration (9.81ms−2)

l : longueur

θ(t) : angle du pendule en t

θ0 : angle max ou angle à t = 0

(LIL, INRA) Modélisation et simulation 35 / 113

Formalismes de modélisationEquations différentielles ordinaires

RésolutionRésoudre une E.D.O :Trouver une fonction x(t) vérifiant F(x(t), x′(t), . . . , x(n)(t), t) = 0 sur ledomaine de t .

(LIL, INRA) Modélisation et simulation 36 / 113

Formalismes de modélisationEquations différentielles ordinaires d’ordre 1

E.D.O du 1er ordre : F(x, x′, t) = 0

F peut être vectoriel : systèmes d’équations différentielles coupléesx(n) = f(x, x′, . . . , x(n−1), t) (1)

équivalent à y′ = g(y, t), avec y =

xx′

· · ·

x(n−1)

Exemple : le pendule simple

θ′ = ω

ω′ = 2gl (cosθ − cosθ0)

(LIL, INRA) Modélisation et simulation 37 / 113

Formalismes de modélisationEquations différentielles ordinaires d’ordre 1

Pour une E.D.O du 1er ordre avec conditions initiales

x′ = f(x(t), t), x(0) = x0

Simulation - Euler

Dév. de Taylor : x(t + h) = x(t) + hx′(t) + h2

2 x′′(t) + h3

3! x(3)(t) + · · · au

premier ordre : méthode d’Euler avec pas fixe h =(tf−t0)

N .

Simulation - Runge-kuttaEvaluation itérative de f() en plusieurs points sur l’intervalle [tn, tn+1]Exemple : Runge-Kutta ordre 2

xn+1 = xn +hn

4

[f(xn, tn) + 3f

(xn +

23

hnf(xn, tn), tn +23

hn

)](LIL, INRA) Modélisation et simulation 38 / 113

Formalismes de modélisationEquations différentielles ordinaires

Autres méthodesPas adaptatifs : contrôler la précision de dt pour assurer que l’erreur nesoit pas trop grande

RK4/RK5 adaptatif ;

méthode de Gear ;

Adams-Bashfort-Moulton ;

. . .

Equations différentielles stochastiques

Mouvement brownien - Équation de Langevin :m d~v(t)

dt = −k~v(t) + ~η(t) où ~η(t) est un terme stochastique

ajout de délais stochastiques : dN(t)dt = rN(t)(1 − 1

K N(t − η(t)))

(LIL, INRA) Modélisation et simulation 39 / 113

Formalismes de modélisationEquations différentielles partielles

ClasseEtat continu, temps continu et espace continu

On parle d’EDP dans le cas de fonctions qui dépendent de plusieursvariables, une EDP exprimant un lien entre les dérivées partielles d’unefonction.

F(. . . ,∂i+ju(x, t)∂x i∂t j

, . . .) = 0

avec conditions initiales fonctionnelles

Exemple : l’équation de la chaleur

∂u(x, t)∂t

=∂2u(x, t)∂x2

avec par exemple u(0, t) = u(L , t) = 0

(LIL, INRA) Modélisation et simulation 40 / 113

Formalismes de modélisationEquations différentielles partielles

Simulationon parle plutôt de résolution ;

différentes méthodes qui passent par la discrétisation en x et en t del’EDP (volumes finis, éléments finis, . . . )

(LIL, INRA) Modélisation et simulation 41 / 113

Formalismes de modélisationEquations aux différences

ClasseEtat continu, temps discret et pas d’espace

xn = f(xn−1, xn−2, . . . , xn−m, n)

avec conditions initiales x0, x−1, . . . , x−m+1 ∈ IR

ClasseEtat continu, temps discret et espace discret

Cas particulier de l’équation précédente :

x in = fi(x1

n−1, . . . , xi−1n−1, x

in−1, x

i+1n−1, . . . , x

pn−1)

avec x i variables d’états spatialisées.

(LIL, INRA) Modélisation et simulation 42 / 113

Formalismes de modélisationEquations aux différences

Stochastiquemodélisation d’un processus Markovien d’ordre m

xn = F(xn−1, xn−2, . . . , xn−m, n)

avec F fonction de distribution sur xn.

une approche très simple consiste à ajouter à f() une variablealéatoire :

xn = f(xn−1, xn−2, . . . , xn−m, n, θn)

avec θn processus aléatoire.

également, possibilité de tirer aléatoirement les conditions initialesx0, x−1, . . . , x−m+1 ∈ IR.

(LIL, INRA) Modélisation et simulation 43 / 113

Formalismes de modélisationAutomates à états finis

ClasseEtat discret, temps discret et pas d’espace

A = 〈X ,S, s0,Q ,∆〉

avec

S l’ensemble des états s du système,

s0 l’état initial,

Q les état terminaux,

X l’ensemble des symboles x possibles en entrée,

∆ la fonction de transition :

∆ : X × S → S

(LIL, INRA) Modélisation et simulation 44 / 113

Formalismes de modélisationAutomates à états finis

ExempleS = 1, 2, 3, 4, 5 et X = a, b

b

ab

ba

a

54

1

32

a,b

a,b

(LIL, INRA) Modélisation et simulation 45 / 113

Formalismes de modélisationAutomates à états finis

StochastiqueRendre stochastique la fonction de transition ∆.On représente ∆ par une chaîne de Markov sur sn ∈ S contrôlée parxn ∈ X , selon

P(s(n) | s(n − 1), x(n − 1))

(LIL, INRA) Modélisation et simulation 46 / 113

Formalismes de modélisationAutomates cellulaires

ClasseEtat discret, temps discret et espace discret

Automate à états finis particulier avec représentation spatialisée de l’état.

RdP = 〈G,S,∆〉

avec

G une grille infinie régulière sur IRd , d = 1, 2, 3 qui porte les cellules,

S l’espace d’états en chaque cellule,

∆ la fonction de transition locale de chaque cellule :

si(n) = ∆i(sj1(n − 1), . . . , sjk (n − 1)) où jk voisins de i

(LIL, INRA) Modélisation et simulation 47 / 113

Formalismes de modélisationAutomates cellulaires

Fonction de transitionLa fonction de transition ∆ peut être :

spatialement homogène ou non,

dépendante du temps ou non,

synchrone ou asynchrone,

déterministe ou stochastique.

(LIL, INRA) Modélisation et simulation 48 / 113

Formalismes de modélisationRéseaux de Petri

ClasseEtat discret, temps discret et pas d’espace

DéfinitionAutomate à états finis particulier, avec représentation factorisée de l’état etde la fonction de transition.

RdP = 〈P,T ,M0〉

avec

P l’ensemble des places,

T l’ensemble des transitions,

M0 le marquage initial.

(LIL, INRA) Modélisation et simulation 49 / 113

Formalismes de modélisationRéseaux de Petri

p1

p2

p3

p4

t2

t3

t1

22

DéfinitionLa dynamique d’un RdP est modélisée par le franchissement destransitions dont les places en amont respectent le poids des arcs,amenant une modification du marquage M.

(LIL, INRA) Modélisation et simulation 50 / 113

Formalismes de modélisationRéseaux de Petri

Pouvoir d’expressionLes réseaux de Pétri sont bien adaptés pour modéliser des systèmesdynamiques présentant des propriétés telles que :

exécution séquentielle ;

conflit ;

concurrence ;

synchronisation ;

ressources contraintes.

(LIL, INRA) Modélisation et simulation 51 / 113

Formalismes de modélisationRéseaux de Petri

AnalyseVérification de propriétés formelles vérifiées par le réseau :

atteignabilité : Peut-on atteindre tel marquage à partir de cemarquage ? ;

réseau borné : Est-ce que toutes les places sont bornées ? (uneplace est k-bornée si le nombre de jetons est inférieur à k quelquesoit le marquage initial)

réseau vivant : Peut-on encore franchir une transition ?(Pseudo-vivacité et quasi-vivacité)

SimulationUn RdP peut être simuler pour être étudié.

(LIL, INRA) Modélisation et simulation 52 / 113

Formalismes de modélisationRéseaux de Petri

ExtensionsEnrichissement du pouvoir d’expression des RdP au détriment del’analyse formelle.

RdP généralisés : avec des poids sur les arcs ;

RdP = 〈P,T ,WI,WO ,M0〉

pur/impur ;arc inhibiteur ;RdP colorés : jetons et places distingués ;RdP temporels : assignation de valeurs temporels aux transitions ouaux places ;

I Deterministic Timed Petri nets (DTPN)I Stochastic Timed Petri nets (STPN)

RdP hiérarchique.

(LIL, INRA) Modélisation et simulation 53 / 113

Formalismes de modélisationModèles à évènements discrets

ClasseEtat discret, temps discret et pas d’espace

Changement de l’état du système (event) à des dates discrètesquelconques sur IR+.

SimulationLa simulation d’un modèle à évènements discrets consiste à gérer uneliste courante d’évènements programmés, et, successivement :

faire avancer le temps jusqu’au prochain évènement programmé ;

exécuter l’évènement : modifier l’état et la liste d’évènements.

(LIL, INRA) Modélisation et simulation 54 / 113

Formalismes de modélisationAutres formalismes

Il existe au delà des principaux formalismes présentés ici de nombreuxautres modèles qui s’y rattachent plus ou moins.

Autres formalismesSystem Dynamics de Forrester : modèles de type systèmes d’EDOmodélisant des stocks et flux Cf. Vensim, ModelMaker, . . .

Dynamic Systems : issu de l’Automatique. Modèles de type équationdifférentielles algébriques modélisant intégration, dérivation, filtrage,retard, etc. sur des variables physiques continues. Cf. MatlabSimulink, Scilab, . . .

Modèles d’agents et systèmes multi-agents : généralise lesautomates cellulaires avec des cellules qui seraient de type modèlesà évènements discrets . . .

Modèles décisionnels : plans d’actions, ordonnancement, plansréactifs, . . .

(LIL, INRA) Modélisation et simulation 55 / 113

Plan

1 Modélisation et SimulationDéfinitionsParadigme et simulateurClasses de modèles

2 Formalismes de modélisation

3 P-DEVS

4 Multi-formalisme et problématique du couplageModélisation multipleIntégration opérationelleIntégration formelle

(LIL, INRA) Modélisation et simulation 56 / 113

DEVS, Discrete Event System SpecificationIntroduction

Un formalisme systémique de modélisation :

événements discrets

ensembles, états, fonctions de transition d’états

approche modulaire et hiérarchique

DEVS à été initié par B. P. Zeigler en 1976 :

+50 simulateurs DEVS (libres/payants, spécialisés etc.)

Monde : États-Unis (Univ. Arizona), Canada (Univ. Mc Gill), Portugal(Univ. Calombra), Corée du Sud (Univ. Hang Kong), Allemagne (Univ.Rostock), . . .

France : Calais (LIL/ULCO), Toulouse (Inra), Montpellier (Cirad),Clermont-Ferrand (Isima), en Corse (Univ. de Corse), Marseille (UnivAix 3), . . .

(LIL, INRA) Modélisation et simulation 57 / 113

DEVS, Discrete Event System SpecificationIntroduction

Un formalisme systémique de modélisation :

événements discrets

ensembles, états, fonctions de transition d’états

approche modulaire et hiérarchique

DEVS à été initié par B. P. Zeigler en 1976 :

+50 simulateurs DEVS (libres/payants, spécialisés etc.)

Monde : États-Unis (Univ. Arizona), Canada (Univ. Mc Gill), Portugal(Univ. Calombra), Corée du Sud (Univ. Hang Kong), Allemagne (Univ.Rostock), . . .

France : Calais (LIL/ULCO), Toulouse (Inra), Montpellier (Cirad),Clermont-Ferrand (Isima), en Corse (Univ. de Corse), Marseille (UnivAix 3), . . .

(LIL, INRA) Modélisation et simulation 57 / 113

DEVS, Discrete Event System SpecificationIntroduction

DEVS [Zeigler, 1976] :

un formalisme de haut niveau (généralité)→ DEVS « encapsule » les formalismes

propose un cadre formel pour le couplage de modèles→ Propriété de fermeture sous couplage

utilise le paradigme des événements discrets→ Les événements pilotent la simulation

intègre un cadre opérationnel : les simulateurs abstraits→ Un ensemble d’algorithmes

(LIL, INRA) Modélisation et simulation 58 / 113

DEVS, Discrete Event System SpecificationDescription du modèle atomique

Définition du modèle atomique :

* Nous considérons ici la version parallèle de DEVS, P-DEVS. Quandnous dirons DEVS par la suite, il s’agira en fait de P-DEVS

M = 〈X ,Y ,S, δext , δint , δcon, ta, λ〉

I Une structure mathématique composée de variables et de fonctionsI Une représentation graphique :

(LIL, INRA) Modélisation et simulation 59 / 113

DEVS, Discrete Event System SpecificationDescription du modèle atomique

M = 〈X ,Y ,S, δext , δint , δcon, ta, λ〉

X : l’ensemble des ports d’entrée et des valeurs attachées.

(LIL, INRA) Modélisation et simulation 59 / 113

DEVS, Discrete Event System SpecificationDescription du modèle atomique

M = 〈X ,Y ,S, δext , δint , δcon, ta, λ〉

Y : l’ensemble des ports de sortie et des valeurs attachées.

(LIL, INRA) Modélisation et simulation 59 / 113

DEVS, Discrete Event System SpecificationDescription du modèle atomique

M = 〈X ,Y ,S, δext , δint , δcon, ta, λ〉

S : l’ensemble des états du système.À un instant t , Q = (s, e) | s ∈ S, 0 < e < ta(s) est l’état total dusystème où e est le temps passé dans l’état.

(LIL, INRA) Modélisation et simulation 59 / 113

DEVS, Discrete Event System SpecificationDescription du modèle atomique

M = 〈X ,Y ,S, δext , δint , δcon, ta, λ〉

δext : fonction de transition externe : δext : Q × Xb → Sreprésente les réponses du système aux événements externes où Xb estun ensemble de bag dans X

(LIL, INRA) Modélisation et simulation 59 / 113

DEVS, Discrete Event System SpecificationDescription du modèle atomique

M = 〈X ,Y ,S, δext , δint , δcon, ta, λ〉

δint : fonction de transition interne : δint : S → Sreprésente les évolutions autonomes.

(LIL, INRA) Modélisation et simulation 59 / 113

DEVS, Discrete Event System SpecificationDescription du modèle atomique

M = 〈X ,Y ,S, δext , δint , δcon, ta, λ〉

δcon : fonction de conflict : δcon : Q × Xb → Sreprésente les réponses du système si des événements externes arriventet que e = ta(s)δcon(s, x) = δext (δint (s), 0, x) ou δint (δext (s, ta(s), x))

(LIL, INRA) Modélisation et simulation 59 / 113

DEVS, Discrete Event System SpecificationDescription du modèle atomique

M = 〈X ,Y ,S, δext , δint , δcon, ta, λ〉

ta(s) : le temps pendant lequel le modèle reste dans l’état S (horsévénements externes)

(LIL, INRA) Modélisation et simulation 59 / 113

DEVS, Discrete Event System SpecificationDescription du modèle atomique

M = 〈X ,Y ,S, δext , δint , ta, δcon, λ〉

λ : la fonction de sortie : λ : S → Yb représente les influences externes.

(LIL, INRA) Modélisation et simulation 59 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSDynamique des états

(LIL, INRA) Modélisation et simulation 60 / 113

P-DEVSSimulateur abstrait

Variables

parent // coordinateur parenttl // durée depuis le dernier évènementtn // durée jusqu’au prochain évènementDEVS // modèle DEVS associé avec l’état total (s,e)y // bag de sortiee // le temps passé dans l’état courant s

Fonction d’initialisation

quand reçoit i-message (i,t) à la date t alors:tl <- t - etn <- tl + ta(s)

(LIL, INRA) Modélisation et simulation 61 / 113

P-DEVSSimulateur abstrait

Variables

parent // coordinateur parenttl // durée depuis le dernier évènementtn // durée jusqu’au prochain évènementDEVS // modèle DEVS associé avec l’état total (s,e)y // bag de sortiee // le temps passé dans l’état courant s

Fonction de transition interne

quand reçoit *-message (*,t) à la date t alors:si t = tn alors:y <- lambda(s)envoie y-message (y, t) au coordinateur parent

(LIL, INRA) Modélisation et simulation 61 / 113

P-DEVSSimulateur abstrait

Variables

parent // coordinateur parenttl // durée depuis le dernier évènementtn // durée jusqu’au prochain évènementDEVS // modèle DEVS associé avec l’état total (s,e)y // bag de sortiee // le temps passé dans l’état courant s

Fonction de transition externe et de conflit

quand recçoit x-message (x, t) alors:si (x est vide et t = tn) alors s = delta_int(s)sinon si (t = tn) alors s = delta_con(s, x)

sinon si (tl <= t <= tn)e <- t - tls <- delta_ext(s,e,x)tl <- ttn <- tl + ta(s)

(LIL, INRA) Modélisation et simulation 61 / 113

P-DEVSExemple - un petit compteur

Exempleà l’initialisation du modèle, la valeur du compteur est nulle ;

à chaque arrivée d’événement en entrée du modèle, un compteur estaugmenté de 1 ;

lorsque le compteur arrive à 10 alors le compteur est remis à zéro etun événement de sortie est émis.

(LIL, INRA) Modélisation et simulation 62 / 113

P-DEVSExemple - un petit compteur

Etapes1. définir l’ensemble S des états du modèle et définir l’état initial ;

2. définir la fonction d’avancement du temps ta ;

3. définir les ports d’entrée et de sortie ;

4. définir la fonction de transition externe δext ;

5. définir la fonction de transition interne δint ;

6. définir la fonction de sortie λ.

AvertissementCet ordre n’est pas une obligation !

(LIL, INRA) Modélisation et simulation 63 / 113

P-DEVSExemple - un petit compteur

Etape 1l’état se compose de deux éléments :

I le compteur ;I la phase pour modéliser la succession des phases du modèle.

le modèle doit toujours débuter dans un état d’initialisation : INIT ;

ensuite le modèle attend un événement externe : WAITING ;

lorsque le compteur atteint 10, on a un état transitoire deréinitialisation et d’envoi d’événement : RESET .

S = (c, p) o p ∈ INIT ,WAITING,RESET

(LIL, INRA) Modélisation et simulation 64 / 113

P-DEVSExemple - un petit compteur

Etape 2le modèle ne reste pas dans l’état d’initialisation : ta((c, INIT)) = 0 ;c’est très souvent le cas ;

le modèle attend un événement externe de manière passive :ta((c,WAITING)) = +∞ ;

la phase RESET est transitoire donc : ta((c,RESET)) = 0.

(LIL, INRA) Modélisation et simulation 65 / 113

P-DEVSExemple - un petit compteur

Etape 3Les interactions avec l’extérieur sont limitées :

un port d’entrée que l’on nommera in ;

un port de sortie out.

Etape 4Si on se place sous l’hypothèse que les événements externes sont plusprioritaires que les transitions internes alors le traitement des événementsd’entrée ne peuvent se produire que dans l’état WAITING.

δext ((c,WAITING), e, (′in′, ∅)) = (c + 1,WAITING) si c < 9

δext ((c,WAITING), e, (′in′, ∅)) = (10,RESET) si c = 9

(LIL, INRA) Modélisation et simulation 66 / 113

P-DEVSExemple - un petit compteur

Etape 3Les interactions avec l’extérieur sont limitées :

un port d’entrée que l’on nommera in ;

un port de sortie out.

Etape 4Si on se place sous l’hypothèse que les événements externes sont plusprioritaires que les transitions internes alors le traitement des événementsd’entrée ne peuvent se produire que dans l’état WAITING.

δext ((c,WAITING), e, (′in′, ∅)) = (c + 1,WAITING) si c < 9

δext ((c,WAITING), e, (′in′, ∅)) = (10,RESET) si c = 9

(LIL, INRA) Modélisation et simulation 66 / 113

P-DEVSExemple - un petit compteur

Etape 5La seule partie d’autonomie du modèle concerne la remise à zéro ducompteur dans la phase RESET .

δint ((10,RESET)) = (0,WAITING)

Etape 6Si le compteur a atteint 10 alors on émet un événement et la phaseRESET représente cette condition.

λ((10,RESET)) = (′out ′, ∅)

(LIL, INRA) Modélisation et simulation 67 / 113

P-DEVSExemple - un petit compteur

Etape 5La seule partie d’autonomie du modèle concerne la remise à zéro ducompteur dans la phase RESET .

δint ((10,RESET)) = (0,WAITING)

Etape 6Si le compteur a atteint 10 alors on émet un événement et la phaseRESET représente cette condition.

λ((10,RESET)) = (′out ′, ∅)

(LIL, INRA) Modélisation et simulation 67 / 113

DEVS, Discrete Event System SpecificationDescription du modèle couplé

Définition du modèle couplé (ou réseau de modèles) :

N = 〈X ,Y ,D,EIC ,EOC , IC〉

I Une structure mathématique composée uniquement de variablesI Une représentation graphique :

(LIL, INRA) Modélisation et simulation 68 / 113

DEVS, Discrete Event System SpecificationDescription du modèle couplé

N = 〈X ,Y ,D,EIC ,EOC , IC〉

X l’ensemble des ports d’entrée et des valeurs associées.

(LIL, INRA) Modélisation et simulation 68 / 113

DEVS, Discrete Event System SpecificationDescription du modèle couplé

N = 〈X ,Y ,D,EIC ,EOC , IC〉

Y l’ensemble des ports de sortie et des valeurs associées.

(LIL, INRA) Modélisation et simulation 68 / 113

DEVS, Discrete Event System SpecificationDescription du modèle couplé

N = 〈X ,Y ,D,EIC ,EOC , IC〉

D l’ensemble des identifiants des sous-modèles avec : Md |d ∈ D.

(LIL, INRA) Modélisation et simulation 68 / 113

DEVS, Discrete Event System SpecificationDescription du modèle couplé

N = 〈X ,Y ,D,EIC ,EOC , IC〉

EIC l’ensemble des connexions d’entrée.

(LIL, INRA) Modélisation et simulation 68 / 113

DEVS, Discrete Event System SpecificationDescription du modèle couplé

N = 〈X ,Y ,D,EIC ,EOC , IC〉

EOC l’ensemble des connexions de sortie.

(LIL, INRA) Modélisation et simulation 68 / 113

DEVS, Discrete Event System SpecificationDescription du modèle couplé

N = 〈X ,Y ,D,EIC ,EOC , IC〉

IC l’ensemble des connexions internes.

(LIL, INRA) Modélisation et simulation 68 / 113

Composition hiérarchique de modèles

Relation modèle formel – simulateur abstrait

(LIL, INRA) Modélisation et simulation 69 / 113

Simulateur abstrait

VariablesN =< X ,Y ,D, (Md), (Id), (Zd) > // le modèle couplé associé

// avec Id ⊆ D ∪ N l’ensemble des influencers de d// et Zd : ×i∈Id YXi → XYd ⊆ D ∪ N// l’esemble des ports interfaces pour d// où:// XYi = Xi si i = N// XYi = Yi si i , N// XYd = Yd si d = N// XYd = Xd si d , N

(LIL, INRA) Modélisation et simulation 70 / 113

Simulateur abstrait

Variablesparent // coordinateur parent

tl // durée depuis le dernier évènement

tn // durée avant le prochain évènement

event_list // liste des élements (d, tnd) triés par par tnd

IMM // Les enfants imminents

mail // bag de sortie

yparent // bag de sortie pour le parent

(yd) // ensemble bags de sortie pour les enfants

(LIL, INRA) Modélisation et simulation 71 / 113

Simulateur abstrait

Initialisationquand reçoit i-message (i,t):∀d ∈ D faire:envoie i-message à d

trie la liste des évènements en fonction de tnd∀d ∈ Dtl = maxtld | d ∈ Dtn = mintnd | d ∈ D

Fonctions de sortie imminentes chez les composantsquand reçoit *-message (*,t):IMM = d | (d, tnd) ∈ (event_list ∧ tnd = tn)∀r ∈ IMM faireenvoie *-message (*,t) à r

(LIL, INRA) Modélisation et simulation 72 / 113

Simulateur abstrait

Transitions imminentes chez les composantsquand reçoit x-message (x,t):receveurs = r | r ∈ children,N ∈ Ir ,ZN,r(x) , ∅

∀r ∈ receveurs faire :envoie x-message (ZN,r(x), t) à r

∀r ∈ IMM ∧ ∀r < receveurs faire :envoie x-message (∅, t) à r

trie event_list en fonction de tntl = ttn = mintnd | d ∈ D

(LIL, INRA) Modélisation et simulation 73 / 113

Simulateur abstrait

Fonctions de sortie imminentes chez le modèle coupléquand reçoit y-message (yd,t):si d , dernierd ∈ IMM alors: // récup. des sortiesadd yd → mailmarque d comme étant à traiter

sinon :// traitement des sorties du modèle coupléyparent = ∅∀d ∈ IN ∧ d à traité faire :si Zd,N(yd) , ∅ alors :add yd → yparent

envoie y-message (yparent , t) au parent

(LIL, INRA) Modélisation et simulation 74 / 113

Simulateur abstrait

Fonctions de sortie imminentes chez le modèle coupléquand reçoit y-message (yd,t):

...sinon :// traitement des connexions internes∀r | d ∈ Ir ∧ d à traiter ∧Zd,r(yd) , ∅ faire :∀d ∈ Ir ∧ d à traiter ∧Zd,r(yd) , ∅ faire :add Zd,ri(yd)→ yr

envoie x-messages (yr , t) à r

∀r ∈ IMM ∧ yr = ∅envoie x-message(∅, t) à r

tl = ttn = mintnd | d ∈ D

(LIL, INRA) Modélisation et simulation 75 / 113

Composition hiérarchique de modèles

Propriété de fermeture sous couplageGarantie qu’un modèle DEVS couplé est rigoureusement équivalent à unmodèle DEVS atomique.

(LIL, INRA) Modélisation et simulation 76 / 113

Composition hiérarchique de modèles

Propriété de fermeture sous couplageGarantie qu’un modèle DEVS couplé est rigoureusement équivalent à unmodèle DEVS atomique.

(LIL, INRA) Modélisation et simulation 76 / 113

Propriété de fermeture sous couplage

ObjectifMontrer que :

N =< X ,Y ,D, (Md), (Id), (Zd) >

peut être écrit sour la forme d’un modèle DEVS atomique :

M = 〈X ,Y ,S, δext , δint , ta, δcon, λ〉

Méthode

Écrire le modèle résultant du modèle couplé en définissant les fonctionsde transition, la fonction d’avancement du temps, la fonction de sortie et

l’ensemble des états.

(LIL, INRA) Modélisation et simulation 77 / 113

Propriété de fermeture sous couplage

À un instant donné, en considérant qu’il n’y a pas d’évènement enentrée du modèle couplé, nous pouvons écrire:

I L’état du modèle résultant est :

S = ×d∈DQd

I La fonction d’avancement du temps est:

ta(s) = minσd | d ∈ D, s ∈ S ∧ σd = ta(sd) − ed

I La fonction de sortie est l’ensemble des fonctions de sortie du bagimminent:

λ(s) = Zd,N(λd(sd)) | d ∈ IMM(s) ∧ d ∈ IN

I De même, à partir de l’ensemble des composant imminents, on définitles fonctions de transition internes, externes et de conflict...

(LIL, INRA) Modélisation et simulation 78 / 113

Les extensions de DEVS

Les extensions de DEVS permettent d’étendre formellement laspécification DEVS : nouveaux types modèles.

Quelques exemples pour les modèles :

Cell-DEVS l’état du modèle S contient son état et celui de cesvoisinsune diffusion instantanée λ ou avec délais δint desmodifications ou perturbations aux voisins δext

la cellule est dupliquée pour former un automatecellulaire.

(LIL, INRA) Modélisation et simulation 79 / 113

Les extensions de DEVSGraphe de couplage d’un CellDevs

(LIL, INRA) Modélisation et simulation 80 / 113

Les extensions de DEVSQSS : moteur d’intégration d’équations différentielles

Comment résoudre les équations différentielles ordinaires :DESS [Zeigler et al., 2000] : discrétisation de l’espace du temps :

I ta la constante du pas d’intégrationI δint le moteur d’intégration (Euler, Runge Kutta, etc.).

(LIL, INRA) Modélisation et simulation 81 / 113

Les extensions de DEVS

QSS [Kofman and Junco, 2001] : discrétisation de l’espace desvaleurs :

I δint calcul de la pente (pour QSS1)I ta calcul de la date de dépassement du seuil δq.

(LIL, INRA) Modélisation et simulation 82 / 113

Développement d’un système d’équationsExemple avec le modèle de Lotka-Voltera

DEVS s’appuie, entre autre, sur deux propriétés très importantes :

le couplage de modèles : un modèle atomique peut être combiné àun autre modèle pour former le couplage de modèle.

la fermeture sous couplage : un modèle couplé possède les mêmespropriétés qu’un modèle atomique.

(LIL, INRA) Modélisation et simulation 83 / 113

Développement d’un système d’équationExemple avec le modèle de Lotka-Voltera couplé à un modèle de décision

Deux modèles QSS avec une équation chacun : construction d’unsystème d’équations par le couplage.

(LIL, INRA) Modélisation et simulation 84 / 113

Développement d’un système d’équationExemple avec le modèle de Lotka-Voltera couplé à un modèle de décision

Le couplage peut former un nouveau modèle dont seuls les ports d’entréeet de sortie permettent la communication.

(LIL, INRA) Modélisation et simulation 84 / 113

Développement d’un système d’équationExemple avec le modèle de Lotka-Voltera couplé à un modèle de décision

Un modèle de décision peut venir se coupler sur ce modèle.(LIL, INRA) Modélisation et simulation 84 / 113

Développement d’un système d’équationExemple avec le modèle de Lotka-Volterra couplé à un modèle de décision

1 Vert, variable X (proies) sans perturbation.2 Rouge, variable X avec une perturbation commençant quand les

proies dépassent le seuil de 2000 puis toutes les 5 ut. (-75% de X).

(LIL, INRA) Modélisation et simulation 85 / 113

Développement d’un système d’équationExemple avec le modèle de Lotka-Volterra couplé à un modèle de décision

1 Vert, variable Y sans perturbation.2 Rouge, variable Y lorsque la variable X répercute ses modifications.

(LIL, INRA) Modélisation et simulation 85 / 113

Les extensions de DEVSDEVS structures dynamiques

DEVS possède une structure statique : modèles couplés/atomiques→ offrir une structure dynamique permet de répondre à la

diversité des modèles

La spécification choisie : Dynamic Structure DEVS [Barros, 1995].→ ajoute un modèle atomique au réseau de modèles :

exécutif→ le modèle exécutif possède le contrôle complet de la

structure du modèle couplé :I ajouts et suppressions de modèles, de connexions et/ou

de ports.

(LIL, INRA) Modélisation et simulation 86 / 113

Les extensions de DEVSDEVS structures dynamiques

Réseau de modèles : déportent les connexions dans un modèle ditexécutif :

DSDEVNN = 〈XN ,YN , χ,Mχ〉

où :

XN et YN sont les ports d’entrée et de sortie du réseauχ le nom du modèle exécutifMχ le modèle exécutif

Mχ = 〈Xχ,Yχ,Sχ, δχint , δ

χext , taχ, λχ,Σ

∗, γ〉

Avec : γ : Sχ → Σ∗ la fonction de structureΣ∗ : l’ensemble des structuresΣα ∈ Σ∗ :

Σα = 〈D,EIC ,EOC , IC〉

(LIL, INRA) Modélisation et simulation 87 / 113

Les extensions de DEVSDEVS structures dynamiques

a

exécutif

(LIL, INRA) Modélisation et simulation 88 / 113

Les extensions de DEVSDEVS structures dynamiques

a

exécutif

(LIL, INRA) Modélisation et simulation 88 / 113

Les extensions de DEVSDEVS structures dynamiques

a

exécutif

(LIL, INRA) Modélisation et simulation 88 / 113

Les extensions de DEVSDEVS structures dynamiques

a

b

exécutif

(LIL, INRA) Modélisation et simulation 88 / 113

Les extensions de DEVS

DESS, Qss1, Qss2 et Qss3 Moteur d’intégration d’équationsdifférentielles

Cell-Qss Moteur d’intégration d’équations différentielles spatialisées

Réseau de Petri Traduction (mapping) des RdP en DEVS

Automate à état finis Traduction des FSA en DEVS

etc.

GSMP et GSMDP Processus de Markov généralisé, en cours parEmmanuel Rachelson

(LIL, INRA) Modélisation et simulation 89 / 113

Plan

1 Modélisation et SimulationDéfinitionsParadigme et simulateurClasses de modèles

2 Formalismes de modélisation

3 P-DEVS

4 Multi-formalisme et problématique du couplageModélisation multipleIntégration opérationelleIntégration formelle

(LIL, INRA) Modélisation et simulation 90 / 113

Modélisation multipleDéfinitions

(LIL, INRA) Modélisation et simulation 91 / 113

Modélisation multipleDéfinitions

Un multi-modèle est un modèle qui rassemble plusieurs paradigmeset/ ou formalisme dans sa réalisation.

⇒ Augmentation de la puissance descriptive du modèle.

La multi-modélisation est l’ensemble des concepts, outils ettechniques de construction de multi-modèles.

Les précurseurs

[Ören, 1989] Dynamics Templates and Semantic Rules for SimulationAdvisters and Certifiers.

[Fishwick and Zeigler, 1992] - A multi-model methodology forqualitative model engineering.

(LIL, INRA) Modélisation et simulation 92 / 113

Modélisation multipleDéfinitions

Cadre conceptuel de la modélisation et de la simulation[Zeigler and Sarjoughian, 2000]

(LIL, INRA) Modélisation et simulation 93 / 113

Modélisation multipleDéfinitions

États, temps, espace [Ramat, 2003]

(LIL, INRA) Modélisation et simulation 94 / 113

Modélisation multipleDéfinitions

Trois directions orthogonalesL’intégration de plusieurs formalismes dans un nouveau⇒ [Vangheluwe, 2000] (Differential Algebraic Equations),⇒ [Zeigler et al., 2000] DEV&DESS,⇒ [Barros, 2003] (HFSS) pour l’intégration de systèmes discrets et

continus.

La spécification des sous systèmes dans un formalisme unique⇒ Réecriture de tous les sous systèmes dans le même formalisme.

L’approche de co-simulation. Tous les sous modèles ont leur propressimulateurs. La difficulté et de les coupler (solution HLA par exemple).

(LIL, INRA) Modélisation et simulation 95 / 113

Intégration opérationelleDéfinition

Trouver des moyens techniques et algorithmiques de coupler desmodèles hétérogènes

Trouver des moyens techniques

⇒ Problèmes d’architecture matérielle et logicielle

⇒ Problèmes des langages de programmation différents

Intégrer les représentations de la dynamique des sous systèmes

⇒ Intégration des notions de temps, d’espace, d’états et de transition[Quesnel et al., 2004]

Besoin de définir un bus logiciel commun

(LIL, INRA) Modélisation et simulation 96 / 113

Intégration opérationelleDEVS-Bus

Schéma conceptuel du bus DEVS (modifié d’après[Kim and Kim, 1998])

(LIL, INRA) Modélisation et simulation 97 / 113

Intégration opérationelleDEVS-Bus

Les capsules ou wrappers:

sont des modèles DEVS classiques

font le lien entre un simulateur DEVS et un programme existant(traduction des notions de temps, d’états et de transitions).

l’état d’un wrapper est l’union de son état et du composant encapsulé

(LIL, INRA) Modélisation et simulation 98 / 113

Intégration opérationelleExemple : couplage avec une base de données

Graphe d’états d’un wrapper autour d’une base de données SQL.

(LIL, INRA) Modélisation et simulation 99 / 113

Intégration opérationelleExemple : wrapping d’un réseau de Petri

Traduction :I Événement d’entrée en jetons (fonction de transition externe)I Fonction de transition interne (évolution du marquage)I Fonction d’avancement du temps→ introduction du temps ?I Fonction sortie en fonction du marquage

(LIL, INRA) Modélisation et simulation 100 / 113

Intégration opérationelleDEVS-Bus

Les agents dans DEVS [Duboz et al., 2004, Duboz et al., 2006]

(LIL, INRA) Modélisation et simulation 101 / 113

Intégration formelleVers du "tout en DEVS"

(LIL, INRA) Modélisation et simulation 102 / 113

Intégration formellemapping : Définition

Reformalisation d’un système d’écriture dans un autre

Préservation de la dynamque des états – transitions

Homomorphisme (niveau 3)

Pas forcement d’isomorphisme au niveau du modèle couplé

Il s’agit essentiellement de traduire une sémantique particulière dansDEVS

(LIL, INRA) Modélisation et simulation 103 / 113

Exemples de reformalisation

Les automates à états finis

Les automates cellulaires

Les systèmes à temps discrets

Les chaînes de Markov temporisées

(LIL, INRA) Modélisation et simulation 104 / 113

Exemples de reformalisationLes réseaux de Petri [Jacques and Wainer, 2002]

Bien adapté pour la simulation de la concurence des évènements

Trois éléments : les places, les transitions et les arcs

Une place à 0 ou + entrées et sorties

Une transition peut avoir 0 ou + entrées et sortie (si 0 sortie alorsc’est un puit)

Le mouvements des jetons (ressource par exemple) décrit ladynamique du système sur les places (lieux par exemple)

Une transition est permise si au moins un jeton est présent sur unedes ses places connectée en entrée

Quand une transition est déclanchée, elle retire un jeton de chaqueplace connectée en entrée et en dépose un sur chaque placeconnectée en sortie.

(LIL, INRA) Modélisation et simulation 105 / 113

Exemples de reformalisationLes réseaux de Petri

une place peut être formalisée par:

M =< X ,S,Y , δint , δext ,D, λ >

X = IN ∈ N+

Y = OUT ∈ N+

S = tokens ∈ N+0 ∪ id ∈ N+

tokens est le nombre de jetonsid est l’identifiant de la place

(LIL, INRA) Modélisation et simulation 106 / 113

Exemples de reformalisationLes réseaux de Petri

dext (s,e,x) retrieve id and number of tokens from messagecase id = 0 /* generic message */increment tokens

hold in active 0 /* to advertise the numberof tokens */

case id != 0 /* specific message */id matches id of this place?no: disregard the messageyes: decrement tokens by the number of

tokens specified if there are enough. Otherwisethrow an exception.

hold in active 0 /* to advertise the numberof tokens */

dint (s) lambda(s) combine id and tokens state variables in one messageand send on the out port.

(LIL, INRA) Modélisation et simulation 107 / 113

Exemples de reformalisationLes réseaux de Petri

une transition peut être formalisée par:

M =< X ,S,Y , δint , δext ,D, λ >

X = IN0 ∈ N+, IN1 ∈ N+, IN2 ∈ N+, IN3 ∈ N+, IN4 ∈ N+

Y = OUT1 = 1,OUT2 = 2,OUT3 = 3,FIRED ∈ N+

S = inputs ∈ N+0 ∪ enable ∈ bool

inputs nombre de place en entréeenable transition possible ou non

(LIL, INRA) Modélisation et simulation 108 / 113

Exemples de reformalisationLes réseaux de Petri

IN1 combien de jeton dans la place ?

IN2 idem mais modélise une double connexion

IN3 idem mais modélise une triple connexion

IN4 idem mais modélise une quadruple connexion

IN0 inibiteur (pas de jeton sur la place)

OUT1 donne un jeton

OUT2 donne 2 jetons

OUT3 donne 3 jetons

OUT4 donne 4 jetons

fired suprime les jetons de la place en entrée

(LIL, INRA) Modélisation et simulation 109 / 113

Exemples de reformalisationLes réseaux de Petri

dext (s,e,x) case port

in0: set arcwidth (temp var) to 0.in1: set arcwidth (temp var) to 1.in2: set arcwidth (temp var) to 2.in3: set arcwidth (temp var) to 3.in4: set arcwidth (temp var) to 4.

- extract id (place of origin) and number of tokensfrom the message.First message we get from this id?yes: increment inputs.no: continue- save id, arcwidth and number of tokens in database.- scan the entire database to determine if all inputplaces have enough tokens to enable the transition.

(LIL, INRA) Modélisation et simulation 110 / 113

Exemples de reformalisationLes réseaux de Petri

transition is enabled ?yes: set enabled to truehold in (active, random (0 â 60 sec))no: set enabled to falsepassivate

dint (s)

inputs = 0?yes: /* transition is a source */hold in (active, random (0 â 60 sec))no: passivate

lambda(s) - send 1 on out1 port.- send 2 on out2 port.- send 3 on out3 port.- send 4 on out4 port.- go through the database and send a message toevery input place via the fired port.

(LIL, INRA) Modélisation et simulation 111 / 113

Points importants non abordés ici

Universalité de DEVS

Validation

Vérification

Approximation (savoir vivre avec l’erreur)

Les cadres expérimentaux

(LIL, INRA) Modélisation et simulation 112 / 113

Barros, F. J. (1995).Dynamic structure discrete event system specification: A newmodeling and simulation formalism for dynamic structure systems.In Proceedings of the 1995 Winter Simulation Conference, pages781–785.

Barros, F. J. (2003).Dynamic structure multiparadigm modeling and simulation.ACM Transactions on Modeling and Computer Simulation,13(3):259–275.

Duboz, R., Ramat, É., and Quesnel, G. (2004).Systèmes multi-agents et théorie de la modélisation et de lasimulation : une analogie opérationnelle.In Boissier, O. and Guessoum, Z., editors, Actes des douzièmesJournées Francophones sur les Systèmes Multi-Agents (JFSMA) -Systèmes multi-agents défis scientifiques et nouveaux usages, Paris.

Duboz, R., Versmisse, D., Quesnel, G., Muzzy, A., and Ramat, É.(2006).

(LIL, INRA) Modélisation et simulation 112 / 113

Specification of dynamic structure discrete event multiagent systems.In Conference proceedings of Agent Directed Simulation (SpringSimulation Multiconference), Huntsville, Alabama, USA.

Fishwick, P. A. and Zeigler, B. P. (1992).A multi-model methodology for qualitative model engineering.ACM transaction on Modeling and Simulation, 2(1):52–81.

Jacques, C. and Wainer, G. A. (2002).Using the CD++ DEVS tookit to develop petri nets.In SCS Conference.

Kim, J. Y. and Kim, T. G. (1998).A heterogeneous simulation framework based on the DEVS bus andthe High Level Architecture.In Winter Simulation Conference, Washington, DC.

Kofman, E. and Junco, S. (2001).Quantized State Systems. a DEVS Approach for Continuous SystemsSimulation.In Transactions of SCS., volume 18, pages 123–132.

(LIL, INRA) Modélisation et simulation 112 / 113

Ören, T. (1989).Knoledge Based Simulation: Methodology and Application, chapterDynamics Templates and Semantic Rules for Simulation Advisters andCertifiers.Berlin Springer Verlag.

Quesnel, G., Duboz, R., and Ramat, É. (2004).DEVS wrapping: A study case.In Proceedings of Conference on Conceptual Modeling andSimulation 2004, pages 374–382, Genoa, Italy.

Ramat, É. (2003).Contributions à la modélisation et à la simulation des systèmescomplexes.Habilitation à diriger des recherches.

Vangheluwe, H. (2000).DEVS as a common denominator for hybrid systems modelling.

(LIL, INRA) Modélisation et simulation 112 / 113

In Varga, A., editor, IEEE International Symposium onComputer-Aided Control System Design, pages 129–134, Anchorage,Alaska. IEEE Computer Society Press.

Zeigler, B. and Sarjoughian, H. S. (2000).Creating distributed simulation using devs m& s environment.In Proceedings of the 2000 Winter Simulation Conference.

Zeigler, B. P. (1976).Theory of Modeling and Simulation.Wiley Interscience.

Zeigler, B. P., Kim, D., and Praehofer, H. (2000).Theory of Modeling and Simulation: Integrating Discrete Event andContinuous Complex Dynamic Systems.Academic Press.

(LIL, INRA) Modélisation et simulation 112 / 113

Théorie de la Modélisation et la Simulation

AuteursRaphaël Duboz [email protected]éderick Garcia [email protected] Quesnel [email protected]Éric Ramat [email protected]

LicenceCopyright (C) 2008 - INRA - Cirad - LIL

Permission is granted to copy, distribute and/or modify this documentunder the terms of the GNU Free Documentation License, Version 1.2 orany later version published by the Free Software Foundation; with noInvariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copyof the license is included in the section entitled "GNU Free DocumentationLicense".

(LIL, INRA) Modélisation et simulation 113 / 113