- Intelligent agent
artificial intelligence, an intelligent agent (IA) is an entity which observes, "reason" and acts upon an environment (i.e. it is an agent) and directs its activity towards achieving goals (i.e. it is usualy software rational agent).ref|RussellNorvig Intelligent agents may also learn to achieve their goals. They may be very simple or very complex: a reflex machine is an intelligent agent, as is a human being, as is a community of human beings working together towards a goal.
Intelligent agents are often described schematically as an abstract functional system similar to a
computer program. For this reason, intelligent agents are sometimes called abstract intelligent agents (AIA) to distinguish them from their real world implementations as computer systems, biological systems, or organizations. AIA is an entity which exhibits an essence of human-like intelligence and, as an IA, may have numerous other properties resulting from the properties of its carrierphysical or software system (A.M. Gadomski, 1993). For this reason IA can be either rational or emotive/irrational or, according to Herbert Simon, it represents bounded rationality.
Some definitions of intelligent agents emphasize their , and so prefer the term autonomous intelligent agents. Still others (notably Harvtxt|Russell|Norvig|2003) considered goal-directed behavior as the essence of
rationalityand so preferred the term rational agent.
In order to separate necessary and not necessary properties of IA, in the computational TOGA meta-theory ref|Gadomski1997, every cognitive AIA acts on the base of its/his/her available "information", posessed "preferences" and "knowledge" (IPK model) with a different range, on various abstraction levels, and in different domains of activity. Such agent is called
personoid. The quality of application and processing of its information, knowledge and preferences depends on the characteristics of AIA's carrier system, i.e. memory available, velocity and other its structural properties. According to different I, P,K bases, IA may be specialized for numerous roles.
Intelligent agents are closely related to agents in economics, and versions of the intelligent agent paradigm are studied in
cognitive science, ethics, the philosophy of practical reason, as well as in many interdisciplinary socio-cognitive modelingand computer social simulations.
Intelligent agents are also closely related to
software agents (an autonomous software program that assists users). In computer science, the term "intelligent agent" may be used to refer to a software agentthat has some intelligence, regardless if it is not a rational agentby Russell and Norvig's definition. For example, autonomous programs used for operator assistance or data mining (sometimes referred to as "bots") are also called "intelligent agents".
A variety of definitions
Intelligent agents have been defined many different ways.ref|Franklinref|Gadomski1994ref|Kasabov
In some literature, IAs are also referred to as " intelligent agents", which means they act independently, and will learn and adapt to changing circumstances. According to
Nikola Kasabovref|Kasabov IA systems should exhibit the following characteristics:
* learn and improve through interaction with the environment (
onlineand in real time
* learn quickly from large amounts of data
* accommodate new
problem solvingrules incrementally
* have memory based exemplar storage and retrieval capacities
* have parameters to represent short and long term memory, age, forgetting, etc.
* be able to analyze itself in terms of behavior, error and success.
Classes of intelligent agents
Harvtxt|Russell|Norvig|2003 describe multiple types of agents and sub-agents. For example:
* Physical Agents - A physical agent is an entity which "percepts" through sensors and "acts" through actuators.
* Temporal Agents - A temporal agent may use time based stored information to offer instructions or data "acts" to a computer program or human being and takes program inputs "percepts" to adjust its next behaviors.
* Believable agents - An agent exhibiting a personality via the use of an artificial character (the agent is embedded) for the interaction.
A simple agent program can be defined mathematically as an
agent functionwhich maps every possible percepts sequence to a possible action the agent can perform or to a coefficient, feedback element, function or constant that affects eventual actions:
program agent, instead, maps every possible percept to an action.
It is possible to group agents into five classes based on their degree of perceived intelligence and capability:
# simple reflex agents
# model-based reflex agents
# goal-based agents
# utility-based agents
# learning agents
; Simple reflex agentsSimple reflex agents acts only on the basis of the current percept. The agent function is based on the "condition-action rule":
if condition then action rule
This agent function only succeeds when the environment is fully observable. Some reflex agents can also contain information on their current state which allows them to disregard conditions whose actuators are already triggered.
; Model-based reflex agentsModel-based agents can handle partially observable environments. Its current state is stored inside the agent maintaining some kind of structure which describes the part of the world which cannot be seen. This behavior requires information on how the world behaves and works. This additional information completes the “World View” model.
; Goal-based agentsGoal-based agents are model-based agents which store information regarding situations that are desirable. This allows the agent a way to choose among multiple possibilities, selecting the one which reaches a goal state.
; Utility-based agentsGoal-based agents only distinguish between goal states and non-goal states. It is possible to define a measure of how desirable a particular state is. This measure can be obtained through the use of a "utility function" which maps a state to a measure of the utility of the state.
; Learning agents
Other classes of intelligent agents
According to other sourcesWho|date=August 2008, some of the sub-agents (not already mentioned in this treatment) that may be a part of an Intelligent Agent or a complete Intelligent Agent in themselves are:
* Temporal Agents (for time-based decisions);
* Spatial Agents (that relate to the physical real-world);
* Input Agents (that process and make sense of sensor inputs - example neural network based agents
* Processing Agents (that solve a problem like speech recognition);
* Decision Agents (that are geared to decision making);
* Learning Agents (for building up the data structures and database of other Intelligent agents);
* World Agents (that incorporate a combination of all the other classes of agents to allow autonomous behaviors).
Environments in which agents operate can be defined in different ways. It is helpful to view the following definitions as referring to the way the environment appears from the point of view of the agent itself.ref|RussellNorvig
Observable & partially observable
In order for an agent to be considered an agent, some part of the environment - "relevant to the action being considered" - must be observable. In some cases (particularly in software) all of the environment will be observable by the agent. This, while useful to the agent, will generally only be true for relatively simple environments.
Deterministic, stochastic& strategic
An environment that is fully deterministic is one in which the subsequent state of the environment is wholly dependent on the preceding state and the actions of the agent. If an element of interference or uncertainty occurs then the environment is stochastic. Note that a deterministic yet partially observable environment will "appear" to be stochastic to the agent.
An environment state wholly determined by the preceding state and the actions of "multiple" agents is called strategic.
This refers to the task environment of the agent. If each task that the agent must perform does not rely upon past performance, and will not effect future performance then it is episodic. Otherwise it is sequential.
A static environment, as the name suggests, is one that does not change from one state to the next while the agent is considering its course of action. In other words, the only changes to the environment are those caused by the agent itself. A dynamic environment can change, and if an agent does not respond in a timely manner, this counts as a choice to do nothing.
This distinction refers to whether or not the environment is composed of a finite or infinite number of possible states. A discrete environment will have a finite number of possible states, however, if this number is extremely high, then it becomes virtually continuous from the agents perspective.
Single-agent & multiple agent
An environment is only considered multiple agent if the agent under consideration must act "cooperatively" or "competitively" with another agent to realise some tasks or achieve goal. Otherwise another agent is simply viewed as a stochastically behaving part of the environment.
Overview of environments
Hierarchies of agents
To actively perform their functions, Intelligent Agents today are normally gathered in a hierarchical structure containing many “sub-agents”. Intelligent sub-agents process and perform lower level functions. Taken together, the intelligent agent and sub-agents create a complete system that can accomplish difficult tasks or goals with behaviors and responses that display a form of intelligence.Fact|date=August 2008
Cognitive radio- a practical field for implementation
Cybernetics, Computer science
Data mining agent
Federated search- the ability for agents to search heterogeneous data sources using a single vocabulary
Fuzzy agents - IA implemented with adaptive fuzzy logic
Multi-agent systemand multiple-agent system- multiple interactive agents
Semantic Web- making data on the Web available for automated processing by agents
1. Note|RussellNorvig Russell Norvig 2003, chpt. 2
2. Note|Gadomski1997 Adam Maria Gadomski (1997); [http://erg4146.casaccia.enea.it/wwwerg26701/gad-agen.html Agent and Intelligence] ; on the server of Italian Research Agency .
3. Note|Franklin Stan Franklin and Art Graesser (1996); [http://www.msci.memphis.edu/~franklin/AgentProg.html Is it an Agent, or just a Program?: A Taxonomy for Autonomous Agents] ; Proceedings of the Third International Workshop on Agent Theories, Architectures, and Languages, Springer-Verlag, 1996
4. Note|Gadomski1994 Adam Maria Gadomski, Jan M. Zytkow, [http://info.casaccia.enea.it/hiscs/MKEServer/erg4146.casaccia.enea.it/wwwerg26701/gad-zyt.htm Abstract Intelligent Agents: Paradigms, Foundations and Conceptualization Problems] , in "Abstract Intelligent Agent, 2". Printed by
ENEA, Rome 1995, ISSN/1120-558X
5. Note|Kasabov N. Kasabov, Introduction: Hybrid intelligent adaptive systems. International Journal of Intelligent Systems, Vol.6, (1998) 453-454.
* [http://www.aaai.org/AITopics/html/agents.html Intelligent Agent - from MIT Encyclopedia]
* [http://www.bridgeport.edu/~sobh/pdf/jp30.pdf Bridgeport]
* [http://www.coneural.org/reports/Coneural-03-01.pdf Coneural]
* [http://econpapers.repec.org/paper/amrwpaper/398.htm Research article that describes how Foresight could be integrated into capital budgeting with Intelligent Agents and fuzzy logic]
Wikimedia Foundation. 2010.