fit 2002 >
Expertensysteme > Konzepte und
Techniken |
Überblick |
Darstellung der Konzepte in ihren wesentlichen Grundzügen
Die Basis von Expertensystemen sind vier Grundlegende Konzepte,
nämlich Heuristiken, Wissensrepräsentation, Schlussfolgerungs-
und Erklärungssystem.
HeuristikenHeuristiken sind eine Basis für die Entwicklung von künstlicher Intelligenz. Sie stellen die Methode dar, um Probleme zu lösen. Heuristiken tun dies mittels Versuch und Irrtum. Hilfreich bei der Problemlösung ist Wissen über das zu erreichende Ziel. Im vergleich zu der auf Algorithmen und ihren genauen Abläufen basierenden konventionellen Softwareentwicklung stellt dies ein vollkommen anderes Konzept dar. Es kann nicht garantiert werden, das auf diese Art und Weise ein Problem zu lösen auch eine Lösung gefunden wird. Heuristiken sind also im Gegensatz zu klassischen Algorithmen nicht genau berechenbar, was ihre Lösungsfindung angeht, sie ähneln allerdings der menschlichen Art und Wiese vorzugehen.
WissensrepräsentationWie das Wissen gespeichert und archiviert wird, ist einer der entscheidenden Punkte in einem Expertensystem. Das Wissen ist in Form von Regeln im Computersystem gespeichert. Diese Regeln entsprechen im wesentlichen primitiven Sätzen wie etwa: Wenn die Körpertemperatur über 38 Grad Celsius beträgt hat man Fieber. Auf Basis solcher einfacher Regeln entstehen immer komplizierter. Diese Stellen die Wissensbasis des Systems dar. Dieses System ähnelt wieder sehr dem Aufbau der menschlichen Wissensbasis. Der Mensch sammelt Erfahrungen und Regeln. Er definiert Begriffe durch andere und kann so seinen Wortschatz und sein Wissen vermehren. Ein Expertensystem muss von einem Experten, den es unterstützen oder ersetzen soll mit solchen Regeln gefüttert werden.
Inferenzmotor - inferenz engineDie wirkliche Stärke von Expertensystemen, ist ihre Fähigkeit zur Inferenz. Genau das macht ein Expertensystem intelligent. Wenn es möglich wäre Bereichswissen erfolgreich in einem System zu speichern, müsste das System, ebenso wie ein menschlicher Experte, nicht nur wissen, welche Regeln es anwenden mus um ein Problem zu lösen, sondern auch in welcher Reihenfolge die Regeln anzuwenden sind. Und um dies zu bewerkstelligen verwendet ein Expertensystem einen Inferenzmotor. Es gibt zwei verschiedene Strategien[1]:
Es kommt auf die Implementierung des Systems an ob nur eine Strategie gewählt wird oder beide. Eine rückwärtsverkettende inferenz engine ist zielorientiert. Um ein Ziel zu beweisen, muss die Richtigkeit aller ihrer Prämissen überprüft worden sein. Im Gegensatz dazu beginnt die vorwärtsverkettende inferenz engine am anderen Ende. Sie überprüft die Wissensbasis um so Prämissen zu bestätigen. Die daraus gewonnenen Daten werden zu der bestehenden Wissensbasis hinzugefügt und der Vorgang beginnt wieder von vorne. Nach Beendigung des Schlusfolgerungsprozesses werden die neugewonnenen Fakten von der Benutzerschnittstelle aufbereitet und als Lösung des Problems dem Anwender präsentiert. Beide Strategien bestehen aus einer Kette von Schritten die von dem Expertensystem nachvollzogen werden können. Dies erlaubt dem Expertensystem seinen Lösungsweg zu beschreiben.
Erklärungskomponente - explanation facilitiesWie schon im letzten Absatz erwähnt, ist eine wichtige Eigenschaft eines Expertensystems die Beschreibung des Lösungsweges. Solche explanation facilities ermöglichen es dem Benutzer die Arbeitsweise eines Expertsystems zu verstehen. Typische Fragestellungen dabei sind:
Eine Erklärungskomponente ist vorallem deshalb wichtig, da auch die Kontaktierung eines menschlichen Experten sehr oft noch Erklärungsbedarf mit sich bringt. Die meisten Menschen würden nicht einfach die Antwort eines Experten akzeptieren, ohne einer Erklärung. Ein gutes Beispiel dafür wäre eine Diagnose von einem Arzt. Zieht die Diagnose eine Behandlung des Patienten nach sich, mus der Arzt dem Patienten die Behandlung und im besonderen die Risiken erklären, damit sich der Patient bewust ist, was auf ihn zukommen kann.
Problemhorizont von Experten bzw. AI-Systemen
Wissensrepräsentation
Speziell bei Wissensrepräsentation besteht das Problem, eine
geeignete Darstellungsform zu finden. Je nach Problemstellung,
ist die Darstellungsform zu wählen, denn obwohl im Allgemeinen
die graphische Darstellung von Lösungen zumeist die übersichtlichste
Art ist, so kann nicht jedes Ergebnis visuell veranschaulicht
werden. Vor allem gibt es derzeit kaum natürlichsprachliche
Benutzerschnittstellen, die Ergebnisse in geschriebenes oder
in Worte fassen können. Schon heute existieren Programme die
bis zu einem bestimmten Punkt, Satzbau und Grammatik ''beherrschen'',
dennoch ist zum Beispiel das Übersetzen von Texten nicht ohne
Weiteres möglich. Man kann hier jedes Wort einzeln, in ein
gleichwertiges Synonym der anderen Sprache umformen, nur funktioniert
diese Art der Translation fast immer auf Kosten der Semantik,
bzw. verlieren Sätze oft ihren Zusammenhang und Sinn. Außerdem
betrifft das Problem der Darstellung nicht allein das Anzeigen
einer gefundenen Lösung, sondern auch die Art der Eingabe von
neuen Aufgaben und die Eingabe bzw. das Erweitern der bestehenden
Wissensbasis. Obwohl das vergrößern oder Warten der Wissensbasis
muss zwar zumeist von einem Experten übernommen werden, aber
die Bedienung kann oftmals auch von eingeschultem Personal übernommen
(d. h. das Wissen eines Hauptusers muss nicht so detailliert,
wie das eines wirklichen Experten sein). In diesem Fall kann
aber auch bei der Eingabe von Aufgaben nicht von einem Expertenwissen
des Users ausgegangen werden. (Ein Beispiel: zwar wird bei einem
medizinischen Expertensystem vermutlich die Wissensbasis von
einem Mediziner in Kooperation mit einem Entwickler gewartet
bzw. erweitert, aber der- oder
Maschinelles LernenBeim Maschinellen Lernen solcher AI Systeme, bestehen weniger Probleme Wissen in eine Datenbank oder eine andere Form von Wissensbasis zu quetschen, vielmehr ist hier die Aufgabe das Wissen zu kategorisieren bzw. auch den Sinn von Grundsätzen korrekt zu erfassen. So bleibt die Frage: ''Wie soll der Computer erkennen, zu welchem Stoffgebiet oder welcher Expertise angesammeltes und eingelesenes Wissen gehört?'' ''Wie kann man dem Computer klarmachen, welchen Sinne ein solches Wissen hat?''. Zwar können durch Skriptsprachen wie PROLOG oder LISP bzw. durch Heuristiken und Grundsätzen, Regeln für ein solches Einlesen charakterisiert werden, doch sind diese dann allgemein gültig? Leider nicht. Zumeist sind solche Regeln, schon bei nur geringfügig anderen Stoffgebieten nicht mehr anzuwenden. Aus diesem Grund war es bisher nicht möglich ein allgemein gültiges Problemlösungsprogramm zu schreiben bzw. eine AI, ähnlich flexibel wie der menschliche Verstand, zu entwickeln.
automatisches SchließenEin weiterer Problembereich für die Schaffung von Experten- bzw. AI-Systemen ist das automatische Schlussfolgern anhand von bestehenden Fakten. Wie sind Fakten und Daten für ein System zu bewerten? Ein Expertensystem soll, das bekannte Wissen abstrahieren und in neuen Situationen ''anwenden''. Zumeist kommen hier beim ''Schlussfolgern'' diverse Heuristiken oder Aussagelogische Formulierungen zum Einsatz. Ein relativ neues Verfahren ist auch der Einsatz von sogenannten Fuzzy Logic Systemen. Diese bewerten Daten nicht mit mathematischen oder heuristischen Formeln bzw. Regeln sondern bewerten ''unscharf''. D.h. dass hier keine ''true''/''false'' oder ''0''/''1'' Werte berechnet, sondern es wird ''menschlicher'' bewertet. Nicht rein mit WAHR und FALSCH sondern noch mit WAHRSCHEINLICH, VIELLEICHT, MÖGLICH ABER NICHT WAHRSCHEINLICH. Also auf ein Zahlensystem umgelegt, nicht einfach die Werte 0 und 1, sondern auch Zwischenabstufungen wie 0,8 oder 0,25 etc. Damit wurde es endlich möglich dass das menschliche Bewerten besser und effizienter zu simulieren. Derzeit wird Fuzzy Logic schon bei High End Video Kameras verwendet, um Ruckartige Bewegungen des Filmenden so gut es geht zu verringern. Ein weiteres Einsatzgebiet dafür sind Automatik Getriebe (speziell in des USA). Hier wird das Kuppeln via Fuzzy Logic sanft und ''weich''.
Literatur
|
Weiterführende Informationen |
|
Verweise auf Arbeiten anderer gruppen |
|
>Entstehungskontext | Konzepte und Techniken | Entwicklung und Auswirkungen | Praxis | Bewertung |