Grundbegriffe der Künstlichen Intelligenz http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (1) Alter Menschheitstraum: Simulation menschlicher Leistungen durch eine Maschine („Homunculus“) Ausgangspunkt unserer Überlegungen ist der Begriff „menschliche Intelligenz“. – Für Intelligenz gibt es keine umfassende Definition. – Es gibt auch kein Schema, wie Intelligenz gemessen werden kann (Problematik der Intelligenztests). http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (2) Liste von Eigenschaften, die Intelligenz voraussetzen (Dengel 1994): • geistige Grundhaltungen (Glauben, Wünsche, Absichten) • Fähigkeit zur Zerlegung komplexer Probleme in überschaubare Teilaufgaben • Erkennen von Zusammenhängen und Ableiten neuer Fakten aus existierenden Tatsachen • Verstehen von mehrdeutigen oder unvollständigen Sachverhalten http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (3) • Fähigkeit zur Vorhersage • Bewerten von Alternativen in Hinblick auf die Handlungsauswahl • Fähigkeit zur Selbstreflexion • Fähigkeit zur Generalisierung und Abstraktion • Weiterverarbeitung visueller Sinneseindrücke • Wissensaufnahme und -bereicherung (Lernen) • Fähigkeit zur Kommunikation http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (4) Achtung: Allerdings wird intelligentes Verhalten nicht alleine durch das Vorhandensein dieser Eigenschaften erreicht. Zusätzlich muß noch ein fundierter Wissensstand über das jeweilige Problem vorhanden sein, das eine gezielte Interpretation der Eindrücke erlaubt. vgl. letzte Vorlesung http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (5) Definition Artificial Intelligence (AI) (Feigenbaum): „Artificial Intelligence (AI) is the part of computer science concerned with designing intelligent computer systems, that is, systems that exhibit the characteristics we associate with intelligence in human behavior - understanding language, learning, reasoning, solving problems, and so on.“ Ziel des Forschungsgebietes AI = KI = Künstliche Intelligenz: Simulation menschlicher Intelligenz durch geeignete intelligente Computerprogramme. http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (6) Prägung des Begriffes “artificial intelligence” 1956 durch J. McCarthy (Geburtsstunde der AI): Durchführung einer Sommer-Konferenz mit namhaften Computerwissenschaftlern am Dartmouth-College in New Hampshire • Ziel war es, Überlegungen anzustellen, wie intelligent denkende Maschinen programmiert werden können. • Ausarbeitung eines Forschungsprogrammes, das auf der Idee basierte, die dem intelligenten Verhalten zugrundeliegenden geistigen Prozesse formal zu beschreiben und durch geeignete Programmiersprachen auf Computern zu simulieren. • Formalisierung auf Basis von symbolischen Ausdrücken. http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (7) Frage: „Können Maschinen denken?“ Um auf diese Frage eine Antwort zu finden, wurde vom englischen Computerpionier A. Turing 1950 der sog. Turing-Test entwickelt) Versuchsanordnung: • Computer • Mensch Raum A • Interviewer Raum B http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (8) Turing-Test: Mensch Computer ? Interviewer http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (9) Der Interviewer stellt Fragen aus beliebigen Fachgebieten seiner Wahl sowohl an den Menschen als auch an den Computer mit dem Ziel herauszufinden, welcher von beiden eine entsprechende Antwort gegeben hat. Der Computer hat den Turing-Test bestanden, falls für den Interviewer im Laufe der Testserie nicht erkennbar war, ob die Antwort von einem Computer oder Menschen erbracht wurde. http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (10) Strategien des Computers und der befragten Person: • befragte Person: ... wird immer wahrheitsgemäß antworten und den Interviewer davon zu überzeugen versuchen, daß er der Mensch und der andere der Computer ist. • Computer: ... dieser ist darauf programmiert unwahre Antworten zu geben, indem er versucht, einen Menschen zu imitieren („imitation game“) und bemüht ist, dies dem Interviewer einzureden. http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (11) Beispiele für Versuche des Interviewers, den Computer zu entlarven: Beispiel 1: Lösung einer komplexen mathematische Berechnung • befragte Person: ... verhält sich normal (d.h. gemäß seiner Fähigkeiten) und verrechnet sich vielleicht • Computer: ... möchte der Computer den Turing-Test bestehen, so muß er wissen, bei welcher Komplexität von mathematischen Aufgaben es notwendig ist, eine falsche Antwort zu geben, um sich nicht zu verraten. http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (12) Beispiele für Versuche des Interviewers, den Computer zu entlarven: Beispiel 2: Interviewer frägt nach Meinung bez. Eines Liebesgedichtes. • befragte Person: ... verhält sich wieder normal; kennt dieses Gefühl. • Computer: ... möchte der Computer den Turing-Test bestehen, so muß er Kenntnisse über das Gefühls- und Seelenleben des Menschen besitzen (vortäuschen). http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (13) Eigenschaften des Turing-Tests (1): • Begriff „Intelligenz“ nicht schwammig, sondern objektiv und klar definiert. Intelligenz = Verhalten einer bekannten intelligenten Person in Bezug auf bestimmte Fragestellung. • Es wird vermieden, auf so unbeantwortbare Fragen wie „Sind elektronische Bauteile wirklich die geeignete Technologie, um Intelligenz simulieren zu können?“ oder „Besitzen Computer Bewußtsein?“ einzugehen. http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (14) Eigenschaften des Turing-Tests (2): • Menschen werden beim Turing-Test gegenüber Computern nicht begünstigt, da für den Interviewer in seinem Urteil ausschließlich die Qualität der Antworten auf bestimmte Fragen zählt. • Der Turing-Test ist nicht bloß ein Gedankenexperiment aus den fünfziger Jahren, sondern findet auch heute noch Verwendung (Bsp. Testen von Expertensystemen). http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (15) Testen von Expertensystemen: Frage an die Testpersonen: Experte Expertensystem Welche Antwort stammt von wem ? http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (16) Kritikpunkte am Turing-Test: • Der Turing-Test ist allzusehr auf mathematisch, symbolische Aufgaben ausgerichtet. Kenntnisse im Bereich Erkennung und Handfertigkeit (auch Teilbereiche der menschlichen Intelligenz) werden z.B. nicht getestet. • Umgekehrt wird immer wieder bemängelt, daß der Test nur darauf ausgerichtet ist, den Menschen zu „emulieren“. (Ist es notwendig, daß der Computer z.B. bei komplexen Berechnungen wirklich eine falsche Antwort gibt, um sich nicht zu verraten?). http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (17) Sinnvollere Ansicht: Computer und Mensch verkörpern jeweils andere Arten von Intelligenz: – Computer: beinahe Unfehlbarkeit des digitalen Speichers ist Intelligenzleistung. – Mensch: Empfindungen beim Hören eines bestimmten Musikstücks. http://www.dke.univie.ac.at Deep Blue Source: http://photos.upi.com http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (18) In der KI gibt es zwei Richtungen betreffend die Frage, welche geistigen Qualitäten es gibt: • starke KI: jede geistige Aktivität ist nichts anderes als das Ablaufen eines Algorihmus. Die Prozesse im menschlichen Gehirn (Denken, Fühlen, Verstehen usw.) sind nichts anderes als die Erscheinungen beim Durchführen eines ungeheuren komplexen Algorithmus. Behauptung: Äquivalenz zwischen einem geistigen Prozeß im Gehirn und einem Algorithmus. http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (19) Starke KI: = Denkprozeß Ablauf in Form eines Algorithmus prinzipiell möglich (Voraussetzung: Aufhebung exist. Speicher- und Prozessorbeschränkungen) http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (20) entgegengesetzte Richtung (z.B. J.R. Searle): menschliches Denken und Algorithmus im Computer (arbeitet mit formalen Symbolen) können nicht gleichgesetzt werden. Berühmtes Beispiel von Searle: Gedankenexperiment „Chinesisches Zimmer“: – Hier besteht zwar der Computer den Turing-Test und erbringt damit eine intellektuelle Leistung – Aber: bei der Lösung der Aufgabenstellung hat das Moment des „Verstehens“ (menschl. Begriff) völlig gefehlt. http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (21) Versuchsanordnung „Chinesisches Zimmer“ (1): • Person in abgeschlossenem Zimmer • auf dem Tisch: Körbe mit auf Kästchen aufgedruckten Symbolen, die unverständlich sind. (z.B. unbekannte Sprache, z.B. Chinesisch) • Person bekommt Buch (Regelbuch), das in bekannter Sprache verfasst ist: Darin ist beschrieben, nach welchen Regeln die chinesischen Zeichen miteinander kombiniert werden müssen (Identifikation der Zeichen durch die Form). http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (22) Versuchsanordnung „Chinesisches Zimmer“ (2): • Beispiel für Regel aus dem Regelbuch: „Nimm ein bestimmtes Zeichen, das aussieht wie ein Krakel aus Korb 1 und lege es neben dem SchnörkelZeichen aus Korb 2.“ • Leute von außerhalb des Zimmers, die Chinesisch verstehen, reichen durch einen Schlitz Stöße von Kärtchen mit Symbolen in das Zimmer („Fragen“). • Die Person wendet auf diesen Input das Regelbuch an und reicht nun ihrerseits Kartenstöße aus dem Zimmer hinaus („Antworten“). http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (23) Übersetzung der Begriffe aus dem Gedankenexperiment in die Computerterminologie: • Regelbuch = Computerprogramm (Anm: Das Regelbuch muß dabei so verfaßt sein, daß die produzierten Antworten in einem Chinesisch sind, daß sie von denen eines gebürtigen Chinesen ununterscheidbar sind.) • die Person = Computer • Stöße mit Kärtchen auf dem Tisch = Daten • hineingereichte Daten = Fragen = Input • hinausgereichte Daten = Antworten = Output http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (24) Beispiel: • hineingereichter Stoß = Frage: „Welche ist ihre Lieblingsfarbe?“ (Person im Zimmer versteht diese Frage nicht). • Anwendung des Regelbuchs = Sequenz von Symbolen auf Kärtchen ist Antwort • hinausgereichter Stoß: „Meine Lieblingsfarbe ist blau, aber grün mag ich auch sehr.“ Turing-Test ist zwar bestanden, aber Moment des Verstehens (fremde Sprache) hat völlig gefehlt. http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (25) Reihe von Computerprogrammen, die Intelligenz ohne eigentliches Verständnis simulieren. Beispiel: Bereich Psychologie, Arbeiten von Colby und Weizenbaum (ELIZA-Programm, Simulation eines Psychotherapeuten) Funktionsweise eines derartigen Computersystems: • Grundwortschatz des Computers • System verwendet Grundwortschatz und Patientenaussagen, um Kommentare oder intelligente Antworten zu generieren. • Dialog über Terminal http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (26) Auszug aus einem Dialog: Patient - Therapeut (Computer): Therapeut: “Wie kann ich Ihnen helfen” Patient: “Ich weiß nicht” Therapeut: “Versuchen Sie mir darüber etwas zu erzählen” Patient: “Nein” Therapeut: “Können Sie das erläutern” Patient: “Ich bin heute krank und müde” Therapeut: “Haben Sie eine Vermutung warum” Patient: “Ja, ich bin alt” http://www.dke.univie.ac.at Grundbegriffe der Künstlichen Intelligenz (27) Auszug aus einem Dialog (2): Patient - Therapeut (Computer): Therapeut: “Bitte reden Sie weiter” Patient: “Ich habe anscheinend an allem das Interesse verloren” Therapeut: “Erzählen Sie mir mehr über diese Gefühle” Patient: “Ich habe auch eine Vermutung, warum ich mich so fühle” Therapeut: “Tatsächlich” Patient: “Anscheinend fehlt mir eine Familie” Therapeut: “Warum haben Sie das Gefühl, Ihnen fehlt eine Familie” Patient: “Es bedeutet eine Herausforderung” Therapeut: “Warum ist das wichtig für Sie” http://www.dke.univie.ac.at Wissensrepräsentationsformalismen (Symbolische KI) http://www.dke.univie.ac.at Teil Symbolische KI • Ebene Denkmodelle (gedankliche Konzeption) – Einführung in die Wissensrepräsentation • • • • Frames Regeln Semantische Netze Logik • Ebene Realisierung (Implementierung auf Computer) – (Programmiersprache PROLOG) • Ebene Einsatz im Unternehmen – Phasen im Knowledge Engineering; Berufsbild Knowledge Engineer http://www.dke.univie.ac.at Methoden und Anwendungsgebiete Natürlichsprachliche Systeme Bilderkennung Wissensrepräsentation Robotik KI-Sprachen Suchverfahren Inferentielle Prozesse Expertensysteme Lernen, Wissenserwerb Spiele Programmsynthese, Verifikation Problemlösen, Planen Deduktionssysteme http://www.dke.univie.ac.at Grundbegriffe der Wissensrepräsentation (1) In der Vorlesung zu behandelnde Formalismen der Wissensrepräsentation: • • • • Rahmen (Frames) Produktionsregeln Grundbegriffe der Aussagen- und Prädikatenlogik Semantische Netze http://www.dke.univie.ac.at Grundbegriffe der Wissensrepräsentation (2) Kriterien für die Formalismen: • Weltausschnitt Hier geht es um die Frage, welcher Teil der Welt modelliert wird. • Detaillierungsgrad Wie gut ist der Formalismus geeignet, um die Details der Realität abzubilden? • semantische Primitive Welche Konstrukte bietet der Formalismus, um Semantik darzustellen? http://www.dke.univie.ac.at Grundbegriffe der Wissensrepräsentation (3) • Änderbarkeit Ist das repräsentierte Wissen modular aufgebaut, so können Änderungen in der Wissensbasis leichter durchgeführt werden. • effiziente und einfache Verarbeitungsmechanismen Lassen sich mit dem Formalismen leicht Inferenzen durchführen, also neues aus existierendem Wissen generieren? • Benutzbarkeit Ist der Formalismus anwenderfreundlich? http://www.dke.univie.ac.at Grundbegriffe der Wissensrepräsentation (4) Unterscheidung deklarative/prozedurale Darstellungsart: • deklarative Darstellung – Wissen was – im Vordergrund stehen statische Aspekte – Fakten über Objekte und deren Bezeichnungen Beispiele: “Meine Telefonnummer lautet 45645-234”, “Die Liste (2 4 6 8) ist sortiert”. • prozedurale Darstellung – Wissen wie – Im Vordergrund stehen dynamische Aspekte – Manipulation und Finden von Daten, Programmen Beispiele: Nachschlagen einer Telefonnummer im Uni-Telefonregister oder die Angabe eines Sortieralgorithmus http://www.dke.univie.ac.at Grundbegriffe der Wissensrepräsentation (5) Taxonomie der Formalismen zur Wissensrepräsentation: • Regeln Regeln sind Formalismen, die definieren, welche Handlungen unter welchen Voraussetzungen zulässig sind. • Objektorientierte Wissensrepräsentation Die Repräsentation erfolgt auf Basis der objektorientierten Modellierung. • Semantische Netze und Objekt-Attribut-Wert-Tripel Wissen wird in Form eines gerichteten Graphen (Netzwerkstruktur) mit Knoten und Kanten repräsentiert, wobei die Knoten für Sachverhalte und die Kanten für Beziehungen zwischen den Sachverhalten stehen. • Logik Die Formalisierung erfolgt durch eine Sprache der formalen Logik (z.B. Prädikatenlogik). http://www.dke.univie.ac.at Grundbegriffe der Wissensrepräsentation (6) • Einordnung hinsichtlich des Kriteriums deklarative/prozedurale Repräsentation: Prädikatenlogik Produktionsregeln Semantische Netze Objekt-AttributWert-Tripel deklarative Wissensrepräsentation Frames objektorientierte Programmierung prozedurale Wissensrepräsentation http://www.dke.univie.ac.at Frames (1) Definition eines Frames (Minsky 1975): Here is the essence of the frame theory: When one encounters a new situation (or makes a substantial change in one’s view of a problem) one selects from memory a structure called a “frame”. This is a remembered framework to be adapted to fit reality by changing details as necessary. Frames = komplexe Datenstrukturen zur Beschreibung stereotyper Situationen. Denkprozesse sind für Minsky komplexe Netzwerke von Frames, zwischen denen Nachrichten ausgetauscht werden. http://www.dke.univie.ac.at Frames (2) Allgemeine Struktur eines Frames: Frame-Name Eigenschaften Slot 1 Wert 1 Prozedur Slot 2 Wert 2 Prozedur Slot 3 Wert 3 ... ... ... ... Slot n Wert n http://www.dke.univie.ac.at Frames (3) Frame Auto: EIN_AUTO Länge Leistung Motor ... Rahmen beschleunigen betanken Methode (prozeduraler Wissensteil) bremsen ... Slot (deklarativer Wissensteil) http://www.dke.univie.ac.at Frames (4) Ein Frame (~ Objekt) kann sein: • • • • Klasse von Objekten Unterklasse Instanz selbständiges Objekt Klassen legen die Verhaltensweisen für ihre Objekte fest (vgl. Vererbung in der objektorientierten Programmierung). Bei der Instanziierung von Frames müssen den Slots konkrete Einträge (auch „values“, „entries“ oder „fillers“ genannt), zugewiesen werden, sofern sie nicht mit Default-Werten vorbesetzt sind. http://www.dke.univie.ac.at Frames (5) Arten von Einträgen in einem Slot: • normale Attribute Hier ist der Slot ein benannter Platzhalter, dem bei der Instanziierung gewisse Einträge zugewiesen werden. • Default-Werte Defaults sind Standardbelegungen, die bei der Instanziierung übernommen werden, sofern keine anderen Werte vorliegen. • andere Frames oder Verweise auf andere Frames Der Slot erhält seine Belegung durch Verweise auf andere Frames. Entweder es wird auf untergeordnete Frames verwiesen (subframes), die Teilaspekte beschreiben oder auf übergeordnete Frames (Klassen-Frames). • Prozeduren Prozeduren können bei der Instanziierung oder bei anderen Gelegenheiten ausgeführt werden und zu Belegungen für Slots führen. Dieser Fall wird auch als procedural attachment bezeichnet. http://www.dke.univie.ac.at Frames (6) Folgende Prozeduren können zur Anwendung kommen: • “if added”-Prozedur Diese Prozedur wird ausgeführt, wenn neue Information in den Slot eingetragen wird. • “if removed”-Prozedur Diese Prozedur wird ausgeführt, falls eine Information aus dem Slot entfernt wird. • “if needed”-Prozedur Diese Prozedur wird in jenem Fall ausgeführt, wo Informationen aus dem Slot benötigt werden, dieser aber leer ist. • “if changed”-Prozedur Diese Prozedur gelangt zur Ausführung, falls der Wert des Slots geändert wird. http://www.dke.univie.ac.at Frames (7) Beispiel: Frame Waschmaschine Waschmaschine Spezialisierung von ELEKTROGERÄT Generalisierung von WASCHVOLLAUTOMAT AEG-2000-auto, MIELE 429, BOSCH if added: benutze subframe Objekt Kleidungsstück, Wäsche if added: benutze subframe Zweck Waschen, Spülen, Schleudern Teile Trommel, Schlauch, Motor, Gehäuse, Knöpfe Material Blech, Plastik, Gummi Default: Blech Farbe weiss, grau, braun if needed: WASCHMASCHINE_ANSEHEN Baujahr 1998 if changed: Fehler: Wertänderung nicht möglich! http://www.dke.univie.ac.at Frames (8) Das Programmieren eines rahmenorientierten Systems beinhaltet 3 wichtige Aktivitäten: • Definition von passenden Frames • Instanziieren von Frames • Austausch von Nachrichten zwischen Rahmen (message passing) http://www.dke.univie.ac.at Frames (9) Nachrichten werden von einem Rahmen an einen anderen gesendet und lösen i.a. die Ausführung einer Methode beim empfangenden Rahmen aus. Die Ausführung einer Methode kann bewirken, daß • der Datenbereich des Empfängers verändert wird • neue Exemplare erzeugt werden • eine neue Nachricht verschickt wird http://www.dke.univie.ac.at Frames (10) Eine Nachricht ist die einzige Möglichkeit, auf die Daten eines Rahmens zuzugreifen: Nachrichten bestehen aus höchstens drei Teilen: • Empfänger = Rahmen, an den die Nachricht gerichtet ist • Selektor = Methode, deren Ausführung gewünscht ist • Argumente = Was soll in die gewünschte Operation einbezogen werden? Nach Ausführung der Methode wird an den absendenden Rahmen ein Quittung gesendet. http://www.dke.univie.ac.at Frames (11) EMPFÄNGER SELEKTOR ARGUMENT(E) mein_auto betanken 40 mein_auto fahren Hamburg-Berlin 5 + 6 TEXT + „Hallo Leser“ Bildschirm rotiere FENSTER:90 http://www.dke.univie.ac.at Frames (12) Es gibt nicht nur Beziehungen zwischen Klassen und Exemplaren sondern auch zwischen verschiedenen Klassen • Diese Beziehungen bestehen im wesentlichen aus der Generalisierung bzw. Spezialisierung von Eigenschaften (vgl. Waschmaschinen-Beispiel) und werden als Vererbung bezeichnet. • Anordung von Klassen in sog. Ober- und Unterklassen http://www.dke.univie.ac.at Frames (13) Beispiel für Klassenhierarchie: EIN-FAHRZEUG EIN_AUTO EIN_ÖFF_VERKEHRSMITTEL EIN_SCHIENENFAHRZEUG EIN_KOMBI EIN_BUS EIN_ZUG http://www.dke.univie.ac.at Frames (14) Vor- und Nachteile von Frames: Vorteile: • dem Menschen sehr entgegenkommende Repräsentation • durch Vererbungskonzept wird Speicherplatz eingespart. • Der Wissensbasis liegt mit der Klassenhierarchie eine bestimmte Organisation zugrunde. http://www.dke.univie.ac.at Frames (15) Nachteile: • In der Realität gibt es Objekte, die beträchtlich von den Prototypen abweichen (Eine FrameRepräsentation derartiger Objekte erhöht die Komplexität des ganzen Systems, da für eine Instanz eines solchen Objektes einzigartige Merkmale abgespeichert werden müssen.) • Schwierigkeiten in framebasierten Systemen bei der Abbildung heuristischen Wissens (z.B. Abbildung der Beziehungen zwischen Symptomen und Diagnose in einem medizinischen Diagnosesystem) http://www.dke.univie.ac.at Produktionsregeln (1) Allgemeine Form einer Regel: wenn Prämisse(n) dann Konklusion(en) Statt Prämisse werden auch oft die Begriffe “Bedingung”, “Voraussetzung” oder “Situation” und statt Konklusion die Begriffe “Aktion” oder “Hypothese” verwendet. Obige Form der Regel sagt aus, daß im Falle der Erfüllung der Prämisse(n) die Konklusion(en) zur Ausführung gelangt (gelangen). http://www.dke.univie.ac.at Produktionsregeln (2) Einfachste Form der Regel: Lediglich eine Prämisse (P) wird mit einer Konklusion (Q) kombiniert: wenn P dann Q Diverse Variationsmöglichkeiten: Eine Möglichkeit besteht darin, sowohl im Prämissen- als auch Konklusionsteil Konjunktionen zuzulassen: wenn P1 und P2 und ... Pn dann Q1 und Q2 und ... Qm Interpretation: Falls alle Prämissen erfüllt sind, werden die Konklusionen auf der rechten Seite ausgeführt. http://www.dke.univie.ac.at Produktionsregeln (3) Auf der linken Seite sind auch Disjunktionen zugelassen: wenn P1 oder P2 oder ... Pn dann Q Dies bedeutet dann, daß bereits eine erfüllte Prämisse ausreicht, um die Konklusion auf der rechten Seite auszulösen. Die disjunktive Darstellung kann auch folgendermaßen geschrieben werden: wenn P1 dann Q wenn P2 dann Q ... wenn Pn dann Q http://www.dke.univie.ac.at Produktionsregeln (4) Ein Produktionssystem besteht allgemein aus folgenden Komponenten: • Wissensbasis • Faktenbasis (Datenspeicher) • Inferenzmechanismus http://www.dke.univie.ac.at Produktionsregeln (5) Architektur eines Produktionssystems Inferenzmechanismus Faktenbasis Wissensbasis Recognize Select Fakten Regeln Act http://www.dke.univie.ac.at Produktionsregeln (6) Prinzip des „Recognize-Select-Act“-Mechanismus: • Recognize-Schritt: Zunächst versucht der Inferenzmechanismus für die aktuellen Falldaten eine anwendbare Regel zu bestimmen. Dazu werden in einem ersten Schritt in einer Liste alle anwendbaren Regeln zusammengestellt. • Select-Schritt: Anwendbar sind alle jene Regeln, wo die Prämissen durch die Falldaten erfüllt sind. Häufiges Problem: Nicht nur eine einzige Regel, sondern mehrere Regeln sind anwendbar. Notwendig: Konfliktlösungsstrategie, um jene Regel zu bestimmen, die als nächste ausgewählt wird. http://www.dke.univie.ac.at Produktionsregeln (7) Häufige Konfliktlösungsstrategien: • Auswahl nach der Reihenfolge • Auswahl nach der Spezifität Die Regel “wenn A und B dann C” ist spezifischer als “wenn A dann D”. • Auswahl nach Aktualität Eine Regel ist dabei umso aktueller, je neuer die Aussagen ihrer Prämissen im Datenspeicher sind. • Auswahl aufgrund von Zusatzwissen Dabei können entweder statische Regelprioritäten vergeben werden oder Metaregeln zum Einsatz kommen. http://www.dke.univie.ac.at Produktionsregeln (8) • Act-Schritt: Ist nun eine Regel ausgewählt, besteht der letzte Schritt schließlich in der Anwendung (= „Feuern“ der Regel). Dabei werden die neu generierten Fakten zur Faktenbasis hinzugefügt. Der “Recognize-select-act”-Zyklus wird solange ausgeführt, bis • ein vorher spezifiziertes Terminierungskriterium erfüllt ist (z.B. nur eine gewisse Anzahl von Regeln darf feuern) oder • keine Regel aus der Wissensbasis mehr anwendbar ist. http://www.dke.univie.ac.at Einführung in Produktionsregeln (9) 2 mögliche Arbeitsweisen bei Regeln: • Vorwärtsverkettung = forward chaining = datengetriebene Inferenz. Die Wissensbasis wird von den Prämissen hin zu den Konklusionen durchlaufen. • Rückwärtsverkettung = backward chaining = zielgetriebene Inferenz. Umgekehrter Weg, also von den Konklusionen rückwärts gehend zu den notwendigen Prämissen. http://www.dke.univie.ac.at Einführung in Produktionsregeln (10) Arbeitsweise bei der Vorwärtsverkettung: • Der Inferenzmechanismus geht dabei von der Ausgangskonstellation der Wissensbasis aus und versucht Zielaussagen zu generieren, indem sukzessiv Regeln angewendet werden. • Zyklisch wird überprüft, ob die Voraussetzungen der Regeln gültig sind. Für den Fall, daß die Prämissen mehrerer Regeln erfüllt sind, existieren Konfliktlösungsmechanismen. • Das Verfahren terminiert dann, falls keine Regel mehr feuern kann oder ein bestimmtes Abbruchkriterium erfüllt ist. http://www.dke.univie.ac.at Einführung in Produktionsregeln (11) Arbeitsweise bei der Rückwärtsverkettung: • Ausgangspunkt = Zielzustand • Es wird nun versucht, diesen Zielzustand aus der Wissensbasis abzuleiten, also zu bestimmen, ob die dem Zielzustand entsprechende Aussage wahr ist. • Zuerst wird begonnen nachzusehen, ob der Zielzustand als • Faktum existiert. http://www.dke.univie.ac.at Einführung in Produktionsregeln (12) • Ist dies nicht der Fall, so wird untersucht, ob die Prämissen jener Regel als Fakten in der Faktenbasis existieren, die den Zielzustand als Konklusion enthalten. Trifft dies nicht zu, so kann es sein, daß diese Fakten ja Konklusionen anderer Regeln sind. Es wird also rückwärtsgehend überprüft, ob die zur Generierung der Zielaussage notwendigen Fakten vorhanden sind bzw. generiert werden können => Ist dies der Fall, dann kann die Zielaussage bewiesen werden. http://www.dke.univie.ac.at Einführung in Produktionsregeln (13) Veranschaulichung der Grundprinzipien bei der Vorund Rückwärtsverkettung durch ein Beispiel. Gegeben ist folgende Wissensbasis: Regel 1: wenn F und B dann Z Regel 2: wenn C und D dann F Regel 3: wenn A dann D Faktenbasis: enthält die Fakten A, B, C, E, G und H. http://www.dke.univie.ac.at Einführung in Produktionsregeln (14) Vorwärtsverkettung: • Regel 3 erfüllt als einzige die Prämissen. Diese Regel wird ausgeführt und somit das Faktum D generiert. • Nun betrachten wir wieder, welche Prämissen von Regeln erfüllt sind. Einzig für Regel 2 trifft dies zu. • Somit wird diese Regel ausgeführt und das Faktum F erzeugt. • Schließlich sind die Prämissen von Regel 1 erfüllt. Diese Regel wird ausgeführt und der Zielzustand Z erzeugt. Da keine Regel mehr feuern kann, ist die Vorwärtsverkettung zu Ende. http://www.dke.univie.ac.at Einführung in Produktionsregeln (15) Rückwärtsverkettung: Ausgangspunkt = Zielzustand Z; Frage: Kann dieser Zielzustand aus der Wissens- und Faktenbasis abgeleitet werden? • Faktum Z ist nicht in der Faktenbasis enthalten. • Der nächste Schritt besteht darin, zu überprüfen, ob Z vielleicht als Konklusion in einer Regel auftritt. • Dies ist bei Regel 1 der Fall. Die Prämissen dieser Regel sind allerdings nur zum Teil (Faktum B) erfüllt, da ja Faktum F nicht in der Faktenbasis ist. Regel 1 kann also nicht feuern. • Somit wird wieder gesucht, ob F die Konklusion einer Regel ist, die feuert, damit Z abgeleitet werden kann. Dies trifft tatsächlich bei Regel 2 zu. http://www.dke.univie.ac.at Einführung in Produktionsregeln (16) • Allerdings sind die Prämissen dieser Regel zum derzeitigen Stand unerfüllt, da lediglich Faktum C in der Faktenbasis existiert. • Zur Herleitung des Zielzustandes Z ist also unbedingt erforderlich, daß Faktum D durch eine Regel erzeugt wird. Regel 3 erzeugt D und ist auch erfüllt, da die Prämisse ja in der Faktenbasis enthalten ist. Somit kann der Zielzustand Z durch Feuern der Regeln 3, 2 und 1 (in dieser Reihenfolge) erzeugt werden. Die Aussage Z ist also wahr. http://www.dke.univie.ac.at Einführung in Produktionsregeln (18) Vorteile von Produktionsregeln: • Uniformität der Wissensbasis (= gleichbleibende Struktur der Regeln) beschleunigt ebenfalls den Entwicklungsprozeß (kein Umschalten zwischen verschiedenen Datenstrukturen nötig) Nachteile von Produktionsregeln: • Beim Hinzufügen einer neuen Regel kann es passieren, daß – der Prozeß der Verkettung von Regeln nicht terminiert – das Wissen in der Wissensbasis kontradiktorisch ist (Bei großen Wissensbasen sind derartige Kontradiktionen schwer zu lokalisieren.) http://www.dke.univie.ac.at Einführung in Produktionsregeln (19) Nachteile von Produktionsregeln (2): • Der Inferenzmechanismus prüft ja in jedem Zyklus, bei welchen Regeln die Prämissen erfüllt sind. Bei großen Wissensbasen sehr ineffizient (Forschungsanstrengungen: Optimierung der Inferenzmechanismen bzw. Partitionierung der Wissensbasen) • komplexe Anwendungsgebiete: es existiert eine übergroße Anzahl von Inputkonstellationen, die nicht alle entsprechend in der Wissensbasis abgebildet werden können. http://www.dke.univie.ac.at Einführung in Semantische Netze (1) Semantische Netzwerke: • eine der Prädikatenlogik weitgehend entsprechende Darstellungsform • enthält auch konzeptionelle Grundlagen für andere Repräsentationsformen wie z.B. Objekt-Wert-AttributTripel und Frames • Ursprung Semantischer Netze: in der Psychologie, wo sie hauptsächlich zur Modellierung des menschlichen Gedächtnisvermögens verwendet wurden http://www.dke.univie.ac.at Einführung in Semantische Netze (2) • Semantische Netze zählen zu den deklarativen Repräsentationsformen. • Die Repräsentation von Wissen erfolgt hier in netzwerkartigen Strukturen mittels Objekte und Relationen zwischen diesen Objekten. • In der KI existieren unter dem Oberbegriff “Semantische Netze” eine ganze Reihe unterschiedlicher Netzwerkkonzeptionen. – große Unterschiede in Bezug auf mögliche Objekte und Klassenbezeichnungen – wesentliches gemeinsames Merkmal: Verwendung netzartiger, graphischer Darstellungsmethoden http://www.dke.univie.ac.at Einführung in Semantische Netze (3) Semantische Netze bestehen aus Knoten und Kanten: • Knoten graphisch zumeist durch Rechtecke oder Kreise dargestellt und repräsentieren Objekte, Situationen, Konzepte oder Begriffe • Kanten graphisch durch Pfeile gekennzeichnet und stellen Verweise zwischen den Wissenseinheiten dar Motivation für Netzwerkmodelle: Organisation der Wissensstrukturen wird in den Vordergrund gestellt http://www.dke.univie.ac.at Einführung in Semantische Netze (4) Einfaches Semantisches Netz (vom Collins/Quillian-Typ): Flügel Vogel HAT IST-EIN Amsel HAT Federn http://www.dke.univie.ac.at Einführung in Semantische Netze (5) • “IST-EIN”-Beziehung – Dieser Beziehungstyp stellt die Verbindung von einem Knoten zu einem übergeordneten Knoten her, der für ein generalisierendes Konzept steht (Konzept der Generalisierung, Teilmengen-Beziehung). – Über diesen Beziehungstyp wird Vererbung realisiert, d.h. die für den Oberbegriff gültigen Eigenschaften gelten auch für die Teilbegriffe, die durch IST-EIN-Kanten mit dem Oberbegriff verbunden sind. (Die Teilbegriffe können natürlich zusätzliche Eigenschaften aufweisen.) http://www.dke.univie.ac.at Einführung in Semantische Netze (6) • “HAT”-Beziehung Mit diesem Beziehungstyp werden einem Knoten dagegen bestimmte Eigenschaften zugeordnet (Konzept der Aggregation). z.B. Flügel besteht aus Federn. Achtung: Kanten im Semantischen Netz müssen immer gerichtet sein! Amsel Vogel: jede Amsel ist ein Vogel Vogel Amsel: jeder Vogel ist eine Amsel (inkorrekt) http://www.dke.univie.ac.at Einführung in Semantische Netze (7) Vererbung = Basis für Inferenzmechanismus in Semantischen Netzen Flügel Vogel HAT IST-EIN Amsel Amsel ist ein Vogel Vogel hat Flügel Amsel hat Flügel http://www.dke.univie.ac.at Einführung in Semantische Netze (8) Nachteil bei Vererbungshierarchien: Einzelne Mitglieder einer Objektklasse weisen abweichende Eigenschaften auf. kann Tier ist ein kann atmen Fell kann sich bewegen kann Vogel fliegen hat hat ist ein ist ein Amsel kann singen Flügel Flügel Strauß ist kann ist braun schnell laufen groß http://www.dke.univie.ac.at Einführung in Semantische Netze (9) vgl. vorige Abbildung: • Vögel können fliegen. • Subklasse von Vogel ist “Strauß”. Folgerung: Auch Strauße können fliegen falsch. • Also muß diese Eigenschaft bei der Subklasse “Strauß” unterdrückt werden. • Korrektur dieser falschen Inferenz: Eigenschaft wird zwar bei der Oberklasse benannt, die Vererbung aber bei der entsprechenden Subklasse blockiert. (über den speziellen Eigenschaftstyp “HAT-NICHT” (NOT-HAS-PROP)) http://www.dke.univie.ac.at Einführung in Semantische Netze (10) • Vererbung dann gut anwendbar wenn es bei den Objekten von Subklassen wenige Ausnahmen gibt. Steigen die Ausnahmen hingegen an, so müssen Korrekturen über die HAT-NICHT-Eigenschaft durchgeführt werden (erschweren Lesbarkeit des Semantischen Netzes) • Auch Instanzen von Klassen können in einem Semantischen Netz zu gespeichert werden (Konzept der Klassifikation). (z.B. Instanz von Subklasse Amsel könnte sein: Amsel mit Namen „Hansi“). http://www.dke.univie.ac.at Einführung in Semantische Netze (11) Vorteile von Semantischen Netzen: • Organisationsprinzipien für die Wissensbasis (siehe etwa das Konzept der Generalisation). Derartige Organisationsprinzipien existieren z.B. bei Produktionssystemen in der Regel nicht. • alle expliziten Informationen über ein bestimmtes Konzept sind um einen einzigen Knoten gespeichert Daher muß man nur den zugehörigen Anker-Knoten finden, um Zugriff auf alle Informationen des Konzeptes zu bekommen (erhebliche Reduktion der Suchzeit). • Zugriffspfade für die Suche nach Wissenseinheiten sind durch die gerichteten Kanten schon vordefiniert. http://www.dke.univie.ac.at Einführung in Semantische Netze (12) Nachteile von Semantischen Netzen: • Ausnahmebehandlung bei Vererbung • weder Standardterminologie noch Standards für die Interpretation von Wissen existieren Untersucht man ein Semantisches Netz, so ist oft unklar, was eigentlich repräsentiert wird. Beispiel: Knoten “Amsel” kann sein: typische Amsel oder auch Klasse aller Amseln. Fehlende einheitliche Notation zur Deutung von Strukturen erschwert Lesbarkeit des Netzes und führt auch dazu, daß jede Interpretation eigene Inferenzprozeduren verwendet. http://www.dke.univie.ac.at