Startseite < Informatik < Algorithmen Datenstrukturen / Software-Engineering / Programmiersprachen / Künstliche Intelligenz < [ DRUCK , 2004 , 2005 , 2006 , 2007 , 2008 , 2009 ] KI-Architekturen Planen > > Schach Privates / Inhalt >
KI-Architekturen
Ansätze zur Strukturierung intelligenter Systeme.
Architekturmuster Grundlegendes Architekturmuster
Welches Architekturmuster eignet sich für intelligente Systeme?
Bei der Entwicklung intelligenter Systeme entstehen zunächst Fragen, die den Grundaufbau betreffen:
  • Wie sollten intelligente Systeme aufgebaut sein, d. h. aus welchen Modulen soll ein intelligentes System bestehen und wie sollen diese zusammenwirken?
  • Kann der Mensch als Vorbild verwendet werden oder was kann überhaupt als Vorbild verwendet werden und wie ist dieses Vorbild aufgebaut?
Es ist schwer zu sagen, wie ein intelligentes System nun aufgebaut sein muss, damit es den Ansprüchen entsprechend wahrnimmt und handelt. Es haben sich bereits viele kluge Köpfe um gute Ansätze für den Grundaufbau intelligenter Systeme bemüht, dass es sich aber bei diesen Ansätzen nicht um Endlösungen handeln kann, liegt auf der Hand. KI-Probleme sind im Allgemeinen unentscheidbar und KI-Systeme sind extrem komplexe Systeme (vielleicht auch nicht, das weiß eben Keiner) mit einer Unmenge von Einzelkomponenten, welche wiederum voneinander abhängig sind. Deshalb kommt meines Erachtens für intelligente Systeme nur ein einziges Architekurmuster in Frage, nämlich jenes, das hilft, Unmengen von Einzelkomponenten zu organisieren, das Mud-To-Structure-Pattern. 1
Von der Architektur zum Architekturmuster
Ist es nicht bemerkenswert, dass beim Software-Engineering die Frage nach der Software-Architektur nur am Rande auftaucht, Schichen-Standard-Architektur und das wars! Während man bei der Entwicklung einer Softwarelösung den Ansatz im Software-Design sucht, setzt man bei der Entwicklung einer KI-Lösung deutlich tiefer an und sucht nach einer geeigneten Architektur. Jede Architektur, ob nun ANSI oder SOA, trägt irgendwie zur Lösung von KI-Problemen bei, so dass es geschickter ist, nach Architekturmustern zu suchen, so dachten jedenfalls viele berühmte KI-Koryphäen der Computer-Antike. :-)
Architekturmuster sind auf bestimmte Klassen von KI-Problemen ausgelegt und klassifizieren sogar im gewissen Sinne KI-Probleme, für die sie hergeleitet wurden.
Frage an den Leser!
Welche Klassen von KI-Problemen und welche Architekturen gibt es?
Ansätze Ansätze zur Strukturierung intelligenter Systeme
Im Folgenden werden Instanzen von Architekturmustern für intelligente Systeme vorgestellt, welche Architekturen intelligenter Systeme darstellen. Die hier aufgeführten Architekturen sind dem Skript [KI1STOYAN] entnommen.
Architektur von Lewis
Die Architektur von Lewis ist eine Schichtenarchitektur, welche aus mehreren Hierarchieebenen besteht:
  • Wissensebene
  • Symbolebene
  • Registertransferebene
  • Logische Schaltkreise
  • Elektrische Schaltkreise
  • Elektronische Geräte
Jede Ebene implementiert die darüberliegende Ebene, wie zum Beispiel die Symbolebene implementiert die Wissensebene, die Registertransferebene die Symbolebene, usw. Jede Ebene besitzt eine feste Struktur, dabei sei bemerkt, dass jede dieser Ebenen wiederum in weitere Ebenen unterteilt sein kann.
Architektur von Newell
Die Architektur von Newell ist eine Vereinfachung der Schichtenarchitektur von Lewis und besteht nur aus drei Hierarchieebenen:
  • Wissensebene
  • Symbolebene
  • Programmiersprachenebene
Es ist leicht zu erkennen, dass Newell im Gegensatz zu Lewis von der Hardware abstrahiert, indem er die Verwendung von Programmiersprachen vorschlägt. Wohingegen in Punkto Wissensebene und Symbolebene sind sie sich einig. Die Wissensebene abstrahiert von der Symbolebene, d. h. Elemente der Wissensebene wie Ziele und Aktionen sowie Wissen und Verhalten setzen sich aus den Grundbausteinen der Symbolebene (Symbole, Ausdrücke, Daten, Operationen, Assoziationen) zusammen. Das Verhalten dieser Wissensebene folgt dem Rationalitätsprinzip (gemäß Newells Wissensniveauhypothese), was bedeutet, dass Aktionen, die zum Ziel führen, auch ausgeführt oder in weitere Berechnungen einfließen werden.
Architektur von Schefe
Schefes Idee war, dass das menschliche Wissen, vages Wissen somit eingeschlossen, logisch rekonstruiert werden kann. Um seine Idee umzusetzen, behilft er sich der Schichtenarchitektur, welche aus drei Hierarchieebenen besteht:
  • Epistemologische Ebene (Repräsentation)
    Diese Ebene repräsentiert und begründet epistemologische Wissenszustände, also eine Menge von Aussagen mit Status. Der Status gibt Auskunft darüber, ob die dazugehörige Aussage sicheres Wissen (Assert, Wissen) oder vages Wissen (Assume, Glaube bzw. Annahme) repräsentiert. Weitere Regeln werden aufgrund des vagen Wissens notwendig, wie zum Beispiel: Eine Folgerung, in der mindestens eine Annahme vorkommt, ist eine Vermutung.
  • Logische Ebene (Rekonstruktion)
    Diese Ebene stellt die Inferenzmaschine dar, welche für das logische Schließen über konsistente deduktiv abgeschlossene Theorien zuständig ist.
  • Datentechnische Ebene (Realisierung)
    Diese Ebene stellt Elementaroperationen zur Verfügung wie beispielsweise das Eintragen, das Löschen und das Verknüpfen von Daten (z. B. in Filesystem oder Datenbank).
Architektur von Minsky
Minskys Idee war, dass der Verstand aus einer Gesellschaft von vielen Agenten und Agenturen besteht, weshalb Minskys Architektur auch als Society of Mind bezeichnet wird. Viele Agenten feuern ihre Energie, um Prozesse zu erwirken; oder sie halten ihre Energie zurück. Das Verhalten der Agenten beeinflusst wiederum das Verhalten anderer Agenten. Agenten können miteinander kooperieren, aber auch gegeneinander konkurieren. Zudem gibt es unterschiedliche Agententypen wie zum Beispiel: K-Line-Agenten sind für das Gedächtnis zuständig und Dämonen aktivieren sich selbständig, wenn gewisse Zustände erreicht werden.
Blackboard-Architektur
Auf einer einzigen Tafel Blackboard werden alle Agenten zentral koordiniert und gesteuert. Das Prinzip besteht darin, dass jeder Agent einen Plan — wenn auch einen schlechten Plan — parat hat. So stellt diese Architektur zu jeder Zeit einen Plan zur Verfügung (Any Time).
Architektur von Hewitt
Die Architektur von Hewitt wird auch als Multi-Agenten-System bezeichnet. Es gibt viele unterschiedliche Agenten mit unterschiedlichem Expertenwissen.
Architektur von Brooks
Brooks verwendete Käfer als Vorbild.

Der behaviorbasierte Ansatz von Brooks verzichtet vollständig auf eine kognitive Komponente, die auf internen Repräsentationen arbeitet. Brooks geht davon aus, dass intelligentes Verhalten nicht durch die Verarbeitung einer symbolischen Repräsentation der Welt entsteht, sondern er fordert, dass „die Welt ihre eigene Repräsentation” sei. Der Agent soll zu jedem Zeitpunkt die Welt wahrnehmen und interpretieren. Anhand der so gewonnenen Informationen kann er dann situationsangepaßt reagieren. Realisiert wird dieser Ansatz durch Behaviors. Ein Behavior ist ein Schaltkreis, der unmittelbaren Zugriff auf Sensoren und Aktuatoren hat. Durch diese direkte Koppelung von Input und Output kann das Behavior schnell reagieren. Es wird keine interne Repräsentation aufgebaut. Die Behaviors sind hierarchisch geordnet und gekoppelt. Diesen Architekturansatz nennt Brooks Subsumptionarchitektur (Subsumption heißt Einordnen und Zusammenfassen).
Architektur von Expertensystemen
Ein Expertensystem lässt sich grob in fünf Bestandteile unterteilen:
  • Wissensbasis
    Die Wissensbasis kann in drei Wissensbereiche unterteilt werden:
    • allgemeines Expertenwissen
    • bereichsbezogenes Expertenwissen
    • fallspezifisches Wissen
  • Problemlösungskomponente
    Sprachinterpreter, Frameverwalter, Beweiser, Regelinterpreter, …
  • Kommunikationskomponente
    Dialoge mit Experten und mit Anwendern werden erst durch diese Komponente ermöglicht. Das Expertensystem kann gegebenenfalls beim Benutzer nachfragen, um zum Beispiel Mehrdeutigkeiten zu eleminieren. Der Benutzer kann eventuell auch in Entscheidungsverfahren interaktiv eingreifen, um dem System Hilfestellungen zu geben.
  • Erklärungskomponente
    Das Expertensystem muss erklären können, wie oder durch welche Regeln es auf Ergebnisse kommt. So können die Ergebnisse nachvollzogen bzw. verifiziert werden. Die Erklärung beschreibt im einfachsten Fall den Lösungsweg zu einem Ergebnis.
  • Wartungs- und Wissenserwerbskomponente
    Diese Komponente ist für den Experten vorgesehen, der die Wissensbasis des Expertensystems erweitern oder trainieren kann.
Weitere Architekturen
Es existieren noch viele weitere Architekturen wie beispielsweise spezielle Regelsysteme oder Architekturen mit netzartiger Struktur. Die meisten Architekturen sind schichtenartig aufgebaut. Die Architekturen richten sich häufig nach seinem natürlichen Vorbild, mit der Hoffnung das entsprechende Vorbild richtig interpretiert zu haben.