다중 에이전트의 의사소통 모델에 관한 연구 - kqml 언어의 의미론을...

21
다다 다다다다다 다다다다 다다다 다다 다다 - KQML 다다다 다다다다 다다다다 - 다다다다 다다다다 98132-502 다 다다

Upload: genevieve-robert

Post on 30-Dec-2015

105 views

Category:

Documents


1 download

DESCRIPTION

다중 에이전트의 의사소통 모델에 관한 연구 - KQML 언어의 의미론을 중심으로 -. 인지과학 협동과정 98132-502 김 경수. Contents. Agent Communication and Language KQML(Knowledge Query and Manipulation Language) features A KQML Message KQML Performatives Communication Models of KQML Agent Framework for Semantics KQML Implementation - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

다중 에이전트의 의사소통 모델에 관한 연구

- KQML 언어의 의미론을 중심으로 -

인지과학 협동과정98132-502

김 경수

Page 2: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

Contents

Agent Communication and Language KQML(Knowledge Query and Manipulation Lan

guage) features A KQML Message KQML Performatives

Communication Models of KQML Agent Framework for Semantics KQML Implementation Conclusion

Page 3: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

Agent Communication and Language

Communication among software agents is an essential property of agency.

Agent communication language allow agents to effectively communicate and exchange knowledge with other agents, despite differences in hardware platforms.

Page 4: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

KQML(Knowledge Query and Manipulation Language)

A high-level communication language and protocol

Independent of content syntax and ontology

An extension set of performatives expressing a belief or an attitude toward some information.

Page 5: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

3 Layers of KQML

Communication layer low level, packet oriented, not stream orient

ed Message layer

logic of communication performative or speech act

Content layer Language and ontology variable -- specified

in message layer

Page 6: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

A KQML Message

The ASCII representation of Common Lisp Polish-prefix notation Represents a single performative with an associated semantics and protocol with a list of parameters and its value

readable by humans, simple for programs to parse, and transportable by many inter-application messaging platforms

Page 7: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

A KQML Message Example

(ask-if :sender A

:receiver B

:ontology std-geo

:language prolog

:content “spouse(adam, eve)”)

Performative

Parameter

Value

Page 8: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

KQML Performatives

The language’s primitives that define the permissible actions that agents may attempt in communicating with each other.

There are some reserved performatives and reserved performative parameters

Page 9: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

Reserved KQML Performatives

Basic query performatives– evaluate, ask-if, ask-in, ask-one, ask-all

Multi-response query performatives– stream-in, stream-all

Response performatives– reply, sorry

Generic informational performatives– tell, achieve, cancel, untell, unachieve

Capability-definition performatives– advertise, subscribe, monitor, import, export

Networking performatives– register, unregister, forward, broadcast, route

Page 10: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

Communication Models of KQML Agent

Address Routing

Brokering

Recommending

A Bask(X)

tell(X)

FA

A B

Bbroker(ask(X))

tell(X)tell(X)

advertise(ask(X))

ask(X)

F

recommend(ask(X))

reply(B)

advertise(ask(X))ask(X)

tell(X)

Page 11: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

Framework for Semantics

1.a natural language description of the performative’s intuitive meaning

2. An expression which describes the content of the illocutionary act

3. Preconditions that indicate the necessary state for an agent: Pre(A)

Page 12: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

Framwork for Semantics(cont’d)

4. Postconditions that describe the states of both interlocutors after the successful utterance of a performative(sender), and after the receipt and processing of a message(receiver): Post(A)

5. A completion condition for the performative: completion

6. Any explanatory comments that might be helpful

Page 13: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

Semantics for KQML(example)

ask-if(A, B, X)1. A wants to know what B believes regarding the truth

status of the content X

2. WANT(A, KNOW(A, S)) where S may be any of BEL(B, X) or ¬BEL(B, X)

3. Pre(A): WANT(A, KNOW(A, S) ^ KNOW(A, INT(B, PROC(B, M) where M is ask-if(A, B, X)

Pre(B): INT(B, PROC(B,M))

4. Post(A): INT(A, KNOW(A, S))

Post(B): KNOW(B, WANT(A, KNOW(A, S))

Page 14: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

Semantics for KQML(example)

5. Completion: KNOW(A, S’)

where S’ is either BEL(B,X) or ¬ BEL(B,X) , but not necessarily the same instantiation of S that appears in Post(A), for example

6. Pre(A) and Pre(B) suggest that a proper advertisement is needed to establish them

Page 15: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

KQML Implementation

MarketPlace Application A java-based Implementation of inter-agent

communication about buy-and-sell actions Consists of a FacilitatorAgent, and several

kinds of BuyerAgents and SellerAgents to interact there

Each agent class extends the CIAgent Framework, which is a JavaBean, supporting event-processing capability.

Page 16: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

Communication Model of MarketPlace Application

B S

Frecommend_one(A,F,item1)

tell(F, B)

advertise(S,F,item1)

ask_if(B,S,X)

make_offer(S,B,Y)or deny(S,B,X)

make_offer(B,S,Y’)

accept_offer(S,B,Y’)or reject(S,B)

tell(B, S, Z)

Page 17: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

Communication Model of MarketPlace Application(2)

Page 18: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

Communication Model of MarketPlace Application

개선점 KQML specification 에 정확히 일치하지

않는다 .– ex. advertise, recommend 의 content 는 perfor

mative message

의미론적 통일성 필요– ex. tell performative 는 ask_if 의 응답이다 .

Page 19: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

The Revised Communication Model

B S

Frecommend_one(A,F,ask_if(B,_,X)

reply(F, B, “S”)

advertise(S,F,_,S,X)

ask_if(B,S,X)

tell(S,B,X)or deny(S,B,X)

make_offer(B,S,Y’)

accept_offer(S,B,Y’)or reject(S,B)

achieve(B, S, Z)

request(B,S,make_offer(S,B))

make_offer(S,B,Y)

tell(B, S, Z)

Page 20: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

The Revised Communication Model(cont’d)

구현상의 한계 KQML parsing module 의 부재 따라서 , 어떤 performative 는 content 로서

다른 performative 를 가져야 하나 , 기존의 메시지 클래스는 중첩된 performative message 를 구현할 수 없다 .

Page 21: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML  언어의 의미론을 중심으로 -

Conclusion

에이전트간 의사소통 언어가 다양한 어플리케이션 간에 통용되려면 , 더욱 형식적인 의미론적 기술이 필수적

의미론적 기술 (description) 은 performance modeling 을 위한 의사소통 모형을 제공할 수 있어야 한다 .

특정 분야에서 이루어지는 의사소통 행위의 화행분석으로부터 유용한 performative 의 형식을 구축해야 한다 .