Expertensysteme.

Slides:



Advertisements
Ähnliche Präsentationen
Be.as WEB Technologie
Advertisements

Persistente Domänenmodelle mit JPA 2.0 und Bean Validation
6. Regelbasierte Systeme
WebQuest 1. Thema: Ein Problem oder Rätsel soll gelöst werden. Eine Zusammenfassung wird erarbeitet. Man schafft ein kreatives Werk. Es handelt sich um.
FH-Kurs Wissensmanagement
Kapitel 6. Suchverfahren
8. Formale Sprachen und Grammatiken
Ich habe nie gelernt, Aufgaben zu lösen
Eine moderne Fremdsprache in der Schule lernen
Kapitel 4 Datenstrukturen
Objektorientierte Programmierung
Maschinelle Übersetzung I
Konzeption und Realisierung eines Text- Analysesystems zur Automatisierung der Bewerberauswahl von diesem Datenformat jede beliebige Anwendung adaptieren.
On a Buzzword: Hierachical Structure David Parnas.
Parser generieren Yet Another Compiler – Compiler YACC.
FH-Hof Grammatiken Richard Göbel. FH-Hof Begriffe Eine Grammatik definiert die Struktur (Syntax) einer Zeichenkette Eine Grammatik definiert nicht die.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Kapitel 1 Die natürlichen und die ganze Zahlen. Kapitel 1: Die natürlichen und die ganzen Zahlen © Beutelspacher/Zschiegner April 2005 Seite 2 Inhalt.
Datenbankentwurf mit Hilfe des ER-Modells entwickeln
Fakten, Regeln und Anfragen
Prolog Grundkurs WS 98/99 Christof Rumpf
Einführung in die Syntax
Access 2000 Datenbanken.
SoSe 2004 Spree Entwicklung einer Wissensbasis Aufgaben und Techniken.
DVG Einführung in Java1 Einführung in JAVA.
DVG Klassen und Objekte
UML Begleitdokumentation des Projekts
Spatial Decision Support Systems (SDSS)
Maschinelles Lernen und automatische Textklassifikation
Einstellungen im Web für Outlook
Eignung von Grammatik-basiertem Layout für grafische Programmiersprachen Seminar Layout-Algorithmen für Graphen Institut für Informatik Christian-Albrechts.
Don`t make me think! A Common Sense Approach to Web Usability
Automatic composition of UI mashups Vortrag zum Seminar Webengineering 2011 Michael Reißner.
Wissensbasierte Systeme JESS Java Expert System Shell.
7th German CDISC User Group Basel, 11. März 2010 Willkommen zum Define.xml Workshop.
Entwicklung der Programmiersprachen
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil I): Simulation und 3D Programmierung Prof.
Reasoner Semantische Interoperabilität
Problem Solving Ein Problem erkennen und lösen
CGI (Common Gateway Interface)
Knowledge-Based system
Erfindervon Fuzzy Logic
Wasserfallmodell und Einzelbegriffe
Paradigmenwechsel in der Unternehmensmodellierung Prof. Dr. Wolfgang Voigt Dipl.-Ing. Päd. Alexander Huwaldt UML Extrakt UML Seminar, Chemnitz
Das Kausalnetz als Kern eines DSS
Clean Code Software-Entwicklung als Handwerkskunst Thomas Nagel, November 2011.
verstehen planen bearbeiten
Objectives Verstehen was unterDelegate verstanden wird
Presentation for parent / teacher meetings Information about English in the Primary schools.
Torque in Turbine Team 4 Josef Bohninger Thomas Lindenhofer
Why Connectionism? Friedrich & Assadollahi. Satz Fritz geht nach Hause.
PHP: Operatoren und Kontrollstrukturen
Informatik Formale Sprachen 1.2 Grammatiken formaler Sprachen
Der formelle Imperativ – the Imperative
Coordinating Conjunctions Why we need them & how to use them deutschdrang.com.
Konjunktionen & Indirekte Fragen {Conjunctions}
7. Formale Sprachen und Grammatiken
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil I): Simulation und 3D Programmierung Prof.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Rules of Play - Game Design Fundamentals by Katie Salen and Eric Zimmerman Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung.
Kapitel 1 Grammar INDEX 1.Questions 2.Nouns 3.Definite Articles 4.Subjects 5.Subject Pronouns & Sein.
Imperfekt (Simple Past) Irregular or strong verbs
Kapitel 2 Grammar INDEX 1.Subjects & Verbs 2.Conjugation of Verbs 3.Subject Verb Agreement 4.Person and Number 5.Present Tense 6.Word Order: Position of.
Der die das ein eine ein Wie sagt man “the” auf Deutsch? Wie sagt man “a” auf Deutsch?
Pointer. Grundsätzliches: Im Arbeitsspeicher werden Daten gespeichert. Um auf die Daten eindeutig zugreifen zu können, werden diesen Daten Adressen zugeordnet.
Kapitel 9 Grammar INDEX 1.Formal Sie- Command 2.There Is/There Are 3.Negation: Nicht/Klein.
Gießen, Textmapping am Beispiel des Leseverstehens Dr. Claudia Harsch IQB Berlin
Word order: 1.In a main clause the VERB is the second idea: Helgakommteben aus der Bäckerei This may not be the second word Meiner Meinung nachsind Hobbys.
 Präsentation transkript:

Expertensysteme

Was ist ein Expertensystem?

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

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 Die Qualität eines Expertensystems hängt von der hohen bzw. geringen Fehlerquote von Problemlösungen ab

Die Wissensbasis

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

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

Aufgaben von Expertensystemen

Dateninterpretation Überwachung Diagnose Therapie Planung Entwurf Prognose

Realisierung

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

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

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

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 Unterstützendes Aggregat während des Problemlösungsprozess (problem-solving-process)

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 shell ist abhängig vom jeweilgen Aufgaben- oder Fachgebiet der generierten knowledge base

Inference engine User interface Knowledge base User Shell

Regelbasierte Expertensysteme if-then-rules

Fokus auf Regelbasierte Expertensysteme 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 sind durch verschiedene Formalismen interpretierbar: If precondition P then conclusion C If situation S then action A If conditions C1 and C2 hold then condition C does not hold

Eigenschaften von if-then- rules: 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

Modifiability: (as a consequence of modularity): old rules can be changed relatively independent of other rules Support system‘s transparency

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

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

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 2. Backward chaining in rule-based systems

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: If Condition then Conclusion

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 Die Inferenzmaschine kommt zum Einsatz und es wird ausgehend von der Hypothese backwards der Weg zur Schlussfolgerung gesucht

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 rechten Seite werden als derived information (hypotheses) bezeichnet

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

APES A Prolog Expert System

Allgemeines

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

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

Definite Clause Grammar (DCG)

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

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

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, n np(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).

Komponenten von Apes

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

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

engine.pl:

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 parser.pl: Diese Datei dient dazu das input format in DCG zu generieren

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

Anforderungen

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

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

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

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

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 facts sind unter knowledge/groups generiert

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