Spiking Neuronal Net (SNN) with Java

Neuron Structure

The neuron itself consists of many dendrites, a soma, an axon, and numerous synapses. In this SNN app, the dendrites carry weights that are optimized during learning. Each dendrite is linked to its own soma; the soma is connected to the axon, and the axon maintains a list of synapses. This arrangement already forms a graph. The synapses then connect to arbitrary other neurons. The synaptic connections are predefined by the specification of neuron fields. Each synapse can form a connection with a dendrite, a soma, an axon, or another synapse. These synaptic connections can be inhibitory or excitatory, and recurrent connections are also possible.

Neuron UML

Neuron Field Structure

The structure of the network is divided into neuron fields that can be configured individually.

For example:

For example:

The structure is always built as a tree. The neurons in these fields can be parameterized and equipped with various connections to different neuron fields. When constructing the connectome, the distribution of connection possibilities can be specified.

For example:

            
ConnectomeBuilder withConnectivity(double fieldPct, double backwardPct, double forwardPct, double siblingPct);