About: GOAL agent programming language is a research topic. Over the lifetime, 16 publications have been published within this topic receiving 313 citations.
TL;DR: The formal semantics provides the basis for dening a verication framework for GOAL for verifying and reasoning about GOAL agents which is similar to some of the wellknown agent logics introduced in the literature.
Abstract: The agent programming language GOAL is a high-level programming language to program rational agents that derive their choice of action from their beliefsand goals. The language provides the basic building blocks to design and implementrationalagents by meansofa setofprogramming constructs. These programming constructs allow and facilitate the manipulation of an agent’sbeliefs and goals and to structure its decision-making. GOAL agents are called rational because they satisfy a numberof basic rationality constraints and because they decide to perform actions to further their goals based uponareasoning scheme derived from practical reasoning. The programming concepts of belief and goal incorporated into GOAL provide the basis for this form of reasoning and are similarto their common sense counterparts used everyday to explain the actions that we perform. In addition, GOAL provides the means for agents to focus their attention on specic goals and to communicate at the knowledge level. This provides an intuitive basis for writing high-level agent programs. At the same time these concepts and programming constructs have a well-dened, formal semantics. The formal semantics provides the basis for deninga verication framework for GOAL for verifying and reasoning about GOAL agents whichis similar to some of the wellknownagent logics introduced in the literature.
TL;DR: In this paper, the authors report on their effort to connect the GOAL agent programming language to the real-time game UNREAL TOURNAMENT 2004, and discuss various issues related to the abstraction level that fits an interface that connects high-level, logic-based BDI agents to a realtime environment, taking into account some of the performance issues.
Abstract: It remains a challenge with current state of the art technology to use BDI agents to control real-time, dynamic and complex environments. We report on our effort to connect the GOAL agent programming language to the real-time game UNREAL TOURNAMENT 2004. BDI agents provide an interesting alternative to control bots in a game such as UNREAL TOURNAMENT to more reactive styles of controlling such bots. Establishing an interface between a language such as GOAL and UNREAL TOURNAMENT, however, poses many challenges. We focus in particular on the design of a suitable and reusable interface to manage agent-bot interaction and argue that the use of a recent toolkit for developing an agent-environment interface provides many advantages. We discuss various issues related to the abstraction level that fits an interface that connects high-level, logic-based BDI agents to a real-time environment, taking into account some of the performance issues.
TL;DR: 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 and results in a concrete stepping diagram ready for implementation.
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.
TL;DR: A brief description of the GOAL-DTU system, including the overall design, the tools and the algorithms that were used in the Multi-Agent Programming Contest 2013, and some suggestions for future contests are provided.
Abstract: We provide a brief description of the GOAL-DTU system, including the overall design, the tools and the algorithms that we used in the Multi-Agent Programming Contest 2013. We focus on a description of the strategies and on an analysis of the matches. We also evaluate our experiences with the GOAL agent programming language. Our strategies worked well in general and we earned a second place in the contest only losing to the winning team. Finally we provide some suggestions for future contests.
TL;DR: In this paper, the authors investigate role enactment in organizations that have a gatekeeper that is responsible for admitting agents to the organization, like the well-known OperA organizational modelling language.
Abstract: Organizational modeling languages are used to specify an agent organization in terms of its roles, organizational structure, norms, etc. Agents take part in organizations by playing one or more of the specified roles. Using such an organizational specification to organize a multi-agent system can support agents' effectiveness in attaining their purpose, or prevent certain undesired behavior from occurring. In this paper, we investigate the process of role enactment in organizations that have a so-called gatekeeper that is responsible for admitting agents to the organization, like the well-known OperA organizational modelling language. We propose an interaction protocol between gatekeeper and agents that want to play roles, resulting in admittance of agents to the organization (or rejection). We analyze which kinds of reasoning are needed for agents to participate in this protocol. In particular, agents need to be able to reason about whether they have the necessary capabilities to play a role in an organization. We make precise what it means to have a capability and propose to integrate reasoning about capabilities in agent programming languages using reflection. We show how this kind of reflection about capabilities can be used to program role enactment in the GOAL agent programming language.