Towards Semantic Merging of Versions of BDI Agent Systems

Modern software development environment is based on developers’ ability to work in parallel on the same codebase and perform concurrent changes, which potentially need to be merged back together. However, state-of-the-art merging systems follow text-based algorithms that focus only on modifications to text but completely ignore the semantic of the code written. This limitation significantly restricts developers’ ability to perform and merge concurrent changes. In this paper, we propose a merging technique that fully understands the programming language structure of typical BDI agent systems. In addition, our approach effectively captures the semantic of an agent system using the notion of semantic effects of goals, plans and actions constituting the agent system.

[1]  Tom Mens,et al.  A State-of-the-Art Survey on Software Merging , 2002, IEEE Trans. Software Eng..

[2]  Aditya K. Ghose,et al.  Automated change impact analysis for agent systems , 2011, 2011 27th IEEE International Conference on Software Maintenance (ICSM).

[3]  Michael Winikoff,et al.  Cost-based BDI plan selection for change propagation , 2008, AAMAS.

[4]  Walter Van de Velde,et al.  Agents Breaking Away , 1996, Lecture Notes in Computer Science.

[5]  Mehdi Dastani,et al.  Programming Multi-Agent Systems in 3APL , 2005, Multi-Agent Programming.

[6]  Valdis Berzins,et al.  Software merge: semantics of combining changes to programs , 1994, TOPL.

[7]  Jürgen Dix,et al.  Multi-Agent Programming , 2009, Springer US.

[8]  Lin Padgham,et al.  A BDI agent programming language with failure handling, declarative goals, and planning , 2011, Autonomous Agents and Multi-Agent Systems.

[9]  A. S. Roa,et al.  AgentSpeak(L): BDI agents speak out in a logical computable language , 1996 .