• Aucun résultat trouvé

La th´ eorie de la M&S (mod´ elisation et simulation)

Bien que la nature d’une exp´erience de simulation soit indissociable du domaine de re- cherche pour lequel elle a ´et´e ´elabor´ee, il est cependant n´ecessaire d’´etablir une base de r´eflexion qui puisse ˆetre partag´ee par l’ensemble des acteurs qui participent `a de telles exp´eriences. Il est en effet fondamental de consid´erer la simulation informatique comme une discipline `a part enti`ere et, de fait, comme un v´eritable objet d’´etude en soi qui doit ˆetre th´eoris´e. Dans cette optique, il existe une contribution d’une importance non n´egligeable ; la th´eorie de la mo- d´elisation et de la simulation de Zeigler. Propos´ee au d´ebut des ann´ees 70 [Zeigler, 1972] et r´ecemment r´eactualis´ee dans [Zeigler et al. , 2000], une partie de cette th´eorie a pour objectif de fournir une base m´ethodologique g´en´erale pour la conception de simulation, et en cela elle nous sera d’un grand int´erˆet. Plus important encore, une fois que nous aurons pr´esent´e ce cadre th´eorique, nous disposerons alors d’un vocabulaire pr´ecis qui nous permettra de situer, dans le contexte de cette th´eorie, la probl´ematique que nous souhaitons aborder dans cette th`ese. Il est d’ailleurs tr`es ´etonnant que tr`es peu de travaux portant sur les simulations multi- agents se positionnent par rapport `a cette th´eorie4. Ainsi, en pr´esentant quelques-unes des notions de cette th´eorie, nous esp´erons aussi contribuer un peu `a sa promotion au sein de notre communaut´e.

2.8.1 Hi´erarchie des sp´ecifications d’un syst`eme

Dans le cadre de la M&S, toute la probl´ematique de la mod´elisation d’un syst`eme dy- namique repose sur l’´elaboration d’une sp´ecification acceptable de celui-ci. La nature de ces sp´ecifications n’est pas la mˆeme suivant les connaissances que l’on a sur le syst`eme. De plus, un syst`eme peut ˆetre sp´ecifi´e de nombreuses mani`eres et avec des formalismes diff´erents. C’est pourquoi il est important d’organiser ces sp´ecifications, ind´ependamment du formalisme uti- lis´e, suivant la qualit´e des informations qu’elles fournissent sur le syst`eme : du concept intuitif de boˆıte noire `a la description fine de la structure interne, des composants syst`eme et de leur agencement. Zeigler propose de hi´erarchiser les sp´ecifications d’un syst`eme de la mani`ere suivante (table 2.2) :

Bien que cette hi´erarchie ne soit pas sans rappeler celle de Klir, elle se distingue cepen- dant de cette derni`ere car elle int`egre explicitement le mod`ele du temps dans la description des sp´ecifications. Elle se focalise ainsi sur la mod´elisation de syst`emes dynamiques o`u la repr´esen- tation du temps est une composante fondamentale. Toute la probl´ematique de la mod´elisation d’un syst`eme dynamique consiste `a un naviguer entre ces diff´erents niveaux de sp´ecifications.

2.8.2 Notion de morphisme

L’avantage de la hi´erarchie que nous venons de pr´esenter ne tient pas seulement `a l’aide qu’elle peut apporter lors de la construction d’un mod`ele. Comme le souligne Zeigler, bien que la mod´elisation soit le nerf de la guerre dans la M&S, la principale difficult´e consiste `a

4

Nous mod´erons ici quelque peu notre propos en pr´ecisant que de plus en plus de travaux utilisent les formalismes qui sont issus de cette th´eorie. Il n’en reste pas moins que ses aspects m´ethodologiques sont la plupart du temps ignor´es dans notre communaut´e.

2.8 La th´eorie de la M&S (mod´elisation et simulation) 39

Tab. 2.2 – Hi´erarchie des sp´ecifications d’un syst`eme dynamique Niveau Nom de la sp´ecification connaissances

0 Observation Les variables E/S d’int´erˆet et la fa¸con de les mesurer suivant une base temporelle.

1 Comportement E/S Un ensemble de variables dat´ees

collect´ees `a partir du comportement du syst`eme source (des paires de valeurs E/S). 2 Fonctions E/S Sachant un ´etat initial, chaque entr´ee

produit un unique r´esultat en sortie. (relations entre les E/S).

3 Transition d’´etat L’´evolution de l’´etat interne du syst`eme en fonction des entr´ees.

La sortie g´en´er´ee par un ´etat interne. (la structure interne du syst`eme).

4 Couplage Componentiel Les composants syst`eme et la mani`ere dont ils sont agenc´es : liaison entre ports E/S. (Une structure hi´erarchique).

´etablir des relations entre les sp´ecifications qui sont donn´ees pour diff´erents syst`emes. Nous verrons notamment qu’il est important d’´etablir des relations non ambigu¨es entre le mod`ele et son simulateur. Zeigler introduit ainsi la relation de morphisme entre deux sp´ecifications dif- f´erentes. Un morphisme est une relation d’´equivalence qui met en correspondance les ´el´ements de deux sp´ecifications diff´erentes pour chaque niveau de la hi´erarchie. Ainsi, deux syst`emes poss`edent des sp´ecifications qui v´erifient une relation de morphisme pour un certain niveau de la hi´erarchie lorsque :

– au niveau 0, si les entr´ees, les sorties et la base temporelle peuvent ˆetre mise en corres- pondance.

– au niveau 1, si les paires de valeurs E/S peuvent ˆetre associ´ees une `a une.

– au niveau 2, si les ´etats initiaux peuvent ˆetre mis en correspondance de telle sorte que les relations ´etablies sur les E/S soient les mˆemes.

– au niveau 3, si les syst`emes sont homomorphiques. La relation d’homomorphisme est v´erifi´ee si l’on peut mettre en correspondance l’historique des changements d’´etat et de production de sortie des deux syst`emes. Autrement dit, les deux syst`emes passent, dans le mˆeme ordre chronologique, dans des ´etats ´equivalents qui produisent des sorties qui sont ´egales (pour avoir les morphismes de niveau 1 et 2).

– au niveau 4, si les composants syst`eme peuvent ˆetre mis en correspondance de telle sorte qu’il existe une relation de morphisme entre eux. De plus, les couplages E/S qui existent entre des composants similaires sont les mˆemes.

De plus, l’existence d’une relation d’´equivalence entre deux syst`emes pour un certain niveau implique l’existence d’une relation de morphisme dans le niveau inf´erieur.

Comme nous allons le voir dans la section suivante, la notion de morphisme est tout `a fait centrale en ce qui concerne la d´efinition des relations qui existent entre les diff´erentes entit´es qui constituent le processus de simulation dans son ensemble.

2.8.3 Les entit´es de la M&S et leurs relations

Un des aspects m´ethodologiques majeurs de la th´eorie de la M&S repose, d’une part sur l’identification des diff´erentes composantes qui constituent une exp´erience de simulation, et d’autre part sur l’´etude des relations qui existent entre ces diff´erentes entit´es. Il s’agit par l`a de donner des d´efinitions pr´ecises aux diff´erents concepts qui sont manipul´es dans le domaine de la simulation informatique.

Nous avons par exemple mentionn´e plusieurs fois le terme mod`ele et le lecteur doit en avoir une intuition. Cependant celui-ci n’a pas encore de consistance technique. Et si nous voulons clairement poser notre probl´ematique nous ne pouvons nous contenter de l’intuition. Cette section est donc consacr´ee `a la pr´esentation des notions cl´es de la M&S telles qu’elles sont pr´esent´ees dans [Zeigler et al. , 2000] :

– le syst`eme source et sa base de donn´ees comportementale. – le cadre exp´erimental.

– le mod`ele. – le simulateur.

– la relation de simulation. – la relation de mod´elisation.

Le syst`eme source et sa base de donn´ees comportementale

Le syst`eme source correspond `a l’environnement, r´eel ou virtuel, qu’on souhaite mod´eliser. Il doit ˆetre vu comme une source de donn´ees observables qui constituent ce qui est appel´e la base de donn´ees comportementale. On se situe ici au niveau 0 et 1 de la hi´erarchie des sp´ecifi- cations. Par exemple, pour l’´etude d’une colonie de fourmis particuli`ere, on peut collecter des informations relatives `a leur nombre, leurs fonctions, leur dur´ee de vie, la qualit´e et la quantit´e de ph´eromones produites, etc. Par ailleurs, l’ensemble de ces informations est indissociable du cadre exp´erimental qui est d´efini suivant les objectifs du mod´elisateur.

Le cadre exp´erimental

Le cadre exp´erimental est une sp´ecification des conditions d’observation du syst`eme ainsi que des objectifs du projet de simulation. Par exemple, dans le cas d’une colonie de fourmis, suivant les objectifs poursuivis on peut ˆetre int´eress´e ou non par certaines caract´eristiques des individus : dans certains cas la v´elocit´e des insectes sera prise en compte alors que dans d’autres cas ce param`etre n’aura aucun int´erˆet. Il est ainsi ´evident que, suivant les choix que fait le mod´elisateur, plusieurs cadres exp´erimentaux peuvent ˆetre d´efinis sur un mˆeme syst`eme (syst`eme source et mod`ele). De mˆeme, un cadre exp´erimental peut ˆetre appliqu´e `a plusieurs syst`emes, ce qui permettra de les comparer.

Il est important de noter que le cadre exp´erimental influence tr`es fortement la formulation du syst`eme source et le design du mod`ele qui en sera issu. De plus, comme nous le verrons, la validation du mod`ele est toujours relative `a ce mˆeme cadre. C’est pourquoi une d´efinition claire du cadre exp´erimental est cruciale dans le processus de simulation. Outre la d´efinition des conditions exp´erimentales et des objectifs de la simulation, il peut aussi d´efinir de quelle mani`ere est ´evalu´ee l’efficacit´e de la simulation sur le plan qualitatif (la simulation est-elle satisfaisante ?) et quantitatif (rapidit´e d’ex´ecution par exemple).

2.8 La th´eorie de la M&S (mod´elisation et simulation) 41

Le mod`ele

En g´en´eral le terme mod`ele est indiff´eremment utilis´e pour d´esigner plusieurs choses dif- f´erentes comme par exemple la description abstraite ou concr`ete du ph´enom`ene `a simuler, la technique mise en œuvre pour le faire, etc. Dans le contexte de la th´eorie de la M&S, le terme mod`ele d´esigne plus pr´ecis´ement la sp´ecification du syst`eme effectu´ee aux niveaux 3 et 4 de la hi´erarchie des sp´ecifications. Ainsi, le mod`ele correspond `a l’ensemble des instructions, lois, ´equations ou contraintes qui d´efinissent la mani`ere dont est g´en´er´e le comportement E/S d’un composant syst`eme (niveau 3) et la mani`ere dont les composants syst`eme sont assembl´es (niveau 4). Autrement dit, le mod`ele sp´ecifie les m´ecanismes de changement d’´etat dont nous avons parl´es dans la section2.3.

Le simulateur

Maintenant que nous avons une d´efinition pr´ecise de ce que repr´esente le mod`ele dans le processus de simulation, c’est-`a-dire la sp´ecification de l’ensemble des instructions qui per- mettent de g´en´erer le comportement du syst`eme, il nous faut une entit´e capable d’ex´ecuter ces sp´ecifications. Le terme simulateur d´esigne cette entit´e. Un simulateur d´esigne ainsi tout syst`eme de calcul capable d’ex´ecuter le mod`ele de mani`ere `a g´en´erer son comportement. A partir de cette d´efinition, on pourrait croire qu’il n’existe pas une diff´erence fondamentale entre le mod`ele et son simulateur dans le sens o`u il s’agit dans les deux cas de g´en´erer le com- portement du syst`eme et que, de plus, le mod`ele repr´esente d´ej`a une sp´ecification de niveau ´elev´e. Cependant, comme le souligne Zeigler, s´eparer le mod`ele de son simulateur comporte plusieurs avantages :

– un mˆeme mod`ele peut ˆetre ex´ecut´e par diff´erents simulateurs, ce qui d´efinit ainsi sa portabilit´e `a haut niveau d’abstraction.

– les algorithmes mis en œuvre dans les simulateurs peuvent ˆetre ´etudi´es en tant que tels et leur validit´e peut donc ˆetre ´etablie.

– les ressources n´ecessaires pour correctement simuler un mod`ele donnent une mesure de sa complexit´e.

Outre les avantages conceptuels pr´esent´es ici, cette distinction va s’av´erer tout `a fait fonda- mentale dans le cadre de la simulation multi-agents. En effet, tr`es peu de travaux de simulation bas´es sur le paradigme agent consid`erent le simulateur comme une entit´e de base du processus de simulation. La plupart du temps l’impl´ementation du mod`ele multi-agents est consid´er´ee comme une ´etape de conception dont la validit´e serait donn´ee a priori. Et il s’agit sans aucun doute d’un point faible de cette approche. Notamment car ce domaine manque cruellement d’outils formels permettant de sp´ecifier les mod`eles qu’il se propose de simuler. Nous n’en dirons ici pas plus ´etant donn´e que ce probl`eme constitue une large part de la probl´ematique qui sera abord´ee au cours de cette th`ese et nous reviendrons en d´etail sur celui-ci dans le chapitre4.

La relation de mod´elisation : validit´e du mod`ele

La relation de mod´elisation d´esigne la relation entre le mod`ele, le syst`eme source et le cadre exp´erimental. Cette relation d´efinit la notion de validit´e de l’exp´erience en soulevant la question de la correspondance entre le mod`ele (et le comportement qu’il g´en`ere) et le syst`eme source dans le contexte du cadre exp´erimental. Autrement dit, il s’agit ici de savoir si la

mod´elisation qui est faite du syst`eme est une simplification acceptable de celui-ci en fonction des crit`eres qualitatifs choisis et des objectifs de l’exp´erimentation. Cette comparaison pouvant ˆetre effectu´ee sur plusieurs niveaux de la hi´erarchie des sp´ecifications d’un syst`eme, Zeigler distingue trois relations de validit´e diff´erentes :

– la coh´erence reproductive est v´erifi´ee si, pour toutes les exp´eriences qui peuvent ˆetre conduites dans le cadre exp´erimental, le comportement du mod`ele correspond `a celui du syst`eme ´etant donn´e un certain seuil de tol´erance. Cette comparaison est donc effectu´ee au niveau 1 (relation E/S) de la hi´erarchie des sp´ecifications.

– la coh´erence ´evolutive, qui implique la propri´et´e pr´ec´edente, correspond `a la capacit´e du mod`ele `a pr´edire des comportements du syst`eme qui sont encore inconnus. Il s’agit donc ici d’une coh´erence de niveau sup´erieur qui suppose qu’il existe une correspondance entre le mod`ele et le syst`eme source au niveau 2, sur les fonctions E/S, de la hi´erarchie des sp´ecifications. ´Evidemment cette propri´et´e ne peut ˆetre v´erifi´ee qu’a posteriori ou bien si la propri´et´e de coh´erence structurelle est v´erifi´ee.

– la coh´erence structurelle est une propri´et´e qui implique les deux pr´ec´edentes mais qui en plus v´erifie une correspondance au niveau 3 (m´ecanismes de changement d’´etat) et/ou au niveau sup´erieur (agencement des composants syst`eme entre eux). Autrement dit, le mod`ele ne se contente pas de reproduire `a l’identique le comportement observable du syst`eme mais il imite aussi son fonctionnement intrins`eque pas `a pas pour reproduire le m´ecanisme de changement d’´etat du syst`eme lui-mˆeme.

Etant donn´ees les questions de coh´erence et de validit´e qu’elle soul`eve, l’analyse de la rela- tion de mod´elisation est d’une importance capitale. Elle sera ainsi au cœur de la probl´ematique que nous souhaitons soulever dans cette th`ese. Nous verrons notamment que dans le contexte de la simulation multi-agents, les mod`eles employ´es font souvent abstraction, `a tort, du cadre exp´erimental que ce paradigme implique.

Nous introduirons alors un autre niveau de coh´erence dans la relation de mod´elisation pour d´ecrire plus pr´ecis´ement notre probl`eme : la notion de coh´erence paradigmatique. Celle-ci s’int´eresse plus particuli`erement `a la coh´erence qui existe entre le paradigme de mod´elisation utilis´e et le mod`ele consid´er´e. Autrement dit, il s’agit de savoir si le mod`ele ´elabor´e correspond aux crit`eres sous-tendus par l’approche consid´er´ee. Ainsi, nous montrerons pourquoi la relation de mod´elisation n’est la plupart du temps pas v´erifi´ee dans le domaine des simulations multi- agents si on prend en compte cette coh´erence.

La relation de simulation : validit´e du simulateur

La relation de simulation d´esigne une relation de validit´e du simulateur par rapport au mod`ele. La question est d’obtenir la garantie que le simulateur qui est utilis´e pour ex´ecuter le mod`ele g´en`ere correctement le comportement de celui-ci. Autrement dit, il s’agit d’ˆetre certain que le simulateur reproduit sans ambigu¨ıt´e les m´ecanismes de changement d’´etat qui sont formalis´es dans le mod`ele et qu’il n’introduit pas de biais dans ce processus.

Ce qui signifie qu’il doit exister une correspondance entre le mod`ele et le simulateur au moins au niveau 2 de la hi´erarchie des sp´ecifications, c’est-`a-dire sur les fonctions E/S . Il est important de noter qu’´etant donn´e qu’on poss`ede toujours les sp´ecifications du mod`ele et du simulateur `a ce niveau-l`a, puisqu’ils sont forc´ement construits lors du processus de simulation, la validit´e du simulateur peut ˆetre prouv´ee si on peut ´etablir une relation d’homomorphisme entre ces deux syst`emes.