KQML Eine Programmiersprache fr Agenten Seminar Software Agenten
- Slides: 19
KQML – Eine Programmiersprache für Agenten Seminar „Software Agenten“ Carsten Grosch 31. 10. 01
Überblick • • Motivation Grundlagen der Kommunikation Das KSE - Konsortium KQML • Aufbau und Syntax • Kommunikationsbeispiele • Dialogformen • Ausblick
Motivation • Nachrichtenübermittlung zwischen • Agenten KQML – Knowledge Query and Manipulation Language • In Anlehnung an Sprachwissenschaftliche Ergebnisse
Sprechakttheorie • Loktionärer Akt • Physikalische Äußerung • Illuktionärer Akt • Verwendung des Gesagten in einer bestimmten Weise (z. B. Frage, Feststellung, Behauptung) • Perluktionärer Akt • Auslösen einer Wirkung des Gesagten • Beispiel: „Schließe die Tür !“
Agenten Kommunikation • Anforderungen: • Gemeinsame Sprache • Gemeinsames Verständnis (Ontologie) • Fähigkeit zum Austausch von Nachrichten
Ontologie • Philosophie : „Lehre vom Seienden“ • Informatik: „Vereinbarung über das • • benutzte Vokabular und dessen Anwendung“ Beispiel „Jaguar“ Anmerkung: Konsistenz - nicht Vollständigkeit
Das KSE-Konsortium • Ziel: Technische Infrastruktur zur • • Unterstützung von Wissensteilung Geldgeber: ARPA, ASOFR, NRI, NSF Arbeitsgruppen • Interlingua (Knowledge Interface Format: • • KIF) Shared Resusable Knowledge Bases (SRKB) External Interfaces (KQML)
KQML Eigenschaften • Beinhaltet Protokoll und Sprache zur • • Formulierung verschiedener Nachrichtentypen Kapselung von Nachrichteninhalten Kern: Performatives (tell, ask, etc. )
KQML - Aufbau Kommunikation Nachrichten • • Inhalt Grundlegende Kommunikationsparameter Kern von KQML • Inhalt der • • Identität von. Nachricht Sender und Empfänger Identifizierung des Protokolls • In beliebiger Programmiersprache • • Eindeutige Kennung der Kommunikation Performatives • Prolog: "father(John, Eve)" • Inhaltssprache, Ontologie, "Schlagwort" •
KQML - Beispiel (tell : sender Felix : receiver Felix_Persona : in-reply-to msg 498 : ontology Genealogy : language Prolog : content „father(John, Eve)“)
KQML – Syntax (vereinfacht) • Syntax Performatives (performative-keyword paramter 1 parameter 2. . . ) • Syntax Parameter : parameter-keyword <Wert> (tell : sender Felix : receiver Felix_Persona : in-reply-to msg 498 : ontology Genealogy : language Prolog : content „father(John, Eve)“)
KQML - Performatives Kategorie Name Basis-Anfrage evaluate, ask-if, ask-about, ask-one, ask-all Mehrfach-Antwort (Anfrage) stream-about, stream-all, eos Antwort reply, sorry Allgemeine Information tell, achieve, cancel, untell, unachieve Impulsgeber standby, ready, next, rest, discard, generator Fähigkeiten advertise, subscribe, monitor, import, export Netzwerke register, unregister, forward, broadcast, route
Kommunikation (1) (ask-one : sender : content : receiver : in-reply-to : language : ontology joe (PRICE IBM ? price) stock-server ibm-stock LPROLOG NYSE-TICKS) (tell stock-server (PRICE IBM 118) joe ibm-stock LPROLOG NYSE-TICKS) : sender : content : receiver : in-reply-to : language : ontology
Kommunikation (2) (advertise : sender : receiver : in-reply-to : language : ontology : content stock-server joe ibm-stock LPROLOG NYSE-TICKS (stream-all : content (PRICE ? x ? y))) (stream-all : sender : receiver : language : ontology : content joe stock-server LPROLOG NYSE-TICKS (PRICE ? VL ? price))
Faciliators • Agent zur Unterstützung der • Kommunikation Unterstützungsfunktionen • Zusammenführen von Informationsanbietern und Nachfragern • KQML entwickelt, um solche Agenten. Architekturen zu unterstützen
KQML - Dialoge F ask(X) A B tell(X)
KQML - Dialoge Subscribe(ask(X)) A F tell(X) B
KQML - Dialoge recommend(ask(X)) F advertise(ask(X)) reply(B) A B ask(X) tell(X)
Ausblick • KQML bisher nur in Prototyp-Systemen • • (verbreitet) eingesetzt FIPA entwickelt ebenfalls ACL KSE-Gruppe hält KQML für geeignet, ein Standard für Agenten-Kommunikation zu werden
- Kqml specification
- Kqml
- Was ist eine zuordnung
- Einfachste programmiersprache
- Programmiersprache pascal erfinder
- Programmiersprache go
- Wer ist c
- Seminar about computer software
- Seminar scheduling software
- Was ist eine xsd datei
- Wie funktioniert eine schwimmblase
- Subjektsatz objektsatz arbeitsblatt
- Sackratten lustig
- Phasenmodelle
- Arreter konjugieren
- Eine og andri
- Physik licht und schatten übungen
- Gerhard roth willensfreiheit ist eine illusion plato schema
- Silbernitratprobe
- Lead- und opportunity-management