• Aucun résultat trouvé

2.2 Probl´ ematique motivant notre proposition

2.2.2 Proposition : une activation contextuelle

La question que nous nous sommes pos´es, est de savoir comment diff´erencier, lors de la conception d’une simulation, la mod´elisation du syst`eme de son ex´ecution dans un simulateur. Pour ce faire, nous proposons de sp´ecialiser l’activation de chaque agent en fonction de leurs besoins, ou plus pr´ecis´ement en fonction de leurs int´erˆets pour certains contextes. Le concepteur devra alors pendant la phase de mod´elisation d´efinir les com- portements des agents et, de mani`ere ind´ependante, identifier les contextes d’activation de l’agent. Par la suite, il devra lier dynamiquement les comportements et les contextes d’activation. Par dynamique, il faut comprendre que l’agent pourra modifier les liens entre ses comportements et ses contextes d’activation au cours de la simulation et n’activer que certains liens. Pour mettre en oeuvre ce principe, nous externalisons la partie relative `a la r´ecup´eration et analyse du contexte `a l’environnement qui devient l’ordonnanceur global de la simulation (Figure 2.2). La r´eification du lien entre le contexte et l’activation de l’agent est appel´ee activation contextuelle et est g´er´ee par l’environnement. Ainsi, l’envi- ronnement est au centre de la mod´elisation ce qui implique que notre approche est orient´ee environnement en opposition aux approches classiques qui sont orient´ees agent.

2.2. Probl´ematique motivant notre proposition

Le choix de l’environnement comme ordonnanceur

Dans la section 1.3.4 du chapitre 1, nous avons montr´e les services et les responsabilit´es que l’environnement peut assurer pour le syst`eme multi-agents. Dans ce cas, l’environne- ment est un composant essentiel de conception pour les syst`emes multi-agents ce qui incite `

a le consid´erer comme une abstraction de premier ordre encapsulant ses propres respon- sabilit´es. Par d´efinition, les agents interagissent dans leur environnement et les effets de leurs actions sont observ´es et ´evalu´es `a travers ce dernier. Pour ce faire, l’environnement doit fournir les services relatifs `a l’observation et `a l’accessibilit´e aux autres composantes du syst`eme multi-agents.

L’environnement devient une entit´e active du syst`eme disposant de ses propres ser- vices. Il peut ´egalement g´erer d’autres tˆaches qui incombent classiquement `a l’agent. En externalisant une partie de l’activit´e des agents dans l’environnement, l’environnement peut supporter des concepts avanc´es dans la conception d’un syst`eme multi-agents. L’ac- tivation contextuelle [Laberge, 1975] [Badeig et al., 2007] est un concept avanc´e appliqu´e au processus de simulation. L’activation contextuelle est un nouveau mode d’activation des agents qui consiste `a activer les agents de la simulation directement dans un contexte donn´e, ce qui externalise une partie de la phase d’activation et d’action de l’agent dans l’environnement.

Nouveau mode d’activation des agents

Dans les simulations `a ´ev´enements discrets, les agents sp´ecifient les ´ev´enements aux- quels ils souhaitent “r´eagir” afin d’optimiser le processus d’activation en ´evitant les ac- tivations inutiles d’agents (section 1.4.3). En s’appuyant sur ce proc´ed´e qui consiste `a d´eterminer au pr´ealable les centres d’int´erˆets des agents, notre objectif est de lier explici- tement l’activation de l’agent `a un contexte particulier. Pour ce faire, nous proposons (1) de r´eifier le lien entre les contextes d’activation locaux `a l’agent et les comportements de cet agent et (2) de d´el´eguer `a l’environnement la gestion de ce lien en tant qu’interm´ediaire privil´egi´e pour assurer cette tˆache.

Dans ce nouveau processus d’activation, l’agent choisit dynamiquement ses contextes d’activation car il peut d´ecider d’activer ou non le lien r´eifi´e et il est le seul `a contrˆoler ce lien mˆeme si l’ex´ecution de ce lien est en charge de l’environnement. De mˆeme, il alloue `a chaque lien une priorit´e qui lui permet d’organiser ses besoins.

Pour simplifier la prise en compte du temps inh´erent `a toute simulation, l’environne- ment est responsable du temps de la simulation et les agents g`erent leur propre ´echelle de temps interne. Ainsi, nous avons modifi´e le cycle classique de simulation (perception → d´ecision → action) que les agents de la simulation suivent. La phase de perception et une partie de la phase de d´ecision sont externalis´ees et mutualis´ees dans l’environnement pour l’ensemble des agents du syst`eme. L’autre partie de la phase de d´ecision et la phase d’action restent `a la charge et responsabilit´e de l’agent. Le fait de r´eifier le lien entre le contexte de l’agent et son comportement, puis de l’externaliser dans l’environnement ne modifie nullement l’autonomie de l’agent car l’agent est en charge de g´erer ses propres liens d’activation (ajout/suppression) et l’environnement ne fait que traiter les diff´erents liens des agents en fonction de la politique d’ordonnancement. Dans la suite, nous montrerons les contraintes de mod´elisation qu’il faut prendre en compte du fait de la mutualisation du processus de perception qui ´etait interne `a chaque agent.

La figure 2.2 illustre notre processus d’activation avec les tˆaches que l’environnement assure : (1) gestion de l’ordonnaceur global (O sur la figure 2.2) et (2) mise `a jour du temps de la simulation. Les agents sont directement activ´es par l’environnement pour ex´ecuter un comportement en fonction de son contexte (C sur la figure 2.2).

activation contextuelle activation contextuelle 2/ exécution du comportement 1/ validation du comportement

Agent A

1 action 2/ exécution du comportement 1/ validation du comportement

Agent A

2

Ordonnanceur

2/ choix d’un comportement 1/ traitement du contexte tempsglobal

Environnement

O

C

C

Fig. 2.2 – Activation contextuelle

Avec notre approche, la politique d’ordonnancement dont la charge incombe `a l’en- vironnement, poss`ede deux niveaux distincts : le niveau d’ordonnancement global qui consiste `a contrˆoler l’ex´ecution de la simulation, et le niveau d’ordonnancement local qui

2.2. Probl´ematique motivant notre proposition

contrˆole l’activation contextuelle de chaque agent de la simulation. Au niveau de l’ordon- nancement global, l’objectif est d’organiser les activations contextuelles de l’ensemble des agents de la simulation. Au niveau de l’ordonnancement local, il ´etait n´ecessaire pour un mˆeme agent de d´eterminer une politique d’ex´ecution et de ce fait d’organiser les activa- tions contextuelles relatives `a l’agent. La politique adopt´ee par l’agent n’est pas fig´ee au cours de la simulation. En effet, un agent a une politique d’ex´ecution dynamique pour deux raisons. Premi`erement, il peut modifier dynamiquement les liens entre ses contextes d’activation et ses comportements qui impactent son rapport `a la simulation. Deuxi`eme- ment, il peut activer un lien entre un contexte et un comportement pr´ec´edemment inactive au cours de la simulation.

Cette introduction met en exergue deux avantages de notre proposition qui sont une flexibilit´e accrue pour modifier l’ex´ecution de la simulation grˆace aux deux niveaux de contrˆole (local et global) de la politique d’ordonnancement, et une activation contextuelle qui ´evite un traitement du contexte en local `a chaque agent. L’environnement qui devient entre autre l’ordonnanceur de la simulation, doit avoir un moteur d’ex´ecution permettant le traitement du contexte, et ce traitement est alors centralis´e.