Practicum Kennistechnologie

Download Report

Transcript Practicum Kennistechnologie

Design of Multi-Agent Systems
Teacher
Bart Verheij
Student assistants
Albert Hankel
Elske van der Vaart
Web site
http://www.ai.rug.nl/~verheij/teaching/dmas/
(Nestor contains a link)
Overview
Agents, multi-agent systems
This course
Views of the field
Objections
Agents & objects
Intentional systems
Abstract architecture
Russell & Norvig
An agent is anything that can be viewed as perceiving
its environment through sensors and acting upon
that environment through effectors.
Michael Wooldridge
An agent is a computer system that is situated in
some environment and that is capable of
autonomous actions in order to meet its design
objectives.
Some agents
Mars Path Finder
Air traffic control
Personal digital assistant
P2p file sharing
Game agents
A natural kinds taxonomy of agent
(Franklin and Graesser)
Multi-agent systems
A multi-agent system is one that consists of a number
of agents, which interact with one-another
This requires the ability to cooperate, coordinate, and
negotiate with each other
Multi-agent systems
How can cooperation emerge in societies of selfinterested agents?
What kinds of languages can agents use to
communicate?
How can self-interested agents recognize conflict,
and how can they (nevertheless) reach
agreement?
How can autonomous agents coordinate their
activities so as to cooperatively achieve goals?
Reactivity
A reactive system 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)
Proactiveness
A proactive system is one that generates goals and
attempts to achieve them by taking initiatives and
recognizing opportunities
Balancing reactive and goal-oriented behavior
Timely response
to changing conditions
Systematically working
towards long-term goals
Influences and inspiration
Economics
Philosophy
Game Theory
Logic
Ecology
Social Sciences
Overview
Agents, multi-agent systems
This course
Views of the field
Objections
Agents & objects
Intentional systems
Abstract architecture
This course: examination
50%
Exam about the course book
Wooldridge’s An Introduction to Multiagent Systems
chs 1-4, 6-11
25%
Programming exercises
To be submitted to [email protected] using certain
naming conventions
25%
A presentation
This course: schedule
Calendar week
Lecture
Presentations
Computer
lab
36
Introduction ch1, ch2
ch3, ch4
Exercise 1
37
Multi-agent interactions ch6
To be scheduled
Exercise 1
38
Reaching agreements ch7
To be scheduled
Exercise 2
39
Communication ch8
To be scheduled
Exercise 2
40
Working together ch9
To be scheduled
Exercise 3
41
Methodologies ch10
To be scheduled
Exercise 3
42
Applications ch11
To be scheduled
(Extra)
43-45
EXAM
(not about ch5, ch12)
Deadlines
Exercise 1
Exercise 2
Exercise 3
This course: time investment
5 ECTS = 140 hours
140 hours/10 weeks = 14 hours per week
6 contact hours (2 hours lecture, 2 hours presentations,
2 hours computer lab)
4 hours self study
2 hours presentation (10 hours of study, 4 uur slide
design / 7 weeks)
2 hours programming (so 4 programming hours per week
when the lab session is included)
Overview
Agents, multi-agent systems
This course
Views of the field
Objections
Agents & objects
Intentional systems
Abstract architecture
Some views of the Field
Multi-agent systems as a paradigm for software
engineering
Interaction is probably the most important single
characteristic of complex software
Multi-agent systems as a tool for understanding
human societies
Social simulation, “theories of the mind”
Multi-agent systems as a search for appropriate
theoretical foundations
“Neat” vs “scruffy”; theory vs engineering
Overview
Agents, multi-agent systems
This course
Views of the field
Objections
Agents & objects
Intentional systems
Abstract architecture
Objections to MAS
Isn’t it all just distributed/concurrent systems?
– Agents can be self-interested, so their interactions are
“economic” encounters. There is no global goal.
Isn’t it all just AI?
– Agents may not need much intelligence
– Classical AI ignored social aspects of agency.
Objections to MAS
Isn’t it all just economics/game theory?
– These fields ignored computational constraints and
resource-bounded decision making
Isn’t it all just social science?
– Actual societies may not be optimal
Overview
Agents, multi-agent systems
This course
Views of the field
Objections
Agents & objects
Intentional systems
Abstract architecture
Agents and objects
Are agents just objects by another name?
Object:
– encapsulates some state
– communicates via message passing
– has methods, corresponding to operations that may be
performed on this state
Agents and objects
Main differences:
– Agents are autonomous:
they decide for themselves whether or not to perform
an action on request from another agent
– Agents are smart:
they are capable of flexible (reactive, pro-active, social)
behavior, and the standard object model has nothing
to say about such types of behavior
– Agents are active:
a multi-agent system is inherently multi-threaded, in
that each agent is assumed to have at least one
thread of active control
Objects do it for free…
Agents do it because they want to
Agents do it for money
Overview
Agents, multi-agent systems
This course
Views of the field
Objections
Agents & objects
Intentional systems
Abstract architecture
Agents as intentional systems
Dennett: an intentional system is an entity ‘whose
behavior can be predicted by the method of
attributing belief, desires and rational acumen’
McCarthy: ‘Ascription of mental qualities is most
straightforward for machines of known structure
such as thermostats and computer operating
systems, but is most useful when applied to
entities whose structure is incompletely known’
Agents as intentional systems
For more complex systems, we need more powerful
abstractions and metaphors to explain their
operation — low level explanations become
impractical.
The intentional stance is such an abstraction.
Overview
Agents, multi-agent systems
This course
Views of the field
Objections
Agents & objects
Intentional systems
Abstract architecture
Abstract architecture for agents
Environment states:
Actions of agents:
A run:
Agents, environments, systems
An environment is a triple Env =E,e0, where: E is a
set of environment states, e0 E is the initial
state, and  is a state transformer function
An agent is a function which maps runs to actions:
A system is a pair Env, Ag.
Some variations
A deterministic environment:
  Ac :  ( )  1
A reactive agent:
Ag: E → Ac
A state transition function that is independent of
history:
T : E  Ac (E)
Agents with perception
see
action
Agent
Environment
Agents with internal states
Agent
see
action
next
state
Environment
Agents with tasks
Utility functions can be used to tell an agent what to
do without telling how to do it
u:E 
u :R  
The task of the agent is to bring about states that
maximize utility
Utility in the Tileworld
Optimal agents
P(r | Ag, Env) denotes the probability of run r for
agent Ag and environment Env
 P(r | Ag, Env)  1
rR ( Ag , Env)
An agent is optimal when it maximizes expected
utility
Agopt  arg max
AgAG
u(r)P(r | Ag, Env)
rR ( Ag , Env)
Task specification using predicates
Predicates Ψ: R → {0, 1} can be used for task
specification:
Ψ(r) = 1 expresses that an agent has succeeded,
Ψ(r) = 0 that that it has not.
An agent succeeds in a task environment (Env, Ψ)
when
Types of tasks
Achievement tasks
Achieve a state of affairs
Reach a state in a set of goal states G:
Ψ(r) if and only if r contains a state in G
Maintenance tasks
Maintain a state of affairs
Avoid a set of failure states B:
Ψ(r) if and only if r does not contain a state in B
Overview
Agents, multi-agent systems
This course
Views of the field
Objections
Agents & objects
Intentional systems
Abstract architecture