Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Expertensysteme. Was ist ein Expertensystem? Allgemeine Definition: System von Softwaretechnologien, das auf der Basis von Expertenwissen Problemlösungsstrategien.

Ähnliche Präsentationen


Präsentation zum Thema: "Expertensysteme. Was ist ein Expertensystem? Allgemeine Definition: System von Softwaretechnologien, das auf der Basis von Expertenwissen Problemlösungsstrategien."—  Präsentation transkript:

1 Expertensysteme

2 Was ist ein Expertensystem?

3 Allgemeine Definition: System von Softwaretechnologien, das auf der Basis von Expertenwissen Problemlösungsstrategien anbietet System von Softwaretechnologien, das auf der Basis von Expertenwissen Problemlösungsstrategien anbietet Systeme zur Unterstützung medizinischer Diagnosen Systeme zur Unterstützung medizinischer Diagnosen Analyse wissenschaftlicher Daten Analyse wissenschaftlicher Daten

4 Sinn: Maschinelles Verarbeitungsvermögen wird genutzt, sobald menschliches Berechnungs- und Problemlösungsvermögen überfordert ist Sinn: Maschinelles Verarbeitungsvermögen wird genutzt, sobald menschliches Berechnungs- und Problemlösungsvermögen überfordert ist Wichtig hierbei ist jedoch die sinnhafte, vorteilhafte und verständliche Kommunikation zwischen Mensch und Maschine Wichtig hierbei ist jedoch die sinnhafte, vorteilhafte und verständliche Kommunikation zwischen Mensch und Maschine Die Qualität eines Expertensystems hängt von der hohen bzw. geringen Fehlerquote von Problemlösungen ab Die Qualität eines Expertensystems hängt von der hohen bzw. geringen Fehlerquote von Problemlösungen ab

5 Die Wissensbasis

6 Die für ein Expertensystem generierte Wissensbasis (knowledge base) dient nicht zu deren ausschließlicher Repräsentation, sondern soll auf deren Grundlage weitere Schlussfolgerungen zulassen Die für ein Expertensystem generierte Wissensbasis (knowledge base) dient nicht zu deren ausschließlicher Repräsentation, sondern soll auf deren Grundlage weitere Schlussfolgerungen zulassen Wissensbasis repräsentiert das wichtigste Modul innerhalb eines Expertensystems Wissensbasis repräsentiert das wichtigste Modul innerhalb eines Expertensystems

7 Die knowledge base enthält das Fachwissen einer beliebigen Repräsentationsform Die knowledge base enthält das Fachwissen einer beliebigen Repräsentationsform Die knowledge base wird durch eine Inferenzmaschine ergänzt Die knowledge base wird durch eine Inferenzmaschine ergänzt Diese Inferenzmaschine bezeichnet eine Softwarestruktur mit deren Hilfe die Wissensbasis nutzbar gemacht wird Diese Inferenzmaschine bezeichnet eine Softwarestruktur mit deren Hilfe die Wissensbasis nutzbar gemacht wird

8 Aufgaben von Expertensystemen

9 Dateninterpretation Dateninterpretation Überwachung Überwachung Diagnose Diagnose Therapie Therapie Planung Planung Entwurf Entwurf Prognose Prognose

10 Realisierung

11 Fallbasierte Systeme Fallbasierte Systeme Regelbasierte Systeme (Wenn- Dann- Beziehung als Problemlösungsstrategie) Regelbasierte Systeme (Wenn- Dann- Beziehung als Problemlösungsstrategie) Entscheidungsbäume Entscheidungsbäume

12 Die Entwicklung bzw. der Aufbau eines Expertensystem erfolgt bzw. besteht aus Die Entwicklung bzw. der Aufbau eines Expertensystem erfolgt bzw. besteht aus essentiellen Bestandteilen: 1. knowledge- based system 1. knowledge- based system 2. inference engine 2. inference engine 3. user interface 3. user interface

13 Zu 1. generiert das Wissen, das für den Aufbau und die Arbeit des entsprechenden Expertensystems vorgesehen ist Zu 1. generiert das Wissen, das für den Aufbau und die Arbeit des entsprechenden Expertensystems vorgesehen ist Dazu zählen ausserdem Regeln, Besonderheiten und Relationen im Wissenssystem Dazu zählen ausserdem Regeln, Besonderheiten und Relationen im Wissenssystem

14 Zu 2. Eine Inferenzmaschine dient dazu, das generierte Wissen zu Anwendungszwecken nutzbar zu machen Zu 2. Eine Inferenzmaschine dient dazu, das generierte Wissen zu Anwendungszwecken nutzbar zu machen Zu 3. dient zur Kommunikation zwischen dem System und dem Benutzer Zu 3. dient zur Kommunikation zwischen dem System und dem Benutzer Unterstützendes Aggregat während des Problemlösungsprozess (problem-solving- process)

15 Die inference engine und das user interface Die inference engine und das user interface werden auch als ein Modul (shell) bezeichnet Die knowledge base ist abhängig von der jeweiligen Applikation Die knowledge base ist abhängig von der jeweiligen Applikation Die shell ist abhängig vom jeweilgen Aufgaben- oder Fachgebiet der generierten knowledge base Die shell ist abhängig vom jeweilgen Aufgaben- oder Fachgebiet der generierten knowledge base

16 Knowledge base Inference engine User interface User Shell

17 Regelbasierte Expertensysteme if-then-rules

18 Fokus auf Regelbasierte Expertensysteme Fokus auf Regelbasierte Expertensysteme Wichtigstes Merkmal hierbei: Die Repräsentation von Wissen durch ein Regelgefüge von Wenn-Dann- Beziehungen Wichtigstes Merkmal hierbei: Die Repräsentation von Wissen durch ein Regelgefüge von Wenn-Dann- Beziehungen if-then-rules oder production rules if-then-rules oder production rules

19 If- then- rules sind durch verschiedene Formalismen interpretierbar: If- then- rules sind durch verschiedene Formalismen interpretierbar: If precondition P then conclusion C If precondition P then conclusion C If situation S then action A If situation S then action A If conditions C1 and C2 hold then condition C does not hold If conditions C1 and C2 hold then condition C does not hold

20 Eigenschaften von if-then- rules: Eigenschaften von if-then- rules: Modularity: each rule defines a small, relatively independent piece of knowledge Modularity: each rule defines a small, relatively independent piece of knowledge Incrementability: new rules can be added to the knowledge base relatively independently to other rules Incrementability: new rules can be added to the knowledge base relatively independently to other rules

21 Modifiability: (as a consequence of modularity): old rules can be changed relatively independent of other rules Modifiability: (as a consequence of modularity): old rules can be changed relatively independent of other rules Support systems transparency Support systems transparency

22 Die Eigenschaft der Transparenz eines Expertensystems gestaltet sich als äußerst wichtig, da dadurch die Kommunikationsfähigkeit zwischen System und menschlichem Benutzer und mit positivem Ausgang abhängt Die Eigenschaft der Transparenz eines Expertensystems gestaltet sich als äußerst wichtig, da dadurch die Kommunikationsfähigkeit zwischen System und menschlichem Benutzer und mit positivem Ausgang abhängt D.h. Transparenz dient dem Verständnis und der Anwendungsmöglichkeit von Problemlösungsstrategien D.h. Transparenz dient dem Verständnis und der Anwendungsmöglichkeit von Problemlösungsstrategien

23 If- then- rules haben zudem die Eigenschaft folgende users questions zu beantworten: If- then- rules haben zudem die Eigenschaft folgende users questions zu beantworten: 1. How questions: How did you reach this conclusion? 1. How questions: How did you reach this conclusion? 2. Why questions: Why are you interested in this information? 2. Why questions: Why are you interested in this information?

24 Zwei wichtige features um Schlussfolgerungen aus der knowledge base ziehen zu können, lassen sich folgendermaßen bennen: Zwei wichtige features um Schlussfolgerungen aus der knowledge base ziehen zu können, lassen sich folgendermaßen bennen: 1. Forward chaining in rule-based systems 1. Forward chaining in rule-based systems 2. Backward chaining in rule-based systems 2. Backward chaining in rule-based systems

25 Zu 1. (Forward chaining): Startet nicht (wie Backward chaining) mit einer Hypothese, sondern es wird jede Aussage in Verbindung mit der Folgeaussage interpretiert Zu 1. (Forward chaining): Startet nicht (wie Backward chaining) mit einer Hypothese, sondern es wird jede Aussage in Verbindung mit der Folgeaussage interpretiert Forward chaining lässt sich in Prolog leicht realisieren durch die Anwendung von: Forward chaining lässt sich in Prolog leicht realisieren durch die Anwendung von: If Condition then Conclusion If Condition then Conclusion

26 Zu 2.(Backward chaining): Es wird eine Hypothese erstellt und es wird in Anlehnung an die Wissensbasis rückwärts gearbeitet Zu 2.(Backward chaining): Es wird eine Hypothese erstellt und es wird in Anlehnung an die Wissensbasis rückwärts gearbeitet Eine Hypothese wird erstellt Eine Hypothese wird erstellt Die Inferenzmaschine kommt zum Einsatz und es wird ausgehend von der Hypothese backwards der Weg zur Schlussfolgerung gesucht Die Inferenzmaschine kommt zum Einsatz und es wird ausgehend von der Hypothese backwards der Weg zur Schlussfolgerung gesucht

27 If- then-rules sind Regeln, deren Richtung von links nach rechts zu betrachten ist If- then-rules sind Regeln, deren Richtung von links nach rechts zu betrachten ist Die Elemente auf der linken Seite werden als input information (data) bezeichnet Die Elemente auf der linken Seite werden als input information (data) bezeichnet Die Elemente auf der rechten Seite werden als derived information (hypotheses) bezeichnet Die Elemente auf der rechten Seite werden als derived information (hypotheses) bezeichnet

28 Beispiele: Beispiele: Data … goals Data … goals Evidence … hypotheses Evidence … hypotheses Findings, observations … explanations, diagnoses Findings, observations … explanations, diagnoses Manifestations … diagnoses, causes Manifestations … diagnoses, causes

29 APES A Prolog Expert System

30 Allgemeines

31 Apes nutzt als Eingabeformat eine Repräsentation in natürlicher Sprache Apes nutzt als Eingabeformat eine Repräsentation in natürlicher Sprache Das System orientiert sich an gezielten Fragestellungen Das System orientiert sich an gezielten Fragestellungen Beispiel aus der Systembeschreibung: Beispiel aus der Systembeschreibung: What is Object-01 oder Is Object-A a bird?

32 Diesem Fragestellungsmuster entsprechend beginnt der Problemlösungsprozess Diesem Fragestellungsmuster entsprechend beginnt der Problemlösungsprozess Das System sucht nach Regeln und Antworten als Schlussfolgerungen Das System sucht nach Regeln und Antworten als Schlussfolgerungen Wenn eine Lösung gefunden worden ist, so leitet die Inferenzmaschine zur Schlussfolgerung Wenn eine Lösung gefunden worden ist, so leitet die Inferenzmaschine zur Schlussfolgerung Das Eingabeformat ist definiert als Definite Clause Grammar (DCG) Das Eingabeformat ist definiert als Definite Clause Grammar (DCG)

33 Definite Clause Grammar (DCG)

34 DCG: Prolog erlaubt die Arbeit mit kontextfreien Grammatiken DCG: Prolog erlaubt die Arbeit mit kontextfreien Grammatiken Die Umsetzung einfacherer Regeln ist daher in Prolog möglich Die Umsetzung einfacherer Regeln ist daher in Prolog möglich Kontextfreie Regeln haben auf der linken Seite immer genau ein nichtterminales Symbol Kontextfreie Regeln haben auf der linken Seite immer genau ein nichtterminales Symbol

35 Auf der rechten Seite können ein oder mehrere nichtterminale und terminale Symbole stehen (S NP VP usw.) Auf der rechten Seite können ein oder mehrere nichtterminale und terminale Symbole stehen (S NP VP usw.) DCGs sind in den meisten Prolog- Anwendungen enthalten DCGs sind in den meisten Prolog- Anwendungen enthalten

36 Beispiel für die Darstellung von DCG in Prolog: Beispiel für die Darstellung von DCG in Prolog: DCG Darstellung in Prolog s --> np, vp s(X,Z) :- np(X,Y), vp(Y,Z). np --> det, nnp(X,Z) :- det(X,Y), n(Y,Z). vp --> v np vp(X,Z) :- v(X,Y), np(Y,Z). vp --> v vp(X,Z) :- v(X,Z). det --> [die] det([die|W],W). n --> [frau] n([frau|W],W). v --> [läuft] v([läuft|W],W).

37 Komponenten von Apes

38 src knowledge knowledge.pl src knowledge knowledge.pl src knowledge groups feline.pl src knowledge groups feline.pl src knowledge groups pet.pl src knowledge groups pet.pl src engine.pl src engine.pl src helpers.pl src helpers.pl src main.pl src main.pl src parser.pl src parser.pl src processor.pl src processor.pl src tokenizer.pl src tokenizer.pl

39 Knowledge-base (knowledge.pl): Knowledge-base (knowledge.pl): Bezeichnet die Wissensbasis des Expertensystems Bezeichnet die Wissensbasis des Expertensystems Darin enthalten ist der Code eines regelbasierten Expertensystems repräsentiert durch die Darstellung von if- then rules Darin enthalten ist der Code eines regelbasierten Expertensystems repräsentiert durch die Darstellung von if- then rules Prolog-based domain-specific language (DSL) Prolog-based domain-specific language (DSL)

40 engine.pl: engine.pl:

41 helpers.pl: Eine Hilfsdatei, um den Zugang zu den in der knowledge-base generierten if-then-rules zu ermöglichen helpers.pl: Eine Hilfsdatei, um den Zugang zu den in der knowledge-base generierten if-then-rules zu ermöglichen main.pl: vereint alle in Apes enthaltenen Prolog- Dateien zum Programmstart main.pl: vereint alle in Apes enthaltenen Prolog- Dateien zum Programmstart parser.pl: Diese Datei dient dazu das input format in DCG zu generieren parser.pl: Diese Datei dient dazu das input format in DCG zu generieren

42 processor.pl: processor.pl: tokenizer.pl: Dient dazu, Zeichenketten in einzelne Tokens zu zerlegen tokenizer.pl: Dient dazu, Zeichenketten in einzelne Tokens zu zerlegen

43 Anforderungen

44 Die wichtigste Anforderung an den Benutzer des Expertensystems fungiert über korrekte Anweisungen Die wichtigste Anforderung an den Benutzer des Expertensystems fungiert über korrekte Anweisungen Die wichtigsten Fragestellungen sind hierbei: Die wichtigsten Fragestellungen sind hierbei: What is Object-A? und Is Object-A something? What is Object-A? und Is Object-A something?

45 Ist das Programm gestartet erfolgt die Kommunikation zwischen System und Nutzer über die Abfragen: Ist das Programm gestartet erfolgt die Kommunikation zwischen System und Nutzer über die Abfragen: yes. oder y. yes. oder y. no. oder y. no. oder y. why. oder w. why. oder w.

46 Auf diese Weise wird (soll) auf die Fragen des Benutzers geantwortet werden Auf diese Weise wird (soll) auf die Fragen des Benutzers geantwortet werden Bei entsprechender Eingabe (also why) sollen Schlussfolgerungen gezogen werden, inwiefern das Expertensystem auf die Lösung gekommen ist Bei entsprechender Eingabe (also why) sollen Schlussfolgerungen gezogen werden, inwiefern das Expertensystem auf die Lösung gekommen ist

47 Zum Aufbau der knowledge-base dient das Hinzufügen von: Zum Aufbau der knowledge-base dient das Hinzufügen von: rules rules (Beispiel: "if animal has scales and animal has cold-blood then animal is a reptile.) (Beispiel: "if animal has scales and animal has cold-blood then animal is a reptile.) facts facts (Beispiel: a dog is a pet.)

48 Ebenso sind Gruppen (groups) zu bilden, die entsprechende vom Benutzer definierte Objekte unter eine Gemeinschaft von Objekten mit gleichen oder ähnlichen Merkmalen stellen Ebenso sind Gruppen (groups) zu bilden, die entsprechende vom Benutzer definierte Objekte unter eine Gemeinschaft von Objekten mit gleichen oder ähnlichen Merkmalen stellen rules sind unter knowledgle.pl gespeichert rules sind unter knowledgle.pl gespeichert facts sind unter knowledge/groups generiert facts sind unter knowledge/groups generiert

49 Wichtiges Hilfsmittel zum Aufbau der knowledge-base ist der Debugger Wichtiges Hilfsmittel zum Aufbau der knowledge-base ist der Debugger Dieser erlaubt das Überprüfen der generierten Regeln im Zusammenspiel der einzelnenn Dateien, d.h. parser, tokenizer, processor, knowledge, helpers, engine und main Dieser erlaubt das Überprüfen der generierten Regeln im Zusammenspiel der einzelnenn Dateien, d.h. parser, tokenizer, processor, knowledge, helpers, engine und main


Herunterladen ppt "Expertensysteme. Was ist ein Expertensystem? Allgemeine Definition: System von Softwaretechnologien, das auf der Basis von Expertenwissen Problemlösungsstrategien."

Ähnliche Präsentationen


Google-Anzeigen