Moin Forum,
der Blog ist mir zu weit ab vom Schuss. Den lesen zu wenige. Ich bleib erstmal hier im Thread. Soooo umfangreich ist meine Erkenntnis noch nicht. Eher simpel und naheliegend.
Viele Grüße
Wolfgang
************************
Generic Intelligence
GI vs. KI
------------------------------------------------------------
Vorwort
Ein wichtiges Gebiet der AI bzw. KI (artificial intelligence bwz. künstlichen Intelligenz) befasst sich mit der Erstellung künstlicher neuronaler Netze (KNN).
Das Vorgehen bei den KNN ist simpel. Es wird die Funktionalität eines einzigen Neurons programmiert. Und es wird eine große Anzahl von Speicherstrukturen angelegt, die der Anzahl von Nervenzellen entspricht.
Nun wird in endlosen Schleifen das Neuron mit Daten aus der Umwelt oder den internen Speicherstrukturen gefüttert und seine Rechenergebnisse abgespeichert. Ob Daten aus der Umwelt oder internen Speichern verrechnet werden, entscheidet die jeweilige Neuronenschicht, die gerade berechnet wird.
Viele KNN bestehen aus drei Schichten. Einer äußeren Schicht, die mit den Umweltsensoren direkt gekoppelt ist. Einer versteckten inneren Schicht. Und einer Ausgabeschicht, die Aktoren ansteuert.
Die Emulation eines Neurons ist eine wahre Wissenschaft. Die Eingangssignale können gewichtet, summmiert und mit unlinearen Funktionen multipliziert werden. Typischerweise entsteht so ein einziges Ausgangssignal, was alle Eingänge miteinander verrechnet hat.
Formell ist ein KNN eine Matrix-Berechnung. Besonders schnelle Multiplikationen und Additionen sind eine Domäne von Grafikprozessoren, weswegen diese Bauteile gerne in der KI verwendet werden.
Die die natürlichen Intelligenz beherrschenden Merkmale der Vernetzung und Parallelität werden durch mathematische Korrelation und enorme Rechengeschwindigkeiten ersetzt.
------------------------------------------------------------
Motivation
Statt immer größere Rechenleistungen einzusetzen, will ich das andere Ende der Skala beleuchten.
Kleine Controller (z.B. Tiny85 etc.) verfügen nicht über die Ressourcen zur Abarbeitung der geschilderten Dampframmen-KI.
Diese Dampframmen-KI erscheint mir sowieso eher lustlos. Die Entwickler wollen eine informelle Blackbox nutzen, deren Innereien sie eigentlich gar nicht interessiert. Die sie vielleicht nicht mal verstehen. So eine Art KI-Betriebssystem, um das man sich nicht kümmern muss und was es schon richtig machen wird. Konsumer-Mentalität auf höchstem Level.
Es soll stattdessen eine zur Controller-Klasse passende künstliche Intelligenz entwickelt werden, die wegen ihrer universellen Skalierbarkeit als GI bezeichnet wird.
------------------------------------------------------------
Modell
Die GI eines Kleincontrollers besteht aus drei pyramidenförmigen Schichten.
In der obersten Schicht, dem „RAM“ wird z.B. Bildverstehen auf höchster Abstraktion betrieben. Hier wird auch geschlafen, um das RAM für einen neuen Tag freizuschaufeln. Die Speicherzeit ist kurz.
In der mittleren „EEPROM“-Schicht wird Gerlerntes gespeichert. Also z.B. Laufen, Sprechen und Bilderkennung. Hier wachsen Verknüpfungen und werden Anpassungen an Umwelten gespeichert. Die Speicherzeit ist lang.
Die unterste „Flash“-Schicht wird von mir programmiert. Hier befinden sich Reflexe, Instinkte, Triebe und die Treiber für Sensoren und Aktoren. Das Stammhin sozusagen mit ewiger Speicherzeit.
Die Aufgabe des Gebildes ist das Zurechtfinden in einer unbekannten Umwelt.
Vom Prinzip her ist ein GI-System schon mit der Flash-Schicht alleine - in Grenzen -lebensfähig. Es schreit und zappelt zum Beispiel, wenn die Bordnetzspannung zu weit sinkt und es Hunger hat.
Interessanter wird’s aber, wenn die EEPROM-Schicht sich durch Interaktion mit der Flash-Schicht und der daran angekoppelten Umwelt zu organisieren beginnt. Zur Erlangung von Mobilität muss die EEPROM-Schicht rumprobieren. Sie muss selbsttätig versuchen, ein Ablaufprogramm zum „Laufen“ zu entwickeln. Um einen Schritt zu machen, mussen die Unterprogramme und Treiber der Flash-Schicht in einer gewissen Chronologie angesteuert werden. Ein gutes GI-System lernt und optimiert Fortbewegung ganz von alleine.
Sobald die EEPROM-Schicht ausgebildet ist. Kann sich das System fortbewegen, weglaufen, Futter suchen und hat sich an seine Umwelt adaptiert. Man könnte jetzt zufrieden sein und sich am Rumwuseln des Roboters erfreuen.
Spannend wird’s aber, wenn die oberste Schicht freigeschaltet wird. Hier treffen mit höchstem Abstraktionslevel Ereignisse ein. Hier findet „Kombinieren“ und „Denken“ statt. Hier wird im kybernetischen Sinne gespielt und im regelungstechnischen Sinne optimiert. Hier kommt es auch nicht mehr auf die Geschwindigkeit an.
---------------------
Realisierung
Die GI unterstützt eine generische Vorgehensweise. Zuerst werden die Eigenschaften der Flash-Schicht kodiert. Es entsteht eine Art Betriebssystem des Robotors. Dieses Subsystem kann Befehle mit uniformierten Messages empfangen und Events an die höheren Schichten asynchron senden.
Die EEPROM-Schicht nutzt das Flash-Betriebssystem und dessen Rückmeldungen. Es wird zum Beispiel mit einem leckeren Happen gelockt und muss nun irgendwie seine Betriebsystem-Befehle in geeigneter Weise chronologisch kaskadieren, dass eine Bewegung hin zum Futterhappen stattfindet.
Die Arbeitsweise der EEPROM-Schicht erinnert mehr an einen Homöostaten als an ein intelligentes Wesen. Es optimiert sich selbst und passt sich selbst auch an die Umwelt an.
Auch die EEPROM-Schicht kann Messages empfangen und Events senden. Allerdings schon auf sehr hohem Abstraktionsleveln. Ein typischer Befehl an die EEPROM-Schicht wäre: „gehe drei Schritte die Treppe runter“ oder „fahre mit dem Rad immer geradeaus“.
Die übergeordnete RAM-Schicht ist noch nicht konkreter durchdacht worden. Die kann generisch draufgesatteltwerden, wenn die anderen Schichten laufen.
Lesezeichen