théorie de la modélisation et de la simulation ... · plan 1 modélisation et simulation...
TRANSCRIPT
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&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
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
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 >
où
Ω 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
Niveau 2Une fonction d’entrée-sortie IOF est une structure :
IOR =< T ,X ,Ω,Y ,F >
où
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
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
Niveau 4Un système dynamique est une structure :
CS =< T ,X ,Y ,C ,EIC ,EOC , IC >
où
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
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
où
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-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
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 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