AgentSpeak is an
agent-oriented programming language. It is based on
logic programming
Logic programming is a programming paradigm which is largely based on formal logic
Logic is the study of correct reasoning. It includes both formal and informal logic. Formal logic is the science of deductively valid inferences or of log ...
and the
belief–desire–intention software model (BDI) architecture for (
cognitive
Cognition refers to "the mental action or process of acquiring knowledge and understanding through thought, experience, and the senses". It encompasses all aspects of intellectual functions and processes such as: perception, attention, thought ...
)
autonomous agents
An autonomous agent is an intelligent agent operating on a user's behalf but without any interference of that user. An intelligent agent, however appears according to an IBM white paper as:
Intelligent agents are software entities that carry out ...
. The language was originally called AgentSpeak(L), but became more popular as AgentSpeak, a term that is also used to refer to the variants of the original language.
History
In 1996, Anand Rao created a logic-based
agent
Agent may refer to:
Espionage, investigation, and law
*, spies or intelligence officers
* Law of agency, laws involving a person authorized to act on behalf of another
** Agent of record, a person with a contractual agreement with an insuran ...
programming language based on the BDI architecture and named it AgentSpeak(L). This became a highly cited paper in the
multi-agent systems
A multi-agent system (MAS or "self-organized system") is a computerized system composed of multiple interacting intelligent agents.Hu, J.; Bhowmick, P.; Jang, I.; Arvin, F.; Lanzon, A.,A Decentralized Cluster Formation Containment Framework fo ...
literature. In its original conception, AgentSpeak was an abstract agent programming language aimed to help the understanding of the relation between practical implementations of the BDI architecture such as
procedural reasoning system In artificial intelligence, a procedural reasoning system (PRS) is a framework for constructing real-time reasoning systems that can perform complex tasks in dynamic environments. It is based on the notion of a rational agent or intelligent agent us ...
(PRS) and the formalisation of the ideas behind the BDI architecture using
modal logics.
Various authors contributed to the further formalisation of the AgentSpeak(L) language, for example. In recent years, the language has been revived both in research and development. In terms of research, there has been work both on extensions of AgentSpeak as well as on
formal verification
In the context of hardware and software systems, formal verification is the act of proving or disproving the correctness of intended algorithms underlying a system with respect to a certain formal specification or property, using formal met ...
of AgentSpeak programs using model checking.
[Rafael H. Bordini, Michael Fisher, Willem Visser, Michael Wooldridge: Verifying Multi-agent Programs by Model Checking. Autonomous Agents and Multi-Agent Systems 12(2): 239–256 (2006)] The language is also one of the most popular agent-oriented languages because of the development of the Jason platform.
AgentSpeak(L) is also the most prominent means for developing the solution for the
Multi-Agent Programming Contest
The Multi-Agent Programming Contest is an annual international programming competition with stated goal of stimulating research in the area of multi-agent system development and programming.
History
In 2005 Jürgen Dix (Clausthal University of T ...
from the beginning of the competition up to the recent edition.
Example
Hello World program in AgentSpeak(L), based on Jason:
//Belief indicating the message to print.
message("Hello World!").
//Initial goal
!start.
//Plan
+!start: message(M) <-
.print(M). //Internal action from Jason to print a message.
See also
*
Distributed multi-agent reasoning system
References
External links
* is an interpreter for an extension of AgentSpeak.
{{DEFAULTSORT:Agentspeak
Computer-related introductions in 1996
Agent-based programming languages
Agent-oriented programming languages
Multi-agent systems