Top Banner
CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)
36

CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

Dec 19, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

CS 6100MultiAgent Systems

Lecture 1: Introduction

Slides adapted from Sobah Abbas Petersen (with permission)

Page 2: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

2

Programming has progressed through

• procedures & functions (no context)• abstract data types (data and operations

combined) Reduces seen details• objects – data abstraction, encapsulation,

modularity, polymorphism, and inheritance• to agents

Page 3: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

3

• The word 'agent' is widely used. Everyone knows what it means. We have press agents, travel agents, real estate agents, FBI agents, secret agents, double agents. Tom Cruise has an agent. Sometimes the word 'broker' refers to a kind of agent, for example, a stock broker.

• But to actually define what the word, agent, means is not so easy. (Similar problems occur with other concepts such as intelligence, or life.) There seem to be almost as many definitions of agent, or agency as there are people trying to define these concepts!

• So we will look at a few of these attempts at definition. Take your pick or make up your own.

Page 4: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

4

Why Agents?When a space probe makes its long flight

from Earth to the outer planets, a ground crew is usually required to continually track its progress and decide how to deal with unexpected occurrences.

• Expensive• if quick decisions needed, not practical• Nasa: make probes more autonomous• Not fiction! NASA’s DS1 is doing it now!

Page 5: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

Ideas for agents

• List an activity you engage it which could be taken over by a software agent…

5

Page 6: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

Holiday Trip

• What aspects could it plan?

• How would you communicate to system what you want it to do?

6

Page 7: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

7

Overview • Five ongoing trends have marked the history of

computing:1. Ubiquity – everywhere at once

• Reduction in the cost of computing capability

2. Interconnection• Computer systems are networked into large distributed

systems

3. Intelligence (MAS)• The complexity of tasks that can be automated and delegated

to computers

4. Delegation (MAS)• Judgment of computer systems are frequently accepted

5. Human-orientation• Use concepts and metaphors that reflect how we understand

the world. Examples?

Page 8: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

8

Concerns

• Need for computer systems to act in our best interests

• “The issues addressed in Multiagent systems have profound implications for our understanding of ourselves.” Wooldridge

Page 9: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

9

Trends…

• These trends present major challenges to software developers. e.g.– Delegation – act independently.– Intelligence – act in a way that represents our best

interests while interacting with other humans or systems.

Need systems that can act effectively on our behalf.

• Systems must have the ability to cooperate and reach agreements with other systems.

New field: Multi-agent Systems

Page 10: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

10

Two Key Problems

1. How do we build agents that are capable of independent,

autonomous action in order to successfully carry out the

tasks that we delegate to them? (Micro aspects)

2. How do we build agents that are capable of interacting

(cooperating, coordinating, negotiating) with other agents

in order to successfully carry out the tasks we delegate to

them? (Macro aspects)

Page 11: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

Problems• How many of you play games to take

advantage of the novice? • The other agent is as smart as you

11

Page 12: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

12

Example – Market for Lemons• Suppose I have ten cars of varying quality. Only the seller

knows its true value. The buyer cannot tell by looking. • Incentives exist for the seller to pass off a low-quality

good as a higher-quality one.• But buyer is as smart as you (as the seller)!!!• The buyer, however, takes this incentive into

consideration, and takes the quality of the good to be uncertain. Only the average quality of the good will be considered, which in turn will have the side effect that goods that are above average in terms of quality will be driven out of the market. This mechanism is repeated until a no-trade equilibrium is reached.

• Note the different perspectives of the negotiation

Page 13: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

Cars range from 1-10 in value (Only the seller knows value)

13

Buyer decides only to offer average price (5.5)

Sellers of cars valued over 5.5 decide not to sell.

Page 14: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

Cars range from 1-5 in value (Only the seller knows value)

14

Buyer decides only to offer average price (3)

Sellers of cars valued over 3 decide not to sell.

Page 15: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

Cars range from 1-3 in value (Only the seller knows value)

15

Buyer decides only to offer average price (2)

Sellers of cars valued over 2 decide not to sell.

Page 16: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

Cars range from 1-2 in value (Only the seller knows value)

16

Buyer decides only to offer average price (1.5)

Sellers of cars valued over 1.5 decide not to sell.

Page 17: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

Cars range from 1 in value (Only the seller knows value)

17

Buyer decides only to offer average price (1)

Sellers decides to sell as that is a fair price.

Page 18: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

18

Fields that inspired agents

• Artificial Intelligence– Agent intelligence, micro aspects

• Software Engineering– Agent as an abstraction

• Distributed systems and Computer Networks– Agent architectures, multi-agent systems, coordination

There are many definitions of agents – often too narrow or too general.

Page 19: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

19

Definitions of Agents...

IBM:

”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

doing so, employ some knowledge or representations of

the user’s goals or desires”.

Page 20: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

20

Definitions of Agents...

• An agent is autonomous: capable of acting independently, exhibiting control over its internal state.

An agent is a computer system capable of autonomous action in some environment.

System

Environment

Input Output

Page 21: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

21

• “An agent is a persistent software entity dedicated to a specific purpose. 'Persistent' distinguishes agents from subroutines; agents have their own ideas about how to accomplish tasks, their own agendas. 'Special purpose' distinguishes them from entire multifunction applications; agents are typically much smaller. (Smith, Cypher and Spohrer 1994)

• It is widely recognized that interaction is probably the most important single characteristic of complex systems.

• “Agents are programs that engage in dialogs, [and] negotiate and coordinate transfer of information.” (Michael Cohen)

Page 22: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

At your seats

• What is the difference between negotiate and coordinate?

22

Page 23: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

23

• “Agent enjoys the following properties:• autonomy - agents operate without the direct

intervention of humans or others, and have some kind of control over their actions and internal state;

• social ability - agents interact with other agents (and possibly humans) via some kind of agent-communication language;

• 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 behaviour by taking initiative.” (Wooldridge and Jennings, 1995)

Page 24: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

24

Properties of Agents

• Mentalistic notions, such as beliefs and intentions are often referred to as properties of strong agents.

• Other properties are:– Mobility: the ability of an agent to move around a network.

– Veracity: agent will not knowingly communicate false

information.

– Benevolence: agents do not have conflicting goals and always try

to do what is asked of it.

– Rationality: an agent will act in order to achieve its goals and will

not act in such a way as to prevent its goals being achieved.

Page 25: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

25

Agents and Objects• Remember the previous slide: • procedures & functions (no context)• abstract data types (data and operations combined)• objects• to agents

• Are agents just objects by another name?

Page 26: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

26

Agents and Objects

• Agents do it because they want to!

• Agents do it for money!

Objects do it for free…

Page 27: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

27

Agents and Objects...

Main differences:

– Agents are autonomous: agents embody a stronger notion of

autonomy than objects, in particular, agents decide for themselves

whether or not to perform an action.

– Agents are smart: capable of flexible (reactive, pro-active social)

behaviour; standard object models do not have such behaviour.

– 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.

Page 28: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

28

Why agents?

• Today, we have a distributed environment that cannot

be completely specified – open environments.

• Former paradigms, such as OOP, cannot completely

satisfy our needs:

– They were designed for constructing systems in a completely

specified environment - a closed world.

Page 29: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

29

In the following examples, what is “open”?

• lawn mowing• agent to search for miners• travel agent (cheaptickets.com)• ebay auction agent

Page 30: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

Open Environment

• Lawn mowing – environment can change• Going to WalMart in an open environment

• How can we work in an open environment?

30

Page 31: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

31

How can we work in an Open Environment?

• By copying human behaviour:– Perceive the environment

– Affect the environment

– Have a model of behaviour

– Have intentions and motivations to be fulfilled

by implementing corresponding goals

Environment

Agent

Page 32: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

32

Decentralization

• An important concept– No central control; control is distributed– Knowledge or information sources may also be

distributed. Why?

Page 33: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

33

Multi-agent Systems (MAS)Contains a number of agents which interact with one another through

communication. The agents are able to act in an environment; where each agent will act upon or influence different parts of the environment. Reference: Wooldridge, An Introduction to Multiagent Systems

Environment

Multi-agent System

Page 34: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

34

Motivation for MASAt seats: Explain or argue against?

• To solve problems that are too large for a centralized agent

• To allow interconnection and interoperation of multiple

legacy systems

• To provide a solution to inherently distributed problems

• To provide solutions which draw from distributed

information sources

• To provide solutions where expertise is distributed (Why is

expertise distributed?)

• To offer conceptual clarity and simplicity of design

• To be able to hide strategies from competition

Page 35: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

35

Benefits of MASWhy?

• Faster problem solving

• Decrease in communication

• Flexibility

• Increased reliability - fault tolerant

• Natural to Application

Page 36: CS 6100 MultiAgent Systems Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen (with permission)

36

Summary

• An agent is a system that is capable of

independent action on behalf of its user or owner.

• A multi-agent system is one that consists of a

number of agents which interact with one another.

• In order to successfully interact, agents need

ability to cooperate, coordinate and negotiate.