Agent-oriented BDI Programming

Several programming languages emerged to facilitate the development of autonomous agents, based on different cognitive and philosophical theories. In this research topic, we focus on a family of programming languages based on the Belief-Desire-Intention (BDI) theory. BDI languages such as 2APL, GOAL or Jason offer constructs inspired by mental notions such as beliefs, goals and plans to implement agent behaviour.

Modularisation in BDI Languages

bdi_modules

As in other programming paradigms, the ability to decompose BDI programs to separate, to some extent independent modules, is crucial for the development of complex software systems.Yet, a widely accepted concept of modularisation for BDI programming languages is still missing. In our work we propose a modularisation framework for BDI-based agent programming languages developed from a software engineering perspective. BDI modules are seen as encapsulations of cognitive components, which are instantiated and manipulated in a similar fashion as objects in object orientation. In particular, an agent’s mental state is formed dynamically by instantiating and activating BDI modules. The agent deliberates on its active module instances, which interact by sharing their beliefs and goals. The formal semantics of the framework are provided and some desirable properties of the framework are shown.

Related publications:

  • [PDF] M. Cap, M. Dastani, and M. Harbers, “Belief/goal sharing modules for BDI languages,” in 2011 csi international symposium on computer science and software engineering (csse), 2011.
    [Bibtex]
    @inproceedings{cap_2011_b,
    author = {Michal Cap and Mehdi Dastani and Maaike Harbers},
    title = {Belief/Goal Sharing Modules for {BDI} Languages},
    booktitle = {2011 CSI International Symposium on Computer Science and Software Engineering (CSSE)},
    year = {2011},
    }
  • [PDF] M. Cap, M. Dastani, and M. Harbers, “Belief/goal sharing BDI modules (extended abstract),” in Tenth international conference on autonomous agents and multiagent systems (AAMAS), 2011.
    [Bibtex]
    @inproceedings{cap_2011,
    author = {Michal Cap and Mehdi Dastani and Maaike Harbers},
    title = {Belief/Goal Sharing {BDI} Modules (Extended Abstract)},
    booktitle = {Tenth International Conference on Autonomous Agents and Multiagent Systems ({AAMAS})},
    editor = {Tumer, Yolum, Sonenberg and Stone},
    year = {2011},
    }
  • [PDF] M. Cap, “Belief/goal sharing BDI modules (MSc Thesis),” , 2010.
    [Bibtex]
    @masterthesis{cap_2010_b,
    author={Michal Cap},
    title={Belief/Goal Sharing {BDI} Modules {(MSc Thesis)}},
    school={Utrecht University},
    address={the Netherlands},
    year={2010},
    note={Master thesis, Utrecht University, the Netherlands},
    }

Related software:

A version of 2APL agent programming language interpreter supporting the belief/goal sharing-based modularity (see publications above) is available in a Sourceforge SVN branch. To obtain it, check out the SVN branch from the following location:

https://apapl.svn.sourceforge.net/svnroot/apapl/branches/bgsharing