Bei der Modellierung des binären Neurons wird schrittweise vorgegangen, und zwar bottom up, d.h. zuerst werden die Grundelemente bereitgestellt, und dann werden aus diesen komplexere Einheiten zusammengebaut.
Im Fall des binären Neurons gibt es zwei Grundelemente: die Summenfunktion und die Aktivierungsfunktion . Beide werden so konstruiert, daß man ein neues Modell eröffnet und dieses unter dem neuen Thema Neuron abspeichert. Das Bild 10.1 zeigt das FCL-Modell einer Summenfunktion mit zwei Eingängen und zwei Gewichten.
Das Bild 10.10 zeigt das FCL-Modell der binären Aktivierungsfunktion. Sie hat als einen Input den Output der Summenfunktion und vergleicht diesen Werte mittels der Funktion (wenn größer oder gleich). Ist der Wert der Summenfunktion größer oder gleich dem Schwellwert, dann wird eine '1' ausgegeben, sonst eine '0'.
Dann kann man das eigentliche Modell des binären Neurons bauen, indem man ein neues Modell beginnt und die vorher gebauten Modelle und als Elemente aus der Bibliothek hereinzieht. Fügt man die entsprechenden Input und Outputparameter noch hinzu und verbindet alle Ein- und Ausgänge, dann erhält man das Neuron (vgl. das Bild 10.3.
Um dieses Neuron testen zu können, benötigt man jetzt noch eine geeignete Testumgebung. Im Bild 10.4 ist solch ein Testaufbau zu sehen. Eine Umgebung , die über eine Uhr gesteuert wird, liefert zu jedem Zeitpunkt zwei Stimuli und . Diese Stimuli erscheinen an den Eingängen des binären Neurons. Zusützlich muß man noch eingeben, welche Gewichte man dem binären Neuron übermitteln will sowie einen Schwellwert .
Wenn man für die Ein- und Ausgänge wie auch für die Gewichte binäre Werte {0,1} annimmt, dann gibt es für einen bestimmten Schwellwert 16 verschiedene Konstellationen. In einem Testlauf kann man diese durchtesten. Für den Fall mit zeigt das Bild 10.5 den Output des binären Neurons für 20 Durchläufe. Man kann erkennen, daß der Schwellwert nur dann überwunden wird, wenn wenigstens ein Eingang aktiv ist und das Gewichte den Wert '1' hatt.
Die Umgebung (vgl. Bild 10.6) besteht aus zwei Listen , jeweils realisiert als 1-dimensionale Matrizen, die für n-viele Zeitpunkt vorgegebene Werte enthalten. Jede Liste wird technisch gesehen als die 1.Spalte (mit Index '0'!) einer 1-dimensionalen Matrix, die n-viele Zeilen enthält. Während der Wert für die Spalte also immer auf '0' bleibt, wird -abhängig vom Zeitpunkt-, eine andere Zeile gewählt. Dies geschieht über den Parameter , der z.B. über eine Uhr gesteuert werden kann. Abhängig von dem festen Wert und den variierenden Werten von können dann mit der Funktion gezielt Werte aus den Listen gelesen werden. Man kann die Werte für die Parameter entweder manuell in eine Matrix eingeben oder aber die Adresse für eine Datei im CSV-Format. Im letzteren Fall wird diese Datei geladen und die Werte aus dieser Datei werden in die Matrix eingesetzt.
Gerd Doeben-Henisch 2013-01-17