#include <Population.h>
Inheritance diagram for verve::Population:
Public Member Functions | |
VERVE_DECL | Population () |
virtual VERVE_DECL | ~Population () |
virtual VERVE_DECL void VERVE_CALL | init (unsigned int numNeurons) |
virtual VERVE_DECL void VERVE_CALL | resetShortTermMemory () |
virtual VERVE_DECL void VERVE_CALL | project (Population *pop, InitialWeightMethod initWeightMethod, real maxInputPopActivationSum) |
virtual VERVE_DECL void VERVE_CALL | projectTD (Population *pop, TDConnectionType type, InitialWeightMethod initWeightMethod, real maxInputPopActivationSum) |
virtual VERVE_DECL void VERVE_CALL | updateFiringRatesLinear () |
virtual VERVE_DECL void VERVE_CALL | updateFiringRatesLinearBoundedNegOneToOne () |
virtual VERVE_DECL void VERVE_CALL | updateFiringRatesLinearBoundedZeroToOne () |
virtual VERVE_DECL void VERVE_CALL | updateFiringRatesSigmoid () |
virtual VERVE_DECL real VERVE_CALL | trainPreDeltaRuleLinear (const real *actualOutputs, real learningFactor) |
virtual VERVE_DECL unsigned int VERVE_CALL | getNumNeurons () const |
virtual VERVE_DECL Neuron *VERVE_CALL | getNeuron (unsigned int i) |
virtual VERVE_DECL void VERVE_CALL | normalizeInputWeights () |
virtual VERVE_DECL void VERVE_CALL | setPostETraceDecayFactors (real value) |
virtual VERVE_DECL void VERVE_CALL | setPostTDDiscountFactors (real value) |
Protected Member Functions | |
virtual void | clear () |
virtual void | createNeuron (unsigned int id) |
Protected Attributes | |
std::vector< Neuron * > | mNeurons |
std::vector< Projection * > | mOutputProjections |
Definition at line 36 of file Population.h.
|
Definition at line 31 of file Population.cpp. |
|
Destroys all Neurons in the Population.
Definition at line 35 of file Population.cpp. References clear(). |
|
Destroys all Neurons.
Reimplemented in verve::RBFPopulation. Definition at line 54 of file Population.cpp. References mNeurons. Referenced by verve::RBFPopulation::clear(), init(), and ~Population(). |
|
Creates a new Neuron with the given ID value.
Reimplemented in verve::RBFPopulation. Definition at line 227 of file Population.cpp. References mNeurons. Referenced by init(). |
|
Returns the Neuron at the given index.
Definition at line 193 of file Population.cpp. References mNeurons. Referenced by verve::Projection::createConnections(), verve::Projection::init(), verve::Projection::storeTargetNeuronReferences(), and verve::RLModule::updateCriticOutput(). |
|
Returns the number of Neurons in the Population.
Definition at line 188 of file Population.cpp. References mNeurons. Referenced by verve::Projection::createConnections(), verve::Projection::init(), verve::Projection::storeTargetNeuronReferences(), and trainPreDeltaRuleLinear(). |
|
Creates the given number of Neurons for the Population. Clears any existing Neurons first. This can be called multiple times during the life of the Population. Reimplemented in verve::UltraSparseCodePopulation. Definition at line 40 of file Population.cpp. References clear(), createNeuron(), and mNeurons. Referenced by verve::UltraSparseCodePopulation::init(), verve::RBFPopulation::init(), and verve::RLModule::RLModule(). |
|
Normalizes the weights of all Neurons' input Connections to keep them within the range [-1, 1].
Definition at line 198 of file Population.cpp. References mNeurons. |
|
Creates a new output Projection from this Population to the given Population. Sets the Projection's inital Connection weight method and the maximum activation sum of the presynaptic Population (used to determine initial weight noise). Definition at line 89 of file Population.cpp. References verve::Projection::init(), and mOutputProjections. |
|
Creates a TDProjection from this Population to the given one. The new TDProjection will use the given type of TDConnections. Sets the Projection's inital Connection weight method and the maximum activation sum of the presynaptic Population (used to determine initial weight noise). Definition at line 97 of file Population.cpp. References verve::Projection::init(), and mOutputProjections. Referenced by verve::RLModule::RLModule(). |
|
Resets temporary dynamics without affecting learned parameters.
Reimplemented in verve::RBFPopulation, and verve::UltraSparseCodePopulation. Definition at line 74 of file Population.cpp. References mNeurons. Referenced by verve::UltraSparseCodePopulation::resetShortTermMemory(), and verve::RBFPopulation::resetShortTermMemory(). |
|
Sets the eligibility trace decay factor for all output Projections (which are assumed to be TDProjections).
Definition at line 207 of file Population.cpp. References mOutputProjections. Referenced by verve::RLModule::setETraceTimeConstant(). |
|
Sets the TD discount factor for all output Projections (which.
Definition at line 217 of file Population.cpp. References mOutputProjections. Referenced by verve::RLModule::setTDDiscountTimeConstant(). |
|
Trains the input Connection weights using a simple delta rule based on the errors between the Population's outputs and the given actual outputs. Assumes the Neurons are using a linear activation function. The size of the given array of actual output data must match that of the Population. Returns the mean squared error. Definition at line 141 of file Population.cpp. References getNumNeurons(), and mNeurons. |
|
Updates the firing rates of the Neurons using linear activation.
Definition at line 105 of file Population.cpp. References mNeurons. Referenced by verve::RLModule::updateCriticOutput(). |
|
Updates the firing rates of the Neurons using linear activation. The firing rates are bounded to [-1, 1]. Definition at line 114 of file Population.cpp. References mNeurons. |
|
Updates the firing rates of the Neurons using linear activation. The firing rates are bounded to [0, 1]. Definition at line 123 of file Population.cpp. References mNeurons. |
|
Updates the firing rates of the Neurons using sigmoid activation.
Definition at line 132 of file Population.cpp. References mNeurons. |
|
|
A list of all output Projections.
Definition at line 128 of file Population.h. Referenced by verve::RBFPopulation::connectNewRBFToTargets(), project(), projectTD(), setPostETraceDecayFactors(), and setPostTDDiscountFactors(). |