Arrow Research search
Back to JAAMAS

JAAMAS 2016

Designing a source-level debugger for cognitive agent programs

Journal Article OriginalPaper Artificial Intelligence · Multi-Agent Systems

Abstract

Abstract When an agent program exhibits unexpected behaviour, a developer needs to locate the fault by debugging the agent’s source code. The process of fault localisation requires an understanding of how code relates to the observed agent behaviour. The main aim of this paper is to design a source-level debugger that supports single-step execution of a cognitive agent program. Cognitive agents execute a decision cycle in which they process events and derive a choice of action from their beliefs and goals. Current state-of-the-art debuggers for agent programs provide insight in how agent behaviour originates from this cycle but less so in how it relates to the program code. As relating source code to generated behaviour is an important part of the debugging task, arguably, a developer also needs to be able to suspend an agent program on code locations. We propose a design approach for single-step execution of agent programs that supports both code-based as well as cycle-based suspension of an agent program. This approach results in a concrete stepping diagram ready for implementation and is illustrated by a diagram for both the Goal and Jason agent programming languages, and a corresponding full implementation of a source-level debugger for Goal in the Eclipse development environment. The evaluation that was performed based on this implementation shows that agent programmers prefer a source-level debugger over a purely cycle-based debugger.

Authors

Keywords

  • Debugging
  • Cognitive agent
  • Agent program
  • Source-level
  • Decision cycle
  • Cognitive state

Context

Venue
Autonomous Agents and Multi-Agent Systems
Archive span
2005-2026
Indexed papers
940
Paper id
477853558328628078
v2026.09.13