TimerClass¶
Neuromorphic Embodied Agents that Learn (NEAL) based functions to construct different timers and functions to effect other states.
-
class
nmcog.spinnaker.specialfunction.neal.timerClass.TimerClass(simName='spinnaker', spinnVersion=8)¶ This is the class for constructing different types of timers. It also provide functions for the timers
- to effect other states
- to be turned on by other states, spike sources and neurons.
-
connectSpikeGenToStart(spikeGen)¶ See FSAHelperFunctions
.turnOnStateFromSpikeSource
-
createNeurons(numberStates)¶ For a given number of states (under consideration) the number of timer cells equals the number of states times the size of the cell assembly (given by FSAHelperFunctions
.CA_SIZE).By default FSAHelperFunctions
.CA_SIZE= 10. Therefore, if the number of possible states is two then there will be twenty timer cells.Note:
- A timer cell is PyNN’s IF_cond_exp
- The timer cells are collectively the PyNN’s population
-
makeOneStateStopTimerSynapses()¶ See FSAHelperFunctions
.makeCA, FSAHelperFunctions.stateStimulatesState, and FSAHelperFunctions.stateTurnsOffState
-
makeStopNoRestartTimerSynapses()¶ Once a timercell is created using
createNeurons()returning a neuron population composed of \(n \times 10\) cells where n is its number of possible states.This function connects all its possible states.
Consider a timercell, timerX with five states then
sssssssssssssssssssssssssssss s ccccccccc s ccccccccc s ccccccccc ccccccccc s c xxxxx c s c xxxxx c s c xxxxx c c xxxxx c V V x V c V V x V c s V x V c V x V c ooooooooooooo ooooooooooooo ooooooooooooo ooooooooooooo ooooooooooooo o timerX CA o o timerX CA o o timerX CA o o timerX CA o o timerX CA o o state-0 o o state-1 o o state-2 o o state-3 o o state-4 o ooooooooooooo ooooooooooooo ooooooooooooo ooooooooooooo ooooooooooooo ^ ^ ^ s ssssssssssssssssssssssssssssssssssssssssss
all the states are numbers 0, 1, …, 4 (= 5-1)
each state is represented by a cell assembly using FSAHelperFunctions
.makeCA- here four cell assemblies one for each of the five states
starting from the first state, 0 (above, state-0),
each state (i.e. its cell assembly) stimulates (xxxxxx) its immediate succeeding state using FSAHelperFunctions
.stateStimulatesState- notice that the first state is not simulated
each state (i.e. its cell assembly) is turned-off (cccccc) by its immediate succeeding state using FSAHelperFunctions
.stateTurnsOffState- notice that the last state is not turned-off using FSAHelperFunctions
.stateTurnsOffState
- notice that the last state is not turned-off using FSAHelperFunctions
starting from the third state, 2 (above, state-2)
each state turns off (ssssss) all the preceeding states
- notice that the last state does not turn-off its preceeding states.
Note:
- 10 in \(n \times 10\) is the default FSAHelperFunctions
.CA_SIZE= 10 - The timer cells are collectively the PyNN’s population
- A timer cell is PyNN’s IF_cond_exp
-
makeStopTimerSynapses()¶ See FSAHelperFunctions
.stateStimulatesStateand FSAHelperFunctions.stateTurnsOffState
-
neuronStopsTimer(stopNeurons, stopNeuron)¶ See FSAHelperFunctions
.oneNeuronTurnsOffState
-
oneNeuronHalfStartsTimer(fromNeurons, fromNeuron)¶ See FSAHelperFunctions
.oneNeuronStimulatesStateThis differs fromoneNeuronStartsTimer()because hereself.oneNeuronHalfWeightis used.
-
oneNeuronStartsTimer(fromNeurons, fromNeuron)¶ See FSAHelperFunctions
.oneNeuronStimulatesStateThis differs fromoneNeuronHalfStartsTimer()because hereself.oneNeuronFullWeightis used.
-
printResults(fileName)¶ Legacy.
-
setupRecording()¶ Records spikes and voltages (i.e. analog signals).
-
stateHalfStartsTimer(stateNeurons, state)¶ See FSAHelperFunctions
.stateHalfTurnsOnState
-
stateStartsTimer(stateNeurons, state)¶ See FSAHelperFunctions
.stateTurnsOnState
-
stateStopsTimer(stateNeurons, state)¶ See FSAHelperFunctions
.stateTurnsOffState
-
timerActivatesState(stateNeurons, state, wt)¶ See FSAHelperFunctions
.stateStimulatesState
-
timerPreventsState(stateNeurons, state)¶ See FSAHelperFunctions
.stateTurnsOffState
-
timerStartsState(stateNeurons, state)¶ See FSAHelperFunctions
.stateStimulatesState