14 -1 lecture 14 multi-agent systems topics –basics –mas architectures –coordination kqml...

30
14<MAS>-1 Lecture 14 Multi-Agent Systems • Topics – Basics MAS Architectures – Coordination • KQML – Collaboration • CNP Development of MAS – Applications

Post on 19-Dec-2015

215 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-1

Lecture 14 Multi-Agent Systems

• Topics– Basics– MAS Architectures– Coordination

• KQML

– Collaboration• CNP

– Development of MAS– Applications

Page 2: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-2

Basics

Page 3: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-3

Basics

• MAS as seen from Distributed AI– a loosely coupled network of entities that

work together to find answers to problems that are beyond the individual capabilities or knowledge of each entity.

• A more general meaning– systems composed of autonomous

components that exhibit the following characteristics:

• each agent has incomplete capabilities to solve a problem

• there is no global system control• data is decentralized• computation is asynchronous

Page 4: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-4

Basics• Traditional

– Client-server– Low-level messages– Synchronous– Can not do the job!

• Agent breakthroughs– Peer-to-peer

topology– Blackboard

coordination model– Encapsulated

messaging– High-level message

protocols

Client Server

IntelligentAgents

IntelligentAgents

IntelligentAgents

Function(Parameters)

Return(Parameters)

Blackboard

MessageReply

Traditional Software

Agents IntelligentAgentsIntelligent

Agents

IntelligentAgentsIntelligent

Agents

IntelligentAgentsIntelligent

Agents

Page 5: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-5

Basics• MAS researchers develop communications

languages, interaction protocols, and agent architectures that facilitate the development of multi-agent systems.

• MAS researcher can tell you how to program each ant in a colony in order to get them all to bring food to the nest in the most efficient manner, or how to set up rules so that a group of selfish agents will work together to accomplish a given task.

• MAS researchers draw on ideas from many disciplines outside of AI, including biology, sociology, economics, organization and management science, complex systems, and philosophy.

Page 6: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-6

Basics

• Key elements to achieve multi-agent interaction– a coordination mechanism supported by a

common agent communication language and protocol

– a collaboration mechanism supported by agent community architecture (including agent and interaction architecture) to support the organization goal

– a shared ontology

Page 7: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-7

MAS Architectures (Standards?)

• Object Manager Group (OMG)• Foundation for Intelligent Physical

Agents (FIPA)• Knowledgeable Agent-oriented System

(KAoS)• Open Agent Architecture (OAA)• General Magic group

– seems to be out of date...

Page 8: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-8

MAS Architectures

• OMG’s Model– Composed of agents and agencies that

collaborate using general patterns and policies

– Agents are characterized by:• capabilities, type of interaction and mobility

– Agencies support:• concurrent execution of agents• security• agent mobility• ...

Page 9: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-9

MAS Architectures

• FIPA’s Model – Agents– Agent Platform (AP)– Directory Facilitator (DF)– Agent Management System (AMS)– Agent Communication Channel (ACC)– Agent Communication Language (ACL)

Page 10: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-10

MAS Architectures

• KAoS’s Model– An Open Distributed Architecture for

Software agents– Defines various agent implementations– Uses conversation policies to elaborate on

agent-to-agent communication

Page 11: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-11

MAS Architectures

• OAA Model

Page 12: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-12

MAS Architectures

• General Magic’s Model – A commercial agent technology for

electronic commerce– Views MAS as an electronic marketplace– The marketplace is modeled as a network

of computers supporting a collection of places that offer services to mobile agents.

– The mobile agents:• can travel, meet other agents, create

connections to other places• they have authority.

Page 13: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-13

• Zeus: a MAS development toolkit

MAS Architectures

A

B

C

D

Agent Facilitator

Abilit ies Database

Agent Name Server

Address Book

request

reply

Transport Protocol

MESSAGE

Common Message Format (Language)

Shared mesage content representation and ontology

Agent

Perform Task A

Agent

Perform Task C

Agent

Perform Task D

External program

Page 14: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-14

MAS Architectures•Zeus: a MAS development toolkit

Page 15: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-15

Geo-Agents

Domain (Service) Agent

Domain (Service) AgentTask Agent

Facilitator

Administrator UI Agent

Task Agent

Other Agent Systems User

Query agent

Exchange registry

Query agent

Query agent

Query agent Pass taskReply

Coordinate

Coordinate

Collaborate

Control/Reply

Task(GeoScri

pt)Reply

Collaborate

Data sources

Retrieve

• Geo-Agents (GIS agents) Architecture as a MAS example

MAS Architectures

Page 16: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-16

Coordination

• Coordination: a process to manage dependencies among activities

• Common dependencies among activities – State

• Shared resource• Producer/Consumer

– Prerequisite– Transfer– Usability

• Simultaneity constraint

– Task/Sub-Task– Worth

Page 17: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-17

Coordination

• Three aspects on coordination– Activity aspect

• What activity to execute?• When an activity should be

executed?• Model to coordinate distributed

tasks: Statecharts, Flowcharts, Process algebra, Lotos, SDL, Estelle …

Page 18: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-18

Coordination

– Conversation (state) aspect• What is the structure of the

conversation among the coordinating entities?

• FSM, Petri-Nets, State Transition Diagrams

– Implementation aspect• How to implement distributed

software systems where software components coordinate their actions.

Page 19: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-19

Coordination - KQML

• Knowledge Query and Manipulation

Language (KQML) is both a message format

and a message-handling protocol to support

run-time knowledge sharing among agents.

• KQML comprise a substrate on which to

develop higher-level models of inter-agent

interaction such as contract nets.

• KQML is a coordination mechanism from the

conversation aspect

Page 20: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-20

Coordination - KQML

• KQML contains an extensible set of

performatives, which defines the

permissible speech acts agents may

use• Example performative:

(ask-all /* message layer */ :content "price(IBM, [?price, ?time])“

/* content layer */ :receiver stock-server

/* communication layer */ :language standard_prolog :ontology NYSE-TICKS

:sender me)

Page 21: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-21

Coordination - KQML

Page 22: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-22

Coordination - KQML

• Types of performatives– Basic informative performatives: tell,

deny, … – Database performatives: insert, delete,

… – Basic responses: error, sorry, … – Basic query performatives: ask-one,

ask-all, evaluate,… – Multi-response query performatives:

stream-all, …– Basic effector performatives: achieve, …

Page 23: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-23

Coordination - KQML

• Types of performatives (Cont.)

– Generator performatives: standby, ready, next, …

– Capability-definition performatives: advertise

– Notification performatives: subscribe – Networking performatives: register,

forward, pipe, broadcast, … – Facilitation performatives: broker-one

(all), recommend-one (all), recruit-one (all)

Page 24: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-24

Collaboration• Collaboration refers to cooperative

effort among agents to reach a single goal by exchanging knowledge built upon the underlying coordination mechanism

• Example mechanism: Contract Net Protocol (CNP)– Negotiation as a collaboration mechanism – Negotiation on how tasks should be shared

• A task (plan) may be decomposed in a hierarchy of subtasks (hierarchical planning)

• An agent may subcontract another agent to perform a (sub)task.

Page 25: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

Contract

Bid

agent agent

Collaboration - CNP

Task announceme

nt

Page 26: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-26

Collaboration - CNP

Contractor

Potential candidate agents

Task announcement ("broadcast")

Contractor

Candidate Candidate

Bid

Bid

Phase 1: Task Announcement

- The contractor agent publicly announces a task.

- Potential candidates evaluate the task according to their won skills and availability.

Phase 2: Submission of Bids / Proposals

- Agents that satisfy the requiremenst, i.e., are able to perform the task, send their bid / proposal to the contractor.

Page 27: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-27

Collaboration - CNP

Contractor

Selected candidate

Contractor

Contracted agent

Contract

Phase 3: Selection

- The selection of the best candidate is made by the contractor based on received bids and on the CVs of the candidates.

Phase 4: Contract awarding

- A contract is established between the contractor and the selected candidate.

- A privileged bilateral communication channel is established between the two agents.

Page 28: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-28

Development of MAS• Define the organization of the MAS according to

the problem specification (or solution structure)• Decide the coordination mechanism• Select a MAS implementation framework, e.g.,

Zeus, that supports the coordination mechanism

• Implement the collaborative mechanism which support the MAS organization

• Implement shared ontology • Implement each task agent (including

customizing associated communication module)

• Customize middle agents– Facilitators– Mediators

−Brokers−Matchmakers and yellow pages−Blackboards

Page 29: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-29

Applications● Advanced Manufacturing Management Systems

−Agents as representatives of machines, users, business processes, etc.

● Intelligent Information Search on Internet−Some agents may show learning capabilities

(learn the preferences of their users, ..)

● Intelligent security enforcement on Internet−Agents are representative of sensors or IDSs

● Shopping Agents in Electronic Commerce−With search, price comparison, and

bargaining capabilities

Page 30: 14 -1 Lecture 14 Multi-Agent Systems Topics –Basics –MAS Architectures –Coordination KQML –Collaboration CNP –Development of MAS –Applications

14<MAS>-30

Applications● Multi-agent auction in E-commerce

● Distributed Surveillance−For information search or to look for

special events informing their users of relevant news

● Distributed Signal Processing−For problem diagnosis, situation

assessment, etc. in the network

● Distributed Problem Solving−Collaborative design, scheduling, and

planning