EEL 5937 Agent models. EEL 5937 Multi Agent Systems Lecture 4, Jan 16, 2003 Lotzi Bölöni.

12
EEL 5937 Agent models. EEL 5937 Multi Agent Systems Lecture 4, Jan 16, 2003 Lotzi Bölöni

Transcript of EEL 5937 Agent models. EEL 5937 Multi Agent Systems Lecture 4, Jan 16, 2003 Lotzi Bölöni.

Page 1: EEL 5937 Agent models. EEL 5937 Multi Agent Systems Lecture 4, Jan 16, 2003 Lotzi Bölöni.

EEL 5937

Agent models.

EEL 5937 Multi Agent Systems

Lecture 4, Jan 16, 2003

Lotzi Bölöni

Page 2: EEL 5937 Agent models. EEL 5937 Multi Agent Systems Lecture 4, Jan 16, 2003 Lotzi Bölöni.

EEL 5937

Basic agent model – AM0

• An agent is a triplet of A = (Ag, KB, S)• Ag: agenda. The things the agent wants to

accomplish. – Typically defined as a function of the knowledgebase Ag

= Ag(KB)

• KB: knowledgebase. The sum of the knowledge of the agent about its environment and itself. – Also known as: state, model of the world

• S: strategy.-Action = S(KB, Ag)-Also known as: behavior– The strategy of the agent generates actions based on

the knowledgebase and the agenda.

Page 3: EEL 5937 Agent models. EEL 5937 Multi Agent Systems Lecture 4, Jan 16, 2003 Lotzi Bölöni.

EEL 5937

Reactivity

• If a program environment is guaranteed to be fixed, the program can just execute blindly. E.g.: compiler

• In the real world things change and the information is incomplete. The interesting environments are dynamic.

• Software is harder to build for dynamic environments.

• A reactive agent is one that maintains an ongoing interaction with its environment, and responds to changes that occur in it (in time for the response to be useful).

Page 4: EEL 5937 Agent models. EEL 5937 Multi Agent Systems Lecture 4, Jan 16, 2003 Lotzi Bölöni.

EEL 5937

Pro-activeness

• Reacting to the environment is easy (e.g. stimulus-> response rules)

• But we generally want agents to do things for us.

• Hence: goal directed behavior.• Pro-activeness = generating and attempting

to achieve goals; not driven solely by events, taking the initiative.

• Recognizing opportunities.

Page 5: EEL 5937 Agent models. EEL 5937 Multi Agent Systems Lecture 4, Jan 16, 2003 Lotzi Bölöni.

EEL 5937

Purely reactive agent

• Purely reactive agent– No knowledgebase / No state– The knowledge of the agent is restricted to the most

recent sensor input– Easily expressible as

» Action-reaction tables» Rule-sets

– The behavior of the agent does not depend on its history

– E.g. thermostat

Page 6: EEL 5937 Agent models. EEL 5937 Multi Agent Systems Lecture 4, Jan 16, 2003 Lotzi Bölöni.

EEL 5937

Agenda

• Alternative names: tasks, desires etc.• There are two common types:• Achievement agenda: those of the form

“achieve state of affairs X”. They are specified by a set G of good or goal states. The agent succeeds if brings about at least one of these states.

• Maintenance agenda: those of the form “maintain state of affairs X”. They are specified by a set B of bad states. The agent succeeds if it manages to avoid all states in B.

• Typically a boolean function or a distance function on the knowledgebase.

Page 7: EEL 5937 Agent models. EEL 5937 Multi Agent Systems Lecture 4, Jan 16, 2003 Lotzi Bölöni.

EEL 5937

Agent Building Problem

• We call the states of the world where the agenda is satisfied desired state of the world.

• Given a agenda Ag and an initial set of knowledge KB0 create a strategy S which “works towards” the agenda.

• In general, when designing agents:– The agenda is a given in the specification of the agent– The initial knowledge is given (but the agent builder

frequently needs to work to achieve a good knowledge representation)

– The strategy needs to be created by the agent builder– The knowledge of the agent needs to be gathered by

the agent builder.

Page 8: EEL 5937 Agent models. EEL 5937 Multi Agent Systems Lecture 4, Jan 16, 2003 Lotzi Bölöni.

EEL 5937

Pitfall: Self deceiving agents

• While we are talking about a desired state of the world, the agenda is defined on the knowledgebase, not on the world

• The easiest way for an agent to satisfy the agenda is to change only the knowledgebase. It is so much easier than bothering with the world!

• There is no automatic guarantee that the knowledgebase is accurate.

• Solution:– The agent needs to take explicit actions to update and

refresh the knowledgebase.– It is better to update the knowledgebase based on the

feedback from the environment, instead of the predicted effect of the action.

Page 9: EEL 5937 Agent models. EEL 5937 Multi Agent Systems Lecture 4, Jan 16, 2003 Lotzi Bölöni.

EEL 5937

Events and actions

• Events are a set of changes in the environment

E = <x1, x2 … xn >

• An action is an event where the cause of the event can be identified as the agent.

• The changes contained in an action are both in the environment and the agent (typically the agent knowledgebase).

• We assume that the events and actions are instantaneous. We assume that there is a strict ordering between the events and actions.

Page 10: EEL 5937 Agent models. EEL 5937 Multi Agent Systems Lecture 4, Jan 16, 2003 Lotzi Bölöni.

EEL 5937

Perception

• Perception is a special kind of action, performed by an agent to update its knowledgebase.

• A perception is valid, if after the perception, the knowledgebase is a better approximation of the world than before.

• A perception is pure if the changes contained by it apply exclusively to the knowledgebase.– It is difficult to achieve a pure perception (see the

Heisenberg uncertainty principle)– But we can perform logical deductions on the

knowledgebase, which improve our knowledge without modifying the environment.

– Some people might argue that this kind of reasoning do not increase the amount of knowledge.

Page 11: EEL 5937 Agent models. EEL 5937 Multi Agent Systems Lecture 4, Jan 16, 2003 Lotzi Bölöni.

EEL 5937

Implementing strategies

• Strategies are the active component of any agent.

• It is very difficult to just sit down and implement a monolitic strategy which encapsulates the whole functionality of the agent.

• The first, pragmatic step is to decompose the strategies.

• At some point, we cannot decompose further, so we actually need to start implementing it:– Either by direct, imperative programming– By employing logical models, such as BDI– Using neural networks– Using genetic algorithms– …

Page 12: EEL 5937 Agent models. EEL 5937 Multi Agent Systems Lecture 4, Jan 16, 2003 Lotzi Bölöni.

EEL 5937

Decomposing strategies

• Decomposition:– Sound engineering principle– Nobody can design a bridge from scratch: they are

assembled from standard components

• Aspects & parallelism:– We have seen that the actions of the agent various.– Goal directed actions, exploration, self-monitoring, user

interface, conversations with other agents. – We can separate these aspects into parallel planes.

• Evolution in time:– Different aspects can present an evolution in time,

which can be described by a state machine.– For example an auction: login -> bid -> wait -> buy

• The result of the primary decomposition: multiplane state machine.

• The decomposition can continue!