Dynamische Anfrageplanung für Anfragen an ontologische Wissensbasen

Ein Projekt im Sonderforschungsbereich / Transregio 62 "Eine Companion-Technologie für kognitive technische Systeme"

Eine Wissensbasis mit Hintergrundwissen zur Anwendungsdomäne ist ein essentieller Bestandteil in einem intelligenten Companion-System. Wenn derartige Daten in einer formalen Wissensrepräsentationssprache vorliegen, kann durchMethoden des automatischen Schlussfolgerns aus dem explizit gegebenenWissen auch implizites Wissen abgeleitet werden.

Die Ontologiesprache OWL ist einer der am meisten verbreiteten Wissensrepräsentationssprachen. In diesem Kontext bezeichnet eine Ontologie eine Menge von Axiomen die eine bestimmte Anwendungsdomäne beschreiben.Die grundlegenden Modellierungseinheiten in OWL sind Klassen, Rollen und Individuen denen durch eine wohldefinierte Modell-Theorie aus der Beschreibungslogik eine Semantik zugewiesen wird. Klassen werden dabei als Mengen interpretiert, z.B. könnte die Klasse Gelenk die Menge aller Gelenke im (menschlichen) Körper repräsentieren. Individuen werden als konkrete Elemente interpretiert, z.B. könnte das Individuum Fingergrundgelenk als eine Instanz der Klasse Gelenk modelliert werden. Rollen modellieren Beziehungen zwischen je zwei Individuen. Mittels Konstruktoren können aus diesen Grundeinheiten komplexe Klassen und Axiome geformt werden. So definiert das Axiom:
Gelenkerkrankung EquivalentTo Krankheit and betrifft some Gelenk
dass Gelenkerkrankungen Krankheiten sind, die ein Gelenk betreffen. Jede Instanz der Klasse Gelenkerkrankung ist also mit der Rolle betrifft mit mindestens einer (some) Instanz der Klasse Gelenk verbunden.

Die wohldefinierte Semantik erlaubt es, implizite Konsequenzen abzuleiten. Enthält die Ontologie z.B. zusätzlich noch das Axiom
Arthritis SubClassOf Gelenkerkrankung
so kann ein Reasoner daraus ableiten, dass Arthritis eine Krankheit ist und darüber hinaus, dass Arthritis mindestens ein Gelenk betrifft.

Um flexibel Daten aus einer derartigen Wissensbasis abzufragen, können Abfragesprachen wie zum Beispiel SPARQL eingesetzt werden. Anders als die Datenbankanfragesprache SQL wurde SPARQL gezielt für den Einsatz mit wissensbasierten Systemen entwickelt und vom World Wide Web Consortium (W3C) standardisiert. SPARQL und SQL erlauben das gezielte Abfragen von Wissen durch die Angabe von Anfragekriterien. Um die Kriterien zu spezifizieren, stehen zahlreiche Sprachmittel zur Verfügung z.B. um alternative oder optionale Kriterien zu spezifizieren oder um (Zwischen-)Ergebnisse zu filtern.

Die impliziten Konsequenzen einer Ontologie können auch bei der Beantwortung von Anfragen berücksichtigt werden. So wäre Arthritis eine Antwort auf die SPARQL Anfrage
SELECT ?x WHERE { ?x SubClassOf Krankheit }
obwohl dieses nicht explizit in der Ontologie angegeben wurde. Für die effiziente Auswertung von komplexeren Anfragemustern, die aus mehreren Teilen bestehen, ist es erforderlich die einzelnen Teilabfragen in einer "guten" Reihenfolge zu evaluieren, um die Anzahl der Zwischenergebnisse möglichst gering zu halten. Die Festlegung einer geeigneten Reihenfolge übernimmt typischerweise ein sogenannter Anfrageplaner.

Im Vergleich zu Datenbanken erfordert die Anfrageplanung in diesem Kontext andere Implementierungstechniken und Optimierungen. Aus diesem Grund ist die Entwicklung und Adaption von Algorithmen in diesem Kontext ein hochaktuelles Thema.

Hier setzt auch das beantragte Projekt an, dessen Ziel die Entwicklung eines dynamischen Anfrageplaners ist. Traditionell, sind Anfrageplaner statisch, d.h. vor der Ausführung einer Anfrage wird auf Grund statistischer Informationen festgelegt, in welcher Reihenfolge verschiedene Teile der Anfrage ausgeführt werden. Da Statistiken über das implizite Wissen im Allgemeinen nicht in ausreichendem Maße vorliegen und sehr teuer zu generieren sind, scheint es sinnvoll für Abfragen auch über das implizit spezifizierte Wissen einer Ontologie dynamische Abfrageplaner zu verwenden. Dadurch kann während der Anfrageausführung gewonnene Information genutzt werden, um den Anfrageplan dynamisch zu adaptieren. Die Entwicklung und Evaluierung derartiger Algorithmen ist das Ziel dieses Antrags.

Projektlaufzeit: März 2012 bis August 2012

Projektteilnehmer

  • Birte Glimm (Projektleiterin)
  • Ilianna Kollia (wissenschaftlicher Mitarbeiter)