AgentSpeak | |
Paradigm: | Agent-oriented programming |
Designer: | Anand Rao |
Implementations: | Jason |
AgentSpeak is an agent-oriented programming language. It is based on logic programming and the belief–desire–intention software model (BDI) architecture for (cognitive) autonomous agents. 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.
In 1996, Anand Rao created a logic-based agent programming language based on the BDI architecture and named it AgentSpeak(L).[1] This became a highly cited paper in the multi-agent systems 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 (PRS)[2] and the formalisation of the ideas behind the BDI architecture using modal logics.[3]
Various authors contributed to the further formalisation of the AgentSpeak(L) language.[4] 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[5] [6] [7] as well as on formal verification of AgentSpeak programs using model checking.[8] [9] 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 from the beginning of the competition up to the recent edition.
Hello World program in AgentSpeak(L), based on Jason:
//Initial goal!start.
//Plan+!start: message(M) <-.print(M). //Internal action from Jason to print a message.