Date: Thu, 28 Mar 2024 17:30:02 +0000 (UTC) Message-ID: <1567049738.23.1711647002826@f76d3ca67338> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_22_642693900.1711647002825" ------=_Part_22_642693900.1711647002825 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html
GOAL is an agent= programming language for programming cognitive agents= . GOAL agents derive their choice of action from their beliefs and goals. The language provides th= e key building blocks for designing and implementing cognitive agents. The = language elements and features of GOAL allow and facilitate the manipulation of an= agent's beliefs and goals and to structure its decision-making. The langua= ge provides an intuitive programming framework based on common sense notion= s and basic practical reasoning.
Cognitive agents: programming with cognitive states tha= t consist of knowledge, beliefs, and goals and built-in actions for updatin= g these states
Modular programming with support for initialisation, ev= ent processing (e.g., percepts and messages), and decision making
Rule-based decision making using if-then and forall-do = rules with support for four modes of rule evaluation
Multi-agent systems that communicate by sending differe= nt kinds of messages
Integrated Artificial Intelligence, with support for e.= g. KR Technology (such as Prolog and OWL/SPARQL), reinforcement learning, a= nd planning
IDE fully integrated into Eclipse making common ed= itor features available and debugging using single-step execution, state in= spection, and breakpoints
Support for environments using the Environment Interfac= e Standard (EIS), and availability of many environments, including: Blocks = World, Wumpus World, Tic Tac Toe, an Elevator Simulator, A Traffic Simulato= r, Blocks World for Teams (BW4T), Unreal Tournament 3 (UT3), and StarCraft<= /p>
Extensive documentation
Teaching materials available for (under)graduate level = (BSc, MSc)
Programming with cognitive states: Different from most = other programming languages, GOAL supports progr= amming at the knowledge level. Programming an agent means to program with t= he cognitive state of that agent, which consists= of its declarative knowledge, beliefs and goals.
Agents use a knowledge representation language (a symbolic, logical lang= uage) to represent the information they have, and their beliefs or knowledg= e about the environment they act upon in order to achieve their goals.
<= /li>Agents may have multiple goals that specify what the agent wants to achi= eve at some moment in the near or distant future. Declarative goals specify= a state of the environment that the agent wants to establish, they do not = specify actions or procedures how to achieve such states.
Agents commit to their goals and drop goals only when they have been ach= ieved. This commitment strategy, called a blind commitment strateg= y, is the default strategy used by GOAL age= nts. Agents do not have goals that they believe have already been achieved,= a constraint which has been built into GOAL age= nts by dropping a goal when it has been completely achieved.
The type of knowledge representation language is not fixed by
Programming decision strategies: Programming an agent m= eans to code a strategy or policy for action selection. Ag= ents use decision rules to select actions, based on their beliefs and goals= . The type of decision making supported in GOAL = is based on human common sense decision making, as humans also decide and e= xplain their choice of action by citing their beliefs and goals.
Modules, Learning, and Planning: Decision rules are gro= uped together in a module which itself can be viewed as a kind of action th= at the agent can choose to perform. Modules allow for adding hierarchical s= tructure to an agent program and to encapsulate decision logic in re-usable= modules. This way agents can focus their attention and put all their effor= ts on achieving a subset of their goals, using a subset of their actions, a= nd using only knowledge relevant to achieving those goals. The decision mak= ing of an agent can be under-specified, which means that the agent's decisi= on making does not always select a single action but sometimes will yield m= ultiple actions that can be performed. This under-specifies the behavior of= the agent, which can be exploited by a learning mechanism that optimizes t= he behavior of an agent. Decision rules may also be used to guide a pl= anner that uses the action specifications that are part of the agent progra= m to construct a plan of action.
Communication at the knowledge level: Agents communicat=
e with each other to exchange information, and to coordinate their actions.=
GOAL agents communicate using the knowledge rep=
resentation language that is also used to represent their beliefs and goals=
.