Modèle logiciel de croyance–désir–intention
Le modèle logiciel croyance–désir–intention (de l'anglais, Belief–desire–intention software model – BDI) est un modèle logiciel développé pour programmer des agents intelligents. Caractérisé en surface par la mise en œuvre des croyances, des désirs et des intentions d'un agent, il utilise en réalité ces concepts pour résoudre un problème particulier dans la programmation d'agents. En essence, il fournit un mécanisme permettant de séparer l'activité de sélection d'un plan (à partir d'une bibliothèque de plans ou d'une application planificatrice externe) de l'exécution des plans actuellement actifs. En conséquence, les agents BDI parviennent à équilibrer le temps consacré à délibérer sur les plans (choisir ce qu'il faut faire) et à exécuter ces plans (les réaliser). Une troisième activité, créer les plans dès le départ (planification), ne relève pas du modèle et incombe au concepteur et au programmeur du système.
Aperçu
modifierAfin d'atteindre cette séparation, le modèle logiciel BDI met en œuvre les aspects principaux de la théorie du raisonnement pratique humain de Michael Bratman (également appelé croyance–désir–intention, ou BDI). C'est-à-dire qu'il met en œuvre les notions de croyance, de désir et (en particulier) d'intention, d'une manière inspirée par Bratman.
Pour Bratman, le désir et l'intention sont tous deux des pro-attitudes (des attitudes mentales concernant l'action). Il identifie l'engagement comme le facteur distinctif entre le désir et l'intention, notant qu'il conduit à (1) une persistance temporelle dans les plans et (2) à l'élaboration de plans supplémentaires sur la base de ceux auxquels on est déjà engagé. Le modèle logiciel BDI aborde partiellement ces questions. La persistance temporelle, dans le sens d'une référence explicite au temps, n'est pas explorée. La nature hiérarchique des plans s'implémente plus facilement : un plan se compose d'un certain nombre d'étapes, dont certaines peuvent faire appel à d'autres plans. La définition hiérarchique des plans implique elle-même une forme de persistance temporelle, puisque le plan global demeure en vigueur pendant que les plans subsidiaires s'exécutent.
Un aspect important du modèle logiciel BDI (en termes de sa pertinence pour la recherche) est l'existence de modèles logiques à travers lesquels il est possible de définir et de raisonner sur les agents BDI. Les recherches dans ce domaine conduisent, par exemple, à l'axiomatisation de certaines implémentations BDI, ainsi qu'à des descriptions logiques formelles telles que le BDICTL d'Anand Rao et de Michael Georgeff. Ce dernier combine une logique multimodale (avec des modalités représentant les croyances, les désirs et les intentions) avec la CTL*. Plus récemment, Michael Wooldridge étend le BDICTL pour définir LORA (la Logique des Agents Rationnels), en incorporant une logique d'action. En principe, LORA permet de raisonner non seulement sur des agents individuels, mais aussi sur la communication et d'autres interactions dans un système multi-agent.
Le modèle logiciel BDI est étroitement associé aux agents intelligents, mais ne garantit pas, en lui-même, toutes les caractéristiques associées à ces agents. Par exemple, il permet aux agents d'avoir des croyances privées, mais ne les contraint pas à être privées. Il n'apporte également rien concernant la communication entre agents. En définitive, le modèle logiciel BDI constitue une tentative de résoudre un problème qui concerne davantage les plans et la planification (le choix et l'exécution de ceux-ci) que la programmation des agents intelligents. Cette approche est proposée récemment par Steven Umbrello et Roman Yampolskiy comme moyen de concevoir des voitures autonomes pour les valeurs humaines[1].
Agents BDI
modifierUn agent BDI est un type particulier de rationalité limitée agent logiciel rationnel doté d'attitudes mentales particulières, à savoir : Croyances, Désirs et Intentions (BDI).
Architecture
modifierCette section définit les composantes architecturales idéalisées d'un système BDI.
- Croyances : Les croyances représentent l'état informationnel de l'agent – ses croyances sur le monde (y compris lui-même et d'autres agents). Les croyances peuvent également inclure des règles d'interférence, permettant au chaînage avant de conduire à de nouvelles croyances. L'emploi du terme croyance plutôt que connaissance reconnaît que ce que croit un agent n'est pas nécessairement vrai (et en fait peut changer à l'avenir).
- Ensemble de croyances : Les croyances se stockent dans une base de données (parfois appelée base de croyance ou ensemble de croyances), bien que cela relève d'une décision d'implémentation.
- Désirs : Les désirs représentent l'état motivationnel de l'agent. Ils représentent des objectifs ou des situations que l'agent souhaite accomplir ou provoquer. Des exemples de désirs peuvent être : trouver le meilleur prix, aller à la fête ou devenir riche.
- Objectifs : Un objectif est un désir adopté pour une poursuite active par l'agent. L'emploi du terme objectifs ajoute la restriction supplémentaire que l'ensemble des désirs actifs doit être cohérent. Par exemple, on ne doit pas avoir simultanément l'objectif d'aller à une fête et celui de rester à la maison – même s'ils peuvent tous deux être désirables.
- Intentions : Les intentions représentent l'état délibératif de l'agent – ce que l'agent choisit de faire. Les intentions sont des désirs auxquels l'agent s'est en quelque sorte engagé. Dans les systèmes implémentés, cela signifie que l'agent commence à exécuter un plan.
- Plans : Les plans sont des séquences d'actions (recettes ou domaines de connaissance) qu'un agent peut exécuter pour réaliser une ou plusieurs de ses intentions. Les plans peuvent inclure d'autres plans : mon plan d'aller faire un tour peut inclure un plan pour trouver mes clés de voiture. Cela reflète que, dans le modèle de Bratman, les plans se conçoivent initialement de manière partielle, les détails étant complétés au fur et à mesure de leur progression.
- Événements : Il s'agit de déclencheurs d'activité réactive de l'agent. Un événement peut mettre à jour les croyances, déclencher des plans ou modifier les objectifs. Les événements se génèrent à l'extérieur et sont reçus par des capteurs ou des systèmes intégrés. De plus, des événements se génèrent en interne pour déclencher des mises à jour ou des plans d'activité découplés.
Le BDI s'étend également avec une composante d'obligations, donnant naissance à l'architecture d'agents BOID[2] pour intégrer les obligations, normes et engagements des agents évoluant dans un environnement social.
Interpréteur BDI
modifierCette section définit un interpréteur BDI idéalisé qui fournit la base de la lignée PRS des systèmes BDI de SRI[3] :
- initialize-state
- repeat
- options: option-generator (event-queue)
- selected-options: deliberate(options)
- update-intentions(selected-options)
- execute()
- get-new-external-events()
- drop-unsuccessful-attitudes()
- drop-impossible-attitudes()
- end repeat
Limitations et critiques
modifierLe modèle logiciel BDI est un exemple d'architecture de raisonnement pour un agent rationnel unique, et constitue une préoccupation dans un système multi-agent. Cette section délimite le champ des préoccupations concernant le modèle logiciel BDI, en mettant en lumière les limitations connues de l'architecture.
- Apprentissage : Les agents BDI ne disposent d'aucun mécanisme spécifique au sein de l'architecture pour apprendre à partir de comportements passés et s'adapter à de nouvelles situations[4],[5]
- Trois attitudes : Les théoriciens classiques de la théorie de la décision et la recherche en planification remettent en question la nécessité de posséder les trois attitudes, tandis que la recherche en intelligence artificielle distribuée questionne si les trois attitudes sont suffisantes[3].
- Logiques : Les logiques multimodales sous-jacentes au BDI (qui n'ont pas d'axiomatisations complètes et ne sont pas calculables de manière efficace) ont peu de pertinence en pratique[3],[6]
- Agents multiples : En plus de ne pas supporter explicitement l'apprentissage, le cadre peut ne pas être approprié pour un comportement d'apprentissage. De plus, le modèle BDI ne décrit pas explicitement les mécanismes d'interaction avec d'autres agents et l'intégration dans un système multi-agent[7]
- Objectifs explicites : La plupart des implémentations BDI ne disposent pas d'une représentation explicite des objectifs[8]
- Anticipation : L'architecture ne comporte pas (par conception) de délibération anticipée ou de planification prospective. Cela peut ne pas être souhaitable, car les plans adoptés peuvent consommer des ressources limitées, les actions peuvent être irréversibles, l'exécution des tâches peut prendre plus de temps que la planification anticipée, et les actions peuvent avoir des effets secondaires indésirables en cas d'échec[9]
Implémentations d'agents BDI
modifierBDI 'pur'
modifier- PRS
- IRMA (non implémenté mais pouvant être considéré comme un PRS sans reconsidération)
- UM-PRS[10]
- OpenPRS[11]
- dMARS
- AgentSpeak(L) – voir Jason ci-dessous
- AgentSpeak(RT)[12],[13]
- Agent Real-Time System (ARTS)[14] (ARTS)[15]
- JAM[16]
- agents intelligents JACK
- JADEX (projet open source)[17]
- JaKtA[18]
- JASON[19]
- GORITE
- SPARK[20]
- 3APL
- 2APL[21]
- langage de programmation d'agents GOAL
- CogniTAO (Think-As-One)[22],[23]
- Living Systems Process Suite[24],[25]
- PROFETA[26]
- Gwendolen[27] (Faisant partie du Cadre de Vérification des Langages de Programmation d'Agents[28],[29])
Extensions et systèmes hybrides
modifierVoir aussi
modifier- Intelligence artificielle
- Modèle croyance–désir–intention
- Révision des croyances
- Agent intelligent
- Raisonnement
- Agent logiciel
Notes
modifier- (en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Belief–desire–intention software model » (voir la liste des auteurs).
- ↑ (en) Steven Umbrello et Roman V. Yampolskiy, « Designing AI for Explainability and Verifiability: A Value Sensitive Design Approach to Avoid Artificial Stupidity in Autonomous Vehicles », International Journal of Social Robotics, vol. 14, no 2, , p. 313–322 (ISSN 1875-4805, DOI 10.1007/s12369-021-00790-w
, hdl 2318/1788856
) - ↑ J. Broersen, M. Dastani, J. Hulstijn, Z. Huang, L. van der Torre The BOID architecture: conflicts between beliefs, obligations, intentions and desires Proceedings of the fifth international conference on Autonomous agents, 2001, pages 9-16, ACM New York, NY, USA
- 1 2 3 M. P. Georgeff. Rao « BDI-agents: From Theory to Practice » () (lire en ligne, consulté le ) [archive du ].
— « (ibid.) », dans Proceedings of the First International Conference on Multiagent Systems (ICMAS'95). - ↑
Toan Phung, Michael Winikoff et Lin Padgham « Learning Within the BDI Framework: An Empirical Analysis » () (DOI 10.1007/11553939_41).
— « (ibid.) », dans Knowledge-Based Intelligent Information and Engineering Systems, vol. 3683, coll. « Lecture Notes in Computer Science » (ISBN 978-3-540-28896-1), p. 282–288. - ↑
Alejandro Guerra-Hernández, Amal El Fallah-Seghrouchni et Henry Soldano « Learning in BDI Multi-agent Systems » () (DOI 10.1007/978-3-540-30200-1_12).
— « (ibid.) », dans Computational Logic in Multi-Agent Systems, vol. 3259, coll. « Lecture Notes in Computer Science » (ISBN 978-3-540-24010-5), p. 218–233. - ↑
M. P. Georgeff. Rao « Formal models and decision procedures for multi-agent systems » () (CiteSeerx 10.1.1.52.7924).
— « (ibid.) », dans Technical Note, AAII. - ↑
Michael Georgeff, Barney Pell, Martha E. Pollack, Milind Tambe et Michael Wooldridge « The Belief-Desire-Intention Model of Agency » () (DOI 10.1007/3-540-49057-4_1).
— « (ibid.) », dans Intelligent Agents V: Agents Theories, Architectures, and Languages, vol. 1555, coll. « Lecture Notes in Computer Science » (ISBN 978-3-540-65713-2), p. 1–10. - ↑
Alexander Pokahr, Lars Braubach et Winfried Lamersdorf « Jadex: A BDI Reasoning Engine » () (DOI 10.1007/0-387-26350-0_6).
— « (ibid.) », dans Multi-Agent Programming, vol. 15, coll. « Multiagent Systems, Artificial Societies, and Simulated Organizations » (ISBN 978-0-387-24568-3), p. 149–174. - ↑
Sebastian Sardina, Lavindra de Silva et Lin Padgham « Hierarchical planning in BDI agent programming languages: a formal approach » () (lire en ligne).
— « (ibid.) », dans Proceedings of the fifth international joint conference on Autonomous agents and multiagent systems. - ↑ « UM-PRS », sur marcush.net.
- ↑ « OpenPRS » [archive du ] (consulté le )
- ↑ AgentSpeak(RT) « https://web.archive.org/web/20120326071744/http://www.iesd.dmu.ac.uk/~kvikho/publications.html »(Archive.org • Wikiwix • Que faire ?),
- ↑ Vikhorev, K., Alechina, N. et Logan, B. (2011). "Agent programming with priorities and deadlines" « https://web.archive.org/web/20120326071730/http://www.iesd.dmu.ac.uk/~kvikho/papers/Vikhorev11Agent.pdf »(Archive.org • Wikiwix • Que faire ?), . In Proceedings of the Tenth International Conference on Autonomous Agents and Multiagent Systems (AAMAS 2011). Taipei, Taiwan. May 2011., pp. 397-404.
- ↑ Agent Real-Time System « https://web.archive.org/web/20110927112727/http://www.cs.nott.ac.uk/~kxv/arts.html »(Archive.org • Wikiwix • Que faire ?),
- ↑ Vikhorev, K., Alechina, N. et Logan, B. (2009). "The ARTS Real-Time Agent Architecture" « https://web.archive.org/web/20120326071752/http://www.iesd.dmu.ac.uk/~kvikho/papers/Vikhorev09ARTS.pdf »(Archive.org • Wikiwix • Que faire ?), . In Proceedings of Second Workshop on Languages, Methodologies and Development Tools for Multi-agent Systems (LADS2009). Turin, Italy. September 2009. CEUR Workshop Proceedings Vol-494.
- ↑ « JAM », sur marcush.net.
- ↑ (de) « JADEX », sur uni-hamburg.de.
- ↑ Martina Baiardi, Burattini, Samuele, Ciatto, Giovanni et Pianini, Danilo « Blending BDI Agents with Object-Oriented and Functional Programming with JaKtA » () (DOI 10.1007/s42979-024-03244-y, lire en ligne).
— « (ibid.) », Sn Computer Science, vol. 5, no 8, . - ↑ (en) « Jason | un interpréteur Java pour une version étendue d'AgentSpeak » [archive du ], sur sourceforge.net via Internet Archive.
- ↑ SPARK
- ↑ (en) « 2APL », sur SourceForge.
- 1 2 (en) « CogniTAO (Think-As-One) », sur Cogniteam / The Cloud Robotics Platform.
- 1 2 TAO: A JAUS-based High-Level Control System for Single and Multiple Robots Y. Elmaliach, CogniTeam, (2008) « Archived copy » [archive du ] (consulté le )
- 1 2 (en) « Living Systems Process Suite » [archive du ], sur whitestein.com via Internet Archive.
- 1 2 Rimassa, G., Greenwood, D. et Kernland, M. E., (2006). The Living Systems Technology Suite: An Autonomous Middleware for Autonomic Computing « https://web.archive.org/web/20080516050754/http://www.whitestein.com/library/WhitesteinTechnologies_Paper_ICAS2006-gri.pdf »(Archive.org • Wikiwix • Que faire ?), . International Conference on Autonomic and Autonomous Systems (ICAS).
- ↑ (en) Loris Fichera, Daniele Marletta, Vincenzo Nicosia et Corrado Santoro, Research and Education in Robotics - EUROBOT 2010, vol. 156, Berlin, Heidelberg, Springer, coll. « Communications in Computer and Information Science », , 57–71 p. (ISBN 978-3-642-27272-1, DOI 10.1007/978-3-642-27272-1_5), « Flexible Robot Strategy Design Using Belief-Desire-Intention Model »
- ↑ Gwendolen Semantics:2017
- ↑ « Vérification des Langages de Programmation d'Agents », sur autonomy-and-verification.github.io.
- ↑ (en) Louise A. Dennis, « MCAPL (Zenodo) », sur Zenodo (DOI 10.5281/zenodo.3235469).
- ↑ (en) « Brahms », sur ejenta.com.
- ↑ « Accueil », sur jacamo.sourceforge.net
Références
modifier- A. S. Rao et M. P. Georgeff. Modélisation des agents rationnels au sein d'une architecture BDI. Dans les Actes de la 2e Conférence internationale sur les principes de la représentation et du raisonnement des connaissances, pages p. 473–484, 1991.
- A. S. Rao et M. P. Georgeff. BDI-agents : de la théorie à la pratique « https://web.archive.org/web/20110604050051/https://www.aaai.org/Papers/ICMAS/1995/ICMAS95-042.pdf »(Archive.org • Wikiwix • Que faire ?), , Dans les Actes de la Première Conférence internationale sur les systèmes multi-agents (ICMAS'95), San Francisco, 1995.
- M. E. Bratman, Intention, Plans, and Practical Reason, CSLI Publications, (ISBN 1-57586-192-5, lire en ligne)
- M. Wooldridge, Reasoning About Rational Agents, The MIT Press, (ISBN 0-262-23213-8, lire en ligne)
- K. S. Vikhorev, N. Alechina et B. Logan. L'architecture ARTS en temps réel pour agents. Dans les Actes du Deuxième Atelier sur les Langages, Méthodologies et Outils de Développement pour les Systèmes Multi-agents (LADS2009). CEUR Workshop Proceedings, Vol-494, Turin, Italie, 2009.