Christine Schwarz
Gymnasium Nieder- Olm
13 Inf 1 / SHM
christin@gymno.mz.rp.schule.de
Historische Entwicklung von Expertensystemen (XPS)
Expertensyteme allgemein
1.) Was sind Expertensysteme ?
1.1.) Historische Entwicklung von Expertensystemen
- Vom Großvater" der Expertensysteme MYCIN bis heute
Die Geschichte der Problemlösungsprogramme beginnt in den sechziger Jahren mit der Entwicklung von Such- und Spielprogrammen, die mit Hilfe allgemeiner, effizienten Suchstrategien versuchten, klar formulierte Suchprobleme zu lösen.
Wegen ihrer Allgemeinheit sind diese Strategien allerdings von geringer Bedeutung.
Das fundamentale Problem zum Verständnis von Intelligenz ist nicht die Identifikation von wenigen mächtigen Techniken, sondern eher die Frage, wie sehr viel Wissen repräsentiert werden muß, um seinen effektiven Gebrauch und Interaktionen zu ermöglichen. (...) Wir sehen also in der Künstlichen Intelligenz einen Wechsel von einer rechenintensiven (power- based) Strategie zu einem wissensbasierten Ansatz." ( Zitiert aus einem Paradigmenwechsel zwischen Goldstein und Papert [Duda 83, S. 220])
Als Großvater" der Expertensysteme gilt das zur Diagnose und Therapie von bakteriellen Infektionskrankheiten des Blutes und Meningitis entwickelte Expertensystem MYCIN (siehe auch unter7.)).
Die gewonnenen Erkenntnisse aus der ersten Generation der Expertensysteme findet man Ende der siebziger Jahre in Werkzeugen wider, die die Entwicklungszeiten neuer Systeme erheblich verkürzen. Die ersten Expertensystemwerkzeuge verallgemeinerten vor allem den Regelformatismus. Außer den Kombinationen mehrerer Wissensrepräsentationen bzw. Programmierstile und objektorientierter Darstellungen legt die neuere Forschung vor allem großen Wert auf angepaßte Werkzeuge, d. h. Werkzeuge, die auf einen Problemlösungstyp spezialisiert sind.
Bei der kommenden Entwicklung der Werkzeugsysteme wird eine rasche Fortsetzung durch Mutation (Werkzeug- Neuentwicklungen) und Selektion (durch die Erfahrung bei der Anwendung von Werkzeugen) erwartet.
1.2.) Aufbau von Expertensystemen
- Vom Problem zur Lösung
- Architektur von Expertensystemen
Expertensysteme benötigen detaillierte Einzelerkenntnisse über das Aufgabengebiet und Strategien, wie sie mit Hilfe dieses Wissens zur Problemlösung gelangen. Um dies zu erreichen, muß das Wissen formalisiert, im Computer repräsentiert und nach einer Problemlösungsstrategie manipuliert werden.
Damit das Expertensystem flexibel, d.h. veränderbar bleibt, muß man das anwendungsspezifische Wissen von den allgemeinen Problemlösungsstrategien trennen. Dadurch entsteht eine klare Schnittstelle, die charakteristisch ist für die Architektur von Expertensystemen.
Eine mögliche Charakterisierung von Expertensystemen ist, ihnen notwendige Eigenschaften zuzuordnen:
Transparenz: Expertensysteme können ihre Problemlösung durch Angabe des benutzten Wissens erklären.
Flexibilität: Einzelne Wissensstücke können relativ leicht hinzugefügt, verändert oder gelöscht werden.
Benutzerfreundlichkeit: Der Umgang mit Expertensystemen erfordert kein programmiersprachliches Vorwissen (weder für Endbenutzer noch für den Experten).
Kompetenz: Expertensysteme verfügen über eine hohe Problemlösungsfähigkeit in ihrem Anwendungsbereich.
1.3.) Expertensyteme in Industrie und Wirtschaft
- Umgang von Werkzeugen mit Wissen
- Expertensysteme als allgemeines Hilfsmittel zur Wissensverarbeitung
Expertensysteme bedeuten in der Industrie eine Entlastung der Experten bei Routinetätigkeiten bzw. besteht die Möglichkeit, sie einfache Probleme lösen zu lassen.
Hierbei ist jedoch zu beachten, daß nur sehr wenig Expertensysteme tatsächlich im Einsatz sind, da die Schwierigkeiten bei der Entwicklung expertenähnlicher Systeme unterschätzt wurden bzw. immer noch werden.
Das größte Problem eines Expertensystems liegt im Verstehen eines Problems. Allein eine streng formulierte Eingabe kann dies bewerkstelligen und somit die Qualität der Problemlösung entscheidend mitbestimmen.
Daher eignen sich Expertensysteme vor allem zum Einsatz in Gebieten, bei denen die Datenerfassung wenig fehleranfällig ist und das Expertensystem keine endgültigen Entscheidungen trifft, sondern in einen redundanten* Entscheidungsprozeß eingebettet ist.
Die beste Art, das Potential eines Expertensystems richtig einzuschätzen, ist, sie als ein neues Wissensmedium neben dem traditionellen Buch zu sehen. Hierbei ist zu beachten, daß Expertensystem im Gegensatz zu Büchern, die nur von Menschen interpretiert werden können, ihr wissen selbständig auf neue Probleme anwenden, d.h. Expertensysteme sind allgemeine Hilfsmittel zur Wissensverarbeitung.
Zielsetzung hierbei ist es, die Werkzeuge so komfortabel und problemadäquat* zu gestalten, daß die Experten ihr Wissen selbständig formalisieren und austesten können, ohne daß bei der Benutzung die Hilfe eines Wissensingenieur" erforderlich wäre.
Dies würde eine erhebliche Veränderung in den jeweiligen Anwendungsgebieten bedeuten, da Erfahrungen nicht mehr in der Praxis erworben werden müßten, sonder in Programmen explizit dargestellt und damit leichter erlernt und auch überprüft werden könnte.
2.) Problemlösungstypen von Expertensystemen
Interpretation:
Ableitung von Situationsbeschreibungen aus SensordatenDiagnostik:
Ableitung von Systemfehlern aus BeobachtungenÜberwachung:
Vergleich von Beobachtungen mit SollwertenDesign:
Konfiguration*( die mit einem Sternchen gekennzeichneten Wörter sind unter 8.) erklärt) von Objekten unter Berücksichtigung besonderer AnforderungenPlanung:
Entwurf einer Folge von Aktionen zum Erreichen eines ZielsVorhersage:
Ableitung von möglichen Konsequenzen gegebener Situationen
2.1.) Problemorientierte Einteilung
- Diagnostik
- Konstruktion
- Simulation
2.2.) Implentationsorientierte* Einteilung
- Grundtechniken der Wissensrepräsentation
- Regeln; Frames; Contraits; probabilistische*, nicht- monotone und temporale Schließen
3.) Prädikatenlogik* der ersten Ordnung
Die Idee bestand aus der Entwicklung eines Kalküls, das Objekte oder Zustände aus der realen Welt durch Aussagen des Kalküls beschreibt und daraus mit allgemeingültigen Ableitungsregeln andere Aussagen herleiten kann, die dann wieder auf Objekte oder Zustände der realen Welt bezogen werden.
Die vorgegebenen Aussagen des Kalküls heißen Axiome, Fakten oder Annahmen, die abgeleiteten Aussagen Theoreme oder Schlußfolgerungen.
Die Prädikatenlogik ist eine Erweiterung dieser Aussagenlogik, bei der All- und Existenzaussagen über Individuen getroffen werden können. Die Prädikatenlogik zweiter Ordnung läßt dagegen auch Aussagen über Mengen bzw. Eigenschaften von Individuen zu. Diese Ordnung wird wegen mangelnder Implementierbarkeit allerdings nur selten in der praktischen Informatik benutzt.
Man muß allerdings auch beachten, daß die Prädikatenlogik erster Ordnung für Wissensrepräsentationen in Expertensystemen gewichtige Nachteile bezüglich Mächtigkeit, Adäquatheit und Effizienz hat. Oft sind das Wissen bzw. Die Daten unsicher, unvollständig oder zeitabhängig, was in der Prädikatenlogik erster Ordnung schlecht, wenn überhaupt dargestellt werden kann.
3.1.) Syntax für ein Kalkül zur Prädikatenlogik erster Ordnung
Symbole:
- Konstanten (A, B, C)
- Variablen (x, y, z)
- Prädikatssymbole (p, q)
- Funktionssymbole (f, g)
- Konnektionssymbole
- Quantoren
Terme:
- Konstanten (A, B)
- Variablen (x, y)
- Funktionssymbole, angewendet auf die korrekte Anzahl von Termen (z. Bsp.: (f x (f BB)))
Formeln:
- Prädikatssymbole, angewendet auf die korrekte Anzahl von Termen (atomare Formeln)
Axiome:
- aussagenlogische Axiome, Spezialisierungsaxiom, Quantoren-Shift-Axiom"
Ableitungsregeln:
- Modus Ponens und Generalisierungsregel
3.2.) Eigenschaften von Kalkülen
Alle Wissensrepräsentationsformalismen kann man verbunden mit ihren Ableitungsstrategien als Kalküle auffassen. Gefordert sind hierbei die Korrektheit des Kalküls, die erfüllt ist, wenn alle syntaktisch (d.h. im Kalkül) herleitbaren Schlußfolgerungen auch semantisch, d.h. in der Welt folgen.
Besonders interessante Eigenschaften für Expertensysteme sind Adäquatheit und Effizienz, d.h. die einfache und elegante Beschreibung der Welt, die Herleitung effizient, relevanter Schlußfolgerungen und die Beantwortung von Fragen. Weitere Eigenschaften sind die lokale Konfluenz (Ist gegeben, wenn die Anwendung irgendeines Ableitungsschrittes das Herleiten eines Theorems nicht verhindert kann.) und die Konsistenz (Eine Menge von Aussagen darf sich nicht widersprechen. Mit einer inkonsistenten Menge von Aussagen könnte man in der Prädikatenlogik jedes beliebige Theorem beweisen.).
Eine gute Wissensrepräsentation zeichnet sich durch einen optimalen Kompromiß für ihren Problembereich, eine Entscheidung, welche Eigenschaften für die jeweilige Wissensrepräsentation am effizientesten ist (Leider sind die genannten Eigenschaften nicht in maximalem Umfang anwendbar.), aus.
4.) Regeln
Regeln sind die verbreitetste Wissensrepräsentation in Expertensystemen. Die Aufteilung des Wissens in viele kleine Stücke" macht eine Wissensbasis modular und damit leicht veränderbar.
- Implikationen* oder Deduktionen*,
mit denen der Wahrheitsgehalt einer Feststellung hergeleitet wird.- Handlungen,
mit denen ein Zustand verändert wird- Vorwärtsverkettung (Forward- Reasoning):
Ausgehend von einer vorhandenen Datenbasis wird aus den Regeln, deren Vorbedingungen durch die Datenbasis erfüllt ist, ihr Aktionsteil ausgeführt (d.h. die Regel feuert") und damit die Datenbasis geändert. Dieser Prozeß wird solange wiederholt, bis keine Regel mehr anwendbar ist.- Rückwärtsverkettung (Backward- Reasoning):
Ausgehend von einem Ziel werden nur die Regeln überprüft, deren Aktionsteil das Ziel enthält. Falls Parameter der Vorbedingungen unbekannt sind, werden sie mit anderen Regeln hergeleitet oder vom Benutzer erfragt.
5.) Objekte/ Frames
- Kernidee objektorientierter (framebasierter) Wissensrepräsentationen
Durch die Zusammenfassung aller Aussagen über ein Objekt in einer Datenstruktur (Bsp. Datenbanken) , ermöglichen es, daß Fakten besser strukturiert, ökonomisch abgespeichert und mit Basiswissen" über ihre Verwendung ausgestattet werden können.
5.1.) Vererbungshierachien
Dienen zur ökonomischen Datenerhaltung. Hierbei strukturiert man die Objekte in einer Hierarchie und speichert individuelle Eigenschaften beim Objekt selbst ab, allgemeine Eigenschaften dagegen werden den Vorgängern des Objektes in der Hierarchie zugeordnet und an alle Nachfolger vererbt". Bei der Abfrage wird die Eigenschaft des Objektes jetzt nicht nur in dem Objekt selbst gesucht, sondern auch in den Vorgängern.
5.2.) Zugeordnete Prozeduren
Kleine Programme, die einer Eigenschaft eines Objekts zugeordnet sind und bei einem Lese- oder Schreibezugriff auf dessen Wert ausgeführt werden. Außerdem kann man mit zugeordneten Prozeduren Werteänderungen überwachen (Solche überwachten Werte heißen active values".) ; und auch sie können in einer Objekthierarchie vererbt werden.
5.3.) Erwartungswerte (Defaultwerte)
Vorbelegungen von Werten, die meistens, aber nicht immer stimmen und daher durch konkrete Informationen überschrieben werden können. Der Umgang mit Erwartungswerten erfordert jedoch die Fähigkeit, Schlußfolgerungen mit allen Konsequenzen zurückziehen zu können, was nur sehr aufwendig realisierbar ist.
6.) Contraints
- Repräsentation von Relationen; Beziehungen zwischen Variablen
Ziel: Herausfinden einer Lösung unter Beachtung aller Contraints, d.h. unter Berücksichtigung aller Randbedingungen.
Contraints eignen sich besonders zur Darstellung von lokalen Randbedingungen, die die Problemlösung in jedem Fall erfüllen muß, ohne daß damit eine konkrete Problemlösung festgelegt wird. Durch jedes neue Contraint wird der Lösungsraum zusätzlich eingeschränkt.
Zum Beispiel kann man den Wunsch eines Lehrers bei der Stundenplanherstellng, daß er einen Tag in der Woche frei haben möchte, als Contraint betrachten.
7.) Das MYCIN- Modell
- Getrennte Bewertung positiver und negativer Evidenz
- Repräsentation von Symptom- Kombinationen mit Regeln
Ziel: Berechnung einer positiven und einer negativen Wahrscheinlichkeit für jede Diagnose
Bei diesem Modell dürfen die Symptome innerhalb der Regel miteinander korrelieren*. Die Regeln als Ganzes dagegen müssen voneinander unabhängig sein.
Die Regelwahrscheinlichkeit wird berechnet, indem die Implikationswahrscheinlichkeit (die vom Experten kommt) mit der Wahrscheinlichkeit der Vorbedingungen ( die der Benutzer eingibt) multipliziert wird.
Eine Besonderheit hierbei ist, daß der Benutzer die Unsicherheiten bei der Symptomerhebung sehr detailliert angeben kann. Allerdings entstehen dadurch neue Probleme, die noch nicht gelöst sind:
- Unterschiedliche Situationen werden gleich behandelt: wenn in einer Regel alle Aussagen nur zu 50% sicher sind, würde dies genauso behandelt, wie wenn nur eine Aussage zu 50% und die Aussagen zu 100% sicher sind.
- Für den Experten wird die Abschätzung der Implikationswahrscheinlichkeit sehr erschwert, da er die vom Benutzer geschätzten Symptomwahrscheinlichkeiten mit berücksichtigen muß.
8.) Worterklärungen
deduktiv
(besonders verwendet in der Logik) so, daß man das Besondere aus dem allgemeinen erschließt, logisch folgert « induktiv < ein Beweis; ein Schluß; ein Vorgehen>
implementieren
(EDV) ein Programm oder Programmteil in ein Computersystem einbinden
Implikation
1.) Folgerung; Schluß
2.) (math.) logische Folgebeziehung
3.) Einbeziehung einer Sache in eine andere Verflechtung; Verwicklung
Konfiguration
die Anordnung der einzelnen Teile von etwas
korrelieren
einander bedingen, miteinander in Wechselbeziehung stehen
Prädikatenlogik
Teilgebiet der formalen Logik, das sich mit den Beziehungen zwischen den Bestandteilen von Aussagen befaßt
probabilistisch
wahrscheinlich; die Wahrscheinlichkeit berücksichtigend
problemadäquat
den Umständen angemessen, entsprechend
redundant
1.) überflüssig, überzählig (nicht unbedingt notwendig)
2.) weitschweifig
3.) (tech.) mehrfach vorhanden
Frank Puppe: Einführung in Expertensysteme (Springer- Verlag, 2. Auflage, 1991, Studienreihe Informatik)
Microsoft Encarta 97 Enzyklopädie; © & ® 1993- 1996 Microsoft Corporation