2. Architectures des agents et langages
2.2 Architectures des agents intelligents

2.2.4 Architecture hybride

Une architecture hybride d'un agent intelligent est une architecture composée d'un ensemble de modules organisés dans une hiérarchie, chaque module étant soit une composante cognitive avec représentation symbolique des connaissances et capacités de raisonnement, soit une composante réactive. De cette manière, on combine le comportement pro-actif de l'agent, dirigé par les buts, avec un comportement réactif aux changements de l'environnement. En plus, on espère obtenir simultanément les avantages des architectures cognitives et réactives, tout en éliminant leurs limitations.

Plusieurs architectures hybrides ont été conçues et utilisées. Une des architectures hybrides les plus connues est celle du système InteRRaP ("Integration of Reactive Behavior and Rational Planning" = Intégration du comportement réactif et planification rationnelle). L'architecture InteRRaP est une architecture en couches avec des couches verticales où les données d'entrée, notamment les perceptions, passent d'une couche à l'autre, comme on le voit sur la figure 6. En cela, elle est un peu différente de l'architecture de subsomption qui est une architecture en couches horizontales, où les perceptions sont transmises directement à toutes les couches à la fois (figure 5).

Figure 6. Architecture hybride en couches verticales

Un agent InteRRaP est un agent BDI qui a des buts à atteindre (les buts sont les mêmes que les désirs) et qui est capable de coopérer avec d'autres agents InteRRaP pour accomplir ces buts. Les buts d'un agent sont divisés en trois catégories :

  • réactions : ce sont des buts simples à accomplir en fonction des perceptions sur l'environnement ;
  • buts locaux : ce sont des buts que l'agent peut accomplir par lui-même ;
  • buts coopératifs : ce sont les buts qui peuvent être accomplis uniquement par une coopération avec d'autres agents dans le système.

Il est intéressant d'observer que, dans cette conception, la réactivité de l'agent est conçue toujours comme un but, c'est-à-dire au niveau cognitif, mais comme un but très simple à réaliser.

L'architecture InteRRaP est composée de trois couches de contrôle et trois bases de connaissances associées qui représentent l'agent et l'environnement à divers niveaux d'abstraction, comme il est indiqué figure 7. Chaque couche a un ensemble d'opérations spécifiques associées et une couche supérieure utilise les opérations plus simples de la couche d'au-dessus pour exécuter ses opérations plus élaborées. Le flux de contrôle passe de bas en haut, et une couche prend le contrôle lorsque la couche antérieure ne peut plus contribuer, par ses opérations, à l'accomplissement des buts. Chaque couche comprend deux modules: un module pour l'activation desbuts et la reconnaissance des situations (AR) et un module de planification et d'exécution (PE). Les perceptions sur l'environnement sont transmises au module AR de la première couche et, de module en module, vers le sommet de la hiérarchie. Le flux de contrôle des actions passe de haut en bas pour arriver à la fin au module PE de la dernière couche, et les actions associées sont exécutées sur l'environnement.

La base de connaissances BC-Monde représente l'information que l'agent possède sur l'environnement (croyances sur l'environnement), la base de connaissances BC-Planification est équivalente à la bibliothèque des plans d'une architecture BDI ; enfin, BC-Sociale représente les croyances de l'agent sur les autres agents du système, et notamment leurs capacités de l'aider à atteindre ses buts.

Figure 7. Architecture InteRRaP

La figure 8 présente la relation entre les modules AR et PE et les croyances, les buts, les intentions et les plans de l'agent. On a indiqué sur la figure les fonctions BDI (discutées dans la section 2.2.2) correspondant aux divers modules.

Figure 8. Le modèle BDI dans l'architecture InteRRaP

Il faut noter que, par rapport aux autres architectures discutées précédemment, l'architecture InteRRaP comprend une représentation explicite du processus de coopération d'un agent avec d'autres agents du système. Dans les chapitres à venir nous allons voir d'autres exemples d'architectures où cette coopération est représentée de manière explicite.

Une autre architecture hybride bien connue est l'architecture du système TuringMachine. Cette architecture est une architecture en couches horizontales, semblable à l'organisation de l'architecture de subsomption, où chaque couche est responsable de l'exécution d'actions de plus en plus complexes.

Les architectures hybrides se sont avérées efficaces dans beaucoup d'applications. Il y a cependant deux reproches qu'on peut leur faire : il n'y a pas de modèle formel associé comme dans le cas d'une architecture BDI pure, et on n'a pas encore validé de véritable méthodologie pour guider l'utilisateur dans la conception d'applications utilisant de telles architectures.

<< Section précédente Table de matières Section suivante >>

Politechnica University of Bucharest - 2002