다중 에이전트의 의사소통 모델에 관한 연구 - kqml 언어의 의미론을...
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 PresentationTRANSCRIPT
![Page 1: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/1.jpg)
다중 에이전트의 의사소통 모델에 관한 연구
- KQML 언어의 의미론을 중심으로 -
인지과학 협동과정98132-502
김 경수
![Page 2: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/2.jpg)
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 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/3.jpg)
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 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/4.jpg)
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 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/5.jpg)
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 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/6.jpg)
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 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/7.jpg)
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 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/8.jpg)
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 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/9.jpg)
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 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/10.jpg)
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 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/11.jpg)
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 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/12.jpg)
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 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/13.jpg)
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 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/14.jpg)
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 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/15.jpg)
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 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/16.jpg)
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 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/17.jpg)
Communication Model of MarketPlace Application(2)
![Page 18: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/18.jpg)
Communication Model of MarketPlace Application
개선점 KQML specification 에 정확히 일치하지
않는다 .– ex. advertise, recommend 의 content 는 perfor
mative message
의미론적 통일성 필요– ex. tell performative 는 ask_if 의 응답이다 .
![Page 19: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/19.jpg)
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 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/20.jpg)
The Revised Communication Model(cont’d)
구현상의 한계 KQML parsing module 의 부재 따라서 , 어떤 performative 는 content 로서
다른 performative 를 가져야 하나 , 기존의 메시지 클래스는 중첩된 performative message 를 구현할 수 없다 .
![Page 21: 다중 에이전트의 의사소통 모델에 관한 연구 - KQML 언어의 의미론을 중심으로 -](https://reader030.vdocuments.site/reader030/viewer/2022033012/56812ba1550346895d8fcb9e/html5/thumbnails/21.jpg)
Conclusion
에이전트간 의사소통 언어가 다양한 어플리케이션 간에 통용되려면 , 더욱 형식적인 의미론적 기술이 필수적
의미론적 기술 (description) 은 performance modeling 을 위한 의사소통 모형을 제공할 수 있어야 한다 .
특정 분야에서 이루어지는 의사소통 행위의 화행분석으로부터 유용한 performative 의 형식을 구축해야 한다 .