Contents l l Agent Communication and Language KQMLKnowledge
- Slides: 21
Contents l l Agent Communication and Language KQML(Knowledge Query and Manipulation Language) features A KQML Message n KQML Performatives n l l Communication Models of KQML Agent Framework for Semantics KQML Implementation Conclusion
Agent Communication and Language Communication among software agents is an essential property of agency. l Agent communication language allow agents to effectively communicate and exchange knowledge with other agents, despite differences in hardware platforms. l
KQML(Knowledge Query and Manipulation Language) A high-level communication language and protocol l Independent of content syntax and ontology l An extension set of performatives expressing a belief or an attitude toward some information. l
3 Layers of KQML l Communication layer n low level, packet oriented, not stream oriented l Message layer n logic of communication n performative or speech act l Content layer n Language and ontology variable -- specified in message layer
A KQML Message l The ASCII representation of Common Lisp Polish-prefix notation n Represents a single performative n with an associated semantics and protocol n with a list of parameters and its value l readable by humans, simple for programs to parse, and transportable by many inter-application messaging platforms
A KQML Message Example l (ask-if : sender A Performative : receiver B : ontology std-geo Parameter : language prolog Value : content “spouse(adam, eve)”)
KQML Performatives The language’s primitives that define the permissible actions that agents may attempt in communicating with each other. l There are some reserved performatives l and reserved performative parameters l
Reserved KQML Performatives n Basic query performatives – evaluate, ask-if, ask-in, ask-one, ask-all n Multi-response query performatives – stream-in, stream-all n Response performatives – reply, sorry n Generic informational performatives – tell, achieve, cancel, untell, unachieve n Capability-definition performatives – advertise, subscribe, monitor, import, export n Networking performatives – register, unregister, forward, broadcast, route
Communication Models of KQML Agent l l l Address Routing Brokering ask(X) A tell(X) advertise(ask(X)) broker(ask(X)) A Recommending A B tell(X) F ask(X) B tell(X) recommend(ask(X))advertise(ask(X)) ask(X) reply(B) F tell(X) B
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)
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
Semantics for KQML(example) l 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))
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
KQML Implementation l Market. Place Application n. A java-based Implementation of inter-agent communication about buy-and-sell actions n Consists of a Facilitator. Agent, and several kinds of Buyer. Agents and Seller. Agents to interact there n Each agent class extends the CIAgent Framework, which is a Java. Bean, supporting event-processing capability.
Communication Model of Market. Place Application recommend_one(A, F, item 1) F advertise(S, F, item 1) tell(F, B) B 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) S
Communication Model of Market. Place Application(2)
Communication Model of Market. Place Application l 개선점 n KQML specification에 정확히 일치하지 않는 다. – ex. advertise, recommend의 content는 performative message n 의미론적 통일성 필요 – ex. tell performative는 ask_if의 응답이다.
The Revised Communication Model recommend_one(A, F, ask_if(B, _, X) F advertise(S, F, _, S, X) reply(F, B, “S”) B ask_if(B, S, X) tell(S, B, X) or deny(S, B, X) request(B, S, make_offer(S, B)) make_offer(S, B, Y) make_offer(B, S, Y’) accept_offer(S, B, Y’) or reject(S, B) achieve(B, S, Z) tell(B, S, Z) S
The Revised Communication Model(cont’d) l 구현상의 한계 n KQML parsing module의 부재 n 따라서, 어떤 performative는 content로서 다 른 performative를 가져야 하나, 기존의 메시 지 클래스는 중첩된 performative message 를 구현할 수 없다.
- Oxidising agent example
- Electrode potential table
- Speech act theory
- Oil rig oxidation
- Agent function vs agent program
- Part picking robot peas
- Darpa agent markup language
- Darpa agent markup language
- Content of a dead man's pocket
- Pericardial sinus
- Outlining and organizing the speech contents
- Contents of the dead man's pocket questions and answers
- What is oral communication and written communication
- Diff between oral and written communication
- Serial communication basics
- Portfolio of evidence
- Deep perineal pouch contents
- Febrile non hemolytic transfusion reaction
- Fresh frozen plasma vs platelets
- Posterior mediastinum
- Tabique intermuscular vastoaductor
- Identify