SMART Systems (Vorlesung: KI & XPS)
Beim vorigen Mal:
Inferenzen mit multiplen Ontologien
Anwendungskontext: Informationsrecherche/-klassifikation
Inhalt heute:
Dienstrecherche/-interoperation/-komposition
Lernziele:
DAML-S
Grundlagen des Planens
Ralf Möller, Univ. of Applied Sciences, FH-Wedel
Konfigurierungsproblematik
Registrierung; Dienstbegriff
Lookup und Leasing
DAML-S
DAML-S:
Darpa Agent Markup Language Service ontology
Automatic Web service discovery
Automatic Web service invocation
Automatic Web service composition and interoperation
Automatic Web service execution monitoring
Dienstbeschreibungen
Service Profiles
Textual description (understandable for humans)
Functionality description
input, output
precondition, effect
Functional attributes
Service Profiles: Functional Attributes (1)
geographicRadius
The geographic radius refers to the geographic scope of the service. This may be at the global or national scale (e.g. for e- commerce) or at a local scale (e.g. pizza delivery)
degreeOfQuality
This property provides qualifications for the service. For example, the following two sub-properties are examples of different
degrees of quality, and could be defined within some additional ontology.
serviceParameter
Service Profiles: Functional Attributes (2)
communicationThru
This property provides a high-level summary of how a service may communicate, such as what agent communication language (ACL) is used (e.g., FIPA, KQML, SOAP).
serviceType
The service type refers to a high-level classification of the service, for example B2B, B2C etc.
serviceCategory
The service category refers to an ontology of services that may be on offer. High-level services could include Products as well as Problem-Solving Capabilities, Commercial Services, Information and so on.
Service Profiles: Functional Attributes (3)
qualityGuarantees
These are guarantees that the service promises to deliver, such as guaranteeing to provide the lowest possible interest rate, or a
response within 3 minutes, etc.
qualityRating
The quality rating property represents an expandable list of rating properties that may accompany a service profile. These ratings
refer to industry accepted ratings, such as the Dun and
Bradstreet Rating for businesses, or the Star rating for Hotels.
Service Grounding
A service grounding (“grounding” for short) specifies the details of how an agent can access a service.
Communications protocol (e.g., RPC, HTTP-FORM, CORBA IDL, SOAP, Java RMI, OAA ACL)
Service-specific details such as port numbers used in contacting the service.
For each abstract type specified in the ServiceModel, an unambiguous way of exchanging data elements of that
type with the service (marshaling/serialization)
OAA ACL: Open Agent Architecture Agent Communication Language
http://www-2.cs.cmu.edu/~softagents/tie3.html http://www-2.cs.cmu.edu/~softagents/
Service Model
Dienstregistrierung (beim Broker)
Angebotenen Dienst S beschreiben (DAML)
Umwandlung in DL-Konzeptterm CS
"Einsetzen" in Taxonomie
children(CS)
parents(CS)
synonyms(CS)
Vergabe eines Namens (inklusive Axiom)
S47 = CS
Dienstrecherche (beim Broker)
DAML-Beschreibung eines gesuchten Dienstes
Umwandlung in DL-Konzeptterm
Ggf. Ontologietransformation, d.h. Spezialisierung (siehe vorige Vorlesung)
Einsetzen in Taxonomie
Kandiaten sind alle spezielleren Dienste
Broker vermittelt Diensterbringer (über Grounding-Info)
Automatische Dienstkomposition
Zusammensetzung von elementaren Dienste, um ein bestimmtes Ziel zu erfüllen
Gesamtziel ist durch "effect" gegeben
Gesamtziel soll durch elementare Dienste erreicht werden
Vorbedingungen der elementaren Dienste müssen erfüllt werden
Anwendungs- und Kompositionsbeschränkungen
--> KI-Hintergrund der Handlungsplanung
Acknowledgments
Die Folien zur Handlungsplanung enthalten Material von B. Nebel, Univ. Freiburg
Handlungsplanung
1. Gegeben eine initiale Situation,
2. eine Beschreibung der Zielbedingungen und 3. eine Menge von möglichen Aktionen,
-> Finde eine Sequenz von Aktionen
(einen Handlungsplan), der die initiale Situation in eine Situation überführt, in der die Ziel-
bedingungen gelten.
Handlungsplanung vs. Problemlösen durch Suche
Wesentlicher Unterschied:
Bei Handlungsplanung explizite, logikbasierte Repräsentation
Zustände/Situationen:
Durch logische Formeln beschriebene Weltzustände vs.
Datenstrukturen
Operatoren:
Axiome oder Transformation von Formeln
Repräsentation der Operatoren durch Axiome
Im Prinzip kann man Planung auf logische Inferenz (= Situationskalkül, nicht Beschreibungslogiken) reduzieren
Bestehende Systeme, die für praktische
Anwendungen effizient genug sind, befinden sich allerdings (immer noch) in der Entwicklung
(-> Schlußsysteme für nichtmonotone Logiken)
Wir behandeln einen anderen klassischen Ansatz...
Transformation von Formeln: STRIPS
STRIPS:
STanford Research Institute Problem Solver (Planer der frühen 70-er Jahre)
System ist zwar obsolet, der Formalismus wird aber immer noch benutzt
Kernidee:
"Weltzustand" durch log. Formeln repräsentiert,
"Operatoren" manipulieren Weltzustand
Der STRIPS-Formalismus
Weltzustand (inkl. initialer Zustand)
Menge von Grundatomen, keine Funktionssymbole außer Konstanten, interpretiert unter CWA (manchmal auch Standardinterpretation, d.h. negative Fakten müssen angegeben werden)
Beispiel Blockswelt:
On_Table(A), On_Table(B), On_Table(C)
Zielbedingungen:
Menge von Grundatomen
Beispiel: On_Block(C, B), On_Block(B, A)
STRIPS-Operatoren
Aktionen sind Tripel, bestehend aus
Aktionsnamen: Funktionsname mit Parametern
Vorbedingungen: Konjunktion positiver Literale; müssen gelten, damit Aktion ausführbar ist
Effekte: Konjunktion positiver und negativer Literale;
positive Literale werden hinzugenommen (ADD Liste), negative gelöscht (DEL Liste)
Variablen möglich (Renaming)
Reduktion von Planen auf Suche in einem Zustandsraum
Vorwärtssuche (Progressionsplanung)
oder Rückwärtssuche (Regressions-
planung)
Suche im Planraum
Plan = Sequenz von Aktionen?
Prinzip der geringsten Festlegung
Repräsentation nicht-linearer Pläne
Planschritt = STRIPS-Operator
Plan besteht aus
Lösungen für Planungsprobleme müssen vollständig und konsistent sein
Vollständigkeit und Konsistenz
Beispiel
Planverfeinerung (1)
Regressionsplanung: Erfülle die Have-Prädikate
Planverfeinerung (1)
Planverfeinerung (2)
... im richtigen Geschäft kaufen
Planverfeinerung (3)
... da muß man erst einmal hin
Planverfeinerung (3)
Schutz kausaler Beziehungen
Schutz kausaler Beziehungen
Eine andere Planverfeinerung...
Eine andere Planverfeinerung...
Die vollständige Lösung
... mit allen Links
Bestimmung
z.B. durch POP-Algorithmus
Vollständig
... und korrekt
Zusätzlich, hier nicht näher betrachtet:
Behandlung von Variablen
Planungssysteme
Prodigy
sucht im Zustandsraum und generiert lineare Pläne
(http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/prodigy/Web/prodigy-home.html)
UCPOP (http://www.cs.washington.edu/ai/ucpop.html)
Neuere, effizientere Systeme:
Graphplan (http://www-2.cs.cmu.edu/~avrim/graphplan.html)
IPP (http://www.informatik.uni-freiburg.de/~koehler/ipp.html)
Zusammenfassung, Kernpunkte (1)
DAML-S
Motivation:
Dienstkomposition durch Handlungsplanung
Handlungsplanung unterscheidet sich vom
Problemlösen dadurch, daß die Repräsentation flexibler ist.
Statt im Zustandsraum kann man im Planraum suchen.
Zusammenfassung, Kernpunkte (2)
Das Prinzip der geringsten Festlegung (least
commitment) besagt, daß man während der Suche Entscheidungen nur dann treffen soll, wenn es
unbedingt notwendig ist
Nichtlineares Planen ist eine Instanz dieses Prinzips
Der POP-Algorithmus realisiert nichtlineares Planen und ist vollständig und korrekt
Was kommt beim nächsten Mal?
Annahmen-basiertes Schließen
Defaults und Abduktion