1 Chapter 19 Intelligent Agents
2 Chapter 19 Contents (1) l Intelligence l Autonomy l Ability to Learn l Other Agent Properties l Reactive Agents l Utility-Based Agents l Utility Functions l Interface Agents l Mobile Agents
3 Chapter 19 Contents (2) l Information Agents l Multiagent Systems l Subsumption Architecture l BDI Architectures l Horizontal and Vertical Architectures l Accessibility l Learning Agents l Robotic Agents l Braitenberg Vehicles
4 Intelligence l An agent is a tool that carries out tasks on behalf of a human user. l An intelligent agent possesses domain knowledge and the ability to use that knowledge to solve its problems more efficiently. l Intelligent agents are often able to learn, and have other properties that we will look at in the following slides.
5 Autonomy l Autonomy is the ability to act independently of the human user’s instructions. l Hence, a buying agent that needs to make a quick decision about an increased bid can use autonomy to do so without the need to waste time by consulting a human. l Autonomy is a an important feature of many intelligent agents, but is not seen in many other Artificial Intelligence techniques.
6 Ability to Learn l Many agents can learn from their environments and from their success or failure at solving problems. l Agents can learn from a user or from other agents. l When a human tells an agent it has solved a problem poorly it can learn from this and avoid making the same mistakes in the future.
7 Other Agent Properties l Co-Operation: interaction between agents. l Versatility: ability to carry out a range of different tasks. l Benevolence: helpfulness to other agents and people. l Veracity: tendency to tell the truth. l Mobility: ability to move about in the Internet or another network (or the real world).
8 Reactive Agents l Also known as reflex agents. l Uses a production system to determine what action to carry out based on current inputs. l Example: spam mail filter. l Does not perform well when the environment changes. l Does not deal well with unexpected events.
9 Utility-Based Agents l Agents that attempt to achieve some specified goal, usually using search or planning methods. l An agent, for example, might have the goal of finding interesting web pages. l The agent would have various actions it could perform such as fetching web pages and examining them.
10 Utility Functions (1) l More sophisticated goal-based agents have utility functions to decide which goals to accept. l The agent is always attempting to both achieve its goals, and to maximise some utility function. l Hence, the web researching agent would have a utility function that measured how interesting web pages were, and would attempt to find the most interesting page it could.
11 Utility Functions (2) l A utility function maps the set of states to the set of real numbers. l Hence, an agent with a utility function can determine how “happy” it is in any given state. l Example: Static board evaluators used in playing games. l A rational agent is one that will always try to maximise its utility functions. nThis is true even if this results in seemingly bizarre behaviour.
12 Interface Agents l An interface agent is a personal assistant. l Example: a tool used to help a user learn to use a new software package. l Interface agents observe a user’s behavior and make recommendations accordingly.
13 Mobile Agents l Mobile agents can move from one location to another. l This can mean physical locations (for robots) or network locations. l A computer virus is a kind of mobile agent. Viruses are usually autonomous but not intelligent. l Mobile agents are efficient, but can pose a severe security risk. l Mobile agents can be combined to produce a distributed computing architecture.
14 Information Agents l Also known as Internet agents. l Information agents gather information from the Internet (or other source of data). l Can be static or mobile. l Can be taught by example: “find me more information like this”. l Information agents need to be sophisticated to deal with the “dirty” nature of much of the data on the Internet.
15 Multiagent Systems (1) l A multiagent system depends on a number of agents. l Each agent has incomplete information and cannot solve the problem on its own. l By cooperating, all the agents together can solve the problem. l Similar to the way in which ant colonies work.
16 Multiagent Systems (2) l Agents in multi-agent systems usually have the ability to communicate and collaborate with each other. l Learning multi-agent systems can be developed, for example to control the individual limbs of a robot. l An agent team is a group of agents that co- operate to achieve some common goal – such as arranging the various components of a trip: flight, train, taxi, hotel etc.
17 Subsumption Architecture (1) l Architecture for intelligent agents – invented by Brooks in l Consists of a set of inputs, outputs and modules in layers. For example: l Each module is an AFSM (Augmented Finite State Machine) – based on production rules of the form input -> action.
18 Subsumption Architecture (2) l The rules are situated action rules, as they determine what the agent will do in given situations. l Such an agent is said to be situated. l An AFSM triggers when its input exceeds a threshold. l The layers in the architecture act asynchronously, but can affect each other. l One layer can suppress the outputs of some layers, while taking into account output from other layers.
19 BDI Architectures l Belief Desire Intention Architectures. nBeliefs: statements about the environment. nDesires: goals nIntentions: plans for how to achieve the goals. l The agent considers the options available, and commits to one. l This option becomes the agent’s intention. l Agents can be bold (carries out its intentions no matter what) or cautious (constantly reassesses its intentions).
20 Horizontal and Vertical Architectures nLayers act in parallel and all contribute to an overall output. l InteRRaP is an example of a vertical layered architecture: nOutputs are passed through from one layer to the next, until the last layer produces the final output. l The subsumption architecture and TouringMachines are examples of horizontal architectures:
21 Accessibility l Some agents operate in accessible environments, where all relevant facts are available to the agent l Most agents must operate in inaccessible environments where some information is unavailable. l For example, chess playing is accessible, poker playing is inaccessible. l Additionally, environments can be deterministic or stochastic. l Markov Decision Processes are useful for dealing with stochastic, accessible environments.
22 Learning Agents l Agents learn using mechanisms such as neural networks and genetic algorithms. l Learning enables an agent to solve problems it has not previously faced, and to learn from past experience. l Multi-agent learning can produce much more impressive results. l Such learning can be centralized or decentralized – agents learn individually or contribute to the learning of the whole group.
23 Robotic Agents l Unlike software agents, robotic agents exist in the real world. l Robots operate in a stochastic, inaccessible environment, and must also be able to deal with large numbers of other agents (such as humans) and other complicating factors. l It is important for robotic agents to deal with change and uncertainty well.
24 Braitenberg Vehicles l Simple robotic agents that can exhibit complex behavior. l There are 14 classes of vehicles. l Class 1: simply moves faster the more light there is. l Class 2: two configurations – one moves towards light, the other away. l These can be thought of as being bold and timid.