Designing a source-level debugger for cognitive agent programs

Vincent J. Koeman, Koen V. Hindriks

Research output: Chapter in Book / Report / Conference proceedingConference contributionAcademicpeer-review

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 an implementation of a source-level debugger for the GOAL agent programming language in the Eclipse development environment.

Original languageEnglish
Title of host publicationPRIMA 2015
Subtitle of host publicationPrinciples and Practice of Multi-Agent Systems - 18th International Conference, Proceedings
EditorsPaolo Torroni, Andrea Omicini, Jane Hsu, Qingliang Chen, Paolo Torroni, Andrea Omicini, Jane Hsu, Qingliang Chen, Serena Villata, Serena Villata
PublisherSpringer/Verlag
Pages335-350
Number of pages16
ISBN (Print)9783319255231, 9783319255231
DOIs
Publication statusPublished - 1 Jan 2015
Externally publishedYes
Event18th International Conference on Principles and Practice of Multi-Agent Systems, PRIMA 2015 - Bertinoro, Italy
Duration: 26 Oct 201530 Oct 2015

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume9387
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference18th International Conference on Principles and Practice of Multi-Agent Systems, PRIMA 2015
CountryItaly
CityBertinoro
Period26/10/1530/10/15

Fingerprint

Debugging
Cycle
Fault
Computer programming languages
Programming Languages
Concretes
Diagram
Design
Beliefs

Cite this

Koeman, V. J., & Hindriks, K. V. (2015). Designing a source-level debugger for cognitive agent programs. In P. Torroni, A. Omicini, J. Hsu, Q. Chen, P. Torroni, A. Omicini, J. Hsu, Q. Chen, S. Villata, ... S. Villata (Eds.), PRIMA 2015: Principles and Practice of Multi-Agent Systems - 18th International Conference, Proceedings (pp. 335-350). (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Vol. 9387). Springer/Verlag. https://doi.org/10.1007/978-3-319-25524-8_21
Koeman, Vincent J. ; Hindriks, Koen V. / Designing a source-level debugger for cognitive agent programs. PRIMA 2015: Principles and Practice of Multi-Agent Systems - 18th International Conference, Proceedings. editor / Paolo Torroni ; Andrea Omicini ; Jane Hsu ; Qingliang Chen ; Paolo Torroni ; Andrea Omicini ; Jane Hsu ; Qingliang Chen ; Serena Villata ; Serena Villata. Springer/Verlag, 2015. pp. 335-350 (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)).
@inproceedings{957ce63a949a4b38bfd670a4927cf2c5,
title = "Designing a source-level debugger for cognitive agent programs",
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 an implementation of a source-level debugger for the GOAL agent programming language in the Eclipse development environment.",
author = "Koeman, {Vincent J.} and Hindriks, {Koen V.}",
year = "2015",
month = "1",
day = "1",
doi = "10.1007/978-3-319-25524-8_21",
language = "English",
isbn = "9783319255231",
series = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
publisher = "Springer/Verlag",
pages = "335--350",
editor = "Paolo Torroni and Andrea Omicini and Jane Hsu and Qingliang Chen and Paolo Torroni and Andrea Omicini and Jane Hsu and Qingliang Chen and Serena Villata and Serena Villata",
booktitle = "PRIMA 2015",

}

Koeman, VJ & Hindriks, KV 2015, Designing a source-level debugger for cognitive agent programs. in P Torroni, A Omicini, J Hsu, Q Chen, P Torroni, A Omicini, J Hsu, Q Chen, S Villata & S Villata (eds), PRIMA 2015: Principles and Practice of Multi-Agent Systems - 18th International Conference, Proceedings. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), vol. 9387, Springer/Verlag, pp. 335-350, 18th International Conference on Principles and Practice of Multi-Agent Systems, PRIMA 2015, Bertinoro, Italy, 26/10/15. https://doi.org/10.1007/978-3-319-25524-8_21

Designing a source-level debugger for cognitive agent programs. / Koeman, Vincent J.; Hindriks, Koen V.

PRIMA 2015: Principles and Practice of Multi-Agent Systems - 18th International Conference, Proceedings. ed. / Paolo Torroni; Andrea Omicini; Jane Hsu; Qingliang Chen; Paolo Torroni; Andrea Omicini; Jane Hsu; Qingliang Chen; Serena Villata; Serena Villata. Springer/Verlag, 2015. p. 335-350 (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Vol. 9387).

Research output: Chapter in Book / Report / Conference proceedingConference contributionAcademicpeer-review

TY - GEN

T1 - Designing a source-level debugger for cognitive agent programs

AU - Koeman, Vincent J.

AU - Hindriks, Koen V.

PY - 2015/1/1

Y1 - 2015/1/1

N2 - 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 an implementation of a source-level debugger for the GOAL agent programming language in the Eclipse development environment.

AB - 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 an implementation of a source-level debugger for the GOAL agent programming language in the Eclipse development environment.

UR - http://www.scopus.com/inward/record.url?scp=84950310881&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84950310881&partnerID=8YFLogxK

U2 - 10.1007/978-3-319-25524-8_21

DO - 10.1007/978-3-319-25524-8_21

M3 - Conference contribution

SN - 9783319255231

SN - 9783319255231

T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

SP - 335

EP - 350

BT - PRIMA 2015

A2 - Torroni, Paolo

A2 - Omicini, Andrea

A2 - Hsu, Jane

A2 - Chen, Qingliang

A2 - Torroni, Paolo

A2 - Omicini, Andrea

A2 - Hsu, Jane

A2 - Chen, Qingliang

A2 - Villata, Serena

A2 - Villata, Serena

PB - Springer/Verlag

ER -

Koeman VJ, Hindriks KV. Designing a source-level debugger for cognitive agent programs. In Torroni P, Omicini A, Hsu J, Chen Q, Torroni P, Omicini A, Hsu J, Chen Q, Villata S, Villata S, editors, PRIMA 2015: Principles and Practice of Multi-Agent Systems - 18th International Conference, Proceedings. Springer/Verlag. 2015. p. 335-350. (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)). https://doi.org/10.1007/978-3-319-25524-8_21