public class DhanModule extends Module implements java.io.Serializable
Modifier and Type | Field and Description |
---|---|
java.lang.String[] |
auxAssInputFileNameAllowedValues
Determines the file names containing the associations.
|
int |
auxInitialCliqueNumber
The number of initial random clusters (all identical).
|
int |
auxInitialCliqueSize
The size of initial random clusters (all identical).
|
double |
backwardMemGammaActAct
Rate for active-to-active backward links to optimize.
|
double |
backwardMemGammaActIna
Rate for active-to-inactive backward links to optimize.
|
double |
backwardMemGammaInaAct
Rate for inactive-to-active backward links to optimize.
|
double |
backwardMemGammaInaIna
Rate for inactive-to-inactive backward links to optimize.
|
double[] |
backwardMemMean
The mean value of all backward links reaching a given site.
|
double |
backwardMemOptRateActAct
Target growth-rate-input for active-to-active backward input.
|
double |
backwardMemOptRateActIna
Target growth-rate-input for active-to-inactive backward input.
|
double |
backwardMemOptRateInaAct
Target growth-rate-input for inactive-to-active backward input.
|
double |
backwardMemOptRateInaIna
Target growth-rate-input for inactive-to-inactive backward input.
|
double[] |
backwardMemStandDev
The standard deviation of all backward links reaching a given site.
|
double |
backwardMemXActive
Critical activities level for a module-neuron to be considered active.
|
double |
backwardMemXInactive
Critical activities level for a module-neuron to be considered inactive.
|
double |
defaultExcitatoryLinkStrength
Standard strength of excitatory links
|
double |
defaultInhibitoryLinkStrength
Standard strength of inhibitory links
|
double |
diffusiveModuleSignal
Has a large value when the current clique is activated due to the influence
of the incoming signal due to the backward connections.
|
double |
diffusiveModuleSignalBackRateThreshold
When the backrate is above this threshold, the diffusive (learning) signal is
activated.
|
double |
diffusiveModuleSignalCriticalValue
When above this critical value, the diffusive (learning) signal activates
generalized Hebbian learning for the backward links.
|
double |
diffusiveModuleSignalRateDown
Deactivation rate for the diffusive module (learning) signal.
|
double |
diffusiveModuleSignalRateUp
Activation rate for the diffusive module (learning) signal.
|
static int |
INTERNAL_LINK_TYPES_NUMBER
The number of different link types in internalLinks[INTERNAL_LINK_TYPES][][].
|
static int |
LINK_EXCITATORY_LONGTERM |
static int |
LINK_EXITATORY_SHORTTERM |
static int |
LINK_INHIBITORY_LONGTERM |
double |
longTermMemCriticalX
Critical presynaptic activities for long-term memory dynamics.
|
double |
longTermMemGammaOpt
Optimization-rate (long-term) for excitatory links
|
double |
longTermMemMinStrength
Mininal values for excitatory links
|
double |
longTermMemOptRate
Optimal growth rate -- central parameter for the working-point optimization.
|
static double |
nearlyActive
Default value for nearly active reservoir/activities level.
|
static double |
nearlyInactive
Default value for nearly empty reservoir/activities level.
|
int |
nResFunctions
Number of different parameter sets for the reservoir functions.
|
double[] |
phiAuxFactor
Auxiliary variable for a fast evaluation of the reservoir function.
|
double[] |
phiAuxShift
Auxiliary variable for a fast evaluation of the reservoir function.
|
double |
phiGammaCoh
Averaging-rate for the inhibitory reservoirs of the winning clique.
|
double |
phiGammaDown
Depletion-rate for the inhibitory reservoir.
|
double |
phiGammaUp
Growth-rate for the inhibitory reservoir.
|
double[] |
phiInverseWidth
Inverse of the reservoir-function width - internal variable.
|
double |
phiXActive
The reservoir depletes when the activities is bigger than `phiXActive'.
|
double |
phiXInactive
The reservoir growths when the activities is smaller than `phiXInactive'.
|
double |
rateInhiWidth
The total inhibitory contribution to the growth rates are normalized, with a
width `rateInhiWidth' for the sigmoidal.
|
static int |
RES_FW_POST |
static int |
RES_FW_PRE |
static int |
RES_FZ_PRE |
static int |
RES_GZ_PRE |
double |
shortTermMemCriticalX
Critical activities strength for short-term memory to be activated.
|
double |
shortTermMemGammaDown
Depletion-rate for short-term synaptic plasticity.
|
double |
shortTermMemGammaUp
Activation-rate for short-term synaptic plasticity.
|
double |
shortTermMemMaxStrength
Maximal value for the short-term synaptic strength.
|
double |
shortTermMemMinExtBias
Minimal external stimulus-strength for short-term memory to be activated.
|
double |
synchronizationStrength
An effective measure (in [0,1]) of clique formation strength, interpreted as
poor-man's synchronization.
|
activities, biases, changeListeners, elapsedTime, elapsedTimeSteps, forwardModules, GENERALIZED_HEBBIAN_LEARNING, HEBBIAN_LEARNING, OJAS_RULE_LEARNING, receptors
Constructor and Description |
---|
DhanModule() |
DhanModule(java.io.File cliquesFile) |
Modifier and Type | Method and Description |
---|---|
void |
addInternalLink(int i,
int j,
int t,
double value) |
void |
afferentMemory(double timeDelta)
Evaluates the synaptic plasticities for the backward links.
|
void |
calculateOneTimeStep(double timeDelta)
A single time step of the dynamics.
|
static java.util.List<java.util.List<java.lang.Integer>> |
cliquesToInteger(java.util.List<java.util.List<java.lang.String>> cliques) |
static <Type> java.util.Map<Type,java.util.Set<Type>> |
cliquesToNetwork(java.util.List<java.util.List<Type>> cliques) |
void |
diffusiveControlSignals(double timeDelta)
Updates the diffusive module control signals.
|
double[] |
getAfferentRates() |
double |
getLink(int i,
int j)
Returns the value of a specific internal link.
|
double |
getLink(int i,
int j,
int t)
Returns the value of a specific internal link.
|
double[] |
getPhiAuxFactor() |
double[] |
getPhiAuxShift() |
double[] |
getPhiCritical()
Returns critical reservoir levels for the reservoir functions.
|
double[] |
getPhiInverseWidth() |
double[] |
getPhiMinValue()
Returns the minimal value for the reservoir functions.
|
double[] |
getPhiWidth()
Returns the reservoir function width.
|
double |
getPhiXActive_xml() |
double |
getRateInhiWidth() |
double[] |
getRates() |
double[] |
getRatesActive() |
double[] |
getRatesInternal() |
double[] |
getRatesNegative() |
double[] |
getRatesPositive() |
double[] |
getReservoir() |
double |
getReservoir(int i)
Returns the reservoir level of a given center.
|
static java.util.List<java.util.List<java.lang.String>> |
loadCliques(java.io.File file) |
void |
longTermMemory(double timeDelta)
Evaluates the long-term synaptic plasticities.
|
void |
printLogFileHeader(java.io.PrintWriter out)
Prints a file header for the log files.
|
void |
readCliques(java.io.File file)
Reads associations in the form of cliques from file.
|
double |
reservoirFunctions(double argument,
int reservoirFunction)
The reservoir functions.
|
void |
reset() |
void |
setLink(int i,
int j,
double value)
Sets the value of a specific internal link.
|
void |
setLink(int i,
int j,
int t,
double value)
Sets the value of a specific internal link.
|
void |
setPhiCritical(double[] _PhiCritical) |
void |
setPhiCritical(double phiCritical_in,
int whichOne)
Sets critical reservoir level for the reservoir functions.
|
void |
setPhiMinValue(double[] _PhiMinValue) |
void |
setPhiMinValue(double argument,
int reservoirFunction)
Sets the minimal value for the reservoir functions.
|
void |
setPhiWidth(double[] _PhiWidth) |
void |
setPhiWidth(double argument,
int reservoirFunction)
Sets the reservoir function width.
|
void |
setRateInhiWidth(double rateInhiWidth_new) |
void |
setSize(int size)
Sets the number of nodes.
|
void |
shortTermMemory(double timeDelta)
Evaluates the short-term synaptic plasticities.
|
void |
statOutputToFile()
Evaluates some statistical properties, like link-strength distribution, for
output on file upon external call and sends the data to the printing
facility.
|
addAfferentModule, addAfferentModule, addBias, addBias, addChangeListener, addForwardModule, addNeuron, addReceptor, exportGraphMLGraph, exportGraphvizGraph, exportGraphvizGraph, exportTGFGraph, exportXfigCircle, exportXfigLattice, getActiveClique, getActivities, getActivity, getAfferentLink, getAfferentLinks, getAfferentModules, getAverageCoordinationNumber, getBias, getBiases, getCliqueGraph, getCliques, getConnectedComponents, getDegreeDistribution, getElapsedTime, getElapsedTimeSteps, getForwardModules, getLearningRate, getLearningRates, getLearningType, getLinkProbability, getLinks, getName, getNeighbors, getNeighbors, getNodeDegree, getNodeDegrees, getNodeInDegree, getNodeInDegrees, getNodeOutDegree, getNodeOutDegrees, getPositiveLinkAverage, getReceptor, getReceptors, getSize, hasAfferentModule, hasForwardModule, isClique, isLearning, learning, multiplyExhibitoryAndInhibitoryLinksSeparately, notifyStateChanged, performOneTimeStep, removeAfferentModule, removeAfferentModules, removeChangeListener, removeForwardModule, removeForwardModules, removeNeuron, setActivities, setActivities, setActivity, setAfferentLink, setAfferentLinks, setAfferentLinks, setBias, setBias, setLearning, setLearningRates, setLearningRates, setLearningType, setLink, setLinks, setName, setNegativeLinks, setPositiveLinkAverage, setPositiveLinks, toString, writeGraphvizSubgraph, writeGraphvizSubgraph
public static final int RES_FW_POST
public static final int RES_FW_PRE
public static final int RES_FZ_PRE
public static final int RES_GZ_PRE
public static final int LINK_EXCITATORY_LONGTERM
public static final int LINK_INHIBITORY_LONGTERM
public static final int LINK_EXITATORY_SHORTTERM
public static double nearlyActive
public static double nearlyInactive
public static final int INTERNAL_LINK_TYPES_NUMBER
public double diffusiveModuleSignal
public double synchronizationStrength
public double defaultInhibitoryLinkStrength
public double defaultExcitatoryLinkStrength
public double rateInhiWidth
public final int nResFunctions
public double phiXActive
public double phiXInactive
public double phiGammaDown
public double phiGammaUp
public double phiGammaCoh
public double shortTermMemGammaDown
public double shortTermMemGammaUp
public double shortTermMemMaxStrength
public double shortTermMemCriticalX
public double shortTermMemMinExtBias
public double longTermMemGammaOpt
public double longTermMemMinStrength
public double longTermMemOptRate
public double longTermMemCriticalX
public double diffusiveModuleSignalRateUp
public double diffusiveModuleSignalRateDown
public double diffusiveModuleSignalCriticalValue
public double diffusiveModuleSignalBackRateThreshold
public double backwardMemXActive
public double backwardMemXInactive
public double backwardMemGammaActAct
public double backwardMemGammaInaAct
public double backwardMemGammaActIna
public double backwardMemGammaInaIna
public double backwardMemOptRateActAct
public double backwardMemOptRateInaAct
public double backwardMemOptRateActIna
public double backwardMemOptRateInaIna
public double[] backwardMemMean
public double[] backwardMemStandDev
public double[] phiInverseWidth
public double[] phiAuxShift
public double[] phiAuxFactor
public int auxInitialCliqueNumber
public int auxInitialCliqueSize
public java.lang.String[] auxAssInputFileNameAllowedValues
public DhanModule() throws java.io.FileNotFoundException
java.io.FileNotFoundException
public DhanModule(java.io.File cliquesFile) throws java.io.FileNotFoundException
java.io.FileNotFoundException
public double getReservoir(int i)
public double getLink(int i, int j)
public double getLink(int i, int j, int t)
public void setLink(int i, int j, double value)
public void setLink(int i, int j, int t, double value)
public void addInternalLink(int i, int j, int t, double value)
public double[] getPhiCritical()
public void setPhiCritical(double phiCritical_in, int whichOne)
public void setPhiMinValue(double[] _PhiMinValue)
public void setPhiWidth(double[] _PhiWidth)
public void setPhiCritical(double[] _PhiCritical)
public double[] getPhiWidth()
public void setPhiWidth(double argument, int reservoirFunction)
public double[] getPhiMinValue()
public void setPhiMinValue(double argument, int reservoirFunction)
argument
- -
the minimal value for phireservoirFunction
- -
the reservoir functionpublic double reservoirFunctions(double argument, int reservoirFunction)
argument
- reservoirFunction
- -
whichOne: 0 =^= f_w^{post}(phi) public static java.util.List<java.util.List<java.lang.String>> loadCliques(java.io.File file) throws java.io.FileNotFoundException
java.io.FileNotFoundException
public static java.util.List<java.util.List<java.lang.Integer>> cliquesToInteger(java.util.List<java.util.List<java.lang.String>> cliques)
public static <Type> java.util.Map<Type,java.util.Set<Type>> cliquesToNetwork(java.util.List<java.util.List<Type>> cliques)
public void readCliques(java.io.File file) throws java.io.FileNotFoundException
--class DhanModule--
The link strength might be either set by hand, or from input. In both cases
the link strength might be weighted be the number contributing cliques.
Normally the number of neurons is determined automatically on input and set.
java.io.FileNotFoundException
public void calculateOneTimeStep(double timeDelta)
--class DhanModule--
Uses the global variables time, deltaTime defined in Brain.
calculateOneTimeStep
in class Module
public void diffusiveControlSignals(double timeDelta)
--class DhanModule--
public void afferentMemory(double timeDelta)
--class DhanModule--
public void longTermMemory(double timeDelta)
--class DhanModule--
public void shortTermMemory(double timeDelta)
--class DhanModule--
public void statOutputToFile()
--class DhanModule--
public double getPhiXActive_xml()
public double getRateInhiWidth()
public void setRateInhiWidth(double rateInhiWidth_new)
public double[] getRates()
public double[] getRatesInternal()
public double[] getReservoir()
public double[] getAfferentRates()
public double[] getRatesActive()
public double[] getRatesPositive()
public double[] getRatesNegative()
public double[] getPhiInverseWidth()
public double[] getPhiAuxShift()
public double[] getPhiAuxFactor()
public void printLogFileHeader(java.io.PrintWriter out)
Module
printLogFileHeader
in class Module