Skip to main content

1990 | Buch

Technische Expertensysteme

Grundlagen, Programmiersprachen, Anwendungen

verfasst von: Prof. Dr.-Ing. Dietrich Hartmann, Dipl.-Inform. Karlheinz Lehner

Verlag: Springer Berlin Heidelberg

insite
SUCHEN

Über dieses Buch

Expertensysteme, ein erster Schritt in Richtung "Künstliche Intelligenz", werden insbesondere auch für Ingenieuranwendungen immer bedeutsamer. Daher wendet sich dieses praxisorientierte Lehrbuch in erster Linie an Ingenieure. Es liefert eine fundierte Einführung in Aufbau und Arbeitsweise von Expertensystemen und ihren Grundlagen. Die Programmiersprachen LISP und PROLOG, oft Basis für Expertensysteme, werden ebenso vorgestellt wie realisierte Anwendungen aus der Ingenieurpraxis. Technische Expertensysteme wendet sich an Ingenieurstudenten und praktizierende Ingenieure, die sich in den modernen Themenkreis einführen lassen wollen. Das Buch eignet sich insbesondere zum Selbststudium.

Inhaltsverzeichnis

Frontmatter
1. Einführung in Expertensysteme
Zusammenfassung
Expertensysteme werden der sog. Künstlichen Intelligenz zugerechnet. Um die Stellung der Expertensysteme innerhalb der Künstlichen Intelligenz beurteilen zu können, soll deshalb zunächst ein Überblick über die Künstliche Intelligenz mit ihren verschiedenen Teilbereichen, einschließlich eines kurzen, historischen Abrisses gegeben werden. Daran anschließend wird auf den Aufbau von Expertensystemen und ihre Einbettung in die traditionelle Datenverarbeitung (DV) eingegangen. Ziel des ersten Kapitels ist es auch, vor einer vertieften Behandlung von Einzelheiten in den folgenden Kapiteln einen Überblick über die wichtigsten Komponenten von Expertensystemen zu geben und die möglichen Einsatzfelder im Ingenieurwesen herauszukristallisieren. Das erste Kapitel sollte vor allem eine Einführung in das Arbeiten mit der Expertensystemtechnologie sein, und die Motivation liefern, sich auch als Ingenieur mit dieser neuen DV-Technologie auseinanderzusetzen.
Dietrich Hartmann, Karlheinz Lehner
2. Grundlagen der Expertensysteme
Zusammenfassung
In diesem Kapitel werden die Grundlagen von Expertensystemen bzw. wissensbasierten KI-Techniken und -Werkzeugen dargestellt. Im einzelnen sind dies:
  • das Prädikatenkalkül das als Grundlage regelbasierter Expertensysteme aufgefaßt werden kann,
  • Suchstrategien, mit denen Probleme allgemeiner Art gelöst werden und
  • die Wissensverarbeitung unter Berücksichtigung von Unsicherheiten, um vages oder diffuses Wissen computergerecht aufbereiten zu können.
Dietrich Hartmann, Karlheinz Lehner
3. Expertensystemschalen
Zusammenfassung
Die Erstellung eines kompletten Expertensystems mit allen für die praktische Arbeit wichtigen Komponenten bedeutet einen erheblichen Arbeitsaufwand, den insbesondere Ingenieure aus der Praxis — wegen ihrer terminlichen Belastung mit Projekten -nicht leisten können. Aus diesem Grund lag es nahe, Systeme zu schaffen, die bis auf die problemabhängige Wissensbasis bereits alle Komponenten „gebrauchsfähig“enthalten. Derartige Systeme, die als Expertensystemschalen (expert system shells) bzw. Entwicklungssysteme (programming environments) bezeichnet werden, erleichtern folglich den Umgang mit Expertensystemen erheblich. Allerdings gibt es eine ganz wesentliche Einschränkung: Nicht jede Expertensystemschale paßt zu jedem Problem! Die innere Logik der Schale muß mit der inneren Logik eines konkreten Problems übereinstimmen, sonst können Effizienzverluste auftreten.
Es kommt also sehr darauf an, sich bei der Entscheidung fiir eine bestimmte Expertensystemschale an den Anforderungen, die durch die vorgegebene Problem-kasse entstehen, zu orientieren. Die Entscheidung far eine bestimmte Schale wird dabei durch das zunehmend grüßer werdende kommerzielle Angebot erschwert. Einige allgemeine Kriterien, die bei der Auswahl eine Rolle spielen, sollen nachfolgend angesprochen werden.
Dietrich Hartmann, Karlheinz Lehner
4. Überblick über die Programmiersprache LISP
Zusammenfassung
Expertensysteme und andere „KI-Programme“müssen mit einer adäquaten Programmiersprache erstellt werden. Die Festlegung einer bestimmten Programmiersprache ist im Prinzip freigestellt, allerdings eignen sich besonders solche Sprachen für Expertensystementwicklungen, die speziell auf Problemstellungen der KI zugeschnitten sind.
Beispielsweise ist die an MYCIN angelehnte Expertensystemschale EXPERT [4.1] vollständig in FORTRAN geschrieben worden. Sie ist regelbasiert, arbeitet mit Rückwärtsverkettung und läßt Konfidenzwerte zu. EXPERT besitzt — obwohl FORTRAN–orientiert — auch eine Erklärungskomponente, eine Komponente zur Wissensakquisition und eine Komponente zur Überprüfung der Regelkonsistenz.
Expertensystemschalen können demzufolge durchaus in Programmiersprachen wie FORTRAN oder C programmiert werden. Es stellt sich jedoch die Frage, mit welchem Aufwand die Programmierung verbunden ist. Zu bedenken ist, daß der Schwerpunkt von Expertensystemschalen auf der Symbolmanipulation liegt und nicht — wie bei „konventionellen“ Programmiersprachen — in der numerischen Verarbeitung großer Zahlenmengen. Bei Einsatz einer konventionellen Programmiersprache wird deshalb ein nicht unerheblicher Arbeitsaufwand für die Schaffung einer geeigneten Arbeitsumgebung zur Manipulation und Verarbeitung von Symbolen benütigt. KI-Programmiersprachen bieten dagegen eine geradezu ideale Arbeitsumgebung für die Symbolverarbeitung. Darüber hinaus enthalten sie oftmals noch weitere, für ein effizientes Arbeiten erforderliche Komponenten, wie z.B. graphische Ein– und Ausgabe, verschiedene Kontrollmechanismen (Vorwärts-, Rückwärtsverkettung) und Fehlersuchoptionen (debugger, tracer).
In diesem Buch sollen zwei KI–Programmiersprachen näher behandelt werden: Zunächst wird die Programmiersprache LISP, dann die Programmiersprache PROLOG vorgestellt. Beide Sprachen sind für denjenigen interessant, der Expertensystemschalen bzw. wissensbasierte Programme selbst entwickeln möchte. Vorhandene Expertensystemschalen erlauben aber auch oft benutzerseitige Erweiterungen in der Entwicklersprache der Schale (in der Mehrzahl der Fälle LISP oder PROLOG) vorzunehmen, so daß auch der Anwender von Expertensystemschalen wenigstens Grundkenntnisse in diesen Sprachen haben sollte. Ziel der Kapitel zu LISP und PROLOG ist es, die für den Ingenieur erforderlichen Grundkenntnisse, insbesondere die mit LISP und PROLOG verbundene Programmierphilosophie, zu vermitteln.
Dietrich Hartmann, Karlheinz Lehner
5. Die Programmiersprache PROLOG
Zusammenfassung
PROLOG (PROgrammieren in LOGik) ist eine Sprache, die auf der mathematischen Logik aufgebaut ist. Im Abschnitt Prädikatenkalkül wurde bereits angedeutet, daß mit Hilfe des Prädikatenkalküls definierte Aufgaben automatisch bewiesen (d.h. gelöst) werden können. PROLOG ist ein solcher Beweisfinder: Die Anweisungen in PROLOG sind nichts anderes als Prädikatenformeln, während die Verarbeitungsstrategie (der Beweisfinder) die Resolution und die Variablenbindung die Unifikation ist. Bekannte Sachverhalte erscheinen damit unter neuem Namen.
PROLOG läßt sich auch ohne den theoretischen Hintergrund des Prädikatenkalküls gut verstehen. Somit ist PROLOG auch für Neulinge im Programmieren gut geeignet, da man im Gegensatz zu anderen Programmiersprachen nur sehr wenig über den Aufbau und die Arbeitsweise eines Computers wissen muß. In gewisser Hinsicht kann es sogar nachteilig sein, bereits eine konventionelle Programmiersprache wie FORTRAN, PASCAL oder BASIC zu beherrschen, da der Programmierablauf in PROLOG völlig anders geartet ist und somit das „Umdenken“ in PROLOG erschwert wird.
Bei herkömmlichen Programmiersprachen muß bekanntlich genau festgelegt werden, wie ein Problem zu lösen ist. Dazu muß ein Algorithmus aufgestellt werden, in dem die einzelnen Anweisungen zur Lösung der Aufgabe exakt spezifiziert werden müssen. Da Programmierbefehle (z.B. Zuweisung von Variablen, Aufruf von Unterprogrammen) im Vordergrund stehen, nennt man diese Sprachen imperativ (befehlsorientiert).
In PROLOG liegt die Betonung eher auf der Problembeschreibung: Durch Aussagen (bzw. „Klauseln“) über den Problembereich wird das Problem so allgemein wie möglich spezifiziert (beschrieben), so daß ein PROLOG Interpreter diese Spezifikation auswerten und für eine konkrete Aufgabe eine Lösung aufzeigen kann. Aussagen haben dabei folgende Erscheinungsformen:
  • Fakten (allgemein anerkanne Tatsachen)
  • Regeln (Wenn-Dann-Konstrukte)
  • Abfragen
PROLOG-Programme bestehen folglich nicht aus Anweisungen, wie man sie aus der konventionellen Programmierung her kennt. Das bedeutet auch, daß (im Prinzip) die Reihenfolge der Aussagen beliebig ist. Die beschreibende (deklarative) Art von PROLOG erfordert demnach eine andere Betrachtungsweise als es bei herkömmlichen Programmiersprachen üblich ist, da die Eigenschaften von Objekten und deren Abhängigkeiten untereinander formuliert werden müssen und keine Anweisungsfolgen erlaubt sind.
In Abschnitt 3.5 wurde bereits ein „Nachweis-Expertensystem“ vorgestellt, bei dem das Wissen einer DIN-Norm regelbasiert über eine Wissensbank aufbereitet wurde und für ein gegebenes Problem ausgewertet werden konnte. In diesem Kapitel soll noch einmal das Beispiel Nachweis-Expertensystem aufgegriffen werden, um zu zeigen, wie wissensbasierte Programme mit PROLOG — also ohne Einsatz einer Expertensystemschale — erstellt werden können.
Dietrich Hartmann, Karlheinz Lehner
6. Auswirkungen auf das Ingenieurwesen und Perspektiven
Zusammenfassung
In den vergangenen Jahren ist es gelungen, in den einzelnen Teilbereichen des Computer Aided Engineering (CAE) ausgereifte DV-Systeme zu etablieren. Ein typisches Beispiel hierfür ist der Bereich der strukturanalytischen Berechnung von Konstruktionen; selbst für komplizierte Problemstellungen existieren leistungsfähige Programmsysteme, wobei die Finite Element Methode als Berechnungsmethode dominiert. In zunehmendem Maße werden auch Systeme des Computer Aided Design (CAD) eingesetzt, so daß die Anfertigung technischer Zeichnungen weitgehend mit Computern durchgeführt werden kann. Aber auch in vielen anderen Bereichen, in denen sich Lösungskonzepte auf wohldefinierten Algorithmen aufbauen lassen, kann qualitativ gute Software eingesetzt werden.
Dietrich Hartmann, Karlheinz Lehner
Backmatter
Metadaten
Titel
Technische Expertensysteme
verfasst von
Prof. Dr.-Ing. Dietrich Hartmann
Dipl.-Inform. Karlheinz Lehner
Copyright-Jahr
1990
Verlag
Springer Berlin Heidelberg
Electronic ISBN
978-3-642-93453-7
Print ISBN
978-3-540-52155-6
DOI
https://doi.org/10.1007/978-3-642-93453-7