Network#

Submodules#

conex.behaviors.network.neuromodulators module#

Network-wide neuromodulators.

class conex.behaviors.network.neuromodulators.Dopamine(*args, tau_dopamine=0.0, initial_dopamine_concentration=None, **kwargs)[source]#

Bases: Behavior

Compute extracellular dopamine concentration.

Note: Payoff behavior should be defined prior to Dopamine behavior while defining the network.

Parameters:
  • tau_dopamine (float) – Dopamine decay time constant.

  • initial_dopamine_concentration (float, optional) – Initial dopamine concentration

initialize(network)[source]#

Set initial dopamine concentration value based on initial payoff value.

Parameters:

network (Network) – Network object.

forward(network)[source]#

Compute extracellular dopamine concentration at each time step by:

dd/dt = -d/tau_d + payoff(t).

Parameters:

network (Network) – Network object.

training: bool#

conex.behaviors.network.payoff module#

Payoff definition base.

class conex.behaviors.network.payoff.Payoff(*args, initial_payoff=0.0, **kwargs)[source]#

Bases: Behavior

Base behavior class to define the payoff (reward/punishment) function. Define the desired payoff function by inheriting this class and defining forward abstract method per se. You will set network.payoff with the payoff value at the time step.

Parameters:

initial_payoff (float) – Initial reward/punishment value. Default is 0.0.

initialize(network)[source]#

Initialize network’s payoff with initial_payoff.

Parameters:

network (Network) – Network object.

training: bool#

conex.behaviors.network.time_resolution module#

class conex.behaviors.network.time_resolution.TimeResolution(*args, dt=1, **kwargs)[source]#

Bases: Behavior

The behavior that sets universal dt for the network. by each iteration, time advances as much as dt.

Parameters:

dt (float) – Initial iteration time resolution. Default is 1

initialize(network)[source]#

Initialize network’s time resolution with dt.

Parameters:

network (Network) – Network object.

training: bool#