You are on page 1of 41

Sisteme Multi-Agent

S.l.
dr. ing. Andrei Olaru

andrei.olaru@cs.pub.ro | cs@andreiolaru.ro

Departamentul de Calculatoare

2016 2017

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 1 / 33
Sisteme Multi-Agent Andrei Olaru
Part 1

Introduction

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 2 / 33
Sisteme Multi-Agent Andrei Olaru
Part 1: Introduction

1 Software Agents

2 Agents and the Environment

3 Multi-Agent Systems

4 Agent Features

5 Cognition (?)

6 MAS Applications

7 About this course

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 3 / 33
Sisteme Multi-Agent Andrei Olaru
Software Agents

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 4 / 33
Sisteme Multi-Agent Andrei Olaru
Motivation for this field
Why would we ever need agents?

Solve complex problems in dynamic environments.

the environment is influenced by many factors

the environmant changes, unpredictably

other entities exist in the environment


they use the same resources and/or
they are able to offer expertise

the problem to solve involves the integration of legacy


systems

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 5 / 33
Sisteme Multi-Agent Andrei Olaru
Agents in general
What could an agent be? What do we already know?

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 6 / 33
Sisteme Multi-Agent Andrei Olaru
Agents in general
What could an agent be? What do we already know?

Secret agent, press agent, talent agent, insurance agent,


biological agent, chemical agent.

[http://en.wikipedia.org/wiki/Agent]

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 6 / 33
Sisteme Multi-Agent Andrei Olaru
Agents in general
What could an agent be? What do we already know?

Secret agent, press agent, talent agent, insurance agent,


biological agent, chemical agent.

[http://en.wikipedia.org/wiki/Agent]

An agent acts outside its organization, representing the


interests of its organization, having its own agenda, goals,
and plan, and is capable of taking decisions in its interaction
with the environment.

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 6 / 33
Sisteme Multi-Agent Andrei Olaru
Software agents
What would a software agent be then?

An agent: a software entity (program) that is


autonomous, has a continuous lifecycle over some time
(is persistent), and interacts with its environment, in
which other agents and entities may exist. It is oriented
towards fulfilling a goal rather than processing data.

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 7 / 33
Sisteme Multi-Agent Andrei Olaru
Software agents
What would a software agent be then?

An agent: a software entity (program) that is


autonomous, has a continuous lifecycle over some time
(is persistent), and interacts with its environment, in
which other agents and entities may exist. It is oriented
towards fulfilling a goal rather than processing data.

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 7 / 33
Sisteme Multi-Agent Andrei Olaru
Agent definitions
How various scientists view agents

Most often, when people use the term agent they refer to an entity that
functions continuously and autonomously in an environment in which
other processes take place and other agents exist. [Shoham, 1993]
An agent is an entity that senses its environment and acts upon it
[Russell et al., 1995]
Intelligent agents continuously perform three functions: perception of
dynamic conditions in the environment; action to affect conditions in the
environment; and reasoning to interpret perceptions, solve problems,
draw inferences, and determine actions. [Hayes-Roth, 1995]
Intelligent agents are software entities that carry out some set of
operations on behalf of a user or another program, with some degree of
independence or autonomy, and in so doing, employ some knowledge or
representation of the users goals or desires. [the IBM Agent]

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 8 / 33
Sisteme Multi-Agent Andrei Olaru
History
Where do agents come from?

The concept of an agent can be traced back to Hewitts


Actor Model [Hewitt, 1977] A self-contained, interactive
and concurrently-executing object, possessing internal
state and communication capability..

Multi-agent systems are an evolution of the Distributed


Artificial Intelligence paradigm (which comes from DPS
Distributed problem solving). [Weiss, 1999]

In the 1980s there are already multiple models of


agency, including the BDI model.

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 9 / 33
Sisteme Multi-Agent Andrei Olaru
Agents and the Environment

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 10 / 33
Sisteme Multi-Agent Andrei Olaru
The Environment around the Agent

The interaction between the agent and the environment is


central to the agents activity.
Perceive

Act Environment
Agent
Environment:
Accessible vs inaccessible
Deterministic vs nondeterministic
Episodic vs non-episodic
Static vs dynamic
Open vs closed
Contains or not other agents
Real-time
Agents Environment MAS Features Cognition MAS Applications About this course
1 : 11 / 33
Sisteme Multi-Agent Andrei Olaru
Multi-Agent Systems

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 12 / 33
Sisteme Multi-Agent Andrei Olaru
Multi-agent systems
What if there are more agents?

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 13 / 33
Sisteme Multi-Agent Andrei Olaru
Multi-agent systems (2)
How do more agents interact?

knowledge about [the existence of] other agents


perceiving other agents actions
Interactions for:
coordination
communication
organization
Coordination:
collectively motivated (same goal)
self interested
competition vs cooperation
Hierarchies: centralized / decentralized, hierarchical,
markets
Agents Environment MAS Features Cognition MAS Applications About this course
1 : 14 / 33
Sisteme Multi-Agent Andrei Olaru
Agent Features

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 15 / 33
Sisteme Multi-Agent Andrei Olaru
Agent features
How can we characterize an agent?

autonomy agents operate without the direct intervention of


humans or others, and have some kind of control over their
actions and internal state;
reactivity agents perceive their environment and respond in
a timely fashion to changes that occur in it;
pro-activeness agents do not simply act in response to their
environment, they are able to exhibit goal-directed behavior
by taking initiative;
social ability agents interact with other agents (and possibly
humans) via some kind of [agent-]communication language;

Also: persistence, representation, mobility, rationality, learning,


adaptivity [Wooldridge, 2002]
Agents Environment MAS Features Cognition MAS Applications About this course
1 : 16 / 33
Sisteme Multi-Agent Andrei Olaru
Agents help!

Application needs manage large-scale heterogeneous


systems build more ubiquitous, more interconnected
computer systems;

Tool for understanding human societies through


simulation of interactions;

Speed-up and efficiency parallel, asynchronous,


distributed operation (loose couplng);

Robustness and reliability failure of some agents does


not have a major influence on the working of others;

Scalability and flexibility just add more agents;


Agents Environment MAS Features Cognition MAS Applications About this course
1 : 17 / 33
Sisteme Multi-Agent Andrei Olaru
Agents versus . . . ?
How to know if it is an agent and not something else?

. . . vs objects
. . . vs expert systems
. . . vs distributed systems
See also the Introduction to [Wooldridge, 2002].

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 18 / 33
Sisteme Multi-Agent Andrei Olaru
Agents versus . . . ?
How to know if it is an agent and not something else?

more autonomous;
more flexible;
. . . vs objects
proactive;
persistent, own thread.
. . . vs expert systems
. . . vs distributed systems
See also the Introduction to [Wooldridge, 2002].

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 18 / 33
Sisteme Multi-Agent Andrei Olaru
Agents versus . . . ?
How to know if it is an agent and not something else?

more autonomous;
more flexible;
. . . vs objects
proactive;
persistent, own thread.
. . . vs expert systems
. . . vs distributed systems
See also the Introduction to [Wooldridge, 2002].

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 18 / 33
Sisteme Multi-Agent Andrei Olaru
Agents versus . . . ?
How to know if it is an agent and not something else?

more autonomous;
more flexible;
. . . vs objects
proactive;
persistent, own thread.
coupled to the environment;
. . . vs expert systems reactive / proactive;
social.
. . . vs distributed systems
See also the Introduction to [Wooldridge, 2002].

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 18 / 33
Sisteme Multi-Agent Andrei Olaru
Agents versus . . . ?
How to know if it is an agent and not something else?

more autonomous;
more flexible;
. . . vs objects
proactive;
persistent, own thread.
coupled to the environment;
. . . vs expert systems reactive / proactive;
social.
. . . vs distributed systems
See also the Introduction to [Wooldridge, 2002].

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 18 / 33
Sisteme Multi-Agent Andrei Olaru
Agents versus . . . ?
How to know if it is an agent and not something else?

more autonomous;
more flexible;
. . . vs objects
proactive;
persistent, own thread.
coupled to the environment;
. . . vs expert systems reactive / proactive;
social.
coordination mechanisms
not hardwired at runtime;
. . . vs distributed systems
loose coupling;
self-interested.

See also the Introduction to [Wooldridge, 2002].

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 18 / 33
Sisteme Multi-Agent Andrei Olaru
Cognition (?)

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 19 / 33
Sisteme Multi-Agent Andrei Olaru
Reactive agents
Dumb agents no intelligence

Reactive agents are simple processing units that perceive


and react to changes in their environment.

They do not have a symbolic representation of the world and


do not use complex symbolic reasoning.

The advocates of reactive agent systems claims that


intelligence is not a property of the active entity but it is
distributed in the system, and steams as the result of the
interaction between the many entities of the distributed
structure and the environment.

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 20 / 33
Sisteme Multi-Agent Andrei Olaru
Cognitive agents
How do agents acquire intelligence?

The model of human intelligence and human perspective of


the world characterize an intelligent agent using symbolic
representations and mentalistic notions [Shoham, 1993]:
knowledge John knows humans are mortal;
beliefs John took his umbrella because he believed it was
going to rain;
desires John wants to be successful;
goals John is decided to get a PhD;
intentions John intends to sign up for PhD studies, then to
study various fields;
commitments John will not stop working until getting his
PhD;
obligations John has to provide for his family.
Agents Environment MAS Features Cognition MAS Applications About this course
1 : 21 / 33
Sisteme Multi-Agent Andrei Olaru
An example problem: pray and predators
Modeling a problem in different ways

The reactive approach:


The prey emits a signal of intensity
decreasing with distance (attractor);
Hunters emit a signal which acts as a
repellent for other hunters;
Each hunter is each attracted by the
pray and (weakly) repelled by the other
hunters.
The cognitive approach:
Detection of prey;
Setting up the hunting team; allocation of roles;
Re-organization of teams;
Necessity for dialogue/communication and for coordination;
Predator agents have goals, they appoint a leader that organizes the
distribution of work and coordinates actions.

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 22 / 33
Sisteme Multi-Agent Andrei Olaru
Emotional agents
Going further than cognitive

A computable science of emotions


Virtual actors
Listen to people trough speech recognition software
Respond, in real time, with morphing faces, music, text, and
speech
Emotions:
Appraisal of a situation as an event: joy, distress;
Presumed value of a situation as an effect affecting another:
happy-for, gloating, resentment, jealousy, envy, sorry-for;
Appraisal of a situation as a prospective event: hope, fear;
Appraisal of a situation as confirming or disconfirming an
expectation: satisfaction, relief, fears-confirmed,
disappointment.
Manifest temperament control of emotions
Agents Environment MAS Features Cognition MAS Applications About this course
1 : 23 / 33
Sisteme Multi-Agent Andrei Olaru
MAS Applications

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 24 / 33
Sisteme Multi-Agent Andrei Olaru
MAS versus other domains
MAS are not alone

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 25 / 33
Sisteme Multi-Agent Andrei Olaru
MAS R&D
What do scientists research in the MAS domain?

Agent architectures
Knowledge representation: of world, of itself, of the other
agents
Communication: languages, protocols
Planning: task sharing, result sharing, distributed planning
Coordination, distributed search
Decision making: negotiation, markets, coalition formation
Learning
Organizational theories
Norms
Trust and reputation
Agents Environment MAS Features Cognition MAS Applications About this course
1 : 26 / 33
Sisteme Multi-Agent Andrei Olaru
MAS R&D / Implementation
What do people implement in the MAS domain?

Implementation:
Agent programming: paradigms, languages
Agent platforms
Middleware, mobility, security
Applications:
Industrial applications: R/T manufacturing and
production process, telecommunication networks,
electricity distribution systems, etc.
Business process management, decision support
eCommerce, eMarkets
Information retrieving and filtering
Human-computer interaction
CAI, Web-based learning, CSCW
Entertainment
Agents Environment MAS Features Cognition MAS Applications About this course
1 : 27 / 33
Sisteme Multi-Agent Andrei Olaru
About this course

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 28 / 33
Sisteme Multi-Agent Andrei Olaru
Motivation for this course
Why would you take this course?

The agent-oriented paradigm is adequate for solving the


complex problems posed by modern computing
applications / infrastructures.

Although maybe in your career you will not use agents


per se, you will learn about the challenges of designing
software that is autonomous and adaptive, presenting a
certain degree of intelligence.

Course applications (laboratory) are interesting, fun,


and lets you focus on solving new problems, using a
language that you already know well (Java).

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 29 / 33
Sisteme Multi-Agent Andrei Olaru
Course goals

A multi-agent system is a collection of distributed


autonomous artifacts / entities that are capable of
accomplishing complex tasks through interaction,
coordination, collective intelligence and emergence of
behavior patterns.
By the end of this course you will know:
what a software agent is, what a MAS is, and what the
agent-oriented paradigm is about;
how to build a multi-agent system or choose an
appropriate MAS framework for solving a problem;
how to apply the agent-oriented paradigms in various
applications.

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 30 / 33
Sisteme Multi-Agent Andrei Olaru
Course content
What you are going to learn

What software agents and MAS are, MAS applications


Agent architectures
Elements of knowledge representation
How agents can communicate
Elements of game theory
Auction, negotiation
Distributed planning and agent coordination
AOP agent-oriented programming
Learning in MAS
MAS applications, Ambient Intelligence, web services

Agents Environment MAS Features Cognition MAS Applications About this course
1 : 31 / 33
Sisteme Multi-Agent Andrei Olaru
Course requirements
How to prove that you have learned
Points and percentages
Laboratory: 30% 3 larger applications composed
of several activities
larger application featuring a
MAS (that you design and
Project: 20%
implement) for a specific
application
verifies your knowledge on
Mid-term exam: 20%
the first part of the course
contains a limited number of
Final exam: 30% questions from the mid-term
subjects
Requirements: minimum of 7 lab attendances, minimum
of 50% of term activity (mid-term, lab, project)
L MT P Ex
Agents Environment MAS Features Cognition MAS Applications About this course
1 : 32 / 33
Sisteme Multi-Agent Andrei Olaru
Bibliography I

Hayes-Roth, B. (1995).
An architecture for adaptive intelligent systems.
Artificial Intelligence, 72(1):329365.

Hewitt, C. (1977).
Viewing control structures as patterns of passing messages.
Artificial intelligence, 8(3):323364.

Russell, S. J., Norvig, P., Canny, J. F., Malik, J. M., and Edwards, D. D. (1995).
Artificial intelligence: a modern approach, volume 2.
Prentice hall Englewood Cliffs, NJ.
Shoham, Y. (1993).
Agent-oriented programming.
Artificial intelligence, 60(1):5192.

Weiss, G. (1999).
Multiagent systems: a modern approach to distributed artificial intelligence.
MIT press.
Wooldridge, M. (2002).
An introduction to multiagent systems.
Wiley.

9 : 33 / 33
Sisteme Multi-Agent Andrei Olaru