• Aucun résultat trouvé

5.3 Politiques de priorit´e

5.3.4 Un environnement “naturel”

En op´erant une combinaison des politiques 1, 2, et 3, nous aboutissons `a un ordre classique des r`egles (figure 5.6), telles que nous les avons ´evalu´ees dans la section 1.4 sur la conscience des autres. l’environnement de facilitateurs Filtres Autres filtres des agents Filtres imperatifs de l’environnement priorit´e Filtres personnels des agents (politique 2) (politique 3) (politique 1)

Figure 5.6 – Ordonnancement des filtres pour un environnement classique.

– La politique 1 implique que tous les agents doivent se soumettre aux r`egles inviolables de l’environnement. Par exemple, ce sont les stimuli en provenance de l’environnement que les agents ne peuvent choisir, de mˆeme que les lois physiques les empˆechant de recevoir des messages.

r´eceptions. Ce sont les d´ecisions d’actions qui sont au coeur du concept d’attention. – Bien que les agents puissent les forcer, la politique 2 permet `a d’autres r`egles de l’envi-

ronnement d’exister pour un d´eroulement classique des interactions. Ce sont les lois de l’environnement dont le r´esultat peut ˆetre alt´er´e par les d´ecisions des agents.

– Enfin, les agents peuvent recevoir d’autres sollicitations par le biais des filtres non person- nels. Ce sont les focus ou initiatives que les agents choisissent.

Nous illustrons avec la figure 5.7 l’exemple des conversations humaines, qui sont situ´ees. Soit un environnement avec une topologie `a deux dimensions, et soit dist(ax, ay) une fonction de calcul de distance dans l’espace. Deux r`egles non enfreignables de l’environnement peuvent ˆetre repr´esent´ees par f+

proxim et feloign− .

– Deux agents situ´es `a une distance inf´erieure `a d l’un de l’autre entendent obligatoirement les messages ´emis par l’autre. Le filtre f+

proxim ∈ F+ repr´esentant cette loi est : h[dist(a, a2) < d], [sender(m) =?x], [id(a2) =?x], “proxim”, 127, environnementi

– Deux agents situ´es `a une distance sup´erieure `a D l’un de l’autre ne peuvent pas entendre les messages ´emis par l’autre. Le filtre f−

eloign ∈ F− repr´esentant cette loi est : h[dist(a, a2) > D], [sender(m) =?x], [id(a2) =?x], “eloign”, 127, environnementi

zone 1 a3 a1 a4 a2 zone 3 zone 2

Les messages sont transmis via f+ proxim

Les messages peuvent potentiellement ˆetre transmis Les messages ne sont pas transmis du fait de f−

eloign

D d

Figure 5.7 – Politique de priorit´e des filtres : exemple d’environnement situ´e.

Dans l’intervalle compris entre d et D, ce sont les filtres des agents qui d´eterminent ou non la r´eception. Dans la figure, a1 percevra tous les messages de a2(et r´eciproquement), il ne percevra aucun message de a4, et il recevra ´eventuellement ceux de a3 si des filtres le permettent. Notons que la gestion des filtres et des messages est dynamique, ainsi si dist(a1, a4) devient inf´erieure `a

5.4. Conclusion D, les nouveaux messages ´emis par ces deux agents peuvent ˆetre ´ecout´es par l’autre.

5.4

Conclusion

Dans le chapitre pr´ec´edent, nous avons montr´e comment le mod`ele EASI permet de mettre en oeuvre les communications multi-parties. Dans ce chapitre, nous avons tout d’abord d´evelopp´e l’id´ee de r´egulation des communications en s´eparant les filtres pos´es par les agents de ceux attribu´es `a l’environnement. Les premiers repr´esentent les besoins des agents `a titre individuel, tandis que les seconds sont des r`egles communes.

Les filtres du mod`ele EASI d´eclenchent la r´eception des messages. Dans le mod`ele EARI, Environnement Actif comme R´egulateur de l’Interaction, un second type de filtre nomm´e filtre n´egatif est introduit pour les limiter. Grˆace aux filtres n´egatifs, les agents peuvent contrˆoler a priori les messages qu’ils vont recevoir. Au niveau multi-agents, il s’agit de mettre en place des r`egles de distribution des messages, et notamment d’assurer que les messages ne seront pas intercept´es par des agents non d´esir´es.

L’articulation entre filtres positifs et n´egatifs est g´er´ee par leurs priorit´es respectives. La v´erification des priorit´es par l’environnement permet de mettre en oeuvre diff´erentes politiques de pr´evalence entre les filtres en fonction de leur initiateur.

De cette fa¸con, il est possible de mod´eliser des lois de l’environnement qui ne peuvent pas ˆetre enfreintes par les agents, et des r`egles de transmissions qui peuvent ˆetre outrepass´ees. Dans la mˆeme logique, les filtres d´epos´es pour eux-mˆemes par les agents auront une priorit´e sup´erieure `a ceux des autres agents. Enfin, les priorit´es pourront ˆetre diff´erenci´ees en fonction des groupes d’agents et/ou `a titre individuel.

Le mod`ele EASI donne le cadre de la mod´elisation de l’environnement et des filtres, et l’extension aux filtres n´egatifs compl`ete ce mod`ele par la prise en compte du contrˆole des com- munications. Dans le chapitre suivant, nous voyons comment mettre en oeuvre l’ensemble de notre mod`ele.

Chapitre 6

D´eploiement de l’environnement

d’interaction

Sommaire

6.1 Architecture abstraite . . . 128 6.1.1 Vue d’ensemble du syst`eme multi-agents . . . 128 6.1.2 Description des composants de l’environnement . . . 129 6.1.3 Int´egration `a l’architecture de r´ef´erence de l’environnement . . . 130 6.1.4 Architecture minimale des agents communiquants . . . 132 6.2 Prototype client/serveur . . . 133 6.2.1 Architecture du prototype . . . 133 6.2.2 Gestion des filtres et descriptions . . . 136 6.3 Une biblioth`eque pour la plate-forme MadKit . . . 141 6.3.1 Le mod`ele Agent-Groupe-Rˆole et MadKit . . . 141 6.3.2 Vue d’ensemble du paquetage EASI . . . 144 6.4 Conclusion . . . 147

Dans les chapitres 3 `a 5, nous avons introduit le mod`ele d’environnement d’interaction EASI et son extension pour le contrˆole des communications EARI. Nous nous int´eressons dans ce chapitre `a la mise en oeuvre du mod`ele pour la conception des syst`emes multi-agents.

En premi`ere partie, nous introduisons une architecture abstraite d’environnement pour le support du mod`ele EASI, et d´ecrivons les diff´erents modules qui la composent. Le mod`ele EASI est un environnement de communication, nous nous int´eressons donc ´egalement `a la fa¸con dont l’architecture peut s’int´egrer `a un environnement global proposant d’autres services (comme nous les avons pr´esent´es dans la section 2.2.5). Nous proposons une architecture d’agent minimale pour l’utilisation de l’environnement d’interaction.

En seconde et troisi`eme partie, nous pr´esentons et discutons deux impl´ementations du mod`ele. La premi`ere impl´ementation est un prototype d’environnement distribu´e, en fonctionne- ment client/serveur, dot´e d’une biblioth`eque pour les agents et d’un serveur de communications.

La seconde impl´ementation est une int´egration de l’environnement `a une plate-forme existante, MadKit. Nous introduisons une extension des communications du mod`ele Agent-Groupe-Rˆole. Les filtres pouvant ˆetre vus comme des r`egles, nous proposons de mettre en oeuvre l’environne- ment par un syst`eme expert.

6.1

Architecture abstraite

Une architecture abstraite est une description d’un syst`eme logiciel `a un haut niveau d’abs- traction. Elle repose sur un ensemble de composants, ou modules, qui repr´esentent les unit´es de calcul et de stockage, et sur un ensemble de connecteurs, qui repr´esentent les interactions entre les composants. L’architecture est ind´ependante de toute plate-forme d’impl´ementation, il s’agit d’une description fonctionnelle du syst`eme. Lors du raffinement n´ecessaire `a l’impl´ementation, les composants peuvent ˆetre conserv´es, fusionn´es, ou divis´es en sous-composants.