BIBI Model Specification¶
Schema Document Properties¶
- Target Namespace
- Element Qualifiers
By default, local element declarations belong to this schema’s target namespace.
- Attribute Qualifiers
By default, local attribute declarations have no namespace.
Declared Namespaces¶
Prefix |
Namespace |
---|---|
(default) |
|
xml |
|
xs |
|
xsd |
Global Declarations¶
Element: bibi¶
- Name
bibi
- Type
BIBIConfiguration
- Multiplicity
[1]
- Nillable
no
- Abstract
no
XML Instance Representation¶
<bibi>
<timestep> TimeStep </timestep> [0..1]
<brainModel> BrainModel </brainModel> [1]
<bodyModel> SDFFilename </bodyModel> [1]
<extRobotController> ScriptFilename </extRobotController> [0..1]
<configuration> ConfFile </configuration> [0..*]
<connectors> NeuronConnector </connectors> [0..*]
<synapseDynamics> SynapseDynamics </synapseDynamics> [0..*]
<transferFunction> TransferFunction </transferFunction> [0..*]
</bibi>
Global Definitions¶
Complex Type: Add¶
Super-types |
FlowExpression < Operator (by extension) < Add (by extension) |
Sub-types |
None |
- Name
Add
- Abstract
no
- Documentation
The sum of all operands
Properties¶
XML Instance Representation¶
<...>
<operand> FlowExpression </operand> [2..*]
</...>
Complex Type: AllToAllConnector¶
Super-types |
NeuronConnector < AllToAllConnector (by extension) |
Sub-types |
None |
- Name
AllToAllConnector
- Abstract
no
- Documentation
This connector type is obsolete.
Properties¶
XML Instance Representation¶
<... weights="double [0..1]" delays="double [0..1]" name="string [0..1]"/>
Complex Type: Argument¶
Super-types |
None |
Sub-types |
None |
- Name
Argument
- Abstract
no
- Documentation
A named argument
Properties¶
Element value¶
- Name
value
- Type
FlowExpression
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
The value passed for this argument
Attribute name¶
- Name
name
- Type
string
- Multiplicity
[1]
- Documentation
The name of this argument
XML Instance Representation¶
<... name="string [1]">
<value> FlowExpression </value> [1]
</...>
Complex Type: ArgumentReference¶
Super-types |
FlowExpression < ArgumentReference (by extension) |
Sub-types |
None |
- Name
ArgumentReference
- Abstract
no
- Documentation
A reference to an argument, either a device or a local variable
Properties¶
Attribute name¶
- Name
name
- Type
string
- Multiplicity
[1]
- Documentation
The name of the device or local variable
Attribute property¶
- Name
property
- Type
string
- Multiplicity
[0..1]
- Documentation
If specified, only a property of the local variable is referenced. Otherwise, the value itself (or the default property of a device) is selected.
XML Instance Representation¶
<... name="string [1]" property="string [0..1]"/>
Complex Type: BIBIConfiguration¶
Super-types |
None |
Sub-types |
None |
- Name
BIBIConfiguration
- Abstract
no
- Documentation
This class represents the root of the BIBI configuration.
Properties¶
Element timestep¶
- Name
timestep
- Type
TimeStep
- Multiplicity
[0..1]
- Nillable
no
- Abstract
no
- Documentation
If specified, the CLE uses a different timestep than the default timestep of 20ms. The timestep is specified in milliseconds and depicts the time between two successive loops of the CLE in simulation time.
Element brainModel¶
- Name
brainModel
- Type
BrainModel
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
The brain model depicts a path to the neural network model.
Element bodyModel¶
- Name
bodyModel
- Type
SDFFilename
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
The path to the robot model that should be used. This can either be a path to an SDF model or a path to a zip file containing all required assets for a robot. This zip file must have a file model.sdf at the root of the archive.
Element extRobotController¶
- Name
extRobotController
- Type
ScriptFilename
- Multiplicity
[0..1]
- Nillable
no
- Abstract
no
- Documentation
A path to an external robot controller. If specified, the robot controller is started when the simulation begins and stopped when the simulation is over. Therefore, the path must be a path to a shell script that offers a function start and a function stop.
Element configuration¶
- Name
configuration
- Type
ConfFile
- Multiplicity
[0..*]
- Nillable
no
- Abstract
no
- Documentation
The configuration entries of an experiment depict additional files required for the simulation of experiments using this BIBI configuration.
Element connectors¶
- Name
connectors
- Type
NeuronConnector
- Multiplicity
[0..*]
- Nillable
no
- Abstract
no
- Documentation
A list of connectors. This can be useful when specifying transfer functions
Element synapseDynamics¶
- Name
synapseDynamics
- Type
SynapseDynamics
- Multiplicity
[0..*]
- Nillable
no
- Abstract
no
- Documentation
A list of synapse dynamics. Such a synapse dynamic can be referenced later on in neural network devices.
Element transferFunction¶
- Name
transferFunction
- Type
TransferFunction
- Multiplicity
[0..*]
- Nillable
no
- Abstract
no
- Documentation
The transfer functions that are used to couple a neural network to robot
XML Instance Representation¶
<...>
<timestep> TimeStep </timestep> [0..1]
<brainModel> BrainModel </brainModel> [1]
<bodyModel> SDFFilename </bodyModel> [1]
<extRobotController> ScriptFilename </extRobotController> [0..1]
<configuration> ConfFile </configuration> [0..*]
<connectors> NeuronConnector </connectors> [0..*]
<synapseDynamics> SynapseDynamics </synapseDynamics> [0..*]
<transferFunction> TransferFunction </transferFunction> [0..*]
</...>
Complex Type: BIBITransferFunction¶
Super-types |
TransferFunction < BIBITransferFunction (by extension) |
Sub-types |
|
- Name
BIBITransferFunction
- Abstract
yes
- Documentation
This type denotes the abstract base type of Transfer Functions specified entirely in the BIBI model, in XML
Properties¶
Element local¶
- Name
local
- Type
Local
- Multiplicity
[0..*]
- Nillable
no
- Abstract
no
- Documentation
This denotes the local variables of this transfer function.
Element device¶
- Name
device
- Type
DeviceChannel
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
This denotes device channels, connections of the transfer function to the neural network using exactly one device.
Element deviceGroup¶
- Name
deviceGroup
- Type
DeviceGroupChannel
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
This denotes the device group channels, connections of transfer functions to the neural network using a one-dimensional array of devices.
Element topic¶
- Name
topic
- Type
TopicChannel
- Multiplicity
[0..*]
- Nillable
no
- Abstract
no
- Documentation
This denotes the connections of the transfer function to robot control channels.
Attribute name¶
- Name
name
- Type
string
- Multiplicity
[1]
- Documentation
The name of the transfer function. This is used to identify the transfer function in order to update or delete it in a running simulation.
XML Instance Representation¶
<... name="string [1]">
<local> Local </local> [0..*]
<device> DeviceChannel </device> [1]
<deviceGroup> DeviceGroupChannel </deviceGroup> [1]
<topic> TopicChannel </topic> [0..*]
</...>
Complex Type: BrainModel¶
Super-types |
None |
Sub-types |
None |
- Name
BrainModel
- Abstract
no
- Documentation
A neural network description as used in the CLE
Properties¶
Element file¶
- Name
file
- Type
BrainFilename
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
A path to the neural network file.
Element populations¶
- Name
populations
- Type
MultiNeuronSelector
- Multiplicity
[0..*]
- Nillable
no
- Abstract
no
- Documentation
The populations in this field are the explicitly defined populations. Each of this population is defined as a view of an assumed ‘circuit’ population.
XML Instance Representation¶
<...>
<file> BrainFilename </file> [1]
<populations> MultiNeuronSelector </populations> [0..*]
</...>
Complex Type: Call¶
Super-types |
FlowExpression < Call (by extension) |
Sub-types |
None |
- Name
Call
- Abstract
no
- Documentation
A call to a static method
Properties¶
Element argument¶
- Name
argument
- Type
Argument
- Multiplicity
[1..*]
- Nillable
no
- Abstract
no
- Documentation
Named arguments that are passed to the selected method
Attribute type¶
- Name
type
- Type
string
- Multiplicity
[1]
- Documentation
A reference to the static method. This is specified as a full path of a Python function, including both the path of the module and the name of the function. For this to work, the function must be static, i.e. a global function on that module or a static class function.
XML Instance Representation¶
<... type="string [1]">
<argument> Argument </argument> [1..*]
</...>
Complex Type: ChainSelector¶
Super-types |
NeuronGroupSelector < ChainSelector (by extension) |
Sub-types |
None |
- Name
ChainSelector
- Abstract
no
- Documentation
A chain of neurons or neuron groups
Properties¶
Element neurons¶
- Name
neurons
- Type
NeuronSelector
- Multiplicity
[0..*]
- Nillable
no
- Abstract
no
- Documentation
Single neuron connections such as single neurons
Element connectors¶
- Name
connectors
- Type
NeuronGroupSelector
- Multiplicity
[0..*]
- Nillable
no
- Abstract
no
- Documentation
Existing groups of neurons
XML Instance Representation¶
<...>
<neurons> NeuronSelector </neurons> [0..*]
<connectors> NeuronGroupSelector </connectors> [0..*]
</...>
Complex Type: ConfFile¶
Super-types |
None |
Sub-types |
None |
- Name
ConfFile
- Abstract
no
- Documentation
This type denotes an additional configuration entry that consists of a file and a purpose.
Properties¶
Attribute src¶
- Name
src
- Type
string
- Multiplicity
[1]
- Documentation
The source of a configuration entry is a path to a file that contains the necessary information. The path is relative to the BIBI model.
Attribute type¶
- Name
type
- Type
ConfType
- Multiplicity
[1]
- Documentation
The type of a configuration entry denotes the purpose how this entry is used. This is used to decouple the purpose of a configuration entry from the file name.
XML Instance Representation¶
<... src="string [1]" type="ConfType [1]"/>
Complex Type: Constant¶
Super-types |
FlowExpression < Constant (by extension) |
Sub-types |
None |
- Name
Constant
- Abstract
no
- Documentation
A constant as a flow element
Properties¶
Attribute value¶
- Name
value
- Type
double
- Multiplicity
[1]
- Documentation
The value for this constant
XML Instance Representation¶
<... value="double [1]"/>
Complex Type: ConstantString¶
Super-types |
FlowExpression < ConstantString (by extension) |
Sub-types |
None |
- Name
ConstantString
- Abstract
no
- Documentation
A constant string
Properties¶
Attribute value¶
- Name
value
- Type
string
- Multiplicity
[1]
- Documentation
The value of this string constant
XML Instance Representation¶
<... value="string [1]"/>
Complex Type: DeviceChannel¶
Super-types |
None |
Sub-types |
None |
- Name
DeviceChannel
- Abstract
no
- Documentation
This type denotes a connection of a transfer function to a neural network
Properties¶
Element neurons¶
- Name
neurons
- Type
NeuronSelector
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
This specifies the neurons that should be connected to this neural connector device
Element connector¶
- Name
connector
- Type
NeuronConnector
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
Additional information on the connection to the neurons
Element connectorRef¶
- Name
connectorRef
- Type
NeuronConnectorRef
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
A reference to a reusable connector
Element synapseDynamics¶
- Name
synapseDynamics
- Type
SynapseDynamics
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
Additional information on the dynamics of the connection of this device to the neural network
Element synapseDynamicsRef¶
- Name
synapseDynamicsRef
- Type
SynapseDynamicsRef
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
A reference to a reusable synapse dynamics
Element target¶
- Name
target
- Type
NeuronTarget
- Multiplicity
[0..1]
- Nillable
no
- Abstract
no
- Documentation
The target of this connection. This configuration is useful in particular for spike source devices such as Poisson generators. By default, these devices are excitatory but they can be configured to inhibit connected neurons.
Element body¶
- Name
body
- Type
FlowExpression
- Multiplicity
[0..1]
- Nillable
no
- Abstract
no
- Documentation
This element is only meaningful for spike sources. It depicts the value to which the device should be configured.
Attribute name¶
- Name
name
- Type
string
- Multiplicity
[1]
- Documentation
The name of this device channel
Attribute type¶
- Name
type
- Type
DeviceType
- Multiplicity
[1]
- Documentation
The type of the neural network connection specified with this device channel
XML Instance Representation¶
<... name="string [1]" type="DeviceType [1]">
<neurons> NeuronSelector </neurons> [1]
<connector> NeuronConnector </connector> [1]
<connectorRef> NeuronConnectorRef </connectorRef> [1]
<synapseDynamics> SynapseDynamics </synapseDynamics> [1]
<synapseDynamicsRef> SynapseDynamicsRef </synapseDynamicsRef> [1]
<target> NeuronTarget </target> [0..1]
<body> FlowExpression </body> [0..1]
</...>
Complex Type: DeviceGroupChannel¶
Super-types |
None |
Sub-types |
None |
- Name
DeviceGroupChannel
- Abstract
no
- Documentation
This type denotes a connection of a transfer function to a neural network using an array of devices
Properties¶
Element neurons¶
- Name
neurons
- Type
NeuronGroupSelector
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
This specifies the neurons that should be connected to this neural connector device
Element connector¶
- Name
connector
- Type
NeuronConnector
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
Additional information on the connection to the neurons
Element connectorRef¶
- Name
connectorRef
- Type
NeuronConnectorRef
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
A reference to a reusable connector
Element synapseDynamics¶
- Name
synapseDynamics
- Type
SynapseDynamics
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
Additional information on the dynamics of the connection of this device to the neural network
Element synapseDynamicsRef¶
- Name
synapseDynamicsRef
- Type
SynapseDynamicsRef
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
A reference to a reusable synapse dynamics
Element target¶
- Name
target
- Type
NeuronTarget
- Multiplicity
[0..1]
- Nillable
no
- Abstract
no
- Documentation
The target of this connection. This configuration is useful in particular for spike source devices such as Poisson generators. By default, these devices are excitatory but they can be configured to inhibit connected neurons.
Element body¶
- Name
body
- Type
FlowExpression
- Multiplicity
[0..1]
- Nillable
no
- Abstract
no
- Documentation
This element is only meaningful for spike sources. It depicts the value to which the device should be configured.
Attribute name¶
- Name
name
- Type
string
- Multiplicity
[1]
- Documentation
The name of this device group channel
Attribute type¶
- Name
type
- Type
DeviceType
- Multiplicity
[1]
- Documentation
The type of the neural network connection specified with this device group channel
XML Instance Representation¶
<... name="string [1]" type="DeviceType [1]">
<neurons> NeuronGroupSelector </neurons> [1]
<connector> NeuronConnector </connector> [1]
<connectorRef> NeuronConnectorRef </connectorRef> [1]
<synapseDynamics> SynapseDynamics </synapseDynamics> [1]
<synapseDynamicsRef> SynapseDynamicsRef </synapseDynamicsRef> [1]
<target> NeuronTarget </target> [0..1]
<body> FlowExpression </body> [0..1]
</...>
Complex Type: Divide¶
Super-types |
FlowExpression < Operator (by extension) < Divide (by restriction) |
Sub-types |
None |
- Name
Divide
- Abstract
no
- Documentation
The quotient of two operands
Properties¶
Element operand¶
- Name
operand
- Type
FlowExpression
- Multiplicity
[2..2]
- Nillable
no
- Abstract
no
- Documentation
The arguments of the operator expression
XML Instance Representation¶
<...>
<operand> FlowExpression </operand> [2..2]
</...>
Complex Type: FixedNumberPreConnector¶
Super-types |
NeuronConnector < FixedNumberPreConnector (by extension) |
Sub-types |
None |
- Name
FixedNumberPreConnector
- Abstract
no
- Documentation
This connector type is obsolete.
XML Instance Representation¶
<... weights="double [0..1]" delays="double [0..1]" name="string [0..1]" count="positiveInteger [1]"/>
Complex Type: FlowExpression¶
Super-types |
None |
Sub-types |
|
- Name
FlowExpression
- Abstract
yes
- Documentation
The abstract base class for an information flow expression. In the scope of the Transfer functions, an information flow is an expression without any control flow.
Properties¶
XML Instance Representation¶
<.../>
Complex Type: Index¶
Super-types |
NeuronSelector < Index (by extension) |
Sub-types |
None |
- Name
Index
- Abstract
no
- Documentation
Selection of exactly one neuron using an index of a base population
Properties¶
Attribute index¶
- Name
index
- Type
nonNegativeInteger
- Multiplicity
[1]
- Documentation
The index of the selected neuron within its population
XML Instance Representation¶
<... population="string [1]" index="nonNegativeInteger [1]"/>
Complex Type: IndexTemplate¶
Super-types |
NeuronSelectorTemplate < IndexTemplate (by extension) |
Sub-types |
None |
- Name
IndexTemplate
- Abstract
no
- Documentation
A template for an index-based neuron selection
Properties¶
Attribute index¶
- Name
index
- Type
TemplatePattern
- Multiplicity
[1]
- Documentation
The template for the index to access the neurons
XML Instance Representation¶
<... index="TemplatePattern [1]"/>
Complex Type: List¶
Super-types |
NeuronSelector < MultiNeuronSelector (by extension) < List (by extension) |
Sub-types |
None |
- Name
List
- Abstract
no
- Documentation
Selection of a list of neurons using their indices
Properties¶
Element element¶
- Name
element
- Type
nonNegativeInteger
- Multiplicity
[1..*]
- Nillable
no
- Abstract
no
- Documentation
The indices of selected neurons
XML Instance Representation¶
<... population="string [1]">
<element> nonNegativeInteger </element> [1..*]
</...>
Complex Type: ListTemplate¶
Super-types |
NeuronSelectorTemplate < ListTemplate (by extension) |
Sub-types |
None |
- Name
ListTemplate
- Abstract
no
- Documentation
A template for a list-based neuron selection
Properties¶
Element element¶
- Name
element
- Type
TemplatePattern
- Multiplicity
[1..*]
- Nillable
no
- Abstract
no
- Documentation
Templates for the indices of selected neurons
XML Instance Representation¶
<...>
<element> TemplatePattern </element> [1..*]
</...>
Complex Type: Local¶
Super-types |
None |
Sub-types |
None |
- Name
Local
- Abstract
no
- Documentation
A local variable
Properties¶
Element body¶
- Name
body
- Type
FlowExpression
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
The initial value for this local variable
Attribute name¶
- Name
name
- Type
string
- Multiplicity
[1]
- Documentation
The name of the local variable
XML Instance Representation¶
<... name="string [1]">
<body> FlowExpression </body> [1]
</...>
Complex Type: MapSelector¶
Super-types |
NeuronGroupSelector < MapSelector (by extension) |
Sub-types |
None |
- Name
MapSelector
- Abstract
no
- Documentation
An indexed mapping of neurons to neuron groups. As index, either a number or a population may be used. In the latter case, the size of the given population is used as count.
Properties¶
Element count¶
- Name
count
- Type
positiveInteger
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
The number of neural network connections contained in this indexed mapping
Element source¶
- Name
source
- Type
MultiNeuronSelector
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
The source population. If possibility is used, the indexed group consists of one neuron selection per neuron in the source group
Element pattern¶
- Name
pattern
- Type
NeuronSelectorTemplate
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
The pattern that shall be used to select neurons
XML Instance Representation¶
<...>
<count> positiveInteger </count> [1]
<source> MultiNeuronSelector </source> [1]
<pattern> NeuronSelectorTemplate </pattern> [1]
</...>
Complex Type: Max¶
Super-types |
FlowExpression < Operator (by extension) < Max (by extension) |
Sub-types |
None |
- Name
Max
- Abstract
no
- Documentation
The maximum of the provided values
Properties¶
XML Instance Representation¶
<...>
<operand> FlowExpression </operand> [2..*]
</...>
Complex Type: Min¶
Super-types |
FlowExpression < Operator (by extension) < Min (by extension) |
Sub-types |
None |
- Name
Min
- Abstract
no
- Documentation
The minimum of the provided values
Properties¶
XML Instance Representation¶
<...>
<operand> FlowExpression </operand> [2..*]
</...>
Complex Type: MultiNeuronSelector¶
Super-types |
NeuronSelector < MultiNeuronSelector (by extension) |
Sub-types |
|
- Name
MultiNeuronSelector
- Abstract
yes
- Documentation
The abstract base class of selections of multiple neurons
Properties¶
XML Instance Representation¶
<... population="string [1]"/>
Complex Type: Multiply¶
Super-types |
FlowExpression < Operator (by extension) < Multiply (by extension) |
Sub-types |
None |
- Name
Multiply
- Abstract
no
- Documentation
The product of all operands
Properties¶
XML Instance Representation¶
<...>
<operand> FlowExpression </operand> [2..*]
</...>
Complex Type: Neuron2Monitor¶
Super-types |
TransferFunction < BIBITransferFunction (by extension) < Neuron2Monitor (by restriction) |
Sub-types |
None |
- Name
Neuron2Monitor
- Abstract
no
- Documentation
A NeuronMonitor is a special class of transfer functions that monitors neural network populations. Connections to robot control topics or device groups are not allowed.
Properties¶
Element local¶
- Name
local
- Type
Local
- Multiplicity
[0..*]
- Nillable
no
- Abstract
no
Element device¶
- Name
device
- Type
DeviceChannel
- Multiplicity
[1]
- Nillable
no
- Abstract
no
Attribute name¶
- Name
name
- Type
string
- Multiplicity
[1]
XML Instance Representation¶
<... name="string [1]">
<local> Local </local> [0..*]
<device> DeviceChannel </device> [1]
</...>
Complex Type: Neuron2Robot¶
Super-types |
TransferFunction < BIBITransferFunction (by extension) < Neuron2Robot (by extension) |
Sub-types |
None |
- Name
Neuron2Robot
- Abstract
no
- Documentation
A Neuron2Robot transfer function is a transfer function whose primary purpose is to extract information from the neural network and use this information to control the robot using robot control messages
Properties¶
Element returnValue¶
- Name
returnValue
- Type
TopicChannel
- Multiplicity
[0..1]
- Nillable
no
- Abstract
no
- Documentation
The return value topic channel of a Neuron2Robot transfer function is the channel to which control messages the return value of the Python function are sent
XML Instance Representation¶
<... name="string [1]">
<local> Local </local> [0..*]
<device> DeviceChannel </device> [1]
<deviceGroup> DeviceGroupChannel </deviceGroup> [1]
<topic> TopicChannel </topic> [0..*]
<returnValue> TopicChannel </returnValue> [0..1]
</...>
Complex Type: NeuronConnector¶
Super-types |
None |
Sub-types |
|
- Name
NeuronConnector
- Abstract
yes
- Documentation
This type denotes a connector to other populations
Properties¶
Attribute weights¶
- Name
weights
- Type
double
- Multiplicity
[0..1]
- Documentation
The weights of the connector denote the connections between the source neuron and the target neurons. If no weight is specified, the default weight of the neuron connection device is used.
Attribute delays¶
- Name
delays
- Type
double
- Multiplicity
[0..1]
- Documentation
The delays of the connector denote the delays of spike deliveries. If no delays are specified, the default delays of the neuron connection device is used.
Attribute name¶
- Name
name
- Type
string
- Multiplicity
[0..1]
- Default Value
default
- Documentation
The name of the connector for later reference.
XML Instance Representation¶
<... weights="double [0..1]" delays="double [0..1]" name="string [0..1]"/>
Complex Type: NeuronConnectorRef¶
Super-types |
anyType < NeuronConnectorRef (by restriction) |
Sub-types |
None |
- Name
NeuronConnectorRef
- Abstract
no
- Documentation
A reference to an elsewhere defined neural connector
Properties¶
Attribute ref¶
- Name
ref
- Type
string
- Multiplicity
[1]
- Documentation
The name of the referenced connector
XML Instance Representation¶
<... ref="string [1]"> <!-- 'anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
</...>
Complex Type: NeuronGroupSelector¶
Super-types |
None |
Sub-types |
|
- Name
NeuronGroupSelector
- Abstract
yes
- Documentation
This type denotes an abstract group of neurons
Properties¶
XML Instance Representation¶
<.../>
Complex Type: NeuronSelector¶
Super-types |
None |
Sub-types |
|
- Name
NeuronSelector
- Abstract
yes
- Documentation
The abstract base class of neuron selectors
Properties¶
Attribute population¶
- Name
population
- Type
string
- Multiplicity
[1]
- Documentation
The population this neuron selector refers to
XML Instance Representation¶
<... population="string [1]"/>
Complex Type: NeuronSelectorTemplate¶
Super-types |
None |
Sub-types |
|
- Name
NeuronSelectorTemplate
- Abstract
yes
- Documentation
A template for neuron selectors
Properties¶
XML Instance Representation¶
<.../>
Complex Type: OneToOneConnector¶
Super-types |
NeuronConnector < OneToOneConnector (by extension) |
Sub-types |
None |
- Name
OneToOneConnector
- Abstract
no
- Documentation
This connector type is obsolete.
Properties¶
XML Instance Representation¶
<... weights="double [0..1]" delays="double [0..1]" name="string [0..1]"/>
Complex Type: Operator¶
Super-types |
FlowExpression < Operator (by extension) |
Sub-types |
|
- Name
Operator
- Abstract
yes
- Documentation
The abstract base class for an operator call based on a flow expression
Properties¶
Element operand¶
- Name
operand
- Type
FlowExpression
- Multiplicity
[2..*]
- Nillable
no
- Abstract
no
- Documentation
The arguments of the operator expression
XML Instance Representation¶
<...>
<operand> FlowExpression </operand> [2..*]
</...>
Complex Type: Population¶
Super-types |
NeuronSelector < MultiNeuronSelector (by extension) < Population (by extension) |
Sub-types |
None |
- Name
Population
- Abstract
no
- Documentation
Selection of an entire population of neurons
Properties¶
Attribute count¶
- Name
count
- Type
positiveInteger
- Multiplicity
[1]
- Documentation
The size of the selected population. This is necessary for validation purposes where the neural network is not available.
XML Instance Representation¶
<... population="string [1]" count="positiveInteger [1]"/>
Complex Type: PythonTransferFunction¶
Super-types |
TransferFunction < PythonTransferFunction (by extension) |
Sub-types |
None |
- Name
PythonTransferFunction
- Abstract
no
- Documentation
This type denotes a transfer function entirely specified in the Python DSL PyTF.
Properties¶
Attribute src¶
- Name
src
- Type
PythonFilename
- Multiplicity
[0..1]
- Documentation
The ‘src’ attribute denotes the path of a python file that contains the entire transfer function. If this attribute is present, the actual contents of the transfer function element is ignored and only the contents of the specified Python file are taken into account.
XML Instance Representation¶
<... src="PythonFilename [0..1]"> <!-- Mixed content -->Allow any elements from a namespace other than this schema's namespace (skip validation). [0..*]
</...>
Complex Type: Range¶
Super-types |
NeuronSelector < MultiNeuronSelector (by extension) < Range (by extension) |
Sub-types |
None |
- Name
Range
- Abstract
no
- Documentation
Selection of a range of neurons from an existing population
Properties¶
Attribute from¶
- Name
from
- Type
nonNegativeInteger
- Multiplicity
[1]
- Documentation
The starting index from which neurons are selected
Attribute to¶
- Name
to
- Type
nonNegativeInteger
- Multiplicity
[1]
- Documentation
The stop index to which neurons are selected
Attribute step¶
- Name
step
- Type
positiveInteger
- Multiplicity
[0..1]
- Documentation
The step of the selection
XML Instance Representation¶
<... population="string [1]" from="nonNegativeInteger [1]" to="nonNegativeInteger [1]" step="positiveInteger [0..1]"/>
Complex Type: RangeTemplate¶
Super-types |
NeuronSelectorTemplate < RangeTemplate (by extension) |
Sub-types |
None |
- Name
RangeTemplate
- Abstract
no
- Documentation
A template for the range-based neuron selection
Properties¶
Attribute from¶
- Name
from
- Type
TemplatePattern
- Multiplicity
[1]
- Documentation
A template for the start index of the selected range
Attribute to¶
- Name
to
- Type
TemplatePattern
- Multiplicity
[1]
- Documentation
A template for the end index of the selected range
Attribute step¶
- Name
step
- Type
TemplatePattern
- Multiplicity
[0..1]
- Documentation
A template for the step of the selected range
XML Instance Representation¶
<... from="TemplatePattern [1]" to="TemplatePattern [1]" step="TemplatePattern [0..1]"/>
Complex Type: Robot2Neuron¶
Super-types |
TransferFunction < BIBITransferFunction (by extension) < Robot2Neuron (by extension) |
Sub-types |
None |
- Name
Robot2Neuron
- Abstract
no
- Documentation
A Robot2Neuron transfer function is a transfer function whose primary purpose is to translate information coming from robot sensors, transform it and push them into neural networks.
Properties¶
XML Instance Representation¶
<... name="string [1]">
<local> Local </local> [0..*]
<device> DeviceChannel </device> [1]
<deviceGroup> DeviceGroupChannel </deviceGroup> [1]
<topic> TopicChannel </topic> [0..*]
</...>
Complex Type: Scale¶
Super-types |
FlowExpression < Scale (by extension) |
Sub-types |
None |
- Name
Scale
- Abstract
no
- Documentation
The scaling of an element by a constant factor
Properties¶
Element inner¶
- Name
inner
- Type
FlowExpression
- Multiplicity
[1]
- Nillable
no
- Abstract
no
- Documentation
The inner flow expression
Attribute factor¶
- Name
factor
- Type
double
- Multiplicity
[1]
- Documentation
The factor by which the inner expression should be scaled
XML Instance Representation¶
<... factor="double [1]">
<inner> FlowExpression </inner> [1]
</...>
Complex Type: SimulationStep¶
Super-types |
FlowExpression < SimulationStep (by extension) |
Sub-types |
None |
- Name
SimulationStep
- Abstract
no
- Documentation
A reference to the simulation step
Properties¶
XML Instance Representation¶
<.../>
Complex Type: Subtract¶
Super-types |
FlowExpression < Operator (by extension) < Subtract (by restriction) |
Sub-types |
None |
- Name
Subtract
- Abstract
no
- Documentation
The difference between two operands
Properties¶
Element operand¶
- Name
operand
- Type
FlowExpression
- Multiplicity
[2..2]
- Nillable
no
- Abstract
no
- Documentation
The arguments of the operator expression
XML Instance Representation¶
<...>
<operand> FlowExpression </operand> [2..2]
</...>
Complex Type: SynapseDynamics¶
Super-types |
None |
Sub-types |
|
- Name
SynapseDynamics
- Abstract
yes
- Documentation
This type denotes a reusable synapse dynamics configuration
Properties¶
Attribute name¶
- Name
name
- Type
string
- Multiplicity
[0..1]
- Default Value
default
- Documentation
The name of the synapse dynamics configuration
XML Instance Representation¶
<... name="string [0..1]"/>
Complex Type: SynapseDynamicsRef¶
Super-types |
anyType < SynapseDynamicsRef (by restriction) |
Sub-types |
None |
- Name
SynapseDynamicsRef
- Abstract
no
- Documentation
This type specifies a reference to a synapse dynamics configuration
Properties¶
Attribute ref¶
- Name
ref
- Type
string
- Multiplicity
[1]
- Documentation
The name of the synapse dynamics configuration
XML Instance Representation¶
<... ref="string [1]"> <!-- 'anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
</...>
Complex Type: TopicChannel¶
Super-types |
None |
Sub-types |
None |
- Name
TopicChannel
- Abstract
no
- Documentation
A connection of a transfer function to a robot control message topic
Properties¶
Element body¶
- Name
body
- Type
FlowExpression
- Multiplicity
[0..1]
- Nillable
no
- Abstract
no
- Documentation
The value that should be sent to the robot control topic. If this element is present, then the channel is published to. Otherwise, the channel subscribes to the selected topic.
Attribute name¶
- Name
name
- Type
string
- Multiplicity
[1]
- Documentation
The name of the robot topic channel
Attribute topic¶
- Name
topic
- Type
RobotTopicAddress
- Multiplicity
[1]
- Documentation
The actual topic address, for example ‘/husky/cmd_vel’
Attribute type¶
- Name
type
- Type
string
- Multiplicity
[1]
- Documentation
The type of the topic
XML Instance Representation¶
<... name="string [1]" topic="RobotTopicAddress [1]" type="string [1]">
<body> FlowExpression </body> [0..1]
</...>
Complex Type: TransferFunction¶
Super-types |
None |
Sub-types |
|
- Name
TransferFunction
- Abstract
yes
- Documentation
This is the abstract type for a transfer function specification. A transfer function may be specified either in XML or in Python. These specification options are reflected in subclasses of the abstract transfer function type.
Properties¶
XML Instance Representation¶
<.../>
Complex Type: TsodyksMarkramMechanism¶
Super-types |
SynapseDynamics < TsodyksMarkramMechanism (by extension) |
Sub-types |
None |
- Name
TsodyksMarkramMechanism
- Abstract
no
- Documentation
A synapse dynamics implementation based on the Tsodyks-Markram mechanism
Properties¶
Attribute u¶
- Name
u
- Type
double
- Multiplicity
[1]
Attribute tau_rec¶
- Name
tau_rec
- Type
double
- Multiplicity
[1]
Attribute tau_facil¶
- Name
tau_facil
- Type
double
- Multiplicity
[1]
XML Instance Representation¶
<... name="string [0..1]" u="double [1]" tau_rec="double [1]" tau_facil="double [1]"/>
Simple Type: BrainFilename¶
Super-types |
None |
Sub-types |
None |
- Name
BrainFilename
- Content
Union of following types: H5FilenamePythonFilename
- Documentation
This denotes the supported file types for neural network models. The current version only supports Python or H5 files for neural networks.
Simple Type: ConfType¶
Super-types |
None |
Sub-types |
None |
- Name
ConfType
- Content
Union of following types: ConfTypeEnumerationstring
- Documentation
This type denotes a configuration type which can be a standard configuration type or a custom type. The latter is just any string.
Simple Type: ConfTypeEnumeration¶
Super-types |
string < ConfTypeEnumeration (by restriction) |
Sub-types |
None |
- Name
ConfTypeEnumeration
- Content
Base XSD Type: stringvalue comes from list: {‘retina’|’brainvisualizer’}
- Documentation
This enumeration lists the standard configuration types used in the NRP.
Members¶
retina
brainvisualizer
Simple Type: DeviceType¶
Super-types |
string < DeviceType (by restriction) |
Sub-types |
None |
- Name
DeviceType
- Content
Base XSD Type: stringvalue comes from list: {‘ACSource’|’DCSource’|’FixedFrequency’|’LeakyIntegratorAlpha’|’LeakyIntegratorExp’|’NCSource’|’Poisson’|’SpikeRecorder’|’PopulationRate’}
- Documentation
The device types supported by the CLE
Members¶
ACSource: The current generators for direct current, alternating current or noisy current do not generate spikes but inject currents of the specified type into all of the connected neurons. These devices receive the amplitude of the generated current as inputs. The ACSource injects alternating currents.
DCSource: The DCSource type is similar to the ACSource but injects directed currents.
FixedFrequency: A fixed frequency generator deterministically generates spikes at a given frequency. Here, the frequency is set as a parameter and can be adjusted to sensory inputs. Unlike the other spike generators, this device type is not directly implemented in neuronal simulators but can be implemented by connecting a current generator with an integrate-and-fire neuron.
LeakyIntegratorAlpha: The concept of leaky integrators is to simply integrate spikes coming from a neuron under observation and add a leak term to it. The rationale behind this is that in spiking neuronal networks, the membrane potential is highly fragile. Shortly after a spike has been issued, the membrane potential is reset and therefore, it has a high importance whether any measurement is taken before or after a neuron spikes. Therefore, we augment the neuronal network with an additional leaky integrate-and-fire neuron with an infinite threshold potential (so that it never spikes) and measure the membrane potential of this neuron. The result is much less fragile and therefore appropriate to be used for robot control signals. This version of leaky integrators has an alpha-shaped post-synaptic current.
LeakyIntegratorExp: This device type is similar to LeakyIntegratorAlpha but has an exponentially shaped post-synaptic current.
NCSource: The noisy current generator is rather a tool to test whether the neuronal network currently simulated is robust with regard to noise rather than being a good choice to encode sensory inputs.
Poisson: A Poisson generator issues spikes according to a Poisson distribution. Here, the inverse of the lambda parameter can be set in accordance to sensory inputs. This inverse reflects the rate in which spikes are generated by this device.
SpikeRecorder: The simplest thing a spike sink can do is to simply record all spikes issued to a neuron under observation. However, this has two major drawbacks. At first, the communication overhead is increased since all spikes are transmitted between the neuronal simulation and the transfer function but more importantly the transfer function has to make sense of this series of spikes. This allows great flexibility as this approach is extensible, but it is not suited for general use.
PopulationRate: Another very common pattern is to simply take the average incoming spike rate of a neuron or a range of neurons. This is again relatively stable and can be used for translation into robot control signals.
Simple Type: H5Filename¶
Super-types |
string < H5Filename (by restriction) |
Sub-types |
None |
- Name
H5Filename
- Content
Base XSD Type: stringpattern = [a-zA-Z0-9._/]*.h5
- Documentation
This type denotes a path to an H5 file.
Simple Type: NeuronTarget¶
Super-types |
string < NeuronTarget (by restriction) |
Sub-types |
None |
- Name
NeuronTarget
- Content
Base XSD Type: stringvalue comes from list: {‘Inhibitory’|’Excitatory’}
- Documentation
The target of a neural connection
Members¶
Inhibitory: Inhibitory means that the artificial synapse inhibits the target neuron, i.e. lowers its membrane potential.
Excitatory: Excitatory means that the artificial synapse excites the target neuron, i.e. the membrane potential raises
Simple Type: PythonFilename¶
Super-types |
string < PythonFilename (by restriction) |
Sub-types |
None |
- Name
PythonFilename
- Content
Base XSD Type: stringpattern = [a-zA-Z0-9._/]*.py
- Documentation
This type denotes a path to a Python file.
Simple Type: RobotTopicAddress¶
Super-types |
string < RobotTopicAddress (by restriction) |
Sub-types |
None |
- Name
RobotTopicAddress
- Content
Base XSD Type: stringpattern = (/[a-zA-Z0-9_-]+)+(/)?
- Documentation
This type denotes a valid address of a robot control topic
Simple Type: ScriptFilename¶
Super-types |
string < ScriptFilename (by restriction) |
Sub-types |
None |
- Name
ScriptFilename
- Content
Base XSD Type: stringpattern = [a-zA-Z0-9._/]*.sh
- Documentation
This type denotes a path to a script file.
Simple Type: SDFFilename¶
Super-types |
string < SDFFilename (by restriction) |
Sub-types |
None |
- Name
SDFFilename
- Content
Base XSD Type: stringpattern = [a-zA-Z0-9._/]*.(sdf|zip)
- Documentation
This type denotes a path to an SDF (or Zip) file
Simple Type: TemplatePattern¶
Super-types |
string < TemplatePattern (by restriction) |
Sub-types |
None |
- Name
TemplatePattern
- Content
Base XSD Type: stringpattern = ((s*)*(i|d+)(s*(+|*)s*((s*)*(i|d+)s*|))*
- Documentation
A regular expression denoting simple arithmetic index computations based on an index called i
Simple Type: TimeStep¶
Super-types |
positiveInteger < TimeStep (by restriction) |
Sub-types |
None |
- Name
TimeStep
- Content
Base XSD Type: positiveIntegervalue <= 1000
- Documentation
The timestep type of the CLE. This is a positive number in milliseconds. The maximum allowed value is 1000.