Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller Raffael Binder <[email protected]> Künstliche Intelligenz Theorie, Realität und Probleme von Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 4BHD 1997/98 Seite 1 von 1 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller Inhaltsverzeichnis 1 SUMMARY......................................................................................................................................................... 4 2 EXPERTENSYSTEME ..................................................................................................................................... 5 2.1 WAS IST EIN EXPERTENSYSTEM?.................................................................................................................... 5 2.2 ZIEL VON EXPERTENSYSTEMEN...................................................................................................................... 5 2.3 CHARAKTERISIERUNG VON EXPERTENSYSTEMEN .......................................................................................... 5 2.4 EXPERTENSYSTEM – SHELLS .......................................................................................................................... 6 2.5 DESIGNERZIELE FÜR EXPERTENSYSTEME ....................................................................................................... 6 2.6 TYPEN VON EXPERTENSYSTEMEN .................................................................................................................. 6 2.7 ARCHITEKTUR KLASSISCHER EXPERTENSYSTEME .......................................................................................... 7 2.8 DIE INFERENZKOMPONENTE (INFERENCE ENGINE) ........................................................................................ 9 2.8.1 Schlußregeln (Operatoren, Ableitungsformen)....................................................................................... 9 2.8.2 Das Inferenzverfahren ............................................................................................................................ 9 2.8.3 Problemlösungsstrategien ...................................................................................................................... 9 2.8.4 Heuristische Suche ............................................................................................................................... 10 2.9 PROLOG – IMPLEMENTIERUNGSSPRACHE DER KI ......................................................................................... 10 3 NEURONALE NETZE .................................................................................................................................... 12 3.1 EINFÜHRUNG ................................................................................................................................................ 12 3.1.1 Allgemeines .......................................................................................................................................... 12 3.1.2 Biologische Grundlagen ....................................................................................................................... 13 3.1.2.1 Das Neuron ...................................................................................................................................................... 13 3.1.2.2 Die Natur des elektrischen Nervensignals ....................................................................................................... 13 3.1.2.3 Die Synapsen ................................................................................................................................................... 14 3.1.2.4 Lernen durch Veränderung an den Synapsen................................................................................................... 15 3.1.3 Künstliche Neuronen ............................................................................................................................ 15 .2 MODELLE NEURONALER NETZWERKE ............................................................................................................ 15 3.2.1 Perceptron ............................................................................................................................................ 15 3.2.1.1 Struktur............................................................................................................................................................ 16 3.2.1.2 Lernregel ......................................................................................................................................................... 16 3.2.1.3 Grenzen von Perceptron – Netzwerken ........................................................................................................... 17 3.2.2 Adaline.................................................................................................................................................. 17 3.2.2.1 Struktur............................................................................................................................................................ 17 3.2.2.2 Lernregel ......................................................................................................................................................... 18 3.2.3 Back-Propagation................................................................................................................................. 18 3.2.3.1 Interne Repräsentation ..................................................................................................................................... 18 3.2.3.2 Transferfunktion .............................................................................................................................................. 18 3.2.3.3 Struktur............................................................................................................................................................ 19 3.2.3.4 Lernregel ......................................................................................................................................................... 19 3.2.4 Counter-Propagation ........................................................................................................................... 19 3.2.5 Hopfield – Modell................................................................................................................................. 20 3.2.6 BAM (Bidirectional Associative memory) ............................................................................................ 20 3.2.7 Weitere Modelle neuronaler Netzwerke ............................................................................................... 21 3.3 ANWENDUNGEN ........................................................................................................................................... 21 3.3.1 Sprachgenerierung ............................................................................................................................... 21 3.4.2 Datenkompression ................................................................................................................................ 21 3.4.3 Handschriftenerkennung ...................................................................................................................... 22 3.4.4 Qualitätskontrolle und Diagnose.......................................................................................................... 22 3.4.5 Militärische Anwendungen ................................................................................................................... 22 3.4.6 Weitere Anwendungsgebiete neuronaler Netzwerke............................................................................. 23 4 ZUSAMMENFASSUNG VON BERICHTEN ZUM THEMA KI – PHILOSOPHISCHE PROBLEME 24 4.1 ALAN M. TURING - KANN EINE MASCHINE DENKEN? .................................................................................. 24 4.2 MICHAEL SCRIVEN - DER VOLLKOMMENE ROBOTER: PROLEGOMENA ZU EINER ANDROIDOLOGIE.............. 25 4.3 HERBERT A. SIMON / ALLEN NEWELL - INFORMATIONSVERARBEITUNG IN COMPUTER UND MENSCH ........ 26 4.4 HILARY PUTNAM - GEIST UND MASCHINE ................................................................................................... 27 4.5 JOHN R. SEARLE - GEIST, GEHIRN, PROGRAMM .......................................................................................... 28 5 ANHANG .......................................................................................................................................................... 29 Seite 2 von 2 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 5.1 ANHANG A: REGELUNG EINES SYSTEMS MIT HILFE EINES NEURONALEN NETZES ....................................... 29 5.1.1 Definition der Regelung: ...................................................................................................................... 29 5.1.2 Forderungen an einen Regler: ............................................................................................................. 30 5.2 ANHANG B: IDENTIFIKATION EINES SYSTEMS MIT HILFE EINES NEURONALEN NETZES ............................... 31 5.3 ANHANG C: EXPERTENSYSTEM ZAHLUNGSVERKEHR .................................................................................. 31 5.3.1 Zusammenfassung................................................................................................................................. 31 5.3.2 Wissendatenbank .................................................................................................................................. 32 5.3.4 Kundenberatung ..................................................................................................................................... 1 6. QUELLENVERZEICHNIS............................................................................................................................ 34 Seite 3 von 3 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 1 Summary Artificial Inelligence tries to imitate human intelligence performance. The research includes among others sample-identification (optical and acoustic), essentials of natural communication, developement of roboters, logical prove with programes and mechanical learning. The most researched system for practical use are the so called expert systems. An expert system is an informationsystem, that provides subject specific knowledge, that means know-how from experts within narrow bounds. Essential components are a database of expert-knowledge and problemsolvingcomponent. Another advanced technology are neural networks. Similar to the brain with its approximately 100 billion nervecells, such software systems are made of a network of switchelements that are multiple connected among them. Our report tries to inform you about these two essential topics added with examples and summaries of philosophical reports. Seite 4 von 4 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 2 Expertensysteme 2.1 Was ist ein Expertensystem? Jemand ist ein Experte, wenn er ein großes Wissen in einem bestimmten Bereich in Form von Regeln und Fakten besitzt, und zusätzlich über individuelle Erfahrung verfügt, die nicht in der Literatur dieses Bereiches gefunden werden kann. Erfahrungen bestehen aus heuristischen (methodischen) Verfahren, Analogien, Entscheidungen auf der Basis von individuellen Entscheidungskriterien etc. Auf Grund von solchen Erfahrungen und Wissen ist es möglich, daß der menschliche Experte eine Lösungsstrategie auswählt. Wenn es sich herausstellt, daß diese nicht erfolgreich war, wird zu dem Punkt, an dem die Strategie versagte, zurückgegangen und eine andere Alternative ausprobiert. Expertensysteme sind Computersysteme, die das Fach- und Inferenzwissen von Experten speichern. Es werden Heuristiken und unsicheres Wissen verwendet, um Schlußfolgerungen aus gegebenen Daten zu ziehen. Darüber hinaus, kann der Benutzter an jedem Punkt informiert werden, warum eine bestimmte Strategie ausgewählt wurde, welche Entscheidungen getroffen wurden und warum diese getroffen wurden. 2.2 Ziel von Expertensystemen Experten sind rar, weshalb es oft vorkommt, daß Personen Laien Probleme lösen sollen, für die ein Experte nötig wäre. Ein Beispiel: Das bakteriologische Wissen des Spezialisten für Tropenkrankheiten ist dem Landarzt, der Symptome eines heimgekehrten Urlaubers beurteilen soll, schwer zugänglich. Umgekehrt sollen Experten von Routineaufgaben entlastet werden, um sich neuen Problemen zuwenden zu können. Darüber hinaus bleiben oft eine große Anzahl von wichtigen Routineaufgaben ungelöst. Durch den Einsatz geeigneter Programme könnten Kosten, die bei der Lösung solcher Probleme entstehen, erheblich reduziert werden. 2.3 Charakterisierung von Expertensystemen Die erste Annäherung ist, daß Problemlösungsmethoden als hochparametrisierte Algorithmen betrachtet werden. Wie bei normalen Algorithmen, stellen einige Parameter die Eingabedaten für verschiedene Probleme, innerhalb einer Domäne dar. Andere Parameter ermöglichen es, daß Problemlösungsmethoden in verschiedenen Domänen adaptiert werden können. Solche Parameter zweiter Klasse werden auch als “Wissen” bezeichnet, wenn diese eine Bedeutung für Menschen haben. Wissen wird zum Unterschied zu normalen Problemlösungsmethoden in der Form “IF X THEN Y” dargestellt. Es wird nicht wie beim herkömmlichen instruktionsbasierenden Programmierstil, eine Sequenz von Befehlen ausgeführt, sondern es wird festgelegt, was in bestimmten Situationen zu geschehen hat. Seite 5 von 5 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 2.4 Expertensystem – Shells Die Expertensysteme haben sich zu sogenannten Expertensystem-Shells entwickelt. Solche Shells enthalten kein Fachwissen, unterstützen aber mehrere Inferenzmechanismen, Datenbank-Zugriffsverfahren, Dialogschnittstellen, Erklärungseinrichtungen, etc. Eine solche Shell wird jedoch nur ein kompletes Expertensystem, wenn das gewünschte Fachwissen hinzugefügt wird. 2.5 Designerziele für Expertensysteme 1. Fachgebietsunabhängigkeit Das zu entwickelnde Expertensystem soll als Expertensystem-Shell konzipiert werden, die es gestattet, Wissen aus unterschiedlichen Fachgebieten anzuwenden. 2. Leistungsfähigkeit Die von Shells verwendeten Formen der Wissensdarstellung und die Inferenzmechanismen sollen mächtig genug sein, um in komplexen realen Entscheidungsproblemen kompetente Lösungen zu bieten. Das System soll insbesondere in der Lage sein, auch Wissen verarbeiten zu können, das mit Unsicherheiten behaftet ist. 3. Inkrementeller Aufbau von Wissensbanken Shells sollen einen inkrementellen Aufbau von Wissensbanken unterstützen. Die Wissensbank soll schrittweise erweiterbar und vertiefbar sein. Dies gilt aber auch für fachgebietspezifische Elemente der Benutzeroberfläche. Es soll zusätzlich auch leicht möglich sein, Wissen zu modifizieren. 4. Erklärungsfähigkeit Shells sollen die Ergebnisse erklären und gewählte Vorgehensweise begründen können. Nur dann sind die Ergebnisse für den Benutzer transparent und vom Experten bewertbar. 2.6 Typen von Expertensystemen Expertensysteme können für viele verschiedene Bereiche erstellt werden. Sie sind aber vorallem gute Problemlöser für wohldefinierte Aufgabengebiete. Folgende spezifische Kategorien haben sich herausgebildet: • • Analyse- und Interpretationssysteme: Große Informationsmengen werden geordnet, analysiert, reduziert und nach Bedarf aufbereitet. Beispiel: WWW Search Engines, Recherchen in Online-Datenbanken,... Vorhersagesysteme: Aus den erhaltenen Informationen wird unter Verwendung von Expertenwissen und statistischer Prognoserechnung das Eintreten von Ereignissen vorhergesagt. Beispiel: Wettervorhersage, Börsenkurse • Diagnose- und Fehlersuchsysteme: Daten über Zustand und Verhalten des zu diagnostizierenden Objekts werden vom System erfragt. Auf dieser Informationsbasis zieht das System Schlüsse über eine etwaige Fehlfunktion. Beispiel: medizinische Diagnose, Fehlersuchen bei elektronischen Systemen • Beobachtungs- und Kontrollsysteme: Das Expertensystem dient als Feedback–Mechanismus, der die über Sensoren erhaltenen Informationen auswertet und danach Prozesse mit Kontrollsignalen steuert. Seite 6 von 6 Künstliche Intelligenz SEP 1998 • • • Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller Beispiel: Steuerung und Überwachung von chemischen Prozessen Designsysteme: Das Expertensystem erhält Spezifikationen von Produkten oder Bauteilen. Es konstruiert selbständig und zeichnet unter Zuhilfenahme von CAD–Software. Beispiel: Schaltungsentwurf und –zeichnung Planungssysteme: Das Expertensystem erstellt Arbeits-, Produktions- oder Projektpläne unter Berücksichtigung von Zeit, Ressourcen und Kosten. Beispiel: PMS, IMACS Tutor Systeme: Das Expertensystem dient als Lehrer, der sich mit einer bestimmten Wissensdomäne vertraut macht. Beispiel: SOPHIE lehrt Technikern die Fehlersuche in elektronischen Schaltungen 2.7 Architektur klassischer Expertensysteme Ein Expertensystem soll in einem begrenzten Bereich eine dem menschlichen Experten ähnliche Kompetenz erreichen. Es zeichnet sich durch eine Trennung von Bereichswissen und Strategien zur Problemlösung aus. Das Bereichswissen ist modular in Form von Regeln und Fakten und damit flexibel repräsentiert. Regeln können heuristischen Charakter haben und mit einem Maß für ihre Gewißheit versehen werden. Ein Regelinterpreter führt bei gegebener Problemstellung Inferenzen mit Hilfe des Bereichswissens durch, um das Problem zu lösen. Die Erklärungskomponente kann über die Inferenzen in verständlicher Form Auskunft geben. Über die Wissenserwerbskomponente kann der Experte das System mit Wissen füllen; der Endanwender kommuniziert über eine Dialogkomponente, mit deren Hilfe er Aufgaben formuliert und ihm Lösungen übermittelt werden. Die Dialog-, Erklärungs-, Wissenserwerbs- und Inferenzkomponenten sind weitgehend unabhängig vom Anwendungsbereich und werden daher zu sogenannten Shells zusammengefaßt und angeboten. Benutzer SI Dialog- TU komponente AT IO NS SP EZ IF IS CH Seite 7 von 7 ES WI SS Experte Erklärungs komponente Inferenzkomponente Wissenserwerbskomponente BE RE IC HS SP EZ IF IS CH ES EX PE RT EN WI SS EN Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller Zwischenergebnisse, Problemlösungen Wie aus obiger Abbildung zu ersehen ist, gibt es in der Regel zwei Klassen von Benutzern: • normale Benutzer: Sie stellen Fragen an das Expertensystem bzw. beschreiben ihm anhand von Fakten einen Fall und können anschließend Lösungen erfragen bzw. überprüfen. • Experten: Diese Benutzer sind entweder selbst Fachexperten oder Knowledge-Engeneerer, die Expertenwissen meist in Form von Wenn-Dann-Regeln in das System eingeben. Das gesamte im Expertensystem gespeicherte Wissen wird in der sogenannten Knowledge-Base gespeichert. Dieses Wissen besteht meist aus Regeln und Fakten. Weiters kann man das Wissen noch in drei Kategorien einteilen: • Situationsspezifisches Wissen: Dieses Wissen umfaßt einen oder mehrere Fälle, die dem Expertensystem präsentiert werden bzw. wurden. Meist sind das die Fakten, die vom Benutzer eingegeben werden bzw. worden sind. • Zwischenergebnisse, Problemlösungen: Bei diesem Wissen handelt es sich um Wissen, das das Expertensystem selbständig ermittelt hat. Im Normalfall sind das aus Regeln abgeleitete Regeln und Fakten. • Expertenwissen: Das ist jenes Wissen, das dem Expertensystem als Basis für Problemlösungen dient. Es besteht in der Regel aus Regeln und aus wenigen fixen Fakten. Dieses Wissen wird vom Experten eingegeben. Das eigentliche Programm, das hinter dem Expertensystem steht, besteht aus mehreren Komponenten, die relativ unabhängig voneinander sind und deshalb auch auf unterschiedlichen Rechnern installiert sein können: • Dialogkomponente: Dies ist jener Teil des Expertensystems, mit dem der Benutzer am häufigsten Kontakt hat. In der Dialogkomponente kann der Benutzer die Fakten seines Falles darstellen bzw. er bekommt vom Expertensystem Fragen gestellt, die er beantworten muß. Die zweite Aufgabe der Dialogkomponente besteht darin, daß das Expertensystem die gefundene Lösung dem Benutzer darstellen und dieser Fragen zu dieser stellen bzw. die Lösung zurückweisen kann. • Erklärungskomponente: Dieser Teil “erklärt” dem Benutzer die Handlungen des Expertensytems (z.B warum eine Frage gestellt wurde). Sie ist eine Art von Online Hilfe, die dem Benutzer das Expertensystem verständlicher und dessen Schritte nachvollziehbarer machen soll. • Wissenserwerbskomponente: Seite 8 von 8 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller Über diese Schnittstelle kann ein Experte Wissen in das System einspielen. • Inferenzkomponente: Das ist das Herz des Expertensystems. Diese Komponente versucht selbständig Probleme zu lösen, indem sie aus Fakten und Regeln der Wissensbasis neue Fakten und Regeln ableitet. Diese Komponente sehen wir uns im nächsten Punkt genauer an. 2.8 Die Inferenzkomponente (Inference Engine) 2.8.1 Schlußregeln (Operatoren, Ableitungsformen) Die beiden allgemeinen Ableitungsformen sind der Modus Ponens und der Modus Tollens. Beide Schlußregeln sollen hier mit Hilfe eines Beispiels erklärt werden: Gegeben ist die Regel: “Für alle X gilt: Wenn X ein Mensch ist, dann ist X sterblich” • Modus Ponens: Zusammen mit dem Fakt, daß Sokrates ein Mensch ist, können wir ableiten, daß Sokrates sterblich ist. • Modus Tollens: (arbeitet umgekehrt) Zusammen mit dem Fakt, daß Zeus nicht sterblich ist, können wir ableiten, daß Zeus kein Mensch ist. In der Praxis arbeiten mehrere dem Anwendungsgebiet angepaßte Ableitungsformen besser als nur wenige allgemeine. 2.8.2 Das Inferenzverfahren Das Ziehen von Schlußfolgerungen erfolgt durch das Verketten von Regeln aus der Wissens-Basis. Diese Verkettungen lassen sich mit Hilfe von UND/ODER Bäumen darstellen. 2.8.3 Problemlösungsstrategien Rückwärtsverkettung: Der Inferenzmechanismus beginnt am Ziel und arbeitet sich rückwärts durch die von Operatoren erzeugten Subziele hindurch. Der Inferenzprozeß versucht alle Regeln anzuwenden, in deren Konklusion das Ziel, also die Lösung auftritt. Die Rückwärtsverkettung wird dann angewendet, wenn Probleme in Form von Hypothesen vorliegen. Sie erweist sich als effizient, wenn nur wenige Daten, aber sehr viele Regeln überprüft werden müssen. Vorwärtsverkettung: Dieser Inferenzmechanismus geht von den anfänglichen Daten und Axiomen (Grundsätzen) aus und versucht alle Regeln, die von den bekannten Daten ausgehen, anzuwenden. Schritt für Schritt werden immer neue Ergebnisse erreicht Seite 9 von 9 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller bis man das erreicht, was man erreichen will. Die Vorwärtsverkettung wird dann eingesetzt, wenn möglichst viele Antworten gefunden werden sollen. Depth-first und Breadth-first Suche: Sowohl bei der Rückwärtsverkettung als auch bei der Vorwärtsverkettung gibt es zwei Vorgangsmöglichkeiten. Bei der Depth-first Suche unternimmt der Inferenzmechanismus jeden Versuch, ein Subziel zu ermitteln. Eine Suche nach Details hat Vorrang. Bei der Breadth-first Suche werden zuerst alle Prämissen (Voraussetzungen) angesehen, bevor die Details beachtet werden. Backtracking: Backtracking nennt man den Vorgang, in dem aktuelle Lösungswege verworfen und nach einer Alternative gesucht wird. 2.8.4 Heuristische Suche Die Hauptmethode der KI ist das Suchen nach Lösungen. Die Verwendung von Heuristiken (Faustregeln) ist eine Technik, die darauf abzielt, die Effizienz eines Suchprozesses zu verbessern. Sie ist teilweise jedoch nur unter Opferung der Vollständigkeit der Lösungen einsetzbar. Bei diesem Verfahren kann nicht garantiert werden, daß es in allen Fällen die beste Lösung liefert. D.h. wir verzichten darauf, unter allen Umständen die beste Lösung zu finden und geben uns mit einer recht guten zufrieden. 2.9 Prolog – Implementierungssprache der KI Prolog (Kürzel für “PROgrammierung in LOGik”) ist als nicht-algorithmische Programmiersprache Vertreter einer Generation von Computersprachen, die besonders Anwendungen unterstützen, bei denen nicht numerische Berechnungen, sondern symbolische Manipulationen im Mittelpunkt stehen. PROLOG´s Kontrollstruktur ist gekennzeichnet durch die Mechanismen Unifizierung, Backtracking und Rekursion. Als Unifizierung bezeichnet man einen Prozeß, der versucht, zwei PROLOG Strukturen durch geeignete Bindung der freien Variablen zu identifizieren. Hinter dem Backtracking Mechanismus verbirgt sich die Strategie, die Problemlösung über ein “Trial und Error-Verfahren” zu erzielen. Soll Prolog z.B. prüfen, ob eine Reise von Paris nach Paderborn empfehlenswert ist, so versucht Prolog zunächst in einer Regel1 dieses zu erreichen. Dies scheitert jedoch an der fehlenden Direktflugverbindung zwischen Paris und Paderborn. An dieser Stelle “backtrackt” Prolog und sucht einen Alternativbeweis. Die Suche gelingt, da Prolog Paderborn als interessant identifiziert. Der Backtracking Mechanismus in Prolog unterstützt die Implementation von wissensbasierten Systemen und Expertensystemen, bei denen zielorientierte Suchund Auswertstrategien für Regeln verwendet werden. Seite 10 von 10 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller Als wichtigster Schleifenmechanismus steht in Prolog die Rekursion zur Verfügung. Mit ihrer Hilfe ist es möglich, komplexe Abläufe auf elementare Abläufe zu reduzieren oder rekursiv definierbare Datenstrukturen elementweise abzuarbeiten. Es ist auch möglich, Schleifen mit Hilfe des Backtracking-Mechanismus zu realisieren. Dies ist jedoch nur dann ratsam, wenn die Informationen aus den einzelnen Schleifendurchläufen nicht weiterverarbeitet werden müssen, da Prolog bei Backtracking davor gebildete Variablenbindungen wieder auflöst. Quellen: Künstliche Intelligenz und Expertensysteme von Stuart E. Savory 2. Auflage Oldenbourg Verlag: MünchenWien 1985 Seite 11 von 11 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 3 Neuronale Netze 3.1 Einführung 3.1.1 Allgemeines Seit Anfang der 80er Jahre ist es weltweit zu einem enormen Aufschwung neuronaler Netzwerke gekommen. Eine der Gründe für diesen Aufschwung ist, daß neuronale Netzwerke in ihrem Aufbau und ihrer Konzeption stärker an der Funktionsweise des menschlichen Gehirns orientiert sind als an der Arbeitsweise konventioneller Rechner der klassischen von Neumann Architektur. Neuronale Netzwerke können deshalb leichter dazu genutzt werden, wichtige geistige Fähigkeiten des Menschen wie das Lernen aus Beispielen, das Verallgemeinern von Beispielen, das Abstrahieren, das schnelle Erkennen und Vervollständigen komplizierter Muster, das assoziative Speichern und Abrufen von Informationen etc. nachzubilden und zu simulieren. Jeder Rechner konventioneller Bauart wäre mit solchen Aufgaben hoffnungslos überfordert, und das insteressanterweise, obwohl die Daten in den heutigen Computern etwa 1000mal schneller verarbeitet werden können als in unserem Gehirn. Diese erstaunliche Leistungsfähigkeit unseres Gehirns beruht nicht in der Verarbeitungsgeschwindigkeit der Informationen ider in der Genauigkeit der Operationen, die auf diesen Informationen ausgeführt werden, sondern in der hochgradigen parallelen Natur der Informationsverarbeitung im Gehirn, also der netzwerkartigen Struktur der Nervenverbände. Das Gehirn enthält bei einem durchschnittlichen Gewicht von 1500 Gramm zwischen 10 und 100 Milliarden Neuronen (Nervenzellen). Man geht heute davon aus, daß die Verarbeitungskapazität eines einzigen Neurons etwa der eines mittleren PCs entspricht. Da von den 100 Milliarden Neuronen jeweils ein großer Teil simultan aktiv ist und miteinander kommuniziert, entsteht eine gewaltige Verarbeitungskapazität, die größer ist, als die aller derzeitigen Computer zusammengenommen. Es ist nicht erstaunlich, daß man in der Gehirnforschung und der kognitiven Psychologie der Lernfähigkeit des Gehirns besondere Aufmerksamkeit schenkt, da eine der Möglichkeiten, die Lernfähigkeit unseres Gehirns genauer zu studieren, darin besteht, Modelle zu konstruieren, die die physiologische Struktur des Gehirns berücksichtigen. Eine spezielle Form dieser Modelle sind neuronale Netzwerke. Ein künstliches neuronales Netzwerk als DV-technisches Modell des Gehirns besteht folglich nicht aus einer kömplexen Zentraleinheit (CPU) und einem Arbeitsspeicher wie ein Konventioneller Computer, sondern wie das Gehirn aus sehr vielen einfachen Rechenelementen, den Neuronen (Nervenzellen). Diese Neuronen sind hochgradig miteinander verknüpft und können gleichzeitig Informationen austauschen. Mit der Zunahme des Verständnisses des Arbeitsweise des Gehirns und damit auch der neuronalen Netze nehmen die Anwendungen dieser modernen DV-Technik ständig zu, und zwar in Bereichen, bei denen man intuitiv nicht sofort daran denken würde, wie z.B. Banken und Finanzbereiche. Seite 12 von 12 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 3.1.2 Biologische Grundlagen 3.1.2.1 Das Neuron Das Neuron, die Nervenzelle, ist die morphologisch-anatomische und funktionelle “Grundeinheit” im Nervensystem. Es ist der erregungserzeugende und –leitende Baustein aller Teile des Nervensystems. Die Zahl der Neuronen im Gehirn (ca 1010) ist kurz nach der Geburt eines Menschen praktisch festgelegt, denn die Nervenzellen können sich dann nicht mehr durch Teilung vermehren. Ein Neuron besteht aus dem Soma(Zellkörper), dem Axon (Nervenfaser, Neurit) und den Dendriten. Der Zellkörper enthält den Zellkern und für den Zellstoffwechsel lebenswichtige Strukturen und Substanzen. Das Axon ist eine röhrenförmige Leitungsbahn, die die Signale zu anderen Nervenzellen überträgt. Es hat einen Durchmesser zw. 5 und 100*10E6- und kann eine Länge von bis zu einem Meter erreichen. An seinem Ende verzweigt es in viele kleine kolbenförmige Auftreibungen, die synaptischen Endkolben. Diese Endkolben stehen für sogenannte Synapsen mit anderen Neuronen in Kontakt. Ein Endkolben kann direkt mit dem Zellkörper eines anderen Neurons oder aber mit dessen Dendriten in Verbindung stehen. Die Dendriten sind dünn verzweigte Ausläufer des Zellkörpers und dienen als Eingänge des Neurons. Sie stehen mit den Axonen anderer Neuronen über die Synapsen in Verbindung. Neuronen können bis zu 200.000 Dendriten besitzen und eine entsprechend große Zahl von Axon-Endkolben aufweisen. 3.1.2.2 Die Natur des elektrischen Nervensignals An der Zellwand eines ruhenden Neurons läßt sich ein sogenanntes Ruhemembranpotentional messen, das c. –70 mV beträgt, wodurch das innere der Zelle eine negative Ladung besitzt. Das Nervensignal ist nun eine kurzzeitige, örtliche Änderung des Ruhemembranpotentials, die sich über das gesamte Axon fortpflanzt. Wenn das Ruhemembranpotentional über einen Schwellenwert steigt, kommt es zu einem erstaunlichen Effekt. Die Durchlässigkeit der Zellmembran für Natriumionen steigt schlagartig an und führt dadurch zu einer vollständigen Entladung des Membranbereichs (bis zu +30 mV), wodurch ein sogenanntes Seite 13 von 13 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller Aktionspotentional entsteht. Kurze Zeit später erreicht die Membran, vermittelt durch einen Anstieg der Durchlässigkeit für Kaliumionen, ihre alte Stabilität. Sie ist dann wieder undurchlässig für Natriumionen, und das Ruhemembranpotential stellt sich ein. Dieses Zustandekommen eines Aktionspotential läuft nach dem “Alles-odernichts” Prinzip ab, was bedeutet, daß eine Zelle feuert oder nicht. Dadurch wird ein Informationsverlust auch bei relativ langen Leitungsbahnen vermieden, da keine Abschwächung des Impulses erfolgt. 3.1.2.3 Die Synapsen Die Synapsen sind die Verbindungsstellen zwischen den einzelnen Neuronen. Ihnen wird eine zentrale Rolle für das Lernen zugeschrieben. Synapsen bestehen aus einer präsynaptischen Membran, an der Impulse ankommen, einer postsynaptischen Membran, die zur Weiterleitung der Impulse dient, und aus einem mit Flüssigkeit gefüllten Raum zwischen diesen Membran-en, dem synaptischen Spalt, der zw. 10 und 50*10E-9 m breit ist. Es besteht also im allgemeinen keine direkte physikalische Verbindung zwischen den Nervenzellen. Das hat eine deutliche Verlangsamung des Informationsflusses zur Folge. Die elektrischen Impulse, die in Form von Aktionspotentialen zur Synapse gelangen, führen an der präsynaptischen Membran zur Freisetzung eines chemischen Neurotransmitters (Übertragungssubstanz) in den synaptischen Spalt. Insgesamt sind mehr als 30 verschiedene erregend oder hemmend wirkende Neurotransmitter bekannt. Der Neurotransmitter bindet sich an spezifische Rezeptoren, die in der postsynaptischen Membran sitzen. Diese Bindung bewirkt eine Veränderung der elektrischen Aktivität der postsynaptische gelegenen Zelle,die dann z.B. zu einem Aktionspotential führen kann. Der Neurotransmitter wird im allgemeinen enzymatisch in unwirksame Substanzen gespalten, und diese werden durch die präsynaptische Membran wieder aufgenommen. Möglich ist auch die Wiederaufnahme des unveränderten Neurotransmitters in den präsynaptischen Endkolben. Die Anhäufung von Transmittersubstanz im Synaptischen Spalt wird so vermindert. Die Informationsübertragung an einer Synapse kann nur in eine Richtung erfolgen, nämlich vom Axon eines Neurons zum Dendriten oder Soma eines anderen Neurons. Der umgekehrte Weg ist ausgeschlossen, denn die prä- und die postsynaptische Membran sind, ihren unterschiedlichen Funktionen entsprechend, auch physikalisch verschieden strukturiert. Gelegentlich vermitteln Synapsen auch den Kontakt zwischen zwei Axonen oder zwischen zwei Dendriten. Man kann funktionell zwischen zwei Arten von Synapsen unterscheiden: den erregenden und den hemmenden Synapsen. Beim erregenden Synapsentyp erhöht der in den synaptischen Spalt ausgeschüttete Neurotransmitter die Wahrscheinlichkeit, daß die postsynaptische Zelle aktiv ist; der Neurotransmitter führt zur Destabilisierung der Zellmembran. Beim hemmenden Synapsentyp wird die Wahrscheinlichkeit, daß die postsynaptisch gelegene Zelle aktiv ist, herabgesetzt. Je größer die Aktivität der präsynaptischen Zelle ist, um so stärker wurd die postsynaptische Zelle gehemmt. Hemmende Synapsen üben meist einen verhältnismäßige starken Einfluß auf die Zelle aus (d.h. stärkeer als erregende). Seite 14 von 14 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 3.1.2.4 Lernen durch Veränderung an den Synapsen Nach heutigen Erkenntnisstand wird das Lernen im wesentlichen durch die Modifikation der Verbindung zwischen den Neuronen, also durch Veränderung ihrer Synapsen, ermöglicht. Die Stärke der Verbindung von Neuronen und Neuronenverbänden, und damit ihr Verhalten, hängt von den ihnen ausgebildeten Synapsen ab. Einige Einflußfaktoren für die Stärke der Verbindung sind die Anzahl und die Größe der Synapsen sowie verschiedene Details in ihrem Aufbau wie Menge und Art der gespeicherten Transmittersubstanz, Zahl der Rezeptoren für den Transmitter etc. Eine Veränderung dieser Parameter führt zu Veränderungen im Signalfluß und bewirkt letztendlich eine Verhaltensänderung des Organismus (d.h. Lernfähigkeit). 3.1.3 Künstliche Neuronen Ein neuronales Netzwerk läßt sich in eine bestimmte Anzahl von Schichten aufteilen. Diese Anzahl ist größer oder gleich eins. Meistens werden drei oder mehr Schichten benutzt: eine Eingabeschicht, eine oder mehrere verborgene oder verdeckte Schichten und eine Ausgabeschicht. Ein- und Ausgabeschicht werden häufig als Puffer benötigt, die Anzahl verborgener Schichten ist beliebig und abhängig vom zu lösenden Problem. Die Informationsverarbeitung bzw. der Informationsfluß in einem solchen Netzwerk erfolgt in der Regel von der Eingabeschicht über die verborgenen Schichten zur Ausgabeschicht, gelegentlich aber auch von der Eingabeschicht direkt zur Ausgabeschicht oder in einem Feedback zwischen den einzelnen Schichten hin und her. Die einzelnen Schichten bestehen wiederum aus einer Anzahl von Prozessorelementen (PEs). Jede Schicht muß mindestens ein PE enthalten. Meist werden die PEs einer Schicht als gleichartig angesehen. Eine Schicht kann mit beliebig vielen PEs einer anderen Schicht verbunden sein oder mit PEs der gleichen Schicht. Eine Verbindung von PEj nach PEi nennt man Gewicht wij. Es gibt verschiedene Arten von Gewichten; neben variablen Gewichten gibt es auch feste Gewichte. Variable Gewichte werden vom System (während des Lernens) verändert. Gewichte werden gewöhnlich durch reelle zahlen, häufig im Intervall [-1, +1] dargestellt. In vielen Netzwerken gibt es eine zusätzliche Schicht mit genau einem Element, Bias genannt. Dieser Bias, der den konstanten Wert +1 hat, fungiert als eine Art Schwellenwertfunktion. Der Bias hat nur Ausgänge und keine Eingänge. Mit Hilfe des Bias-Elements kann z.B. sichergestellt werden, daß bestimmte PEs immer einen Input ungleich null erhalten. .2 Modelle neuronaler Netzwerke 3.2.1 Perceptron Es wurde von F. Rosenblatt vorgestellt. Perceptron bezeichnet heute im Allgemeinen ein feed forward Netzwerk ohne verdeckte Schichten. Dieser Netzwerktyp hat heute immer noch eine große Bedeutung. Seite 15 von 15 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 3.2.1.1 Struktur Das Perceptron ist ein feed forward (rückkopplungsfreies) Netzwerk mit einfachen, binären Schwellenwertelementen als Prozessoren. Die PEs summieren den gewichteten Input auf und geben in Abhängigkeit von der Größe der Summe und der Höhe des Schwellenwertes eine Null oder eine Eins als Output weiter. Die Elemente der ersten beiden Schichten können im positiven Bereich auch die Summe ihrer gewichteten Eingaben net linear als output weitergeben. Das Netzwerk besteht aus drei Schichten. Die Eingabeschicht wird als Retina (Netzhaut) bezeichnet und ihre Eingabeelemente heißen S-Units (Stimulus-Units). Diese S-Units sind mit der Mittelschicht über zufällige und festgewichtete Verbindungen verknüpft, dieGewichte dieser Verbindungen werden während des Lernens nicht verändert. Die Elemente der Mittelschicht werden als A-Units (Assoziations-Units) bezeichnet. Jede A-Unit bekommt einen fest gewichteten Input von einem Teil der S-Units. Eine S-Unit kann ihren Output auf mehrere A-Units gleichzeitig weitergeben. Die Mittelschicht ist vollständig mit der Ausgabeschicht verbunden. Die Gewichte zwischen Mittelschicht und Ausgabeschicht sind variabel und somit lernfähig. Die Elemente der Ausgabeschicht heißen R-Units (ResponseUnits). Diese Schicht kann man auch als Perceptron-Schicht bezeichnen, da die RUnits ihre Gewichte über die Perceptron-Lernregel verändern. 3.2.1.2 Lernregel Das Perceptron lernt durch überwachtes Lernen mit “Lehrer”. Dazu muß zu jedem zu lernenden Muster der erwünschte Zustand 8aktiv oder inaktiv) jeder R-Unit bekannt sein. Die zu lernenden Muster werden dem Netzwerk angeboten und die Gewichte nach der Lernregel angepaßt. Der Vorgang wird so lange wiederholt, bis alle Muster den korrekten Output erzeugen. Für jedes Element i der Ausgabeschicht wird der durch ein Muster erzeugte Output oi mit dem gewünschten Muster zi (Ziel) verglichen. Wenn oi=zi ist, wird nicht gelernt, da das Muster schon korrekt klassifiziert wurde. Wenn der gewünschte Output zi gleich eins und der tatsächliche Output oi gleich null ist, dann werden alle Gewichte, an denen ein aktives Element hängt (oi>0), vergrößert: wij(t+1) = wij(t) + σ * oj. Ist der gewünschte Output gleich null und der tatsächliche Output gleich eins, werden alle Gewichte, an denen ein aktives Element hängt, verkleinert: wij(t+1) = wij(t) - σ * oj. Die Konstante σ ist die Lernrate. Um diesen Wert wird das Gewicht beim Lernen verändert. Eine hohe Lernrate (z.B. eins) führt zu einer schnellen Anpassung der Gewichte. In jedem Fall muß die Lernrate σ größer als null gewählt werden. Die Anpassung des Schwellenwertes, für die es keine Lernregel gibt, kann durch einen “Trick” vereinfacht werden, was durch das Einführen eines PEs mit der konstanten Aktivität von eins, dem Bias. Eine R-Unit, die durch ein variables (lernendes) Gewicht mit de Bias verbunden ist, kann dadurch quasi ihren Schwellenwert modifizieren. Die bei diesem Gewicht angewandte Lernregel unterscheidet sich nicht von der Lernregel für die “normalen” Gewichte. Seite 16 von 16 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 3.2.1.3 Grenzen von Perceptron – Netzwerken Mit dem Perceptron – Konvergenz- Theorem wurde gezeigt, daß jede lösbare Aufgabe von Perceptoren – Netzwerken auch tatsächlich gelernt werden kann. Offen bleibt aber noch die Frage, ob eine bestimmte Lösung von einem Perceptron -, Netzwerk prinzipiell gelernt werden kann. Die interessante und entscheidende Fragestellung lautet: Welche Probleme können durch ein Perceptron – Netzwerk repräsentiert werden, und bei welchen Problemklassen ist das Perceptron nicht anwendbar? Eines der nicht lösbaren Probleme ist z.B. die Paritätsbestimmung, d.h. die Bestimmung, ob eine (ganze) Zahl gerade oder ungerade ist. Ein Spezialfall der pa<ritätsbestimmung ist das XOR-Problem, an dem im Folgenden die Grenzen des Perceptron – Netzwerk verdeutlicht werden. Boolesche Funktionen sind binäre Funktionen mit (zwei) binären Eingängen. Die XOR-Funktion ist eine der 16 existierenden Booleschen Funktionen mit zwei Variablen (Eingängen). Sie ist die Umkehrfunktion der Identitätsfunktion, d.h. der Prüfung auf Gleichheit. Wenn nun zwei Eingänge und ein Ausgang existieren, die jeweils den Wert eins (“aktiv”) oder null (”inaktiv”) annehmen können, und die Anzahl der aktiven Eingänge den Wert des Ausgangs bestimmt, sodaß für eine gerade Anzahl (kein Eingagn oder beide Eingänge aktiv) der Ausgang null sein soll, und für eine ungerade Anzahl ( ein Eingang ist aktiv) soll der Ausgang eins sein. Die x und y bezeichneten Eingänge können wir in einem Koordinatensystem auftragen, dessen Achsen durch die Eingänge definiert sind. Die vier ecken der Fläche mit den Koordinaten 0/0, 0/1, 1/0, 1/1 sind die vier möglichen Eingagskonstellationen. Jedem dieser Punkte kann der entsprechende ausgagswert zugeordnet werden. Die sich diagonal gegenüberliegenden Punkte sollen demnach jeweils den gleichen Ausgangswert haben. Ein Perceptron – Element (R-Unit), d.h. ein einfaches, binäres Schwellenwertelement mit zwei Eingängen, kann nicht lernen, die durch die Eingänge geforderten Ausgangswerte anzunehmen. 3.2.2 Adaline 3.2.2.1 Struktur Adaline steht für adaptive linear neuron oder adaptive linear element und wurde zwischen 1956 und 1960 von B. Widrow und M. Hoff entwickelt. Es ist ebenfalls ein einschichtiges “feed forward” – Netz mit binären Schwellenwertelementen. Die Elemente haben in Abhängigkeit vom summierten Input den Output +1 oder –1 (Signumfunktion). Adaline verwendet ebenfalls wie das Perceptron anstatt eines variablen Stellenwertes einen Bias. Der entscheidende Fortschritt wird aber durch die Delta – Lernregel dargestellt, welche verglichen mit dem Perceptron ein deutlich schnelleres Lernen ermöglichte. Seite 17 von 17 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 3.2.2.2 Lernregel Das Adaline – Netzwerk benötigt ebenfalls die gewünschten Zielvektoren um seine Gewichte justieren zu können. Der grundlegende Unterschied zur Perceptron – Lernregel ist die Einführung eines Fehler – Signals. Für die folgende Betrachtung wurde wegen der einfacheren Notation eine lineare Transferfunktion zugrunde gelegt . Die Outputfunktion ist die Signumfunktion. Jedes Adaline – Element lernt so lange, bis seine Aktivität ( und nicht sein Output) den Wert des gewünschten outputs hat. Es lernen auch die elemente deren Output schon richtig ist, was diesen die Möglichkeit gibt ihre “Aussage” sicherer zu machen, was von besonderer Bedeutung ist, wenn ihre aktivität nahe am Schwellenwert liegt. Die Delta – Lernregel der Adaline – Elemente minimiert bei linearer Transferfunktion die Summe der Fehlerquadrate. 3.2.3 Back-Propagation Für die Leistung und Repräsentationsmöglichkeiten von feed forward Netzwerken ist die zahl der Schichten mit variablen, lernenden Gewichten von entscheidender Bedeutung. Das eigentliche Problem besteht darin, die Gewichte der nicht direkt von außen “zugänglichen” verdeckten Schichten in geeigneter Weise anzupassen. Der Backpropagation – Algorithmus stellt einen geeigneten Adaptionsmechanismus für eine beliebige, rückkopplungsfreie Netzwerkstruktur zur Verfügung. 3.2.3.1 Interne Repräsentation Der vielleicht interessanteste Aspekt von einlagigen feed forward Netzwerken ist ihre Möglichkeit, auf unbekannte, nicht gelernte Eingaben eine angemessene Ausgabe liefern. Diese Fähigkeit kann man auch als Generalisation bezeichnen. Die fähigkeit eines einlagigen Netzwerkes zu generalisieren setzt voraus, daß ähnliche Eingabevektoren auch zu ähnlichen Ausgabevektoren führen sollen. Die Ähnlichkeit kann man auch als Überlapp (Overlap) bezeichnen. Eine große Überlappung zweier eingabemuster führt bei einem solchen Netzwerk auch zu einer großen Überlappung der beiden korrespondierenden Ausgabemuster. Für die Output – Schicht eines feed forward Netzwerkes haben wir schon eine Möglichkeit der Gewichtsadaption kennengelernt: die Delta – Lernregel, welche einen Fehler für jedes Output – Element berechnet, und die Anpassung der Gewichte proportional zu diesem Fehler vornimmt. Aber erst die Entwicklung der generalisierten Delta – Lernregel im Backpropagation – Netzwerk ermöglicht die Berechnung eines Fehler – Signals auch für verdeckte Schichten. 3.2.3.2 Transferfunktion Im Backpropagation – Netzwerk muß die Transferfunktion differenzierbar sein. Unter dieser Voraussetzung kann jede beliebige Transferfunktion Verwendung finden. Seite 18 von 18 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller Die Verwendung einer linearen Transferfunktion ist in einem mehrschichtigen Netzwerk nicht sinnvoll, da beliebig viele Schichten mit linearer Transferfunktion durch Berechnung einer geeigneten Gewichtsmatrix durch eine einzige Schicht ersetzt werden kann. Daher bietet sich die verwendung einer nicht linearen transferfunktion an. 3.2.3.3 Struktur Ein Backpropation – Netzwerk besteht aus einer Eingabeschicht, einer Ausgabeschicht und beliebig vielen verdeckten Schichten. Die Verbindungen laufen immer von der Eingabeschicht zur Ausgabeschicht, wobei nicht nur direkt benachbarte Schichten Verbindungen haben dürfen: Eine Verbindung kann auch beliebig viele Zwischenschichten überspringen. Diese Anordnung garantiert den feed forward Charakter des Netzwekes; eine Rückkopplung ist so nicht möglich. Die Funktionsweise des Backpropation – Netzwerkes während des Recalls entspricht der Funktionsweise jedes anderen feed forward Netzwerkes. Der Inputvektor wird an die Eingänge angelegt, und die PEs berechnen ihren Output nach der formel: Oi = ai = F(∑ wij * oj) Wobei über j summiert wird und ai die Aktivität des Elementes i ist. 3.2.3.4 Lernregel Bei der Delta-Lernregel wurde die Aktivität des Elementes mit dem gewünschten Output verglichen. Ergab sich eine Differenz, wurden die Gewichte adaptiert, sonst wurde nicht gelernt. Für die einfachere lineare Transfer- und Outputfunktion entspricht der Output der Summe der gewichteten Inputs. Die Sigmoid-Funktion ist dagegen eine nicht lineare Funktion. Die Gemeinsamkeit mit einer linearen Funktion ist ihr stetiges Ansteigen. Wenn net1 > net2, dann gilt auch F(net1) > F(net2). Man kann sie daher auch als semilineare Funktion bezeichnen. Bei linearen und semilinearen Transferfunktionen ist die Delta-Lernregel sinnvoll anwendbar. 3.2.4 Counter-Propagation Bei diesem Netztyp werden zwei unterschiedliche Lernverfahren kombiniert. Das Netz arbeitet wie eine Look-up-Tabelle. Das bedeutet: ein “Schlüsselwert” erzeugt eine Antwort. In der Grossberg – Schicht (Hidden – Output) vollzieht sich das Supervised Learning. Die Kohonen – Schicht (Hidden – Input) ist selbstorganisierend. In der Kohonen – Schicht findet ein Wettbewerb statt. Der Gewinner darf seine Gewichte verändern, der Rest nicht. Erst nachdem die Kohonen – Schicht mit seiner Arbeit fertig ist, kommt das Grossberg – Slab zum Zug. Auch hier herrscht Wettbewerb durch laterale Inhibition. Jedes Kohonen - Element bremst seine Nachbarn. Das Hin und Her zwischen den einzelnen Schichten während des Lernvorganges bei Computerpropagation – Netzwerken wie auch anderen erklärt, warum ein Lernzyklus bei vielen Netzen länger dauert als die reine Datenreproduktion. Der Name Counterpropagation beruht auf einer anderen Darstellungsmöglichkeit. Zeichnet man die Eingabevektoren x und y getrennt, jeden auf eine Seite der Kohonenschicht, so Seite 19 von 19 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller daß die Kohonenschicht zwischen diesen liegt, entsteht ein von beiden Seiten in die Mitte gerichteterDatenfluß. Dieser gegeneinander gerichteter Datenfluß hat zu dem Namen Counterpropagation geführt. Die grossbergschicht wird bei dieser Darstellung jeweils zwischen Eingabe und Kohonenschicht dargestellt. Diese netzwerke sind autoassoziativ trainiert. Es lernt die beiden zusammengehörigen inputvektoren x und y mit sich selbst zu assoziiern, indem die gewünschten Outputvektoren den Inputvektoren x und y entsprechen. Legt man x und y während des Recalls an, so produziert das Netzwerk x‘ und y‘ am Output. Diese Outputvektoren x‘ und y‘ stellen eine Art generalisierte Prototypen von x und y dar. 3.2.5 Hopfield – Modell Das Hopfield – Netz besteht aus einer einzigen Schicht, in der N binäre zellen vollständig und symetrisch miteinander vernetzt sind. Der zustand oi einer binären Zelle i ist äquivalent zum Ising – Spin (magnetische Ausrichtung) Si im Spinglas – Modell. Wenn der Spin den wert Si = -1 hat, ist das Neuron in Ruhe(oi = 0), hat er den Wert Si = +1), ist das Neuron aktiv (oi =1). Die Eingabe erfolgt durch Setzen der Zustände der Zellen; der Eingabevektor ist demnach die Gesamtaktivität des Netzes zum Zeitpunkt t = 0. Der Outputvektor liegt dann vor, wenn das Netz einen stabilen zustand erreicht hat; der Ausgabevektor ist die Aktivität des Netzes im stabilen Zustand. Jedes Bit i eines Musters, sei es ein Input- oder ein Outputmuster, wird repräsentiert durch den Zustand oi einer Zelle im Netz. 3.2.6 BAM (Bidirectional Associative memory) Eine moderne Variante der Lernmatrix ist das BAM (zu deutsch: Bidirektionale Assoziativgedächtnis). Es ist als feedback Netz von seinem Aufbau her sehr anspruchslos und ordnet Vektorpaare einander zu. Die Suchzeit für ein spezifisches Muster hängt von der Anzahl der eintrainierten Netze ab. Das Netz besteht aus zwei Neuronenschichten, die untereinander verknüpft sind. Im Sinn eines korrigierten Netzes reagiert BAM tolerant auf kleine Fehler im Inputmuster. Ist die Abweichung nicht zu groß, so kann es das korrekte Outputmuster erzeugen. Der große Nachteil ist, daß nur recht wenige Muster in dieses Netz eintrainiert werden können. Das, was BAM allerdings weiterhin interessant bleiben läßt, ist die serielle Verknüpfung meherer dieser Netze. Mit dieser kaskadierung und einem speziellen Decodierungmechanismus wurde es möglich, die engen Speicherbegrenzungen zu überwinden. Künstliche neuronale Netze wie das BAM, die Lernmatrix (Perceptron – Netzewrk) oder das Hopfield – Netzwerk erfreuen sich einer großen Beliebtheit. Das begründet sich durch ihren einheitlichen einfachen Aufbau. Netze dieser Art haben gute Chancen, zu eigenen Chips analoger oder anderer Bauart überführt zu werden. Auch Seite 20 von 20 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller optische vefahren, die sich durch ihre riesigen Speichermöglichkeiten auszeichnen, liegen hier in Reichweite technischer Realisierung. 3.2.7 Weitere Modelle neuronaler Netzwerke Es gibt natürlich noch eine Fülle anderer Topologien neuronaler Netzwerke, wie z.B.: -Simulated Annealing, -Boltzmann – Maschine, -ART (Adaptive Resonance theory), -Neocognitoren, -SPR (Spatiotemporal Pattern Classifier); werden hier aber nicht mehr näher beschrieben. 3.3 Anwendungen 3.3.1 Sprachgenerierung Terrence Sejnowski von der Johns – Hopkins – Universität hat mit seinen Kollegen durch die Entwicklung eines neuronalen Netzwerkes zur maschinellen Umsetzung von Texten in Sprache nicht nur in Fachkreisen für Aufsehen gesorgt. Das Netz liest geschrieben englischen Text und produziert eine Lautbeschreibung, die akustisch umgesetzt werden kann – es kann also Text laut vorlesen. Mittels eines Sprachsynthesizers werden die vom Netz in einer Lautsprachensymbolik beschriebenen Phoneme (kleinste Einheit der “Lautbeschreibungssprache”) in hörbare Laute umgesetzt. Die Qualität der Aussprache ist vergleichbar mit der eines Kleinkindes im Alter von ca. 5 bis 6 Jahren. Während der Lernphase differenziert das Netz die einzelnen Laute immer besser. Anfangs klingen alle Worte nd Satzteile monoton und undeutlich, doch mit zunehmender Lerndauer werden die Worte und Laute immer besser prononciert und betont. Das Netzwerk basiert auf dem Backpropagation – Algorithmus. Die Entwicklungszeit für diese Anwendung betrug laut Sejnowski lediglich ein halbes jahr. 3.4.2 Datenkompression Versucht man, Bilder oder Sprachsignale über Leitungen mit geringer Bandbreite in Realzeit zu übertragen, stößt man auf das Problem der Datenkompression. Um die Übertragung zu beschleunigen ist es meistens erforderlich, die Daten so zu komprimieren, daß einerseits die Übertragung schnell genug durchgeführt werden kann, daß andererseits aber durch die Kompression der Daten keine relevanten Informationen verloren gehen. Contrell und Zipser von der Universität in San Diego und Munro von der Universität Pittsburgh haben neuronale Netzwerke erfolgreich für solche Datenkompressionen eingesetzt. Die drei Forscher haben ein selbstorganisierendes dreilagiges Netzwerk entwickelt, das digitalisierte Bilder in ihren verschiedenen Gruatufen um den Faktor 8 komprimiert (d.h. es wird nur 1/8 der Daten übertragen), aber dennoch mit hoher Detailtreue nach der Übertragung wieder regeneriert. Für solche Anwendungen eigenen sich insbesondere auch Counterpropagation-Netzwerke. Seite 21 von 21 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 3.4.3 Handschriftenerkennung In vielen industriellen Anwendungen wäre es hilfreich, Handschriften maschinell lesen und auswerten zu können. Dieses Problem ist aber wegen der großen Abweichungen zwischen unterschiedlichen Handschriften äußerst schwierig und mit konventionellen Methoden praktisch nicht zu lösen. Der Nobelpreisträger Leon Cooper hat zu diesem Zweck ein Netzwerkmodell (RCE Restricted Coulomb Energy Network) entwickelt, mit dem es möglich ist, beliebige geometrische Figuren, also auch handgeschriebene Texte, mit hoher Genauigkeit zu klassifizieren. Das Netzwerk überwindet damit beispielsweise die prinzipiellen Limitierungen des Perceptron – Modells. Nestor, die Firma Coopers, hat auf dieser Basis ein Handschriftenerkennungssystem für die japanische Wortschrift Kanji entwickelt. Die Benutzer des Systems können mittels eines an einen Computer angeschlossenen Schreibgerätes handschriftliche Zeichen in Kanji eingeben und benötigen keine Tastatur, das wäre für die ca. 3000 Symbole dieser japanischen Schriftart auch kaum möglich. Die von Fukuschima entwickelten Netzwerkmodelle “Cognitron” und “Neocognitron” sind darüber hinaus sogar in der Lage, Schriftensymbole zu erkennen. 3.4.4 Qualitätskontrolle und Diagnose In der Produktion müssen zur Sicherung der Qualität häufig automatisierte Stichproben durchgeführt werden. So besteht beispielsweise in der Automobilindustrie das Problem, Motoren anhand ihrer Laufgeräusche auf Produktionsfehler zu überwachen. Die firma Siemens hat deshalb Netzwerke entwickelt, die anhand der Motorengeräusche auf Motorprüfständen defekte Motoren erkennen. Zu solchen Diagnosen sind meist nur sehr erfahrene KFZ – Mechaniker in der Lage. Die Genauigkeit der neuronalen Netzwerke bei diesen Anwendungen ist heute bereits höher als die der Fachleute. 3.4.5 Militärische Anwendungen Es ist bekannt, dass gerade in den USA viele potentielle Anwendungen neuronaler Netzwerke im militärischen Bereich untersucht werden bzw. wurden (u.a. DARPA und SDI). Bei den Anwendungen handelt es sich vorwiegend um Ansätze zur Verbesserung der automatischen Erkennung von Objekten, wie Schiffen, U-Booten, Flugzeugen oder Raketen, wobei versucht wird., dies in Realzeit zu erreichen. Da die meisten Projekte jedoch geheim sind, lassen sich Erfolge oder Mißerfolge dieser Forschung bislang kaum nachvollziehen. Bekannt geworden ist eine Anwendung neuronaler Netzwerke der US-Marine zur Klassifizierung von Sonarsignalen für die Erkennung von U-Booten. Gorman und Sejnowski haben die Leistungsfähigkeit neuronaler Netzwerke für solche Anwendungen demonstriert. Das von ihnen konstruierte dreilagige BackpropagationNetzwerk (mit zwölf Prozessoren in der verdeckten Schicht) klassifzierte die Signale ähnlich gut wie ein erfahrener, für diese Aufgabe jahrelang ausgebildeter Offizier. Seite 22 von 22 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 3.4.6 Weitere Anwendungsgebiete neuronaler Netzwerke Es sind bis heute bereits mehrere Dutzend industrieller Bereiche hinsichtlich iherer Eignung für den Einsatz neuronaler Netzwerke untersucht worden. Zu nennen sind hier beispielsweise: - die Luft- und Raumfahrt (fehlertolerante Systeme, Flugüberwachung und Diagnostik, Autopiloten,...) - die Medizin (Auswertung von Langzeit-EKGs, Blutdrucküberwachung,...) - die Meteorologie (Wettervohersage, Luftbildauswertung,...) - die Sicherheitstechnik (Sprengstoffdetektoren, Personenidentifikation,...) - die Werbung (Adressatenauswahl für Serienbriefe) - die Post (Handschriftenerkennung, Postleitzahlenlesegeräte) - Banken und Versicherungen (Aktienkursprognosen, Kreditrisikoabschätzungen, Risikobewertung von Versicherungen, Datenanalysen, Unterschriftenerkennung, Transaktionsüberwachung,...) - das Militär ( Objekterkennung, Auswertung von Sonarsignalen,...) - die Kommunikationstechnik (Rauschunterdrückung, Echounterdrückung, Signalfilter, Datenkompression zur Beschleunigung der Datenübertragung, Spracherkennung und Sprachgenerierung,...) Seite 23 von 23 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 4 Zusammenfassung von Berichten zum Thema KI – Philosophische Probleme 4.1 Alan M. Turing - Kann eine Maschine denken? Turing gelangt von dieser Frage zu einem neuen Problem, das er als Spiel formuliert. Dabei handelt sich um das sogenannte Imitationsspiel. Es nehmen drei Spieler daran teil. Ein Mann (A), eine Frau (B) und ein männlicher Fragesteller (C). Der Fragesteller sei allein in einem Raum. Das Ziel des Fragestellers ist es zu entscheiden, welche der beiden anderen Personen der Mann bzw. die Frau ist. Er kennt sie zunächst als X bzw. Y, und das Spiel endet damit, daß er sagt “X ist A und Y ist B” oder “X ist B und Y ist A”. Der Fragesteller darf an A und B Fragen stellen. Dies sollte am besten schriftlich durchgeführt werden. Das Ziel von B ist es C zu helfen. Anstelle der Frage “Können Maschinen denken?” wird jetzt die Frage gestellt, was passiert wenn der Spieler B durch eine Maschine ersetzt wird. Der Vorteil dieses Spiels liegt darin das es eine klare Trennung zwischen physischen und psychischen Eigenschaften des Menschen gibt. Außerdem kann durch die Art des Frage und Antwortspiels jeder Bereich menschlichen Bemühens miteinbezogen werden. Unter den teilnahmeberechtigten Maschinen versteht Turing sog. Digitalrechner. Diese bestehen aus einem Speicher, einer ausführenden Einheit und einem Kontrollwerk. Zusätzlich handelt es sich bei “Turing´s” Digitalrechnern um Rechnemaschinen mit unbegränzter Kapzität, d.h. sie besitzen einen unbegrenzten Speicher. Weiter sind sie programmierbar und haben die Fähigkeit eine zufälliges Element hervorzubringen. Außerdem besteht Turing darauf, daß Digitalmaschinen auf die Möglichkeiten der Elektrizität verzichten könnten. Sie ist nur Mittel zum Zweck, aber keine Notwendigkeit, d.h. er schließt auch keine rein mechanischen Digitalrechner aus. Weiters sind die beschriebenen Digitalrechner “Maschinen mit diskreten Zuständen”, d.h. sie können nur eine bestimmte Anzahl von Zuständen erreichen, und wenn man diese kennt, so ist es möglich bei Kenntnis des Anfangszustandes jeden weiteren Zustand vorherzusagen. Turing geht weiter, indem er sagt, teilt man einem Digitalrechner mit unbegrenztem Potential die Entscheidungstabellen von stetigen Maschinen mit, so ist dieser in der Lage die Maschinen nachzuahmen. Maschinen dieser Art nennt Turing “Universelle Maschinen”. Eine Maschine ist in der Lage alle Maschinen nachzuahmen. Daraus ergibt sich die Gleichwertigkeit aller Digitalrechner. Aus den vorangegangen Überlegungen wird das Imitationsspiel neu formuliert: “Ist es wahr, daß ein ganz bestimmter Digitalrechner C nach geeigneter Modifizierung seines Speichervermögens und seiner Aktionsgeschwindigkeit, sowie nach angemessener Programmierung, in die Lage versetzt werden kann, die Rolle von A im Imitationsspiel zu spielen, wobei B´s Rolle von einem Menschen übernommen wird?” Ich möchte nun auf beschriebene Einwände nicht eingehen, da die Ausführungen Turings zur Widerlegung der Einwände diesen Rahmen sprengen würden. Nur eines, er widerlegt die Einwände nicht mit Beweisen, in dessen Besitz er nicht ist, sondern zeigt lediglich Fehler in den Gegenargumenten auf. Ein Einwand war, das Maschinen nicht fähig wären zu lernen, sondern nur das wiedergeben könnten, was man ihnen zuvor eingegeben hat. Turing stellt nun die Frage, ob es möglich ist eine solche Maschine zu konstruieren, die die Fähigkeit besitzt aus erfaßten Daten neue Schlüsse zu ziehen. Er geht davon aus, daß die Rechnerkapazität in ferner Zukunft keine große Hürde darstellen wird, sonder das Seite 24 von 24 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller Problem in der Programmierung selbst liegt. Um einer Maschine den Verstand eines Erwachsenen einzugeben bräuchte man seiner Ansicht nach zu lange, deshalb stellt er folgende Theorie auf: Anstatt einer Maschine den Verstand eines Erwachsenen einzuprogrammieren, programmiert man sie auf mit dem Verstand eines Kindes. Erzieht man diese Maschine dann mit geeigneten Mitteln, erhält man den Verstand eines Erwachsenen. Als “Lernmethoden” beschreibt Turing einerseits das Belohnung-Strafe Modell, andererseits eine Sprache mit deren Hilfe der Lehrer der Maschine Befehle mitteilen kann ohne Strafe oder Belohnung verwenden zu müssen. Weiters ist es notwendig die Kindmaschine mit einer umfassenden Logik auszustatten. Sie muß in der Lage sein, aus eingegebenen Befehlen auf ein bestimmtes Verhalten schließen zu können. Mit Hilfe solcher Kindmaschinen und einer sinnvollen “Erziehen” sieht Turing kein Problem, daß das Imitationsspiel von einer Maschine durchgeführt werden kann. 4.2 Michael Scriven - Der vollkommene Roboter: Prolegomena zu einer Androidologie Scriven erörtert in seinem Bericht die Frage, ob eine einzigartige Wesenheit das menschliche Gehirn auszeichnet, die einen Supercomputer daran hindern könnte zu sagen: “Alles, was du kannst, das kann ich besser.”. Er definiert den Begriff Maschine nicht näher, sondern untersucht, ob etwas, das aus herkömmlichen elektronischen und mechanischen Teilen hergestellt ist, wie wir sie in jedem Computerladen finden, mit zukünftigen Verbesserungen und Ersetzungen, für alle Zeiten bestimmte Fähigkeiten entbehren muß, die das menschliche Gehirn besitzt. Bei der Materialwahl läßt er zwar die Überlegung zu, ob die Stoffe, aus denen das Gehirn besteht nicht bereits die idealen Bestandteile wären, ist aber dennoch der Überzeugung, daß mit Hilfe von technischen Bauteilen und auch möglicherweise mit Hilfe organischer Stoffe eine intelligente Maschine herstellbar ist, die anders in der Konstruktionsweise und besser in der Funktionsweise ist, als das menschliche Gehirn. In den folgenden Kapiteln seines Berichts erörtert Scriven Eigenschaften, die für die meisten den Menschen als intelligente Lebensform auszeichnen und untersucht die Eigenschaften einer Maschine in Bezug auf die “Menschlichkeit”. Zum Thema Vorhersagen und Wählen schreibt er Maschinen ebenso einen freien Willen zu, wie er auch die Fähigkeiten von Maschinen nicht ausschließt zu schaffen oder zu entdecken. Beim Thema Schaffen unterscheidet er zwei Vorgehensweisen. Die eine Vorgehensweise beschreibt die Möglichkeit durch zufälliges Einsetzen in vorgegebene Gesetze (mathematische Gleichungen) zu einer Lösung zu gelangen. In diesem Fall liegen die Vorteile einer Maschine klar auf der Hand, einerseits dir Präzision und andererseits die Geschwindigkeit. Die andere Vorgehensweise um etwas neues zu entdecken beschreibt Situationen, in denen man nicht durch bloßes zufälliges Einsetzen auf neue Lösungen kommt. Doch auch die Möglichkeit durch Induktionismus und logisches Kombinieren auf neue Theorien zu stoßen, liegt laut Scriven für Maschinen im Bereich des Möglichen. Eine weitere menschliche Eigenschaft ist die des Lernens und auch in diesem Bereich sieht er keinen Anlaß dazu schwarz zu sehen. Lernen durch Erfahrung ist bereits in Anwendung (Schachcomputer) und auch der Erwerb von Originalität durch Maschinen ist laut Scriven im Bereich des Möglichen. Zum Thema Verstehen meint er, daß Verstehen sehr viel mit menschlichem Bewußtsein zu tun hat. Der Begriff Verstehen hängt immer von seiner menschlichen Interpretation ab. Ob eine Maschine verstehen kann, schließt er nicht aus. Als Beispiel, gibt er den Bereich der Mathematik an. Hier gibt es Aussagen, die auch der Mensch nicht Beweisen kann, Seite 25 von 25 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller sie aber in ihrer Richtigkeit akzeptiert und so könnten auch Maschinen diverse Aussagen akzeptieren, und sie somit verstehen. Ein weiterer Punkt beschreibt die Fähigkeit zu Analysieren. Darunter Fallen die Fähigkeiten Übersetzen, Abstrahieren und Registrieren von Sprache. Beim Übersetzen sieht Scriven das Problem des kontextbezogenen Inhalts einer Nachricht. Eine eins zu eins Übersetzung ist kein Problem. Eine klare Unfähigkeit der Maschinen sieht Scriven beim Abstrahieren. Im Gegensatz dazu betont er die Wichtigkeit von Maschinen beim Registrieren. Gerade in einer Zeit der Informationsflut sollte auf die Fähigkeiten der Maschinen zurückgegriffen werden. Einzige Schwierigkeit dabei ist es, die Methodik festzulegen, nach der Registriert wird, und festzustellen, von was der Text oder die Information handelt. Damit verbunden ist die Fähigkeit zu Entscheiden, was wichtig und was weniger wichtig ist. Dieses Problem ist gleichzusetzen mit dem der Wahl der richtigen Hypothese. Bei der Wahrnehmung greift Scriven auf sensorischen Möglichkeiten der Technik zurück und sieht daher kein gravierendes Problem der Umsetzung. Auch er behandelt den Aspekt der übersinnlichen Wahrnehmung und akzeptiert ihre Realität. Er geht jedoch davon aus, daß es sich dabei um Gehirnfunktionen handelt, die nur noch nicht lokalisiert wurden, ähnlich der Gedächtnisfunktion. Daher schließt er auch in diesem Bereich eine Nachbildung nicht aus. Zum Thema fühlen ist zu sagen, daß er Robotern keine Gefühle zuschreibt und somit auch Turing widerspricht. Für Scriven reicht es nicht, daß einem Roboter einprogrammiert wird zu sagen, er sei verliebt. Programmiert man ihn dann aber weiter, erklärt ihm was Lüge und Wahrheit bedeutet und verbietet ihm zu lügen, teilt man ihm alles Wissen dieser Welt mit und stellt ihm dann die Frage ob er Gefühle hat, müßte man ein ja dennoch akzeptieren. 4.3 Herbert A. Simon / Allen Newell - Informationsverarbeitung in Computer und Mensch Zuallererst wird eine klare Trennung zwischen Hardware (Gehirn) und Software (Denkprozesse) vollzogen. Es kommt nicht so sehr auf die materielle Umgebung der Prozesse an, sondern vielmehr auf ihre grundlegenden Abläufe. Daher ist der Computer ein legitimes Instrument, solche Denkvorgänge nachzubilden oder zu testen. Man spricht jedoch nicht von Denkvorgängen, sondern von elementaren Informationsverarbeitungsprozessen. Die kleinsten Einheiten dieser Prozesse sind Symbole, Listen und Beschreibungen. Als kleinste Einheit kann man ein Symbolzeichen bezeichnen. Sie sind in der Lage Werte zu repräsentieren und verglichen zu werden. Als nächste Grundeinheit wird die Liste bezeichnet. Sie ist eine geordnete Menge, eine Sequenz, von Symbolen. Folglich ist mit jedem Zeichen, außer mit dem letzten, ein einziges nächstfolgendes Zeichen verbunden. Mit der Liste als ganzer ist ein Symbol verbunden: der Name. Auf diese Weise kann eine Liste eine Sequenz von Symbolen sein, die ihrerseits Namen von Listen sind – eine Liste von Listen. Ein bekanntes Beispiel einer Liste von Symbolen, die wir alle in unserem Gedächtnis haben, ist das Alphabet. Assoziationen bestehen auch zwischen Symboltypen. Eine Assoziation ist eine zweistellige Ralation, die drei Symbole beinhaltet, vondenen einses dir Relation, die anderen zwei ihre Argumente bezeichnen. “Die Farbe des Apfels ist rot” spezifiziert diene Assoziation zwischen Apfel und rot mit der Bezeichnung Farbe. Die Assoziationen eines Symbols beschreiben dieses Symbol. Nun können mit Hilfe dieser Grundelemente einige elementare Prozesse durchgeführt werden: Unterscheidungsprozesse, Erschaffungsprozesse, Kopierprozesse, Einfügungsprozesse, Löschprozesse, Suchprozesse. Seite 26 von 26 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller Neben diesen Elementarprozessen gibt es auch weitere Prozesse, die aus den vorangegangenen Prozessen bestehen: z.B. serielle Mustererkennungsprozesse Neben den nun vorgestellten atomaren Prozessen gibt es auch noch eine höhere Klassen von Problemlösungsprozessen, die sog. allgemeinen Problemlöser. Der allgemeine Problemlöser ist ein Programm, das zweierlei voneinander getrennt halten soll: (1) Problemlöserprozesse, die der Theorie zufolge die meisten Menschen mit durchschnittlicher Intelligenz besitzen und benützen, wenn sie mit irgendeinem relativ unbekannten Aufgabengebiet konfrontiert werden und (2) spezifische Informationen über jedes einzelne Aufgabenfeld. Den Kern des allgemeinen Problemlösers bildet die Prozeßorganisation für die Mittel-Ziel-Analyse. Das Problem wird definiert durch die Spezifikation einer gegebenen Situation (A) und einer erwünschten Situation (B). ein Unterscheidungsprozeß, der in das System der Mittel-Ziel-Analyse eingebaut ist, vergleicht A mit B und entdeckt eine Differenz oder mehrere (D), falls vorhanden. Mit jeder Differenz ist im Gedächtnis eine Anzahl von Operatoren (O) oder Prozessoren verbunden, die möglicherweise für die Aufhebung dieser Differenzen rlevant sind. Das Mittel-Ziel-Analyseprogramm versucht dann im weiteren die Differenz dadurch zu beseitigen, daß es die relevanten Operatoren nacheinander anwendet. Einige weitere Prozesse: Planungsprozesse, Organisation des Problemlösens, Unterscheidungsbäume Informationsverarbeitungstheorien erklären Verhalten auf unterschiedlich detaillierten Ebenen. In den nun bestehenden Theorien können mindestens drei Ebenen unterschieden werden. Auf der am höchsten aggregierten Ebene finden sich Theorien von komplexem Verhalten in spezifischen Problembereichen: Beweisen von Theoremen in derLogik oder der Geometrie, Auffinden von SchachmattKombinationen im Schach. Diese Theorien enthalten tendenziell sehr extensive Annahmen über das Wissen und die Fähigkeiten der Menschen, die diese Tätigkeiten ausführen, sowie über die Art und Weise, wie diese Kenntnisse und Fähigkeiten organisiert und intern repräsentiert werden. Jede dieser Theorien schließt deshalb eine ziemlich große Menge von Annahmen ein und macht Voraussagen über das Verhalten nur in einem eng begrenzten Gebiet. Auf einer zweiten Ebene sind ähnliche oder identische Informationsverarbeitungsmechanismen vielen aggregierten Theorien gemeinsam. Mittel-Ziel-Analyse, Planung, das Such-Abtast-Schema und Unterscheidungsbäume sind allemein brauchbare Verarbeitungsorganisationen, die für ein weites Gebiet von Aufgaben anwendbar sind. Da das Wesen dieser Mechanismen besser verstanden wird, fangen sie nun damit an, ihrerseits als grundlegende Bauelemente für die aggregierten Theorien zu dienen, was erlaubt, die letzteren in einer knapperen Form darzustellen und den großen Anteil an Mechanismen aufzuzeigen, die allen Aufgaben gemeinsam und nicht nur den je individuellen Aufgaben eigentümlich sind. Auf der niedrigsten, der atomaren Ebene setzen alle Informationsverarbeitungstheorien nur eine kleine Menge von Grundformen symbolischer Repräsentation und eine kleine Zahl von elementaren Informationsprozessen voraus. Der Aufbau und der erfolgreiche Test von Programmen in großem Maßstab, die komplexe menschliche Verhaltensweisen simulieren, liefern den Beweis dafür, daß eine kleinen Menge von Elementen, die denen ähnlich sind, die hier für informationsverarbeitende Sprachen postuliert werde, für den Aufbau einer Theorie vom menschlichen Denken ausreicht. 4.4 Hilary Putnam - Geist und Maschine In diesem Aufsatz wird versucht eine Analogie zwischen Körper-Geist und LogikStruktur Problem zu finden. Das Logik-Struktur-Problem wird mit Hilfe der Turingmaschine erläutert. Am Ende kommt man zu der Erkenntnis, das diese Art von Seite 27 von 27 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller Problemen rein sprachlicher Natur sind, und unter gegebenen Voraussetzungen keine Lösung finden werden. 4.5 John R. Searle - Geist, Gehirn, Programm Searle beschäftigt sich mit der Frage, ob Computer in der Lage sind zu verstehen. Er geht dabei auf das Imitationsspiel von Turing ein. Seiner Meinung nach, wird es in Zukunft sicher Maschinen geben, die in der Lage sein werden Denkaufgaben und Vorgänge in der Weise zu erledigen, wie sie heute unser Gehirn erledigt. Computer zählen für ihn aber nicht zu diesen Maschinen. Um seine These zu stützen bringt er das Beispiel mit dem chinesischen Zimmer. Bei dieser Situation, gibt es einen Menschen, dessen Muttersprache Englisch ist. Dieser sitzt in einem geschlossenen Raum. Vor einem Fenster außerhalb des Raums stehen Personen deren Muttersprache chinesische ist. Der Mensch in dem Raum erhält nun mehrere Symbole, die die außenstehenden als chinesische Schriftzeichen identifizieren würden. Als nächstes erhält die Person im Zimmer eine Anleitung auf Englisch, seiner Muttersprache, wie er die Symbole zu kombinieren hat. Außerhalb des Raumes erkennen die Personen Sätze, bzw. Aussagen. Und als letztes erhält die Person im Raum noch eine Anleitung in seiner Muttersprache Englische, wann er welche Schriftzeichenkombinationen zu verwenden hat. Die Personen außerhalb spielen mit der Person im Raum nun das Imitationsspiel. Aufgrund der Anleitungen, wann welche Symbole zu verwenden sind ist die Person im Raum nun in der Lage das Imitationsspiel problemlos zu meistern. Stellt man nun jedoch die Frage, ob er etwas verstanden hat, von dem was er mit den Symbolen zum Ausdruck brachte, antwortet dieser mit nein. Er hat lediglich die Anweisungen in der Sprache verfolgt, die er seine Muttersprache nennt. Für die Außenstehenden ist diese Tatsache nicht erkennbar. Für sie hat er zu jeder Frage die passende Antwort gegeben. Searle vergleicht nun die Person im Raum mit einem Computer (der Hardware) und die Anweisungen mit dem Programm (der Software). Es steht für ihn also fest, das Computer, wie wir sie heute kennen, nicht in der Lage sind zu verstehen, also in die Rolle von Gehirnen schlüpfen. Diese Ansicht wird auch starke AI genannt. Den Aussagen der schwachen AI, Computer wären in der Lage gewisse Denkprozesse zu simulieren, stimmt Searle jedoch zu. Seite 28 von 28 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 5 Anhang 5.1 Anhang A: Regelung eines Systems mit Hilfe eines Neuronalen Netzes 5.1.1 Definition der Regelung: Bei der Regelung geht es darum, in einem dynamischen System, siehe Abbildung, eine bestimmte zeitveränderliche Größe, die Ausgangsgröße, auf einen fest vorgegebenen Wert, die Führungsgröße, zu bringen. Hierfür steht die beliebig veränderbare Stellgröße zur Verfügung, die die Ausgangsgröße stark beeinflußt. Oft kommt noch eine unerwünschte Größe mit unerwarteten Änderungen hinzu, die die Ausgangsgröße vom erwünschten Verhalten abbringt, die sogenannte Störgröße. Abbildung: Blockbild eines dynamischen Systems Um nun die Regelgröße an den gewünschten Verlauf anzupassen, ist die ständige Beobachtung der Strecke nötig. Die daraus gewonnenen Informationen werden dazu benutzt, die neue Stellgröße zu ermitteln, die die Störgröße ausgleichen soll. Eine Anordnung, die das leistet, siehe Abbildung, heißt Regelung. Abbildung: Blockbild einer Regelung Um die Stellgröße ermitteln zu können, wird also ständig die Regelgröße beziehungsweise die Ausgangsgröße zurückgeführt. Im Gegensatz dazu wird bei einer Steuerung nur gemeldet, ob nach Seite 29 von 29 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller der Reaktion auf die Aktion der Steuerung bestimmte Bedingungen erfüllt sind oder nicht. An einen Regler gibt es Forderungen, die, wenn sie erfüllt sind, für seine Brauchbarkeit garantieren. 5.1.2 Forderungen an einen Regler: - Stabilität: Dies ist das wichtigste Kriterium, das ein Regler erfüllen muß. Die Regelgröße durchläuft normalerweise einen Einschwingvorgang, das heißt sie oszilliert um den Führungswert. Klingen die Oszillationen mit zunehmender Zeit ab, so ist die Regelung stabil. Bei Dauerschwingung oder zunehmender Schwingung bezeichnet man die Regelung als instabil und damit funktionsunfähig. - Stationäre Genauigkeit: Eine ebenfalls unabdingbare Grundanforderung an einen Regler ist die Einhaltung einer hinreichenden stationären Genauigkeit. Dies bedeutet, daß die Differenz zwischen Rückführ- und Führungsgröße nach Beendigung des Einschwingvorgangs unter einer vorgegebenen Schranke liegen soll. - Schnelligkeit und geringe Oszillationen: Diese beiden Forderungen stehen meist im Widerspruch, so daß man einen annehmbaren Kompromiß finden muß. Da der Führungswert in möglichst kurzer Zeit erreicht werden soll, muß die aufgeschaltete Stellgröße groß werden, was möglicherweise ein Überschwingen zur Folge hat. Abbildung: Prinzip der Regelung: Aus dem Zustand x(t) des dynamischen Systems ermittelt der Regler die Stellgröße u(t) Neuronale Netze sind für die Aufgabe der Regelung, siehe Abbildung, besonders geeignet, da sie die Fähigkeit besitzen, auch Abweichungen von der gelernten Systemdynamik gut ausgleichen zu können. Dies ist bei technischen Systemen oft der Fall, da hier leicht Abweichungen gegenüber den Bewegungsgleichungen auftreten. So kann man zum Beispiel die mechanischen Bewegungen einer lockeren Kette beim Anspannen nicht mit Formeln erfassen. Bekommt das Netz nun solche verfälschte Eingabeparameter, kann es diese gegebenenfalls ausgleichen und das System trotzdem regeln. Ein herkömmlicher Regler würde das nicht bewerkstelligen können, da er nach den Bewegungsgleichungen des Systems für sehr exakte Werte trainiert wurde und nur äußerst geringe Abweichungen davon kompensieren kann. Seite 30 von 30 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 5.2 Anhang B: Identifikation eines Systems mit Hilfe eines Neuronalen Netzes Identifikation eines technischen Systems, siehe Abbildung , bedeutet, zu versuchen dessen Verhalten nachzubilden. Meist handelt es sich bei diesen Systemen um nichtlineare Systeme, deren Dynamik nur mit einem großen Formelapparat erfaßbar ist. Will man sie nachbilden, stößt man auf das Problem, möglichst exakte Formeln zur Beschreibung der Systemdynamik zu bekommen. Mit Hilfe Neuronaler Netze geht man einen anderen Weg: Man schaltet parallel zu dem zu identifizierenden System ein Neuronales Netz und gibt an beide sowohl den Ausgangs-Zustand x(t) des Systems als auch die auf das System angewandte Aktion u(t). Den sich daraus ergebenden Zustand des Systems x(t+1) vergleicht man mit der Ausgabe des Netzes und nimmt die Differenz als Fehlermaß für den Lernalgorithmus des Neuronalen Netzes. Abbildung: Identifikation eines Technischen Systems: Das Netz lernt den Folgezustand x(t+1) des Systems auf die Aktion u(t) im Zustand x(t). Hat man das System mit einem Neuronalen Netz identifiziert, so kann man dies zum Lernen eines Reglers für das System verwenden. Wünschenswert ist es, den Regler direkt am technischen System während des Betriebes desselben, also ,,Online”, lernen zu können. Oft ist dies aus technischen Gründen nicht möglich. Dies kann zum Beispiel aus Geschwindigkeitsgründen der Fall sein. Auch eine Verfälschung der Systemdynamik durch den Regler wäre denkbar. Nimmt man dahingegen das Neuronale Netz, welches das System identifiziert hat, so kann man mit ihm das System emulieren und so am Neuronalen Netz den Regler lernen. 5.3 Anhang C: Expertensystem Zahlungsverkehr 5.3.1 Zusammenfassung Das Expertensystem XPSZV dient der Unterstützung bei der Beratung von Firmenkunden der Deutschen Bank AG. Es erfaßt die aktuellen Zahlungsverkehrsdaten von Firmenkunden, vergleicht diese mit Branchenkennzahlen, analysiert Schwächen im Zahlungsverkehrsverhalten des Kunden mit Hilfe eines ausgeklügelten Expertenssystems und macht konkrete Verbesserungsvorschläge. Das System wurde vollständig als grafische DOS-Anwendung mit Pascal, Assembler und C entwickelt. Seite 31 von 31 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 5.3.2 Wissendatenbank Mit Hilfe der erhobenen Kundendaten und den ermittelten Branchenkennzahlen aktualisiert und die Wissensbasis optimiert. Optimierungen werden Das System zeigt anschaulich den aktuellen IST-Wert des Kunden, den erreichbaren IDEAL-Wert und den aktuellen Stand der Optimierung. Alle Vorschläge des Systems werden anschaulich dargestellt und begründet. 5.3.4 Kundenberatung Seite 32 von 32 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller Die Beratung eines Kunden beginnt mit der Aufnahme des aktuellen Zahlungsverkehrsverhalten. Dem Kunden werden sofort die Durchschnittswerte vergleichbarer Betriebe (Branche/Umsatz) angezeit, um Fehleinschätzungen vorzubeugen. Bezüglich Scheckzahlungen bestehen allgemein eine Reihe von Vorurteilen. XPSZV stellt die Schecksituation eines Unternehmens in Form einer Grafik dar. Im obigen Beispiel muß festgestellt werden, daß sich ausschließlich Schecks über größere Beträge lohnen. Beträge unter DM 8000 sollten nie mit Scheck bezahlt werden. Nach der Erfassung der Ist-Situation kann der Berater zusammen mit dem Kunden einen Optimierungslauf durchführen. Das System analysiert Schwächen im Zahlungsverkehr und macht mit Hilfe der Wissensdatenbank und dem Expertenwissen eine Reihe von Verbesserungsvorschlägen. Am Ende der Beratung werden die erzielten Einsparungen in einer Übersicht dargestellt. Die Beratung mit allen Optimierungsvorschlägen und dem Ergebnis kann auf einem Drucker ausgegeben werden. Seite 33 von 33 Künstliche Intelligenz SEP 1998 Raffael Binder, Stefan Büchler, Klaus Endholzer, Stefan Leumüller 6. Quellenverzeichnis - H. R. Hansen: Wirtschaftsinformatik I; 6. Auflage; UTB für Wissenschaften; 1992 Stuart E. Savory: Künstliche Intelligenz und Expertensysteme; 2. Auflage; Oldenbourg Verlag; München Wien 1985 Eberhard Schöneburg, Nikolaus Hansen, Andreas Gawelczyk: Neuronale Netzwerke; Einführung, Überblick und Anwendungsmöglichkeiten KI – Philosphische Probleme; Reclam Verlag Internet Seiten: www.samsoft.de/xpszv.htm www.info3.informatik.uni-wuerzberg.de Seite 34 von 34