Einführung und Projektziele
In Spiking Neuronalen Netzen (SNNs) werden die Dynamik und das Verhalten der Neuronen durch mehrere wichtige Parameter und Mechanismen bestimmt. Neben dem Schwellenwert, der das Feuern eines Neurons auslöst, gibt es weitere wichtige Parameter, die die zeitliche Dynamik und die Rückkehr zum Ruhewert beeinflussen. Im Gegensatz zu herkömmlichen neuronalen Netzen, die mit kontinuierlichen Werten arbeiten, arbeiten Spiking neuronale Netze mit diskreten Impulsen oder „Spikes“. Sie sind der Funktionsweise des biologischen Nervensystems nachempfunden.
Obwohl ich sehr nah an der Biologie bleiben möchte, muss man die Funktionsweisen und Begriffe der Informatik verwenden. Ein Neuron besteht aus mehreren biologischen Funktionseinheiten wie Dendrit, Soma, Axon und Synapse. Siehe z.B. Wikipedia: Nervenzelle. In der technischen Modellierung werden daraus Objekte, die funktional miteinander interagieren. Aus Sicht der Informatik handelt es sich um Objekte konkreter Instanzen von Klassen, die durch Relationen und Funktionen miteinander verbunden sind. Eine möglichst asynchrone Kommunikation wird bei der Umsetzung angestrebt. Das Netzwerk wird rekurrent angelegt, d. h. die Datenströme sprich Potentiale können beliebig fließen. Jede Kombination von Verbindungen ist möglich: Axo-Axonisch, Axo-Dendritisch, Axo-Somatisch, Axo-Synaptisch und auch inhibitorisch (hemmend) oder exzitatorisch (verstärkend).
Ein wichtiges Thema wird das Erlernen neuer Inhalte sein, das ich mit Hilfe von 'Reinforcement Learning' (RL) realisieren möchte. RL besteht im Wesentlichen aus 3 Komponenten, nämlich der Umgebung (z.B. ein Autorennen) mit ihren
möglichen Aktionen (z.B. Lenken und Beschleunigen des Fahrzeugs), dem Status (z.B. Geschwindigkeit, Position) und dem SNN mit seinen Rezeptoren (z.B. Auge) und Effektoren (Muskeln).
Im RL übernimmt der Agent die Rolle eines Vermittlers zwischen der Umwelt und dem Netzwerk. Er muss die Signale aus der Umwelt den Rezeptoren zuordnen, die Effektoren in Aktionen umsetzen und entsprechend übersetzen.
Das SNN sollte sich nach Möglichkeit selbst kalibrieren. Es gibt also keine zusätzliche Instanz, die z.B. die Parameter (z.B. Gewichte) anpasst.
Der Agent muss das Feedback (z.B. Plazierung im Rennen) aus der Umwelt interpretieren und dem SNN mitteilen, wie sich die Aktion auf die Umwelt ausgewirkt hat. Er berechnet also ein Delta und übermittelt es an spezialisierte Feedback - Neuronen.
Ich habe mich für diese Art der Rückmeldung (Feedback) aus folgenden Gründen entschieden: