nouvelle architecture unifiée de controle intelligent par
Transcription
nouvelle architecture unifiée de controle intelligent par
UNIVERSITÉ DE SHERBROOKE Faculté des sciences appliquées Département de génie électrique et de génie informatique NOUVELLE ARCHITECTURE UNIFIÉE DE CONTROLE INTELLIGENT PAR SÉLECTION INTENTIONNELLE DE COMPORTEMENTS Thèse de doctorat Spécialité: génie électrique et génie informatique __________________________ François MICHAUD Sherbrooke (Québec), CANADA Novembre 1995 RÉSUMÉ Les recherches en contrôle intelligent visent la conception de méthodologies de contrôle permettant de reproduire des capacités intelligentes complexes. plusieurs dans des systèmes Les approches actuelles dans ce domaine exploitent caractéristiques associées à l'intelligence. Afin partiellement de combiner leurs avantages respectifs, une nouvelle architecture de contrôle intelligent fut élaborée cherchant à transmettre une plus grande autonomie à des systèmes qui doivent interagir avec un environnement donné et y jouer un rôle. psychologiques sur le comportement intelligent, portant une attention particulière quant En s'aidant d'études cette synthèse au respect l'intelligence tels que considérés dans ces approches. fut réalisée des principes associés en à Composée à la base d'une banque de comportements, l'architecture permet de sélectionner dynamiquement les compétences utiles et de combiner leurs actions en fonction des intentions propres du système utilisant une telle architecture de contrôle. Ces intentions sont affectées par la situation environnementale, les besoins du système et les connaissances innées ou acquises sur l'environnement. Enfin, des motifs permettent au système d'évaluer son fonctionnement de façon introspective interactions avec l'environnement afin d'optimiser de façon autonome ses externe et ses intentions. La généralité de l'architecture permet d'exploiter au besoin les techniques développées pour d'autres systèmes afin d'en exploiter les forces en fonction des capacités sensorielles, d'action et de traitement requises pour le système autonome à contrôler. Pour la thèse, la mise en oeuvre proposée se fait principalement par logique floue et par la construction d'un graphe topologique. Sa validation fut réalisée à partir d'un environnement simulé de robot mobile. Les résultats démontrent l'utilité de combiner la réactivité, la délibération et les motivations pour que des systèmes manifestent une plus grande "intelligence" et autonomie. i REMERCIEMENTS Je tiens tout d'abord à remercier mes deux directeurs de recherche, M. Gérard Lachiver et M. Chon Tam Le Dinh, pour m'avoir donné la latitude nécessaire pour aborder une problématique nouvelle ainsi que pour leur support lors de la réalisation de ces travaux. Je tiens aussi à remercier les membres du jury, M. Robert David ? M. Kabanza ? M. Gregory Dudek de l'université McGill ?, pour leur évaluation et leurs commentaires sur cette thèse. Je désire aussi exprimer plus particulièrement ma reconnaissance à M. Robert David du centre de développement des A.E.O. de la faculté d'éducation de l'université de Sherbrooke pour sa participation comme jury à mon examen général du doctorat. Je désire aussi remercier M. Nikolaus Almàssy de l'université de Zurich-Irchel, Suisse, pour m'avoir laissé utiliser son logiciel de simulation de robot mobile BugWorld. Je dois aussi souligner l'aide précieuse de M. Michel Héon et M. Marcel Lapointe lors de l'installation de BugWorld, ainsi que M. François Côté pour le support informatique fourni dans des moments cruciaux. Je profite aussi de l'occasion pour souligner mon appréciation à M. Luc Martin pour les nombreuses discussions et débats que nous avons eues sur la nature et la mise en forme de l'intelligence. Je tiens aussi à exprimer toute ma reconnaissance au Conseil de recherches en sciences naturelles et en génie du Canada (CRSNG) pour leur assistance financière lors de mon doctorat. J'exprime aussi ma gratitude à ma famille qui a su manifester leur intérêt, leur support et leurs encouragements aux moments opportuns. Je tiens enfin à remercier ma charmante épouse Annie pour sa compréhension, son dévouement et son attention pour me laisser réaliser mon doctorat. C'est à eux que je dédis cet ouvrage. ii TABLE DES MATIERES 1. INTRODUCTION.................................................................................................................7 10.1. Section..............................................................................................................................7 10.1.9. Sous-Sections.....................................................................................................7 Annexe 1 ................................................................................................................................... 1 iii LISTE DES FIGURES Figure 11.11 Figure .................................................................................................................7 iv LISTE DES TABLEAUX TABLEAU 10.1 TEST TABLEAU...............................................................................................7 v LEXIQUE Activation d'un comportement: État d'un comportement disponible à réagir aux conditions environnementales. A g e n t : Système qui doit agir dans un environnement et y jouer un rôle selon e n fonction de sa politique de contrôle. Attitude: Sentiment favorable ou défavorable éprouvé envers quelqu'un ou quelque chose. États internes instantanés de l'agent justifiant ses décisions et son comportement. B e s o i n : Force ou pression propre à l'identité de l'agent qui la motive à adopter des comportements particuliers. C o g n i t i o n : Faculté d'acquérir des informations et des connaissances à partir des expériences vécues par l'agent. Coin externe: Coin ayant un angle supérieur à 180°. Coin interne: Coin ayant un angle inférieur à 180°. Compétence: Synonyme de comportements du point de vue du contrôle. Comportement: Du point de vue psychologique, un comportement est une manifestation externe d'un individu répondant à une stimulation venue de son milieu intérieur ou de son milieu extérieur. comportement est une manifestation Du point de vue du contrôle, u n externe désirée indiquant comment réagir en transformant des sensations pour en obtenir des actions. Comportement avec condition b i v a l e n t e : Comportement dont les règles tentent d'établir un équilibre dans les conditions qui l'influencent. vi Comportement avec condition de neutralité: Comportement dont l'action résultante est influencée par une conséquence neutre, ou sans force. Comportement hautement r é a c t i f : Comportement dont les règles ne font que réagir à ce qui est perçu, sans tenté de trouver un équilibre des conditions ou à neutraliser l'action conjointe des règles. Comportement purement r é a c t i f : Comportement hautement réactif dont les conditions d'activation sont les mêmes que celles qu'il utilise pour réagir. Désirabilité: Recommandation favorable à l'utilisation de comportement. É m e r g e n c e : Caractéristique associée à une fonctionnalité (ou un comportement global) qui se manifeste de par les mécanismes internes de contrôle et les interactions avec l'environnement, sans être explicitement contrôlée ou spécifiée à l'interne. Environnement: Milieu dans lequel le système doit évoluer. État i n t e r n e : États utilisés par l'algorithme de contrôle affectant la sélection de comportements. État topologique: Information emmagasinée dans un noeud du graphe topologique, tirée d'une séquence de formes topologiques identifiées. E x p l o i t a t i o n : Caractéristique associée à un comportement qui est sélectionné et qui réagit à l'environnement en fonction des sensations qui lui sont pertinentes. Expression régulière t o p o l o g i q u e: Structure lexicale caractérisant l'état topologique et la rotation obtenus par l'analyse lexicale d'une séquences de formes topologiques au cours d'une transition. vii Fonctionnalité émergeante: fonctionnalité qui émerge sous forme d'effet de bord par la dynamique interne ou l'interaction dynamique avec l'environnement. Forme topologique: Information obtenue du comportement d'identification propre à une interprétation symbolique de la disposition des repères aux alentours de l'agent. Graphe t o p o l o g i q u e: Représentation sous forme de noeuds interconnectés de la séquence des repères topologiques construits lors du déplacement de l'agent. Holistique: Système dans un tout qui est plus que la somme de ses parties. Indésirabilité: Recommandation non favorable à l'utilisation de comportement. I n t e n t i o n : Choix des comportements à utiliser avec possiblement des paramètres internes associés à ces comportements pour fixer leurs objectifs particuliers. I n t r o s p e c t i o n : Étude de la conscience par elle-même, du sujet par lui-même (Petit Larousse). Lieu t o p o l o g i q u e: Forme topologique et le nombre de cycles ou elle fut consécutivement identifiée. Motif: Raison d'ordre intellectuel qui pousse à faire une chose, à agir (Petit Larousse). M o t i v a t i o n : Facteur psychologique conscient ou inconscient qui incite l'individu à agir de telle ou telle façon (Petit Larousse). Noeud de m a r q u e : Noeud du graphe topologique représentant un point de repère fiable tel que perçu dans l'environnement. viii Noeud de transition: Noeud du graphe topologique représentant un point de repère non fiable dans l'environnement. Paramètre interne: Variable échangée entre le module de cognition et le module de comportements. P e r s o n n a l i t é : Ensemble des paramètres propres à la politique de contrôle et qui détermine les particularités et les différences dans les attitudes de l'agent et dans ses comportements émergeants. Rationnel: Qui est fondé sur la raison, qui est déduit par le raisonnement et n'a rien d'empirique, déterminé par des calculs ou des raisonnements, conforme au bon sens (Petit Larousse). Situation externe globale: Situation externe qui affecte la sélection de comportement. Scénario: Déroulement prévu ou souhaité du comportement résultant pour l'agent. Stratégie de c o n t r ô l e : Scénario établissant les interactions requises entre les modules de SIR pour atteindre un but ou un comportement résultant désiré Utilisation d'un c o m p o r t e m e n t : Choix d'un comportement selon les sources de recommandations et la sélection finale. V a l e u r s : Ensemble des règles de conduite, des lois jugées conformes à un idéal et auxquelles on se réfère (Petit Larousse). ix ACRONYME IA: Intelligence Artificielle SIR: Sélection Intentionnelle de Réactions x 1. INTRODUCTION L'intelligence prise dans ses différentes formes fut et reste encore un sujet d'étude important pour plusieurs sciences comme la philosophie qui s'interroge sur la nature de l'intelligence et ce qui peut la rendre possible dans le monde réel [190], la psychologie qui s'intéresse à l'étude de phénomènes associés à l'intelligence par l'observation de comportements intelligents [188], et la neuroscience qui s'intéresse aux bases anatomiques, physiologiques et chimiques des comportements [26]. Les développements technologiques survenus depuis le début du vingtième siècle ont mené à la création d'une nouvelle discipline où l'intelligence et ses mécanismes sont de première importance. Cette discipline est l' Intelligence Artificielle (IA), u n domaine de recherche qui connaît une des plus grandes progressions en tant que discipline scientifique depuis son instauration à Dartmouth en 1956 [207]. Selon Herbert Simon, un des pères fondateurs de cette discipline, l'IA est une science empirique qui tente de reproduire des capacités intelligentes (c'est-à-dire des capacités qui semblent nécessiter de l'intelligence lorsque réalisées par l'humain) sur des systèmes informatiques l'observation [188]. Ces capacités de comportements intelligents peuvent être humains, ou encore basées sur elles peuvent arriver à des traitements complexes par la création de processus intelligents et d'artefacts sans se concerner des caractéristiques humaines ou des notions abstraites de l'intelligence [169, 188]. Ceci n'est qu'une définition de l'IA car il n'y a pas encore de définition unique sur laquelle les chercheurs s'entendent [207]. La possibilité de reproduire des capacités intelligentes sur la machine permit à l'IA d'influencer et d'être influencée par les théories associées à l'intelligence [147]. L'IA est un domaine définit par ses problèmes et non par ses méthodes [169], ce qui explique pourquoi les recherches en IA combinent une grande variété de sujets 1 comme la représentation des connaissances, le raisonnement, la planification, la recherche, l'apprentissage, le traitement du langage naturel, la vision et la robotique [207]. La diversité des recherches et les différentes perspectives associées à l'intelligence donnèrent aussi naissance à des méthodes variées comme entre autres les systèmes experts, les réseaux de neurones artificiels, la logique floue, les algorithmes génétiques et le raisonnement par cas. Dès lors, il n'est pas surprenant de trouver des contributions venant de chercheurs de différents domaines comme l'ingénierie, l'informatique, la psychologie, mathématiques, la philosophie, etc. la biologie, les neurosciences, les L'IA est donc un domaine pluridisciplinaire souhaitant que l'ingénierie de systèmes artificiels permettra de mieux comprendre les mécanismes de l'intelligence [113]. Malgré le progrès significatif réalisé en IA et par les autres domaines connexes, l'intelligence reste une notion difficile à définir. Actuellement, aucun consensus n'existe sur ce que constitue l'intelligence: on s'entend plutôt sur la possibilité que l'intelligence ait plusieurs dimensions non exclusives [17]. Mais à cause de l'énormité et du progrès rapide et croissant de la littérature scientifique entourant cette notion, il semble nécessaire de développer un modèle conceptuel théorique de l'intelligence qui arrive à lier les connaissances de l'intelligence dans une architecture unifiée [9]. Les théories existantes de l'intelligence sont incomplètes au lieu d'être incorrectes [200], et leur unification dans un modèle général permettrait d'assurer une meilleure progression de la recherche et du développement dans ce domaine [5, 53]. Les travaux présentés dans cette thèse s'intéressent aux différentes dimensions utiles de l'intelligence pour la conception de systèmes intelligents travaillant dans des environnements quelconques, dynamiques et incertains. intelligent plus particulièrement Ce genre ceux étant complexes, de problématique est abordé en contrôle [17], un autre domaine associé à l'IA, où les recherches 2 visent la conception de méthodologies de contrôle permettant de reproduire des capacités intelligentes dans des systèmes complexes, En considérant que la réalisation de système intelligent demande un effort interdisciplinaire qui est évolutionnaire plutôt que révolutionnaire [15], il est donc important de repartir des approches actuelles pour en exploiter les forces et tenter de les regrouper. Suite à une recherche dans la littérature scientifique, il fut possible de constater que plusieurs caractéristiques associées à l'intelligence étaient considérées dans les approches actuelles en contrôle intelligent. Les principales commandes et caractéristiques de sensations, la sont l'utilisation de hiérarchie modélisation du monde, la délibération, la distributivité, les comportements, la réactivité, de planification, la l'émergence, le jugement et les motivations. Toutefois, ces caractéristiques ne sont jamais considérées dans leur ensemble, et pourtant chacune semble apporter une contribution significative au comportement intelligent. Afin de répondre au besoin d'unifier les caractéristiques associées à l'intelligence, l'objectif de la thèse est de présenter une nouvelle architecture de contrôle qui tente de transmettre plus d'autonomie et d'intelligence à des systèmes qui doivent interagir avec un environnement donné et y jouer un rôle. En plus des approches actuelles e n contrôle intelligent, cette architecture s'inspire aussi des d'études psychologiques sur le comportement intelligent pour regrouper ces caractéristiques et exploiter leurs forces à bon escient respective. tout en respectant leur philosophie de fonctionnement L'architecture développée est désignée par l'acronyme SIR signifiant Sélection Intentionnelle de Réactions. Elle constitue donc une tentative dans la détermination d'un modèle conceptuel général de l'intelligence qui considère sa reproduction artificiel ainsi que ses principes naturels fondamentaux. Cet objectif est aussi poursuivi par Albus [9] mais d'une manière différente. 3 Composée à la base d'une banque de comportements, l'architecture permet de sélectionner dynamiquement les compétences utiles et de combiner leurs actions e n fonction des intentions propres à un système exploitant SIR pour son contrôle. Puisque la généralité de SIR vise son utilisation pour des systèmes autonomes oeuvrant dans des environnements quelconques, le terme agent est utilisé dans la thèse pour désigner un système intentionnel [178] utilisant SIR comme politique de contrôle. Sommairement, SIR repose sur six modules, soit un module de comportements, trois modules de recommandations, un module de sélection finale et un module de motifs. Le premier module est composé d'un ensemble de comportements permettant à l'agent de réagir aux conditions environnementales perçues. Le répertoire de comportements vient définir les capacités d'action que peut exploiter l'agent, et que les cinq autres modules veilleront à utiliser "intelligemment". Trois de ces modules servent à recommander l'utilisation de comportements à partir de différents critères. Le premier examine les conditions particulières de l'environnement pouvant affecter le choix des comportements de l'agent. Le second ajuste le comportement de l'agent en fonction de ses besoins propres. Le troisième module de recommandations est de type cognitif, c'est-à-dire que des connaissances sur l'environnement peuvent alors être exploitées pour recommander par planification ou délibération l'utilisation de certains comportements. Cette source de connaissances est aussi influencée par la mémorisation des interactions de l'agent avec l'environnement externe, ses modules de recommandations et ses motifs. Toutes ces recommandations sont acheminées au module de sélection finale qui les pondère et les unifie pour choisir les comportements à utiliser. Enfin, le module de motifs permet à l'agent d'évaluer son fonctionnement de façon introspective afin d'optimiser et de superviser ses interactions avec l'environnement externe et entre ses sources de recommandations dans l'atteinte de ses objectifs. 4 La présente thèse est structurée en trois grandes parties. Comme première partie, le chapitre 2 présente les caractéristiques rattachées à l'intelligence telles que considérées dans les approches en contrôle intelligent et en psychologie. Ce chapitre tente de regrouper les visions de l'intelligence en proposant une façon plus générale de les considérer, soit en mettant plus d'emphase sur les capacités du système à interagir avec son environnement que sur ses l'intelligence ou ses mécanismes de mise en oeuvre. présentation de l'architecture de contrôle SIR. caractéristiques associées à Le chapitre 3 suit avec la L'architecture développée et ses modules sont présentés de manière conceptuelle, découplée d'une problématique, de techniques, de ressources particulières ou de toute autre contrainte pouvant affecter sa généralité. La généralité est un aspect important de l'architecture car l'objectif n'est pas de statuer sur les meilleurs principes de mise en oeuvre de l'intelligence, mais plutôt de situer et de tirer profit de leurs apports respectifs dans u n environnement de travail unifié. Dans la seconde partie de la thèse, le fonctionnement de l'architecture de contrôle SIR est validé expérimentalement à partir d'un environnement simulé de robot mobile décrit au chapitre 4. Comme expérimentation, le robot simulé (ou l'agent) désire atteindre des cibles tout en assurant un bon niveau accumulateurs et une recherche efficace de son environnement. de charge de ses Le robot ne possède aucune information a priori sur son environnement, et doit se développer par luimême une représentation interne de son milieu à partir de ses interactions avec lui. L'émergence au niveau de la construction de ce modèle est un aspect important considéré lors de cette mise en oeuvre de SIR. La description de la mise en oeuvre de chacun des modules de SIR pour réaliser ce type d'expérimentation commence avec le chapitre 5 pour le module de comportements flous, suivi du chapitre 6 pour le module de motifs. Ce dernier chapitre permet d'introduire la représentation utilisée pour la formulation de recommandations par les modules de recommandations. La description 5 de ces modules suit avec le chapitre 7 pour le module de cognition basé sur la construction d'un graphe topologique repérant les endroits perçus par l'agent, et le chapitre 8 pour les module de situation externe globale, de besoins, et de sélection finale, tous trois flous. Ensuite, le chapitre 9 présente les résultats d'expérimentations. Suite à ces expérimentations, il est possible de démontrer l'apport de l'architecture proposée quant à l'unification de l'ensemble l'intelligence, des perspectives psychologie. tant au niveau des caractéristiques en contrôle rattachées intelligent à qu'en Une emphase particulière est portée sur l'introspection ou l'auto- observation, une capacité qui s'est démontrée essentielle pour la gestion des buts et des limiter les lacunes de l'agent lors de ses interactions avec son environnement. Une telle capacité semble être à la base de nombreux principes associés à une intelligence évoluée. Cette justification est présentée comme troisième et dernière partie au chapitre 10. Les directions de recherche futures basées sur SIR y sont aussi présentées. 6 2. CARACTÉRISTIQUES ASSOCIÉES À L'INTELLIGENCE L'intelligence est un concept difficile à définir. Le dictionnaire Petit Larousse définit l'intelligence en quatre points: la faculté de comprendre, de donner un sens; l'aptitude à s'adapter à une situation, à choisir en fonction des circonstances; l'être humain considéré dans ses aptitudes intellectuelles; et l'aptitude variable entre les individus et les espèces à résoudre des problèmes de toutes sortes. Le qualificatif "intelligent" peut donc avoir plusieurs significations, ce qui explique la difficulté de la communauté en contrôle intelligent d'obtenir un consensus sur une définition de l'intelligence [17]. En contrôle intelligent, la définition de l'intelligence varie entre les chercheurs, allant d'une sorte de chose que les humains font presqu'en tout temps [41] jusqu'à la capacité de raisonner, comprendre et apprendre [2] de façon autonome [16, 17]. Afin d'être plus en mesure de comprendre les différentes dimensions de l'intelligence et de guider l'objectif de la transmettre à la machine, une recherche fut entreprise sur les concepts exploités à cette fin en contrôle intelligent. Suite à cette recherche, il fut possible de constater que plusieurs caractéristiques associées à l'intelligence sont utilisées pour tenter de la reproduire dans des systèmes. De plus, l'étude de l'intelligence en psychologie confirme l'existence de plusieurs d'entre elles. Toutefois, ces caractéristiques ne sont jamais regroupées dans une seule approche, et pourtant chacune semble amener une contribution significative à l'intelligence. L'objectif de ce chapitre est de faire ressortir les principes utiles pour reproduire un comportement intelligent, tels qu'exploités intelligent et considérés en psychologie. par les approches en contrôle Ce chapitre fournit aussi une explication sur la difficulté de définir l'intelligence, et propose une perspective plus générale 7 pour la reconnaître. Ces indications permettent de justifier le mécanisme de fonctionnement de l'architecture SIR introduite au chapitre 3 et faisant l'objet de la présente thèse. 2.1. L'intelligence telle que considérée en contrôle intelligent Il existe actuellement différentes branches de recherche associées au contrôle de systèmes. Ces branches se distinguent par le type de système qu'elles arrivent à contrôler, ainsi que par leur mécanisme de fonctionnement. À la base, le domaine du contrôle conventionnel exploite des méthodes mathématiques, principalement des équations différentielles, pour contrôler des systèmes dynamiques [17] (même qu'au début, résoudre des équations différentielles étaient considérées de l'IA [74]). Les problèmes qui y sont abordés doivent toutefois être modélisables mathématiquement, ce qui n'est pas toujours le cas pour des environnements complexes, incertains, bruités, imprévisibles, de grandes dimensions, sujets à des buts multiples et subissant des variations structurelles et paramétriques [46, 68, 142]. Pour aborder ces environnements associées à l'IA sont utiles. difficilement définissables, des techniques Les systèmes experts [1], la logique floue [112], le neurocontrôle [19, 20, 142] ainsi que différentes combinaisons de ces méthodes [116, 86] se sont avérées des techniques intéressantes pour résoudre différents aspects associés à cette problématique. Elles sont toutefois plus expérimentales et plus heuristiques que la méthode d'ingénierie en contrôle [20]. Mais comme pour les méthodes de contrôle conventionnel, ces méthodes n'arrivent pas à elles-seules à reproduire toutes les capacités associées à l'intelligence. Elles sont souvent fondées sur des spécifications, des ressources, des représentations ou des problèmes technologiques particuliers. Il est donc nécessaire de développer, de façon 8 conceptuelle et le plus découplée possible des aspects technologiques, des approches générales servant intelligents. de cadre de travail La principale difficulté pour la mise en oeuvre des systèmes à surmonter semble être le problème de dimensionnalité propre aux environnements complexes et dynamiques. La reproduction de la pensée humaine demande de considérer le problème dans son ensemble, et non toujours penser à réduire sa portée [204, 205]. Pour arriver à u n plus haut niveau d'intelligence, il existe en contrôle intelligent des approches plus générales pour la conception de systèmes intelligents [53]. Ces approches peuvent exploiter au besoin les précédentes méthodologies dans leurs différents modules de traitement. Il en existe une grande variété, chacune d'entre elle portant une emphase particulière sur des aspects particuliers de l'intelligence, principalement sa modularité. Toutefois, les approches ne réalisent pas exactement ce découpage de la même façon. Il est possible de regrouper les modes de découpage en quatre groupes de principes pour la mise en oeuvre de l'intelligence: hiérarchique, la décomposition par l'intelligence étapes fonctionnelles par niveau de l'intelligence, la distributivité de l'intelligence et l'émergence de l'intelligence. 2.1.1. Intelligence par niveau hiérarchique La mise en oeuvre de l'intelligence est considérée ici sous la forme d'une hiérarchie de gestion selon différents horizons de décision. plus connues utilisant ce principe est l'architecture Une des approches les de contrôle intelligent hiérarchique de Saridis [175]. La figure 2.1 illustre le principe de cette architecture. Saridis propose une structure hiérarchique en arbre à trois niveaux selon le principe d'intelligence croissante avec décroissance de la précision: le niveau d'exécution est responsables des sensations et des fonctions de contrôle; le niveau organisation est responsable de la planification et le raisonnement abstrait; et le niveau coordination sert d'interface entre le niveau organisationnel 9 et le niveau d'exécution. Les sensations issues de l'environnement se propagent du plus bas niveau vers le haut, et les commandes sont issues des plus hauts niveaux vers le bas. Une telle architecture peut être généralisée pour plus de trois niveaux, comme il fut proposé par Antsaklis, Passino et Wang [14, 15]. Usager Organisation Coordination Exécution Sensations .Figure 2.1 2.1.2. Contrôle Architecture du contrôleur hiérarchique intelligent de Saridis Décomposition par étapes fonctionnelles de l'intelligence Le second principe considère que l'intelligence est mise en oeuvre selon une décomposition fonctionnelle d'étapes de traitement. Ces étapes de traitement sont habituellement réalisées de manière séquentielle selon l'ordre suivant: la perception, la modélisation du monde, la planification de stratégies, l'exécution des plans et la formulation de commandes. La figure 2.2 illustre ces étapes [38]. 10 Senseurs Figure 2.2 P e r c e p t i o n P l a n i f i c a t i o n M o d é l i s a t i o n E x é c u t i o n C o m m a n d e s Actuateurs Décomposition par étapes fonctionnelles de l'intelligence L'architecture de contrôle proposée par Albus [6, 7, 8, 9], peut être associée à ce groupe d'approches. Elle fut présentée comme un modèle théorique de l'intelligence et reprend la notion de centres fonctionnels dans une organisation hiérarchique et hétérarchique (telle que décrite à la section 2.1.1). Albus [7] va même plus loin e n proposant d'interconnexion une interprétation de la structure des centres fonctionnels identifiés du cerveau, comme le fait foi son analyse avec le système limbique pour la conception du module de jugement de valeurs. Il arrive ainsi à incorporer les émotions dans un module de jugement de valeurs pour la sélection de plans d'exécution. 11 Jugement de valeurs Évaluation de la situation Situations perçues Traitement des senseurs Évaluation situation Mise à jour Entrée prédite Planification et exécution Évaluation plan Résultats plan. Modèle du monde/ Base de données Décomposition de la tâche Plans États Entrée observée Action commandée Senseurs Figure 2.3 2.1.3. Actions Environnement Événements Actuateurs Modèle d'intelligence selon Albus Intelligence par distributivité et décentralisation Le troisième principe plusieurs sources devant considère l'intelligence travailler ensemble comme étant distribuée pour résoudre des entre problèmes. Contrairement à la vision présentée en 2.1.2, l'accent est placé ici sur la délibération entre des sources ayant leurs propres intentions, objectifs ou buts. Les approches multi-agents [213] et à tableau noir [93] font parties de ce groupe d'approches. On y suppose que l'intelligence peut se manifester par le travail conjoint de plusieurs agents indépendants qui communiquent entre eux et qui coopèrent pour résoudre des problèmes. Les communication, la études dans coopération, ce la domaine gestion portent sur de conflit, la la collaboration, coordination et planification à partir d'agents indépendants pour résoudre un problème [213]. figure 2.4 présente l'architecture générale des approches à multi-agents. la la La Un agent est perçu comme une agent spécialisée ayant une fonction ou une compétence particulière. La stratégie d'utilisation des agents et leur communication sont des points importants dans ce genre de système [207]. 12 Figure 2.4 2.1.4. Agent 1 Agent 2 Agent 3 Agent i ... Agent n Approche générale à multi-agents Intelligence par émergence de fonctionnalité Ce dernier principe considère que l'intelligence se met en oeuvre par un couplage plus direct avec l'environnement. Cette vision diffère de l'approche traditionnelle ou classique de l'IA voulant que l'intelligence soit le résultat d'une manipulation symbolique de concepts à partir d'un modèle complet et central du monde [38, 39, 50], comme on le fait selon la vision de la section 2.1.2. Cette nouvelle école de pensée, qualifiée de nouvelle IA [39, 207], fut initiée suite aux travaux de Brooks [38] sur les approches comportementales ou réactives. Fondamentalement, l'approche s'oppose à toute représentation complète, centralisée et symbolique du monde sur laquelle les actions sont déduites [39, 42, 43]. Au lieu de réaliser une décomposition selon une vision hiérarchique, d'étapes ou de fonctions, la décomposition s'effectue sous forme de modules liant des sensations à des actions, mettant en oeuvre des compétences nécessaires pour réaliser des tâches (Comme éviter des obstacles, explorer, construire des cartes, identifier des objets, etc.) [38]. La figure 2.5 illustre une telle décomposition en terme de compétences ou de comportements. Un comportement est une manifestation externe désirée, indiquant comment réagir en transformant des sensations pour en obtenir des actions. Ces formes d'actions ne considèrent que les sensations pertinentes à leur traitement, 13 permettant ainsi de déterminer ce qui est utile ou non utile pour la prise de décision. L'ensemble de ces compétences interagissent directement avec le monde et sont dirigées selon les situations rencontrées dans l'environnement au lieu d'avoir été préalablement planifiées ou analysées. La fonctionnalité résultante n'est pas spécifiée par une seule compétence mais par l'ensemble des interactions entre ces modules et avec l'environnement perçu [119], faisant émerger un comportement. Compétence n ... Compétence i Senseurs Actuateurs ... Compétence 2 Compétence 1 Figure 2.5 Décomposition comportementale de l'intelligence L'approche comportementale est caractérisée par quatre principes fondamentaux: le monde est son propre et meilleur modèle pour le système; le système doit faire face au monde réel; l'intelligence est déterminée par la dynamique de l'interaction avec le monde; et l'intelligence émerge de l'interaction de composantes du système comportementale avec le monde et indirectement entre eux (l'intelligence est dans les yeux de l'observateur) [41]. important pour cette L'émergence de fonctionnalité est un concept très approche. Une fonctionnalité émergeante est une fonctionnalité qui émerge sous forme d'effet de bord par la dynamique interne ou l'interaction dynamique avec l'environnement [195]. Elle résulte de l'interaction de plusieurs composantes primitives [195], soit par l'utilisation parallèle des comportements définis pour le contrôle du système. Elle donne l'habilité de réagir de façon flexible, tolérante aux fautes et robuste aux environnements 14 complexes et dynamiques, car aucune des composantes n'est en charge de produire cette complexité ou est plus critique qu'une autre [120, 122, 123]. L'émergence de fonctionnalité est u n principe d'organisation important chez les systèmes vivants [122] et se manifesterait au niveau de la navigation, la vision, l'ouïe et dans toute capacité humaine [44]. L'humain est capable de faire plusieurs choses à la fois sans avoir explicitement modélisé toutes les combinaisons de situations possibles. Dans l'ensemble, il existe plusieurs mécanismes qui travaillent de différentes façons desquels émergent u n comportement qui est observé et rationalisé par l'agent [41]. Avec l'approche comportementale de Brooks [38], les comportements sont mise e n oeuvre sous forme de diagramme d'états finis augmentés de certaines fonctions pour le contrôle temporel de leur exécution [40]. Une logique binaire est alors utilisée pour l'évaluation des règles de contrôle. De plus, les comportements sont organisés en une hiérarchie de priorité fixe et exclusive. devraient normalement comportements les Les comportements abstraits et complexes se trouver au sommet de cette hiérarchie. plus comportements inférieurs. prioritaires peuvent prendre préséance Ainsi, les sur les Il n'y a pas de fusion de commandes car un seul comportement a le contrôle des actuateurs en tout temps. Un tel mécanisme affiche des problèmes comme sa mise à l'échelle [29, 53, 42, 209] et l'établissement de compromis lorsque des buts conflictuels sont présents [166]. Il existe d'autres variantes qui tentent de corriger ces lacunes et qui sont présentées au chapitre 3. 2.2. L'intelligence L'intelligence telle que considérée en psychologie se manifeste à différents niveaux selon le type d'espèces (ex.: animale, humaine) et entre les individus d'une même espèce. La psychologie aborde ces notions en étudiant les lois régissant les comportements de divers organismes ou issus de différentes formes, comme entre autre la psychologie animale, la psychologie 15 de l'enfant, la psycholinguistique, la psychologie sociale, la psychologie cognitive, etc. Du point de vue humain, la psychologie personnalité unique composée de valeurs, considère l'individu de croyances, comme une d'attitudes, de besoins, d'habiletés, de connaissances et de comportements pour évoluer dans le monde [56]. Chaque individu est différent, et cette diversité résulte des attitudes, des comportements, des besoins, des objectifs et de l'histoire relative à l'apprentissage et l'expérience de chacun. On considère aussi qu'une personne dans son tout est composée de quatre grandes dimensions [77]: - le corps qui est le véhicule lui permettant d'évoluer dans son environnement (par les sensations et les actions musculaires); - les émotions qui la renseigne sur l'état de ses besoins; - le mental composé de son savoir et de sa capacité de comprendre; - la conscience qui représente son individualité, son essence propre (intuition, âme). L'information nécessaire à la gestion efficace de l'individu provient de ces sources et leurs interrelations équilibrées [77]. L'intelligence humaine serait affectée directement par ces dimensions. Les comportements humains, définis comme l'acte que l'être humain exécute afin de s'adapter à une situation qui l'influence, seraient en fait évalués par une fonction évaluant de nombreux facteurs caractérisant la personnalité de l'individu ainsi que de divers facteurs environnementaux (Lewin [56]). D'une même façon, les attitudes seraient affectées par des composantes cognitive, affective et comportementale [56]. Il existe donc une perspective interne et une perspective externe affectant la dimension comportementale de l'individu. L'étude de la personnalité aide à comprendre, à expliquer et, ultimement, à prévoir le comportement des individus dans diverses situations. 16 Ainsi, dans une situation donnée, les caractéristiques individuelles d'une personne l'amèneront à adopter u n comportement qui lui est propre. [56] Comme pour la psychologie, l'IA est une science empirique où on observe u n phénomène, développe une théorie qui est ensuite comparée pour évaluer sa validité, comme l'explique Simon [188] pour justifier son intérêt personnel en IA de par son lien avec la psychologie. Il n'est donc pas surprenant de constater que les principes présentés à la section 2.1 et considérés dans les approches actuelles en contrôle intelligent ont été identifiés en psychologie. La vision hiérarchique de l'intelligence présente des liens avec le modèle bureaucratique ou structuraliste de Weber et avec le modèle administratif de Fayol [56], ou la considération en psychologie cognitive de différentes échelles de temps dans le comportement humain [85]. La décomposition par étapes fonctionnelles ainsi que la distributivité des centres d'activités ont aussi des fondements en psychologie [113] et en neuro-éthologie [27, 100]. psychologie [113] comportementale et l'éthologie [177] de l'intelligence. prennent Par rapport en considération à cette vision, De plus, la la vision la notion de comportement est utilisée en psychologie pour décrire l'acte qu'un organisme exécute afin de s'adapter à une situation qui l'influence [56]. Les organismes vivants manifestent des comportements variant dans leur complexité, pouvant aller du simple réflexe aux comportements de base pour les animaux jusqu'aux comportements plus évolués manifestés par l'humain. 2.3. L'intelligence considérée dans sa globalité Aux sections 2.1 et 2.2, l'étude de l'intelligence telle que considérée en contrôle intelligent et en psychologie a permis d'identifier plusieurs dimensions rattachées à cette notion. Les distinctions entre ces dimensions expliquent pourquoi l'intelligence est si difficile à définir. À ce point, il semble inutile de statuer sur lequel de ces 17 principes est le plus puissant ou le plus général, perspectives associées à l'intelligence niveau psychologique. connaissances étant donné les différentes ainsi que leur justification respective au Établir une telle discrimination maintenant et à partir de limitées sur l'intelligence ralentirait la progression vers sa compréhension. Chacune de ces dimensions apporte des bénéfices importants pour la mise en oeuvre de l'intelligence dans la machine, et il serait favorable de trouver u n moyen de les exploiter adéquatement. Une meilleure stratégie est donc de les étudier et les comprendre, déceler leurs similitudes, leurs avantages et leurs inconvénients afin d'arriver à combiner leurs forces respectives, étant donné qu'elles semblent toutes nécessaire à la reproduction de capacités intelligentes. Tout d'abord, il est possible de remarquer certains présentés à la section 2.1. liens entre les principes À la base, chacun s'accorde pour une mise en oeuvre modulaire de l'intelligence mais selon un découpage différent. Cette modularité peut être affectée par l'horizon de décision ou le degré d'abstraction, comme le démontre l'utilisation de hiérarchie (augmentation de précision avec diminution de l'intelligence) ou d'ordre entre les comportements (augmentation de la réactivité avec diminution d'abstraction ou de la complexité des compétences). avec l'environnement L'interaction est aussi un aspect primordial pour chacun, soit pour la formation d'un modèle, établir des plans, formuler des hypothèses ou pour réagir aux circonstances perçues. Enfin, la réactivité est en fait une capacité qui peut être utilisée par chacun de ces principes [10, 91, 163] Une autre façon de les exploiter est d'énumérer les l'intelligence considérées par ces principes et ces études. l'autonomie, l'apprentissage, l'adaptation, la perception, caractéristiques Les principaux le raisonnement, de sont la modélisation, la planification, la délibération, les buts, les besoins, les comportements, la réactivité, l'émergence, la motivation, l'émotion et le jugement. Elles peuvent aussi 18 se recouper ou s'influencer, comme on peut le croire pour l'émergence, la motivation et les émotions face aux buts, aux besoins et à la planification. Toutefois, la réunion de toutes ces caractéristiques n'est pas une condition essentielle pour pouvoir qualifier un système d'intelligent. caractéristiques peuvent (comme aussi par être exemple utilisées l'apprentissage pour caractériser [9]). le Ces niveau d'intelligence manifesté par des organismes: réactivité et comportements pour une intelligence peu évoluée, jusqu'à la délibération et le jugement pour une intelligence plus évoluée. Dans la même optique, l'émotivité proportionnellement est une plus développée (comme le langage des caractéristiques et la cognition) qui distingue l'humain des espèces animales [165]. Mais encore là, une telle classification n'est pas communément reconnue, et il est difficile d'établir une discrimination ou une échelle de niveau d'intelligence basée sur ces caractéristiques. Pour définir u n comportement intelligent, c'est le comportement résultant qui compte, et non la nature des mécanismes qui l'a produit [134]. De la même façon, il existe plusieurs théories de l'intelligence. Par exemple, il y a le modèle de Gordon Bower qui voit le cerveau comme un système de traitement de l'information considérant les talents, les buts et valeurs, les types de mémoire et u n mécanisme d'attention et de décision selon des plans [89]. Il y a aussi la théorie triarchique de Sternberg [200] voyant l'intelligence comme une activité mentale dirigée vers l'adaptation intentionnelle, la sélection et la mise en environnements pertinents à la vie d'un individu. forme des De plus, un grand nombre de définitions de l'intelligence ont aussi été formulées par les chercheurs en contrôle intelligence [17]. Pour guider la conception d'une approche de contrôle qui considère l'ensemble des dimensions de l'intelligence relevées dans cette thèse, une définition générale de ce qu'est l'intelligence fut aussi élaborée. Cette définition considère que l'intelligence est un mécanisme auto-organisé de l'information capable de s'adapter de façon autonome à des environnements changeants et possiblement inconnus. 19 Ce mécanisme non pré-déterminé arrive à choisir les étapes de résolution pas forcément dictées par la logique mais plutôt par l'évidence, et d'en formuler un ensemble de conclusions compatibles. C'est aussi un processus reproductible avec variations pouvant réagir, comprendre, organiser, évaluer, mémoriser, apprendre, innover et créer de façon autonome. Toutefois, une telle définition de l'intelligence risque à nouveau de ne pas réaliser le consensus désiré car elle tente d'énumérer l'ensemble des caractéristiques associées à l'intelligence. Alors comment est-il possible de définir l'intelligence? Au lieu de mettre l'emphase sur les caractéristiques requises pour reproduire l'intelligence, il est plus efficace de définir l'intelligence à partir de la dynamique du système avec son environnement. Que l'environnement soit simple et modélisable ou encore qu'il soit complexe, dynamique et bruité, c'est à partir des interactions entre le système et son environnement qu'il est possible de mesurer l'intelligence du système. Le système et son environnement ne peuvent être décrits séparément: chacun est formé et forme l'autre. Cette vision pour évaluer l'intelligence est avancée par plusieurs chercheurs. Simon a indiqué en 1956 que le comportement rationnel dépend des caractéristiques de l'organisme mais aussi de son environnement [185], et ensuite en 1969 que le comportement complexe d'une puce pourrait être une simple réflexion de son environnement et non de sa complexité interne [187]. Pour McFarland et Bösser [134], l'intelligence est difficile à définir car elle serait liée à l'adaptation aux changements dans l'environnement [134]. Pour sa part, Steels [197, 198] indique qu'il n'est pas possible de comprendre l'intelligence en focussant sur les structures et les processus qui déterminent causalement un comportement observable. La tendance à étudier u n phénomène complexe en observant ses sous-composantes n'est pas valable [197, 198, 204, 205]. Une partie de l'explication de l'intelligence viendra d'un point de vue 20 holistique considérant la dynamique d'interaction entre les structures et les processus dans l'environnement, et le couplage entre les différents niveaux [197, 198]. Il y a aussi Smithers [191, 192] qui croit que la dynamique des interactions du système avec son environnement influence directement l'intelligence: la réalité du système est créée environnement. en conséquence directe avec ses interactions avec son Enfin, Pfeifer [158] indique que la considération de la dynamique d'interaction entre le système et l'environnement semble être une contrainte essentielle pour l'unification du monde de la cognition et des techniques pour les agents autonomes, afin d'y préserver l'émergence. Cependant, il ne faut pas oublier que la dynamique l'environnement dépend des capacités propres au système. entre le système et Pour la présente thèse, quatre hypothèses sont formulées concernant la nature de ces capacités: - capacités de perception et d'action dans le monde. On ne peut séparer l'intelligence du corps [83]: il existe une double influence entre la perception et l'action qui influence directement les interactions du système avec son environnement: ce qui est perçu influence directement les actions prises, et les actions prises influencent ce qui est perceptible par le système. Ainsi, l'utilisation de capteurs IR, de sonars ou d'une caméra peuvent influencer l'intelligence manifestée par le système, tout comme la commande précise des moteurs ou leur rapidité avec lesquelles ils arrivent à déplacer le système; - capacité de traitement interne. limitées mais "intelligentes". qui doivent Pour Le système possède des ressources internes être l'humain, suffisantes le cerveau pour la et système le prise de décisions nerveux sont responsables de cette capacité. Pour un système informatique, le processeur et l'espace-mémoire disponible ont un impact important sur la capacité du système de prendre des décisions avec la rapidité et la précision requise pour qu'il puisse oeuvrer adéquatement dans son milieu de travail; 21 - capacité de décision. Un système qui possède un grand nombre de capteurs, d'actuateurs, ainsi qu'un mécanisme de calcul performant peut être incapable de manifester à des comportements intelligents s'il n'est pas en mesure de prendre de bonnes décisions. L'utilisation qu'il fait de l'information disponible pour la prise de décision est un facteur influençant directement la capacité du système à agir intelligemment dans son environnement. L'algorithme interne de décision, la mémorisation, la formation de connaissances, le raisonnement à partir de ces connaissances et l'apprentissage sont des facteurs influençant à ce niveau. En considérant l'ensemble de ces capacités, il est possible de comprendre qu'un système a sa propre réalité en fonction de ses capacités de perception, d'action, de traitement et de prise de décision, chacune étant à la base de ses interactions avec son environnement. Toute limitation ou avantage au niveau de ces capacités affecteront l'intelligence du système. De cette façon, un papillon de nuit qui fuit son prédateur une chauve-souris [134] peut être à juste titre qualifié d'intelligent autant que l'humain qui arrive à piloter un avion. De même, il est possible de comprendre pourquoi il est difficile de définir l'intelligence, d'établir une classification à partir des caractéristiques associées à l'intelligence, ou de retrouver l'ensemble de ses caractéristiques dans un système pouvant être qualifié d'"intelligent", naturel ou artificiel. qu'il soit L'objectif maintenant est plutôt de proposer une architecture unifiée de contrôle permettant de combiner au besoin l'ensemble de ces dimensions, ces caractéristiques, et des mécanismes pour leur mise en oeuvre. Et c'est suivant ces critères référentiels de l'intelligence concernant l'environnement et les capacités du système qu'il sera possible d'évaluer si l'architecture arrive à mettre en oeuvre u n bon niveau d'intelligence. 22 3. DESCRIPTION DE L'ARCHITECTURE DE CONTROLE INTELLIGENT SIR La mise en oeuvre des principes présentés au chapitre 2 par les approches e n contrôle intelligent confirme la possibilité de transmettre des capacités de plus e n plus intelligentes à des systèmes. Mais pour accroître davantage le niveau d'intelligence manifesté par la machine, l'ensemble de ces principes doivent être regroupés dans une architecture unifiée, comme le souhaite plusieurs chercheurs e n contrôle intelligent [5, 9, 53]. Ce regroupement doit se faire en respectant les hypothèses fondamentales de chacun, sous forme d'une vraie synthèse intellectuelle et non par du simple "copier et coller" afin d'atteindre la vraie intelligence (Werbos [17]). Un des principaux problèmes à résoudre est d'utiliser des méthodes conçues pour des problèmes spécifiques dans une niche d'applications différente considérant des environnements complexes, dynamiques et non structurés. Comme solution possible, il existe actuellement des approches qui tentent de combiner les techniques de délibération utilisées en IA traditionnelle avec celles réactives de l'IA nouvelle. La planification est un champ de recherche important e n IA [193] et en robotique [180]. Mais les interactions avec le monde ne peuvent pas toutes être prévisibles ou modélisées à cause de la diversité des situations dans des environnements réels, d'où l'utilité de la réactivité. Les approches purement réactives ont démontré leur efficacité à contrôler des systèmes oeuvrant dans des environnements réels difficilement modélisables ou prévisibles. Par contre, elles sont incapables de formuler et de poursuivre des buts à long terme [85] (car elles sont constamment poussées par le monde [26]), ou encore de planifier, de prévoir et de raisonner symboliquement [139]. hybrides [45]. Ces approches sont qualifiées d'approches Les approches hybrides sont jugées nécessaires pour balancer les contraintes de raisonnement en temps réel et celles de délibération [73]. Le couplage de ces deux aspects doit cependant se faire avec précaution car ils peuvent être 23 incompatibles s'ils ne sont pas correctement combinés. Il existe plusieurs de ces approches "hybrides": - L'approche RAP de Firby [65, 66], ATLANTIS de Gat [74, 75], 3T de Bonasso et al. [35, 36], CIRCA (très similaire à la vision 3T) de Musliner et al. [140, 141], IRVS de Wang et Lever [211], de Salichs et al. [174] et celle de Noreils et Chatila [144] sont des approches combinant la réactivité à la délibération par l'utilisation d'une structure hiérarchique affichant des similitudes avec la vision de Saridis; - L'architecture TCA de Simmons et al. [183] utilise des modules de perception, de planification, de contrôle central et de modèle du monde, capable de réagir aux changements dans l'environnement. Le système PRS de Georgeff [76] peut aussi faire partie de ce genre d'approche hybride; - La réactivité est aussi considérée au niveau des approches multi-agents [182, 81, 213] et à tableau noir [64, 93]. Les connaissances peuvent alors être de type symbolique et réagir à des événements internes délibérés. Parmi ces approches, celles de Fehling et al. [63], Kohout [104, 105] et AIS de Hayes Roth [82] sont formulées comme étant des architectures générales pour l'intelligence; - Il existe aussi des approches plus proches de la vision comportementale et qui cherchent à combiner la réactivité au raisonnement symbolique. Il y a des approches comme SOMASS de Malcolm et Smithers [126], SSS de Connell [49, 52] et celle de Mataric [128] qui utilise des comportements d'identification pour réaliser une interface entre les comportement et une représentation symbolique ou abstraite. D'autres utilisent des mécanismes de diffusion et de champs de gradient [18, 72, 194, 151] basés sur des cartes connues de l'environnement et des buts par rapport à celles-ci. Il y a aussi les travaux de Kaelbling [95, 97], de Saffiotti et al. [170, 171, 172], de Donnart et Meyer [57] et de Wavish [212] qui font partis de cette catégorie. 24 Aucune de ces approches n'arrive à combiner l'ensemble des caractéristiques et des dimensions associées à l'intelligence telles que présentées à la section 2.3. Ce chapitre propose la nouvelle architecture de contrôle intelligent SIR qui tente d'y arriver. SIR sert de schéma conceptuel identifiant clairement le rôle de chacune des fonctionnalités associées à l'intelligence dans une architecture unifiée. Elle tente de spécifier la nature de l'intelligence en terme du monde externe, du monde interne et de leurs interrelations, comme le souhaite Sternberg l'intelligence. [200] pour une théorie de De plus, SIR permet d'aborder tout type d'environnement (comme le veut Wilson [214]) en spécifiant que l'architecture conceptuelle ultime évite de faire cette partition et est en mesure, selon ses différents niveaux de gestion, d'attaquer tout genre d'environnements. La section 3.1 présente les fondements de l'architecture, suivit de la section 3.2 qui donne une description plus détaillée de ses modules et de leurs caractéristiques. 3.1. Principes fondamentaux de SIR L'architecture proposée a pour but de transmettre une forme d'intelligence à des systèmes autonomes qui doivent interagir doivent y jouer un rôle. l'utilisation de d'intelligence. avec un environnement donné et qui Les prémisses de Brooks sur l'intelligence [41] ont incité comportements (ou compétences) pour bâtir un mécanisme SIR fait donc partie des approches de contrôle pour les agents situés [120, 167] et autonomes [199]. Mais si on suppose que des comportements se trouvent à la base des capacités intelligentes, L'intelligence n'est certainement qu'est-ce qui influence pas seulement les comportements? que réactive et il en existe certainement une dimension plus évoluée et propre à l'individu. Les principes et les hypothèses fondamentales sur lesquels reposent SIR sont présentées dans les deux prochaines sous-sections. 25 3.1.1. Principes de base pour la mise en oeuvre d'une intelligence dans SIR Cinq principes sur la nature de l'intelligence ont été considérés dans la conception de SIR: - Des comportements ou des compétences se trouvent à la base du mécanisme d'intelligence. Un système est en mesure de réagir et de fonctionner dans le monde en fonction de son répertoire de comportements. Ces comportements permettent de contrôler les actions du système et d'identifier des formes dans l'environnement. imprécisions Leur réactivité dans l'environnement assure une gestion appropriée et dépend des conditions des perceptuelles particulières à chacun; - L'intelligence est fonction du contexte. Le circonstances qui accompagnent un événement. de ces circonstances et la capacité contexte est l'ensemble des La détermination appropriée de réagir efficacement face à ces circonstances semblent être des composantes importantes pour l'intelligence et l'autonomie. Selon Zeleny [219], rien n'a lieu hors d'un contexte: je suis moi et ma circonstance. Le contexte est important pour expliquer pourquoi un comportement peut être intelligent dans une situation, et non pour une autre [200]; - L'intelligence émerge holistiquement. L'intelligence ne peut être le produit d'un traitement complètement décrit et expliqué: elle doit plutôt se manifester holistiquement de par l'interaction entre ses constituants. Le holisme est jugé comme une propriété importante par Simon [187] et Zeleny [220], et serait rattachée à la notion d'émergence [134, 198, 197]. On cherche alors des mécanismes d'organisation qui permettent au système de traiter par lui-même la continuelle nouveauté de l'environnement. La dimension considérée ici est l'interaction entre le système et l'environnement [123] pour faire émerger une fonctionnalité quelconque; 26 - L'auto-observation est à la base de l'intelligence. raisonner sur son fonctionnement, ses L'humain peut s'observer et réactions, ses interactions avec l'environnement et avec les autres individus, sur les étapes qu'il a réalisé pour résoudre un problème et même apprendre (par renforcement par exemple) de ces observations. L'intelligence s'observe agir, penser et réagir. Pour y arriver, Kiss [103] spécule que la machine doit avoir un notion d'être ou de soi, que sa référence doit se faire par rapport à elle-même. Sur ce point, McCarthy [132] croit que la conscience de soi, l'introspection, est essentielle pour le niveau d'intelligence humain (epiphenomenon ). et n'est pas simplement un phénomène secondaire Une telle capacité introspective permettrait au système d'évaluer l'impact de ses réactions et de son environnement sur sa propre identité afin de réajuster ses comportements pour que ses besoins les plus profonds soient satisfaits. Il ne suffit pas d'observer le comportement pour le comparer avec un modèle du monde (comme le fait [64]), mais plutôt par rapport à un modèle de soi; - L'intelligence ne peut se manifester que lorsqu'un bon niveau d'autonomie est présent. L'intelligence est propre au système. Le système doit s'inquiéter de d'autres choses que d'être réactive [179] en considérant les besoins, les buts et les contraintes dans sa prise de décision. Lorsque ceci est réalisé de façon autonome, alors l'intelligence devient une propriété du système au lieu d'être la propriété du concepteur [15, 199]. Pour être autonome, le système doit être en mesure de développer lui-même ses stratégies pour réguler son comportement [199]. Sans entrer dans les débats sur les niveaux d'autonomie permissibles pour les systèmes artificiels [36, 92, 136, 140], on peut indiquer que l'autonomie possède un caractère multidimensionnel [136] influencé par des motivations (internes ou externes) et par les connaissances propres au système sur lui et sur le monde. 27 Chacun de ces principes s'influencent entre eux pour la mise en oeuvre de l'intelligence, un peu suivant une dépendance similaire à l'ordre de présentation de ces hypothèses. Un principe qui demande d'être décrit davantage est l'émergence. Pour avoir un comportement émergent, il ne faut pas tenter de définir directement des connaissances dans le système mais plutôt focusser sur le système et sa relation avec son environnement pour que le comportement émerge par auto-organisation [156]. Parmi l'ensemble des recherches considérant l'émergence comme une propriété fondamentale des systèmes, il fut possible d'identifier différents niveaux d'émergence: - Émergence de par l'exploitation de différents comportements de simultanée et sans séquencement pré-déterminé ou de contrôle central. façon Le flux de contrôle lors de l'exécution est dirigé par la réactivité des comportements à l'environnement; - Émergence de par les interactions entre les comportements en employant une structure d'arbitration en sortie pour l'affectation des actions aux actuateurs [102] (propre à la macro-analyse [42]). Dans les approches actuelles, ce mécanisme d'interaction peut se généraliser à quatre opérations [48]: une somme indépendante [130, 196, 199], une combinaison (floue comme dans [115, 170, 171, 218], ou par réseau d'activation comme dans [151, 166, 208]), une suppression [38, 48] et une séquence. Enfin, Puente, Salichs et al. [162, 174] proposent u n mécanisme de fusion par combinaison linéaire des commandes issues des comportement en fonction d'un superviseur heuristique, flou, à renforcement ou par réseaux de neurones artificiels; - Émergence structurelle propre à la sélection dynamique de comportements. Avec l'approche de Brooks [38], toutes les compétences du système ne sont pas toujours requises pour gérer les interactions avec l'environnement, et une telle stratégie pré-programmée semble difficile à gérer pour l'utilisation d'un grand 28 répertoire de comportements [42]. Elle ne suffit pas toujours pour des systèmes qui ont plusieurs travaux à faire dans des environnements où les opportunités pour les réaliser varient considérablement [122]. Plusieurs approches tentent de corriger cette lacune, comme celle de Bellingham et Consi [29] qui sélectionne les comportements dans une librairie selon une table de transition d'états; celle de Maes et Brooks [121] en faisant apprendre aux comportements quand ils doivent être activés; celle de Maes [122] qui les sélectionne selon les motivations internes et les circonstances externes; celle de Parker [148, 149] qui choisit des groupes de comportements en fonction des motivations et des informations communiquées; ou celle de Saffiotti, Ruspini et Konolige [170] qui influence le choix des comportements par un planificateur et un module perceptuel; - Émergence par modification interne de la réactivité des comportements. La première approche de Brooks [38] et celle de Connell [50, 51] exploitent un tel principe en utilisant des messages inter-comportements. D'autres transmettent des buts aux comportements comme le fait Saffiotti et al. [170, 171], ce qui affecte la fonctionnalité émergente. L'approche de Malcolm et Smithers [126] utilise aussi ce type d'interface; - Émergence au niveau du raisonnement et des représentations. L'utilisation d'une représentation analogique [72, 194], la formation de proto-symboles [44] et l'élaboration d'une cognition située [47] sont des aspects rattachés à cette dimension de l'émergence. Pour atteindre l'objectif d'unification, toutes ces formes d'émergence doivent être considérées dans SIR. Les notions de répertoire de comportements, leur fusion et leur sélection ainsi que le contexte sont des notions identifiées par les études en neuroéthologie de Beer et al. [27, 28]. Ils indiquent que le changement entre comportement dépend des conditions environnementales et de l'état interne. Étant donné qu'il est impossible de prévoir toutes les circonstances que peut rencontrer un système lors 29 d'interaction à long terme avec l'environnement, il doit être capable d'adapter avec flexibilité son répertoire de comportements selon les contingents instantanés qui surviennent sans qu'on lui mentionne explicitement ce qu'il doit faire dans chaque situation. L'organisation peut changer selon le contexte comportemental, et les comportements peuvent s'entrelacer pour rendre difficile la distinction des changements entre eux. Enfin, il soulève l'importance de comprendre l'émergence dans l'évolution des processus cognitifs [26]. 3.1.2. Description générale de SIR Fondamentalement, SIR correspond à une simple extension de l'approche comportementale en permettant d'utiliser des états internes pour influencer le choix et le fonctionnement des comportements du système. La figure 3.1 illustre cette extension. Des comportements se trouvant à la base de la boucle externe de contreréaction assurent le contrôle des actuateurs. Les comportements choisis dictent ainsi les réactions de l'agent dans son environnement. Pour choisir ces comportements, le module de traitement des états internes observe la situation environnementale ainsi que ses choix comportementaux. L'observation des comportements sert de base pour l'aptitude introspective de SIR, permettant à l'agent d'évaluer ses capacités d'interagir et de se familiariser avec son environnement pour une plus grande autonomie. Cette boucle interne de contre-réaction permet à un agent utilisant une telle approche de formuler de façon autonome ses intentions, soit le choix et le fonctionnement des comportements, et affecte ainsi environnementales rencontrées. la manière qu'il réagira aux circonstances Une telle architecture est similaire en principe avec les techniques du contrôle adaptatif où la boucle externe de contre-réaction est rapide et sert à éliminer les perturbations d'états, tandis que la boucle interne d'adaptation sert à gérer les perturbations structurelles à un rythme plus lent [1, 68]. Avec SIR, la boucle d'adaptation évalue l'utilité des comportements disponibles par 30 rapport aux circonstances externes et internes afin de n'exploiter que ceux pertinents aux intentions propres de l'agent. États internes Observations Rétroaction apprentissage Intentions Comportements Environnement Actions Sensations Figure 3.1 Principe fondamental de SIR Ainsi, le répertoire de comportements disponibles pour l'agent défini ses capacités d'agir et de faire face au monde. Les comportements actifs à un instant donné fixent ses capacités instantanées à réagir dans son environnement intention courante dérivée par les états internes. en fonction de son De cette façon, un comportement ne spécifie pas à lui seul la fonctionnalité de l'agent. La fonctionnalité est plutôt largement trouvée à partir des propriétés de l'environnement, et maintenant par des états internes. Suivant une telle structure, deux ensembles de contextes peuvent être identifiés. Il y a tout d'abord le contexte externe propre aux conditions environnementales perceptibles, et le contexte interne propre aux états internes influençant la prise de décision. Le deuxième ensemble est formé du contexte local et du contexte global. Le contexte local est propre aux comportements et indique quand un comportement est exploitable de par sa réactivité à la situation perçue. Le contexte global est propre à la sélection dynamique de comportements formulée ici sous forme d'intentions. Les intentions n'affectent pas directement les actions du système afin d'éviter les interférences avec le contexte local de réactivité des comportements. Le contexte global agit plutôt indirectement les 31 sur ces actions en sélectionnant comportements jugés utiles ou en leur communiquant des paramètres, et considère plutôt la fonctionnalité émergente résultant de l'exploitation des comportements activés. La formulation d'intentions permet donc de réaliser une reconfiguration contextuelle des comportements en tentant d'éviter les conflits potentiels, et ces comportements réagissent selon leur contexte local pour assurer l'émergence de la fonctionnalité souhaitée. Il fut indiqué à la section 2.2 que les comportements d'un individu sont affectés par sa personnalité et la situation environnementale. En utilisant des états internes, S I R donne une forme de personnalité propre à l'agent afin qu'il soit en mesure d'assurer de façon autonome ses interactions avec son environnement. Une personnalité est définie en psychologie comme l'ensemble des traits d'origine héréditaire et sociale qui sont relativement stables chez l'individu adulte et qui déterminent les particularités et les différences dans les attitudes et dans les comportements [56]. Cette personnalité considérée au niveau des états internes permet de transmettre à l'agent des motifs, des connaissances et des besoins qui le motiveront à réaliser des objectifs et à formuler de façon autonome ses intentions. De la même façon, le fait de choisir parmi un ensemble de comportements qui travaillent de façon autonome permet de fixer le focus d'attention (propre aux comportements choisis) en fonction de l'intention, concept jugé important par Meystel [17], et Selfridge et Franklin [179]. Ceci rejoint aussi les études psychologiques de la perception qui indiquent qu'elle est influencée et qu'elle influence la personnalité, les attentes, les attitudes, les besoins, les motivations, les sentiments, les états émotifs, les valeurs et les comportements des individus [56]. Cette influence se manifesterait par l'interprétation, l'organisation et la sélection [56], et c'est pourquoi on la retrouve ici tant au niveau des comportements qu'au niveau des états internes. 32 Enfin, les aspects de la personnalité d'un individu peuvent être innés ou acquis, l'affectant simultanément et de façon continue [56]. L'aspect inné de la personnalité de l'agent utilisant SIR est transmis par le concepteur. L'aspect acquis de la personnalité peut être obtenu par les observations et les connaissances qu'il dégage de ses interactions avec l'environnement, ou par l'apprentissage des mécanismes de contrôle, soit au niveau des états internes ou des comportements, à partir de signaux de rétroaction d'apprentissage. Toutefois, l'apprentissage à partir de signaux de rétroactions ne sera pas un aspect considéré dans la thèse qui veille plutôt à étudier les mécanismes requis au niveau des comportements et des états internes dans SIR. 3.2. Description détaillée de SIR Une description plus complète de SIR demande une description plus détaillée du module d'états internes et de son mécanisme de sélection de comportements. Pour pouvoir combiner l'ensemble des caractéristiques associées à l'intelligence, plusieurs aspects doivent être considérés au niveau des états internes comme par exemple la délibération, la planification, les motivations, les besoins et les buts. De plus, le couplage de ces concepts avec les comportements doivent se faire de façon à préserver l'émergence de fonctionnalité au niveau comportemental et sous toutes ses dimensions. Le module d'états internes et le module de comportements furent donc décomposés en modules permettant de considérer l'ensemble de ces aspects. L'architecture détaillée de SIR est illustrée à la figure 3.2. Le module de comportements se trouvent bien à la base du mécanisme de contrôle, permettant à l'agent de réagir aux conditions environnementales perçues. Le concepteur transmet ainsi les manifestations externes de base requises à la machine. Un mécanisme de fusion d'actions, possibilité présentée à la section 3.1.1 pour donner un niveau 33 supplémentaire d'émergence, est aussi représentée. Mais la plus grande nouveauté dans cette figure porte sur les cinq modules qui servent d'états internes au système. Motifs Observation Activation & Exploitation Besoins Situation Externe Globale Sélection Finale Cognition Activation Paramètres Internes Comportements Sensations Figure 3.2 Fusion Actions Architecture de SIR Au niveau de ces états internes, trois sources furent identifiées pour déterminer le contexte global de sélection de comportements. Une première source est la situation externe globale, issue des sensations externes de l'environnement et caractérisant une situation plus générale que celle permettant aux comportements de réagir. Une seconde source est propre aux besoins intrinsèques du système pour sa survie, son bon fonctionnement et l'atteinte de ses objectifs. La troisième source est fondée sur les connaissances innées ou acquises des interactions entre le système et l'environnement. Ces trois sources formulent des recommandations pour appuyer ou s'opposer à l'utilisation de comportements. Le module de sélection finale pondère et unifie ces recommandations pour activer les comportements à utiliser. Le module de motifs sert à coordonner l'ensemble de ces modules en évaluant les recommandations 34 formulées, les intentions spécifiées ou le fonctionnement des comportements. facteur d'évaluation intéressant ici est l'exploitation de Un comportements, caractéristique associée à un comportement qui est activé (ou sélectionné) et qui réagit à l'environnement en fonction des sensations qui lui sont pertinentes. L'observation de ce facteur est utile pour déterminer si les intentions de l'agent sont bien rencontrées. Enfin, les actions des comportements activés et exploités par réactivité sont fusionnées selon leur niveau d'activation avant d'être acheminées aux actuateurs. Les motifs, les sources de recommandations avec le mécanisme de fusion, veilleront à gérer l'exclusivité dans l'exploitation de certains comportements conflictuels, tout en permettant l'action conjointe de comportements compatibles. Ceci permet d'obtenir une fonctionnalité émergente de nature holistique plus appropriée aux circonstances conjointes d'exploitation des comportements. Les cinq modules propres aux états internes de SIR sont décrits dans les prochaines sous-sections, e n commençant par le module de motifs et suivi des modules de recommandations et de sélection finale. 3.2.1. Module de motifs Le module de motifs se trouve au niveau supérieur de l'architecture SIR. Un motif est défini comme une raison d'ordre intellectuel qui pousse à faire une chose, à agir. Dans SIR, l'utilisation de motifs permet de coordonner les interactions entre les modules de SIR afin de produire et reproduire des séquence de comportements dans le temps sans emmagasiner des descriptions du comportement ou du monde, comme le souhaite Clancey [47]. De plus, les motifs servent à évaluer de façon introspective la réactivité des comportements face au monde externe ainsi que les états internes propres aux modules de recommandations et de sélection. principe Ceci vient répondre au d'auto-observation invoqué à la sous-section 3.1.1, principe comme une composante nécessaire à l'intelligence. 35 considéré Cette introspection se réalise par l'observation des interactions, des raisonnements et des conséquences des choix du système par rapport à sa propre identité. Selon les approches actuelles, deux types d'introspection semblent en fait être possibles. Le premier est propre à l'observation associée aux états internes et elle est qualifiée ici d'introspection interne. Observer ce que le système sait ou ne sait pas, examiner des variables internes particulières (accumulateur faible), ses intentions ou ses motivations sont toutes des possibilités pouvant le motiver à agir L'observation des influences entre les sources de [132]. recommandations, les comportements recommandés ou non recommandés et les connaissances du module de cognition sont les aspects considérés dans SIR pour ce genre d'introspection. raisonnement introspectif Du est aussi une notion utilisée dans des approches de raisonnement par cas [67]. Des méta-connaissances peuvent aussi servir à ce niveau [160]. Le second type d'introspection observe la dynamique externe des interactions avec l'environnement. Cette forme d'introspection externe peut servir à créer ses propres formes de raisonnement, comme le souhaite Brooks et Stein l'observation des couples sensations-actions émergent. rapport à l'environnement [132] peut aussi servir. [44] par La relation du corps par Il y a aussi Donnart et Meyer [57] arrivent à faire de l'introspection anticipative (anticipait des résultats différents que ceux obtenus) et de l'introspective prédictive (prédiction qu'une règle sera fautive). D'une autre façon, McFarland et Bösser [134] cherchent un peu à faire la même chose avec leur fonction d'utilité et de coût pour permettre au système de chercher maximiser son utilité, qui dépend des conséquences de comportement. à Mais une des nouveautés importantes de SIR est la capacité du système de s'observer réagir dans l'environnement par l'exploitation des comportements afin d'évaluer le bon fonctionnement de ses interactions avec ce dernier. L'observation de l'exploitation de comportement est une forme de sensation abstraite et fusionnée qui considère le rôle 36 du comportement face aux besoins du système et qui est dérivée des sensations pertinentes et utiles affectant sa réactivité. Ces deux types d'introspection peuvent influencer les motifs dans SIR. Les motifs peuvent aussi être activés de par l'observation d'un phénomène discret, ou par l'intégration temporelle de ses observations [132]. L'intégration temporelle est u n concept qui est aussi jugé important par Smithers [191, 192] pour mesurer la dynamique des interactions et contrôler les actions sans amener une plus grande complexité. Il est aussi possible que les motifs s'inter-influencent entre eux. À leur tour, les motifs influencent les autres modules afin d'en optimiser les interactions, comme par exemple la sélection de besoins en spécifiant des conditions particulières telles que la faim (besoin de recharge) et la détresse (besoin de sécurité), ou encore le désir d'acquérir ou non des connaissances sur l'environnement. Toujours selon les approches de contrôle actuelles, deux types de motifs ont été identifiés, soit la motivation et l'émotion. Une motivation se définit comme un facteur psychologique conscient ou inconscient qui incite l'individu à agir de telle ou telle façon. définir D'un point de vue psychologique, la motivation est une notion difficile à [56]. Les motivations cherchent à expliquer la variation dans le comportement, car les psychologues assument que les comportements ont des causes (sont déterminés) et sont prévisibles de différentes façons [25]. Dans [56], une motivation qui est associée à des forces ou pulsions persistantes favorisent l'émergence d'un comportement global et qui le dirigent afin qu'il répond aux besoins ou aux conditions qui ont généré ces forces ou pulsions. C'est un phénomène intériorisé se rapportant aux facteurs internes et externes, et qui incitent un individu à adopter une conduite particulière ou tendre vers certains buts. Selon Lagache, la motivation prise dans son sens général correspond à une modification de l'organisme qui le met en mouvement jusqu'à réduction de cette modification. [56] Une motivation 37 se définit alors comme une variable d'intervention définie par la relation entre les conditions qui sont les antécédents du comportement et le comportement en soi [25]. Les caractéristiques de la motivation sont l'effort (force psychologique interne ou physique fournie (persévérance par et constance préférences [25, 56]. viennent l'individu à la poursuite dans la poursuite d'objectifs) la et l'orientation spécifier les raisons expliquant pourquoi un organisme, et Bösser persistance des En d'autres termes, ça revient à dire que les motivations particulier, se comporte d'une certain façon [62]. McFarland d'objectifs), [134] croient à un temps Au niveau des travaux en IA, que les motivations sont responsables des changements de comportements et dépendent des états physiologiques et perceptuels du système. De plus, Anderson et Donath [13] soutiennent que la motivation est une classe de processus internes responsables des changements de comportements. Maes [120, 122], Parker [148, 149] et Schnepf [177] utilisent aussi des motivations dans leur approche de contrôle. Avec SIR, une motivation peut affecter la préférence, persistance ou vigueur du comportement [25] de par son influence sur les autres modules. Le second type de motifs possible est l'émotion. Dans [69], Frijda indique que les principes habituellement véhiculés au niveau des émotions sont qu'elles permettent à un organisme d'assurer la réalisation de ses buts en examinant la réussite et les fautes. On donne alors aux émotions une interprétation fonctionnelle. Ces principes indiquent aussi que les émotions sont au service des motivations ou des buts de l'organisme. De plus, les émotions peuvent servir à renseigner sur l'état des besoins [77]. Par exemple, la peur peut être une émotion utile au niveau des besoins de sécurité de l'agent; la colère et la joie peuvent servir au niveau de la réalisation de ses objectifs. De plus en plus de chercheurs en contrôle intelligent l'importance des émotions dans la prise de décisions intelligentes. indique qu'on ne peut séparer l'émotion de la tâche intellectuelle. 38 soulèvent Heidegger [83] Sloman [189, 24] soutient quand à lui que le besoin d'évoluer dans un monde changeant et partiellement imprévisible, avec de l'information incomplète, inexacte et à partir de ressources mentales et physiques limitées, risquent fortement de demander à u n système intelligent d'avoir des émotions. Albus [7, 9] indique qu'on ne peut séparer l'émotion de la tâche intellectuelle et que les émotions sont souvent dissociées de l'intelligence à cause mathématiquement. de Il leur les irrationalité considère et comme l'incapacité des de composantes les analyser critiques de l'intelligence nécessaires pour l'évaluation de la situation, la sélection de buts, la mémoire, diriger le comportement et contrôler l'apprentissage, sans quoi toute créature biologique serait détruite par les autres ou détruite par ses propres actions. Albus les dérive par le module de jugement de valeurs sous forme symbolique. Pfeifer [154, 153, 155] propose pour sa part une mise en oeuvre d'un modèle d'émotions à partir d'un système à base de connaissance raisonnant de façon symbolique, et basé sur les interruptions. Il y a aussi Ortony et al. [146] qui présentent un modèle d'émotion pour l'IA afin de les prédire et les expliquer, mais non pour les exploiter au niveau de la machine (ce à quoi ils ne croient pas). Influencé par Ortony, Bates [22, 21, 117] considère les émotions importantes pour la prise de décision et pour atteindre l'illusion de la vie, car elles permettent d'indiquer que le système se soucie de ce qui arrive dans le monde et qu'il possède des désirs. Il les met en oeuvre dans des comportements pour obtenir une réactivité émotionnelle aux événements. Yabuta et al. [216] confirment que l'introspection est à la base de l'émotion et de l'intuition, justifiant à nouveau le rôle de l'introspection dans le module de motifs. Enfin, McCarthy [132] en parle lui-aussi. Toutefois, la croyance populaire est que les machines ne peuvent avoir des émotions et qu'il serait dangereux et voir moralement incorrect de tenter d'en leur transmettre [9]. Pour éviter d'entrer dans des controverses entourant la notion d'émotion et de par la difficulté de définir avec précision la motivation ou de bien 39 distinguer son rôle par rapport aux émotions, le terme motif semble plus approprié pour désigner le rôle du module dans l'architecture SIR. 3.2.2. Module de situation externe globale L'environnement externe dans lequel se trouve l'agent peut certes affecter le choix de ses comportements. La source de recommandations qui considère directement cet aspect est le module de situation externe globale. Ce module examine les conditions particulières de l'environnement telles qu'obtenues des sensations pour affecter le choix des comportements de l'agent. météorologiques, une topologie particulière de Par exemple, des conditions l'environnement ou d'autres conditions externes peuvent influencer directement les intentions de l'agent à partir de ce module. Le qualificatif "situation externe globale" est utilisé pour les distinguer du rôle des sensations environnementales auxquelles les comportements activés réagissent. 3.2.3. Module de besoins La seconde source de recommandations est le module de besoins qui vient ajuster le comportement de l'agent en fonction de ses objectifs propres et de son rôle à jouer dans l'environnement. En psychologie [56], les besoins sont définis comme des déficiences psychologiques, physiologiques ou sociales ressenties ponctuellement, agissent isolément ou en combinaison, et qui incitent l'individu à adopter une attitude ou un comportement particulier qui motive. L'atteinte de l'objectif associé à cette motivation devrait réduire considérablement l'inconfort résultant de la déficience ressentie. De la même façon, l'utilisation de motifs avec SIR est une manière pour l'agent d'évaluer l'impact de ses réactions et de son environnement sur sa propre identité afin de réajuster de façon autonome ses comportements pour satisfaire ses 40 besoins fondamentaux. Il doit donc exister un couplage important entre les besoins et les motifs de l'agent. En psychologie, Maslow [127] indiqua cinq catégories de besoins. Ces besoins sont, selon leur importance, de type: physiologique (faim), de sécurité (protection immédiate et future), d'appartenance sociale (groupe), d'estime de soi (confiance, indépendance, épanouissement, compétence, savoir), et d'actualisation (réaliser ses aspirations, se perfectionner, créer). Porter ajouta l'autonomie à cette liste de besoins [56]. Toujours selon Maslow, la personne cherche à satisfaire ses besoins actifs sans tenir compte des besoins inférieurs déjà satisfaits ou des besoins supérieurs qui n'ont pas encore fait leur apparition. Deux principes y sont alors utilisés: le manque (un besoin ne se fait sentir que lorsqu'il n'est pas satisfait, et un besoin satisfait perd son caractère motivant) et la progression dans le temps qui détermine l'apparition des besoins [56]. Ces formes de besoins peuvent être utiles au niveau de la machine. Par exemple, un robot mobile peut avoir des besoins d'ordre physiologique (assurer la charge de ses accumulateurs), de sécurité (protection immédiate et future), et d'accomplissement (réaliser les tâches associées à son rôle). En plus des motifs, les besoins peuvent être influencés par des sensations particulières qui sont associées à leur satisfaction. Avec SIR, les besoins servent à spécifier des buts explicites à atteindre, soit par causalité, par motivation ou par chaîne de buts. Ce module doit gérer les recommandations comportementales venant de ces sources, leurs priorités et les conflits potentiels. Le module de besoins cherche donc à donner une plus grande autonomie à l'agent en lui permettant de gérer lui-même le choix des comportements assurant la satisfaction de ses besoins. 3.2.4. Module de cognition 41 La troisième source de recommandations est le module de cognition. Le module de cognition regroupe en fait ce qui peut être qualifiée d'intelligence cognitive ou propre aux fonctions plus évoluées des organismes. La recommandation de comportements basée sur des connaissances préalables ou construites à partir de la mémorisation des interactions de l'agent avec l'environnement externe et avec ses modules de recommandations constitue le rôle principal de ce module. Trois étapes sont jugées importantes au niveau du module de cognition. Tout d'abord, le système doit être en mesure de se former des connaissances sur son environnement et de ses interactions avec lui. Pour la préservation de l'émergence au niveau du module de cognition, il est important que le système se forme de façon autonome une compréhension de l'environnement et de l'impact de ses intentions et actions sur ce dernier, à partir de ses propres manières de représenter et d'identifier les choses. L'importance que le système se forme sa propre compréhension de ce qui se passe dans le monde est maintenue par plusieurs. Une intelligence plus mature tire ses connaissances directement de son environnement et construit de nouveaux concepts à partir de ses propres connaissances [89]. Dans la même optique, Clancey [47] indique qu'un mécanisme qui reconstruit et recoordonne les processus au lieu d'emmagasiner et retirer des descriptions est plus consistent avec ce qui est connu de la mémoire et la perception humaine. Les descriptions sont toujours en fonction du cadre de référence de l'observateur interagissant avec son environnement, incluant son point de vue qui sont eux aussi le produit d'interactions. Les représentations doivent être interprétées interactivement, en des cycles de perception et d'action [47]. La connaissance est donc relative au point de vue du connaisseur [126], et on ne peut dissocier les connaissances des compétences de l'agent gérant ses interactions et servant à identifier l'environnement. Connaître, c'est faire et faire, c'est connaître [219]. On évite ainsi la problématique en IA traditionnelle de lier les symboles à la réalité perçue. Avec SIR, ces connaissances peuvent être tirées des sources de 42 recommandations, de la sélection de comportements ou des motifs induits. peuvent aussi venir de paramètres internes à des comportements ou Elles de la fonctionnalité émergente observée (par l'identification de lieux [128] par exemple). L'apprentissage par mémorisation peut aider à la formation de ces connaissances. La seconde étape consiste à organiser les connaissances disponibles de l'agent et de raisonner à partir de celles-ci. Le module de cognition doit en fait être en mesure de raisonner, généraliser, expliquer, anticiper, planifier ou comprendre à une échelle de temps plus grande que celle des réactions comportementales, organisant le passé pour mieux comprendre le futur. Le raisonnement en représentations internes peut donner lieu à des plans [194]. fonction de ces Mais pour respecter l'émergence, les plans doivent être perçus comme des aides à la décision et ne doivent pas être suivis aveuglément [3, 151, 152]. Agre et Chapman [3] donnent des indications intéressantes sur les plans pour aider la prise de décision. Au lieu de construire des plans composés de primitives qui provoquent toujours la même action peu importe le contexte, ils considèrent les plans comme des constructions sociales qui peuvent créer des improvisations créatives, guidée par l'activité et non par la solution de problème (comme il est réalisée par la modélisation complète et centralisée de l'environnement). Les agents sont des participants dans le monde, et ne contrôle pas entièrement ce monde, et c'est dans ce sens qu'il faut planifier. Ils croient que lors de l'utilisation d'un plan, les environs servent de ressources pour interpréter ce plan. Le plan dépend aussi de l'expérience et des compétences de l'agent. En utilisant des comportements à la base de son architecture de contrôle, SIR permet d'établir une telle dépendance. Un autre aspect pouvant influencer les plans est la communication entre les systèmes. Cette communication peut servir à transmettre des buts ou des intentions [129, 171], ou pour des expériences avec des groupes de robots [130, 149]. Cette communication est possible si les 43 systèmes en question possède une représentation interne commune des connaissances qui peut être innée ou acquise [44, 78]. La troisième étape au niveau du module de cognition est son influence sur les comportements du système. Avec SIR, le contrôle des actuateurs est réalisé exclusivement par les comportements. Toutefois, ceci ne signifie pas que la cognition ne peut affecter indirectement les actions du système. Cette influence se manifeste par la formulation ou par de recommandations cognitives la modification de paramètres internes à des comportements. Cette dernière influence permet d'utiliser des comportements plus généraux dont la réactivité peut être ajustée en fonction des objectifs dérivés par les connaissances, et rejoint le quatrième niveau d'émergence spécifié à la section 3.1. À ce niveau, il ne faut pas perdre de vue le danger de trop vouloir raisonner de façon cognitive. Il faut plutôt tenter de réaliser un compromis entre ce qui doit faire partie de l'aspect réactif du système et ce qui demande u n raisonnement évolué afin de ne pas tendre vers une problématique similaire à celle de l'IA traditionnelle. Ceci fait partie du compromis entre la puissance et la généralité [102]. 3.2.5. Module de sélection finale Ce dernier module sert à combiner les recommandations recommandations pour déterminer les comportements à utiliser. des sources de Cette combinaison peut s'effectuer simplement par l'emploi d'un mécanisme de décision entre les sources de recommandations. Mais pour pouvoir dériver les intentions d'une manière plus complexe, le module de sélection finale peut utiliser des règles de conduite ou des valeurs affectant l'importance relative des différentes sources de recommandations. Par exemple, dans certaines situations, il peut être bénéfique de favoriser d'une façon générale les recommandations cognitives face aux besoins. De la même façon au niveau humain, ce ne sont pas tous les individus qui réagissent de la même façon: 44 certains sont plus émotifs, plus rationnels, plus intuitifs ou plus égoïstes que d'autres. Ceci justifie l'influence des motifs et la possibilité d'utiliser des concepts comme les valeurs au niveau du module de sélection finale. 45 4. ENVIRONNEMENT D'EXPÉRIMENTATION BUGWORLD UTILISÉ POUR LA CONCEPTION ET LA VALIDATION DE SIR Pour pouvoir valider le fonctionnement l'architecture pour le contrôle de système de SIR, tentant il est nécessaire de satisfaire des d'utiliser objectifs dynamiques et variés dans des environnements complexes, inconnus, et partiellement perceptibles. L'utilisation de robot mobile se prête bien à ce genre de problématique. Une seconde contrainte pour la validation de SIR est d'avoir accès à ses différentes variables internes afin de vérifier le bon fonctionnement des mécanismes, de les ajuster au besoin et d'avoir une trace accessible de ses décisions pour pouvoir expliquer et bien analyser le comportement résultant. Au moment d'aborder la réalisation de SIR, il était impossible d'évaluer les capacités de traitement requises pour sa mise en oeuvre dans un robot mobile, les mécanismes des modules de SIR n'ayant pas été conçus. De plus, une telle plate-forme de développement n'était point disponible pour les expérimentations. En soi, la construction d'un robot mobile divergeait des objectifs de la thèse qui est orientée davantage sur proposition, la validation et l'analyse d'une nouvelle architecture de contrôle. Pour mieux se soucier des contraintes de fonctionnement internes de cette architecture, il fut décidé d'utiliser un environnement de simulation de robot mobile qui respecte, sous une certaine pratique. mesure, les contraintes d'une mise en oeuvre La simulation sert en fait d'étape intermédiaire importante avant de passer à la réalisation pratique [174]. L'environnement de simulation est de deux dimensions et considère des capacités sensorielles et d'actions similaires à ce qui seraient possibles d'accomplir avec un robot mobile. Il existe plusieurs approches qui furent validées de cette façon [60, 64]. Mais pour ne pas attiser le débat entre l'utilité des simulations [174] par rapport à une mise en oeuvre réelle [199] pour la validation d'architecture de contrôle intelligent, il est bon d'indiquer que les résultats présentés 46 dans cette thèse ne constituent qu'un pas vers la réalité et ne viennent pas confirmer la validité des mécanismes proposés dans le monde réel où on doit faire face à des capteurs bruitées, des contraintes en temps de calcul, de capacité de mémoire, des actions imparfaites, etc. Certaines conditions furent quand même considérées pour reproduire des limitations d'une mise en oeuvre pratique, comme restreindre la complexité des mécanismes internes (et la longueur du code), éviter toute dépendance des mécanismes à une perception et des actions parfaites, et considérer des capacités perceptuelles et motrices réalistes (comme une dépendance entre la vitesse et la capacité de rotation de l'agent, et ne pas avoir une lecture d'orientation absolue par rapport à l'environnement). Ces restrictions ne sont pas reproduites sous forme de modélisation de capteurs physiques ou par l'ajout de bruit. Elles sont plutôt considérées lors de la conception des mécanismes de SIR, le choix de ses actions, et par les conditions de l'environnement. Malgré cela, une réalisation en pratique demandera sûrement la modification des comportements ou des mécanismes internes aux modules de SIR. Toutefois, la même remarque s'applique si un environnement virtuel [206] était utilisé. Il reste qu'il est possible de démontrer le principe d'utilisation de SIR avec l'environnement simulé de robot mobile, et c'est dans cette optique que SIR est validée. Sa mise en oeuvre pratique restera donc un point de validation future. Le logiciel de simulation de robot mobile utilisé se nomme BugWorld et fut conçu par Nikolaus Almàssy en Suisse [11]. BugWorld permet de simuler la trajectoire d'un agent capable de percevoir son environnement à partir de capteurs analogiques de proximité et de détecteurs de cibles. l'environnement de simulation, suivie La section 4.1 donne une description de de la description des expérimentations réalisées à la section 4.2. Ensuite, la section 4.3 décrit l'architecture logicielle utilisée pour la mise en oeuvre de SIR et sa validation avec BugWorld. 47 4.1. Description de l'environnement de simulation de robot mobile BugWorld BugWorld [11] est un logiciel travaillant sur Unix et permettant la simulation de plusieurs agents autonomes, soit des robots simulés équipés de senseurs de distances. Chaque "insecte" possède son propre ensemble de senseurs localisés sur les contours de son corps. Le simulateur est composé de plusieurs communiquent via Internet. processus séparés qui De cette façon, plusieurs agents peuvent être simulés simultanément sur différentes stations de travail. Le processus qui maintient toutes les informations concernant le "monde" simulé peut aussi travailler sur une station séparée, et ainsi il n'est pas ralenti par les agents qui peuvent demander de plus e n plus de temps de traitement en fonction de la complexité de leur architecture de contrôle. La figure 4.1 illustre la configuration de l'environnement venant avec BugWorld. Un agent dans BugWorld est de forme circulaire avec un petit cercle localisant son "nez". La trajectoire qu'il suit peut être affichée en laissant une trace de sa position à chaque cycle d'exécution. Toutes les lignes, boîtes et les polygones sont perçus comme étant des obstacles, tandis que les cercles représentent des cibles. Les cibles ne sont pas cachées par les obstacles. La configuration des obstacles peut être modifiée au besoin avec le logiciel xfig , un utilitaire de dessin sur Unix . L'environnement de base de BugWorld fut utilisé lors de la conception de SIR afin de ne pas que soit biaisée l'organisation des obstacles par le concepteur des mécanismes de SIR (soit l'auteur de cette thèse). Seule la cible du coin inférieur gauche fut ajoutée à cet environnement (pour servir de point de charge lors des expérimentations). D'autres tests avec des configurations différentes d'obstacles ont toutefois été réalisés et sont présentés dans la thèse. 48 Cible Obstacle Nez AGENT Figure 4.1 Avec Environnement de base avec BugWorld BugWorld, le nombre paramétrisables. et la position des capteurs de proximité sont Le déplacement de l'agent s'effectue en évaluant une nouvelle position en terme de coordonnées (x, y, q) et en transmettant cette position pour affichage sur l'environnement. Ceci ne signifie pas que l'algorithme de contrôle utilise ces coordonnées pour effectuer le contrôle. Il n'y a cependant pas de mécanisme de collisions de pré-défini et c'est au concepteur de gérer ces situations e n fonction des sensations venant des capteurs utilisés. Enfin, il est possible de modifier la couleur de l'agent en cours de fonctionnement, et de déplacer dynamiquement des obstacles dans l'environnement. 4.2. Description des des expérimentations réalisées et de la mise en o e u v r e mécanismes La problématique considérée lors des expérimentations est la suivante: un agent placé dans une pièce doit atteindre des cibles tout en assurant un bon niveau de 49 charge de son environnement. accumulateur d'énergie et une recherche efficace Un seul point de charge est présent dans la pièce. de son L'agent n e possède aucune information a priori de son environnement, et ne possède qu'une quantité limitée de mémoire pour en tirer des connaissances. Comme capacités sensorielles, l'agent a à sa disposition huit capteurs analogiques de proximité localisés respectivement à 45° d'intervalle en partant de son nez, deux capteurs analogiques de détection de cible et deux capteurs analogiques de détection de point de charge situés à chacun de ses côtés. Les capteurs de détection de point de charge sont en fait des capteurs de détection de cible pour une cible particulière qui est alors considérée dans l'environnement comme un point d'énergie pour l'agent. Les capteurs de proximité ont une limite de perception fixée à 500 points, tandis que ceux pour les cibles et les points de charge ont une portée de 200 points. Comme référence pour évaluer ces portées, l'agent a un rayon de 20 points. Pour gérer les conflits, la cible la plus proche est détectée par les capteurs lorsque plusieurs cibles se trouvent dans leur rayon de portée. La figure 4.2 illustre la position et le nom de ces capteurs. NEZ Capteur avant Capteur avant gauche Capteur avant droit Capteur gauche Détecteur gauche de cible Détecteur gauche de point de charge Capteur droit Détecteur droit de cible Détecteur droit point de charge Capteur arrière gauche Capteur arrière droit Capteur arrière Figure 4.2 Capacités sensorielles d'un agent pour les expérimentations Les autres informations disponibles sont la vitesse, la rotation réalisée et le niveau de charge de son accumulateur d'énergie. 50 Il est à noter que la rotation n'est utilisée que pour indiquer si l'agent est immobile ou non, et elle ne sert pas à la construction d'une représentation interne de l'environnement par l'agent. Mais les expérimentations tentent de valider comment, en fonction d'une capacité sensorielle limitée et fixe, l'agent peut se comporter de façon "intelligente" dans son environnement. Comme actions possibles, la vitesse et la rotation de l'agent sont les deux variables de commandes qui affectent sa trajectoire. Sa couleur est aussi modifiée pour communiquer certains états de l'agent en cours de fonctionnement. Le bleu est utilisé lors de son fonctionnement normal, le rouge pour indiquer que l'agent tente de communiquer quelque chose, et le noir représente l'absence d'énergie ou sa mort. 4.2.1. Fonctions spéciales considérées lors des expérimentations Quatre fonctions spéciales nécessaires pour les expérimentations réalisées avec BugWorld affectent le comportement de l'agent. Ces fonctions sont: - Mécanisme de gestion des collisions. Une restriction de BugWorld est que la collision de l'agent avec un obstacle dans l'environnement doit être géré à même les capteurs de sensations utilisés pour le contrôle. Un mécanisme d'analyse des sensations par rapport au déplacement désiré de l'agent (selon les commandes fournies par SIR et la position de l'agent) vérifie si une collision survient e n évaluant si le déplacement respectif dans la direction de chacun des capteurs est supérieur à la lecture de proximité obtenue. Si c'est la cas, l'agent est placé le plus prêt possible de l'obstacle, suivant l'orientation du déplacement spécifié et la perception de l'obstacle. Pour une bonne gestion des collisions, les obstacles de très petites dimensions par rapport à la dimension de l'agent ne doivent pas être présents dans l'environnement; - Mécanisme d'inhibition de cibles. Pour produire des changements dans l'environnement, les cibles sont inhibées pendant 200 cycles une fois qu'elles 51 sont atteintes par l'agent. L'atteinte d'une cible est acceptée lorsque la somme des lectures données par les détecteurs de cible est inférieure au rayon de l'agent; - Mécanisme de simulation d'un accumulateur d'énergie et d'un point de charge. L'énergie de l'agent décroît linéairement à chaque cycle et doit être positive pour lui permettre de se déplacer. À moins l'autonomie de l'agent est de 250 cycles. d'une indication contraire, L'énergie augmente de 2% par cycle lorsque l'agent se trouve au point de charge qui correspond à une cible choisie pour jouer le rôle du point de charge. Le point de charge est atteint lorsque la somme des lectures données par les détecteurs de point de charge est inférieure au rayon de l'agent; - Mécanisme de déplacement d'un obstacle. Pour certaines expérimentations, u n objet mobile est utilisé. Cet objet mobile se déplace selon une trajectoire préétablie à un rythme donné. Le rythme spécifié pour les expérimentations concernées est de déplacer l'obstacle de cinq points à tous les cinq cycles d'exécution. 4.3. Validation de SIR avec B u g W o r l d SIR tente d'exploiter au maximum les dépendances entre l'environnement, les capacités perceptuelles et motrices de l'agent, ses capacités de traitement et ses capacités de décision pour en faire émerger un comportement intelligent. Les points à valider sont: - l'utilisation de comportements pour le contrôle de l'agent et la fusion dynamique d'actions au niveau comportemental; - la sélection dynamique de comportements par la situation externe globale; - la sélection dynamique de comportements par les besoins; 52 - la sélection dynamique de comportements par la cognition; - l'utilisation de motifs pour affecter la sélection de comportements. Pour pouvoir valider efficacement ces points, il est important de commencer par la mise en oeuvre du module comportemental car c'est sur lui que repose la dynamique d'interactions entre l'agent et son environnement. En général, la mise en oeuvre incrémentale des modules de SIR permet de mieux cerner les influences de chacun sur les comportements globaux qui en émergent. De plus, ceci permet de progresser vers des dimensions plus évoluées de l'intelligence. La problématique choisie pour valider SIR permet de considérer la majorité des concepts possibles avec cette architecture de contrôle telle que représentée à la figure 3.2. Avant de présenter les mécanismes utilisés pour sa mise en oeuvre, il est important de noter que trois influences associées aux motifs n'ont pas été validées car elles se sont avérées inutiles pour les expérimentations. Ces influences sont le lien entre le module de motifs et le module de situation externe globale, l'influence du module de besoins sur les motifs et le lien entre les motifs et le module de sélection finale. Il fut préférée d'utiliser des mécanismes plus simples pour la mise en oeuvre des modules que de complexifier inutilement le processus de décision. La section 10.4.2 illustre en quoi il serait possible d'exploiter de telles influences avec d'autres mécanismes de mise en oeuvre des modules. 4.3.1. Principes utilisés pour la mise en oeuvre de SIR avec BugWorld Pour guider la conception des modules de SIR dans le cadre des expérimentations considérées, un scénario fut élaboré venant spécifier globalement le comportement souhaité de l'agent pour la réalisation de ses objectifs. Le scénario initialement à permettre à l'agent d'explorer son environnement consiste en suivant les contours, tout en permettant la recherche de cibles et la charge de l'accumulateur. 53 L'agent peut explorer d'autres endroits de son environnement au fur et à mesure qu'il arrive à identifier les endroits déjà visités. Il peut aussi se servir des connaissances acquises pour se diriger vers un point de charge au besoin. À un certain point, l'agent peut juger que ses connaissances sont suffisantes pour pouvoir les exploiter dans son objectif principal d'atteindre les cibles qu'il a pu détecter. Après avoir exploité ces connaissances, avec ou sans succès, l'agent peut reprendre l'exploration et raffiner davantage ses connaissances. Les outils de l'IA peuvent être exploités à différents niveaux dans SIR. Pour sa validation avec BugWorld, la ligne directrice dans le choix de ces outils fut de tenter d'exploiter ceux qui arrivaient à respecter les principes de base de SIR et les besoins associés à la problématique. Pour la mise en oeuvre des modules de SIR, trois techniques sont utilisées. Tout d'abord, la logique floue s'est avérée un outil efficace pour mettre en oeuvre les comportements, la fusion de leurs recommandations de comportements ainsi que leur sélection finale. actions, les Ses niveaux symboliques et numériques ainsi que l'activation parallèle des règles sont des atouts importants pour faire le pont entre la vision traditionnelle (ou délibérée) et la vision nouvelle (ou réactive) de l'IA. recommandations, il Pour mieux comprendre le fonctionnement est bon de mentionner maintenant que les modules des de recommandations indiquent la désirabilité et l'indésirabilité des comportement sous forme floue. La justification de ce mécanisme est présentée à la section 8.3. Ensuite, au niveau cognitif, un graphe topologique est utilisé pour la construction d'une représentation interne du monde. L'hypothèse de départ est que l'agent n'a aucune information sur son orientation dans l'environnement ou la disposition et le nombre d'obstacles, de cibles et de points de charge dans l'environnement. Il doit donc se construire lui-même et à partir de ses sens une représentation de l'environnement où il évolue en exploitant correctement l'espace-mémoire qui lui est disponible. Enfin, un mécanisme d'activation et d'influences est utilisé pour les motifs. Les chapitres 5 à 54 8 décrivent la mise en oeuvre de chacun des modules de SIR pour les expérimentations avec BugWorld. 4.3.2. Diagramme d'architecture logicielle pour les expérimentations Au cours des expérimentations, étant donné que la logique floue est utilisée pour une grande partie de la mise en oeuvre de SIR, il était envisageable de devoir ajuster les compétences de l'agent ainsi que les sources de recommandations pour qu'il réagisse adéquatement à l'environnement dans le but de réaliser ses objectifs. plus, il était nécessaire d'accéder à différentes informations. De Pour faire face à ces exigences et assurer une bonne flexibilité du logiciel, des fichiers d'entrées et de sorties sont utilisés. Les fichiers d'entrées permettent de spécifier les fonctions d'appartenance, les règles comportementales et les règles utilisées par les mécanismes flous de SIR. Le fichier de recommandations d'expressions régulières topologiques est utilisé au niveau du module de cognition (voir section 7.3.2). Comme sortie, il est possible de consulter une trace des états décisionnels, de l'exploitation et l'activation de comportements à chaque cycle d'exécution, de la désirabilité et l'indésirabilité des comportements, des lieux topologiques perçus, des informations propres au graphe topologique construit ainsi que des niveaux d'activation des motifs. La figure 4.3 illustre l'ensemble de ces fichiers et de leur influence sur le logiciel de simulation. D'autres informations sont acheminées directement à la console en cours de simulation, pour un meilleur suivi du déroulement. 55 Fonctions d'appartenance Comportements Recommandations Expressions topologiques CONFIGURATION Environnement de BugWorld SIR Sensations Actions ÉTATS INTERNES Trace Figure 4.3 Exloitation et Activation de comportement Désirabilité et Indésirabilité de comportement Lieux topo. perçues Graphe Topologique (Noeuds et Liens) Motifs Diagramme d'architecture logicielle Une simulation démarre en spécifiant sur une ligne de commandes la position (x, y, q) de l'agent, ainsi que la durée de la simulation en nombre de cycles d'exécution. U n cycle d'exécution est composé des opérations séquentielles suivantes: - Sensations venant des capteurs; - Module de motifs; - Fuzzification; - Module de situation externe globale; - Module de cognition; - Module de besoins; - Module de sélection finale; - Exécution des comportements activés; - Fusion d'actions par défuzzification; - Fonctions spéciales de la section 4.2.1; 56 - Mise à jour de la position de l'agent dans l'environnement. 57 5. CARACTÉRISTIQUES DU MODULE DE COMPORTEMENTS FLOUS CONÇU Le rôle des comportements (ou des compétences) est de dériver les actions de contrôle de l'agent de façon à ce qu'il réagisse efficacement aux situations environnementales selon son choix intentionnel de comportements. Toute technique réalisant une correspondance entre un domaine d'entrée et un domaine de sortie peut être considérée pour la mise en oeuvre de comportement. L'approche floue fut retenue ici pour la mise en oeuvre du module de comportements est qu'elle permet d'utiliser des règles et des concepts linguistiques pour la conception de comportements, tout en permettant une fusion efficace au niveau des actions. De plus, un mécanisme d'inférence floue permet d'inclure au besoin des comportements binaires seulement en modifiant la forme des fonctions d'appartenance. lien entre l'aspect qualitatif du contrôle et la caractérisation De plus, le quantitative des variables permet d'établir plus facilement l'interface entre le module de cognition et les comportements via les paramètres internes. Enfin, il existe des méthodes pour réaliser l'apprentissage (par renforcement [31, 32, 116] ou rétropropagation [94]) et la modification dynamique de processus flous [33]. La logique floue est utilisée comme constituante de base de comportements par Saffiotti et al. [170, 171] pour leur robot Flakey, Li [115], Salich et Puente [174], et Pin et al. [159]. Pour les expérimentations, comportements flous sont deux types de comportements employés pour le contrôle des sont utilisés: actuateurs; et des un comportement utilisant des entrées flous mais exploitant un mécanisme d'inférence binaire sert à l'identification de formes acheminées au module de cognition. mécanisme d'inférence accompagné pour les comportements est présenté des comportements flous utilisés pour les Le dans ce chapitre, expérimentations avec BugWorld. Le comportement d'identification est présenté au chapitre 7 pour faciliter la compréhension du module de cognition. 58 5.1. Utilisation de comportements flous La logique floue constitue un moyen efficace pour représenter la nature inexacte et approximée du monde [112]. Elle s'avère utile lorsque les processus sont trop complexes pour être analysés par des techniques quantitatives conventionnelles, ou lorsque les sources d'informations disponibles sont interprétées qualitativement, avec incertitude ou imprécision [112]. La formulation des connaissances sous forme de règles et l'utilisation de variables linguistiques floues pour représenter les situations permettent de construire un modèle flou représentatif l'humain. et compréhensible pour Le recouvrement de ces variables linguistiques permet de représenter l'ambiguïté dans les décisions, concept très présent dans le raisonnement humain, et donne une capacité d'interpolation [37, 217]et de généralisation pour fournir une réponse continue et graduelle en fonction des règles de contrôle. La logique floue peut être perçue comme une extension de la théorie classique des ensembles. Elle permet de raisonner selon des niveaux de vérité au lieu d'utiliser u n raisonnement avec vérité absolue. On y quantifie des valeurs numériques selon différents ensembles flous pour ensuite exploiter cette représentation linguistique dans des règles et en inférer des décisions. Les étapes suivies par un système flou [112] sont illustrées à la figure 5.1. Les sensations perçues par l'agent sont données en entrée aux différents comportements. La première étape consiste à fuzzifier ces entrées, soit à transformer une entrée en des variables linguistiques similaires à des sous-ensembles flous. Une variable linguistique est définie connaissances par une étiquette et une fonction d'appartenance. dans la base de La fuzzification permet alors d'établir le degré d'appartenance des entrées pour différentes variables linguistiques qui peuvent les caractériser. Ensuite, ces variables linguistiques sont utilisées par les règles pour inférer des décisions. Les règles linguistiques décrivent 59 la politique de contrôle en faisant correspondre conséquence. une liste d'antécédents à une Ces règles sont évaluées en parallèle et doivent toutes avoir été évaluées avant que le système puisse fournir une décision. Le mécanisme d'inférence est utilisé pour réaliser la conjonction des antécédents (opérateur ƒ) liés par des connexions "et" dans une règle, ainsi que pour unifier (opérateur ⊕) les résultats de règles associées à une même conséquence floue. Finalement, la défuzzification consiste à faire correspondre les degrés flous associés aux conséquences en une valeur non floue comme sortie du système. Petite Moyenne Large Mauvais Moyen Bon SI Erreur est Petite ALORS État est Bon Erreur État Base de connaissances ƒ Fuzzification Entrées Figure 5.1 flou Moteur d'inférence ⊕ Défuzzification flou Sorties Processus flou de base Les étapes de traitement suivies par le module de comportements correspondent à celles propres à un système flou, soit la fuzzification des entrées, l'inférence des règles floues suivie de la défuzzification. Une différence est toutefois présente entre l'étape d'inférence et celle de défuzzification. Cette étape consiste à affecter l'inférence des règles d'un comportement par son degré d'activation tel que spécifié par le module de sélection finale. Un opérateur flou de conjonction floue est utilisé pour la mise en oeuvre de cette influence illustré à la figure 5.2. 60 Activation du comportement INFÉRENCE flou Figure 5.2 ƒ Règles du comportement flou Inférence réalisée par le module de comportements flous D'une façon plus détaillée, les étapes du traitement réalisé par le module de comportements flous sont: 1) Fuzzification selon la relation (5.1), qui consiste à quantifier les sensations e n degrés d'appartenance propres aux variables linguistiques (dénotées par A i ) les caractérisant pour réaliser le traitement flou. (5.1) Sensations Æ m Ai ( Sensation ) Les formes permises pour les fonctions d'appartenance définissant les variables linguistiques sont présentées à la figure paramètres comme le sont les fonctions 5.3. Elles sont définies d'appartenance par quatre standards du logiciel FuzzyTech [90]. 1,2 3 4 Type Z Figure 5.3 2 3 2,3 1 4 Type P 1 4 Type l 2 3,4 1 Type S Formes admissibles pour les fonctions d'appartenance 2) Inférence des règles r du comportement j, relation (5.2). L'opérateur ƒ fait référence à une conjonction floue des n antécédents propres à la règle r . L'opération 61 résulte en l'obtention de degrés d'appartenance pour les variables linguistiques associées aux actuateurs (dénotées par B ou C). Le résultat est aussi qualifié d'activation de la règle r du comportement j. Le minimum est utilisé comme opérateur de conjonction floue. Cette opération est répétée pour toutes les règles des comportements, et pour tous les comportements utilisés. [ ] (5.2) m Brj ( Action ) = ƒ m An ( Sensation ) 3) Affectation par le degré d'activation du comportement, relation (5.3). Lors de cette opération, le degré d'activation du comportement vient affecter l'activation de ses règles en utilisant le minimum pour réaliser la de conjonction floue. [ ] m Crj ( Action ) = ƒ m Brj ( Action ), m act( j ) 4) Union des conséquences selon la relation (5.4). (5.3) Cette étape utilise une opération de disjonction floue ⊕ par maximum pour unifier les degrés d'activation d'une même variable linguistique de conséquence. [ ] (5.4) m Co ( Action ) = ⊕ m C jr ( Action ) 5) Défuzzification de type centroïde selon la relation (5.5). Elle est utilisée pour fusionner les actions floues recommandées par les comportements afin d'en obtenir les commandes à exécuter. Le paramètre x représente les variables linguistiques La variable w représente le point propres à une variable de contrôle ou d'action. central de la variable linguistique Co [210]. Elle se calcule ici en faisant la moyenne des approximation ayant un degré mCo(x) tel que définit par la fonction d'appartenance de Co. Ainsi, pour des fonctions d'appartenance symétriques de type P ou l, w correspond à sa valeur centrale. Le recouvrement des fonctions d'appartenance pour les variables linguistiques de conséquence n'influence pas alors les commandes de contrôle. Une influence 62 est observée si des fonctions d'appartenance dissymétriques sont utilisées, ou que l'aire des fonctions d'appartenance est évaluée lors de la défuzzification.  m C ( x ) ⋅wC Action(x) = x  m C ( x) o x o (5.5) o Enfin, il est possible d'utiliser d'autres opérateurs flous pour la conjonction ou la disjonction [112]. l'emploi Par exemple, des expériences ont été réalisées pour comparer du produit comme opérateur de conjonction flou. Au niveau des comportements, aucune différence significative dans les performances ne fut notée. Pour l'influence de l'activation du comportement toutefois, il fut préféré d'utiliser le minimum pour assurer une plus grande prévisibilité des actions d'un comportement activé. L'utilisation du produit déforme davantage les actions, mais n'amène pas encore de grandes divergences de comportement. Le minimum fut donc utilisé comme opérateur de conjonction au niveau du module de comportements. 5.2. Description des comportements flous utilisés Lorsqu'un grand nombre de comportements sont disponibles pour contrôler u n agent, il semble qu'une distinction au niveau de leur type est utile afin de bien situer leur rôle. (caractérisés Certains distinguent par une relation les comportements spatiale fixe entre sous forme les stimulis de réflexes et les muscles particuliers et où l'intensité de la stimulation gouverne la réponse), de formes d'actions fixe ou des comportements orientés-but, et de comportement d'orientation et de représentation du monde pour le raisonnement à partir de sensations réelles et non abstraites [26, 27, 177]. Un regroupement similaire est formulé par Kiss qui considère des comportements de type réflexe, talent complexe et action délibérée [102]. Bellingham et Consi [29] regroupent pour leur part les comportements e n 63 comportement de survie et en comportement orienté-but, tandis que Saffiotti et al. [170] distinguent les comportements réactifs avec buts innés de ceux dont l'objectif est donné par un planificateur. Pour les expérimentations réalisées, la distinction comportementale jugée la plus propice se réalise en deux niveaux, soit selon leur rôle et selon leur règles. Au niveau de leur rôle, la distinction choisie est celle de McFarland et Bösser [134] qui considèrent trois types de comportements: des comportements orientés vers la satisfaction d'un but (goal-oriented, le but est reconnu une fois atteint, mais le processus pour l'atteindre dépend des circonstances environnementales); des comportements cherchant à réaliser un but non spécifiquement identifié ( goal- seeking ); et des comportements dirigés vers un but explicitement représenté ( goaldirected). Au niveau des règles, il est possible de distinguer des comportements purement réactifs, des comportements avec condition bivalente d'où émerge un compromis par l'établissement d'un équilibre, et des comportements avec condition de neutralité pour adoucir les commandes. Ces deux façons de distinguer comportements sont mieux compris avec l'aide des prochaines comportements utilisés pour les expérimentations. les descriptions des Pour y simplifier la présentation des règles, les règles symétriques sont représentées sous forme d'une seule règle où l'état x réfère à un côté (droite ou gauche) et l'état y réfère à l'état inverse (c'est-àdire si x est droite, alors y est gauche). De plus, les règles avec une * sont des règles où les antécédents ou les conséquences en italiques sont modifiables par le module de cognition via les paramètres internes. Les paramètres possibles correspondent tout simplement à la condition bivalente, soit remplacer gauche par droite ou droite par gauche. Enfin, un signe positif pour la rotation doit être considérée si elle se fait vers la droite, et négatif si elle est réalisée vers la gauche. Les variables de contrôle disponibles pour les comportements sont l'accélération et le recule pour affecter la commande de vitesse, la rotation et la couleur. 64 5.2.1. Comportement URGENCE Le rôle du comportement d'URGENCE est de réagir aux conditions critiques de collision à l'avant ou en angle. Les capteurs utilisés sont le capteur de vitesse, le capteur avant et les deux capteurs avant en angle de 45°. La figure 5.4 illustre les règles et les fonctions d'appartenance pour ce comportement. La politique de contrôle consiste à ralentir face à un danger à l'avant (première règle) et de s'éloigner des dangers en angle (deuxième règle). Si un danger se trouve à chaque côté de l'agent, cette deuxième règle tente d'établir un équilibre pour la position de l'agent face à ces obstacles. Si l'agent se trouve pris dans un cul-de-sac, la troisième règle lui permet de tourner drastiquement pour changer son orientation (la gauche est la direction par défaut dans ce cas). capteurs de proximité définissent des Les fonctions d'appartenance pour les zones très proches de l'agent, et les conséquences des règles provoquent de fortes rotations de l'agent étant donné l'urgence de la situation dans laquelle il se trouve si de telles règles réagissent. 65 m 1 Danger-avant 0.5 0 m 0 10 20 30 40 1 50 60 Capteur avant Danger-avant-x 0.5 0 m 0 10 20 30 40 50 60 Capteur avant x 1 Immobile-vitesse 0.5 0 m 0 2 4 1 Tourne-x 6 8 10 Vitesse Tourne-x-raide 0.5 0 0 30 60 Ralentirbeaucoup 90 120 ! !<Cul-de-sac> !!SI !Immobile-vitesse !!ET!Danger-avant !!ET!Danger-avant-droite !!ET!Danger-avant-gauche !!ALORS!Tourne-gauche-raide ! !<Danger-x> !!SI !Danger-avant-x ! !!ET!NON (Danger-avant-y) !!ALORS!Tourne-y !<Danger-avant> !!SI !Danger-avant !!ET!NON (Immobile-vitesse) !!ALORS !Ralentir-beaucoup 150 180 Rotation 1 m 0.5 -4 Figure 5.4 -3 -2 -1 0 0 1 2 3 4 Accélération Règles et fonctions d'appartenance pour le comportement URGENCE Ce comportement cherche à satisfaire un but qui n'est pas spécifiquement identifié, soit l'éloignement des surfaces pour éviter les collisions. Il est aussi très réactif car les règles fournissent une commande dès qu'un des capteurs de proximité considérés indique la présence d'un danger. 5.2.2. Comportement ÉVITER Ce comportement permet d'éloigner l'agent des obstacles à proximité. La détection des obstacles se fait avec les mêmes capteurs que pour le comportement d'URGENCE, 66 soit le capteur avant et les deux capteurs avant en angle de 45°. La vitesse est aussi considérée. La figure 5.5 illustre les règles et les fonctions d'appartenance pour le comportement ÉVITER. Les règles permettent à l'agent de ralentir à l'approche d'un obstacle et à l'embouchure d'un corridor, s'éloigner des obstacles en angle et de changer d'orientation en cas d'impasse à l'avant. La gauche est la direction par défaut dans ce cas-ci. De plus, la troisième règle tente d'établir un compromis dans la position de l'agent face à des obstacles, comportement URGENCE 67 comme pour la deuxième règle du m 1 Proximité-avant 0.5 0 m 0 10 30 40 1 0.5 0 m 20 50 60 Capteur avant Proximité-avant-x 0 10 20 30 40 50 60 Capteur avant x 1 Proximité-côté-x 0.5 0 m 0 10 20 30 40 50 60 Capteur x 1 Trop-rapide-obstacle 0.5 0 m !<Prudence-avant> !!SI Trop-rapide-obstacle !!ET Proximité-avant !!ALORS Ralentir 4 0 8 12 16 20 Vitesse 1 Tourne-x-doucement 0.5 0 0 30 60 90 m 1 Ralentir-peu 120 150 180 Rotation !<Prudence-corridor> !!SI Trop-rapide-obstacle !!ET Proximité-côté-gauche !!ET Proximité-côté-droite !!ALORS Ralentir-peu !<Obstacle-x> !!SI Proximité-avant-x !!ET NON (Proximité-avant-y) !!ALORS Tourne-y-doucement !<Impasse-avant>* !!SI Proximité-avant !!ET NON (Proximité-avant-droite) !!ET NON (Proximité-avant-gauche) !!ALORS Tourne-gauche-doucement ! 0.5 0 -4 Figure 5.5 -3 -2 -1 0 1 2 3 4 Accélération Règles et fonctions d'appartenance pour le comportement ÉVITER Comme pour URGENCE, le comportement ÉVITER est orienté à la satisfaction d'un but non spécifiquement identifié, et il est hautement réactif. Il est toutefois possible de remarquer que les conséquences utilisées par ÉVITER sont moins drastiques que celles de URGENCE. De plus, les variables linguistiques des antécédents des capteurs partagés par ces comportements présentent 68 du recouvrement. Ces choix de conception permettent à ces deux comportements de jouer des rôles distincts (pour une bonne prévisibilité du contrôle) tout en assurant une douce transition ou interpolation entre ces modes de contrôle. 5.2.3. Comportement VITESSE Le comportement de VITESSE cherche à déplacer l'agent de se déplacer à une vitesse souhaitée. Le capteur de vitesse est le seul utilisé par ce comportement. La figure ce 5.6 représente comportement. les règles Le recouvrement et les fonctions des fonctions d'appartenance pour d'appartenance des antécédents permet de fixer la vitesse désirée au point de rencontre. L'action bivalente des règles permet d'atteindre ce point d'équilibre. Le comportement de VITESSE est donc u n exemple de comportement avec condition bivalente. De plus, il fait ainsi partie des comportements dont le but est explicitement représenté à l'interne. m 1 Trop-lent Trop-rapide 0.5 0 4 0 8 12 1 m Ralentir 16 20 Vitesse !<Trop-rapide> !!SI!Trop-rapide !!ALORS!Ralentir Accélérer 0.5 -4 Figure 5.6 5.2.4. -3 -2 -1 0 0 1 <Trop-lent>! !!SI!Trop-lent ! !!ALORS!Accélérer 2 3 4 Accélération Règles et fonctions d'appartenance pour le comportement VITESSE Comportement ALIGNER Le comportement ALIGNER permet à l'agent de suivre les contours en le réalignant en parallèle avec les surfaces. Les règles et les fonctions d'appartenance de ce comportement sont représentées à la figure 5.7. 69 Les capteurs utilisés sont les six capteurs de côté. Pour une meilleure stabilité, le comportement exploite des règles complémentaires où des antécédents avec recouvrement sont utilisés. Les règles comportent alors moins d'antécédents mais sont plus nombreuses pour considérer le recouvrement des fonctions d'appartenance. Il en résulte un ensemble de règles volumineux pour un contrôle plus "flou". La stratégie de contrôle consiste à ramener le nez de l'agent en parallèle avec la surface selon les lectures des capteurs avant et arrière à 45° de chacun de ses côtés. On ramène le nez lorsque l'agent s'éloigne; on l'éloigne lorsque l'agent s'approche, tout en satisfaisant avec la surface. gardant un éloignement latérale Les règles utilisées sont symétriques par rapport à chaque côté sauf pour les conditions Côté-x-médium où la considération de la gauche comme direction par défaut de ÉVITER et URGENCE demande un peu plus d'ajustement. Les deux dernières règles permettent de rattraper la surface lors de rotation de coin externe en ralentissant et en considérant l'éloignement d'un côté mais la proximité du capteur arrière en angle. La condition de proximité avant dans la dernière règle permet de ne pas ralentir lorsque l'agent suit normalement une surface. 70 !<Avant-x-proche> !!SI!Proche-avant-x ! ALORS!Tourne-y-très-doucement Proche-avant-x Médium-avant-x m 1 Loin-avant-x 0.5 0 m 0 10 20 30 40 50 60 Capteur avant x Proche-côté-x 1 Loin-côté-x 0.5 0 m 10 20 30 40 50 60 Capteur côté x Proche-arrière-x Médium-arrière-x 1 !<Avant-x-loin> !!SI!Loin-avant-x !!ALORS!Tourne-x-très-doucement !<Arrière-x-proche> !!SI!Proche-arrière-x !!ALORS!Tourne-x-très-doucement Médium-côté-x 0 !<Avant-x-médium> !!SI!Médium-avant-x !!ALORS!Neutre !<Arrière-x-médium> !!SI!Médium-arrière-x !!ET!NON (Loin-côté-x) !!ALORS!Neutre Loin-arrière-x 0.5 0 0 10 20 30 40 50 60 Capteur arrière x 1 m Ralentir !<Côté-x-proche> !!SI!Proche-côté- x !!ALORS!Tourne-y-doucement 0.5 -4 -3 !<Arrière-x-loin> !!SI!Loin-arrière-x !!ET!NON (Loin-côté-x) !!ALORS Tourne-y-très-doucement -2 -1 0 0 1 2 3 4 Accélération Tourne-xNeutre trèsdoucement 1 m !<Côté-gauche-médium> !!SI!Médium-côté-gauche !!ALORS!Tourne-droit-très-doucement !<Côté-droite-médium> !!SI!Médium-côté-droite !!ALORS!Neutre 0.5 Tourne-x-intermédiaire 0 0 30 60 90 120 150 180 Rotation !<Côté- x-loin> !!SI!Loin-côté-x !!ET!Proximite-arrière-x !!ALORS!Tourne-x-intermédiaire !<Ralentir-x> !!SI!Proximité-arrière-x !!ET!NON (Proximité-avant-x) !!ALORS!Ralentir Figure 5.7 Règles et fonctions d'appartenance pour le comportement ALIGNER 71 Le positionnement des fonctions d'appartenance entre les capteurs de proximité fut approximé à partir de la distance médium jugée acceptable pour suivre les contours. Cette distance fut fixée à 10, et explique le positionnement de la fonction d'appartenance Médium-côté-x à 25 (si on considère que l'agent a un rayon de 20, 20 + 10 ª (20 + 25) cos45°). Ce comportement peut être vue comme étant orienté vers la satisfaction d'un but non spécifiquement identifié, soit le suivi des contours. Ce but est en fait camouflé dans l'ensemble de ses règles et dans le positionnement des fonctions d'appartenance. Le comportement ALIGNER peut aussi se distinguer par l'utilisation de condition de neutralité comme conséquence. Ceci permet de spécifier comme choix d'action de n e pas modifier les commandes, résultant en une commande plus douce ou transitoire si d'autres actions sont proposées par ce comportement ou les autres. Par exemple, si une action pour tourner de 90° est formulée avec m = 1, et que le neutre est considéré avec m = 0.5, selon la formule (5.5) le résultat est 60°. 5.2.5. Comportement CIBLE Le comportement de CIBLE permet de détecter la présence d'une cible et de diriger la trajectoire de l'agent vers celle-ci. Les deux détecteurs de cible situés à chaque côté de l'agent sont utilisés. La figure 5.8 illustre d'appartenance pour ce comportement. les règles et les fonctions Étant donné que chacun des détecteurs donneront habituellement une lecture de proximité à l'approche d'une cible, la première règle permet d'orienter la trajectoire de l'agent directement vers la cible e n trouvant doucement un équilibre, un peut comme pour le comportement VITESSE. I l est donc considéré ici comme un comportement avec condition bivalente. De plus, la forme croissante de la fonction d'appartenance Cible-proche permet d'accroître l'importance de la conséquence plus la cible se rapproche. Enfin, ce comportement fut conçu pour atteindre une cible perçue, et est donc orienté-but. 72 m 1 Cible-proche-x 0.5 0 m 0 40 80 120 1 160 200 Détecteur x cible Tourne-x-doucement 0.5 0 0 30 60 90 1 m 120 150 180 Rotation Accélérer !<Cible-à-x> !!SI Cible-proche-x !!ET NON (Cible-proche-y) !!ALORS Tourne-x-doucement !<Accélérer> !!SI Cible-proche-droite !!ET Cible-proche-gauche !!ALORS Accélérer 0.5 -4 -3 Figure 5.8 5.2.6. -2 -1 0 0 1 2 3 4 Accélération Règles et fonctions d'appartenance pour le comportement CIBLE Comportement RECHARGE Le rôle du comportement de RECHARGE consiste à diriger l'agent vers le point de charge s'il est perceptible. Les deux détecteurs de point de charge sont utilisés, ainsi que la vitesse et une variable interne indiquant le chargement de l'accumulateur d'énergie. Cette variable est initialisée à 1 si la charge de l'accumulateur augmente, sinon elle est nulle. Ce mécanisme est similaire à celui de Steels [196]. La figure 5.9 illustre les règles et les fonctions d'appartenance pour ce comportement. La première règle sert à orienter l'agent vers le point de charge, comme pour la première règle du comportement CIBLE. Les deux règles suivantes contrôlent la vitesse d'approche de l'agent. La dernière arrête complètement l'agent le temps qu'il se recharge. Comme pour CIBLE, ce comportement est orienté-but avec condition bivalente car les deux détecteurs sont alors majoritairement responsables du contrôle de la trajectoire. 73 m Charge-proche-x 1 Charge-visible-x 0.5 0 m 0 1 40 80 120 160 200 Détecteur x point de charge Quasi-immobile 0.5 Trop-rapide-charge 0 m 0 4 8 16 20 Vitesse 1 0.5 Chargement-en-cours 0 m 12 0 1 Chargement 1 Tourne-x-doucement 0.5 0 0 30 60 90 120 150 180 Rotation !<Charge-à-x> !!SI Charge-visible-x !!ET NON (Charge-visible-Y) !!ET NON (Chargement-en-cours) !!ALORS Tourne-x-doucement !<Ralentir-charge> !!SI Charge-proche-droite !!ET Charge-proche-gauche !!ET Trop-rapide-charge !!ALORS Ralentir-peu !<Accélérer-charge> !!SI Charge-proche-droite !!ET Charge-proche-gauche !!ET Quasi-immobile ET !!NON (Chargement-en-cours) !!ALORS Accélérer !<Rechargement> !!SI Chargement-en-cours !!ALORS Ralentir-énormément m 1 Ralentirénormément 0.5 Accélérer 0 -4 Figure 5.9 5.2.7. -3 -2 -1 0 1 2 3 4 Accélération Règles et fonctions d'appartenance pour le comportement RECHARGE Comportement DÉGAGE Ce comportement est utilisé pour sortir l'agent d'impasse lorsqu'il reste pris à u n endroit de l'environnement. La figure 5.10 représente Les capteurs de côté et le capteur arrière sont utilisés. les règles et les fonctions d'appartenance pour ce comportement. Le comportement DÉGAGE permet de faire reculer l'agent à petits pas en l'éloignant des surfaces à ses côtés. C'est un comportement hautement réactif 74 (étant donné l'urgence de la situation lorsqu'il doit être employé) qui cherche à satisfaire un but non spécifiquement identifié. m 1 Danger-arrière 0.5 0 m 0 10 20 30 1 40 50 60 Capteur arrière Danger-arrière-x 0.5 0 m 0 10 20 30 40 50 60 Capteur arrière x Tourne-recule-x 1 0.5 0 m 0 30 60 90 120 !<Dégage-arrière> !!SI NON (Danger-arrière) !!ALORS Recule !<Dégage-x> !!SI NON (Danger-x) !!ALORS Tourne-recule-y 150 180 Rotation 1 Recule 0.5 0 0 Figure 5.10 5.2.8. 1 2 Recule Règles et fonctions d'appartenance pour le comportement DÉGAGE Comportement TOURNE90 Le comportement TOURNE90 permet à l'agent de s'éloigner perpendiculairement d'une surface. Les capteurs utilisés sont les capteurs arrières en angle de 45°, les capteurs de côté et la vitesse. La figure 5.11 illustre les règles et les fonctions d'appartenance utilisées par ce comportement. L'ordre d'activation des règles se fait selon leur présentation dans cette figure. Tout d'abord, la première règle fait ralentir l'agent. Ensuite, la rotation est amorcée de façon à éloigner le plus possible le nez de la surface localisée au côté de l'agent. Lorsque la surface est perçue bien en arrière 75 de l'agent, il peut alors reprendre tranquillement sa route. La condition de neutralité dans la dernière règle permet d'adoucir la rotation lorsque l'agent se trouve presque perpendiculaire à la surface. m 1 Côté-x-proche 0.5 0 m 0 10 20 30 50 60 Capteur côté x Proximité-arrière-x 1 40 0.5 0 m 0 10 1 20 30 40 50 60 Capteur arrière x Quasi-immobile 0.5 0 m 0 1 2 4 6 8 Tourne-x Neutre 10 Vitesse 0.5 0 0 30 60 90 0.5 Figure 5.11 -3 -2 150 180 Rotation 1 m Ralentirbeaucoup -4 120 -1 0 0 !<Immobilisation> !!SI NON (Quasi-immobile) !!ALORS Ralentir-beaucoup !<Tourne-90-x-début> !!SI Côté-x-proche !!ET Quasi-immobile !!ALORS Tourne-y <Tourne-90-x> !!SI Proximité-arrière-x !!ET NON (Proximité-arrière-y) !!ET Quasi-immobile !!ALORS Tourne-y !<Repart> !!SI Proximité-arrière-gauche !!ET Proximité-arrière-droite !!ALORS Accélérer !!ET Neutre Accélérer 1 2 3 4 Accélération Règles et fonctions d'appartenance pour le comportement TOURNE90 Un fait intéressant sur ce comportement est qu'il fonctionne peu importe le sens dans lequel il doit orienter l'agent. De plus, s'il est activé dans un corridor, aucune rotation ne sera effectuée. Ceci fait de lui un comportement orienté vers la satisfaction d'un but non spécifiquement identifié, fondé principalement conditions bivalentes des capteurs de proximité arrière et en angle. 76 sur les 5.2.9. Comportement TOURNE180 Le rôle du comportement TOURNE180 est de permettre à l'agent de faire demi-tour. Les mêmes capteurs que ceux pour TOURNE90 sont utilisés. La figure 5.12 illustre les règles et les fonctions d'appartenance utilisées par ce comportement. Comme pour TOURNE90, les règles sont présentées selon leur ordre habituel d'utilisation. première règle commence par immobiliser l'agent. La La seconde permet de changer l'orientation de l'agent pour que la surface se trouve sur son côté désiré. La troisième permet de continuer la rotation le temps que l'agent se place en parallèle à la surface avant de repartir. Le sens de rotation et les antécédents faisant référence aux côtés sont spécifiés via les paramètres internes par le module de cognition. Ceci lui permet d'être plus général au lieu d'avoir à spécifier deux comportements différents pour réaliser ce demi-tour dans les deux sens. Ce comportement n'aurait pu être bidirectionnel comme pour TOURNE90 car il est nécessaire que le point d'arrivée souhaité soit spécifié (puisque l'agent met quelques cycles avant d'effectuer complètement la rotation). Ce comportement est hautement réactif et est orienté vers la satisfaction d'un but explicitement représenté par le module de cognition. 77 m 1 Côté-x-proche 0.5 0 m 0 10 1 20 30 40 50 60 Capteur côté x Derrière-proche !<Immobilisation> !!SI NON (Quasi-immobile) !!ALORS Ralentir-beaucoup 0.5 0 m 0 10 1 20 30 40 Quasi-immobile 50 60 Capteur arrière 0.5 0 m 0 2 4 6 8 1 Tourne-x 10 Vitesse 0.5 0 0 30 60 90 Ralentirbeaucoup 120 !<Tourne-180-x> !!SI NON (Côté-x-proche) !!ET Quasi-immobile !!ALORS Tourne-x ! !<Tourne-fin-x> !!SI Côté-x-proche !!ET Derrière-proche !!ET Quasi-immobile !!ALORS Tourne-x ! 150 180 Rotation 1 m 0.5 -4 -3 Figure 5.12 -2 -1 0 0 1 2 3 4 Accélération Règles et fonctions d'appartenance pour le comportement TOURNE180 5.2.10. Comportement ALARME Le comportement ALARME permet de communiquer d'une façon très primaire certaines conditions propres aux états internes de l'agent. Lorsqu'activé, ce comportement modifie la couleur de l'agent, qu'il soit immobile ou non. La figure 5.13 illustre une telle politique de contrôle. En fait, il aurait été plus simple de ne pas utiliser un mécanisme flou ici et d'avoir un comportement sans antécédents avec seulement une sortie. Mais ceci aurait nécessité une modification au niveau du code 78 du programme, et il était moins coûteux d'utiliser deux règles floues avec des antécédents complémentaires. C'est donc un comportement avec condition bivalente, avec un but explicitement représenté. Ce comportement est un exemple de compétence associée à la communication, et il est mis en oeuvre sous cette forme pour respecter l'hypothèse que seuls les comportements peuvent accéder aux variables de contrôle. Il peut aussi être recommandée favorablement ou défavorablement par les sources de recommandations. m 1 Immobile-vitesse 0.5 0 m 0 2 4 6 8 1 10 Vitesse !<Règle-mobile> !!SI NON (Immobile-vitesse) !!ALORS Alarme Alarme 0.5 0 bleu rouge !<Règle-immobile> !!SI Immobile-vitesse !!ALORS Alarme noir Couleur Figure 5.13 Règles et fonctions d'appartenance pour le comportement ALARME 5.2.11. Comportement FOLIE Le comportement de FOLIE sert aussi à la communication mais d'une façon différente. Il sert à extérioriser un état interne associé à la satisfaction des objectifs de contrôle. Les règles de contrôle et les fonctions d'appartenance sont illustrées à la figure 5.14. La première règle fait tourner l'agent lorsqu'il est presqu'immobile. Les deux autres le font avancer lorsqu'il est presqu'immobile, et ralentir sinon. Il e n résulte que l'agent tourne sur lui-même. Ce comportement utilise donc des conditions bivalentes et est orienté vers la satisfaction d'un but non spécifiquement identifié. Son rôle est expliqué à la section 8.2. 79 m 1 Quasi-immobile 0.5 0 m 0 2 1 4 6 8 10 Vitesse Tourne-gauche-raide !<Accélère> !!SI Quasi-immobile !!ALORS Accélérer 0.5 0 0 -30 -60 -90 Ralentir-énormément 1 m !<Tourne-sur-lui> !!SI Quasi-immobile !!ALORS Tourne-gauche-raide -120 -150 -180 Rotation Accélérer !<Ralenti> !!SI NON (Quasi-immobile) !!ALORS Ralentir-énormément 0.5 -4 Figure 5.14 5.3. -3 -2 -1 0 0 1 2 3 4 Accélération Règles et fonctions d'appartenance pour le comportement FOLIE Méthodologie dans la conception des comportements flous Certaines particularités doivent être prises en considération lors de la conception des comportements flous, principalement au niveau du choix des conséquences floues utilisées par les règles et au niveau des influences entre les comportements. Au niveau des du choix des conséquences, il faut se rappeler que le degré flou conséquences est unifié par disjonction floue avant de réaliser la défuzzification. Ainsi, si on souhaite qu'une règle puisse formuler une décision floue qui ne risque pas d'être perdue lors de la fusion par disjonction des conséquences floues, il est préférable d'utiliser une variable linguistique différente. Par exemple, si u n comportement hautement réactif indique à l'agent qu'il doit tourner de 90° avec m = 1, et qu'un comportement avec condition bivalente propose qu'il doit tourner à droite et à gauche de 90° avec m = 1, l'action résultante sera nulle. Par contre, si la condition 80 bivalente est de 85° au lieu de 90°, alors l'action résultante sera de 30° (soit 90° divisé par 3). Il est donc important d'identifier les règles qui doivent absolument influencer les actions de l'agent lorsqu'elles sont activées, et d'utiliser alors des conséquences floues différentes pour ne pas qu'elles soient combinées avec l'action de d'autres règles. Une condition de neutralité permet aussi de limiter ce genre d'inconvénients. Une autre source d'information possible est propre aux antécédents des règles, au positionnement de leur fonction d'appartenance et leur recouvrement. de créer des conflits ou de dupliquer des conditions Il faut éviter réactives entre les comportements, et s'assurer d'une bonne transition entre les comportements qui doivent travailler simultanément. Une schématisation à l'échelle des zones de détection et des conditions réactives des comportements peuvent servir à éviter ces problèmes, à bien distinguer leur rôle respectif, et comprendre ce que l'agent peut considérer pour la prise de décision. La reproduction de condition d'activation de comportements devant travailler ensemble est aussi une technique utile à l'avantage des expérimentations simulées. Mais avant, il est important d'avoir validé d'une façon indépendante les comportements, car toute modification ajustements sur les autres comportements. empirique est donc de mise. 81 peut occasionner Une méthodologie incrémentale des et 6. CARACTÉRISTIQUES DU MODULE DE MOTIFS CONÇU Pour les expérimentations avec BugWorld, les motifs permettent à l'agent de jouer de façon efficace et autonome son rôle dans l'environnement en influençant le choix des comportements via les sources de recommandations. Le module de motif est donc présenté dans cette thèse avec les modules de comportement afin de mieux comprendre ces influences dans les chapitres expliquant les mécanismes utilisés par les modules de recommandations. L'objectif général de l'agent est d'effectuer une recherche efficace de l'environnement pour y atteindre les cibles toute en assurant un bon niveau de charge de son accumulateur d'énergie. L'agent doit donc gérer différents buts comme: - se diriger vers un point de charge pour la recharge d'énergie; - détecter les conditions inadéquates de fonctionnement de l'agent; - explorer son environnement à la recherche de cibles et en tirer des connaissances; - exploiter ces connaissances lorsqu'elles sont jugées adéquates. Les motifs sont responsables de superviser l'atteinte de ces buts en fonction de ce qui est expérimenté et vécu par l'agent. Pour y arriver, ils sont influencés par des sensations venant de l'environnement ou des ressources internes à l'agent (comme son niveau d'énergie), l'activation et l'exploitation des comportements, les connaissances acquises sur l'environnement et le traitement de ces connaissances. Ils peuvent aussi s'influencer entre eux. L'important est que l'activation des motifs émerge des circonstances internes et externe vécues par l'agent (et qui dépendent de ses comportements) afin de rencontrer les hypothèses à la base de SIR. 82 Pour réaliser l'introspection au niveau des comportements, l'exploitation du comportement est une nouvelle variable interne mesurant l'importance que prend le comportement dans la prise de décision. Puisque les comportements utilisés sont flous, la mesure de l'exploitation est aussi basée sur une relation floue. Cette relation considère l'activation du comportement ainsi que le degré d'activation de ses règles. L'opération réalisée est présentée à la relation (6.1). Elle consiste à unifier le degré d'activation des règles r du comportement j (voir relation (5.2)), pour ensuite réaliser la conjonction avec l'activation du comportement j. Il en résulte un degré flou mesurant l'exploitation du comportement j. L'opérateur de disjonction floue utilisé est le maximum, et celui de conjonction floue est le produit. De cette façon, l'exploitation d'un comportement varie proportionnellement à son activation et au degré d'activation flou maximum observé sur l'ensemble de ses règles (qui lui dépend de ses antécédents fuzzifiés). Cette mesure approxime donc la contribution des comportements aux actions formulées avant leur défuzzification. ([ ]) m exp( j ) = m act ( j ) ƒ ⊕ m Brj ( Action ) (6.1) Les motifs sont mis en oeuvre ici sous forme d'unités analogiques pouvant prendre une valeur entre 0 et 1. Un mécanisme similaire est employé par Maes [122]. Cependant, chaque motif possède son propre schéma d'activation en fonction des facteurs qui l'influencent. La figure 6.1 illustre l'ensemble des motifs utilisés et les facteurs qui les influencent. Un flèche en trait plein représente une influence positive excitant le motif tandis qu'une flèche en trait ombragé indique une source d'inhibition. Une flèche en gras identifie une double influence de la source selon certaines conditions. oeuvre une forme Enfin, les motifs peuvent s'auto-influencer pour mettre e n de rétention ou d'intégration implicitement considéré par les cycles d'exécution. temporelle. Le temps est L'ensemble de ces liens et des facteurs propres à la variation des motifs (comme leurs paramètres d'incrémentation 83 et de décrémentation) ont été choisis de façon à ce que les motifs arrivent à bien coordonner les intentions de l'agent. Niveau d'énergie FAIM Chargement détecté Act. & Expl. URGENCE FONCTIONNEMENT DÉTRESSE MANGER Act. & Expl. ÉVITER Act. & Expl. VITESSE PHYSIOLOGIQUE Act. & Expl. DÉGAGE CERTITUDE Influences cognitives DÉCEPTION Activation CIBLE CONFIANCE Exploitation CIBLE Activation RECHARGE EXPLORER Exploitation RECHARGE ACCOMPLISSEMENT Exploitation TOURNE180 ENNUI EXPLOITER Activation FOLIE JOIE Figure 6.1 Atteinte cible COGNITION Motifs utilisés avec leurs influences Pour mieux décrire les motifs, ils ont été regroupés en fonction de leurs influences sur l'agent et ses mécanismes de décision. Pour les expérimentations avec BugWorld, les motifs agissent sur quatre facteurs: le besoin physiologique d'énergie, le besoin de bon fonctionnement de l'agent, son besoin d'accomplissement, et l'acquisition et l'organisation des connaissances sur l'environnement et les interactions de l'agent avec celui-ci. Les prochaines sections décrivent avec plus de détail ces quatre groupes de motifs. 84 6.1. Motifs associés au besoin physiologique d'énergie Deux motifs sont associés au besoin physiologique de l'agent, soit FAIM et MANGER. Le motif FAIM est directement influencé par le niveau de charge de l'accumulateur d'énergie. Sa fonction d'activation est représentée à la figure 6.2. La FAIM varie linéairement avec le niveau de charge s'il se trouve entre les bornes s (supérieure) et i (inférieure). En bas du seuil inférieur, le motif FAIM est pleinement activé. Pour les expérimentations, le seuil s est fixé à 40% de la charge maximale, tandis que le seuil i est fixé à 10%. FAIM 1 0 i Figure 6.2 s Max Charge accumulateur Schéma d'activation du motif FAIM Le motif MANGER est bien sûr influencé par le motif FAIM. Mais FAIM n'est pas une fonction qui couvre toute la charge d'énergie de l'accumulateur, c'est le motif MANGER qui influence l'utilisation du comportement RECHARGE via le module de besoins (voir section 8.2). Ceci permet d'assurer la recharge complète de l'agent avant qu'il reprenne son parcours. Le fait de découper le besoin physiologique e n deux motifs permet une meilleure gestion des influences et des situations à ce niveau. Pour les expérimentations, MANGER varie linéairement avec la FAIM jusqu'à ce qu'il soit pleinement activé. Si FAIM est pleinement activé, le motif MANGER augmente de 0.5% par cycle d'exécution. Ce motif est aussi influencé par la recharge de l'accumulateur d'énergie, identifiée par la variable interne Chargement examinant l'augmentation du niveau d'énergie (voir section 5.2.6). En fait, lorsque cette variable 85 est activée, MANGER est maintenu à sa pleine activation. L'agent fait alors preuve d'opportuniste en arrêtant de se recharger dès que sa charge d'énergie augmente (soit lorsque l'agent atteint un point de charge). Le motif FAIM devrait alors s'inhiber complètement, et MANGER est maintenu tant que l'accumulateur n'a pas atteint sa charge maximale. motif est pleinement planifiée Le motif MANGER est alors réinitialisé à 0. activé par le module de cognition vers une cible ne peut être atteinte avec lorsqu'une le niveau Enfin, ce trajectoire de charge de l'accumulateur d'énergie à ce point. 6.2. Motifs associés au besoin de bon fonctionnement de l'agent Deux motifs sont associés au bon fonctionnement de l'agent. Le premier est le motif DÉTRESSE et il sert à détecter les conflits entre les intentions de l'agent et l'exploitation de ses comportements. Ces situations peuvent survenir à cause d'une situation l'agent imperceptible l'environnement, comportements empêchant ou par un conflit activés. de se imprévu L'introspection est déplacer correctement dans dans les décisions prises par les considérée ici en examinant les divergences possibles entre ce qui est désiré (le choix des comportements) et ce qui en résulte (leur exploitation). règles permet de mieux La discrimination des comportements au niveau des comprendre comment ces divergences peuvent être identifiées. Par exemple, l'exploitation de comportements hautement réactifs comme URGENCE et ÉVITER ne doit pas rester constante ou non nul très longtemps: ces comportements servent à déplacer rapidement l'agent et ils sont normalement exploités sur de courte période. Sinon, l'agent a certainement quelques difficultés à se déplacer. Par contre, l'activation d'un comportement à condition bivalente comme VITESSE doit résulter en un état d'équilibre dans le degré d'exploitation du comportement: pour VITESSE, le déplacement de l'agent à vitesse constante s'observe par un degré d'exploitation constante de 0.5. 86 Une exploitation unitaire de ce comportement sur une longue période indique que l'agent désire avancer, mais que quelque chose l'en empêche. Au niveau contrôle, le motif DÉTRESSE sert à activer le comportement DÉGAGE via le module de besoins (voir section 8.2). D'une façon plus spécifique, les conditions d'excitation utilisées pour le motif DÉTRESSE sont: - Moyenne sur dix cycles de la somme non nulle de l'exploitation des comportements URGENCE et ÉVITER. Une moyenne constante (sous une tolérance de 0.01) fait incrémenter le motif DÉTRESSE d'un maximum de 5% en fonction de la variation de la moyenne entre les cycles. Sinon, le motif est décrémenté de 1%. U n décrément plus petit est utilisé ici pour ne pas oublier trop rapidement les conditions passées à cause d'une légère divergence dans la moyenne. L'opérateur moyenne permet de considérer l'exploitation constante ou oscillante de ces comportements et d'intégrer plus facilement les petites variations d'exploitation entre les cycles; - Activation constante du comportement ÉVITER sans être exploité, sur une période de plus de 20 cycles d'exécution consécutifs. Le motif DÉTRESSE est alors incrémenté de 5% par cycle; - Activation maximale des comportements URGENCE et ÉVITER sans qu'ils soient exploités, incrémentant le motif DÉTRESSE de 5% par cycle d'exécution; - Activation et exploitation maximales du comportement VITESSE sur plus de huit cycles. Puisque cette condition survient normalement lors d'un départ de l'agent, il est nécessaire d'utiliser un compteur pour identifier la situation problématique. d'exécution. Le motif DÉTRESSE est alors incrémenté de 5% par cycle Lorsque le comportement DÉGAGE entre en action, le niveau de DÉTRESSE est maintenu constant sur un maximum de dix cycles tant que l'exploitation et l'activation de DÉGAGE sont égaux. Ceci permet de laisser un peu plus de temps à l'agent pour se dégager. 87 En l'absence de ces influences, le motif DÉTRESSE est décrémenté de 30% par cycle d'exécution, tant qu'il n'est pas nul. Le second motif associé au bon fonctionnement de l'agent est DÉCEPTION. Ce motif sert à détecter l'éloignement de l'agent par rapport à un but qu'il désire atteindre. Par exemple, lorsque l'agent s'éloigne perpendiculairement à une cible ou un point de charge, il est possible que ses détecteurs ne peuvent provoquer un différentiel de rotation suffisant pour le faire tourner et l'orienter vers cet objectif. Ce phénomène peut toutefois être détecté en observant une diminution de l'exploitation des comportements visant à orienter l'agent vers de tels objectifs. Ainsi, une diminution de l'exploitation des comportements RECHARGE ou CIBLE (lorsque ces comportements sont respectivement activés) indiquent à l'agent qu'il s'éloigne de son objectif, ce qui fait incrémenter RECHARGE. le motif DÉCEPTION. La priorité est donnée au comportement L'augmentation de ce motif s'effectue lorsque l'exploitation de ces comportements est faible pour leur laisser une plus grande latitude pour tenter d'orienter eux-mêmes la trajectoire de l'agent. comportement RECHARGE est de 20% par De plus, l'incrément cycle, soit le double associé au de celui du comportement CIBLE pour illustrer l'importance différente de la DÉCEPTION par rapport à ces deux situations. Lorsque ce motif est pleinement activé, il incite l'agent à faire demi-tour en recommandant l'activation de TOURNE180 via le module de cognition (voir section 7.7.2). Dès que ce comportement exploité, le motif DÉCEPTION est placé à demi-activation pour ne pas formuler à nouveau cette recommandation tout en assurant une certaine rétention au cas d'un mauvais fonctionnement des conditions pour faire demi-tour. 6.3. Motif associé au besoin d'accomplissement Le rôle fondamental de l'agent dans l'environnement est d'atteindre des cibles. Il a donc une seule tâche à réaliser qui affecte directement son besoin d'accomplissement, 88 considéré ici par le motif JOIE. Ce motif vient influencer l'activation comportements CIBLE et FOLIE via le module de besoins (voir section 8.2). des Il est incrémenté de 30% lorsqu'une cible est atteinte; sinon il est décrémenté de 2.5% à chaque cycle d'exécution. Ces variations sont permises lorsque l'agent n'est pas e n train de se recharger afin de garder ce motif constant durant cette période. Ces variations sont aussi bloquées lors de l'activation du comportement de FOLIE sur une période de huit cycles. Cette période fut choisie en fonction de la rotation formulée par ce comportement (soit 135°, voir section 5.2.11) pour permettre à l'agent de repartir dans la même direction après l'avoir utilisé. Ceci est possible seulement si aucun autre comportement affecte la trajectoire de l'agent. une fois le décompte des cycles d'activation de FOLIE atteint, le motif JOIE est initialisé à 50%, et l'agent peut reprendre sa trajectoire. 6.4. Motifs associés à la cognition Ces motifs jouent un rôle au niveau de la planification connaissances par le module de cognition. et la gestion Cinq motifs y sont utilisés. CONFIANCE et CERTITUDE sont à la base de ces motifs. des Les motifs Ils sont principalement influencés par des facteurs propres au module de cognition, ces influences étant décrites aux sections 7.4.5 et 7.5.3 respectivement. Sommairement, le motif CONFIANCE est associé à la capacité de l'agent de se localiser par rapport à une trajectoire passée mémorisée dans son graphe topologique. Le motif CERTITUDE reflète sa capacité de planifier des trajectoires à partir de son graphe topologique afin d'atteindre u n objectif donné. Outre ses influences cognitives, le motif CERTITUDE est maintenu à u n niveau de 0.4 lorsque le comportement RECHARGE est exploité, si CERTITUDE se trouvait à un état d'activation supérieur à ce seuil. Ceci bloque recommandations basée sur ce motif pour donner priorité à la recharge. 89 toute Les trois autres motifs servent à affecter le traitement effectué par le module de cognition. Tout d'abord, le motif EXPLORER indique à l'agent quant il peut partir explorer son environnement en activant le comportement TOURNE90. Ceci lui permet de se former des connaissances sur son environnement par la construction de nouvelles branches dans son graphe topologique. Par contre, lorsque l'agent se sent bien en confiance dans son environnement, il peut cesser de vouloir l'explorer pour plutôt exploiter les connaissances qu'il possède. Le motif EXPLOITER reflète ce désir, et influence aussi le motif EXPLORER. D'une façon plus précise, le motif EXPLORER varie proportionnellement au motif CONFIANCE tant que le motif EXPLOITER n'a pas atteint un niveau d'activation supérieur ou égal à 0.9. L'agent juge alors qu'il connaît assez son environnement pour exploiter ses connaissances. Le motif EXPLORER est aussi redescendu à un niveau de 0.8 s'il était pleinement activé durant l'activation du comportement RECHARGE ou l'exploitation de CIBLE, favorisant objectifs par rapport à l'exploration de l'environnement. l'atteinte de ces Pour sa part, le motif EXPLOITER incrémente de 0.0045 par cycle d'exécution, multiplié par le niveau de CONFIANCE. Ainsi, plus l'agent se sent en confiance dans son environnement et plus longtemps il se sent en confiance, plus il souhaite exploiter les connaissances tirées de ses interactions avec lui. En absence de confiance, le motif EXPLOITER est décrémenté de 5% par cycle d'exécution. Par contre, si le graphe topologique de l'agent est complètement rempli, alors il n'a pas d'autres choix que d'exploiter ses connaissances et d'incrémenter le motif EXPLOITER à un niveau supérieur à 0.9. Enfin, le motif peut ensuite être pleinement activé lorsque l'agent atteint un point de charge et qu'il en profite pour optimiser son graphe topologique, comme il est expliqué à la section 7.6. Le dernier motif, ENNUI, permet d'évaluer la capacité de l'agent d'exploiter ses connaissances et l'atteinte de ses objectifs. Lorsque EXPLOITER est pleinement activé, le motif ENNUI est incrémenté de 0.7% par cycle d'exécution tant que l'agent n'est pas 90 en mesure de planifier des trajectoires vers une cible non préalablement visitée (suite à l'optimisation) ou un point de charge. Si un trajet est planifié, alors ce motif est réinitialisé à 0. Le motif ENNUI est aussi décrémenté de 30% lorsque le motif JOIE est incrémenté, soit lorsqu'une cible est atteinte (ceci est plus général au cas où plusieurs objectifs seraient rattachés au besoin d'accomplissement de l'agent). Cette influence donne un léger sursis pour l'exploitation des connaissances lorsque la cible atteinte ne fait pas partie d'une trajectoire planifiée. Lorsque les comportements CIBLE ou RECHARGE sont exploités, le motif ENNUI est maintenu constant pour laisser le temps à l'agent d'arriver à son objectif perçu. Une fois le motif ENNUI pleinement activé, il inhibe complètement le motif EXPLOITER pour que l'agent reprenne l'exploration de son environnement. Et en désactivant EXPLOITER, le motif ENNUI se réinitialise automatiquement à zéro. 91 7. CARACTÉRISTIQUES DU MODULE DE COGNITION CONÇU Le présent chapitre expose les caractéristiques du module de cognition conçu pour les expérimentations avec BugWorld. Ce module permet à un agent de mémoriser ses interactions avec l'environnement externe et entre ses états internes, et de s'en servir comme source de connaissances. Les connaissances sont représentées sous forme d'un graphe topologique construit à partir de points de repère identifiés lors du déplacement de l'agent dans l'environnement. Un comportements d'identification de formes topologiques lui permet de construire ce graphe. Il peut alors s'en servir pour se localiser par rapport à un endroit déjà visité, annexer des informations importantes concernant ses états internes, et planifier sa trajectoire en fonction de ses objectifs de réalisation. Les influences du module de cognition se manifeste par la formulation de recommandations cognitives de comportements, l'affectation de leur réactivité par la modification d'antécédents ou de conséquences de règles, et l'excitation de motifs. Trois objectifs de conception sont poursuivis par ce module. Le premier est d'enregistrer seulement ce qui est nécessaire, selon la même hypothèse de Agre et Chapman [3] considérant les plans comme un guide d'actions. Ceci est très important pour la préservation de l'émergence et établir un couplage efficace de la délibération du module de cognition avec la réactivité du module de comportements. La carte topologique construite lors de l'exploration de l'environnement par l'agent sert donc de ressource adaptative de planification, comme le fait Engelson et McDermott [61] mais avec une méthode différente. Le second est la mise en oeuvre d'une cognition située [47]. Une approche qui se trouve la plus proche de la notion de cognition située est celle du graphe topologique de Mataric [47, 128, 129]. Clancey [47] note toutefois que la construction de ce graphe devrait être couplé avec la coordination de haut niveau, ce qui est affecté ici par les motifs. 92 Enfin, une attention particulière fut portée lors de la conception des mécanismes de ce module pour faciliter leur mise e n oeuvre sur des plate-formes physiques ne demandant pas des capacités importantes de calcul et de mémorisation. L'utilisation d'une représentation topologique est une propriété importante à considérer pour la navigation de robots, de par son lien avec les représentations utilisées par les animaux [143] et les humains [114]. Il existe plusieurs méthodes utilisant des informations topologiques comme représentation de l'environnement, comme entre autres [58, 59, 108, 109, 114]. Plus proche des techniques pour les agents situés, Smithers [192] par exemple utilise un RNA de type Kohonen pour apprendre les séquences de noeuds topologiques. Cette méthode n'est toutefois pas réversible. Il y a aussi Simmons et Koenig [184] qui proposent un algorithme de graphe topologique utilisant des modèles de Markov partiellement connectivité entre des lieux topologiques. l'information topologique et métrique. observable Cet algorithme pour indiquer la permet de combiner Mais l'énumération et l'explication de ces méthodes débordent du cadre de la thèse. D'une façon générale, ces approches diffèrent permises selon les capacités perceptuelles pour l'identification et la reconnaissance de point de repère (données géométriques ou mesures), la structure du graphe topologique utilisée, les hypothèse de base concernant les noeuds (unicité, distinction), les méthodes de traitement du graphe topologique et son influence sur les actions de l'agent. L'algorithme de graphe topologique présenté dans ce chapitre est donc conçu de façon à répondre aux capacités de l'agent, à ses besoins et aux principes conceptuels de SIR. Comparativement à la mise en oeuvre des autres modules de SIR, le module de cognition est beaucoup plus complexe, prouvant que la délibération est une fonction de l'intelligence plus évoluée que la réactivité. Tout d'abord, une description générale des caractéristiques et des composantes du module de cognition est présentée 93 à la section 7.1. Ces composantes sont décrites avec plus de détail aux sections 7.2 à 7.7. Enfin, la section 7.8 présente les avantages et les limitations concernant l'utilisation de ces mécanismes pour la mise en oeuvre du module de cognition. 7.1. Caractéristiques générales et composantes du module de cognition Selon la problématique décrite à la section 4.3 concernant les expérimentations à réaliser avec BugWorld, l'agent doit rechercher les cibles sans avoir a priori des informations sur leur localisation dans l'environnement. Le module de cognition doit donc assurer la construction d'une représentation interne de la trajectoire suivie par l'agent afin de la situer face aux endroits déjà visités, planifier trajectoires et optimiser l'utilisation de cette représentation. au besoin des La construction d'une représentation interne pour un environnement inconnu est une problématique qui est abordée par certains chercheurs comme [12, 59, 58]. Une importante source d'inspiration lors de la conception du module de cognition topologique sont les travaux de Mataric [128, 129]. et de son graphe Cette approche utilise u n comportement pour détecter des lieux topologiques selon la longueur de différents contours orientés. La détection de ces lieux comportement d'exploration émergeant. résulte d'un effet de bord du Ces lieux sont ensuite organisés dans u n graphe bidirectionnel représentant leur proximité entre eux. L'approche mise e n oeuvre ici est similaire au niveau du principe, mais très différente au niveau des mécanismes. Ces différences sont présentées lors de la description des composantes du module de cognition. Les différentes composantes du module de cognition sont illustrées à la figure 7.1. Le graphe topologique y est comportement d'identification. construit à partir de formes perçues par un Il arrive aussi à intégrer d'autres informations e n mémorisant des états internes comme des motifs (par exemple, la DÉTRESSE peut servir 94 à identifier des endroits dangereux, tandis que la JOIE peut faire référence à un lieu intéressant pour l'agent), des sensations particulières identifiant des conditions spéciales (comme le chargement de l'accumulateur d'énergie), la recommandation de comportement ou leur sélection. Toutes ces sources d'informations servent à bien identifier le contexte utile pour bien caractériser la situation d'occurrence ou qui émerge lors de l'acquisition des connaissances. il ne faut pas enregistrer toutes les Pour respecter Agre et Chapman [3], conditions venant des autres modules. L'important, c'est de mémoriser que les conditions spéciales d'opération nécessaires pour reproduire une trajectoire ou pour identifier des conditions particulières de fonctionnement lors de la construction du graphe. Ce graphe topologique peut ensuite servir au positionnement de l'agent par rapport à ses trajectoires passées, planifier son trajet et ses actions pour atteindre des buts ou éviter des endroits, et optimiser ou organiser ses connaissances. L'ensemble de ces mécanismes affecte la formulation de recommandations cognitives et le transfert de paramètres internes vers les comportements si c'est nécessaire. Ces mécanismes influencer les motifs, comme il fut indiqué à la section 6.4. 95 viennent aussi Influences sur les motifs Optimisation Motifs, Intentions, Recommandations Formulation de recommandations cognitives et de paramètres internes de comportements Planification Positionnement Recomm. cognitives F I N A L E Construction du graphe Paramètres internes vers le module de comportements Forme topologique Sensations Figure 7.1 7.1.1. Un Comportement d'identification de formes topologiques S É L E C T I O N COMPORTEMENTS Architecture du module de cognition Notes sur l'orientation et la construction de graphe topologique agent qui utilise des capteurs de proximité pour naviguer dans un environnement peut être comparé à un aveugle placé sur une chaise roulante et qui se sert de sa canne à différents angles pour localiser les obstacles qui se trouvent prêt de lui. En examinant la séquence des formes qu'il est en mesure de reconnaître e n cours de déplacement par un tel procédé, il peut se former une représentation interne de la disposition des objets dans son environnement. La problématique de l'agent dans BugWorld est donc similaire. Un estimé de l'orientation semble essentiel pour construire une représentation topologique efficace et performante. Une possibilité est d'exploiter un système de localisation global (GPS) donnant une position dans le plan (x, y ) avec un certain 96 degré de précision pour dégager l'orientation et la position de l'agent lors de sa trajectoire. L'environnement simulé est en mesure de fournir une telle information, mais elle ne convient pas à une mise en oeuvre pratique et réaliste pour des systèmes devant oeuvrer dans des environnements inconnus. Une seconde possibilité est d'exploiter des capteurs supplémentaires pour obtenir une lecture de la rotation ou l'orientation instantanée de l'agent. En pratique, u n compas peut être utilisé (comme le fait Mataric [128, 129]), mais ce dispositif est imprécis et facilement faussé par les sources magnétiques environnantes. Le calcul du différentiel entre la vitesse perçue des roues peut aussi servir à approximer la rotation effectuée. Mais avec l'environnement simulé, la lecture de ces variables est sans erreur et risque problématique de ne consisterait pas correspondre alors à modéliser à une situation le fonctionnement réaliste. La imparfaits de capteurs physiques, ce qui déborde du cadre de la thèse (voir chapitre 4). De plus, u n des objectifs de SIR est de tenter d'exploiter le plus efficacement sensations disponibles pour contrôler de façon intelligente l'agent. possible les L'ajout de capteurs ne fut donc pas une solution retenue. Comme pour l'aveugle, pour pouvoir approximer la rotation à partir de ce qui est perçu, il suffit d'examiner les transitions dans les formes topologiques identifiées. C'est ce principe qui est utilisé par le graphe topologique pour obtenir une indication de la rotation effectuée par l'agent. Cette nouvelle méthode respecte directement la préservation de l'émergence dans l'architecture de SIR car elle est basée sur la perception de l'environnement et des capacités d'actions de l'agent. Par exemple, les variations de la vitesse au cours des déplacements de l'agent sont implicitement considérées par l'examen des séquences de formes topologiques identifiées. L'objectif ici est donc de vérifier si l'agent peut avoir une intelligence de type cognitive et 97 arriver à s'adapter aux différentes situations même si il a une capacité de représentation imparfaite ou imprécise. 7.2. Comportement construction du d'identification graphe de formes perceptuelles pour la topologique Pour la construction du graphe topologique, un comportement d'identification sert à inférer des formes topologiques perceptibles. Le rôle de ce comportement est de fournir une interprétation linguistique de ce qui se passe dans l'environnement à partir de ce que l'agent peut en percevoir à chaque cycle d'exécution. Comme illustré à la figure 7.1, le comportement d'identification de formes topologiques ne fournit pas une sortie acheminée aux actuateurs, mais plutôt une sortie virtuelle paramètre interne) utile pour le module de cognition. (soit u n Son rôle est différent du comportement d'identification de Mataric [128, 129] qui lui sert plutôt à construire directement les noeuds du graphe, intégrant des informations sur la longueur, l'orientation (par mesure d'un compas), et la position sur plusieurs cycles d'exécution. Ce comportement d'identification caractérise par deux états les sensations venant de quatre capteurs, soit ceux en avant, en arrière et sur les côtés, pour inférer une des seize formes topologiques possibles. Le tableau 7.1 présente les formes topologiques identifiables par le comportement d'identification. Il aurait été possible de percevoir 256 formes topologiques différentes si les capteurs en angle avaient été utilisés, mais ceci n'aurait qu'augmenté le niveau de complexité d'identification sans amener une précision supplémentaire utile pour la construction et l'utilisation efficace du graphe topologique. TABLEAU 7.1 FORMES TOPOLOGIQUES IDENTIFIABLES 98 No. État capteur de Forme topologique Gauche Avant Droite Arrière 0 Proche Proche Proche Proche Pris 1 Proche Proche Proche Loin Cul-de-sac avant 2 Proche Proche Loin Proche Cul-de-sac gauche 3 Proche Proche Loin Loin Coin gauche à tourner 4 Proche Loin Proche Proche Cul-de-sac derrière 5 Proche Loin Proche Loin Corridor 6 Proche Loin Loin Proche Coin gauche tourné 7 Proche Loin Loin Loin Côté gauche 8 Loin Proche Proche Proche Cul-de-sac droite 9 Loin Proche Proche Loin Coin droit à tourner 10 Loin Proche Loin Proche Perpendiculaire 11 Loin Proche Loin Loin Face à un obstacle 12 Loin Loin Proche Proche Coin droit tourné 13 Loin Loin Proche Loin Côté droit 14 Loin Loin Loin Proche Accotté à un mur 15 Loin Loin Loin Loin Rien L'évaluation du comportement d'identification s'effectue à partir des sensations fuzzifiées, mais utilise un mécanisme d'inférence binaire qui consiste à évaluer si u n repère se trouve ou non dans chacune des quatre directions considérées. L'utilisation de sensations fuzzifiées permet d'exploiter des variables linguistiques communes au comportement, prend avantage du mécanisme flou de qualification linguistique des sensations, et facilite leurs ajustements au besoin par l'entremise de fichier de définition des fonctions d'appartenance (voir section 4.3.2). Telles qu'illustrées à la figure 7.2, deux variables linguistiques floues sont utilisées pour caractériser présence ou l'absence de repère. la Le paramètre p fixe la limite supérieure de la variable linguistique Proche ainsi que le seuil où le degré de la variable linguistique Loin devient unitaire. Le même principe s'applique pour le paramètre l. 99 m Capteur-i-proche l Figure 7.2 Capteur-i-loin p Capteur i Fonctions d'appartenance pour l'identification de formes Le processus d'inférence utilisé consiste à choisir, pour chacune des quatre directions considérées, la variable linguistique ayant le degré d'appartenance la plus grand comme l'indique la relation (7.1). ÉtatCapteur = arg max( m Proche(Capteuri ), m Loin( Capteuri )) (7.1) La variable linguistique prévalante, soit Proche ou Loin , est convertie en binaire (0 pour Proche , et 1 pour Loin ), et il en résulte 24 ou seize formes identifiables. La valeur sur quatre bits de cette conversion binaire, dans l'ordre présenté des capteurs au tableau 7.1, donne le numéro de la forme identifiée. Ce traitement est équivalent à utiliser seize règles binaires ayant comme antécédents les différentes combinaisons d'états de capteurs et inférant une forme topologique. Un processus flou aurait pu être utilisé en considérant seize règles basées sur ces conditions et en utilisant une défuzzification de type maximum. Mais ceci aurait augmenté la complexité du comportement pour en obtenir le même résultat qu'avec la discrimination binaire employée. Et puisque chaque règle serait assignée à une conséquence différente et que la sortie désirée est un état discret, il était alors inutile de considérer les alternatives issues de l'activation recouvrement entre les fonctions d'appartenance. 100 des règles et des zones de Les paramètres p et l des fonctions d'appartenance doivent être fixés de façon appropriée en fonction des comportements de navigation, principalement ALIGNER et ÉVITER qui sont responsables de garder l'agent proche des surfaces et loin des obstacles. Quelques tests ont dû être réalisés pour arriver à les fixer correctement et pour en tirer des informations utiles, principalement pour approximer les rotations de l'agent à partir des transitions entre les formes topologiques identifiées (comme discuté à la section 7.1.1 et exploité à la section 7.3.2). Lorsque des fonctions d'appartenance similaires pour chacun des capteurs sont utilisées, la meilleure condition de détection de formes survient lorsque p = 60 et l = 40. Pour des valeurs inférieures, la séquence de formes topologiques identifiées caractérisant la perception de l'agent au cours de son déplacement est moins riche en états, car l'agent doit être plus proche des surfaces pour les voir. Ceci occasionne représentation valeurs moins précise des rotations. Pour des une supérieures, l'identification devient très sensible à des obstacles se trouvant assez loin de l'agent. Pour des fonctions d'appartenance non symétriques entre les côtés et les directions avant-arrière, l'identification des formes n'est pas meilleure et occasionne certaines discontinuités lors de rotation. En effet, lorsque l'agent tourne, des formes peuvent être détectées par la perception différente entre les axes avant-arrière et de côtés. Ceci résulte en une diminution de stabilité dans les formes topologiques identifiées lors des rotations. Lorsque l'agent est en mouvement, le comportement d'identification retourne une forme topologique à chaque cycle d'exécution. Son activation est déterminée par le module de situation externe globale (voir section 8.1). La figure 7.3 présente u n exemple de formes topologiques identifiées lorsque l'agent tourne un coin en suivant les contours et en passant prêt d'un obstacle rectangulaire. 101 Côté droit Côté droit Côté droit Côté droit Côté droit Coin à droite à tourner Coin à droite à tourner Cul-de-sac droite Cul-de-sac droite Coin à droite tourné Coin à droite à tourner Coin à droite tourné Coin à droite tourné Côté droit Côté droit Côté droit Côté droit Côté droit Côté droit Côté droit Corridor Corridor Corridor Figure 7.3 7.3. Exemple d'identification de formes topologiques en cours de déplacement Graphe topologique La mémorisation de chaque forme topologique identifiée quantité volumineuse d'information non organisée. résulterait en une Afin de généraliser ce qui fut identifié comme forme topologique et construire à même la perception de l'agent une représentation de sa trajectoire suivie dans son environnement, un graphe topologique est utilisé. Le graphe topologique est un tableau de noeuds liés entre eux par des liens bidirectionnels anticipant l'état du prochain noeud. À même cette représentation est mémorisée les états internes pertinents pour l'agent afin de l'aider dans ses prises de décisions et ses recommandations cognitives. Les noeuds du graphe topologique sont construits au fur et à mesure l'environnement. 102 que l'agent se déplace dans L'algorithme de traitement du graphe topologique tente donc de regrouper efficacement les séquences de formes topologiques. Ces séquences sont caractérisées par des lieux topologiques, soit une forme topologique avec le nombre de cycles où elle fut consécutivement identifiée. Deux types de séquences peuvent être observés: des séquences de formes stables ou continues, associées à une constance dans la trajectoire et dans sa perception (comme lors d'une trajectoire parallèle à un mur droit); et des séquences de formes associées à des transitions perçues dans la trajectoire (en tournant un coin par exemple). Il y a donc deux types de noeuds dans le graphe topologique: un noeud de marque est utilisé lorsqu'un lieu topologique corresponde à un endroit stable dans l'environnement; un noeud de transition est construit à partir des séquences de formes topologiques non valables pour former u n noeud de marque. Pour un noeud de transition, l'analyse des lieux topologiques permettent d'approximer la rotation effectuée par l'agent. La graphe topologique prend la forme d'un tableau de noeuds indicé par leur numéro. Ceci permet d'accéder directement aux noeuds à partir de leur indice, ce qui ne pourrait être considéré si une liste chaînée était utilisée pour sa mise en oeuvre. Les informations mémorisées dans un noeud topologique sont: - l'état topologique, soit la forme topologique identifiée pour un noeud de marque ou l'état inféré pour un noeud de transition; - la longueur, soit le nombre de cycles où des formes topologiques furent utilisées pour construire le noeud; - l'orientation, soit l'approximation de l'orientation de l'agent par rapport à sa trajectoire passée pour un noeud de marque, ou la rotation approximée par u n noeud de transition; - le numéro de trajet, soit un indice pour identifier les noeuds issus d'une même branche dans le graphe topologique; 103 - les liens avec les autres noeuds. Il y a des liens avec les noeuds précédents (type De) et suivants (type Vers ). L'anticipation de l'état topologique ainsi que l'incertitude sur la longueur y sont mémorisées; - le nombre de visites du noeud par l'agent; - l'atteinte d'un but comme une cible (par variation positive du motif JOIE) ou u n point de charge (par la variable interne Chargement (voir section 5.2.6)); - l'occurrence d'un motif. Les motifs DÉTRESSE et DÉCEPTION sont mémorisées avec leur niveau maximum d'excitation observé durant l'intervalle de construction du noeud; - la recommandation (favorable ou non) d'un comportement avec son degré maximum observé durant l'intervalle de construction du noeud. Seuls les comportements CIBLE et FOLIE sont mémorisées. La priorité est donnée à FOLIE car c'est une condition ponctuelle déstabilisante; - la formulation d'une recommandation cognitive particulière; - l'activation, l'identification et la longueur d'une trajectoire planifiée. Ces informations sont utilisées par les différentes composantes du module de cognition. Pour l'instant, les prochaines sous-sections décrivent avec plus de détail la structure et la construction du graphe topologique. 7.3.1. Noeuds de marque Un noeud de marque est défini comme un lieu topologique où l'agent est capable de percevoir une certaine stabilité dans sa position par rapport à son environnement. Ce type de noeud sert à la synchronisation de l'agent dans son graphe topologique, principalement pour délimiter l'occurrence de transition. Il est toutefois possible d'avoir plusieurs noeuds de marque en séquence dans le graphe topologique. Les conditions perceptuelles admissibles pour détecter un noeud de marque sont fonction 104 de la forme topologique et du nombre de formes consécutives identifiées, tel que le présente le tableau 7.2. TABLEAU 7.2 FORMES TOPOLOGIQUES POUR IDENTIFIER LES NOEUDS DE MARQUE Forme topologique Nombre Corridor ≥2 Côté gauche ≥3 Côté droit ≥3 Rien ≥3 Mataric [128, 129] utilise des états topologiques similaires pour désigner un corridor et des murs de côté. Leur détection s'effectue avec l'aide d'un compas. Un seuil définit la longueur minimale des points de repère détectables, soit l'équivalent pour Mataric de la longueur maximale des obstacles dans l'environnement n'étant pas des points de repère. Ici, les seuils sont fonction de la longueur des surfaces constantes par rapport à la grosseur et la vitesse de déplacement de l'agent. 7.3.2. Noeuds de transition Un noeud de transition est construit à partir des lieux topologiques entre deux noeuds de marque. On suppose alors que ce qui est perçu entre des noeuds de marque peut être utile pour caractériser les transitions dans la trajectoire de l'agent. Il n e peut donc pas y avoir deux noeuds de transition de suite. Le traitement effectué pour les construire consiste à analyser les formes topologiques pour en inférer un état topologique de transition et la rotation effectuée par l'agent. Mataric [128, 129] n'utilise pas une telle fonctionnalité car elle exploite plutôt la lecture du compas, et regroupe de telles occurrences dans un seul état désignant des contours irréguliers pour le noeud construit. 105 L'examen des formes topologiques s'effectue par analyse lexicale suivant les principes de compilation [4], en utilisant des expressions régulières pour caractériser l'angle de rotation induit de séquences de formes topologiques. Comme mentionné à la section 4.3.2, des expressions régulières topologiques sont définies dans un fichier externe. Suivant une notation similaire à celle utilisée en compilation [4], les expressions régulières utilisées ici ont la structure suivante: État Rotation = (Forme Opérateur)+ ! Les séquences de formes topologiques considérées dans les expressions régulières sont définies à la droite du symbole '='. On y retrouve un ou plusieurs couples (ce qui est représenté par le signe '+') composés d'une forme topologique et d'un opérateur. Cet opérateur permet de prendre en considération le nombre de fois que la forme topologique fut identifiée consécutivement. La description des opérateurs possibles est donnée au tableau 7.3. La fin de l'expression régulière est désignée par le symbole '!' TABLEAU 7.3 OPÉRATEURS POUR LES EXPRESSIONS RÉGULIERES TOPOLOGIQUES Lettre Description - Une forme topologique + Une forme topologique ou plus ? Zéro ou une forme topologique Les résultats associés à une expression régulière, soit l'état topologique et la rotation induite, se trouvent à la gauche du symbole '='. Le tableau 7.4 présente les différents états topologiques induits possibles pour les noeuds de transition à partir des expressions régulières. Le signe de la rotation est fixé par le type l'expression régulière telle que spécifiée par les indications dans ce tableau. 106 TABLEAU 7.4 ÉTATS TOPOLOGIQUES POSSIBLES POUR CARACTÉRISER UN NOEUD DE TRANSITION # Description Nom 0 Coin interne vers la droite (rotation -) Coin interne droite 1 Coin interne vers la gauche (rotation +) Coin interne gauche 2 Coin externe vers la droite (rotation +) Coin externe droite 3 Coin externe vers la gauche (rotation -) Coin externe gauche 4 Face vers un côté droit (rotation -) Face vers droite 5 Face vers un côté gauche (rotation +) Face vers gauche 6 Tourne 90˚ partant d'un côté droit (rotation -) Tourne 90 droite 7 Tourne 90˚ partant d'un côté gauche (rotation +) Tourne 90 gauche 8 Tourne 180˚ partant d'un côté droit (rotation -) Tourne 180 droite 9 Tourne 180˚ partant d'un côté gauche (rotation +) Tourne 180 gauche 10 Séquence inconnue (rotation nulle) Inconnu Puisque les transitions dépendent des capacités d'actions de l'agent, les expressions régulières topologiques sont influencées directement par la sélection et les règles de contrôle des comportements, principalement ÉVITER, VITESSE, ALIGNER. Elles dépendent aussi du comportement d'identification de formes topologiques dont les paramètres furent ajustées pour l'établissement d'expressions régulières générales possibles. Les expressions régulières topologiques, les plus obtenues empiriquement par l'examen des séquences de formes topologiques identifiées lors de transitions pour différentes conditions de rotation, sont présentées à la figure 7.4. Pour simplifier la présentation, la variable x sert à désigner les conditions droite ou gauche . Coin interne x - 110 = Coin x à tourner + Cul-de-sac x + Coin x tourné - Coin x tourné - Coin x tourne - ! Coin interne x - 90 = Coin x à tourner + Cul-de-sac x + Coin x tourné - Coin x tourné ? ! Coin interne x - 90 = Coin x à tourner + Coin x tourné - Coin x à tourner - Cul-de-sac x + Coin x tourné + ! 107 Coin interne x - 80 = Coin x à tourner + Coin x tourné + Coin x à tourner + ! Coin interne x - 50 = Coin x à tourner + Côté x - Coin x à tourner + ! Coin externe x - 110 = Rien - Côté x + Rien + ! Coin externe x - 100 = Rien - Côté x - Rien - ! Coin externe x - 90 = Rien - Côté x - ! Face vers x - 90 = Face + Côté x + ! Face vers x - 90 = Face + Corridor - Côté x + ! Face vers x - 45 = Face - Côté x - ! Tourne 180 x - 180 = Coin x tourné - Accoté à un mur - Coin x tourné - ! Tourne 90 x - 90 = Coin x tourné - Accoté à un mur + ! Figure 7.4 Certaines Expressions régulières topologiques de ces expressions régulières se distinguent seulement par la considération de plus de formes topologiques, reflétant une rotation plus accentuée de l'agent. c'est le cas par exemple des expressions Coin interne x - 110 et Coin interne x - 90, ainsi que toutes les expressions régulières de type Coin externe . On peut aussi s'imaginer la trajectoire empruntée par l'agent lors de certaines transitions e n consultant les expressions régulières pour Tourne 180 x et Tourne 90 x. La formulation linguistique des formes topologiques identifiées lors de transition facilite de beaucoup la compréhension des expressions régulières topologiques ainsi que leur conception. Lors du traitement, les expressions régulières sont examinées par un analyseur lexical. Pour chaque forme topologique identifiée durant une période de transition, l'analyseur lexical examine chacune des expressions régulières actives pour vérifier si la forme correspond à celle définie dans l'expression régulière à sa présente position d'évaluation. Si ce n'est pas le cas, l'expression régulière est éliminée et n e peut être évaluée lors de prochaines analyses pour le même noeud de transition. L'évaluation parallèle. des expressions Dès qu'une régulières expression se fait donc de façon régulière 108 est complètement incrémentale observée, et l'état topologique associé est mémorisé si le niveau de priorité de l'expression régulière est supérieur à celui d'un résultat déjà mémorisé s'il y a lieu. Les priorités sont définies selon l'ordre de présentation des expressions régulières dans le fichier de définition. Si aucune expression régulière n'est complétée à la fin de la transition, celle qui est la plus prêt de l'être (et en respectant leur priorité) est choisie par défaut. Si aucune expression régulière n'est vérifiée durant la période de construction du noeud de transition, la rotation résultante est 0 et l'état du premier lieu topologique est utilisé pour caractériser le noeud de transition (pour aider le positionnement éventuel avec les noeuds de marque très petites selon les limites du tableau 7.2). Cette opération est valide si elle n'entraîne pas la création invalide d'une noeud de marque. Sinon, l'état Inconnu est utilisé. Enfin, le mécanisme d'analyse lexicale topologique affiche certaines similitudes avec l'approche de Brooks [38]. Chaque expression régulière peut être perçue comme un comportement qui réagit à des formes topologiques. Ces "comportements" lexicaux sont évalués en parallèle et leurs résultats suivent un mécanisme de priorité exclusive en sortie. Ceci permet de respecter l'hypothèse d'émergence au niveau des noeuds de transition créés. 7.3.3. Description des liens Les noeud sont inter-reliés entre eux par des liens bidirectionnels permettant d'accéder aux noeuds voisins précédents (par les liens de type De) et suivants (par les liens de type Vers ). Dans la mise en oeuvre actuelle, un noeud a à sa disposition u n maximum de quatre liens dans chacune de ces directions. Deux paramètres importants sont associés à un lien. Le premier est l'anticipation de l'état topologique du noeud lié. Cette anticipation permet au graphe topologique d'être réversible, soit d'être parcouru en sens inverse des trajectoires mémorisées 109 dans ses noeuds. Deux états caractérisent l'anticipation du lien: direct si l'état anticipé doit être le même que celui du noeud; et bivalent dans le cas contraire. Le tableau 7.5 présente les états topologiques considérés comme bivalents (les correspondances sont réciproques). Lors de la construction d'une branche dans le graphe topologique, les liens de type Vers ont une anticipation directe, tandis que ceux de type De ont une anticipation bivalente. L'état topologique d'un noeud est toujours tirée des formes topologiques perçues, et l'anticipation permet de prendre en considération le sens d'évaluation des noeuds dans le graphe pour assurer le positionnement efficace de l'agent (voir section 7.4). Différentes situations peuvent survenir lors de la création de boucles dans le graphe topologique lorsque l'agent arrive à se localiser par rapport à des lieux déjà visités, et l'anticipation sert à bien identifier les conditions de branchement. TABLEAU 7.5 ÉTATS TOPOLOGIQUES ET LEUR BIVALENT État topologique Bivalent Côté droit Côté gauche Corridor Corridor Rien Rien Coin interne droit Coin interne gauche Coin externe droit Coin interne gauche Face vers droite Face vers gauche Tourne 90 droite Tourne 90 gauche Tourne 180 droite Tourne 180 gauche Le second paramètre est l'incertitude. Les expérimentations ont permis d'identifier que l'état topologique identifié pour un même endroit peut ne pas toujours avoir une longueur identique selon l'angle d'arrivée et le déplacement de l'agent vers cet endroit. Il est possible cependant d'extraire des incertitudes à partir des lieux topologiques identifiées entre les noeuds de marque et les noeuds de transition. 110 Les séquences de lieux topologiques présentées au tableau 7.6 permettent d'initialiser l'incertitude des liens entre les noeuds de marque et les noeuds de transition (du noeud A vers le noeud B). L'incertitude considérée correspond au nombre de cycles associés au lieu topologique de ce tableau ne pouvant être un noeud de marque. Dans les autres cas où aucune incertitude ne peut être établie, l'incertitude est considérée comme unitaire. Les incertitude utilisées sont alors déterminées en fonction de ce qui est perçu des interactions de l'agent avec l'environnement, ce qui préserve l'hypothèse d'émergence dans l'architecture de contrôle proposée. Les mesures d'incertitudes aident le positionnement de l'agent par rapport aux endroits mémorisés dans le graphe topologique. TABLEAU 7.6 SÉQUENCES DE LIEUX TOPOLOGIQUES POUR L'INCERTITUDE 7.3.4. Lieu topologique à la fin d'un Lieu topologique au début d'un noeud A noeud B Côté x Coin x à tourner Coin x tourné Côté x Noeuds tampons Le graphe topologique est formé d'un nombre limité de noeuds. Lorsqu'un nouveau noeud doit être choisi et que le graphe topologique est initialement vide, l'indice est choisi en ordre chronologique jusqu'à ce que la limite supérieure du tableau est atteinte. Ceci permet de mieux suivre la séquence de noeuds construits lors de la trajectoire de l'agent. Ensuite, l'indice du dernier noeud éliminé si disponible ou celui du premier noeud libre en partant de l'origine du tableau est sélectionné. Mais lorsque le graphe topologique est plein ou que l'agent désire exploiter son graphe sans construire de nouveaux noeuds (tel que dicté par le motif EXPLOITER), l'agent doit quand même arriver à s'y localiser. Pour y arriver, trois noeuds tampons 111 sont mis à sa disposition. Ces noeuds possèdent les mêmes caractéristiques que les autres noeuds, sauf qu'ils ne peuvent avoir des liens permanents avec les noeuds propres au graphe topologique. Ils servent uniquement pour localiser l'agent par rapport aux endroits mémorisés dans son graphe topologique. Une fois les trois noeuds initialisés, le moins récent est utilisé pour construire le nouveau noeud. Lorsque l'exploitation de l'environnement est reprise, les noeuds tampons sont laissés de côté pour permettre la construction de nouveaux noeuds dans le graphe topologique. 7.3.5. Algorithme de construction du graphe Pour une meilleure compréhension des mécanismes utilisés et de leur utilisation lors de la construction du graphe topologique, la figure 7.5 résume le traitement suivi par l'algorithme général de cette composante du module de cognition qui est responsable de l'organisation des formes topologiques identifiées en des noeuds de marque ou de transition, et de les lier de façon appropriée. - SI la forme topologique perçue est similaire à la forme topologique précédente: - Incrémente le compteur du lieu topologique - SI le lieu topologique en cours de construction est admissible pour un noeud de marque ET qu'une analyse lexicale est en cours: - Terminer l'analyse lexicale; - Construire le noeud de transition selon le résultat de l'analyse lexicale; - Initialiser les liens avec le noeud précédent et le prochain noeud. - SINON: - Si le lieu topologique identifié correspond à un noeud de marque: - Construire le noeud de marque; - Initialiser les liens avec le noeud précédent et le prochain noeud; - SINON: - Activer l'analyseur lexical. 112 Figure 7.5 Étapes pour la construction du graphe topologique La figure 7.6 présente le graphe topologique résultant des formes topologiques perçues de la figure 7.3. Les noeuds sont identifiés par leur état topologique, leur longueur et leur orientation. Il est possible d'y remarquer trois noeuds de marque et un noeud de transition. Le noeud de transition est obtenu par analyse lexicale selon la deuxième expression régulière de la figure 7.4 identifiant une rotation interne de 90°. L'orientation initiale considérée est de 0°. Les liens pleins sont de type Vers et les liens en pointillé sont de type De. L'anticipation est représentée sur ces liens avec l'incertitude. L'anticipation directe est représentée par l'indice D, tandis que l'anticipation bivalente est représentée par l'indice B. Les incertitudes de valeurs 2 viennent des conditions spécifiées au tableau 7.6. Enfin, le noeud vide correspond au noeud en construction. Côté droit 5, 0° B,1 D,2 Coin interne droit 8, -90° Figure 7.6 D,2 B,1 Côté droit 7,-90° D,1 Corridor 3, -90° B,1 Exemple de graphe topologique 113 D Côté droit Côté droit Côté droit Côté droit Côté droit Coin à droite à tourner Coin à droite à tourner Cul-de-sac droite Cul-de-sac droite Coin à droite tourné Coin à droite à tourner Coin à droite tourné Coin à droite tourné Côté droit Côté droit Côté droit Côté droit Côté droit Côté droit Côté droit Corridor Corridor Corridor 7.4. Positionnement dans le graphe topologique Pour que le graphe topologique soit utile, il doit lui être possible d'indiquer quand l'agent se trouve à des endroits déjà visités et mémorisés dans le graphe. Pour y arriver, Mataric [128, 129] considère l'état topologique, l'orientation donnée par le compas, la longueur approximative et un estimé de position (x, y). Cet estimé est construit selon le vecteur d'orientation obtenu du compas et en supposant u n déplacement à vitesse constante. Lorsqu'un point de repère est détecté, ces paramètres sont comparés à tous les noeuds du graphe et une correspondance peut ou non être établie avec un seul noeud. Si la position dans le graphe est connue lors de cette détection, le noeud de position propage son espérance aux noeuds voisins selon le sens de déplacement dans le graphe pour servir d'indice contextuel et faciliter la correspondance. La combinaison de l'espérance et de l'estimé de position assure une distinction unique des points de repère. des comportements qui travaillent Mataric considère enfin les noeuds comme en parallèle et desquels émergent une représentation. L'algorithme de positionnement utilisé par le module de cognition diffère de l'approche de Mataric. Tout d'abord, aucun estimé de position n'est utilisé pour la localisation dans le graphe topologique. L'utilisation d'un estimé de position est une condition très stricte affectée par les erreurs passées, et elle manque de réalisme par rapport au L'algorithme raisonnement qualitatif sur considère plutôt la similitude la topologie sur une de séquence l'environnement. de trois noeuds consécutifs. Trois noeuds s'avèrent un bon compromis entre l'horizon de localisation et la complexité de la recherche et du traitement pour le positionnement. viennent définir le contexte cognitif de traitement. Ils La similitude est établie e n fonction de leur état, leur anticipation, leur longueur et parfois de leur orientation. L'orientation est un critère à utiliser avec précaution ici car elle est sujette aux 114 imprécisions et aux limitations propres à l'utilisation d'une analyse lexicale topologique pour la déterminer. Ainsi, une erreur d'approximation risque aussi de se propager dans resynchroniser les noeuds subséquentes du graphe, le positionnement dans le graphe. rendant L'orientation difficile de peut toutefois s'avérer utile pour la discrimination de séquences de noeuds identiques de par une reproduction de séquences pour des endroits toutefois différents de l'environnement. L'orientation est donc utilisée sous certaines conditions. De cette façon, la considération de similitudes sur une séquence de noeuds tente de trouver une position unique dans le graphe sans utiliser un estimé de position. Toutefois, l'unicité des noeuds par rapport à un endroit dans l'environnement n'est plus conservée. Une attention particulière fut portée sur ces possibilité pour tenter d'en limiter les inconvénients. Enfin, une dernière différence avec Mataric est que les noeuds ne sont pas considérés comme des comportements, et le positionnement s'effectue par une recherche séquentielle en fonction des conditions propres aux trois derniers noeuds traités par le module de cognition. Ces trois derniers noeuds caractérisent ce qui fut récemment perçu par l'agent (analogue à sa mémoire à court terme), et trois situations peuvent être considérées de ces noeuds: - l'agent ne sait pas où il se trouve par rapport à une trajectoire passée. Les trois derniers noeuds sont alors tous des nouveaux noeuds avec un seul lien entre eux, et il faut alors rechercher dans tout le graphe topologique une séquence de noeuds qui leur sont similaires; - l'agent sait où il se trouve par rapport à sa trajectoire passée. Le noeud le plus récent est nouvellement construit, et le noeud précédent est lié à plusieurs noeuds. Il est alors possible de vérifier la similitude du noeud récent avec les noeuds liés au noeud précédent; - l'agent sait approximativement où il se trouve par rapport à sa trajectoire passée. Les deux noeuds les plus récents sont nouveaux, et il est encore possible de se 115 servir du troisième noeud pour localiser la recherche dans le graphe topologique. Ces trois situations se succèdent en fonction des similitudes établies. Tout d'abord, lorsqu'une séquence de noeuds similaires est trouvée après une recherche dans tout le graphe, les noeuds récents sont éliminés en prenant soin de compléter la boucle dans le graphe et de remonter le plus loin possible pour éliminer les noeuds similaires précédent la séquence. L'agent se trouve alors à être situé par rapport à une trajectoire passée, et il est alors possible de comparer les nouveaux noeuds construits avec les noeuds à cette position dans le graphe topologique. Ceci se répète jusqu'à ce qu'une divergence se manifeste. Une nouvelle branche est alors initialisée dans le graphe. Ensuite, si le nouveau noeud ne peut arriver à être localisé dans le graphe, alors l'agent perd sa référence par rapport à une trajectoire passée et la recherche sur tous les noeuds du graphe doit alors être reprise. de noeuds, les recommandations informations de pertinentes comportements et les comme les Lors de l'élimination buts, recommandations préservées (s'ils existent et s'ils sont jugées utiles). les motifs, cognitives les sont L'anticipation et l'incertitude pour les nouveaux liens sont aussi initialisées correctement. Enfin, le nombre de visite des noeuds similaires trouvés est incrémenté après l'élimination des noeuds récents associés. Les prochaines sous-sections décrivent le traitement réalisé pour chacune de ces trois situations, suivi de l'influence de cette composante du module de cognition sur les motifs de l'agent. 7.4.1. Positionnement lorsque l'agent ne sait pas où il se trouve par rapport à une trajectoire passée Cette condition survient lorsque l'agent s'engage dans un nouveau milieu ou qu'il n'arrive plus à se situer par rapport à une trajectoire préalablement mémorisée. L a séquence de noeuds topologiques construits suit alors la forme d'une branche unique 116 identifiée par un numéro de trajet, jusqu'à ce qu'une séquence de trois noeuds similaires soit trouvée. Pour pouvoir se situer par rapport à une trajectoire passée, une recherche sur tous les noeuds initialisés du graphe est effectuée, tentant d'identifier une séquence de trois noeuds consécutifs présentant des similitudes avec les trois noeuds récemment construits. Étant donné que cette recherche peut demander un temps de calcul important selon la grosseur du graphe topologique, elle doit donc être réalisée seulement qu'en temps opportun. En premier lieu, une recherche est permise seulement lorsqu'un nouveau noeud est construit, et que la séquence des trois noeuds les plus récents soit formée d'au moins deux noeuds de marque. Cette dernière contrainte assure une meilleure stabilité des similitudes détectées. Un troisième critère permet la recherche lorsque l'agent croit avoir réalisé un déplacement rotatif couvrant 360°. L'agent doit nécessairement effectuer une telle rotation avant de pouvoir croire qu'il se trouve à des endroits déjà visités. Ceci permet de limiter les difficultés entourant des séquences de noeuds similaires qui représentent des endroits différents de l'environnement. Lorsqu'il existe des boucles dans le graphe topologique, cette condition n'est requise que pour évaluer les similitudes avec les noeuds d'une même branche. Il reste cependant que cette condition est aussi sujette aux limitations dans l'approximation de l'orientation par analyse lexicale topologique. Si ces conditions sont vérifiées, la recherche débute en cherchant une similitude entre le noeud le plus récent et les autres noeuds du graphe. La similitude entre deux noeuds est évaluée à partir de l'état, la longueur (en considérant une incertitude de 1 par noeud pour que l'évaluation soit plus sévère) et la rotation pour les noeuds de transition. Lorsqu'une telle similitude est établie, une fonction réentrante examine les autres similitudes possibles en partant du noeud similaire trouvé, avec les deux autres noeuds récents. L'anticipation des liens est alors considérée. 117 L'anticipation sur les liens indique ce à quoi on doit s'attendre comme similitude d'états en fonction du sens de propagation dans le graphe. Quatre conditions sont considérées comme acceptables: - si la similitude précédente est directe, que la recherche s'effectue par le lien de type De, et que ce lien anticipe le bivalent de l'état pour le noeud lié, alors la similitude entre les deux noeuds évalués doit être directe. Ici, la séquence e n cours d'identification est vérifiée dans le sens où elle fut construite; - si la similitude précédente est bivalente, que la recherche s'effectue par le lien de type Vers, et que ce lien anticipe l'état direct pour le noeud lié, alors la similitude entre les deux noeuds évalués doit être bivalente. Ici, la séquence e n cours d'identification est parcourue en sens inverse de sa construction; - si la similitude précédente est directe, que la recherche s'effectue par le lien de type De, et que ce lien anticipe une correspondance directe avec le noeud lié, alors la similitude entre les deux noeuds évalués doit être directe. Cette condition survient à l'entrée d'une séquence construite par le branchement à des noeuds qui sont parcourus en sens inverse de leur construction; - si la similitude précédente est bivalente, que la recherche s'effectue par le lien de type Vers, et que ce lien anticipe le bivalent de l'état pour le noeud lié, alors la similitude entre les deux noeuds évalués doit être bivalente. Cette condition survient à la sortie d'une séquence construite par le branchement à des noeuds qui sont parcourus en sens inverse de leur construction. Les autres cas sont automatiquement rejetés. Le sens des liens empruntés lors de la construction des séquences est le même sur toute la séquence. Cette restriction limite l'occurrence de conditions complexes d'analyse, et facilite la resynchronisation des états dans le graphe topologique lors d'un branchement. 118 Si une séquence de noeuds similaires aux noeuds récents est trouvée, alors certaines conditions d'invalidité sont vérifiées. Ces conditions sont: - noeud trouvé faisant parti des noeuds récents; - le noeud précédent les trois noeuds récents fait parti des noeuds trouvés, ou i l sert d'intermédiaire entre les deux séquences mais n'est pas caractérisé par une rotation de 180° ou par l'utilisation du comportement FOLIE (ce qui justifie pourquoi le noeud sert de jonction); - un noeud d'état Tourne-x-90 fut mémorisé dans le premier noeud trouvé. condition est utile pour éviter les similitudes possibles entre Cette les noeuds caractérisant le départ de l'agent pour l'exploration (voir section 7.7.1); - la différence de l'orientation est inférieure à un seuil variable, pour les noeuds de marque identifiés comme étant similaires aux noeuds récents et faisant partis de la même branche. Ce seuil est variable pour pallier aux erreurs potentielles dans l'approximation de la rotation de l'agent. Il est fixé au départ à 45° et est augmenté de 5° pour chaque noeud de transition construit dans cette branche du graphe, jusqu'à un maximum de 75°. Ceci permet d'adapter le seuil en fonction de ce qui émerge comme type de noeuds pouvant causer des erreurs d'orientation. L'orientation n'est toutefois plus considérée après le rejet de trois séquences consécutives à cause de l'orientation des noeuds de marque. Si toutes ces conditions sont rencontrées, alors la séquence de noeuds est acceptée. Mais pour pouvoir se localiser avec une certaine assurance topologique, il doit exister qu'une seule de ces séquences. dans le graphe Dans ce cas, il est alors possible d'éliminer les noeuds récents et créer un branchement avec les noeuds similaires trouvés. La figure 7.7 illustre cette étape. Le symbole 'X' représente ce qui est éliminé, et les nouveaux liens créés sont représentés en gras. Si les noeuds demandant de nouveaux liens utilisent déjà leur quatre liens, alors le branchement dans le graphe topologique ne peut avoir lieu. Si ce n'est pas le cas, l'orientation pour 119 les prochains noeuds de marque est alors resynchronisée à celle de la séquence trouvée (selon le type de lien et leur anticipation d'états). Les conditions pour détecter le déplacement rotatif sur 360° sont aussi réinitialisées. Si les noeuds récents sont des noeuds tampons, alors ils sont éliminés comme les autres, mais un lien temporaire est initialisé avec le noeud tampon choisi pour le noeud en construction afin de localiser l'agent dans son graphe topologique. Séquence similaire X [2] [1] [0] [2] [1] [0] X X X Noeuds récents Figure 7.7 Noeud en construction Schéma de branchement lorsqu'une séquence de trois noeuds similaires est identifiée Il est ensuite nécessaire d'examiner s'il est possible de remonter en amont de la séquence trouvée afin de vérifier l'existence de d'autres similitudes. Ceci permet d'éliminer des noeuds similaires qui furent rejetés à cause des conditions de rejet précédentes. L'anticipation des liens est encore considérée pour évaluer la similitude, mais plus l'orientation. L'incertitude des liens est alors considérée comme critère supplémentaire pour la longueur. De plus, un nouveau critère considère le but des noeuds pour établir une similitude dans le cas où le critère de longueur n'est pas respectée. La figure 7.8 représente le schéma de rebranchement mis en oeuvre dans une telle situation. Les noeuds identifiés par le symbole '*' sont les noeuds similaires trouvés. Ce processus est répété tant qu'une seule similitude peut être établie, que des 120 liens existent pour réaliser le branchement, ou qu'une jonction est observée sur la branche des noeuds les plus récents. Nouveaux noeuds récents [2] [0] [1] X * X Figure 7.8 Noeud en construction * X Schéma de branchement lorsqu'il est possible de remonter dans le graphe topologique Enfin, si aucune séquence similaire ne fut acceptée, une dernière condition est examinée. Si le noeud le plus récent est similaire par bivalence au troisième noeud le plus récent, et que le noeud entre les deux est un noeud de transition d'état Tourne x 180, alors le noeud le plus récent est éliminé est des liens sont initialisés comme le montre la figure 7.9. Noeuds récents [2] [1] X [0] X Figure 7.9 7.4.2. Noeud en construction Schéma de branchement pour une rotation de 180° valide Positionnement lorsque l'agent sait où il se trouve par rapport à une trajectoire passée Cette situation survient lorsque seul le noeud le plus récent fut nouvellement construit. Il convient donc de vérifier si une similitude existe avec un des autres 121 noeuds liés au deuxième noeud le plus récent (soit celui identifié par '[1]'). situation est illustrée à la figure 7.10. Cette La similitude est évaluée selon l'état topologique des noeuds, leur longueur, la rotation pour les noeuds de transition, l'incertitude et l'anticipation. La similitude entre les états doit être la même que celle dictée par l'anticipation du lien. compense aussi une divergence nécessaire. Une similitude au niveau au niveau du critère des buts du noeud de la longueur si c'est La recherche s'effectue dans le même sens que les liens entre le noeuds récent '[2]' et le noeud récent '[1]'. Si une seule similitude existe, le noeud le plus récent est éliminé et il est remplacé par le noeud similaire trouvé, dans la mesure où un nouveau lien peut être ajouté pour le noeud similaire trouvé. Noeud en construction Noeuds récents [2] [1] X [0] X * Figure 7.10 Schéma de branchement lorsque le plus récent noeud est similaire à u n noeud déjà visité, selon la position actuelle dans le graphe topologique Le même processus de recherche s'applique si le noeud le plus récent est un noeud tampon. Par contre, au lieu de laisser se former une nouvelle branche dans le graphe, le lien temporaire entre le noeud récent '[1]' et le noeud tampon '[0]' est détruit. La recherche dans le graphe est reprise une fois les trois noeuds tampons réinitialisé. Ce choix rend plus difficile la localisation de l'agent lorsqu'il exploite son graphe topologique, mais simplifie le traitement que nécessiterait la détection de similitude avec un noeud tampon intermédiaire. 122 7.4.3. Positionnement lorsque l'agent sait à peu près où il se trouve par rapport à une trajectoire passée Cette situation survient lorsqu'aucune similitude ne fut trouvée pour le cas présenté à la sous-section 7.4.2, et qu'une nouvelle branche du graphe topologique est en voit de construction. Le procédé ici consiste à vérifier, en partant du noeud récent '[2]', s'il est possible de trouver une seule similitude avec un des noeuds liés à u n noeud lié au noeud récent '[2]'. Le sens de la recherche est la même que celui identifié lors du traitement de la sous-section 7.4.2. La figure 7.11 illustre un tel traitement. Il se crée alors une trajectoire alternative entre le noeud récent '[2]' et le noeud similaire identifié. Les conditions pour établir la similitudes sont les mêmes qu'à la section 7.4.2, sauf pour le but qui est considéré comme un critère incertain. Après la détection d'une similitude, l'orientation et les conditions pour le déplacement rotatif sont réinitialisées. Si aucun lien n'est disponible pour le noeud similaire trouvé, alors le branchement n'est pas réalisé. Enfin, si aucune similitude n'est trouvée, alors au prochain noeud construit il est nécessaire d'entreprendre une recherche dans tout le graphe topologique telle que décrite à la sous-section 7.4.1, pour arriver si possible à positionner l'agent par rapport à sa trajectoire passée. Noeud en construction Noeuds récents [2] [1] X [0] X * 123 Figure 7.11 Schéma de branchement lorsqu'il est possible de se rebrancher dans le graphe topologique après un noeud intermédiaire Une dernière condition est considérée ici lorsqu'une similitude est détectée. Lorsque la similitude s'effectue à un branchement du graphe topologique, il est possible que le noeud intermédiaire soit similaire à un des noeuds qui précède cette jonction. Cette recherche s'effectue dans le sens inverse de celui utilisé pour établir ce branchement. Si une seule séquence existe selon l'état topologique, la longueur et les incertitudes, la rotation pour les noeuds de marque et l'anticipation, alors le noeud récent '[1]' est éliminé. Bien sûr, il faut qu'un lien de type De soit disponible entre le noeud '*' et le noeud '[2]' pour que cette étape se réalise. Pour mieux comprendre, la figure 7.12 illustre la situation en question. [0] X * [1] X X [2] Figure 7.12 Schéma de branchement lorsqu'il est possible de remonter pour éliminer le noeud intermédiaire 7.4.4. Exemple de positionnement De nombreux mécanismes tests furent dans diverses construction d'un graphe réalisés situations. pour valider Un exemple le fonctionnement de résultat topologique et le positionnement de ces impliquant la par rapport à une trajectoire passée est présenté à la figure 7.14. La trajectoire empruntée par l'agent au cours de la construction de ce graphe topologique est illustrée à la figure 7.13. 124 L'agent ne cherche alors qu'à suivre les contours, n'est pas attiré par les cibles et n e ressent pas le besoin de recharger son accumulateur d'énergie. En 600 cycles, l'agent a réalisé un peu plus de trois tours de la pièce. Départ Figure 7.13 Trajectoire suivie par l'agent pour l'exemple de positionnement 125 Figure 7.14 Graphe topologique résultant pour l'exemple de positionnement Avec cette représentation du graphe topologique, les noeuds sont représentés sous forme de cercle avec leur numéro, et ils sont positionnés sur une réplique de l'environnement utilisé. moyenne entre les La position des cercles est déterminée en calculant la coordonnées initiales et finales enregistrées lors de la construction du noeud. Ces coordonnées ne sont utilisées que pour la représentation graphique des noeuds, et non pour le positionnement dans le graphe topologique de l'agent. Pour la figure 7.14, certains noeuds qui étaient superposés l'un sur l'autre (à cause qu'ils n'ont être considérés comme étant similaires) furent redisposés pour mieux percevoir les connexions entre les branches du graphe. Les liens en gras sont des liens de type Vers tandis que les liens de type De sont de grosseur normale. Enfin, les liens en trait plein ont une anticipation directe, tandis que les liens pointillés ont une anticipation bivalente. De la figure 7.14, il est possible de remarquer qu'après le premier tour, une similitude fut décelée permettant de se brancher au noeud 4. L'erreur fut de 20° sur l'orientation. La recherche dans tout le graphe débuta au noeud 21, soit qu'après que l'agent ait cru avoir complété un déplacement sur 360°. Par contre, une divergence s'est manifestée au noeud 29, l'agent n'ayant pu bien détecter le côté vertical supérieur droit comme un point de marque. Le noeud 29 est alors un noeud de transition de longueur 20 initialisé par défaut en un Coin interne gauche de 90°. L a rotation totale de l'agent sur cette période était toutefois de 180°. De plus, le coin externe droit fut abordé en étant un peu plus éloigné de la surface, ce qui permit le rebranchement dans le graphe seulement qu'au noeud 14. Lors du troisième tour, la similitude est préservée jusqu'au noeud 30, et une nouvelle branche est initialisée. L e rebranchement s'effectue à partir d'une similitude établie des noeuds 12 à 14, et après avoir remonté d'un noeud suite à cette similitude, un chemin est établi du noeud 30 au 126 noeud 11. Il est donc possible de constater que malgré les limitations lors de l'approximation de la rotation, l'agent arrive à se localiser efficacement dans le graphe tout en produisant de nouvelles connexions entre les trajets mettant e n évidence des alternatives. La trajectoire se termine au noeud 29. Sur un total de 72 noeuds construits, 33 noeuds mémorisant 247 cycles furent préservés dans le graphe suite au positionnement. 7.4.5. Variation du motif CONFIANCE en fonction du positionnement Comme mentionné à la sous-section 6.4, le motif CONFIANCE est influencé par la capacité de l'agent de se positionner dans son graphe topologique par rapport à ses trajectoires mémorisées. Ainsi, plus il est en mesure d'y arriver, plus il se sent e n confiance dans son environnement et il peut alors agir en conséquence. Cette influence se manifeste à deux fréquences, soit au rythme de création des nouveaux noeuds, et au rythme des cycles. Tout d'abord, le motif CONFIANCE est incrémenté de 30% pour chaque noeud éliminé de par l'acceptation d'une similitude avec un des noeuds du graphe. Si on néglige l'influence de ce motif au rythme des cycles, le facteur de 30% fut choisi pour que CONFIANCE soit pleinement activé après que quatre noeuds soient éliminés. Ceci assure une plus grande certitude sur la localisation de l'agent dans son graphe, afin de pallier à des erreurs potentielles causées par une mauvaise détection de similitudes. Par contre, le motif CONFIANCE est décrémenté de 30% si aucune similitude n'est établie pour le nouveau noeud construit. l'absence de trois noeuds récents De plus, e n ou lorsque les noeuds tampons doivent être initialisés, le motif CONFIANCE est complètement inhibé. Le motif CONFIANCE est aussi influencé au rythme des cycles d'exécution lorsqu'il est possible d'anticiper le prochain noeud. L'agent doit donc être localisé dans le graphe topologique en sachant précisément où il se trouve par rapport à une trajectoire passée. À partir du sens déduit du lien entre les deux noeuds les plus 127 récents, le prochain noeud lié au noeud le plus récent est choisi en fonction du lieu topologique en construction. ayant une recommandation Si plusieurs noeuds répondent à ce critère, un noeud cognitive d'exploration (pour ne pas permettre l'exploration à partir d'endroit où elle fut déjà réalisée), ou faisant parti d'une trajectoire planifiée, est favorisé. Un noeud de marque ne peut être choisi car il est impossible de comparer les formes topologiques directement avec l'état topologique du noeud. Si un noeud peut être choisi, le motif CONFIANCE est incrémenté de 2.5% à chaque cycle jusqu'à la création d'un nouveau noeud. Sinon, il est décrémenté de 2.5% à chaque cycle. De cette façon, le motif CONFIANCE est pleinement activé lorsque l'agent est sûr de sa position dans son graphe topologique et de la validité potentielle du noeud en construction. L'ensemble de ces influences, soit la localisation dans le graphe topologique, l'utilisation anticipative de ces connaissances et l'intégration temporelle de ces états par le motif CONFANCE, assure l'émergence à partir de ce qui est vécu et déduit de l'agent lors de ses interactions avec son environnement. 7.5. Planification à partir du graphe topologique La planification de trajectoires à partir du graphe topologique est nécessaire pour indiquer à l'agent s'il se dirige dans la bonne direction, ou pour reproduire des conditions de fonctionnement lorsqu'il désire atteindre des buts. Les expériences passées peuvent ainsi servir à la réalisation des objectifs dynamiques de l'agent. Mataric [128, 129] arrive à planifier des trajectoires dans son graphe topologique e n utilisant un mécanisme de propagation parallèle d'activation, avec une priorité sur les trajets minimisant le nombre de noeuds et la longueur. Un principe similaire est reproduit pour le graphe topologique présenté dans cette thèse. Les prochaines soussections décrivent le mécanisme de propagation utilisé, les condition permettant la 128 planification et le motif CERTITUDE affecté par cette composante du module de cognition. 7.5.1. La Mécanisme de planification planification d'une trajectoire est réalisée en propageant des niveaux d'activation entre les noeuds du graphe topologique, en partant du noeud le plus récent vers un noeud localisant le but à atteindre. Les buts possibles sont un point de charge, ou une cible qui ne fut pas revisitée lors de l'exploitation du graphe topologique. Pour que le trajet planifié soit le plus optimal possible, la propagation d'activation s'effectue selon les critères suivants: - favoriser le trajet dans le sens actuel du déplacement de l'agent (déterminé par le lien entre les deux noeuds les plus récents); - prendre le chemin le plus court en fonction du nombre de noeuds (selon le niveau d'activation propagé). Si un noeud se voit activé par plusieurs niveaux identiques, la longueur du trajet le plus court sert à choisir le trajet préférable; - éviter les trajets qu'il est préférable de ne pas reprendre pour atteindre un but. Les conditions jugées néfaste pour la planification de trajectoires sont l'occurrence des motifs DÉTRESSE et DÉCEPTION, l'utilisation du comportement FOLIE, des conditions cognitives et topologiques indiquant le demi-tour de l'agent (ceci est implicitement considéré par le processus d'activation, mais une condition explicite est considérée au cas ou des difficultés surviennent lors de l'exécution du demi-tour, ce qui peut être difficile à reproduire), et la nécessité de parcourir un noeud de transition de type Face vers x en sens inverse. Pour pouvoir discriminer les activations dans le sens du déplacement de l'agent, les activations ont un signe défini au noeud de départ. Une activation positive est transmise aux noeuds liés au noeud de départ (soit le noeud le plus récent) et qui se trouvent dans le même sens prioritaire, et négative pour les autres. 129 La propagation s'effectue par une boucle qui identifie tous les noeuds ayant le niveau d'activation à considérer, et qui permet la transmission l'activation à tous les voisins de ces noeuds en fonction des critères précédents. Le processus se termine lorsqu'un noeud de but désiré est trouvé, ou qu'il n'est plus possible d'y propager des activations. De cette façon, le processus d'activation est limité à la grosseur du graphe et n'est pas perturbé par la présence de boucle ou de branche en cul-de-sac (comme c'était le cas pour Mataric [128, 129]). Si une trajectoire existe, les informations retournées sont le sens du trajet à suivre, sa longueur, le nombre de noeuds du trajet et le numéro du noeud associé au but visé. Lorsque le trajet planifié est dans le même sens du déplacement de l'agent, la trajectoire résultante est identifiée en effectuant le trajet inverse à partir des niveaux d'activation et des longueurs. Ceci permet de reproduire des conditions comportementales lorsque l'agent se dirige dans la bonne direction par rapport à son but. -5 -6 -4 -5 5 4 1 -4 -3 -3 3 6 -4 -3 2 -2 a) Branche dans le graphe topologique Figure 7.15 1 Sens actuel 2 b) Boucle dans le graphe topologique Processus d'activation dans le graphe topologique pour planifier une trajectoire La figure 7.15 illustre le principe de fonctionnement du mécanisme d'activation à travers les noeuds du graphe topologique. Les noeuds de départ sont représentés e n gras, et les noeuds d'arrivée sont en relief. représentés à l'intérieur des noeuds. Les niveaux d'activation propagée sont La situation en a) illustre 130 un cas où la planification s'effectue à partir d'une nouvelle branche dans le graphe topologique. Si une trajectoire existe, ceci indique à l'agent qu'il doit faire atteindre l'objectif visé. demi-tour pour Il est possible de remarquer le blocage de la propagation d'activation lorsque les chemins dans le graphe topologique se croisent. La situation b) représente une planification lorsque l'agent sait où il se trouve dans le graphe topologique. Le mécanisme de propagation dans les deux sens avec l'affectation du signe à l'activation du noeud de départ y est illustré. 7.5.2. Conditions permettant la planification Une planification est réalisée suite à la création d'un nouveau noeud et que l'agent ait tenté de se positionner dans son graphe topologique. recherche Puisqu'elle nécessite une par boucle sur tous les noeuds du graphe, la planification doit être effectuée qu'en extrême nécessité telle que dictée par trois types de conditions. Tout d'abord, un but doit être poursuivi par l'agent. Le but le plus prioritaire est l'atteinte d'un point de charge. L'occurrence de ce but est perçu par le module de cognition par la formulation d'une recommandation favorable du comportement RECHARGE par le module de besoins et transmise au module de sélection finale. L'autre but consiste à atteindre une cible, perçu de la même façon mais en considérant le comportement CIBLE. Ce but est poursuivi automatiquement lorsque le motif EXPLOITER est unitaire, indiquant à l'agent qu'il a suffisamment exploré son environnement et qu'il peut maintenant se servir des connaissances acquises pour réaliser sa tâche. L'occurrence de ces buts et leur réalisation s'évaluent au rythme des cycles. Si le trajet planifié vers la cible est trop long pour la quantité d'énergie restante, le motif MANGER est alors incrémenté par une influence cognitive, et le noeud visé est identifié comme ayant un but prioritaire. pour atteindre ce noeud. Après la recharge, une trajectoire est à nouveau planifiée Si cet objectif n'a pu être atteint avant une seconde recharge, il est alors abandonné. 131 Le second type de conditions considère l'état du traitement suite au positionnement dans le graphe topologique. Si des noeuds tampons font encore partis des noeuds récents construits, ou qu'une branche est en cours de construction (une similitude n'a pu être trouvée à la suite du traitement illustrée à la figure 7.10, une planification indiquerait prématurément à l'agent qu'il doit faire demi-tour), alors la planification n'est pas activée. Enfin, le troisième type de conditions est formé des alternatives possibles permettant la planification, soit: - l'occurrence d'un nouveau but; - un nouveau branchement dans le graphe topologique suite au traitement de la composante de positionnement du module de cognition; - le passage d'un niveau de CERTITUDE unitaire à nul, signifiant l'incapacité de l'agent de suivre (ou de reprendre) une trajectoire planifiée; - un trajet planifié indique à l'agent qu'il doit faire demi-tour, mais l'agent n'arrive pas à réaliser ce demi-tour. Ceci permet de suivre l'évolution des conditions jusqu'à ce qu'un action soit prise ou que la situation change. 7.5.3. Variation du motif CERTITUDE en fonction de la planification Le motif CERTITUDE reflète la capacité de l'agent de planifier une trajectoire vers un but donné à partir des connaissances mémorisées dans son graphe topologique. Lorsqu'une trajectoire est planifiée, le niveau de CERTITUDE est à son maximum. Si cette planification indique que l'agent est dans la bonne direction, alors le motif est incrémenté de 12.5% pour chaque nouveau noeud construit qui fait parti de cette trajectoire. Sinon, il est décrémenté d'un même facteur. Par contre, s'il doit faire demi-tour, le motif CERTITUDE est maintenu à un niveau unitaire jusqu'à ce que l'action pour faire marche-arrière soit entamée. Il est alors décrémenté de 12.5%. Une fois le demi-tour complété, le module de cognition considère alors l'agent comme 132 étant orienté dans la bonne direction, et le motif est affecté par la capacité de l'agent à reprendre (car en faisant demi-tour, de noeuds différents de ceux du graphe seront construits) et à suivre la trajectoire planifiée. Le facteur de décrémentation fut choisi pour laisser un intervalle de huit noeuds avant d'inhiber complètement ce motif. Une nouvelle planification risque alors d'être exécutée, comme mentionné à la section 7.5.2. Si aucun trajet n'est planifié ou qu'il n'existe pas trois noeuds récents, alors le motif CERTITUDE est complètement inhibé. Ces facteurs forment les influences cognitives desquelles émerge ce motif. 7.6. Optimisation du graphe topologique Mataric indiqua en [129] que les structures de graphe avec connexions arbitraires et dynamiques peuvent escalader à une pleine connectivité. Le graphe topologique présenté dans cette thèse est sujet à la même limitation. En effet, au cours de l'exploration de son environnement, l'agent peut construire un grand nombre de noeuds et de branches permettant d'y caractériser différents endroits et d'établir des liens entre ces branches. Ceci est encore plus le cas avec l'approche topologique présentée ici car l'unicité des noeuds n'est pas une contrainte considérée. Un mécanisme de sélection des noeuds utiles semble donc nécessaire pour libérer de l'espace-mémoire utilisée par le graphe topologique et optimiser les connaissances qui y sont mémorisées. Un graphe topologique rempli n'est toutefois pas la seule raison d'utiliser un tel mécanisme. L'agent qui arrive à explorer son environnement, à bien caractériser les points de repère topologiques qu'il y perçoit et qui les utilise efficacement pour s'y localiser, peut se sentir apte à exploiter ses connaissances pour l'assister dans la réalisation de ses buts. La détection de ces deux conditions constitue en fait le rôle du motif EXPLOITER décrit à la section 6.4. L'optimisation du graphe topologique est permise lorsque le 133 motif EXPLOITER a atteint un niveau supérieur à 0.9 et inférieur à 1. Cette condition est causée par l'utilisation de tous les noeuds du graphe ou par une longue période d'excitation par le motif CONFIANCE. Le graphe topologique est alors prêt à être exploité, mais avant il est préférable de l'optimiser. Cette optimisation a toutefois lieu une fois que l'agent se soit immobilisé au point de charge (Evans [62] indiqua que le repos peut servir à réorganiser la mémoire). Ceci permet de concentrer les ressources de l'agent à son déplacement et de réaliser la réorganisation de sa mémoire en temps opportun. Trois critères sont utilisés pour discriminer les noeuds utiles de ceux qu'il est préférable d'oublier: - le noeud fut visité plus d'une fois par l'agent lors de son exploration de l'environnement. L'agent avait alors réussi à s'y localiser par la composante de positionnement du module de cognition; - le noeud fait parti d'une trajectoire obtenue par planification entre un noeud localisation un cible et le noeud le plus proche identifiant un point de charge. Cette trajectoire est obtenue à même les mécanismes utilisés planification, et est donc sujette aux mêmes critères de sélection. pour la Le sens prioritaire est donné aux trajets partant du point de charge vers la cible dans le sens où les noeuds furent construits afin de faciliter la reproductibilité du trajet. Les noeuds faisant partis d'un tel trajet, s'il existe, sont préservés. est réalisé pour chacun des noeuds identifiant Ce processus une cible dans le graphe topologique; - le noeud mémorise l'emploi d'une condition cognitive pour l'exploration de l'environnement. Un tel noeud est préservé pour ne pas reprendre l'exploration au même endroit, une fois l'exploitation du graphe terminée. 134 Les noeuds qui ne répondent pas à ces critères sont éliminés, et le nombre de visites pour les autres sont réinitialisés à 1 pour identifier leur sélection et permettre leur oubli lors d'optimisation future s'ils n'étaient alors plus revisités. Ce mécanisme d'optimisation est simple et tient compte de ce qui émergent comme connaissances jugées utiles pour l'agent. De plus, il est activé de façon autonome en fonction des motifs d'introspection internes de l'agent et de ses limitations en espace-mémoire. 7.7. Recommandations cognitives et paramètres internes transmis aux comportements Le module de cognition recommande l'utilisation de comportements dans le but d'orienter l'agent en fonction de ce qu'il a pu dégager comme connaissances sur l'environnement et de ses interactions avec lui. Les recommandations cognitives sont gérées en deux étapes: - examen des conditions permettant la formulation, l'initialisation et le maintien des recommandations cognitives, ainsi que le transfert de paramètres internes aux comportements si nécessaire; - formulation des recommandations cognitives. Contrairement aux autres modules de recommandations, le module de cognition formule des recommandations binaires, soit avec des degrés d'appartenance unitaire ou nul telles que présentés par la relation (7.2). m desc ( Comportement ) = {0|1} m indc (Comportement ) = {0|1} (7.2)! Les influences cognitives sur les comportements s'effectuent à quatre niveaux: - exploration de nouveaux endroits en s'éloignant perpendiculairement à une surface; 135 - effectuer un demi-tour; - recommandations de comportements pour reproduire les conditions lors du suivi d'une trajectoire, ou pour éviter des situations néfastes; - lancer un appel à l'aide. Les prochaines sous-sections expliquent plus en détail chacun de ces influences cognitives. 7.7.1. Exploration par éloignement perpendiculaire à une surface Pour pouvoir aller visiter d'autres endroits dans son environnement et possiblement y trouver des cibles ou des points de charge, l'agent doit s'éloigner des surfaces. La pleine activation du motif EXPLORER indique à l'agent qu'il est prêt à agir en conséquence. Pour y arriver, le comportement TOURNE90 est activé. Pour être utilisé adéquatement, ce comportement demande que l'agent dispose d'un lieu stable et suffisamment long pour lui permettre de s'arrêter et d'avoir une bonne référence pour effectuer la rotation, sans être influencé par des repères aux alentours. Un tel endroit est identifié par l'anticipation de noeuds de marque de type Côté x suffisamment long. Le critère utilisé ici est que la longueur du noeud soit supérieure à huit. Ce noeud ne doit pas avoir déjà servi pour l'exploration afin que l'agent active ces conditions que pour des endroits nouveaux. Dès lors, lorsque l'agent se croit être à la moitié de la longueur de ce noeud, les conditions sont activées pour éloigner l'agent perpendiculairement à la surface. Ces conditions sont la recommandation du comportement TOURNE90, et l'inhibition par indésirabilité des comportements VITESSE et ALIGNER. Ces conditions sont maintenues tant que la forme topologique identifiée diffère de Accotté à un mur ou qu'un maximum de six cycles soit atteint. Cette limite maximale est utilisée pour inhiber ces conditions au cas d'un mauvais déroulement de la rotation. ensuite, tant que la forme topologique identifiée est Accotté à un mur, le comportement ALIGNER continue d'être inhibé 136 pour laisser la chance à l'agent de s'éloigner de la surface. Si le motif EXPLORER tombe à zéro au cours de tout ce traitement, toutes ces conditions sont inhibées pour donner la priorité à d'autres types d'actions de l'agent. L'utilisation de cette règle cognitive est mémorisée en fonction du sens de rotation effectuée dans le noeud e n construction du graphe topologique. Enfin, un noeud de transition de type Tourne 90 x devrait être construit, si tout se passe bien. 7.7.2. Demi-tour Un second type d'actions contrôlé par le module de cognition permet à l'agent de faire demi-tour. Ceci survient suite à une planification ou par la peine activation du motif DÉCEPTION. Le principal comportement impliqué lors de cette opération est TOURNE180. Comme pour TOURNE90, il demande une surface de type Côté pour s'en servir de référence. Lorsque le lieu topologique en construction répond aux critères d'un tel noeud de marque, les conditions pour débuter la rotation sont activées e n recommandant cognitivement l'utilisation de TOURNE180 et en inhibant indésirabilité VITESSE, ALIGNER et CIBLE (pour ne pas être influencé par durant la rotation si ce comportement devient exploitable). Le sens de rotation est initialisé e n fonction du côté pris en TOURNE180 pour effectuer référence, en ajustant les règles une rotation vers l'extérieur du comportement de cette surface. Ces conditions sont maintenues tant que la forme topologique bivalente de l'état de départ n'est pas observée, ou qu'un maximum de dix cycles soit atteint. Si le motif CERTITUDE est placé à une valeur de 0.4 durant cette étape, les conditions sont inhibées car le comportement RECHARGE est alors exploité et il n'est plus alors nécessaire de faire demi-tour (voir section 6.4). L'utilisation de cette règle cognitive est mémorisée dans le noeud créé lorsque les conditions furent initiées. Un noeud de transition de type Tourne 180 x devrait aussi être construit, si tout se passe bien. Enfin, les conditions pour effectuer un demi-tour sont évaluées en priorité avant celle pour s'éloigner 137 perpendiculairement à une surface, ce qui permet d'éviter des conflits potentiels entre les deux. 7.7.3. Recommandations de comportements basées sur ce qui fut mémorisé dans le graphe topologique Une trajectoire mémorisée peut demander l'utilisation de certaines conditions comportementales pour pouvoir la reproduire ou pour éviter des situations qui furent jugées nuisibles pour l'agent. Lorsque l'agent sait bien où il se trouve par rapport à une trajectoire mémorisée dans son graphe topologique, il peut se servir de l'anticipation des prochains noeuds et des informations qui y ont été sauvegardées pour recommander cognitivement des comportements. Deux cas sont considérés par le module de cognition. Premièrement, si le noeud anticipé mémorisa l'existence du motif DÉTRESSE, alors l'agent tente d'éviter que se reproduise les mêmes conditions e n inhibant par indésirabilité cognitive le comportement ALIGNER. On espère alors que cette condition donnera plus de liberté à l'agent pour se sortir d'impasse. La seconde condition permet de reproduire une trajectoire planifiée. Bien que les informations mémorisées dans les noeuds ne permettent pas de relater tout ce qui s'est passé lors de la construction (par exemple, seule mdes maximum est enregistrée, et non sa progression), l'agent peut quand même tenter (car les autres sources de recommandations formulent eux-aussi des recommandations) de s'en approcher e n tentant de reproduire cognitives, les conditions comportementales et en laissant les comportements réagir permettre de formuler par recommandations à l'environnement. de telles recommandations, l'agent CERTITUDE, indiquant qu'il suit bien une trajectoire planifiée. doit être en Pour pleine Si la recommandation d'un comportement particulier fut mémorisée dans le noeud anticipé suivant la position de l'agent dans son graphe topologique, alors elle est formulée par le module de cognition (selon le degré d'activation mémorisé et selon qu'il est favorable ou non 138 d'utiliser ce comportement). Cette condition est valide que pour CIBLE car le comportement FOLIE, qui est lui-aussi un comportement mémorisé dans les noeuds du graphe, sert de condition de rejet lors de la planification de trajectoire (voir section 7.5.1). De plus, si une condition cognitive pour effectuer perpendiculaire à la surface se trouve sur cette trajectoire une exploration planifiée, alors les conditions expliquées en 7.7.1 sont reproduites. Les conditions pour faire demi-tour ne sont pas reproduisibles car elles sont aussi rejetées lors de la planification. 7.7.4. À l'aide La dernière influence cognitive sur les comportements permet à d'extérioriser sa prévision concernant son manque d'énergie prochain. l'agent En effet, l'agent peut comparer le nombre de cycles qui lui reste d'énergie avec le résultat d'une planification de trajet vers le point de charge. De plus, il anticipe automatiquement sa mort s'il ne lui reste plus que pour dix cycles d'énergie. S'il prévoit ne pas pouvoir arriver à un point de charge avant de manquer d'énergie, l'agent manifeste qu'il entrevoit avoir des difficultés à survivre en recommandant l'activation du comportement ALARME. Ces recommandations s'effectue de façon à ce que la couleur de l'agent change répétitivement afin de communiquer un S.O.S. Ceci peut être perçu comme un appel au secours envoyé à tout autre agent susceptible de comprendre son message et de lui porter secours. Malheureusement les expérimentations n'en prévoit pas, et la seule chance de survie de l'agent consiste à atteindre par miracle le point de charge avant de ne plus avoir d'énergie. du S.O.S. est alors arrêtée. 7.8. Avantages et inconvénients du graphe 139 topologique L'émission Les méthodes utilisées par le module de cognition pour l'utilisation représentation topologique démontrent plusieurs avantages. d'une Elles permettent la mise en oeuvre d'une représentation flexible, compacte, réversible, située, adaptée et tolérante aux fautes (causées par le comportement réactif de l'agent, sa perception limitée et les limitations des mécanismes employés). Le traitement réalisé à partir d'une fenêtre de trois noeuds permet de limiter la nécessité de distinguer les endroits en considérant toujours l'orientation comme critère essentiel de discrimination. Un tel critère demanderait qu'elle soit toujours bien synchronisée par rapport au graphe topologique. En considérant plutôt des séquences de noeuds, l'agent arrive à se resituer dans son graphe topologique peu importe son point de départ. Cette situation survient lorsque l'agent reprend l'exploitation de son environnement après que son graphe topologique fut exploité. La réutilisation de graphes topologiques préalablement construits est aussi possible. Par les mécanismes utilisés par le module de cognition, des connaissances émergent à l'interne de ce qui est vécu et identifié de l'externe. Par contre, ces méthodes ne sont pas sans lacunes. Tout d'abord, l'utilisation d'expressions régulières pour inférer la rotation réalisée demande d'avoir définie le plus de transitions possibles. Sinon, des rotations de l'agent ne pourront être bien représentées à l'interne, causant des erreurs d'approximation sur l'orientation des noeuds de marque. Des situations particulières peuvent être difficiles à traiter à cause des limitations à ce niveau, comme les environnements composés que de séquences topologiques similaires (un hexagone par exemple), ou ceux ayant une forme circulaire de rayon très grand (un seul noeud de marque) ou très petit (un seul noeud de transition) par rapport à la dimension de l'agent. De plus, la discrimination des noeuds et le positionnement dans le graphe sans employer des critères stricts (comme des estimés de position) demande des mécanismes plus complexes. La possibilité de représenter amène des endroits identiques par des noeuds différents 140 aussi la construction de branches parallèles qui peuvent causer des difficultés à l'agent pour se positionner efficacement. Enfin, les limitations propres au positionnement et l'incapacité de l'agent d'identifier une même cible peuvent entraîner des difficultés pour évaluer l'atteinte d'un but, surtout si la zone de cible est très grande (une même cible peut alors être représentée par plusieurs noeuds). Des améliorations au niveau perceptuel et au niveau des mécanismes permettre des analyses cognitives plus poussées pourraient arriver lacunes. pour à limiter ces Mais l'objectif est plutôt d'arriver à faire le mieux possible et le plus simplement possible avec ce que l'agent a comme capacités d'actions, de perception, de traitement et de décision. L'agent doit donc être en mesure de s'adapter à ses propres limitations. 141 8. CARACTÉRISTIQUES DES MODULES DE SITUATION EXTERNE GLOBALE, DE BESOINS ET DE SÉLECTION FINALE Ce chapitre présente la mise en oeuvre des modules utilisant la logique floue pour la formulation de recommandations et la sélection des comportements. Ces modules sont le module de situation externe globale, le module de besoins et le modules de sélection finale. 8.1. Description situation du mécanisme externe et des règles utilisées par le module de globale Pour choisir des comportements en fonction des conditions environnementales rencontrées, le module de situation externe globale utilise des règles travaille à partir des sensations fuzzifiées. floues et Ce module considère uniquement les informations obtenues des sensations environnementales pour dicter le choix de comportements. Ces règles de recommandations indiquent par un degré d'appartenance flou la désirabilité ou l'indésirabilité de comportements en fonction des antécédents considérés. Après la fuzzification (relation (5.1)), les étapes de traitement pour ce module sont: 1) Inférence des règles r du module de situation externe globale s, relation (8.1), selon l'opérateur de conjonction floue ƒ minimum. Cette opération est répétée pour toutes les règles définies pour le module de situation externe globale. [ ] m ind (Comportement ) = ƒ[m A ( Sensation )] m desrs (Comportement ) = ƒ m An ( Sensation) rs (8.1) n 2) Union des conséquences, relation (8.2), par l'opérateur de disjonction floue ⊕ maximum. Cette opération consiste à unifier 142 les recommandations favorables (désirabilité) ou défavorables (indésirabilité) pour chacun des comportements traités par le module. [ ] m ind ( Comportement ) = ⊕[mind (Comportement )] m dess (Comportement ) = ⊕ m dess (Comportement ) s (8.2) s La figure 8.1 présente les règles et les fonctions d'appartenance employées par ce module. On retrouve ici l'aspect émergence de la situation car la sélection de comportement se fait en fonction de ce qui est perçu de l'environnement par les recommandations formulées en parallèle par ses règles, sans avoir été explicitement planifiée. La première règle sert à recommander l'utilisation du comportement URGENCE à partir des mêmes variables linguistiques associées aux capteurs avants de proximité et utilisées par ce comportement. purement réactif. Ceci fait d'URGENCE un comportement Les deuxièmes et troisième règles servent à l'approche d'un obstacle détecté à l'avant. La priorité est donnée au comportement ÉVITER. Le comportement CIBLE est alors inhibé, tandis que les comportements VITESSE et ALIGNER sont recommandés en l'absence de cette condition. Ce comportement n'est pas aussi réactif que URGENCE car une seule variable d'entrée commune avec ÉVITER est utilisée pour l'activer (soit le capteur avant), mais par une variable linguistique différente. Deux remarques doivent être faites concernant la variable linguistique Obstacle- avant concernant l'activation de ÉVITER. Tout d'abord, cette variable inclut une condition activant le comportement URGENCE. Ceci permet une action combinée de ces deux comportements, mais une plus grand attention doit être portée au niveau du recouvrement des variables linguistiques utilisées par ces comportements (voir figures 5.4 et 5.5). Ensuite, Obstacle-avant inclut aussi la variable linguistique Proximité-avant utilisée par ÉVITER. Ceci permet d'exploiter ÉVITER avec ses capteurs en angle à l'approche d'un coin lorsque l'agent suit le contour d'une pièce. 143 Mais si rien n'est perceptible par ces capteurs, alors aucune réaction ne sera fournie par le comportement dans la zone morte incluse Proximité-avant . dans Obstacle-avant mais exclue de Ces mécanismes sont nécessaires pour une gestion efficace de la transition et des conflits possibles entre ces comportements. m 1 Obstacle-avant 0.5 Danger-avant 0 m 0 1 10 20 0 0 1 10 Immobile 0.5 0 40 50 60 Capteur avant Danger-avant-x 0.5 m 30 20 30 40 50 60 Capteur avant x Quasi-immobile 0 2 4 6 8 1 m 10 Vitesse Immobile-rotation 0.5 -2 m -1.5 -1 -0.5 0 0 1 1 1.5 2 Lecture rotation Charge-visible-x 0.5 0 0.5 0 Figure 8.1 40 80 !!<Danger> !!SI !Danger-avant !!OU !Danger-avant-droite ! !!OU !Danger-avant-gauche ! !!ALORS!URGENCE ! !<Obstacle> !!SI !Obstacle-avant ! !!ALORS!ÉVITER !!ET!!NON (CIBLE) !<Normal> !!SI !NON (Obstacle-avant) ! !!ALORS!VITESSE !!ET!!ALIGNER !<Identification de formes> !!SI!NON (Immobile-vitesse) !!OU!NON (Immobile-rotation) !!ALORS !IDENTIFICATION !!!!!!!!!!!!!!!!!FORME TOPOLOGIQUE !<Chargement> !!SI Quasi-immobile !!ET Charge-visible-gauche !!ET Recharge-visible-droite !!ALORS NON (ALIGNER) 120 160 200 Détecteur x point de charge Règles et fonctions d'appartenance utilisées par le module de situation externe globale Pour revenir à la figure 8.1, la quatrième règle du module de situation externe globale sert à activer le comportement d'identification de formes (défini à la section 7.2) tant que l'agent est en mouvement (comme perçu par sa vitesse et sa rotation). 144 Enfin, la cinquième règle sert à inhiber ALIGNER aux alentours du point de charge lorsque l'agent est presqu'immobilisé (soit lors de son départ ou de son arrivée). Ceci facilite le positionnement de l'agent au point de charge ainsi que la reprise de sa trajectoire, surtout lorsque le point de charge se trouve dans un coin de la pièce. 8.2. Description du mécanisme et des règles utilisées par le module de besoins Pour que l'agent puisse jouer son rôle dans l'environnement, il doit gérer de façon efficace ses besoins. Trois types de besoins ont été considérés dans les expérimentations avec BugWorld: le besoin physiologique de garder l'accumulateur d'énergie chargé, le besoin de sécurité pour éviter les conditions nuisibles et assurer le bon fonctionnement de l'agent dans l'environnement, et le besoin d'accomplissement qui consiste ici à atteindre des cibles. Ceci rejoint l'interprétation de Maslow qui suggèrent l'utilisation de motivations physiologiques (motivations intrinsèques ne pouvant rester insatisfaites très longtemps [138] et qui doivent être hiérarchisées à l'interne), de sécurité (motivation intrinsèque), et de réalisation (motivation externe) [127]. Ce module vient donc choisir les comportements permettant d'assurer la satisfaction de ces besoins. D'une façon très similaire au module de situation externe globale, le module de besoins utilise des règles floues évaluées en parallèle pour recommander l'utilisation ou non de comportements. utilisés au niveau La différence est que des motifs sont principalement de ces règles. Les motifs arrivent ainsi à influencer la recommandation de comportements, et les sensations sont utiles pour coordonner ces choix. Les étapes de traitement sont: 145 1) Inférence des règles r du module de besoins b, relation (8.3), selon l'opérateur de conjonction floue ƒ minimum. Cette opération est répétée pour toutes les règles définies pour le module de besoins. [ ] (Comportement ) = ƒ[m A ( Motif |Sensation )] m desr b ( Comportement ) = ƒ m An ( Motif | Sensation ) m indr b (8.3) n 2) Union des conséquences, relation (8.4), par l'opérateur de disjonction floue ⊕ maximum. Cette opération consiste à unifier les recommandations favorables (désirabilité) ou défavorables (indésirabilité) pour chacun des comportements traités par le module. [ (Comportement ) = ⊕[m ] (Comportement )] m desb ( Comportement ) = ⊕ m desb (Comportement ) m indb indb (8.4) La figure 8.2 présente les règles et les fonctions d'appartenance employées par ce module. L'émergence est préservée ici car ces règles réagissent aux conditions qui surviennent de par les motifs et les sensations en visant l'atteinte des besoins associés. Les trois premières règles servent à la gestion des comportements lorsque le désir de manger se fait sentir. La première sert à la gestion des priorités entre les comportements (on remarque que l'exploration avec TOURNE90 est alors inhibée). La seconde laisse le contrôle de la vitesse au comportement RECHARGE à l'approche d'une point de charge, et permet aussi d'éviter la reproduction de conditions de DÉTRESSE lorsque l'agent arrête de se déplacer pour se recharger. La troisième inhibe ALIGNER pour ne pas perdre de temps à s'aligner par rapport à la surface. Le désir de se recharger existant alors, il est plus important que l'agent se concentrer davantage à l'atteinte du point de charge perçu. 146 m 1 Désir-recharge-existe 0.5 0 m 0 1 0.2 0.4 0.6 Détresse-existe 0.5 0 m Détresseimportante 0 0.2 0.4 0.6 1 Joie-faible m 0 0.2 0.4 0.6 0.8 1 Joie 1 Chargeproximité-x 0.5 0 0.8 1 Détresse Joiegrande 0.5 0 0.8 1 Manger Charge-visible-x 0 40 80 120 160 200 Détecteur x point de charge x ! !<Désir-manger> !!SI !Désir-recharge-existe !!ALORS!RECHARGE !!ET!!NON (CIBLE) !!ET!!NON (FOLIE) !!ET !!NON (TOURNE90) ! !<Point-de-charge-approche-x> !!SI !Désir-recharge-existe !!ET !Charge-visible-x ! !!ALORS!NON (VITESSE) ! !<Point-de-charge-proximité-x> !!SI !Désir-recharge-existe !!ET !Charge-proximité-x ! !!ALORS!NON (ALIGNER) ! !<Bloque> !!SI !Détresse-existe ! !!ALORS!DÉGAGE !!ET!!ALARME !!ET!!NON (ALIGNER) !<Problème> !!SI!Détresse-importante !!ALORS!NON (ÉVITER) !!ET!!NON (CIBLE) !!ET!!NON (FOLIE) !<Accomplissement> !!SI !Joie-faible ! !!ALORS!CIBLE !<Heureux> !!SI!Joie-grande !!ALORS !FOLIE !!ET!!NON (VITESSE) !!ET!!NON (ALIGNER) Figure 8.2 Règles et fonctions d'appartenance utilisées par le module de besoins Les quatrième et cinquième règles servent en cas de détresse pour activer DÉGAGE et ALARME (signalant alors l'état de détresse de l'agent par la modification de sa couleur) tout en inhibant des comportements jugés problématiques en fonction du niveau de DÉTRESSE observé. L'exploitation de DÉGAGE devrait résulter en un effet neutralisateur sur les causes du motif DÉTRESSE, provoquant lui-même son extinction. 147 Le comportement ALIGNER est inhibé car il est fréquemment à l'origine des conflits entre comportements, et que la priorité de l'agent n'est plus alors de suivre les contours mais bien de se sortir d'impasse. Si le motif DÉTRESSE persiste à augmenter, alors d'autres comportements sont inhibés pour faciliter le travail de DÉGAGE. Les deux dernières règles sont influencées par la JOIE. Un faible niveau de JOIE active le comportement CIBLE. Il faut remarquer que la fonction d'appartenance Joie-faible est placée de telle sorte que l'atteinte d'une cible inhibe la recommandation de CIBLE, car le motif JOIE est alors incrémenté de 30% (voir section 6.3). Si par contre le niveau de JOIE est très élevé, l'agent sent le besoin de manifester recommandant l'utilisation du comportement FOLIE. cet état e n Les comportements VITESSE et ALIGNER sont alors non recommandés pour laisser libre cours au comportement FOLIE et pour éviter les conditions de DÉTRESSE associées à VITESSE. Une telle fonctionnalité peut sembler frivole, mais elle sert ici à provoquer une désorientation de l'agent par rapport à son environnement (pour vérifier la robustesse des mécanismes du module de cognition). L'activation de FOLIE provoque sont inhibition d'exécution consécutifs, comme expliqué à la section 6.3. après huit cycles Enfin, il est possible de remarquer que la recherche de cibles s'effectuera seulement lorsque JOIE est faible, laissant du temps à l'agent pour l'atteinte de d'autres objectifs non rattachés à son besoin d'accomplissement, comme la nécessité d'acquérir des connaissances sur l'environnement par son exploration à partir du module de cognition. 8.3. Description du mécanisme pour le module de sélection finale Le module de sélection finale examine les choix comportementaux formulées par les modules de recommandations afin d'établir l'activation des comportements à utiliser. Le représentation de ces recommandations est basée sur les principes de l'évaluation hédonistique. L'axiome hédonistique 148 soutient que les organismes dirigent leur comportement pour minimiser ou éviter les conséquences indésirables, et maximiser ou favoriser les résultats désirables [25]. Un continuum hédonistique est représenté à la figure 8.3, l'organisme favorisant toujours ses choix dans le sens de la flèche [25]. Cette forme d'évaluation est appliquée ici aux choix posés par les sources de recommandations: plus c'est désirable, plus grande sera la persistance et la vigueur pour la réalisation du comportement; plus c'est indésirable, plus grande sera la persistance et la vigueur pour l'éviter [25]. Indésirable Figure 8.3 Neutre Désirable Processus hédonistique La logique floue se prête bien à la mise en oeuvre d'un tel mécanisme. Telles que présentées par les formules (8.2), (8.4) et (7.2), les trois modules de recommandations sélectionnent les comportements en établissant leur désirabilité ou leur indésirabilité en fonction de leurs propres critères d'évaluation. La désirabilité et l'indésirabilité des comportements sont représentées respectivement par des degrés flous. Le rôle du module de sélection finale conçu pour les expérimentations consiste à unifier les recommandations formulées par ces modules pour chacun des comportements e n utilisant un opérateur de disjonction floue, et d'établir le degré d'activation des comportements. Les opérations effectuées sont: 1) Union des recommandations désirables et indésirables pour chacun des j comportements, pour obtenir les niveaux de désirabilité globale et d'indésirabilité globale, relation (8.5) où y correspond à s (pour le module de situation externe globale), b (pour le module de besoins) ou c (pour le module de cognition). disjonction ⊕ utilisée est le maximum. 149 La [ ( j ) = ⊕[m ] ( j )] m des( j ) = ⊕ m desy ( j ) m ind 2) Décision finale, relation (8.6). indy (8.5) Un comportement j est donc activé si la soustraction entre la désirabilité globale et l'indésirabilité globale est supérieure à 0 (c'est-à-dire que le comportement est plus désirable qu'indésirable). pour qu'un comportement soit activé, il faut tout d'abord qu'il soit désiré, et qu'ensuite sont degré de désirabilité soit supérieur à son degré d'indésirabilité. m act( j ) = max (0, m des( j ) - m ind( j )) 150 (8.6) 9. RÉSULTATS ET OBSERVATIONS SUR LES EXPÉRIMENTATIONS AVEC BUGWORLD Les chapitres 5 à 7 ont présenté les différents mécanismes utilisés dans les modules de SIR pour réaliser les expérimentations avec BugWorld. Le présent chapitre s'attarde plutôt sur les résultats obtenus par l'emploi de ces différents mécanismes pour le contrôle de l'agent lors de ces expérimentations. Avant de présenter ces résultats, il est bon de rappeler que l'objectif de l'agent est d'atteindre les cibles présentes dans l'environnement tout en assurant un bon niveau de charge de son accumulateur d'énergie. La stratégie mise en oeuvre pour y arriver consiste tout d'abord à permettre à l'agent de se former une représentation interne de son environnement en suivant les contours et ensuite en explorant les autres endroits. Une fois cette représentation interne construite, l'agent peut l'exploiter pour s'aider à retrouver les cibles ou le point de charge. différents besoins et buts. Ses motifs permettent de gérer ses Une douzaine de comportements se trouvent dans la banque de compétences de l'agent, et le graphe topologique a une capacité de 100 noeuds (incluant les trois noeuds tampons) si ce n'est pas autrement indiqué. La figure 9.1 résume les différents intervenants mis en oeuvre dans SIR pour réaliser de telles expérimentations. 151 Motifs Observation m expl, m act ENNUI DÉTRESSE EXPLORER EXPLOITER CONFIANCE CERTITUDE JOIE DÉCEPTION FAIM MANGER Besoins Règles floues m des m indes Situation Externe Globale Règles floues m des m indes Cognition Sélection Finale m des m indes Recom. cognitives Optimisation Planification Positionnement Désirabilité m act Const. graphe topo. Forme Topologique Antécédents Conséquences Comportements Sensations Figure 9.1 IDENT.FORMES ALARME TOURNE90 TOURNE180 DÉGAGE FOLIE CIBLE RECHARGE VITESSE ALIGNER URGENCE ÉVITER Fusion par défuzzification centroïde Actions Mise en oeuvre de SIR pour les expérimentations avec BugWorld Les résultats présentés dans ce chapitre tentent de démontrer l'ensemble des fonctionnalités affichées par l'agent pour la réussite de ses objectifs. Mais étant donné que le comportement émergeant manifesté par l'agent dépend de ce qu'il rencontre comme situations dans son environnement, il n'est pas toujours possible de 152 présenter d'une façon indépendante chacun environnements différents ont donc été des mécanismes développés. employés, chacun Deux présentant deux historiques distinctes relatant l'évolution dans la prise de décision et des états internes de l'agent. Une historique est la description et la justification trajectoire suivie par l'agent. de la Pour une description plus compréhensible de la trajectoire empruntée par l'agent au cours de ces expérimentations, des traces partielles démontrant son parcours pendant un certain nombre de cycles d'exécution sont présentées. De plus, pour alléger la présentation, la trace complète d'activation des motifs ainsi expérimentations que des résultats sont présentés en généraux annexe. obtenus Seuls pour chacune des les motifs pertinents aux explications sont fournis dans ce chapitre. 9.1. Environnement original venant avec BugWorld Pour illustrer le fonctionnement des mécanismes de base de l'agent, les premiers résultats présentés sont tirés de l'environnement venant avec BugWorld (voir figure 4.1). Cet environnement est simple car les cibles et le point de recharge se trouvent aux abords des surfaces. variés. Toutefois, les angles de rotation aux différents coins sont Les prochaines sous-sections présentent deux historiques de trajectoire. première illustre un cas où l'ensemble des interactions de l'agent La avec l'environnement se sont bien déroulées. Les résultats présentés sont davantage axés sur les mécanismes de base utilisés normalement par l'agent, plus particulièrement son graphe topologique. La seconde présente plutôt une historique où l'agent a eu quelques difficultés à réaliser sa tâche. L'emphase est davantage placée sur les conditions particulières de fonctionnement, comme l'étude de la DÉTRESSE et de la DÉCEPTION. 9.1.1. Historique de la première expérimentation avec l'environnement de BugWorld 153 Pour cette expérimentation, l'agent arrive à survivre pendant 2146 cycles. L'annexe 1 présente l'activation des motifs au cours de cette expérimentation. Cette historique est référencée dans la thèse comme étant l'historique 1. Le départ de l'agent s'effectue à x = 100, y = 100 et une orientation initiale de 0°. La figure 9.2 illustre la trajectoire effectuée après les 250 premiers cycles d'exécution. Le motif JOIE étant initialement nul, le module de besoins active le comportement CIBLE et l'agent commence par rejoindre la cible la plus proche (située en A). Ensuite, i l poursuit son exploration de l'environnement en suivant les contours. Lorsqu'il passe par le point de charge, il en profite pour recharger son accumulateur d'énergie avant de repartir. À la fin des 250 premiers cycles (point D), l'agent se trouve au point de charge pour la deuxième fois. A Départ D C B Figure 9.2 Trace de l'historique 1, cycles 0 à 250 Les motifs actifs de l'agent sont représentés à la figure 9.3. En comptant les plateaux du motif MANGER, il est possible de vérifier que l'agent s'arrêta deux fois pour recharger son accumulateur d'énergie. 154 La seconde fois que l'agent alla se recharger, il commençait à avoir faim comme le montre le motif FAIM. chaque cible atteinte, son niveau de JOIE augmenta en conséquence. De plus, à De cette même figure, il est aussi possible de remarquer qu'au départ, le motif DÉCEPTION fut affecté par l'orientation initiale de l'agent. Mais les influences des comportements CIBLE, ÉVITER et ALIGNER lui permirent de se réorienter sans que ce motif atteigne une grande activation. Motif EXPLORER 1 0.5 0 50 100 150 Motif CONFIANCE 200 250 50 100 150 Motif DÉCEPTION 200 250 50 100 Motif JOIE 150 200 250 50 100 150 Motif MANGER 200 250 50 100 Motif FAIM 150 200 250 50 100 150 200 250 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 Figure 9.3 Motifs pour l'historique 1, cycles 0 à 250 Enfin, dès son premier tour de la pièce, l'agent arriva à se positionner dans son graphe topologique. Ceci est reflété par le niveau de CONFIANCE et EXPLORER de la figure 9.3. En examinant le graphe topologique présenté à la figure 9.4, il est possible 155 de remarquer la boucle qui s'est formée dans le graphe topologique suite à la détection d'une séquence de noeuds similaires. La recherche dans le graphe topologique débuta lorsque l'agent se trouva au noeud 4, soit un après que l'agent croit avoir effectué une rotation de 360°. Avant d'accepter la similitude, deux séquences similaires avaient été rejetées à cause de l'orientation. Ce n'est qu'à la troisième séquence similaire consécutive, soit au noeud 6, que la similitude fut acceptée en négligeant le critère d'orientation. Les noeuds qui n'avaient pu être considérés comme similaires de par l'orientation furent alors éliminés en remontant dans le graphe jusqu'au noeud 2. Cette procédure fut expliquée à la section 7.4.1. Figure 9.4 La figure Graphe topologique de l'historique 1, cycles 0 à 250 9.5 montre les recommandations formulées pour l'utilisation du comportement CIBLE au cours de cette période. La désirabilité indiquée par le module de besoins est influencée par le faible niveau de JOIE, tandis que l'indésirabilité venant du même module est provoquée par le désir de MANGER (voir figure 8.2). L'indésirabilité du module de situation externe globale est basée sur la détection d'un obstacle avant (voir figure 8.1). Le module de cognition 156 n'a pas formulé de recommandation pour ce comportement à ce point. Les indésirabilités sont combinées par l'opérateur de disjonction floue maximum, et l'activation du comportement formulée par le module de sélection finale s'effectue en soustrayant la désirabilité globale avec l'indésirabilité globale. Désirabilité de CIBLE du module de besoins 1 0.5 0 50 1 100 150 200 Indésirabilité de CIBLE du module de besoins 250 0.5 0 1 50 100 150 200 Indésirabilité de CIBLE du module de situation externe globale 250 0.5 0 50 100 150 Désirabilité globale de CIBLE 200 250 50 100 150 Indésirabilité globale de CIBLE 200 250 1 0.5 0 1 0.5 0 50 100 150 Activation de CIBLE 200 250 50 100 200 250 1 0.5 0 Figure 9.5 150 Recommandations pour le comportement CIBLE pour l'historique 1, cycles 0 à 250 L'agent poursuit alors sa trajectoire comme illustrée à la figure 9.6. Motivé par son motif EXPLORER, il décide d'aller explorer son environnement en activant les conditions pour s'éloigner de façon perpendiculaire à la surface (au point A). Le comportement TOURNE90 est alors activé, tandis que ALIGNER et VITESSE sont inhibés 157 selon le principe présenté à la sous-section 7.7.1. L'agent se dirige ainsi vers le centre de la pièce. B D C E A Figure 9.6 Trace de l'historique 1, cycles 250 à 495 L'agent arrive à se retrouver dans son graphe topologique au noeud 4 et élimine un noeud en remontant dans le graphe. Il se sent à nouveau prêt pour aller explorer son environnement par rotation de 90° (au point C). Il tente alors de suivre les contours de l'obstacle rectangulaire, et se retrouve à nouveau au coin supérieur gauche de l'environnement. Il se dirige à nouveau vers le point de charge (point E), et arrive à se resituer dans son graphe topologique au noeud 6 juste avant d'y arriver. Le graphe topologique résultant après 495 cycles est donné à la figure 9.7. On peut y voir la création de nouvelles branches lorsque l'agent part explorer son environnement, ainsi que la multiplication des noeuds dans les endroits où des trajectoires légèrement différentes sont empruntées par l'agent. Ceci provoque la création de noeuds variés de petites dimensions, ce qui pourra rendre difficile la localisation de l'agent à ces endroits dans le graphe topologique. 158 Figure 9.7 Graphe topologique de l'historique 1, cycles 0 à 495 La figure 9.8 montre les niveaux d'activation des motifs durant cette période. Il est possible d'y remarquer que l'agent, étant plus souvent confiant, commence tranquillement à vouloir exploiter son graphe topologique. La faim commençait aussi à se faire sentir, et le comportement RECHARGE fut activé par le motif MANGER et le module de besoins. 159 Motif EXPLOITER 1 0.5 0 300 350 400 Motif EXPLORER 450 300 350 400 Motif CONFIANCE 450 1 0.5 0 1 0.5 0 300 350 Motif JOIE 400 450 300 350 Motif MANGER 400 450 300 350 Motif FAIM 400 450 300 350 400 450 1 0.5 0 1 0.5 0 1 0.5 0 Figure 9.8 Motifs de l'historique 1, cycles 250 à 495 La figure 9.9 illustre les variations dans l'activation de comportements lors de ces déplacements. On peut y remarquer la complémentarité entre l'activation de ÉVITER et l'activation des comportements VITESSE et ALIGNER en fonction des règles de recommandations du module de situation externe globale (voir figure 8.1). De plus, i l est possible d'observer l'influence cognitive lors d'une rotation de 90° par l'inhibition de VITESSE et de ALIGNER (ce dernier étant inhibé plus longtemps pour laissé à l'agent le temps de s'éloigner de la surface). 160 Activation ÉVITER 1 0.5 0 300 350 400 Activation VITESSE 450 300 350 400 Activation ALIGNER 450 300 350 400 Activation TOURNE90 450 1 0.5 0 1 0.5 0 1 0.5 0 300 350 Motif MANGER 400 450 300 350 400 450 1 0.5 0 Figure 9.9 Activation de comportements de l'historique 1, cycles 250 à 495 L'agent poursuit alors sa route comme illustrée à la figure 9.10. Il arrive à se situer dans son graphe topologique, mais il ne peut reprendre l'exploration tout de suite car elle fut déjà réalisée à cet endroit (point A). En plus, le comportement CIBLE est exploité, attirant l'agent vers la cible du coin inférieur droit et empêchant toute exploration. Il attend d'avoir atteint le noeud 11 pour se permettre de s'éloigner de la surface. Il tourne alors de 90° par rapport à celle-ci, ce qui le ramène rapidement (point B) vers le point de charge en évitant le petit obstacle rectangulaire qui se trouve sur son chemin. Pour pouvoir se positionner, l'agent parcourt alors son graphe en sens inverse. Elle arrive à se situer au noeud 4 (point C), et remonte dans son graphe topologique en éliminant trois noeuds supplémentaires, soit jusqu'au noeud 9. Il se permet alors de reprendre l'exploration au point D. Ceci prouve que le graphe topologique peut être utilisé dans les deux directions pour localiser l'agent par rapport à ses trajectoires passées. Après avoir suivi les contours de l'obstacle 161 horizontal rectangulaire, l'agent termine sa course au point de charge (point E). L e graphe topologique résultant de la figure 9.11 illustre bien la capacité de l'agent de se positionner dans son graphe malgré la grand nombre de branches représentant ses nombreuses visites dans le coin supérieur gauche de l'environnement. C D B E A Figure 9.10 Trace de l'historique 1, cycles 495 à 700 162 Figure 9.11 Graphe topologique de l'historique 1, cycles 0 à 700 L'agent continue ensuite son exploration de l'environnement à la recherche de cibles. La figure 9.12 illustre la trajectoire empruntée par l'agent pour les cycles 700 à 900, et 900 à 1500. Le point de charge constitue le point de départ et le point d'arrêt pour chacune de ces traces. Au point B, l'agent s'éloigne du coin pour se diriger vers la cible. Il reprend l'exploration au point C, s'étant localisé sur une branche où l'exploration ne fut pas encore réalisée malgré la trajectoire illustrée à la figure 9.10. Au niveau du graphe topologique pour les 900 premiers cycles d'exécution de la figure 9.13, il est intéressant de remarquer que la trajectoire de l'agent dans le coin supérieur droit de l'environnement a donné lieu à une branche alternative pour visiter cet endroit. L'agent arrive à se relocaliser dans le graphe au noeud 10, et élimine les noeuds jusqu'au noeud 24 (qui présente une similitude valide avec le noeud 6). G C D J B O A a) Cycles 700 à 900 Figure 9.12 L I M N F E,H,K b) Cycles 900 à 1500 Traces de l'historique 1, cycles 700 à 900 et 900 à 1500 163 Figure 9.13 Graphe topologique de l'historique 1, cycles 0 à 900 Au point F, il explore son environnement en partant vers le haut. localiser au point G. Il arrive à se Aux noeuds suivants, il arrive à créer un lien entre deux branches du graphe à partir des conditions de noeuds intermédiaires (section 7.4.3). L'agent fait ensuite un tour complet de la pièce sans explorer, ayant de la difficulté à se positionner dans sont graphe topologique aux points I et J. Il arrive à se relocaliser correctement au noeud 6, soit juste avant d'arriver au point de charge. un troisième tour de l'environnement est alors entrepris. Il suit bien sa localisation dans le graphe topologique jusqu'au point L, percevant que l'exploration fut exécuté aux endroits propices sur ce parcours. À ce point, il reprend l'exploration en se dirigeant vers le bas, ce qui l'amène à revenir directement sur ses pas. Il se resitue dans son graphe au même endroit où l'exploration fut initiée. Rendu au point N, l'agent désire se recharger, et une trajectoire est planifiée vers le point de charge. Cette planification lui confirme qu'il se dirige dans la bonne direction et qu'il a assez d'énergie pour s'y rendre. Toute exploration est alors inhibée. Le trajet planifié est bien suivi jusqu'à ce que RECHARGE soit exploité et que le motif CERTITUDE soit bloqué 164 à 40%. L'agent arrive au point de charge sans difficulté. Cette situation peut mieux se comprendre à partir de la figure 9.14 de motifs. À la figure 9.14, il est aussi possible de remarquer que l'agent manifeste de plus en plus un désir d'exploiter son graphe topologique, se sentant de plus en plus longtemps en confiance environnement. Motif EXPLOITER 1 0.5 0 600 800 1000 1200 Motif EXPLORER 1400 1600 1800 600 800 1000 1200 Motif CERTITUDE 1400 1600 1800 600 800 1000 1200 Motif CONFIANCE 1400 1600 1800 600 800 1000 1200 Motif JOIE 1400 1600 1800 600 800 1000 1200 Motif MANGER 1400 1600 1800 600 800 1000 1200 Motif FAIM 1400 1600 1800 600 800 1000 1200 1400 1600 1800 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 Figure 9.14 Motifs de l'historique 1, cycles 500 à 1880 165 dans son La figure 9.15 illustre la trajectoire suivie ensuite par l'agent pour les cycles 1500 à 1880. En partant, l'agent perd sa référence dans son graphe. À l'atteinte de la cible du coin inférieur droit de la pièce, l'agent arrive à se resituer dans on graphe et le niveau du motif JOIE (figure 9.14) devient tel que le comportement FOLIE est activé par le module de besoins (voir figure 8.2). L'agent se met à tourner sur lui-même et se trouve, une fois ce moment d'"énervement" terminé, orienté en direction du point de charge. Ayant perdu sa référence dans le graphe, il arrive à s'y relocaliser juste avant de rejoindre le point de charge. Il reprend l'exploration au point B qui l'amène éventuellement à suivre une trajectoire au contour de la pièce. Il arrive alors à se situer dans son graphe au point D, et attend jusqu'au point E pour reprendre l'exploration. Il commence alors à tourner de 90°, mais en cours de rotation il ressent un besoin pressant de MANGER. Ceci l'amène à se rediriger vers le point de charge (point F). Durant cette période, la planification de trajectoire est bloquée car le comportement RECHARGE est exploité. N'arrivant pas à se situer dans son graphe, ceci évite en plus que l'agent pense incorrectement qu'il doit faire demi-tour, pour qu'il soit guidé plutôt par son comportement localisant les points de charge. 166 D E B C F Figure 9.15 A Trace de l'historique 1, cycles 1500 à 1880 Après avoir repris sa trajectoire, le graphe topologique se voit alors complètement rempli au 1906e cycle d'exécution. Les noeuds tampons sont initialisés et la trajectoire suivie par l'agent consiste alors à suivre les contours, le motif EXPLORER étant bloqué par l'activation du motif EXPLOITER. La trajectoire parcourue est illustrée à la figure 9.16. L'agent commence par suivre les contours en sens inverse des aiguilles d'une montre. Il arrive à se situer dans le graphe avec les noeuds tampons au point D. Mais il y a quelques difficultés à rester situé dans le graphe à cause des nombreuses possibilités dans cette région. L'atteinte rapide des cibles au cours de sa trajectoire augmente tellement le niveau de JOIE que l'agent active à nouveau son comportement de FOLIE (au point E). L'agent se trouve alors à revenir sur ses pas, et semble avoir quelques difficultés à suivre correctement les contours. Rendu au point G, le module de besoins manifeste le désir de rejoindre un point de charge. Une fois relocalisé dans son graphe au point H, l'agent prévoit arriver au point de charge dans six 167 noeuds en continuant dans la même direction. Toutefois, il anticipe que la distance le séparant du point de charge est de 56 cycles, et il ne lui reste alors que 23 cycles d'énergie. Le module de cognition émet alors un S.O.S. en activant de façon répétitive le comportement ALARME. Pour empirer davantage la situation, l'agent a de la difficulté à tourner le coin au point H. Il se dirige alors directement vers le centre du coin inférieur droit de l'environnement (point J) où il termine sa course, manque d'énergie. D E G F H C I B A J Figure 9.16 Trace de l'historique 1, cycles 1880 à 2146 Le graphe topologique résultant est illustré à la figure 9.17. N'ayant pu se rendre au point de charge après avoir inhibé le motif EXPLORER par le motif EXPLOITER, l'agent n'a pu optimiser son graphe topologique pour en éliminer les noeuds jugés inutiles. Si une telle opération avait pu être effectuée, le graphe topologique résultant aurait été celui présenté à la figure 9.18. Un total de 55 noeuds sont éliminés suite à cette optimisation, de laquelle émerge plusieurs effets. 168 Premièrement, les noeuds topologiques caractérisant les côtés sont préservés. Ces noeuds importants pour faciliter la localisation de l'agent dans son environnement. Ensuite, la branche du départ tout comme les chemins parallèles non utiles sont éliminés. conditions n'ont pas été explicitement programmées dans la sont Ces composante d'optimisation du module de cognition: elles émergent des connaissances acquises lors des interactions entre l'agent et son environnement. D'autres effets sont issus de leur considération explicite lors de l'optimisation. Par exemple, les noeuds 20, 24, 30, 37, 43 et 85 ont été préservés car la condition cognitive pour l'exploration y est mémorisée. Les trajectoires inutiles qui en résulte sont toutefois éliminées. La trajectoire composée des noeuds 22, 95 et 23 fut préservée car elle constitue le trajet le plus court du noeud 59 (où une cible fut mémorisée) au noeud 6 (pour le point de charge). La même remarque s'applique pour les noeuds 92 et 91. Les noeuds où le comportement FOLIE est utilisé (comme le noeud 71) est automatiquement éliminé s'ils ne sont pas revisités, car ils ne sont pas permis lors de la planification de trajectoires. Figure 9.17 Graphe topologique de l'historique 1, cycles 0 à 2146 169 Figure 9.18 Graphe topologique optimisé de l'historique 1 Une seconde expérimentation fut réalisée avec le même point de départ dans cet environnement, mais en augmentant le nombre de noeuds disponibles dans le graphe topologique à 150 au lieu de 100. La trajectoire empruntée par l'agent diffère alors à partir du 1906e cycle car le graphe topologique n'est pas alors complètement rempli. La figure 9.19 illustre la trajectoire de l'agent pour les cycles 1880 à 2400, et 2400 à 2720. Au point B, il reprend l'exploration et arrive à se resituer par rapport à une exploration similaire exécutée au point F de la figure 9.12. L'exploration avait alors débutée du noeud 13 au lieu du noeud 91. L'agent fait ensuite deux tours de la pièce sans explorer, arrivant relativement bien à se localiser dans son graphe et croyant avoir tout exploré les endroits possibles. Mais rendu au 2397e cycle, l'intégration du niveau de CONFIANCE par le motif EXPLOITER est telle que l'agent décide de cesser l'exploration pour plutôt exploiter son graphe topologique. Les noeuds tampons servent alors pour le positionnement dans le graphe topologique. illustre l'activation des motifs de l'agent pour les cycles 1880 à 2720. 170 La figure 9.20 J H R M B C,F N E A,D,G K L,Q O P a) Cycles 1880 à 2397 Figure 9.19 b) Cycles 2397 à 2720 Traces de l'historique 1, cycles 1880 à 2720, avec 150 noeuds disponibles pour le graphe topologique 171 Motif ENNUI 1 0.5 0 1900 2000 2100 2200 2300 2400 Motif EXPLOITER 2500 2600 2700 1900 2000 2100 2200 2300 2400 Motif EXPLORER 2500 2600 2700 1900 2000 2100 2200 2300 2400 Motif CERTITUDE 2500 2600 2700 1900 2000 2100 2200 2300 2400 Motif CONFIANCE 2500 2600 2700 1900 2000 2100 2200 2400 2500 2600 2700 1900 2000 2100 2200 2300 2400 Motif DÉTRESSE 2500 2600 2700 1900 2000 2100 2200 2300 Motif MANGER 2400 2500 2600 2700 1900 2000 2100 2200 2300 Motif FAIM 2400 2500 2600 2700 2000 2100 2200 2300 2400 2500 2600 2700 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 2300 Motif JOIE 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1900 Figure 9.20 Motifs de l'historique 1, cycles 1880 à 2720 et avec 150 noeuds disponibles pour le graphe topologique 172 L'optimisation du graphe s'effectue au point K, soit lors de la recharge de l'agent. Les figures 9.21 et 9.22!illustrent les graphes topologiques avant et après optimisation. Un total de 51 noeuds furent éliminés lors de l'optimisation. Par rapport à la figure 9.18, seuls les noeuds 94 et les noeuds 112 à 115 s'ajoutent au graphe optimisé car ils ont servi à localiser l'agent dans son graphe topologique lors de l'exploration. Figure 9.21 Graphe topologique de l'historique 1, cycles 0 à 2397, et 150 noeuds disponibles pour le graphe topologique 173 Figure 9.22 Graphe topologique optimisé de l'historique 1 et 150 noeuds disponibles pour le graphe topologique Au cours des cycles 2397 à 2720 (voir figure 9.19 b), l'agent continue à suivre les contours. Au point M, il se sent attiré vers la cible et reprend son chemin e n retournant sur ses pas (point O). C'est alors qu'il reste pris au point P. Il arrive toutefois à se déprendre en utilisant DÉGAGE de par la règle du module de besoins et du motif DÉTRESSE (excité par une constance dans l'exploitation des comportements URGENCE et ÉVITER). Il se doit alors de retourner vers le point de charge comme le confirment les motifs MANGER et FAIM, mais il se trouve alors orienté dans la mauvaise direction. Au même topologique activa suffisamment moment, l'incapacité le motif ENNUI d'exploiter pour permettre son graphe à l'agent reprendre l'exploration et d'initialiser des nouveaux noeuds dans le graphe. de Mais i l était trop tard, et le module de cognition émit un S.O.S. lors des derniers dix cycles d'énergie de l'agent. 174 9.1.2. Historique de la deuxième expérimentation avec l'environnement de BugWorld Pour cette seconde expérimentation, l'agent arrive à survivre pendant 2002 cycles. L'annexe 2 présente l'activation des motifs au cours de cette expérimentation. départ de l'agent s'effectue à x = 250, y = 250 avec une orientation initiale de 0°. Le Cette historique est référencée dans la thèse comme étant l'historique 2. D Départ A E C Figure 9.23 B Trace de l'historique 2, cycles 0 à 250 La figure 9.23 illustre la trajectoire effectuée après les 250 premiers cycles d'exécution. Comme il fut remarqué pour l'historique 1, le coin inférieur droit dans l'environnement (point B) est particulièrement difficile à gérer pour l'agent, car i l l'oriente vers son centre. Un conflit survient alors entre les comportements URGENCE, ÉVITER et ALIGNER. Par introspection, le motif DÉTRESSE permet de déceler cette anomalie pour faire reculer l'agent et le sortir d'impasse. L'examen d'une moyenne constante de la somme de l'exploitation des comportements URGENCE et ÉVITER est la cause d'excitation du motif DÉTRESSE. 175 La figure 9.24 illustre ces influences. Une fois un niveau de DÉTRESSE suffisant, le module de besoins recommande l'utilisation du comportement DÉGAGE qui permet d'inhiber la source d'excitation de DÉTRESSE en sortant l'agent de cette situation problématique. Exploitation URGENCE 1 0.5 0 20 40 60 Exploitation ÉVITER 80 100 20 40 60 Motif DÉTRESSE 80 100 20 40 60 Exploitation DÉGAGE 80 100 80 100 1 0.5 0 1 0.5 0 1 0.5 0 20 Figure 9.24 40 60 Conditions associées à la DÉTRESSE pour l'historique 2, cycles 0 à 100 Après s'être sortie d'impasse, l'agent remarque que l'exploitation du comportement CIBLE est non nul et décroît, ce qui lui fait croire qu'il s'éloigne d'une cible. La cible du coin inférieure droit s'est effectivement réactivée lorsque l'agent s'en éloignait. Ceci affecte le motif DÉCEPTION qui active via le module de cognition les conditions pour faire demi-tour. L'agent arrive alors à rejoindre la cible comme souhaité. figure 9.25 illustre les influences La associées à la DÉCEPTION et qui expliquent le comportement de l'agent. 176 Activation CIBLE 1 0.5 0 20 40 60 Exploitation CIBLE 80 100 20 40 60 Motif DÉCEPTION 80 100 20 40 60 Exploitation TOURNE180 80 100 80 100 0.1 0.05 0 1 0.5 0 1 0.5 0 20 Figure 9.25 40 60 Conditions associées à la DÉCEPTION pour l'historique 2, cycles 0 à 100 L'agent reprend sa course en suivant les contours. Mais il arrive juste à temps au point de charge, car il ne lui reste que quatre cycles d'énergie à son arrivée au point de charge. Le S.O.S. fut émit pour signifier son manque d'énergie probable lorsqu'il ne lui restait que pour dix cycles d'énergie. Aucune trajectoire n'a pu être planifiée, la seule branche du graphe topologique enregistrant des conditions de détresse et de demi-tour. Le graphe topologique résultant est présenté à la figure 9.26. On remarque que malgré la difficulté de se sortir du coin au point B, le nombre de noeuds topologiques n'a pas augmenté dramatiquement. Les noeuds topologiques construits reflètent bien ce qui fut perceptible pour l'agent. Aucune recherche ne fut faite à ce point pour localiser l'agent dans son graphe, l'agent ne croyant pas avoir rencontré la condition de rotation sur 360°. 177 Figure 9.26 Graphe topologique de l'historique 2, cycles 0 à 250 L'agent poursuit sa route telle qu'illustrée à la figure 9.27. La recherche dans son graphe débute après son départ du point de charge, mais il arrive à s'y situer qu'au 358e cycle (point B, noeud 12) à cause de ses difficultés précédentes dans cette zone. Mais le noeud suivant ne peut être identifié à la suite du noeud 12 dans le graphe topologique. Toutefois, le module de cognition arrive à détecter une similitude avec un noeud intermédiaire au noeud 14. La même situation se répète entre le noeud 14 et le noeud 16, et pour plusieurs des noeuds suivants. De plus, juste avant d'arriver au point de charge (soit avant le 457e cycle), le niveau de JOIE est tel que FOLIE est activé (point C noeud 43), faisant perdre à l'agent sa position par rapport à la trajectoire passée dans son graphe topologique. Mais encore une fois l'agent se retrouve dans son graphe topologique à partir de recherche avec noeud intermédiaire, car il reprit alors son chemin dans le sens où les noeuds du graphe furent construits. Le graphe topologique de la figure 9.28 montre bien les noeuds intermédiaires résultants de ces opérations, soit les noeuds 35, 37, 39, 41 et 43. 178 Enfin, avant d'arriver au point de charge, l'agent n'arrive plus à trouver une similitude avec un des noeuds liés au noeud 23, et une nouvelle branche s'initialise (noeud 46). B C F D E G A H a) Cycles 250 à 490 b) Cycles 490 à 700 Figure 9.27 Traces de l'historique 2, cycles 250 à 490 et cycles 490 à 700 Figure 9.28 Graphe topologique de l'historique 2, cycles 0 à 700 L'agent arrive à se rebrancher dans son graphe topologique au mur du bas de l'environnement (noeud 28), juste à son arrivée à la cible du coin inférieur droit. I l entreprend alors l'exploration de son environnement au point E, ce qui redirige 179 l'agent vers le point de charge. Mais juste avant d'y arriver, la cible du coin inférieur droit devient active et puisque le comportement CIBLE était activé (le motif JOIE étant faible), le motif DÉCEPTION est de nouveau activée car l'agent se voit s'éloigner de la cible. Il fait alors demi-tour juste (point G) pour se diriger vers la cible. Mais en arrivant à la cible, l'agent reste pris dans le coin, toujours à cause du conflit comportemental entre URGENCE, ÉVITER et ALIGNER. Il arrive plus difficilement à s'en déprendre après trois utilisations du comportement DÉGAGE, comme le montre la figure 9.29. Au départ, l'examen d'une moyenne constante de l'exploration de URGENCE et ÉVITER est la source d'excitation du motif DÉTRESSE. Mais par après, c'est la non exploitation de ÉVITER pourtant alors pleinement activé qui l'influence. Exploitation URGENCE 1 0.5 0 620 640 660 680 Activation ÉVITER 700 720 740 620 640 660 680 Exploitation ÉVITER 700 720 740 620 640 660 680 Motif DÉTRESSE 700 720 740 620 640 660 680 Exploitation DÉGAGE 700 720 740 620 640 700 720 740 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 Figure 9.29 660 680 Conditions associées à la DÉTRESSE pour l'historique 2, cycles 600 à 750 Les traces de la figure 9.30 résument la suite de la trajectoire de l'agent. s'être sortie d'impasse (point A), l'agent retourne vers le point de charge. 180 Après Il y arrive encore in extremis, étant incapable de se localiser dans le graphe ou de planifier une trajectoire. Un S.O.S. fut aussi lancé lorsque l'agent n'a plus que dix cycles d'énergie, et il arrive au point de charge avec une réserve de trois cycles d'énergie. Il prend alors le temps de bien se recharger et il repart. L'agent arrive à se resituer dans son graphe topologique au point C et parcourt alors son graphe topologique dans le sens inverse de sa construction. Il entreprend alors d'aller explorer, mais son attirance vers la cible prévaut. Il met ensuite un peut de temps à se situer de nouveau dans son graphe (soit au noeud 12, point E) et reprend ensuite l'exploration au point F. Puisque la condition d'impasse du comportement ÉVITER fait tourner l'agent vers la gauche lorsqu'un obstacle se trouve directement devant lui, il revient sur sa trajectoire originale. Il n'arrive pas à se resituer par rapport à cette trajectoire avant le point G. Il n'arrive pas à rester situé très longtemps, et le désir d'atteindre le point de charge se fait sentir. Puisque l'agent se trouve dans une nouvelle branche du graphe topologique, la planification lui indique qu'il doit faire demi-tour. L'agent entame donc le processus, mais l'exploitation de RECHARGE provoque l'arrêt au point I . L'agent poursuit ensuite son chemin vers le point de charge tout en arrivant à se resituer tout de suite après au noeud 22. D I H G M E L F C J B N A a) Cycles 700 à 1050 Figure 9.30 K b) Cycles 1050 à 1250 Traces de l'historique 2, cycles 700 à 1050 et cycles 1050 à 1250 181 Au cours des environnement. cycles 1050 à 1250, l'agent désire toujours explorer son Juste avant d'atteindre la cible du coin inférieur droit (point K), i l décide de tourne de 90°. Mais au même moment, le niveau de JOIE est jugé et le module de besoins active le comportement CIBLE. La cible du coin inférieur droit étant active, le comportement CIBLE est alors exploité, ce qui annule la recommandation cognitive formulée par EXPLORER pour tourner de 90°. L'agent poursuit toutefois sa route et reprend l'exploration un peu plus tard au point L. Il se relocalise dans son graphe au point M, mais perd ensuite cette référence. Il arrive à se resituer au point N, arrivant à éliminer les noeuds créés entre ces deux endroits et en créant un nouveau lien entre deux branches au point M. L'exploration de l'environnement se poursuit en fonction de la capacité de l'agent de se situer dans son environnement par rapport à son graphe topologique. La figure 9.31 illustre le parcours de l'agent pour les cycles 1050 à 1750. Au 1344e cycle, l'agent se trouve à nouveau en condition critique (point C, dictée par la constance de la moyenne de l'exploitation de URGENCE et ÉVITER), mais arrive à s'en déprendre rapidement. Il retourne ensuite au point de charge en tournant de 90° au point D, motivé par son désir d'exploration. Le motif DÉCEPTION fut excité à cause de la cible du coin supérieur droit, mais sans conséquence sur la trajectoire de l'agent. C I J D G B E A K a) Cycles 1250 à 1450 F b) Cycles 1450 à 1750 182 H Figure 9.31 Traces de l'historique 2, cycles 1250 à 1450 et cycles 1450 à 1750 Une fois rechargé, l'agent poursuit sa route en explorant au point H, les autres endroits ayant déjà été explorés. La séquence de noeuds au point H est alors considérée incorrectement somme similaire à la séquence de noeuds construits au point G de la figure 9.30 a). Mais l'agent ne prend pas beaucoup de temps à comprendre qu'il ne peut arriver à bien se localiser dans son graphe à ce point, et une nouvelle branche est construite. Il arrive à se relocaliser correctement au point I. Juste avant d'arriver au point J, l'agent perd la référence dans son graphe, et le désir de manger se fait encore sentir. Par planification, l'agent décide de faire demitour. Mais comme pour le cas de la figure 9.30 b), le comportement de RECHARGE est alors exploité, inhibant la condition demandant de faire demi-tour pour permettre à l'agent de se diriger vers le point de charge. Une légère augmentation du motif DÉCEPTION reflète aussi l'influence de l'exploitation de ce comportement à ce point. La figure 9.32 résume le parcours de l'agent sur ses derniers cycles d'existence. L'agent reprend sa route du point de charge et arrive encore à se prendre au coin inférieur droit (point B) sans avoir pu prévenir la situation (le noeud où survient la détresse est un noeud de transition, donc ne pouvant pas être anticipé). Il arrive à nouveau à s'en dégager et reprend son chemin, explore à nouveau la boucle du point C car il se trouve situé à un noeud où l'exploration ne fut pas mémorisée. La rotation effectuée n'est pas tout à fait de 90°: la position de départ et les actions formulées auraient nécessité un peu plus de temps pour ajuster la position de l'agent avant qu'il s'éloigne de la surface. Le comportement de RECHARGE est recommandé par le module de besoins au point C, mais aucune trajet n'est accepté lors de la planification. L'agent arrive à se resituer au point D, mais le noeud 16 faisant partie de la similitude établie n'a plus de lien libre pour que le branchement se réalise. En plus, au noeud suivant, le graphe topologique se voit complètement rempli. 183 Quand l'agent arrive à se repositionner à partir des noeuds tampons, il est rendu au point G. La trajectoire alors planifiée lui indique qui lui manquera pour un cycle d'énergie, l'émission du S.O.S. ce qui active L'agent manque d'énergie juste avant d'atteindre le point de charge. C D F E G F A B Figure 9.32 Trace de l'historique 2, cycles 1750 à 2002 Le graphe topologique final construit par l'agent est présenté à la figure 9.33. I l est possible d'y remarquer la densité importante de noeuds créés dans les différents coins de l'environnement, démontrant les problèmes rencontrés par l'agent et sa difficulté de s'y resituer. Il est aussi possible de remarquer que la mauvaise similitude identifiée dans le graphe topologique, donnant lieu à un lien erroné entre le noeud 74 et le noeud 85. La similitude fut établie par sens inverse, comme le démontre le lien pointillé (lien de type bivalent) en gras (lien de type Vers) entre ces deux noeuds. 184 Figure 9.33 Graphe topologique de l'historique 2, cycles 1750 à 2002 La figure 9.34 illustre le graphe topologique résultant suite à son optimisation si l'agent avait pu atteindre le point de charge avant de manquer d'énergie. Un total de 62 noeuds furent éliminés, reflétant l'inutilité de plusieurs de ces noeuds de par la plus grande difficulté de l'agent à se situer dans son graphe topologique. Les branches avec condition de détresse ou pour faire demi-tour ont toutes été éliminées. Il aurait peut-être été préférable de conserver les noeuds de détresse pour éviter de les reproduire, mais le grand nombre de noeuds qui y sont alors construits risque de nuire au positionnement de l'agent à ces endroits. Il est à noter que la mauvaise connexion entre les noeuds 74 et 85 est préservée, car la trajectoire la plus courte entre le noeud 84 de but et le noeud de charge passe par ces noeuds. Ceci est u n inconvénient de l'emploi d'un mécanisme simple pour l'optimisation. Des analyses plus poussées dans le graphe éliminer certaines de ces erreurs. topologique pourraient possiblement parvenir à Toutefois, puisque le module de cognition ne dicte pas directement les actions de l'agent, ce dernier peut arriver à se débrouiller même si quelques erreurs se glissent dans son graphe topologique. 185 Figure 9.34 Graphe topologique optimisé de l'historique 2 Finalement, cette deuxième expérimentation avec l'environnement de BugWorld montre que le bon déroulement des interactions de l'agent avec son environnement affecte ses capacités de représentation interne ainsi que son efficacité à l'exploiter. Les limitations de ses capacités d'action, de perception, de traitement et de décision affectent aussi les performances de l'agent lors de ses interactions avec l'environnement. Mais malgré ceci, l'agent a quand même bien réussi à s'adapter aux différentes circonstances qui lui ont été soumises, et c'est par une grande malchance qu'il manqua d'énergie avant d'atteindre le point de charge. L'histoire de l'agent et son vécu dans l'environnement affectent donc directement son comportement. 9.2. Environnement complexe Le second environnement utilisé est plus grand que le premier, avec encore trois cibles et un point de charge situé aussi à son coin inférieur gauche. 186 L'autonomie de l'agent fut augmentée à 500 cycles pour lui laisser plus de temps pour se déplacer sans toujours ressentir le besoin de se recharger. La cible centrale ne peut être perçue par l'agent lorsque celui-ci se déplace en suivant les contours de la pièce. Il doit donc l'atteindre par exploration de son environnement, ou encore en reproduisant les conditions d'une trajectoire réalisée pour s'y rendre. De plus, on retrouve au coin supérieur gauche de l'environnement une série de pointes, servant à reproduire une source de perturbation externe sur les sensations de l'agent. L'impact de ces imprécisions au niveau du comportement de l'agent peut alors être étudié. Deux historiques sont aussi présentées, la deuxième utilisant un obstacle mobile. Les résultats de cette section portent ainsi plus d'emphase sur la capacité de l'agent d'interagir avec des environnements "bruités" et dynamiques. 9.2.1. Historique de la première expérimentation avec l'environnement complexe Pour cette expérimentation, l'agent arrive à survivre pendant 4320 cycles. L'annexe 3 présente l'activation des motifs au cours de cette expérimentation. départ de l'agent s'effectue à x = 100, y = 400 et une orientation initiale de 90°. Le Cette historique est référencée dans la thèse comme étant l'historique 3. La figure 9.35 illustre la trajectoire effectuée après les 800 premiers cycles d'exécution, suivie de la figure 9.36 présentant le graphe topologique construit. La recherche dans son graphe topologique débute au point D, mais l'agent arrive à s'y situer qu'à son deuxième tour de la pièce au noeud 10 (point G). Le positionnement fut accepté par le rejet de trois séquences consécutives à cause de l'orientation. Les noeuds similaires furent éliminés jusqu'au noeud 6. Mais il perd rapidement cette référence lorsqu'il traverse la zone de perturbation (point H). Il arrive à se resituer dans son graphe au noeud 24 (point J) et envisageait commencer son exploration de la zone centrale de l'environnement au point K. Toutefois, le comportement de CIBLE étant activé et réagissant à la cible du coin supérieur droit, l'agent décide plutôt de se diriger vers la 187 cible. Le même phénomène se produisit au point M. Au point N, une séquence similaire fut trouvée dans la zone de perturbation, mais l'agent n'a pu continuer à se retrouver dans son graphe topologique par la suite. L'agent termine sa course au point O sans avoir débuté son exploration de l'environnement. Dans le graphe topologique de la figure 9.36, il est possible de remarquer la prolifération des noeuds dans la zone de perturbation. G M C,F,H,L D,H,N K Départ O Figure 9.35 A J B,E,I Trace de l'historique 3, cycles 0 à 800 188 Figure 9.36 Graphe topologique de l'historique 3, cycles 0 à 800 Quand l'agent reprend son chemin tel que présenté par la figure 9.37, il n'arrive qu'à se resituer dans son graphe topologique au noeud 24 (point B). alors à trouver une similitude avec un des noeuds lié au noeud 24. Il n'arrive pas Toutefois, e n effectuant une recherche avec noeud intermédiaire (section 7.4.3) au noeud suivant, il arrive à trouver une similitude et permet d'établir une nouvelle jonction entre la branche construite lors du premier tour de la pièce (noeud 5), et celle construite lors du deuxième tour (au noeud 24). Il y a alors deux chemins pour se diriger vers le point B. Par la suite, l'agent débute l'exploration au point C et arrive à rejoindre la cible centrale (point D). Il contourne l'obstacle rectangulaire ce qui le ramène sur ses pas. L'agent se dirige alors au point de charge sans arriver à se positionner dans son graphe topologique. Une fois rechargé, il se dirige vers la cible du coin supérieur gauche (point H). Il y reste toutefois pris et DÉGAGE est activé par le motif DÉTRESSE et le module de besoins. La constance de la moyenne de l'exploitation de URGENCE et ÉVITER fut la source d'excitation du motif DÉTRESSE. 189 L'agent se voit à nouveau orienté vers le point de charge, sans toutefois savoir où il se situe par rapport à une trajectoire passée mémorisée dans son graphe topologique. Le graphe topologique résultant est illustré à la figure 9.38. On peut y remarquer la trajectoire empruntée vers la cible centrale. H C E G D B I Figure 9.37 A F Trace de l'historique 3, cycles 800 à 1350 190 Figure 9.38 Graphe topologique de l'historique 3, cycles 0 à 1350 La figure 9.39 présente la suite de la trajectoire de l'agent. En a), l'agent fait deux fois le tour de la pièce, n'étant pas en mesure d'explorer d'autres endroits soit à cause qu'il n'arrive pas à se situer dans le graphe topologique (principalement dans la zone de perturbation même s'il y arrive brièvement parfois), qu'il se voit attiré vers une cible ou qu'un noeud indique qu'une exploration fut déjà engagée à cet endroit. En b) toutefois, l'agent arrive à se positionner dans le graphe à son point de charge, et trouve un nouveau site pour l'exploration (point J). Il atteint à nouveau la cible centrale et retourne suivre le contour de la pièce. Il se positionne dans son graphe topologique au point L en trouvant une similitude en sens inverse de construction des noeuds. Les conditions pour l'exploration sont à nouveau respectées et l'agent repart vers le centre de la pièce. L'agent atteint une troisième fois la cible centrale qui est alors désactivée et donc imperceptible pour l'agent. 191 O C,G L,P K D,H B,F M N Q I J A,E R a) Cycles 1350 à 1850 Figure 9.39 b) Cycles 1850 à 2330 Traces de l'historique 3, cycles 1350 à 1850 et cycles 1850 à 2330 Rendu au point O, soit après 2161 cycles d'exécution, le graphe topologique est complètement rempli. Le temps d'initialiser les noeuds tampons, l'agent se positionne dans son graphe topologique au point L. Le besoin de recharger son accumulateur d'énergie se faisant sentir, la trajectoire planifiée confirme à l'agent qu'il est dans la bonne direction, et ce même si le graphe topologique est parcouru est sens inverse. L'agent perd sa position dans le graphe au point Q, et termine sa course au point R. L a recharge et l'optimisation du graphe sont alors entreprises. Le graphe topologique avant optimisation est présenté à la figure 9.40, suivi du graphe topologique optimisé à la figure 9.41. Un total de 41 noeuds furent éliminés. I l est possible de remarquer qu'un grand nombre de noeuds furent éliminés dans la zone de perturbation. De plus, les trajectoires allant des noeuds 69 à 72 et des noeuds 32, 39, 35 et 36 ont été préservées car elles sont les trajectoires retenues pour la cible centrale. Les noeuds de but pour la cible centrale sont 36 et 72, et l'agent n'a pu déduire qu'ils sont liés à la même cible car deux trajectoires différentes ont été empruntées pour l'atteindre. Les noeuds 54 et 55 n'ont pas été associés à la cible centrale, car la cible était inactive lorsqu'elle fut visitée par l'agent. 192 La troisième branche pour l'exploration partant du noeud 46 a été préservée par planification d'une trajectoire entre le noeud 91 (la cible du coin supérieur gauche) et le noeud 21 (du point de charge). En effet, l'agent n'ayant pu se localiser par rapport à une trajectoire passée dans la zone de perturbation et puisque le graphe topologique fut rempli au point O, la seule trajectoire possible était de préserver toute la branche. Trois noeuds sont associés à la cible du coin supérieur gauche, soit les noeuds 10, 88 et 91. Pour le noeud 10, la trajectoire ne passe pas par la zone de perturbation. noeud 88 par contre (créé avant l'occurrence Pour le de DÉTRESSE à la figure 9.37), la trajectoire effectuée du point de charge vers la cible fut celle préservée. Enfin, les noeuds 42 et 48 ont été préservés à cause des conditions cognitives mémorisées, malgré le fait que ces conditions n'aient pas été complétées. Figure 9.40 Graphe topologique de l'historique 3, cycles 0 à 2161 193 Figure 9.41 Graphe topologique optimisé de l'historique 3 L'agent exploite alors son graphe topologique pour rejoindre les cibles. La trajectoire réalisée pour les cycles 2330 à 3500 est présentée à la figure 9.42. L'agent commence par atteindre la cible du coin supérieur gauche (point B). L'agent arrive à se positionner dans son graphe avant d'y arriver, et confirme par planification qu'il est dans la bonne direction pour atteindre la cible la plus proche. La même chose se produit pour la cible au point C. charge. L'agent poursuit son chemin jusqu'au point de La prochaine cible que l'agent cherche à atteindre est la cible centrale du noeud 72. Au point F, l'agent réalise qu'il doit faire demi-tour pour atteindre la cible. L'agent fait demi-tour mais puisque les noeuds tampons doivent alors être réinitialisés lorsque l'agent perçoit des états topologiques différents de ceux du graphe topologique (causés par la rotation de 180°), il met trop de temps à se repositionner et ne fait que passer tout droit au noeud 69. L'agent se voit donc pris dans un cercle vicieux causé par la replanification successive dans la région du noeud 69, jusqu'à ce que le motif DÉCEPTION se manifeste pour la cible du coin supérieur gauche. 194 L'agent fait alors demi-tour au point J et continue son chemin vers le point de charge, n'arrivant pas à se localiser avec les noeuds tampons dans cette zone. Ce changement d'orientation arriva à point, car le besoin de recharge s'est manifesté au point K, u n peu avant d'arriver au point de charge. C P B G,I J O F,H Q K R N A,E D L S a) Cycles 2330 à 3140 Figure 9.42 M b) Cycles 3140 à 3500 Traces de l'historique 3, cycles 2330 à 3140 et cycles 3140 à 3500 L'agent reprend alors une trajectoire pour atteindre la cible centrale. Maintenant qu'il arrive à bien se positionner dans le graphe topologique (à partir du point N), i l arrive à planifier la trajectoire et à la reproduire en activant les conditions pour la rotation de 90° au point O. Il suit alors la surface de l'obstacle rectangulaire pour revenir sur ses pas. Rendu au point Q, il arrive à se relocaliser dans son graphe et planifie alors une trajectoire vers le noeud 36, soit de nouveau vers la cible centrale. Il suit la trajectoire planifiée jusqu'à la jonction pour l'exploration (qui fut réalisée en sens inverse de la trajectoire suivie par l'agent). Il passe alors tout droit et arrive au point de charge. La figure 9.43 illustre les deux dernières traces de cette expérimentation. L'agent est au point B quand il arrive à se planifier de nouveau une trajectoire pour atteindre la cible du noeud 36. Il suit bien la trajectoire jusqu'au noeud 24 (point C) où se 195 produit une divergence avec le graphe topologique. Il n'arrive qu'à se resituer au noeud 14 (point D) dans la zone de perturbation. Mais à ce point, puisque le motif JOIE fut relativement faible pour les cycles passés et que peu de trajectoires arrive à être planifiée, l'agent se sent suffisamment ennuyé (motif ENNUI) pour arrêter l'exploitation de son graphe topologique. Deux cibles mémorisés dans le graphe n'ont pu être atteinte durant l'exploitation du graphe, soit celles des noeuds 36 et 88. L a figure 9.44 illustre l'influence des motifs associés à l'ennui, l'inhibition du motif EXPLOITER et à la reprise de l'exploration de l'environnement. K E B F M L H C A,D J a) Cycles 3500 à 3860 Figure 9.43 G b) Cycles 3860 à 4320 Traces de l'historique 3, cycles 3500 à 3860 et cycles 3860 à 4320 196 I Motif ENNUI 1 0.5 0 2200 2400 2600 2800 3000 3200 Motif EXPLOITER 3400 3600 3800 2200 2400 2600 2800 3000 3200 Motif EXPLORER 3400 3600 3800 2200 2400 2600 2800 3000 3200 Motif CERTITUDE 3400 3600 3800 2200 2400 2600 2800 3000 3200 Motif CONFIANCE 3400 3600 3800 2200 2400 2600 2800 3000 Motif JOIE 3200 3400 3600 3800 2200 2400 2600 2800 3200 3400 3600 3800 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 Figure 9.44 3000 Motifs associés à l'ennui pour l'historique 3, cycles 2000 à 4000 La trajectoire de l'agent reprend au point F, permettant maintenant la création de nouvelles branches dans le graphe topologique. La figure 9.45 illustre le graphe topologique résultant après les 4320 cycles. Ce n'est qu'au point G que des nouveaux noeuds sont ajoutés au graphe topologique, l'agent étant en mesure de s'y situer et de s'engager dans l'exploration de son environnement. L'exploration fut permise malgré la présence du noeud 46, car l'agent n'est pas en mesure d'anticiper ce noeud: il est à une jonction d'une nouvelle branche créée suite au parcours en sens inverse du graphe. C'est une des limitations du mécanisme de positionnement utilisé. De plus, aucune similitude ne fut établie avec la séquence topologique à cet endroit. Une fois l'obstacle contourné et la cible centrale atteinte, l'agent revient sur ses pas et se 197 relocalise dans son graphe au noeud 7 (cible du coin supérieur droit). Le branchement n'est pas alors effectué car le noeud 7 n'a plus de lien disponible. Il est toutefois repris avec succès au noeud suivant (point I). Une exploration est nouvellement effectuée au point J, et le comportement CIBLE dirige plutôt l'agent vers la cible du coin supérieur droit, la cible centrale étant alors désactivée. Rendu à cette cible, l'agent ressent le besoin de recharge par le motif MANGER et planifie de faire demi-tour pour rejoindre le point de charge. Il anticipe aussi manquer d'énergie et émet un S.O.S. Simultanément, l'agent se trouve pris dans ce coin mais arrive à s'en dégager par l'introspection réalisée par le motif DÉTRESSE sur les conditions d'exploitation des comportements URGENCE et ÉVITER. Mais il est toutefois trop tard, et l'agent manque d'énergie au point M. Figure 9.45 Graphe topologique de l'historique 3, cycles 0 à 4320 Dans son ensemble, cette expérimentation démontre que l'agent arrive à explorer son environnement et à exploiter son graphe topologique pour atteindre ses objectifs. Implicitement, cette exploration s'effectue dans les endroits où l'agent a plus de 198 facilité à se localiser, et cette condition est nécessaire pour l'utilisation des noeuds tampons. Des limitations furent toutefois observées au niveau de la reproduction ou l'anticipation de noeuds lorsque le graphe est parcouru en sens inverse et qu'une jonction avec une nouvelle branche doit être suivie. Il est aussi possible de remarquer que l'impossibilité de discriminer les mêmes cibles atteintes par des trajectoires différentes plusieurs fois. peut mener l'agent à tenter d'atteindre la même cible Cette même condition s'applique si l'agent a de la difficulté à se localiser dans le graphe par ses noeuds tampons à son arrivée sur la cible. De plus, l'environnement est plus grand et plus complexe, ce qui ne laisse pas beaucoup de temps à l'agent pour partir explorer lorsqu'il arrive à se resituer, les cibles ayant le temps de se réactiver avant son retour. Mais l'agent arrive à s'adapter à ses lacunes et à ces nouvelles situations à partir de l'organisation effectuée par ses motifs, e n replanifiant après avoir passé tout droit à une jonction, ou en modifiant ses objectifs poursuivis en fonction de l'environnement et de ses états internes. 9.2.2. Historique de la deuxième expérimentation avec l'environnement complexe Cette dernière expérimentation implique l'utilisation d'un obstacle mobile afin d'étudier l'impact sur le graphe topologique et la capacité de localisation de l'agent dans une telle situation. La figure 9.46 illustre la trajectoire empruntée par l'obstacle mobile. Pour la présentation des traces de cette expérimentation, l'arrêt de l'agent se fait généralement proche de l'obstacle mobile et non au point de charge comme pour les trois expérimentations précédentes. Il est alors plus facile de comprendre la trajectoire de l'agent à la proximité de l'obstacle mobile en fonction de la position de l'obstacle à cet instant. 199 Figure 9.46 Environnement avec obstacle mobile Au cours de cette expérimentation, l'agent arrive à survivre pendant 3061 cycles. L'annexe 4 présente l'activation des motifs au cours de cette expérimentation. historique est référencée dans la thèse comme étant l'historique 4. Cette Le départ de l'agent s'effectue aussi à x = 100, y = 400 et une orientation initiale de 90°. La figure 9.47 illustre la trajectoire effectuée après les 60 premiers cycles d'exécution, suivie de la figure 9.48 présentant le graphe topologique construit. À sa première rencontre avec l'obstacle mobile (point B), l'agent perçoit un corridor et se crée un noeud topologique à cet effet, comme le montre la séquence de noeuds 3, 4 et 5. Il continue de suivre les contours de la pièce et commence à tenter de se positionner dans son graphe au point E. Quand il se voit à nouveau proche de l'obstacle mobile (point F), le corridor n'est plus perceptible. Il ne peut se localiser dans son graphe, et les noeuds 26 et 27 sont alors créés pour caractériser cette situation. Sa trace se termine au point G. 200 E D Départ A B G C F a) Cycles 0 à 60 b) Cycles 60 à 330 Figure 9.47 Traces de l'historique 4, cycles 0 à 60 et cycles 60 à 330 Figure 9.48 Graphe topologique de l'historique 4, cycles 0 à 330 La figure 9.49 poursuit avec la trace de la trajectoire de l'agent pour les cycles 330 à 870. L'agent poursuit sa route en suivant les contours de la pièce, et arrive à se situer dans son graphe topologique au point B (noeud 13) après le rejet de trois séquences consécutives à cause de l'orientation. Il arrive à éliminer des noeuds dans son graphe 201 topologique jusqu'au noeud 9. Il ne garde pas très longtemps cette référence car i l traverse alors la zone de perturbation. Lorsqu'il rencontre à nouveau l'obstacle mobile (toujours en étant non situé dans son graphe topologique), l'obstacle lui bloque le chemin (point D). L'agent arrive alors à le contourner. L'agent arrive à se resituer encore au noeud 13 mais ne remonte pas cette fois dans son graphe pour éliminer des noeuds passés. Il perd à nouveau cette référence au point G. De plus, i l reste partiellement pris à un des pics et le motif DÉTRESSE commence à se faire sentir, mais sans causer l'activation du comportement DÉGAGE. La source d'excitation du motif est alors la non exploitation de VITESSE qui est pourtant activé. Au point I , l'agent se fait presque "écrasé" par l'obstacle mobile, ce qui explique sa trajectoire discontinue au point J. B G A C D F E H a) Cycles 330 à 610 Figure 9.49 I J b) Cycles 610 à 870 Traces de l'historique 4, cycles 330 à 610 et cycles 610 à 870 La suite de la trace est présenté à la figure 9.50. L'agent arrive finalement à se situer au point A (noeud 9), et parvient à débuter l'exploration au point B. Il atteint alors la cible centrale, et revient sur ses pas après avoir suivi les contours de l'obstacle vertical rectangulaire. Il arrive à se resituer au même point que précédent, et reprend l'exploration au point E. Il atteint à nouveau la cible centrale qui est 202 encore désactivée à cet instant. En se dirigeant vers la cible du coin supérieur gauche, le besoin de se diriger vers le point de charge se manifeste. L'agent arrive à se situer dans son graphe malgré le nombre important de noeuds construits pour la zone de perturbation. L'agent planifie une trajectoire vers le point de charge en plus de ressentir de la DÉCEPTION. La trajectoire planifiée indiquait à l'agent qu'il était dans la bonne direction en continuant vers l'avant d'un noeud pour ensuite devoir faire demi-tour. Le motif DÉCEPTION a permis à l'agent de réagir plus tôt (point H). En revenant vers le point de charge, il arrive à nouveau à se situer dans son graphe et à planifier une trajectoire lui indiquant qu'il est sur la bonne voie. Une fois le point de charge visible, l'exploitation de RECHARGE bloqua le niveau de CERTITUDE à 40% (voir annexe 4). Finalement, sa rencontre avec l'obstacle mobile au point J le fait dévier de la surface, attirée par la cible centrale puisque le comportement CIBLE est activé de par un niveau de JOIE nul (voir annexe 4). H D B F C A N M L E K J O I P a) Cycles 870 à 1370 Figure 9.50 b) Cycles 1370 à 1564 Traces de l'historique 4, cycles 870 à 1370 et cycles 1370 à 1564 Pour les cycles 1370 à 1564 de la figure 9.50, l'agent commence par atteindre la cible centrale (point K). Ensuite, en reprenant sa trajectoire sur les contours de l'environnement, le motif DÉCEPTION lui fait faire demi-tour pour atteindre la cible au 203 point N. L'agent arrive à se resituer dans son graphe topologique au noeud 14 (point N), et désire explorer à nouveau son environnement. Malgré la difficulté de percevoir des formes stables dans cette zone, le noeud anticipé permet d'activer les conditions pour la rotation de 90°. De plus, l'agent anticipe pour ce même noeud une possibilité de DÉTRESSE (point G figure 9.49) et inhibe ALIGNER qui l'était déjà par les conditions pour effectuer la rotation de 90°. L'agent arrive à s'éloigner perpendiculairement à la surface et perçoit sa transition de 90° correctement lors de l'analyse lexicale. Il continue sa course en tentant sans succès de suivre le contour de gauche de l'obstacle vertical rectangulaire. Il arrive au point P sans rencontrer l'obstacle mobile. Au cycle 1564, il ne reste plus de noeuds disponibles pour construire de nouvelles branches dans le graphe topologique. La figure 9.51 illustre le graphe topologique rempli. Il est possible de remarquer qu'une mauvaise similitude fut réalisée (au cycle 1072) dans le graphe topologique comme le montre les liens entres les noeuds 76 vers 62, et du point de charge vers le noeud 80. La séquence similaire trouvée est résulte en fait du passage de l'agent proche de l'obstacle mobile au cycle 860. L'obstacle mobile avait alors été perçu comme un corridor. Les séquences de noeuds, bien que similaires, ne correspondaient pas à la réalité de l'environnement. L'agent a donc fait une erreur de représentation interne et cette erreur est même responsable de son exploration au point E de la figure 9.50. 204 Figure 9.51 Graphe topologique de l'historique 4, cycles 0 à 1564 L'agent désire alors exploiter son graphe topologique, mais doit attendre que son graphe topologique ait été optimisé. Sa trajectoire est illustrée à la figure 9.52. I l prend un certain temps pour initialiser ses noeuds tampons avant de se localiser dans son graphe topologique (noeud 11, point B). le besoin de recharge s'étant manifesté, il planifie alors une trajectoire vers le point de charge lui indiquant qu'il est dans la bonne direction. Il arrive au point de charge (point C) en ayant perdu sa référence dans le graphe. L'optimisation est alors réalisée. Un total de 60 noeuds furent éliminés, ce qui résultat au graphe topologique de la figure 9.53. Une partie des noeuds construits pour le mur de gauche de la pièce furent éliminés, démontrant l'inutilité de ces noeuds pour l'agent car il n'a pu s'y localiser dans le passé. Des trajets n'ont pu être préservés vers les cibles des noeuds 13, 14 et 49 car les trajets planifiés devaient être parcouru en sens inverse en partant du point de charge, ce qui n'est pas retenu lors de l'optimisation. Pour le noeud 49, le trajet du point de charge vers la cible ne fut pas retenu à cause qu'il fut produit avec un état Face vers 205 x, ce qui est aussi rejeté pour les trajets planifiés. Ceci est une bonne décision car i l aurait été difficile de reproduire cette trajectoire par l'agent qui avait alors rencontré l'obstacle mobile sur son chemin (point J, figure 9.50). De plus, la trajectoire retenue pour la cible du coin supérieur gauche ne passe pas par cet endroit, le motif DÉTRESSE y ayant été mémorisé et que l'agent souhaite éviter. Il reste qu'une partie des noeuds dans la zone de perturbation fut préservée, étant donné que l'agent a réussi à s'y relocaliser à quelque reprise. Au niveau de l'erreur dans le graphe topologique, seul le noeud 80 fut préservé à cause de la condition cognitive d'exploration qui y est mémorisée. Par contre, si la cible centrale avait été mémorisée au noeud 84 lors de la construction de cette branche, une partie des noeuds aurait été préservée. reprend sa course pour passer près de l'obstacle mobile au point D. B F D C H A G a) Cycles 1564 à 1865 Figure 9.52 E b) Cycles 1865 à 2115 Traces de l'historique 4, cycles 1564 à 1865 et cycles 1865 à 2115 206 L'agent Figure 9.53 Graphe topologique optimisé de l'historique 4 Ensuite, au cours des cycles 1865 à 2115, l'agent arrive à se situer dans son graphe topologique avec ses noeuds tampons au point E (noeud 11), et planifie atteindre la cible au point F (noeud 13). L'agent planifie ensuite atteindre le noeud 14 juste e n avant de lui et y arrive, mais cette cible est la même que celle qu'il vient d'atteindre. Il perd sa référence dans son graphe lorsqu'il se trouve dans la zone de perturbation. Après s'être rechargé, il se dirige ensuite vers l'obstacle mobile qui l'éloigne de la surface et il se sent alors attiré par la cible centrale (point H). La figure 9.54 illustre la suite de la trajectoire pour les cycles 2115 à 2510. Après avoir atteint la cible centrale sans la localiser dans on graphe topologique, l'agent se dirige vers l'obstacle mobile. Aucun obstruction n'est réalisée par l'obstacle mobile au point C, mais l'agent a une grande difficulté à se localiser dans son environnement et ne peut planifier de trajectoires. Cette difficulté est telle que le motif ENNUI inhibe le motif EXPLOITER au cycle 2313 (point E) pour permettre à l'agent de reprendre l'exploration de son environnement. La figure 9.55 illustre l'influence des motifs 207 durant cette période. L'agent reprend ensuite sa route en créant maintenant des nouveaux noeuds et une fois relocalisé dans le graphe topologique, il part explorer la zone centrale de la pièce (point F). Mais bien que le comportement CIBLE soit activé, l'agent passe à côté de la cible sans y être attirée, la cible étant encore inactive. Arrivée proche de l'obstacle mobile, la cible centrale redevient active, ce qui excite le motif DÉCEPTION. Mais n'étant pas en mesure de faire demi-tour et de revenir sur ses pas à ce point, il laisse tomber. L'agent est alors davantage préoccupée par son arrivée sur le mur du bas (point G). La présence de l'obstacle et l'angle d'arrivée de l'agent le font tourner vers le point de charge. F B A E C a) Cycles 2115 à 2270 Figure 9.54 G D b) Cycles 2270 à 2510 Traces de l'historique 4, cycles 2115 à 2270 et cycles 2270 à 2510 208 Motif ENNUI 1 0.5 0 1600 1800 2000 Motif EXPLOITER 2200 2400 1600 1800 2000 Motif EXPLORER 2200 2400 1600 1800 2000 Motif CERTITUDE 2200 2400 1600 1800 2000 Motif CONFIANCE 2200 2400 1600 1800 2000 Motif DÉCEPTION 2200 2400 1600 1800 2000 Motif JOIE 2200 2400 1600 1800 2000 2200 2400 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 Figure 9.55 Motifs de l'historique 4, cycles 1500 à 2500 La figure 9.56 présente la trajectoire pour les cycles 2510 à 2940. Tout d'abord, l'agent continue sa course et désire à nouveau reprendre l'exploration au point C (malgré l'exploitation précédente à ce point et à cause de la limitation à anticiper à une jonction de branche construite suite au parcours en sens inverse du graphe), mais l'attirance vers la cible prédomine. 209 L'exploration a plutôt lieu au point D. L'obstacle mobile n'influence pas à cet endroit la perception de l'agent. qui se trouve plutôt attiré par la cible centrale. C G E F B H D A a) Cycles 2510 à 2760 Figure 9.56 b) Cycles 2760 à 2940 Traces de l'historique 4, cycles 2510 à 2760 et cycles 2760 à 2940 L'agent atteint alors vers la cible du point G. Il poursuit sa route sans arriver à se positionner dans on graphe topologique. De plus, au point H, il arrive face à face avec l'obstacle mobile qui avance alors sur lui. L'agent tente tout d'abord de l'éviter, mais reste pris à sa base. L'examen de l'activation et l'exploitation du comportement VITESSE permet alors d'exciter le motif de DÉTRESSE pour inciter l'agent à utiliser son comportement DÉGAGE et se sortir d'impasse. La figure 9.57 illustre l'introspection réalisée au niveau du comportement VITESSE pour activer le motif DÉTRESSE. Le comportement VITESSE est alors pleinement activé et exploité pour plusieurs cycles, signifiant que l'intention d'avancer de l'agent ne se concrétise pas. 210 Activation VITESSE 1 0.5 0 2880 2900 2920 Exploitation VITESSE 2940 2960 2880 2900 2920 Motif DÉTRESSE 2940 2960 2880 2900 2920 Exploitation DÉGAGE 2940 2960 2880 2900 2940 2960 1 0.5 0 1 0.5 0 1 0.5 0 Figure 9.57 2920 Conditions associées à la DÉTRESSE pour l'historique 4, cycles 2870 à 2970 L'agent épuisa une bonne quantité d'énergie à tenter de se sortir d'impasse, et n'arrive pas à se localiser ou à prendre une trajectoire lui permettant d'atteindre le point de charge avant d'épuiser ses réserves d'énergie. La figure 9.58 présente la dernière trace de cette expérimentation, suivie du graphe topologique résultant à la figure 9.59. Le S.O.S fut émis lorsqu'il ne restait plus que dix cycles d'énergie à l'agent. C B A 211 Figure 9.58 Trace de l'historique 4, cycles 2940 à 3061 Figure 9.59 Graphe topologique de l'historique 4, cycles 0 à 3000 Comme conclusion, cette expérimentation démontre qu'il peut être difficile pour l'agent de se former un graphe caractériser un environnement capacité d'y survivre. topologique utile et sans erreurs pour bien dynamique et bruité, et affecte certainement sa Mais malgré cette difficulté, l'agent est en mesure de comprendre qu'il lui faut plus de temps pour se former une représentation adéquate de l'environnement avant de pouvoir exploiter efficacement cette représentation. Ceci explique pourquoi l'agent reprend si rapidement l'exploration au cycle 2313 e n espérant améliorer ses connaissances de l'environnement. De plus, les conditions difficiles de l'environnement ne l'empêche pas d'explorer les endroits où il se sent e n confiance. La représentation topologique de l'environnement pourrait être améliorée si l'agent était en mesure de savoir ou d'inférer son passage aux abords d'un obstacle mobile. Une meilleure condition serait de lui permettre à l'agent de construire sa représentation topologique sans l'obstacle en mouvement, pour ensuite 212 faciliter sa localisation en créant des branches intermédiaires. La même chose se produit ici aussi comme le démontre les branches intermédiaires de la figure 9.59, mais ça demande plus de temps. Enfin, cette expérimentation démontre bien que la boucle d'exploration, d'optimisation et d'exploitation permet de mémoriser, d'oublier et d'utiliser successivement les connaissances jugées utiles en fonction d'un horizon déterminée à même les interactions de l'agent avec son environnement. 9.3. Commentaires D'une manière concernant générale, les résultats présentés les expérimentations présentées dans ce chapitre démontrent que l'agent arrive à bien exploiter et tirer profit de ses interactions avec son environnement dans le but d'y atteindre les cibles. limitations perceptuelles, de mémoire Il y arrive malgré ses et de ses processus de décision. Plus particulièrement, au niveau de la représentation internes des connaissances par l'agent, les expérimentations ont pu démontrer les difficultés qu'entraîne l'emploi de séquences similaires sur trois noeuds, la non-unicité des noeuds et l'impossibilité d'utiliser le graphe topologique d'une façon réversible lors de jonction avec une nouvelle branche. Bien sûr, des améliorations pourraient être apportées pour corriger ces faiblesses ou pour rendre cette représentation plus performante. Mais pour un agent ayant à oeuvrer dans des environnements complexes, il peut être difficile au concepteur de prévoir toutes les situations qui doivent affecter cette représentation. L'objectif ici était plutôt de vérifier comment l'agent, employant une approche de contrôle basée sur SIR pour son contrôle, arrive à s'adapter aux différentes circonstances, influencées tant par l'environnement que par ses états internes. C'était l'environnement représentation aussi important de considérer de telles simulé pour ne pas que l'agent fonctionne limitations toujours avec une idéale mais peu réaliste de son environnement. 213 avec Les résultats présentés montrent jusqu'à quel point l'agent arrive à faire face avec robustesse et tolérance aux fautes face aux circonstances provoquées par une représentation interne limitée. Les motifs et l'introspection cognitive ont un rôle important à jouer à ce niveau. Les situations environnementales rencontrées par l'agent restent quand même assez simples: une seule pièce avec différents angles et des obstacles, quelques cibles inhibées une fois atteintes, un seul point de charge, une zone de perturbation sensorielle et le passage prêt d'un obstacle mobile. Des situations beaucoup plus complexes auraient pu être générées comme l'inhibition du point de charge, avoir plusieurs agents dans la même configurations d'obstacles, etc. pièce, avoir plusieurs pièces avec d'autres Mais ce n'était pas tant le niveau de complexité de l'environnement qui était important pour la validation de SIR, mais plutôt comment l'architecture permet à un agent d'exploiter au maximum ses ressources et de s'adapter pour en limiter leurs lacunes afin de se comporter "intelligemment" dans son environnement. Il est possible de remarquer que l'agent conçu pour les expérimentations considère un grand nombre de facteurs: douze comportements, dix motifs, topologique, et les influences des besoins et de l'environnement. un graphe Il peut être très difficile d'arriver à coordonner l'ensemble de ces facteurs d'un seul coup. C'est le rôle du concepteur de bien analyser la problématique pour distribuer adéquatement les fonctionnalités entre les modules selon leur rôle, choisir les comportements et les motifs, ainsi que concevoir les mécanismes utiles pour la prise de décision avec SIR. Cette tâche doit être réalisée en portant attention aux principes de base de SIR pour la mise en oeuvre d'une politique de contrôle stable et efficace. l'équilibre et la détermination des influences entre les Pour faciliter intervenants dans l'architecture SIR, le concept de stratégie de contrôle s'avéra très utile. Une stratégie 214 de contrôle tente d'établir les interactions requises entre les modules et les intervenants de SIR pour que l'agent arrive à se comporter d'une manière désirée. Une façon d'établir ces stratégies est de se mettre à la place de l'agent afin de mieux comprendre ce qu'il lui est utile et ce qu'il doit faire pour réaliser ses objectifs. Ceci rejoint l'hypothèse de SIR que l'intelligence est propre au système, ou celle de Brooks [38] qui stipule que l'intelligence est située. Une telle technique est en fait à l'origine de l'utilisation des transitions entre les formes topologiques pour en déduire la rotation effectuée par l'agent. D'une façon plus générale, une stratégie peut être associée à différentes phases dans la conception des modules. Par exemple, la première stratégie fut de concevoir les comportements utiles pour permettre à l'agent de se déplacer dans son environnement en suivant les contours. Le schéma d'activation des comportements URGENCE, ÉVITER, VITESSE et ALIGNER fut alors pensé et incorporé dans le module de situation externe globale, tout en comportements. Ensuite, la seconde stratégie recherche de cibles. ajustant les paramètres incorporée de contrôle de ces fut de permettre la Le motif JOIE, le comportement CIBLE et les règles de besoins associées furent alors conçus. Il y a eu plusieurs autres stratégies d'élaborées comme celle affectant le désir de MANGER, celle étudiant comment la DÉTRESSE pouvait être déduite de l'observation des comportements, l'environnement ensuite pour l'exploiter, la FOLIE, l'exploration l'activation et initiale l'inhibition comportements pour faire demi-tour ou pour effectuer une rotation de 90°. de de Il est donc difficile de qualifier une telle méthodologie de contrôle comme étant orientée "du bas vers le haut" ou "du haut vers le bas": elle est plutôt axée vers une progression croissante du niveau de complexité des stratégies de contrôle, ou encore du niveau d'intelligence manifestée par l'agent. Ces stratégies de contrôle doivent toutefois être orientées vers l'établissement d'un scénario plus général spécifiant le déroulement 215 souhaité du comportement de l'agent. Ce scénario est aussi choisi par le concepteur, comme il fut fait à la section 4.3.1. Un autre aspect important à considérer lors de l'élaboration de ces stratégies porte sur la gestion des conflits entre les intervenants dans le processus de décision. Cette gestion des conflits s'effectue à différents niveaux, et le concepteur doit choisir avec soin le niveau propice pour un traitement efficace de ces conflits. Ces niveaux sont: - les politiques de contrôle mises en oeuvre dans les comportements. Le positionnement des fonctions d'appartenance, la formulation des règles et le choix des conséquences peuvent servir à gérer les conflits à même les comportements. Les opérations et les mécanismes utilisés pour l'inférence et la fusion d'actions ont aussi un impact sur la gestion des conflits. Avec les comportements flous, les opérateurs de conjonction, de disjonction et l'opération de défuzzification doivent donc aussi être considérés à ce niveau. particulièrement vrai pour les comportements actuateurs, comme URGENCE, ÉVITER et ALIGNER. qui contrôlent les Ceci est mêmes Des indications pour prévenir certains de ces conflits furent présentées à la section 5.3; - les recommandations formulées sous forme de désirabilité et d'indésirabilité, et leur utilisation pour la sélection de comportements. Au niveau interne, des modules de recommandations et des conditions d'exclusivité peuvent permettre de gérer les recommandations et les conflits. Au niveau du module de cognition, l'utilisation de conditions exclusives facilite cette gestion. Il est toutefois possible de faire la même chose au niveau des règles floues en considérant les conditions bivalentes dans les règles (ex,: si x1 alors y, si non( x 1) et x2 alors z). Une autre façon de gérer les conflits consiste à tirer profit de l'effet inhibiteur de l'indésirabilité. l'inactivité de Tout module de recommandation peut ainsi s'assurer de comportements qui 216 pourraient occasionner des conflits lorsqu'utilisés avec d'autres. Enfin, les opérations pour la sélection finale influencent aussi la gestion des conflits entre les recommandations formulées; - du module de motifs. Ce module sert fondamentalement à coordonner l'ensemble des ressources utilisées par SIR. Il y arrive en jouant le rôle de sens interne introspectif qui communique avec les sources de recommandations et qui intègre dans le temps certaines conditions d'opération. Le module de motifs influence la gestion des conflits de deux façons: l'inter-influence l'introspection par l'exploitation de comportements. entre motifs, et Le schéma d'influences entre les motifs rattachés à la cognition est un bel exemple montrant comment ils peuvent guider la planification et la gestion des connaissances. L'observation de l'exploitation des comportement en fonction du type de règles employées s'avéra aussi un moyen efficace d'identifier des conflits, comme le fait le motif DÉTRESSE. Ce paramètre permet de contourner les limitations perceptuelles et l'incapacité de tout prévoir ou de tout planifier lors de la conception e n comparant les intentions et les réactions. Ceci limite le fardeau d'optimalité lors de la conception, et permet une plus grande adaptabilité à l'agent pour faire face à des situations nouvelles venant de l'environnement ou de l'émergence de fonctionnalités de par ses propres mécanismes de décision. Enfin, les motifs permettent de guider et de superviser l'émergence de la fonctionnalité désirée en préservant la propriété d'émergence globale du système. L'ensemble de ces fonctionnalités a permis la mise en oeuvre d'un algorithme de contrôle qui respecte les hypothèses formulées à la section 3.1 sur l'intelligence avec SIR. Les comportements utilisés permettent à l'agent d'interagir avec son environnement et d'en tirer des informations. Ses actions sont influencées par ce qui est perçu de l'environnement (contexte externe) et de ses états internes (contexte interne). L'interaction conjointe entre les comportements, les sources de recommandations et les motifs font émerger holistiquement un comportement fondé 217 sur les expériences vécues dans son environnement. L'introspection fut considérée au niveau des réactions et des connaissances de l'agent. Enfin, l'agent arrive à se comportement d'une façon complètement autonome, contrôlant lui-même ses buts et ses connaissances L'émergence fut qui ont comme référence aussi considérée sous les capacités toutes ses propres dimensions de l'agent. lors des expérimentations, soit au niveau des comportements, de leurs interactions, de leur sélection, de leur fonctionnement interne et au niveau des connaissances. En fait, les mécanismes flous pour les comportements, leur recommandation et leur sélection hédonistique favorisèrent l'émergence tout comme la conception de l'agent, en permettant de combiner ses niveaux numériques (perceptuels et d'actions) avec des concepts symboliques. Les schémas d'activation des motifs permirent aussi de les faire émerger de par les situations vécues par l'agent. Mais d'une façon encore plus importante, l'émergence fut considérée au niveau du module de cognition par l'utilisation de forme topologique, d'informations tirées de l'analyse de ces formes (comme la rotation), la mémorisation d'états internes lors de la construction des noeuds topologiques, la localisation par similitude de séquences de noeuds, et l'élimination des noeuds jugés inutiles pour l'agent et ses objectifs de réalisation. Ainsi, la fonctionnalité émergeante répond à long terme aux objectifs fondamentaux de l'agent, à moyen terme à ses intentions, et à court terme à la situation courante. L'émergence donne de la flexibilité et de la robustesse à l'agent, mais rend son comportement difficile à anticiper par le concepteur. Le comportement de l'agent est en fait déterministe mais non prévisible: déterministe car son comportement est toujours dicté par des principes programmés (donnant une forme de personnalité à l'agent); non prévisible car il est difficile de contrôler le déroulement des expérimentations, le comportement de l'agent émergeant en fonction de ce qu'il expérimente (ses états internes définissant son attitude affectée par le passé mais 218 responsable du comportement présent). Par exemple, la simple modification d'un facteur d'incrémentation d'un motif pouvait provoquer une trajectoire différente où la condition étudiée par le concepteur n'est plus reproduite. liée à la rationalité de l'agent. Une telle propriété est Un agent rationnel prend de façon consistante les mêmes choix lorsqu'il est dans la même situation et qu'il est sujet aux mêmes choix (par les mêmes états mémorisés) [134]. Russell [169] aborde cette notion de rationalité en indiquant qu'un agent rationnel est un agent dont les actions font du sens par rapport à ses information et ses buts. Russell indique que la meilleure forme pour la reproduire est d'utiliser une rationalité bornée. Une possibilité pour y arriver consisterait à retenir très peu sous la forme de connaissances déclaratives, mais de compiler continuellement ses expériences en des politiques réactives qu'on croit appropriées à moyen terme. Au fur et à mesure que l'environnement change, l'agent pourrait réécrire son état interne complet pour s'ajuster au nouvel ordre du monde, gardant seulement ses structures de base pour répéter le processus dans le futur. C'est bien ce qui fut reproduit avec SIR au cours de ces expérimentations. De telles conditions de conception sont en fait le prix à payer pour concevoir des systèmes plus autonomes, ce qui doit quand même être finement considéré par rapport aux dangers potentiels que cela peut impliquer. En guise de conclusion pour ce chapitre, les résultats qui ont été présentés démontrent l'utilité des différents modules de SIR pour la conception d'agent autonome et "intelligent". L'agent cherche à exploiter le maximum de ses ressources disponibles, tant au niveau senso-motrices, des mécanismes internes, des informations tirées des interactions avec l'environnement et de ses états internes inférés qu'au niveau de ses compétences d'actions dans le monde. s'adapter pour en limiter leurs limitations. Il arrive aussi à Comme le mentionnent Brooks [41] et McFarland et Bösser [134], l'optimalité n'est pas un critère essentiel pour l'adaptation et l'intelligence. Les résultats présentés 219 répondent bien aussi à la vision de McFarland et Bösser [134] concernant le comportement intelligent, soit qu'il n'est pas simplement issue de la cognition mais du produit de la capacité comportementale et des circonstances environnementales. 220 10. SIR ET SA CAPACITÉ D'UNIFIER LES CARACTÉRISTIQUES DE L'INTELLIGENCE Les chapitres 3 à 9 ont présenté l'architecture de SIR, une mise en oeuvre possible de ses modules et les résultats obtenus afin de comprendre comment une telle architecture arrive à transmettre une intelligence à des systèmes. Il est maintenant possible de démontrer en quoi SIR peut être associé aux principes de mise en oeuvre et de définition de l'intelligence, ainsi que les aspects qui restent à y être validés. Tout d'abord, la section 10.1 présente les liens entre SIR et les approches en contrôle intelligent. La section 10.2 présente brièvement des liens entre SIR et les théories psychologiques sur le comportement et l'intelligence. comment SIR arrive à respecter présentés à la section 2.3. les critères Ensuite, la section 10.3 décrit associés à l'intelligence tels que Finalement, la section 10.4 élabore sur les extensions possibles de SIR et de sa validation pour la mise en oeuvre d'une intelligence plus évoluée dans les systèmes. 10.1. SIR et l'intelligence en contrôle intelligent Les bases du contrôle classique et du contrôle adaptatif peuvent se retrouver dans l'architecture de SIR. En effet, un contrôleur PID peut prendre la place d'un comportement car il permet d'établir une correspondance entre les sensations et des actions. Une architecture MRAC de contrôle adaptatif [1] peut aussi s'intégrer dans SIR: le module de cognition contiendrait alors le modèle mathématique du système pour réaliser l'adaptation via les paramètres internes du contrôleur, qui lui se trouve au niveau comportementale. Le contrôle à propagation avant (feedforward) [164] peut aussi y être intégré de cette façon. Cependant, il est maintenant possible d'étendre ces méthodologies avec SIR pour des environnements plus complexes en les couplant avec des principes de l'IA comme la planification, la réactivité et les 221 motivations. Il serait donc possible d'avoir des comportements réactifs pour le déplacement d'une machine dans un environnement et d'utiliser un comportement PID pour contrôler un bras robotisé sur cette machine, tout en considérant des motivations et des connaissances pour gérer ces modes d'actions. De plus, SIR permet aussi de situer en quoi les méthodologies de l'IA peuvent être utiles pour la mise en oeuvre de l'intelligence. L'emploi de la logique floue ou du graphe topologique tel que proposé dans cette thèse ne sont que des exemples, et d'autres techniques pourraient être utiles dans les différents modules de SIR. exemple, des réseaux de neurones artificiels pourraient être utilisés Par comme comportements; un module perceptuel plus évolué pourrait être utilisé au niveau du module de situation externe global; le raisonnement par cas serait une manière de représenter à l'interne des connaissances dans le module de cognition, et où l'approche génétique pourrait servir de méthode de recherche optimale et "créative"; etc. La généralité de l'architecture à ce niveau permet d'exploiter au besoin les techniques développées pour d'autres systèmes afin d'en exploiter les forces, e n fonction des capacités sensorielles, d'action et de traitement requises pour le système autonome à contrôler. L'important, c'est d'utiliser les mécanismes qui semblent les plus efficaces en fonction de ce que le système doit réaliser dans son environnement. L'environnement et le niveau des interactions entre le système et l'environnement ont aussi un impact direct sur l'utilité des modules de SIR. Si l'environnement est bien connu et fixe, il est alors possible que les modules de motifs et de besoins soient inutiles. Par contre, si le système doit opérer dans des environnements complexes, alors les modules de motifs et de besoins peuvent être utiles. Le type d'environnement et le rôle que doit y jouer le système sont donc deux facteurs influençant l'utilité des modules de SIR lors de la mise en oeuvre d'une politique de contrôle. 222 10.1.1. SIR et les quatre principes de mise en oeuvre de l'intelligence Puisque SIR tente d'unifier les différents principes associés à l'intelligence et sa mise en oeuvre dans la machine, elle présente donc plusieurs similitudes avec les principes de mise en oeuvre de l'intelligence présentés à la section 2.1. Par rapport à la vision hiérarchique de l'intelligence, SIR aussi peut être perçu comme une architecture à trois niveaux: le niveau d'exécution par le module comportemental et de fusion d'actions, le niveau de coordination par les modules de recommandations et de sélection finale, et le niveau d'organisation par le module de motifs. La différence majeure se situe au niveau du flux d'informations entre les niveaux qui ne correspondent plus simplement à des sensations ou des commandes. Par contre, SIR possède d'importantes divergences avec la vision fonctionnelles, car cette vision comportementale. entre directement Toutefois, la modélisation interne en conflit avec par étapes l'approche de l'environnement et la planification en fonction des buts, comme réalisés par le module de cognition, sont deux possibilités retenues dans SIR et qui n'étaient pas présents dans l'approche comportementale. Mais ces capacités ne se trouvent pas à la base du mécanisme de décision car le module de cognition n'est pas le seul à contrôler les intentions de l'agent. Lors de la conception, il faut alors porter une attention particulière aux interactions entre les modules et sur la nécessité de synchroniser leurs actions. Par rapport à la vision distribuée de l'intelligence, celle-ci est présente à deux niveaux dans SIR. Tout d'abord, un agent peut utiliser une architecture comme S I R pour son contrôle. La problématique consiste alors à faire travailler plusieurs agents ayant leur propre personnalité, connaissances, et intérêts en société ou dans des tâches collectives [23, 107, 130, 149, 196, 197]. Ensuite, la distributivité peut être considérée au niveau des modules internes de SIR. 223 Chacun des modules de SIR ou de leurs constituants peut aussi être mis en oeuvre sous forme d'un processus indépendant. De telles situations devraient être étudiées plus en détail avec une mise en oeuvre distribuée de SIR. Enfin, le principe d'intelligence par émergence de fonctionnalité se trouve directement à la base de SIR de par l'emploi de comportements pour le contrôle des actions de l'agent. En plus, l'émergence est préservée et utilisée dans les différents modules de SIR, comme il fut discuté en 9.3. Mais par rapport aux quatre principes associés à l'approche comportementale de la section 2.1.4, SIR va un peu plus loin e n considérant que l'intelligence est affectée par ses expériences en plus de passer par les yeux de l'observateur. 10.1.2. SIR et ses similitudes avec les approches actuelles en contrôle intelligent Une grande source d'inspiration pour la réalisation présentée dans cette thèse et la conception de SIR provient de recherches en logique floue. Tout d'abord, l'utilisation simultanée et fusionnée de plusieurs modes de contrôle est réalisée par logique floue dans plusieurs approches [37, 79, 101, 84, 87, 168]. Le principe de règles contextuelles floues [30, 91], de bases de règles actives [181] ou encore par des méta-règles utilisées pour sélectionner les bases de règles [221] affichent aussi de grandes similitudes avec ce procédé. De plus avec SIR, comportements n'est pas si l'effet considéré, alors de l'indésirabilité les conditions sur le choix des de recommandations favorables à un comportement forment un antécédent supplémentaire ajouté aux règle de ce comportement. Ce principe fut proposé par Berenji [30, 110]. Avec SIR, cet antécédent est plus général car il résulte de la conjonction de conditions variées, l'activation de plusieurs règles (cognitives, de situation externe ou de besoins), et l'opération de sélection considérant leur indésirabilité. 224 De ce fait, c'est l'architecture proposée par Saffiotti et al. [170, 171, 172] qui présente le plus de similitude avec SIR et les mécanismes de mise en oeuvre présentés dans cette thèse. Cette approche utilise une mesure de désirabilité pour sélectionner dynamiquement des comportements flous avec un mécanisme de fusion par défuzzification. L'approche est qualifiée de context-dependent blending of behaviors . Un mécanisme semblable fut utilisé lors des expérimentations pour le module de comportements de SIR. De plus, les règles des comportements URGENCE, ÉVITER et VITESSE ont toutes été inspirées de leurs travaux [171]. Malgré ces similitudes importantes, les différences entre l'architecture de Saffiotti et celle de SIR sont nombreuses. Pour assurer une bonne intégration de la planification et de la réactivité, Saffiotti utilise une représentation commune à partir d'un module de perception local (Local Perceptual Space) pouvant exploiter une carte de l'environnement et servir à établir des buts et les transmettre à des comportements. L'information de ce module permet d'utiliser des formes abstraites et déduites pour le contrôle réactif à l'interne des comportement et pour leur activation. L'architecture arrive ainsi à gérer les plans tant au niveau délibération qu'au niveau réactif [172]. Ceci pourrait être reproduit au niveau du module de cognition et de ses interactions possibles avec le module de comportements, mais diffère de ce qui fut mis en oeuvre ici. Il fut préféré d'utiliser un mode perceptuel moins évolué sans information a priori ou de réactions à des sensations abstraites pour démontrer la possibilité de former d'une façon autonome des connaissances sur l'environnement avec un mécanisme différent. De plus, Saffiotti considère une vision hiérarchique de l'intelligence où la planification demander du système. est influencée par ce qu'un usager pourrait Avec SIR, la recommandation de comportements n'est pas simplement influencée par la situation externe et la cognition mais aussi par les besoins, en considérant l'indésirabilité en plus de la désirabilité des comportements. 225 Avec l'emploi des motifs et ses capacités introspectives, la gestion des buts du système s'y effectue d'une façon complètement autonome. D'autres similitudes peuvent être tirées des approches en contrôle intelligent basées sur la logique floue. L'approche conceptuelle de Lavrov [111] est elle-aussi basée sur l'adaptation dynamique d'une structure modulaire en utilisant un métacontrôleur cherchant à construire dynamiquement une configuration de contrôle e n activant uniquement les blocs de règles pertinents. Les principales différences avec SIR se situent au niveau des modules propres aux états internes de SIR et du métacontrôleur, ainsi que dans la structure modulaire utilisée pour le contrôle des actuateurs (soit au niveau comportementale de SIR). Parmi les approches ne considérant pas la logique floue, il y a celle de Donnart et Meyer [57] qui affiche certaines similitudes avec SIR. L'architecture est composée d'un module réactif, d'un module de planification, d'un générateur de contexte (pour anticiper des résultats et prédire les fautes), d'un module de récompenses internes (pour l'apprentissage par renforcement des règles) et d'un module d'auto-analyse (pour le module de planification). L'ensemble résulte en une architecture où l'état de motivation en tout temps dépend de son état interne, sa perception du monde externe, les conséquences de son comportement actuel et sur les conséquences prévues de son comportement futur. L'approche est très différente de SIR au niveau des principes et des modules, mais elle est similaire au niveau de l'objectif d'exploiter les motivations, le contexte, la réactivité, la planification et l'auto-analyse comme composantes de la politique de contrôle. 10.2. SIR et les théories en psychologie 226 Sans avoir une connaissance approfondie de la psychologie, il est possible d'établir des liens entre SIR et les théories psychologiques [56] concernant le comportement humain. L'utilisation des motifs et de l'introspection dans SIR peuvent s'associer à la théorie de la personnalité de Freud qui met l'accent sur l'importance des motifs et des conflits inconscients dans la détermination du comportements. Les théories des besoins de Maslow et Rodgers considérant l'importance de la conscience humaine, la connaissance de soi et l'aptitude à opérer des choix en mettant l'emphase sur le présent, s'y trouvent aussi reproduites par les modules de besoins, de motifs et de situation externe globale de SIR. Enfin, les théories cognitives comportement qu'une comme étant plus simple réponse aux considérant le événements de l'environnement (car ces derniers sont traités par l'organisme avant même d'être transformés en comportements) ont des liens avec les modules propres aux états internes de SIR. Il existe aussi des similitudes entre SIR et les théories de la motivation [56], soit les théories de contenu et les théorie de processus. Une théorie de contenu souligne les facteurs internes qui dynamisent le comportement. Elle cerne la nature des besoins ainsi que le rôle de ceux-ci dans le démarrage d'un cycle de motivation et qui incite un individu à adopter une attitude ou un comportement particulier. Une attitude est une prédisposition stable et apprise affectée par des composantes cognitive, affective et comportementale et qui guide les comportements. Les théories de contenu de Maslow, Porter, Alderfer [56] peuvent donc être associées au rôle du module de besoins et du module de motifs dans SIR. Contrairement aux théories de contenu où l'activation d'un comportement s'effectue automatiquement par l'activation d'un besoin qui cherche satisfaction, les théories de processus étudient comment ces forces interagissent avec l'environnement et quels sont les facteurs qui amènent l'individu à adopter u n 227 comportement plutôt qu'un autre [56]. La théorie des attentes de Vroom [56] indique que l'individu effectue un choix conscient et délibéré des moyens lui permettant d'atteindre ses objectifs. L'évaluation des alternatives possibles et de leurs conséquences lui permettent de prendre une décision fondée sur des considérations liées aux particularités de la nouvelle situation dans laquelle il se trouve. La théorie affirme que l'individu évaluera et choisira parmi un ensemble de comportements celui qui est le plus approprié et qui lui permettra d'obtenir les récompenses auxquelles il attache une certaine importance ou une certaine valeur. Il y a aussi la théorie behavioriste [56] qui soutient que la détermination du comportement, au lieu d'être rationnelle et basée sur des motifs intrinsèques, est dictée seulement par leurs conséquences. Cette sélection de comportements est à la base de SIR, et les modules propres aux états internes de SIR permettent de délibérer sur leur choix en fonction de différents facteurs rattachés à ces théories. 10.3. SIR SIR et l'intelligence considérée dans sa est en mesure d'expliquer et d'intégrer globalité l'ensemble des caractéristiques associées à l'intelligence telles que présentées à la section 2.3. Elle permet aussi de prendre en considération les contraintes environnementales, physiques, internes et les limitations des mécanismes de décisions pour tenter de donner une politique de contrôle la plus "intelligente" possible au système. Les justifications de ces aspects ont été réparties sur l'ensemble des chapitres de cette thèse et ne sont pas reproduits ici. L'objectif de cette section est de montrer en quoi SIR arrive à aller plus loin au niveau des critères associés à l'intelligence. En plus de permettre l'intelligence tout en l'unification respectant de plusieurs leurs principes caractéristiques sous-jacents, SIR associés permet à de progresser vers la reproduction artificielle de l'intelligence en bénéficiant d'une 228 faculté importante pour l'intelligence, soit l'introspection. Cette capacité d'auto- observation fut prouvée utile, par les résultats présentés au chapitre 9, pour donner une autonomie et une capacité d'adaptation supérieure à l'agent. L'introspection est une capacité importante à reproduire au niveau des systèmes car elle contribue à la compréhension des mécanismes de raisonnement humain, de ses émotions et de la conscience. 10.3.1. SIR et l'explication du raisonnement humain C'est à partir de l'observation de ses actions, de ses connaissances et de ses décisions que l'humain est capable d'expliquer, dériver des sens et des contextes, de s'étudier et d'évoluer. Au niveau cognitif, cette auto-observation explique possiblement pourquoi l'humain arrive effectivement à déduire des formes de raisonnements logiques et symboliques (le raisonnement symbolique n'est qu'une explication symbolique de ce comment est perçu les méthodes de raisonnement), d'expliquer consciemment ses réactions et de poser lui-même des réflexions sur ses propres intervenants dans le processus "intelligent" de décision. Cette forme d'introspection reste quand même de haut niveau et ne s'attarde pas vraiment aux mécanismes de mise en oeuvre, même si elle en est influencée (l'humain n'est pas conscient de ses activités neuronales). Cette capacité humaine est en fait à la base de la psychologie et sert d'origine à plusieurs approches de IA. La mémorisation, l'apprentissage, l'histoire et l'expérience du système jouent certainement un rôle à ce niveau. Les expérimentations réalisées sont quand même restées très limitées sur ces possibilités. La mémorisation, l'anticipation et la reproduction de conditions particulières (recommandations, motifs), ainsi que la sélection des noeuds utiles lors de l'optimisation au niveau fonctionnalité. du graphe topologique font parties de ce type de Ceci permet au système de se former de façon autonome une compréhension de son influence sur l'environnement, de l'impact de ses intentions et 229 actions sur celui-ci, environnement. ainsi que des principes de fonctionnement de cet Mais il reste possible d'aller beaucoup plus loin à ce niveau e n fonction des spécifications requises pour le système à contrôler, et l'architecture de SIR s'y prête bien. La formation de symboles à partir du comportement émergent [44, 78, 212] sont des aspects intéressants à étudier à ce niveau. 10.3.2. SIR et les émotions Un domaine qui risque de prendre plus d'importance en IA concerne l'étude des motivations et des émotions. Ce sont des aspects importants de l'esprit perçu comme un système de contrôle, et leur développement amèneront une compréhension plus profonde sur comment les états émotionnels et motivationnels surviennent, l'humeur, les attitudes, la personnalité, etc. [190]. Il existe des théories émotives en IA depuis 1962 [153, 155]. Simon [186] fut un des premiers à croire que les motivations et les émotions se doivent d'être incorporées dans des systèmes de traitement de l'information, de par leurs influences majeures dans le comportement humain. Il peut être maintenant intéressant de voir les liens entre la connaissance actuelle des émotions et les fonctionnalités disponibles de SIR. Malgré l'absence de théorie véritable des émotions au sein duquel on donne à l'émotion sa place propre parmi d'autres composantes comme le traitement de l'information et l'adaptation (Frijda [165]), on peut dénombrer plusieurs théories des émotions (Strongman en présente une trentaine [201]). Ces théories peuvent être classifiées de la façon suivante [201]: - Théories basées sur la motivation et la physiologie. La plupart des théoriciens contemporains sur la motivation croit que la motivation et l'émotion sont intimement reliée [25]. Selon Izard et Buechler [161], les émotions sont des motivateurs et des organisateurs fonctionnel. de comportements, et ont donc un rôle La théorie de Young [201] soutien que l'émotion est une sorte de 230 continuum (avec un signe, une intensité et une durée) qui devient une motivation, soit un régulateur de comportement en les activant, les soutenant et les organisant. L'évaluation hédonistique (plaisant/déplaisant) serait un facteur associé à cette vision des émotions [25, 165]. Mais il n'y a pas de réponse simple pour définir la relation motivation-émotion [138]; - Théories comportementales, qui considèrent que l'émotion dépend de la nature du stimuli de renforcement et des complexités du conditionnement classique [201]; - Théories cognitives. L'essence de toute approche cognitive à l'émotion est que l'émotion dépend de l'interprétation de la situation [25, 138, 161] en lui attribuant des causes [138] pour en évaluer sa pertinence et rendre flexible l'adaptation du comportement par évaluation cognitive [201]. On considère aussi la cognition et l'émotion comme des deux processus indépendants mais interagissant, et dont leur importance relative doit être balancée [201]; - Théories générales qui tentent de regrouper l'ensemble des principes associés aux émotions. Les émotions se caractérisent autant par des processus cognitifs (pour leur détermination) que par des qualités motivationnelles (qui cause des réponses émotionnelles) [165]. Par exemple, Leeper perçoit l'émotion comme une force active impliquant la motivation et la perception organise, soutient et dirige le comportement [201]. cognitive, qui Mais l'émotion n'est pas l'équivalent conceptuel direct de la cognition et de la motivation: elle se situerait plutôt à un niveau supérieur [165]. SIR permet de considérer l'aspect motivationnel des émotions en les considérant au niveau des motifs et leur influence sur les recommandations. L'aspect cognitif est aussi considéré par les évaluations pour inférer de la DÉTRESSE ainsi que les motifs affectés par le module de cognition. Le conditionnement n'est pas une optique 231 considérée lors des expérimentations, mais pourrait se mettre en oeuvre en considérant l'apprentissage de motifs avec SIR. L'expérience [146] et l'auto-évidence essentielle) des émotions. [161] sont le sine qua non (condition L'expérience émotionnelle est la cause du comportement émotionnelle, et l'expérience émotionnelle est elle-même réponse: elle consiste e n une rétroaction en provenance de la réponse corporelle [165, 201]. Ce sont des expériences privées, survenant seulement dans le contexte d'une personne qui se comporte dans une situation [161]. L'émotion d'informations au cours duquel intervient résulte l'évaluation ainsi d'un traitement de la signification des stimulations ou événements du milieu [69] par rapport à la poursuite d'objectifs ou de préférences, la préparation physiologique et psychologique des programmes énergétiques et moteurs aux actions propres à répondre à ces stimulations du milieu en vue d'une meilleure adaptation [165]. Sous cette optique, les processus émotionnels servent de point d'intersection entre les situations et événements perpétuellement changeants du milieu et l'organisme [165], et tente de trouver un équilibre entre les intérêts de l'organisme et l'environnement [69]. L'adaptabilité du comportement [157] des organismes à leur milieu est due en grand partie au système émotionnel e n substituant des modes de comportement plus flexibles aux modèles réactionnels réflexes stéréotypés et aux mécanismes déclencheurs instinctifs et innés (Frijda [165]). Elles viennent donc déplacer le contrôle [145] en activant et organisant les comportements [161] ou gérant l'allocation de ressources [69]. Ces propriétés peuvent être expliquées par les exigences d'un système qui gère de multiples composantes, tente d'atteindre des buts multiples et opère en milieu incertain [145, 165]. Pour les organismes ayant à gérer un grand répertoire flexible de comportements qui doivent évoluer en influençant parallèle, les émotions font la focalisation parties des capacités de l'attention, la mise en place de contrôle de priorités en selon différentes modalités d'évaluation de stimulation et sous les différentes alternatives 232 du comportement, à gérer l'interruption et l'action, contrôler l'adéquation constante entre les actions de l'organisme et les événements extérieurs, et le partage de temps que cela implique [146, 165]. L'émotion est donc définie par sa dépendance à l'égard de la planification [145], de la détermination des buts et de la motivation [165]. Elles peuvent affecter la mémoire [146, 201], activer des opérations cognitives (et l'inverse), servir de moyen de communication entre les processus [145], causer des actions expressives (et l'inverse), affecter les actions dirigées-buts, les intentions, devenir des buts [138], activer les modules pendant un certain temps, interagir socialement [165, 186] par l'élaboration de plans mutuels [145], assurer la réalisation de buts en examinant la réussite et les fautes [69]. De plus, les émotions peuvent inférer de nouvelles émotions [146] (certaines théories indiquent qu'ils existeraient de six à dix émotions primiaires [25]) ou s'inhiber entre elles [145] (en les conceptualisant sous forme de pairs polaires opposés [161] ou par des mécanismes d'égo-défenses qui sont des stratégies pour traiter les conflits entre émotions de façon inconsciente [161]). Certains les voient comme des propriétés émergeantes [24, 161], i.e. qu'elles n'ont pas d'états spécifiques à l'interne: elles émergent du système de valeur et de l'auto-organisation [155, 157]. L'ensemble de ces caractéristiques ont été reproduites lors des expérimentations avec SIR de par les motifs et leur rôle au niveau des sources de recommandations. Les motifs comme EXPLORER, EXPLOITER et ENNUI et leur inter-influences démontrent l'importance des influences entre motifs pour la gestion de buts multiples et de trouver un équilibre des buts en fonction des capacités et des connaissances de l'agent. L'ensemble des motifs permit aussi de gérer adéquatement un répertoire de comportement inconnu. devant s'adapter à diverses Tous ces motifs sont influencés environnement mais aussi par son situations un environnement par l'expérience de l'agent dans son auto-observation, 233 dans reproduisant la double influence des motifs sur l'expérience (son contrôle et son affectation). Mais le niveau d'"émotivité" démontré lors des expérimentations reste très limité, et des schémas d'interaction plus complexes devront être mis en oeuvre avant de pouvoir affirmer avoir reproduit d'une forme d'émotivité respectable pour la machine. 10.3.3. SIR et la conscience Le Petit Larousse définit la conscience comme la perception plus ou moins claire des phénomènes qui renseignent sur la propre existence d'un organisme. des chercheurs comme Selfridge et Franklin considérée comme essentielle pour l'intelligence. Il existe [179] pour qui la conscience est Pour certains, la conscience serait une illusion causée par notre auto-observation [44] et ne doit pas être spécifiquement programmée: elle émerge [41]. Pour d'autres, ce qui est disponible pour le raisonnement (comme des faits logiques) correspond à la conscience, et l'observation de la conscience correspond à l'introspection [132]. Schank croit en la même possibilité car il mentionne qu'un expert est un être conscient de lui-même: il sait quand il connaît quelque chose, et peut porter des observations sur ce quoi il connaît [176]. Wojcik [215] indique pour sa part que pour être intelligent, il faut être conscient de ses influences et son rôle (être self-aware ). D'un point de vue psychologique, Hunt [89] indique que chez l'humain, la plupart de la pensée prend lieu à l'extérieur de la conscience mais les résultats de ce processus deviennent conscients. L'humain ne fait pas que penser, il se perçoit en train de penser: le miracle ultime et le plus créatif de notre esprit est qu'il est conscient de lui-même. La possibilité de reproduire la conscience dans la machine est aussi une question qui est abordée en philosophie, comme l'argumente Sloman [190, 133]. Une constance dans ces visions est que l'auto-observation est essentielle pour reproduire la conscience. L'introspection est en fait définie comme l'étude de la conscience par elle-même, du sujet par lui-même. Turing [132] aurait même indiqué 234 que la machine devrait être en mesure, en observant les résultats de son propre comportement, modifier ses programmes pour réaliser un objectif plus efficacement. La difficulté est que lorsqu'un système s'observe, il peut venir interférer avec ses propres observations et il doit donc être conscient l'environnement [160]. de son impact possible sur Un modèle de soi semble être requis. Sous l'aspect des émotions, Oatley et Jonhson-Laird [145] indiquent qu'un modèle de soi doit comporter deux dimensions: la première s'intéresse à ce que peut faire l'individu et ses buts propres; la seconde contient l'abstraction de ce qu'il a expérimenté par rapport à son environnement et aux autres. De la même façon, l'émotion jouerait un rôle au niveau de la conscience. Pour pouvoir ressentir des émotions, la machine doit être consciente [146], et la conscience est organisée par les émotions fondamentales qui donnent une direction et un focus aux processus de sensation, perception et cognition [161]. Avec SIR, le système est en mesure d'observer ses processus en action, et non seulement ses résultats. de l'environnement, L'agent prend alors conscience par lui-même de l'influence de l'influence de son mécanisme de sélection performances ainsi que de l'influence de ses actions sur l'environnement. sur ses Le niveau de conscience validée expérimentalement dans cette thèse reste quand même très limitée, mais SIR présente du potentiel pour aborder ces aspects au niveau des systèmes. Cette fonctionnalité est un des avantages important de SIR pour la mise e n oeuvre de l'intelligence. 10.4. Extensions futures Pour valider davantage SIR et ses principes de fonctionnement, plusieurs études peuvent être entreprises. Ces études dépendent du domaine d'application ou de l'environnement dans lequel SIR et le système à contrôler devront évoluer. La suite 235 logique d'application consiste à utiliser SIR pour le contrôle de robot réel. Une telle mise en oeuvre peut reprendre les mécanismes présentés dans cette thèse et les adapter aux différentes contraintes associées à cette problématique. D'autres champs potentiels d'application sont les expérimentations de groupe d'agents [130, 149], les environnements virtuels pour la création d'interface homme-machine "intelligente" et la domotique [137]. L'application de SIR dans des applications diverses demandera certainement l'étude de fonctionnalités et de mécanismes différents de ceux présentés dans cette thèse. Les prochaines sous-sections présentent les extensions possibles de SIR concernant ses mécanismes de mises en oeuvre, la validation de l'ensemble de ses liens entre les modules, et pour l'apprentissage. 10.4.1. Extensions au niveau des mécanismes de mise en oeuvre Comme il fut soulevé à la section 10.1, plusieurs autres techniques peuvent être utilisées au niveau des modules de SIR. Le choix de ces mécanismes sont directement influencés par le type d'application considérée. Au niveau des motifs, l'observation de la durée d'exploitation (pour la fatigue [173]), d'inutilisation (pour l'impatience [173]), ou d'interruption continuelle d'un comportement pourraient servir. Un mécanisme d'adaptation des rythmes variations de certains motifs comme le fait Steels [199] serait aussi utile. de Un tel mécanisme semble bénéfique dans les problématiques similaires à celle étudiée par ce chercheur et McFarland reproduisant un éco-système où il y a une compétition d'énergie dans l'environnement entre les agents [135, 196, 197, 198]. Un agent est dans une position où la survie des autres agents est une condition pour sa propre survie, le forçant à la coopération malgré la compétition. affecterait ainsi ses connaissances ainsi que sa personnalité. 236 L'histoire de l'agent Au niveau du module de besoins, a gestion de besoins selon l'utilité de variables d'états endrogènes, en considérant la fatigue et l'inhibition, pourrait être utile [34], tout comme l'utilisation de fonctions d'utilité et de coût [134, 136]. L'adaptation de la fonction de coût en fonction de l'histoire personnelle de l'agent [136] est aussi une possibilité. Au niveau du module cognitif, un module similaire au module perceptuel local de Saffiotti et al. [170, 171] pourrait être bénéfique pour combiner des informations a priori à celle acquise par le système. Des approches floues pour la planification à partir de carte [218] et de graphe [202] ou pour caractériser les situations par états flous [118, 202] pourraient aussi être exploitées, tout comme l'emploi de règles floues pour la recommandations de comportements. Le module de cognition pourrait aussi bénéficier des techniques de délibération en tout temps [73]. Toute extension pour permettre la communication entre agents (par des comportements de transmission et de réception par exemple) ou par le biais d'une interface homme-machine seraient aussi bénéfique pour le module de cognition. Au niveau de graphe topologique, l'utilisation d'un RNA récurrent avec unités de contexte comme le fait Tani [203] pour apprendre des structures grammaticales cachées dans la géométrie de l'environnement à partir des entrées sensorielles et ses expériences de navigation, pourrait être utile pour la formation de connaissances ou l'apprentissage d'expressions lexicales. Une meilleure distinction des noeuds dans le graphe topologique pourrait être réalisée en employant un système de vision plus évolué pour assigner des indices visuels au noeud (comme le fait [106]), ou encore par l'emploi de marqueur pour discriminer les noeuds lors d'exploration (comme le fait [58]). L'approximation de la longueur et de la rotation en fonction de la vitesse des roues d'un robot mobile peut aussi renforcer la caractérisation des noeuds. De plus, les cibles pourraient être identifiables en permettant la perception d'une étiquette 237 par l'agent afin de regrouper les noeuds associés à une même cible, et faciliter la localisation dans le graphe topologique. Des méthodes pourraient aussi être incluses pour détecter ou reconnaître la mobilité d'un obstacle dans l'environnement, et s'en servir pour une meilleure localisation dans le graphe topologique. Enfin, des analyses plus complexes au niveau du graphe topologique lors de l'optimisation, considérant une forme de rétrospection [189] sur les résultats obtenus, seraient une autre forme d'introspection cognitive intéressante à valider avec SIR. Enfin, l'étude des mécanismes utiles pour SIR et son utilisation dans différentes applications permettront ensuite de définir des standards de développement (langage, répertoire d'outils) pour faciliter sa mise en oeuvre en fonction des besoins du système. 10.4.2. Extensions au niveau des liens entre les modules de SIR Quelques liens d'influence entre les modules de SIR restent encore à être validés. Ces liens ne l'ont pas été car la nature de l'application proposée avec BugWorld ne s'y prêtait pas, et qu'ils impliquent des niveaux d'intelligence fonctionnalités demandent des études plus approfondies. associés avec des Tout d'abord, il reste à valider le lien entre le module de motifs et le module de situation externe globale. Ce lien pourrait s'avérer utile si une perception plus évoluée était utilisée par le module de situation externe globale pour influencer pouvaient influencer la perception les motifs, ou encore si les motifs ou le focus d'attention pour la situation environnementale considérée dans les recommandations comportementales. Ensuite, le lien du module de besoins vers le module de motifs ne fut point exploité. L'utilisation de mécanismes comme les diagramme d'utilité ou des schémas de priorité pourraient servir à valider une telle influence. Par exemple, la fatigue pourrait être associée à la poursuite sans relâche d'un besoin particulier. 238 Enfin, l'influence entre le module de motifs et le module de sélection finale doit aussi être validée avec des systèmes demandant par exemple l'établissement de priorité entre les sources de recommandations à partir de valeurs. Un agent devant être plus rationnel (priorité au module de cognition), plus instinctif (priorité au module de situation externe globale), ou plus égoïste ou émotif (priorité au niveau des besoins) pourrait bénéficier d'une telle influence. aussi modifier l'importance comportements. Des règles de valeurs pourraient des sources de recommandations sur le choix Parker semble exploite aussi un mécanisme de valeurs des comme l'égoïsme, l'impatience et la paresse pour dériver les intentions [148, 149]. La possibilité d'utiliser des règles de pondération dans le module de sélection finale viennent en fait justifier l'emploi du mécanisme flou de sélection pour la mise e n oeuvre présentée dans cette thèse. Mais un processus d'activation différent peut très bien être utilisé, comme l'emploi de neurones de combinaison de recommandation utilisant un opérateur maximum de combinaison des entrées et pour la soustraction des influences de désirabilité et d'indésirabilité (comme le fait le module de sélection finale dans sa mise en oeuvre actuelle) avec des poids variables pondérant leurs influences. Comme influence allant du module de sélection finale au module de motifs, une mesure d'excitation basée sur la somme de la désirabilité et l'indésirabilité comme proposée par Ortony et al. [146] pourrait affecter un des motifs reflétant l'anxiété et la perturbation de l'agent (si trop excité) ou son intérêt et sa vigilance (si peu excité). La charge environnementale décrit alors l'environnement en terme d'excitation [146]. Enfin, des règles évaluant l'impact des différentes sources de recommandations sur la désirabilité effective des comportements pourraient aussi affecter les motifs. 10.4.3. Extensions pour l'apprentissage au niveau des modules de SIR 239 L'apprentissage concerné ici est propre aux politiques de contrôle utilisées par les différents modules de SIR, et non pour la formation de connaissances à partir des interactions avec l'environnement. Avec SIR, il fut supposé qu'une expertise initiale est transférée par le concepteur pour que le système puisse interagir avec son environnement avec un minimum de capacités. Un tel choix place SIR au coeur du débat concernant le compromis entre ce qui doit être programmé et fixe dans la machine versus ce qu'elle doit apprendre. Ce compromis dépend de l'approche, de nos capacités de lui transmettre et des risques associés à l'apprentissage [179]. Le problème principal est de trouver un mélange de connaissances et de savoir-faire implicites et acquis qui permettent au système d'atteindre le maximum d'adaptation dans sa niche [134], et c'est ce compromis qui est considéré avec SIR. L'éducation de l'agent se fait donc ici par transfert direct d'expertise au lieu de se faire par de longues séries d'expérimentations pratiques. Mais même si ceci ne fut pas validé au cours des expérimentations, SIR n'exclut pas la possibilité de réaliser u n apprentissage à différents niveaux. L'approche permet en fait d'identifier et d'organiser un contexte de recherches où différentes techniques d'apprentissage pourraient être exploitées selon leur utilité et le rôle des modules. L'apprentissage pourrait se faire au niveau des comportements, leur niveau d'influence étant affectée par les sources de recommandations et les motifs. Le choix des comportements par les sources de recommandations pourrait aussi être appris, tout comme l'ajustement des motifs et leur influence interactions. sur les autres modules pour une meilleure gestion des Les connaissances acquises du module de cognition pourraient aussi servir à initialiser de nouveaux comportements et superviser leurs ajustements, ou à regrouper des comportements pour en former de nouveaux. De cette façon, l'apprentissage pourrait se faire avec SIR du bas vers le haut et du haut vers le bas, comme le veulent Fukuda et Shibata [70, 71]. 240 L'apprentissage par intéressantes pour SIR. renforcement [98, 99] semble offrir arrivent possibilités Un système qui doit apprendre à agir dans le monde par essais-erreurs fait face à un problème de renforcement [96]. renforcement des à apprendre interaction avec l'environnement la fonction Les algorithmes à de contrôle directement par en utilisant les indications d'un critique. Le renforcement se base sur un signal simple, n'exploite pas de connaissances explicites et généralise de l'expérience passée de façon incrémentale à partir d'un masse d'informations diffuses, inexactes et inconsistantes [150]. Le renforcement est aussi lié et aux théories d'apprentissage comportemental chez les animaux et les humains [125]. Des approches d'apprentissage par renforcement pour des comportements ont été développées par Mahadevan et Connell [124, 125], Holland et Snaith [88], Digney et Gupta [54, 55], et Mataric [131, 130]. Mais certains algorithmes d'apprentissage par renforcement se révèlent inefficaces [96] de par la difficulté d'exploiter des connaissances de base et lorsque le problème est de grande dimension et complexe [125]. L'utilisation de RNA flou couplé avec le renforcement [31, 32, 116] pourraient être une solution adéquate à ce problème. Enfin, les recherches futures sur l'apprentissage focusseront entre autres sur l'apprentissage de haut niveau, soit comment modifier la fonction d'objectif en cours de foncitonnement pour rechercher de meilleures performances dans certaines situations, et la fusion de l'adaptation et de l'apprentissage [19]. Les fonctionnalités variées de SIR pourraient apporter une contribution intéressante à ce niveau. 241 CONCLUSION L'objectif principal de cette thèse fut de présenter une nouvelle architecture de contrôle intelligent nommée SIR qui tente d'unifier les différents aspects rattachés à l'intelligence pour sa mise en oeuvre dans des systèmes. SIR fut étudiée à deux niveaux, soit au niveau conceptuel pour présenter l'architecture dans sa généralité, et le niveau de mise en oeuvre démontrant l'utilité et les mécanismes possibles pour ses modules. approches L'élaboration conceptuelle de cette architecture fut basée sur les actuelles en contrôle intelligent, ainsi psychologiques jugés importants concernant l'intelligence. que sur les principes Tout au long de la thèse, il fut tenté de bien identifier les différentes influences venant de ces sources. Les fondements de SIR reposent sur une vision de l'intelligence qui ne s'attardent pas tant sur ses caractéristiques ou sa définition, mais plutôt sur les interactions avec l'environnement et les capacités du système pour la réalisation de ces interactions. SIR considère que l'intelligence se manifeste par la sélection intentionnelle et dynamique des comportements définissant les capacités d'actions d'un agent. SIR fut validée pour une application simulée de robot mobile, démontrant l'ensemble des principales fonctionnalités rattachées à cette architecture. Par la démonstration au niveau conceptuel de SIR et de ses liens avec de nombreux ouvrages en contrôle intelligent, en IA et en psychologie, il fut possible de démontrer sa généralité, sa flexibilité et sa contribution dans l'unification des principes associés à l'intelligence. Les principales nouveautés associées aux travaux présentées dans cette thèse s'expliquent bien à partir des hypothèses sur l'intelligence servant de fondements à SIR. Ces hypothèses et ces explications sont: - L'intelligence se forme à partir de comportements. Ces comportements permettent de décomposer un problème complexe sous forme de manifestations 242 externes requises, fixant les sensations et actions requises pour que le système arrive à agir dans son environnement; - L'intelligence est fonction du contexte. Ce contexte, pour des problèmes de haute dimension, permet d'établir la pertinence des sensations et actions par la sélection des comportements et l'exploitation de ces comportements; - L'intelligence émerge d'un processus holistique. L'émergence avec SIR fut considérée à différents niveaux, soit par la réactivité des comportements, la fusion de leurs actions, la sélection dynamique de comportements et la gestion des connaissances et des motifs; - L'intelligence s'observe agir, penser et réagir. Cette capacité introspective permet au système d'évaluer son propre fonctionnement et d'en affecter ses performances. Elle s'avère un moyen efficace pour contrôler et gérer l'émergence; - L'intelligence est propre au système. Toute connaissance, observation ou intention doit être déterminées de façon autonome par le système à partir de ses propres capacités et de ses interactions avec l'environnement. Le découpage en modules des comportements, de leur fusion, des sources de recommandations externes, propres (besoins) et cognitives, de leur sélection et de la supervision générale par les motifs arrivent à réaliser efficacement intégration. Au niveau mise en oeuvre, les mécanismes présentés pour chacun des modules ne doivent pas être perçus comme les seuls ou les plus performants. sont toutefois avérés utiles et propices aux expérimentations. tous ces aspects et des différentes caractéristiques cette Ils se Mais l'intégration de associées à l'intelligence constituent le principal apport de SIR. Quelques nouveautés sont aussi présentes à ce niveau: l'utilisation d'expressions lexicales pour identifier la rotation effectuée par l'agent; l'observation de l'exploitation de comportements par une mesure floue; la discrimination des comportements en fonction de leur type de règles; la modification 243 des antécédents et des conséquences par l'échange de paramètres internes venant du module de cognition; et l'utilisation d'une échelle hédonistique pour formulation de recommandations. Pour le reste des mécanismes, les influences principales viennent de Saffiotti [170, 171] pour les comportements et leur sélection, Mataric [128, 129] pour le graphe topologique et le comportement d'identification, et Maes [122] pour le mécanisme d'activation de motifs. Le concept de scénarios comme méthodologie pour décrire la fonctionnalité émergente souhaitée et la reproduire dans les modules de SIR est aussi un concept nouveau dans la conception de système autonome. Enfin, la modularité de SIR et la distinction des rôles de chacun de ses modules facilitent la mise en oeuvre et le transfert d'expertise venant du concepteur de la politique de contrôle "intelligente". Toutefois, il est bon de rappeler à ce point qu'il n'est pas prétendu que S I R reproduit avec exactitude le processus intelligent humain. non plus comme la seule et unique architecture SIR n'est pas présentée pour la mise en oeuvre de l'intelligence dans des systèmes. Elle ne vient pas non plus reproduire une théorie psychologique particulière concernant l'intelligence, ni une description du fonctionnement neurologique du cerveau (comme la théorie unifiée basée sur des champs neuronaux dynamiques de [60]). Elle ne fut pas développée dans ces optiques. Il faut se rappeler qu'il est peu probable que toute école de pensée, quelle soit comportementale, gestalt, psychologie ou IA traditionnelle, soit entièrement incorrecte [47], et que l'orchestration de la délibération et l'action automatique ouvre la voie à de riches dialogues interdisciplinaires entre robotistes, psychophysiciens, ingénieurs et biologistes qui ne peuvent qu'enrichir les disciplines à long terme [80]. Dans cette optique, SIR tente plutôt d'unifier un grand nombre de principes associés à l'intelligence. L'intelligence est une notion encore mal comprise pour pouvoir effectuer des tels jugements qui freineraient les discussions et les développements d'un domaine de recherche encore jeune. 244 Cependant, les résultats obtenus sont encourageants et les explications données démontrent que SIR est en mesure de prendre en considération les composantes nécessaires pour transmettre une plus grande intelligence autonomie à des systèmes. l'évaluation d'une et une plus grande Elle vient aussi répondre aux critères du NIST [5] pour approche unifiée de l'intelligence, soit l'extensibilité, la réutilisabilité, la modularité, la flexibilité, la robustesse, l'exploitation de plusieurs comportements et l'indépendance de l'application. Finalement, étant donné que l'objectif fondamental de l'architecture est de tenter d'unifier les concepts sur l'intelligence, il est espéré que cette première mise en oeuvre de l'architecture s'avéra un pas dans cette direction et qu'elle sera un point de départ important, comme l'avait voulu Albus [6], pour initier les discussions et le développement de systèmes manifestant une intelligence plus proche de l'intelligence humaine. SIR peut servir à établir les fondements d'une théorie de l'intelligence pour des agents intelligents vraiment autonomes, compatible avec les lois fondamentales de physiques et biologiques et expliquant comment l'intelligence peut être réalisée à partir de processus matériels non-intelligents [197, 198]. L'objectif à long terme de SIR est d'améliorer la compréhension de la nature théorique et pratique de l'intelligence dans les systèmes artificiels et naturels, ainsi que le développement de systèmes intelligents utiles et commercialisables. 245 ANNEXE 1 RÉSULATS GÉNÉRAUX POUR LA PREMIERE EXPÉRIMENTATION AVEC L'ENVIRONNEMENT DE BUGWORLD (HISTORIQUE 1) a) 100 noeuds dans le graphe topologique 246 Motif ENNUI 1 0.5 0 500 1000 Motif EXPLOITER 1500 2000 500 1000 Motif EXPLORER 1500 2000 500 1000 Motif CERTITUDE 1500 2000 500 1000 Motif CONFIANCE 1500 2000 500 1000 Motif DÉCEPTION 1500 2000 1500 2000 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 500 1 1000 Motif JOIE 0.5 0 500 1000 Motif DÉTRESSE 1500 2000 500 1000 Motif MANGER 1500 2000 500 1000 Motif FAIM 1500 2000 500 1000 1500 2000 1 0.5 0 1 0.5 0 1 0.5 0 247 b) 150 noeuds dans le graphe topologique 248 Motif ENNUI 1 0.5 0 500 1000 1500 Motif EXPLOITER 2000 2500 500 1000 1500 Motif EXPLORER 2000 2500 500 1000 1500 Motif CERTITUDE 2000 2500 500 1000 1500 Motif CONFIANCE 2000 2500 500 1000 1500 Motif DÉCEPTION 2000 2500 500 1000 1500 Motif JOIE 2000 2500 500 1000 1500 Motif DÉTRESSE 2000 2500 500 1000 1500 Motif MANGER 2000 2500 500 1000 1500 Motif FAIM 2000 2500 500 1000 1500 2000 2500 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 249 ANNEXE 2 RÉSULATS GÉNÉRAUX POUR LA SECONDE EXPÉRIMENTATION AVEC L'ENVIRONNEMENT DE BUGWORLD (HISTORIQUE 2) 250 Motif ENNUI 1 0.5 0 500 1000 Motif EXPLOITER 1500 2000 500 1000 Motif EXPLORER 1500 2000 500 1000 Motif CERTITUDE 1500 2000 500 1000 Motif CONFIANCE 1500 2000 500 1000 Motif DÉCEPTION 1500 2000 1500 2000 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 500 1 1000 Motif JOIE 0.5 0 500 1000 Motif DÉTRESSE 1500 2000 500 1000 Motif MANGER 1500 2000 500 1000 Motif FAIM 1500 2000 500 1000 1500 2000 1 0.5 0 1 0.5 0 1 0.5 0 251 ANNEXE 3 RÉSULATS GÉNÉRAUX POUR LA PREMIERE EXPÉRIMENTATION AVEC L'ENVIRONNEMENT COMPLEXE (HISTORIQUE 3) 252 Motif ENNUI 1 0.5 0 500 1000 1500 2000 2500 Motif EXPLOITER 3000 3500 4000 500 1000 1500 2000 2500 Motif EXPLORER 3000 3500 4000 500 1000 1500 2000 2500 Motif CERTITUDE 3000 3500 4000 500 1000 1500 2000 2500 Motif CONFIANCE 3000 3500 4000 500 1000 1500 2000 2500 Motif DÉCEPTION 3000 3500 4000 500 1000 1500 2000 2500 Motif JOIE 3000 3500 4000 500 1000 1500 2000 2500 Motif DÉTRESSE 3000 3500 4000 500 1000 1500 2000 2500 Motif MANGER 3000 3500 4000 500 1000 1500 2000 Motif FAIM 2500 3000 3500 4000 500 1000 1500 2000 2500 3000 3500 4000 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 253 ANNEXE 4 RÉSULATS GÉNÉRAUX POUR LA SECONDE EXPÉRIMENTATION AVEC L'ENVIRONNEMENT COMPLEXE UTILISANT L'OBSTACLE MOBILE (HISTORIQUE 4) 254 Motif ENNUI 1 0.5 0 500 1000 1500 Motif EXPLOITER 2000 2500 3000 500 1000 1500 Motif EXPLORER 2000 2500 3000 500 1000 1500 Motif CERTITUDE 2000 2500 3000 500 1000 1500 Motif CONFIANCE 2000 2500 3000 500 1000 1500 Motif DÉCEPTION 2000 2500 3000 500 1000 2000 2500 3000 500 1000 1500 Motif DÉTRESSE 2000 2500 3000 500 1000 1500 Motif MANGER 2000 2500 3000 500 1000 1500 Motif FAIM 2000 2500 3000 500 1000 1500 2000 2500 3000 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 1 1500 Motif JOIE 0.5 0 1 0.5 0 1 0.5 0 1 0.5 0 255 BIBLIOGRAPHIE [1] Åström, K.J. et Wittenmark, B., Adaptive Control, Addison Wesley, 1989. [2] Åström, K.J. et McAvoy, T.J., “Intelligent control: an overview and evaluation”, dans Handbook of Intelligent Control. Neural, Fuzzy and Adaptive Approaches, White, D.A. et Sofge, D.A. (éd), Van Nostrad Reinfold, 1992, chap. 1, p. 3-34. [3] Agre, P.E. et Chapman, D., “What are plans for?”, dans Designing Autonomous Agents: Theory and Practive form Biology to Engineering and Back, Maes, P. (éd), The MIT Press, Bradford Book, 1990, p. 1734. [4] Aho, A.V., Sethi, R., et Ullman, J.D., Compilers, Principles, Techniques, and Tools, Addison Wesley, 1988. [5] Albus, J., Quintero, R., Lumia, R., Herman, M., Kilmer, R., et Goodwin, K., “Concept for a reference model architecture for real-time intelligent control systems (ARTICS)”, NIST technical Note 1277, avril 1990. [6] Albus, J.S., “A theory of intelligent systems”, dans Proc. Fifth Int'l Symposium on Intelligent Control, 1990, p. 866-875. [7] Albus, J.S., “The role of world modeling and value judgment in perception”, Symposium on Intelligent Control, 1990, p. 154-163. [8] Albus, J.S., “Hierarchical interaction between sensory processing and world modeling in intelligent systems”, dans Proc. Fifth Int'l Symposium on Intelligent Control, 1990, p. 53-59. [9] Albus, J.S., “Outline for a theory of intelligence”, IEEE Trans. on Systems, Man, and Cybernetics, vol. 21, no. 3, p. 473-509, mai-juin 1991. [10] Albus, J.S., “RCS: A reference model architecture for intelligent control”, Computer, vol. 25, no. 2, p. 5659, mai 1992. [11] Almàssy, N., “BugWorld: A distributed environment for the development of control architectures in multiagent worlds”, Tech. Report 93.32 (ftp anonymous, [email protected]), Winterthuresrtrasse 190, 8057 Zurich, Suisse, décembre 1993. [12] de Almeida, R. et Melin, C., “Exploration of unknown environments by a mobile robot”, Intelligent Autonomous Systems 2, p. 715-725, 1989. [13] Anderson, T.L. et Donath, M., “Animal behavior as a paradigm for developing robot autonomy”, dans Designing Autonomous Agents: Theory and Practive form Biology to Engineering and Back, Maes, P. (éd), The MIT Press, Bradford Book, 1990, p. 145-168. [14] Antsaklis, P.J., Passino, K.M., et Wang, S.J., “Towards intelligent autonomous control systems: architecture and fundamental issues”, Journal of Intelligent and Robotic Systems, vol. 1, p. 315-342, 1989. [15] Antsaklis, P.J., Passino, K.M., et Wang, S.J., “An introduction to autonomous control systems”, IEEE Control Systems Magazine, vol. 11, no. 4, p. 5-13, juin 1991. [16] Antsaklis, P.J., “Toward autonomous intelligent control systems”, dans Proc. Second Annual Conf. on AI, Simulation and Planning in High Autonomy Systems, avril 1991, p. 2-3. [17] Antsaklis, P., “Defining intelligent control. Report of the task force on intelligent control”, IEEE Control Systems, p. 4-5 & 58-66, juin 1994. 256 dans Proc. Fifth Int'l [18] Arkin, R.C., “Integrating behavioral, perceptual, and world knowledge in reactive navigation”, dans Designing Autonomous Agents: Theory and Practive form Biology to Engineering and Back, Maes, P. (éd), The MIT Press, Bradford Book, 1990, p. 105-122. [19] Baker, W.L. et Farrell, J.A., “An introduction to connectionist learning control systems”, dans Handbook of Intelligent Control. Neural, Fuzzy and Adaptive Approaches, White, D.A. et Sofge, D.A. (éd), Van Nostrad Reinhold, 1992, p. 35-63. [20] Barto, A.G., “Connectionist learning for control”, dans Neural Networks for Control, Miller, W.T., Sutton, R.S., et Werbos, P.J. (éd), The MIT Press, 1990, p. 5-58. [21] Bates, J., Loyall, A.B., et Reilly, W.S., “An architecture for action, emotion, and social behavior”, dans Proc. Fourth European Workshop on Modeling Autonomous Agents in a Multi-Agent World, S.Martino al Cimino, Italie, 1992, p. 55-68. [22] Bates, J., “The role of emotion in believable agents”, Communications of the ACM, vol. 37, no. 7, p. 122125, 1994. [23] Bay, J.S., “Design of the 'Army-Ant' cooperative lifting robot”, IEEE Robotics and Automation Magazine, vol. 2, no. 1, p. 36-43, mars 1995. [24] Beaudoin, L.P. et Sloman, A., “A study of motive processing and attention”, dans Prospects for Artificial Intelligence, IOS Press, 1993, p. 229-238. [25] Beck, R.C., Motivation. Theories and Principles, Deuxième édition, Prentice Hall, 1983. [26] Beer, R.D., Intelligence as Adaptive Behavior. An experiment in computational neuroethology, Academic Press, 1990. [27] Beer, R.D., Chiel, H.J., et Sterling, L.S., “A biological perspective on autonomous agent design”, Robotics and Autonomous Systems, vol. 6, p. 169-186, 1990. [28] Beer, R.D. et Chiel, H.J., “The neural basis of behavioral choice in an artificial insect”, dans From Animals to Animats. Proc. First Int'l Conf. on Simulation of Adaptive Behavior, The MIT Press, 1991, p. 247-254. [29] Bellingham, J.G. et Consi, T.R., “State configured layered control”, dans NSF/IARP Subsea Robotics Workshop, Monterey, USA, octobre 1990, p. 75-80. [30] Berenji, H.R., Chen, Y.Y., Lee, C.C., Jang, J.S., et Murugesan, S., “A hierarchical approach to designing approximate reasoning-based controllers for dynamic physical systems”, dans Uncertainty in Artificial Intelligence 6, Bonissone, P.P., Henrion, M., Kanal, L.N., et Lemmer, J.F. (éd), Elsevier Science, 1991, p. 331-343. [31] Berenji, H.R., “A reinforcement learning-based architecture for fuzzy logic control”, Int. J. Approx. Reason., vol. 6, no. 2, p. 267-292, février 1992. [32] Berenji, H.R. et Khedkar, P., “Learning and tuning fuzzy logic controllers through reinforcements”, IEEE Trans. on Neural Networks, vol. 3, no. 5, p. 724-740, septembre 1992. [33] Bersini, H., “Génération automatique de systèmes de commande floue par les méthodes de gradient et les algorithmes génétiques”, dans Deuxième Journées Nationales sur les Applications des Ensembles Flous, Nîmes, France, 1992, p. 199-209. [34] Blumberg, B., “Action-selection in Hamsterdam: lessons from ethology”, dans From Animals to Animats 3. Proc. Third Int'l Conf. on Simulation of Adaptive Behaviors, The MIT Press, 1994, p. 108-117. [35] Bonasso, R.P. et Kortenkamp, D., Characterizing an architecture for intelligent, reactive agents, ne trouve plus la référence, pris sur WWW, . 257 [36] Bonasso, R.P., Kortenkamp, D., Miller, D.P., et Slack, M., Experiences with an architecture for intelligent reactive agents, Internal Report, Metrica inc. Robotics and Automation Group, NASA johnson Space Center-ER4, 1995. [37] Bonissone, P.P., “Fuzzy logic controllers: An industrial reality”, dans Computational Intelligence: Imitating Life, Zurada, J.M., II, R.J.M., et Robinson, C.J. (éd), IEEE Press, 1994, p. 316-327. [38] Brooks, R.A., “A robust layered control system for a mobile robot”, IEEE Journal of Robotics and Automation, vol. RA-2, no. 1, p. 14-23, mars 1986. [39] Brooks, R.A., “Elephants don't play chess”, dans Designing Autonomous Agents: Theory and Practive form Biology to Engineering and Back, The MIT Press, Bradford Book, 1990, p. 3-15. [40] Brooks, R.A., “The Behavioral Language user's guide”, A. I. Memo 1227, avril 1990. [41] Brooks, R.A., “Intelligence without reason”, A. I. Memo 1293, avril 1991. [42] Brooks, R.A., “Challenges for complete creature architectures”, dans From Animals to Animats. Proc. 1st Int'l Conf. on Simulation of Adaptive Behavior, MIT Press, 1991, p. 434-443. [43] Brooks, R.A., “Intelligence without representation”, Artificial Intelligence, vol. 47, p. 139-159, 1991. [44] Brooks, R.A. et Stein, L.A., “Building brains for bodies”, A. I. Memo 1439, août 1993. [45] Byrd, J.S., “Computers for mobile robots”, dans Recent Trends in Mobile Robots, Zheng, Y.F. (éd), World Scientific, 1993, chap. 7, p. 185-210. [46] Chen, F.C., “Back-propagation neural network for nonlinear self-tuning adaptive control”, dans Proc. IEEE Int'l Symposium on Intelligent Control 89, 1989, p. 274-279. [47] Clancey, W.J., “A boy scout, toto, and a bird”, dans The Artificial Life Route to Artificial Intelligence: Building Embodied, Situated Agents, Steels, L. et Brooks, R. (éd), Lawrence Erlbaum Associates, 1995, chap. 8, p. 227-236. [48] Colombetti, M. et Dorigo, M., “Learning to control and autonomous robot by distributed genetic algorithms”, dans From Animals to Animats 2. Proc. Second Int'l Conf. on Simulation of Adaptive Behaviors, The MIT Press, 1992, p. 305-312. [49] Connell, , “Navigation by path remembering”, dans SPIE Vol. 1007 Mobile Robots III, 1988, p. 383-390. [50] Connell, J.H., “A behavior-based arm controller”, IEEE Trans. on Robotics and Automation, vol. 5, no. 6, p. 784-791, décembre 1989. [51] Connell, J.H., “A colony architecture for an artificial creature”, Technical Report MIT AI Lab AI-TR 1151, août 1989. [52] Connell, J.H., “SSS: A hybrid architecture applied to robot navigation”, dans Proc. IEEE Int'l Conf. on Robotics and Automation, mai 1992, p. 27192724. [53] Corfield, S.J., Fraser, R.J.C., et Harris, C.J., “Architecture for real-time control of autonomous vehicules”, Comput. Control. Eng. J., vol. 2, no. 6, p. 254-262, novembre 1991. [54] Digney, B.L. et Gupta, M.M., “A distributed adaptive control system for a quadruped mobile robot”, dans Proc. IEEE Conf. on Neural Networks, San Francisco, 1993, p. 460-465. [55] Digney, B.L. et Gupta, M.M., “A distributed adaptive control system for a quadruped mobile robot”, dans From Animals to Animats 3. Proc. Third Int'l Conf. on Simulation of Adaptive Behaviors, MIT Press, 1994, p. 344-353. [56] Dolan, S.L. et Lamoureux, G., Initiation à la psychologie du travail, Gaëtan Morin éditeur, 1990. 258 [57] Donnart, J.Y. et Meyer, J.A., “A hierarchical classifier system implementing a motivationally autonomous animat”, dans From Animals to Animats 3. Proc. Third Int'l Conf. on Simulation of Adaptive Behaviors, MIT Press, 1994, p. 144-153. [58] Dudek, G., Jenkin, M., Milios, E., et Wilkes, D., “Robotic exploration as graph construction”, Tech. Report RBCV-TR-88-23, novembre 1988. [59] Dudek, G., Freedman, P., et Hadjres, S., “Using local information in a non-local way for mapping graphlike worlds”, dans Proc. Int'l Joint Conf. on Artificial Intelligence (IJCAI), Chambery, France, août 1993. [60] Engels, C. et Schöner, G., “Dynamic fields endow behavior-based robots with representations”, Robotics and Autonomous Systems, vol. 14, p. 55-77, 1995. [61] Engelson, S.P. et McDermott, D.V., “Maps considered as adaptive planning resources”, dans AAAI Fall Symposium on Applications of Artificial Intelligence to Real-World Autonomous Mobile Robots, 1992, p. 36-44. [62] Evans, P., Motivation and emotion, Routledge, 1989. [63] Fehling, M.R., Altman, A.M., et Wilber, B.M., “The Heuristic Control Virtual Machine: an implementation of the Schemer computational model of reflective, real-time problem-solving”, dans Blackboard Architectures and Applications, vol. 3, in ., A.P. (éd.), Academic Press inc., 1989, p. 191-218. [64] Ferguson, I.A., “Toward an architecture for adaptive, rational, mobile agents”, dans Decentralized A.I.-3. Proc. Third European Workshop on Modelling Autonomous Agents in a Multi-Agent World, Werner, E. et Demazeau, Y. (éd), Elsevier Science, 1992, p. 249-261. [65] Firby, R.J., “Adaptive execution in complex dynamic worlds”, Thèse Ph.D., Dept. Computer Engineering and Service, Case Westerne Reserve University, 1989. [66] Firby, R.J., Kahn, R.E., Prokopowicz, P.N., et Swain, M.J., “An architecture for vision and action”, dans Proc. Int'l Conf. Artificial Intelligence (IJCAI), Montréal, août 1995, p. 72-79. [67] Fox, S. et Leake, D.B., “Using introspective reasoning to refine indexing”, dans Proc. Int'l Joint Conf on Artificial Intelligence (IJCAI), Montréal, août 1995, p. 391-397. [68] Franklin, J.A. et Selfridge, O.G., “Some new directions for adaptive control theory in robotics”, dans Neural Networks for Control, Miller, W.T., S.Sutton, R., et Werbos, P.J. (éd), The MIT Press, 1990, p. 349-360. [69] Frijda, N.H., “Comment on Oatley and Johnson-Laird's 'Towards a cognitive theory of emotions'”, Cognition and Emotion, vol. 1, no. 1, p. 51-58, 1987. [70] Fukuda, T. et Shibata, T., “Hierarchical intelligent control for robotic motion by using fuzzy, artificial intelligence, and neural networks”, dans IEEE/INNS Int'l Joint Conf. on Neural Networks, vol. I, Baltimore, 1992, p. 269-274. [71] Fukuda, T. et Shibata, T., “Fuzzy-neuro-GA based intelligent robotics”, dans Computational Intelligence: Imitating Life, Zurada, J.M., Marks, R.J., et Robinson, C.J. (éd), IEEE Press, 1994, p. 352-363. [72] Gambardella, L.M. et Haex, M., “A multi-agent analogical representation for physical objects”, dans Decentralized A.I.-3, Werner, E. et Demazeau, Y. (éd.), Elsevier Science Publishers, 1992, p. 331-339. [73] Garvey, A. et Lesser, V., “A survey of research in deliberative real-time artificial intelligence”, Real-Time Systems, vol. 6, p. 317-347, 1994. [74] Gat, E., “Reliable goal-directed reactive control of autonomous mobile robots”, Thèse Ph.D., Virginia Polytechnic Institute and State University, avril 1991. 259 [75] Gat, E., “Integrating planning and reacting in a heterogeneous asynchronous architecture for controlling realworld mobile robots”, dans Proc. National Conf. on Artificial Intelligence, 1992, p. 809-815. [76] Georgeff, M.P., “An embedded reasoning and planning system”, dans Proc. from the Rochester Planning Workshop, Rochester, New York, 1988. [77] Gildersleeve, S., “L'authenticité: un aspect en management”, Info Ressources Humaines, vol. 12, no. 8, p. 10-13, 1989. [78] Grumbach, A., “Genèse du symbole artificiel”, Technique et sciences informatiques, vol. 12, no. 3, p. 347369, 1993. [79] Halgamuge, S.K., Runkler, T.A., et Glesner, M., “A hierarchical hybrid fuzzy controller for realtime reverse driving support of vehicles with long trailer”, dans Proc. IEEE Int'l Conf. on Fuzzy Systems, 1994, p. 1207-1210. [80] Hallam, J., “Autonomous robots: A question of design”, dans The Artificial Life Route to Artificial Intelligence: Building Embodied, Situated Agents, Steels, L. et Brooks, R. (éd), Lawrence Erlbaum Associates, 1995, chap. 7, p. 217-226. [81] Haton, J.P., La Raisonnement en Intelligence Artificielle: Modèles, Techniques et Architectures pour les Systèmes à Base de Connaissances, InterEditions, 1991. [82] Hayes-Roth, B., “An architecture for adaptive intelligent systems”, Artificial Intelligence, vol. 72, p. 329365, 1995. [83] Heidegger, G., “Machines, computers, dialectics: a new look at human intelligence”, AI Soc., vol. 6, no. 1, p. 27-40, janvier-mars 1992. [84] Hessburg, T. et Tomizuka, M., “Fuzzy logic control for lateral vehicle guidance”, IEEE Control Systems, p. 55-63, août 1994. [85] Hexmoor, H. et Kortenkamp, D., Issues on building software for hardware agents, soumis à Journal of Knowledge Engineering Review, mai 95. [86] Hilario, M., “An overview of strategies for neurosymbolic integration”, dans Workshop on ConnectionistSymbolic Integration: From Unified to Hybrid Approaches, Int'l"Joint Conf. Artificial Intelligence (IJCAI), Montréal, août 1995, p. 1-6. [87] Hilhorst, R.A., van Amerongen, J., Löhnberg, P., et Tulleken, H.J.A.F., “Intelligent adaptive control of mode-switch processes”, dans IFAC Intelligent Tuning and Adaptive Control, Singapore, 1991, p. 145150. [88] Holland, O. et Snaith, M., “Q-learning with generalisation: an architecture for real-world reinforcement learning in a mobile robot”, dans IEEE/INNS Int'l Joint Conf. on Neural Networks, vol. I, Baltimore, 1992, p. 287-292. [89] Hunt, M., The Universe Within. A New Science Explores the Human Mind, Simon and Schuster, 1976. [90] fuzzyTECH 3.1 Reference Manual, Inform"Software Corporation, 1840 Oak Avenu, Evanston, IL 60201, 1994. [91] Isik, C. et Meystel, A., “Pilot level of a hierarchical controller for an unmanned mobile robot”, IEEE Trans. on Robotics and Automation, vol. 4, no. 3, p. 241-255, juin 1988. [92] Jackson, E., Williams, O., et Buchan, K., “Achieving robot autonomy”, dans Third Conference on Military Robotic Applications, sept. 1991, p. 242-248. [93] Jagannathan, V., Dodhiawala, R., et Baum, L.S., Blackboard Architectures and Applications, vol. 3, Perspectives in Artificial Intelligence, Harcourt Brace Jovanovich, 1989. 260 [94] Jang, J.S.R., “Self-learning fuzzy controllers based on temporal back propagation”, IEEE Trans. on Neural Networks, vol. 3, no. 5, p. 714-723, septembre 1992. [95] Kaelbling, L.P., “An architecture for intelligent reactive systems”, Reasoning about Actions and Plans, 1986, p. 395-410. [96] Kaelbling, L.P., “Learning functions in k-DNF from reinforcement”, dans Proc. Seventh Conf.on Machine Learning, 1990, p. 162-169. [97] Kaelbling, L.P. et Rosenschein, S.J., “Action and planning in embedded agents”, dans Designing Autonomous Agents: Theory and Practive form Biology to Engineering and Back, Maes, P. (éd), The MIT Press, Bradford Book, 1991, p. 35-48. [98] Kaelbling, L.P. et Littman, M.L., “A bibliography of work related to reinforcement learning”, Tech. Report CS-94-39, septembre 1994. [99] Kaelbling, L.P., “The importance of being adaptable”, dans The Artificial Life Route to Artificial Intelligence: Building Embodied, Situated Agents, Steels, L. et Brooks, R. (éd), Lawrence Erlbaum Associates, 1995, chap. 10, p. 265-275. [100] Kandel, E.R. et Schwartz, J.H., Principles of Neural Science, Elsevier/North Holland, 1981. [101] Kim, S.W. et Park, M., “Fuzzy compliance robot control”, dans Proc. IROS. IEEE/ESJ Int'l Workshop on Intelligent Robots and Systems. Intelligence for Mechanical Systems, vol. 3, novembre 1991, p. 16281631. [102] Kiss, G., “Layered architectures for intelligent agents”, dans IEE Colloqium on 'intelligent agents', février 1991, p. 9/1-4. [103] Kiss, G., “Variable coupling of agents to their environment: combining situated and symbolic automata”, dans Decentralized A.I.-3. Proc. Third European Workshop on Modelling Autonomous Agents in a MultiAgent World, Werner, E. et Demazeau, Y. (éd), Elsevier Science, 1992, p. 231-248. [104] Kohout, L., A Perspective on Intelligent Systems. A Framework for Analysis and Design, Chapman and Hall, 1990. [105] Kohout, L.D., Anderson, J., et Bandler, W., Knowledge-Based Systems for Multiple Environments, Ashgate, 1992. [106] Kortenkamp, D. et Weymouth, T., “Topological mapping for mobile robots using a combination of sonar and vision sensing”, dans Proc. 12th National Conf. on Artificial Intelligence (AAAI), 1994, p. 979-984. [107] Kube, C.R. et Zhang, H., “Collective robotic intelligence”, dans From Animals to Animats 2. Proc. Second Int'l Conf. on Simulation of Adaptive Behaviors, The MIT Press, 1992, p. 460-468. [108] Kuipers, B.J. et Byun, Y.T., “A robust, qualitative approach to a spatial learning mobile robot”, dans SPIE Sensor Fusion: Spatial Representation and Scene Interpretation, vol. 1003, 1988, p. 366-375. [109] Kuipers, B.J. et Byun, Y.T., “A robust, qualitative method for robot spatial learning”, dans Proc. AAAI, St. Paul, Minneapolis, 1988, p. 774-779. [110] Langari, R. et Berenji, H.R., “Fuzzy logic in control engineering”, dans Handbook of Intelligent Control. Neural, Fuzzy and Adaptive Approaches, ., D.A.W. et Sofge, D.A. (éd), New York, Van Nostrad Reinhold, 1992. [111] Lavrov, A.A., “Modular reconfigurable controllers with fuzzy meta-control”, dans Proc. IEEE Int'l Conf. on Fuzzy Systems, 1994, p. 1564-1567. [112] Lee, C.C., “Fuzzy logic in control systems: fuzzy logic controller”, IEEE Trans. on Systems, Man, and Cybernetics, vol. 20, no. 2, p. 404-435, mars-avril 1990. 261 dans Proc.1986 Workshop on [113] LeMoigne, J.L., Intelligence des Mécanismes, Mécanismes de l'Intelligence : Intelligence Artificielle et Sciences de la Cognition, Paris, France, Fondation Diderot Fayard, 1986. [114] Levitt, T.S. et Lawton, D.T., “Qualitative naviguation for mobile robots”, Artificial Intelligence, vol. 44, p. 305-360, 1990. [115] Li, W., “Fuzzy logic-based 'perception-action' behavior control of a mobile robot in uncertain environments”, dans Proc. IEEE Int'l Conf. on Fuzzy Systems, 1994, p. 1626-1631. [116] Lin, C.T. et Lee, C.S.G., “Reinforcement structure/parameter learning for neural-network-based fuzzy logic control systems”, IEEE Trans. on Fuzzy Systems, vol. 2, no. 1, p. 46-63, février 1994. [117] Loyall, A.B. et Bates, J., “Real-time control of animated broad agents”, dans Proc. Fifteenth Annual Conf. on the Cognitive Science Society, 1993, p. 664-669. [118] Maeda, Y., Tanabe, M., Yuta, M., et Takagi, T., “Control purpose oriented behavior-decision fuzzy algorithm with tuning function of fuzzy branch”, dans Fuzzy Engineering toward Human Friendly Systems. , IOS Press, 1991, p. 694-705. [119] Maes, P., “Designing autonomous agents. Theory and practice from biology to engineering and back”, dans Designing Autonomous Agents: Theory and Practive form Biology to Engineering and Back, The MIT Press, Bradford Book, 1990, p. 1-2. [120] Maes, P., “Situated agents can have goals”, dans Designing Autonomous Agents: Theory and Practive form Biology to Engineering and Back, Maes, P. (éd), The MIT Press, Bradford Book, 1990, p. 49-70. [121] Maes, P. et Brooks, R.A., “Learning to coordinate behaviors”, dans Proc. Heigth National Conf. on Artificial Intelligenc eAAAI, vol. 2, American"Association for Artificial intelligence, 1990, p. 796-802. [122] Maes, P., “A bottom-up mechanism for behavior selection in an artificial creature”, dans From Animals to Animats. Proc. First Int'l Conf. on Simulation of Adaptive Behavior, The MIT Press, 1991, p. 238-246. [123] Maes, P., “Behavior-based artificial intelligence”, dans From Animals to Animats 2. Proc. Second Int'l Conference on Simulation of Adaptive Behaviors, The MIT Press, 1992, p. 2-10. [124] Mahadevan, S. et Connell, J., “Scaling reinforcement learning to robotics by exploiting the subsumption architecture”, dans Proc. Heigth Int'l Workshop on Machine Learning, San Mateo, CA, 1991, p. 329-332. [125] Mahadevan, S. et Connell, J., “Automatic programming of behavior-based robots using reinforcement learning”, Artificial Intelligence, vol. 55, p. 311-365, 1992. [126] Malcolm, C. et Smithers, T., “Symbol grounding via a hybrid architecture in an autonomous assembly system”, dans Designing Autonomous Agents: Theory and Practive form Biology to Engineering and Back, Maes, P. (éd), The MIT Press, Bradford Book, 1990, p. 123-144. [127] Maslow, A.H., Motivation and Personality, Harper and Row, 1954. [128] Mataric, M.J., “A distributed model for mobile robot environment-learning and navigation”, Thèse de maîtrise, MIT, mai 1990. [129] Mataric, M.J., “Integration of representation into goal-driven behavior-based robots”, IEEE Trans. on Robotics and Automation, vol. 8, no. 3, p. 304-312, 1992. [130] Mataric, M.J., “Interaction and intelligent behavior”, Thèse Ph.D., Massachusetts Institute of Technology, Boston, mai 1994. [131] Mataric, M.J., “Learning to behave socially”, dans From Animals to Animats 3. Proc. Third Int'l Conf. on Simulation of Adaptive Behaviors, MIT Press, 1994, p. 453-462. 262 [132] McCarthy, J., “Making robots conscious of their mental states”, dans AAAI Spring Symposium, juillet 1995. [133] McCarthy, J., “What has AI in common with philosophy”, Intelligence (IJCAI), Montréal, août 1995, p. 2041-2042. [134] McFarland, D. et Bösser, T., Intelligent Behavior in Animals and robots, Bradford Book, MIT Press, 1993. [135] McFarland, D., “Towards robot cooperation”, dans From Animals to Animats 3. Proc. Third Int'l Conf. on Simulation of Adaptive Behaviors, MIT Press, 1994, p. 440-444. [136] McFarland, D., “Autonomy and self-sufficiency in robots”, dans The Artificial Life Route to Artificial Intelligence: Building Embodied, Situated Agents, Steels, L. et Brooks, R. (éd), Lawrence Erlbaum Associates, 1995, chap. 6, p. 187-213. [137] Michaud, F. et Lachiver, G., “Utilisation de la logique floue pour l'évaluation et l'exploitation du confort thermique”, Rapport interne février 1995. [138] Mook, D.G., Motivation. The organization of action, W. W. Norton and Company, 1987. [139] Musliner, D.J., Durfee, E.H., et Shin, K.G., “CIRCA: A cooperative intelligent real-time control architecture”, IEEE Trans. on Systems, Man, and Cybernetics, vol. 23, no. 6, p. 1561-1573, novembredécembre 1993. [140] Musliner, D.J., Hendler, J.A., Agrawala, A.K., Durfee, E.H., Strosnider, J.K., et Paul, C.J., “The challenges of real-time AI”, Tech. Report CS-TR-3290, UMIACS-TR-94-69, juin 1994. [141] Musliner, D.J., Hendler, J.A., Agrawala, A.K., Durfee, E.H., Strosnider, J.K., et Paul, C.J., “The challenges of real-time AI”, IEEE Computer, vol. 28, no. 1, p. 58-66, 1995. [142] Narendra, K.S., “Adaptive control of dynamical systems using neural networks”, dans Handbook of Intelligent Control. Neural, Fuzzy and Adaptive Approaches, New York, Van Nostrad Reinhold, 1992, p. 141-183. [143] Nehmzow, U., “Animal and robot navigation”, Robotics and Autonomous Systems, vol. 15, p. 71-81, 1995. [144] Noreils, F.R. et Chatila, R.G., “Plan execution monitoring and control architecture for mobile robots”, IEEE Trans. Robotics and Automation, vol. 11, no. 2, p. 255-266, avril 1995. [145] Oatley, K. et Johnson-Laird, P.N., “Towards a cognitive theory of emotions”, Cognition and Emotion, vol. 1, no. 1, p. 29-50, 1987. [146] Ortony, A., Clore, G.L., et Collins, A., The cognitive structure of emotions, Cambridge University Press, 1988. [147] Parikh, R., “The effect of AI on other fields of research”, dans Tenth Annual Int'l Phoenix Conf. on Computers and Communications, mars 1991, p. 848-849. [148] Parker, L.E., “Adaptive action selection for cooperative agent teams”, dans From Animals to Animats 2. Proc. Second Int'l Conf. on Simulation of Adaptive Behaviors, The MIT Press, 1992, p. 442-450. [149] Parker, L.E., “Heterogeneous multi-robot cooperation”, Thèse Ph.D., Technology, Boston, février 1994. [150] Parodi, A. et Bonelli, P., “The animat and the physician”, dans From Animals to Animats. Proc. First Int'l Conf. on Simulation of Adaptive Behavior, The MIT Press, 1991, p. 50-57. [151] Payton, D.W., Rosenblatt, J.K., et Keirsey, D.M., “Plan guided reaction”, IEEE Trans. on Systems, Man, and Cybernetics, vol. 20, no. 6, p. 1370-1382, novembre/décembre 1990. 263 dans Proc. Int'l Joint Conf. on Artificial Massachusetts Institute of [152] Payton, D.W., “Internalized plans: a representation for action resources”, dans Designing Autonomous Agents: Theory and Practive form Biology to Engineering and Back, Maes, P. (éd), The MIT Press, Bradford Book, 1990, p. 89-103. [153] Pfeifer, R., “Cognition and emotion: an information processing approach”, CIP Working Paper 436, mai 1982. [154] Pfeifer, R. et Nicholas, D.W., “Toward computational models of emotion”, dans Progress in Artificial Intelligence, Steels, L. et Campbell, J.A. (éd.), 1985. [155] Pfeifer, R., “Artificial intelligence models of emotion”, dans Cognitive Perspectives on Emotion and Motivation, Kluwer Academic Publishers, 1988, p. 287-320. [156] Pfeifer, R. et Verschure, P.F.M.J., “Designing efficiently navigating non-goal-directed robots”, dans From Animals to Animats 2. Proc. Second Int'l Conf. on Simulation of Adaptive Behaviors, The MIT Press, 1992, p. 31-39. [157] Pfeifer, R., “Studying emotions: fungus eaters”, Internal Report avril 1993. [158] Pfeifer, R., “Cognition - Perspectives from autonomous agents”, Robotics and Autonomous Systems, vol. 15, p. 47-70, 1995. [159] Pin, F.G., Watanabe, H., Symon, J., et Pattay, R.S., “Autonomous navigation of a mobile robot using custom-designed qualitative reasoning VLSI chips and boards”, dans Proc. IEEE Int'l Conf. Robotics and Automation, 1992. [160] Pitrat, J., “Connaissances et métaconnaissances”, dans Intelligence des Mécanismes, Mécanismes de l'Intelligence: intelligence artificielle et sciences de la cognition, Moigne, J.L.L. (éd), Paris: Fayard, 1986. [161] Plutchik, R. et Kellerman, H., EmotionTheory, Research, and Experience, vol. 1, Theories of Emotion Series, Academic Press, inc., 1980. [162] Puente, E.A., Gachet, D., Pimentel, J.R., Moreno, L., et Salichs, M.A., “A neural network supervisor for behavioral primitives of autonomous systems”, dans Proc. Int'l Conf. on Industrial Electronics Control Instrumentation and Automation Power Electronics, 1992, p. 1105-1110. [163] Raulefs, P., “Toward a blackboard architecture for real-time interaction with dynamic systems”, Blackboard Architectures and Applications, vol. 3, Academic Press inc., 1989, p. 285-299. [164] Ren, W. et Kumar, P.R., “Stachastic parallel model adaptation: Theory and applications to active noise canceling feedforward control, IIR filtering and identification”, IEEE Trans. on Automatic Control, vol. 37, no. 5, p. 566-577, mai 1992. [165] Rimé, B. et Scherer, K.R., Les émotions, Textes de base en psychologie, Paris, Delachaux et Niestlé, 1989. [166] Rosenblatt, J.K. et Payton, D.W., “A fine-grained alternative to the subsumption architecture for mobile robot control”, dans Proc. IEEE Int'l Conf. on Neural Networks, vol. I, 1989, p. 317-323. [167] Rosenschein, S.J. et Kaelbling, L.P., “A situated view of representation and control”, Artificial Intelligence, vol. 73, p. 149-173, 1995. [168] Rueda, A. et Pedrycz, W., “A hierarchical fuzzy-neural-PD controller for robot manipulators”, dans Proc. IEEE Int'l Conf. on Fuzzy Systems, 1994, p. 673-677. [169] Russell, S., “Rationality and intelligence”, dans Proc. Int'l Joint Conf. on Artificial Intelligence (IJCAI), Montréal, août 1995, p. 950-957. [170] Saffiotti, A., Ruspini, E.H., et Konolige, K., “Blending reactivity and goal-directedness in a fuzzy controller”, dans Proc. IEEE Int'l Conf. on Fuzzy Systems, 1993, p. 134-139. 264 dans [171] Saffiotti, A., Ruspini, E., et Konolige, K., “A fuzzy controller for Flakey, an autonomous mobile robot”, Technical Note 529, 333 Ravenswood Avenue, Menlo Park, CA 94025-3493, mars 1993. [172] Saffiotti, A., “Some notes on the integration of planning and reactivity in autonomous mobile robots”, dans Foundations of Automatic Planning, The Classical Approach & Beyond, AAAI Spring Symposium, mars 1993. [173] Sahota, M.K., “Action selection for robots in dynamic environments through inter-behavior bidding”, dans From Animals to Animats 3. Proc. Third Int'l Conf. on Simulation of Adaptive Behaviors, The MIT Press, 1994, p. 138-142. [174] Salichs, M.A., Puente, E.A., Moreno, L., et Pimentel, J.R., “A software development environment for autonomous mobile robots”, dans Recent Trends in Mobile Robots, Zheng, Y.F. (éd), World Scientific, 1993, chap. 8, p. 211-253. [175] Saridis, G.N., “Intelligent robotic control”, IEEE Trans. on Automatic Control, vol. AC-28, no. 5, p. 547557, mai 1983. [176] Schank, R.C., Dynamic Memory: A Theory of Reminding and Learning in Computers and People, Cambridge University Press, 1982. [177] Schnepf, U., “Robot ethology: a proposal for the research into intelligent autonomous systems”, dans From Animals to Animats. Proc. First Int'l Conf. on Simulation of Adaptive Behavior, The MIT Press, 1991, p. 465-474. [178] Seel, N., “From here to agent theory”, AISB Q, no. 72, p. 15-25, été 1990. [179] Selfridge, O.G. et Franklin, J.A., “The perceiving robot: What does it see? What does it do?”, dans Proc. Fifth Int'l Symposium on Intelligent Control, 1990, p. 146-151. [180] Sheu, P.C.Y. et Xue, Q., Intelligent Robotic Planning Systems, World Scientific, 1993. [181] da Silva, L.E.B., Lamber-Torres, G., et da Silva, V.F., “Adaptive fuzzy techniques for slip-recovery drive control”, dans Proc. IEEE Int'l Conf. on Fuzzy Systems, 1992, p. 381-388. [182] de Silva, C.W., Intelligent Control: Fuzzy Logic Applications, CRC Press, 1995. [183] Simmons, R., Lin, L.J., et Fedor, C., “Autonomous task control for mobile robots”, dans Proc. Fifth Int'l Symposium on Intelligent Control, 1990, p. 663-668. [184] Simmons, R. et Koenig, S., “Probabilistic robot navigation in partially observable environments”, dans Proc. Int'l Joint Conf. on Artificial Intelligence (IJCAI), Montréal, août 1995, p. 1080-1087. [185] Simon, H.A., “Rational choice and the structure of the environment”, Psychological Review, vol. 63, p. 129-138, 1956. [186] Simon, H.A., “Motivational and emotional controls of cognition”, Psychological Review, vol. 74, p. 2939, 1967. [187] Simon, H.A., The Sciences of the Artificial, The MIT Press, 1969. [188] Simon, H.A., “Explaining the ineffable: AI on the topics of intuition, insight and inspiration”, dans Proc. Int'l Conf. Artificial Intelligence (IJCAI), Montréal, août 1995, p. 939-948. [189] Sloman, A. et Croucher, M., “Why robots will have emotions”, dans Proc. Seventh Artificial Intelligence, 1981, p. 197-202. [190] Sloman, A., “A philosophical encounter”, dans Proc. Int'l Joint Conf. on Artificial Intelligence (IJCAI), Montréal, août 1995, p. 2037-2040. 265 Int'l Conf. on [191] Smithers, T., “On why better robots make it harder”, dans From Animals to Animats 3. Proc. Third Int'l Conf. on Simulation of Adaptive Behaviors, The MIT Press, 1994, p. 64-72. [192] Smithers, T., “Are auonomous agents information processing systems”, dans The Artificial Life Route to Artificial Intelligence: Building Embodied, Situated Agents, Steels, L. et Brooks, R. (éd), Lawrence Erlbaum Associates, 1995, chap. 4, p. 123-162. [193] Steel, S., “Notes on current trends in AI planning”, dans Advanced Topics in Aritificial Intelligence, Summer School Proceedings. Lecture Notes in Artificial Intelligence, Springer Verlag, juin 1992, p. 198207. [194] Steels, L., “Exploiting analogical representations”, Robotics and Autonomous Systems, vol. 6, no. 2, p. 169-186, juin 1990. [195] Steels, L., “Towards a theory of emergent functionality”, dans From Animals to Animats. Proc. First Int'l Conf. on Simulation of Adaptive Behavior, The MIT Press, 1991, p. 451-461. [196] Steels, L., “A case study in the behavior-oriented design of autonomous agents”, dans From Animals to Animats 3. Proc. 3rd Int'l Conf. Simulation of Adaptive Behavior, The MIT Press, 1994, p. 445-452. [197] Steels, L., “Intelligence - Dynamics and Representations”, dans The Biology and Technology of Intelligent Autonomous Agents, Springer Verlag, Berlin, 1995. [198] Steels, L., “The Homo Cyber Sapiens, the robot Homonidus Intelligens, and the 'artificial life' approach to artificial intelligence”, dans Burda Symposium on Brain-Computer Interfaces, février 1995. [199] Steels, L., “Buidling agents out of autonomous behavior systems”, dans The Artificial Life Route to Artificial Intelligence: Building Embodied, Situated Agents, Steels, L. et Brooks, R. (éd), Lawrence Erlbaum Associates, 1995, chap. 3, p. 83-121. [200] Sternberg, R.J., Beyond IQ - A Triarchic Theory of Human Intelligence, Cambridge University Press, 1985. [201] Strongman, K.T., The psychology of emotion, Troisième édition, John Wiley & Sons, 1987. [202] Tanabe, M., Maeda, Y., Yuda, M., et Takagi, T., “Path planning method for mobile robot using fuzzy inference under vague information of environment”, dans Fuzzy Engineering toward Human Friendly Systems, IOS Press, 1991, p. 758-769. [203] Tani, J., “Self-organization of symbolic processes through interaction with the physical world”, dans Proc. Int'l Joint Conf. on Artificial Intelligence (IJCAI), Montréal, août 1995, p. 112-118. [204] Terano, T., “Future vision for fuzzy engineering”, Systems, IOS Press, 1991, p. 3-8. [205] Terano, T., “Fuzzy engineering and LIFE project”, dans Proc. IEEE Int'l Conf. on Fuzzy Systems, 1994, p. 882-885. [206] Terzopoulos, D., “Modeling living systems for computer vision”, Intelligence (IJCAI), Montréal, août 1995, p. 1003-1013. [207] Trappl, R., “AI: Introduction, paradigms, applications (including CBR), impacts, visions”, dans Advanced Topics in Artificial Intelligence 1992. Lecture Notes in Artificial Intelligence, Springer-Verlag, 1992. [208] Tyrrell, T., “The use of hierarchies for action selection”, dans From Animals to Animats 2. Proc. Second Int'l Conf. on Simulation of Adaptive Behaviors, The MIT Press, 1992, p. 138-147. [209] Verschure, P.F.M.J., Krose, B.J.A., et Pfeifer, R., “Distributed adaptive control: the self-organization of structured behavior”, Robot Auton. Syst., vol. 9, no. 3, p. 181-196, 1992. 266 dans Fuzzy Engineering toward Human Friendly dans Proc. Int'l Conf. Artificial [210] Wang, L.X. et Mendel, J.M., “Generating fuzzy rules by learning from examples”, IEEE Trans. on Systems, Man, and Cybernetics, vol. 22, no. 6, p. 1414-1427, novembre-décembre 1992. [211] Wang, F.Y. et Lever, P.J.A., “An intelligent robotic vehicle for lunar and martian resource assessment”, dans Recent Trends in Mobile Robots, Zheng, Y.F. (éd), World Scientific, 1993, chap. 10, p. 293-313. [212] Wavish, P., “Exploiting emergent behavior in multi-agent systems”, dans Decentralized A.I.-3. Proc. Third European Workshop on Modelling Autonomous Agents in a Multi-Agent World, Werner, E. et Demazeau, Y. (éd), Elsevier Science, 1992, p. 297-310. [213] Werner, E., “The design of multi-agent systems”, dans Decentralized AI 3. Proc. Third European Workshop on Modeling Autonomous Agents in a Multi-Agent World, Werner, E. et Demazeau, Y. (éd), Elsevier Science, 1992, p. 3-28. [214] Wilson, S.W., “The animat path to AI”, dans From Animals to Animats. Proc. First International Conference on Simulation of Adaptive Behavior, The MIT Press, 1991, p. 15-21. [215] Wojcik, V., “Conditions for computer simulation of thought processes to become actual thought”, Simulation, vol. 56, no. 4, p. 272-280, avril 1991. [216] Yabuta, T. et Manabe, T.T., “Learning control aspects in terms of neuro-control”, dans Computational Intelligence: Imitating Life, Zurada, J.M., Marks, R.J., et Robinson, C.J. (éd), IEEE Press, 1994, p. 328338. [217] Yamakawa, T., “A fuzzy inference engine in nonlinear analog mode and its application to a fuzzy logic control”, IEEE Trans. on Neural Networks, vol. 4, no. 3, p. 496-522, mai 1993. [218] Yen, J. et Pfluger, N., “A fuzzy logic based robot navigation system”, dans AAAI Fall Symposium on Applications of Artificial Intelligence to Real-World Autonomous Mobile Robots, 1992, p. 195-199. [219] Zeleny, M., “Cognitive equilibirum: a knowledge-based theory of fuzziness and fuzzy sets”, Int. J. Gen. Syst., vol. 19, no. 4, p. 359-81, 1991. [220] Zeleny, M., “Fuzzyfying the precise is more relevant than modeling the fuzzy crisply”, Int. J. Gen. Syst., vol. 19, no. 4, p. 435-440, 1991. [221] Zhou, Y.L. et Qiu, Z., “An expert self-learning fuzzy controller”, dans Proc. IFAC Workshop Artificial Intelligence in Real-Time Control, Chine, septembre 1989, p. 69-73. 267