Expertensysteme und DB-Technik gehören noch verschiedenen Welten an:

Der große Brückenschlag läßt auf sich warten

07.11.1986

Für den Einsatz in vielen Anwendungsfeldern zeigen Expertensysteme eine gravierende offene Flanke: die Nutzung großer Datenmengen, wie sie üblicherweise von Datenbanksystemen verwaltet werden. Diese Schwäche erschwert zugleich beträchtlich die Einbeziehung vorhandener Datenbanken in "intelligente" Applikationen. Dieser Forderung kommt aber immer größere Bedeutung zu.

Mit der Verfügbarkeit leistungsfähiger Entwicklungswerkzeuge werden Expertensysteme zunehmend praktische Realität. Die Berührungsängste seitens der Unternehmen lassen sich insbesondere dadurch abbauen, daß mächtige und zugleich benutzerfreundliche Shells auch für Personal Computer der AT-Klasse angeboten werden. Somit ist der Weg zu einem relativ billigen Einstieg für Anwendungsstudien und Pilotimplementierungen geöffnet.

Praktische Anwendung zeigt offene KI-Flanke

Je mehr jedoch Expertensysteme in das Umfeld kommerzieller Anwendungen einbezogen werden sollen, desto stärker wird eine offene Flanke deutlich: Expertensysteme kommen mit großen Datenmengen (Fakten) nicht zurecht, sie sind nicht auf große Faktenbasen vorbereitet.

Große Datenmengen sind in sehr vielen Anwendungen die Regel. Entsprechend ausgereift ist die Technik zur flexiblen Verwaltung großer Datenbestände, nämlich die Datenbanktechnik. Expertensysteme machen jedoch keinen oder allenfalls rudimentären Gebrauch von diesem Know-how. Die Kluft zwischen beiden Systemtypen ist riesig: Im Grunde gehen Expertensysteme davon aus, daß die gesamte Verarbeitung im Arbeitsspeicher stattfindet; entsprechend werden größere Datenbestände (Fakten) auf primitive Weise, nämlich mittels einfacher File-Strukturen, verwaltet. Vorhandene Datenbanken können nur über Ad-hoc-Brücken genutzt werden, die hochgradig ineffizient sind. Der Grund liegt in der Arbeitsweise der Systeme und in der Tatsache, daß beide Systemtypen voneinander kaum Kenntnis genommen haben.

Expertensysteme suchen in der Regel jeweils nach einem Faktum, das einer bestimmten Anforderung genügt, oder sie prüfen, ob ein vorliegendes Faktum gegebene Bedingungen erfüllt. Beispiel: Um für eine gegebene Stereoanlage die fehlenden Lautsprecher zu finden, überprüft das Expertensystem Schritt für Schritt jeden vorhandenen Lautsprecher. Völlig konträr hierzu wird in modernen Datenbanksystemen versucht, die Suche dadurch kostengünstig zu gestalten, daß unmittelbar nach Mengen von Objekten mit bestimmten Eigenschaften gesucht wird ("Liste alle Stereoboxen unter 2000 Mark"). Diese Suche wird durch "Zugriffspfade" unterstützt, das System entwickelt für eine gegebene Anfrage, eine optimale Suchstrategie. Um im Beispiel zu bleiben: Das Expertensystem ist nicht in der Lage, vom Datenbanksystem zunächst alle in Frage kommenden Boxen anzufordern und mit diesen Daten dann im Arbeitsspeicher weiterzuarbeiten; es fordert Box nach Box an und gibt so dem Datenbanksystem keinerlei Möglichkeit zur Zugriffsoptimierung. Jede Anforderung nach einer Box ist eine neue Anfrage für das Datenbanksystem, die beim letzten Zugriff auf eine Box geleistete Arbeit (Query-Analyse, Optimierung) muß erneut geleistet werden.

Einige Expertensysteme bieten nach Aussagen der Hersteller "Anschlüsse an Datenbanksysteme". Diese Anschlüsse sind jedoch durchweg von der primitiven Form: In den Regeln des Expertensystems (Wissensbasis) wird explizit jeweils spezifiziert, daß an dieser Stelle ein Faktum aus der Datenbank gemeint ist; dieses wird dann per DB-Aufruf aus der Datenbank angefordert. In einigen Fällen greift das Expertensystem direkt auf den entsprechenden Teil der Datenbank, zum Beispiel eine Relation, zu. Dies erfolgt jedoch in rein sequentieller Form, also unter Umgehung aller Möglichkeiten zur Zugriffsbeschleunigung des Datenbankmanagementsystems (DBMS). In praktisch allen Fällen wird das DBMS als Lieferant einzelner Objekte mißbraucht.

Man muß sich hier klar darüber sein, daß die auf diese Weise erzeugten unnötigen Kosten nicht im Bereich einiger Prozent liegen, sondern häufig bei Tausenden von Prozent gegenüber einer theoretisch denkbaren guten Lösung liegen. Etwa dann, wenn das Anwendungsproblem in einer relationalen Datenbank einen Verbund zweier Tabellen beinhaltet, und dieser wegen der Einzelanforderung von Objekten vom DBMS vielfach wiederholt ausgeführt wird.

Eine "intelligente" und - was wichtiger ist - eine effiziente Kopplung verlangt, daß das Expertensystem dem DBMS möglichst präzise mitteilt, welche Objekte für seine weitere Arbeit benötigt werden. Das DBMS extrahiert diese "Arbeitsmenge", und das Expertensystem arbeitet zunächst ohne weitere Interaktion mit dem DBMS. Die entscheidende Frage ist, wie die benötigten Arbeitsmengen früh genug festgestellt werden können. Hierbei ist zweierlei zu beachten:

- Lokalität: Die vom DBMS angelieferte Datenmenge sollte nur solche Objekte beinhalten, auf denen das Expertensystem über einen gewissen Zeitraum tatsächlich arbeitet, und sie sollte für diesen Zeitraum alle benötigten Objekte beinhalten.

- DBMS-Verträglichkeit: Die Folge der Arbeitsmengen sollte so beschaffen sein, daß die Kosten für DBMS-Aufrufe minimiert werden.

Diese beiden Kriterien sind teilweise gegenläufig, und Randbedingungen spielen hier eine entscheidende Rolle, so insbesondere die Größe des für das Expertensystem verfügbaren Arbeitsspeichers für Fakten.

Die inzwischen diskutierten Lösungsmöglichkeiten reichen von der Einbeziehung von Datenbank-Technik in Expertensysteme über die lose, aber einigermaßen "intelligente" Kopplung unabhängiger Expertensysteme und Datenbanksysteme bis zur Einbeziehung von Expertensystem-Technik in Datenbanksysteme. Große Bedeutung kommt dem zweiten Ansatz zu. Nicht nur deshalb, weil er sich am ehesten kurzfristig realisieren läßt, sondern vor allem, weil diese Lösung praktisch gebraucht wird: In vielen Unternehmen müssen vorhandene Datenbankanwendungen um Expertensystem-Komponenten erweitert werden; dies setzt flexible Kopplungsmöglichkeiten zwischen Expertensystemen und Datenbanksystemen voraus.

Die skizzierte zentrale Lücke für den Einsatz von Expertensystemen in einer Vielzahl von Anwendungsfeldern ist seit kurzem Gegenstand einiger internationaler Forschungs- und Entwicklungsvorhaben. Das Problem wurde deshalb wenig beachtet, weil sich die KI-Welt und die Datenbank-Welt über lange Zeit gegenseitig wenig ernst genommen haben. Bei der Anforderung, Expertensysteme auch dort effizient einsetzen zu können, wo große Datenbanken vorliegen, treffen die beiden Welten jedoch mit Wucht aufeinander.

Ein Projekt, das gezielt in die Richtung Kopplung von Expertensystemen und Datenbanksystemen geht, wurde jetzt an der Fernuniversität Hagen gestartet. Das Projekt am Lehrstuhl für Praktische Informatik I wird vom Land Nordrhein Westfalen aus Mitteln des Programmes "Zukunftstechnologie" gefördert. Kooperationspartner ist die Firma Nixdorf.

Derselbe Themenkreis spielt eine große Rolle in einem vom Bundesministerium für Forschung und Technologie geförderten Anwendungsprojekt, das die Firma ITB in Dortmund in Zusammenarbeit mit der Fernuniversität Hagen durchfuhrt. Bei diesem Projekt geht es um die Entwicklung eines Expertensystems auf Rechnern der AT-Klasse für niedergelassene Ärzte. Das Expertensystem wird in ein Arztsystem integriert und macht intensiven Gebrauch von der dem Gesamtsystem zugrunde liegenden Datenbank.

*Dr. Gunter Schlageter ist Professor an der Fernuniversität Hagen.