Skip to content

SoftwareNeuronEngine

DavidFreely edited this page Nov 12, 2025 · 11 revisions

Related: ConceptNeuronFrequencyDetection, SoftwareNeuronServer, SoftwareUINeuron, SoftwarePI

Software that manages/simulates a large array of SoftwareNeurons and SoftwareSynapses and calculates their states (e.g., charge, firing). (Ensures that when a neuron fires, all of its outgoing synapses are activated and the corresponding target neurons are affected.)

Written in C++.

Access

There is a C++ demonstration program ("CppEngineTest") included in the source code which shows how the functionality of the engine can be accessed.

There is a similar program in C# ("CsEngineTest") that uses an intermediate translation library, the "NeuronEngineWrapper". With this method the neuron-engine is accessible from any language supported by .NET.

The Brain Simulator itself (UI?) interfaces to the Neuron Engine through a translation module ("NeuronHandler.cs").

Agnostic

The neuron engine itself doesn't need to know about module-functions or a graph.

CalculationFrequency

// Depends on the CycleTime of a SoftwareNeuronEngineCycle.

NeuronActivation

Each neuron is evaluated to determine if the internal value exceeds a threshold. If it does, then the synapses list is processed and the weight of each synapse is added to the internal value of the corresponding target neuron.

For convenience, the resting state of the neuron is defined as 0.0 (floating-point number) and the threshold is defined as 1.0—these are different from the actual voltages observed in biological neurons and are arbitrary values since all other values within the system are scaled accordingly.

After a spike of a neuron the internal value is set to 0.0 Even if incoming values from synapses went over 1.0; no rest is left.

NeuronActivationAmount

Only a fraction of all the neurons of a UKS are active/firing at any given time (ConceptGraphEnergyEfficiency).

Objects

  • NeuronArrayBase
    • Contains a vector of NeuronBase objects
  • NeuronBase
    • Contains a Vector of SynapsBase objects
  • SynapseBase

Clone this wiki locally