Thank you very much Jochen for exhaustive answer!

I was wandering what if I have generated sparse connectivity matrix W and use it to connect two populations of neurons at once? I am using connect all-to-all but with non-sparse matrix having zeros for missing connections now.

Best wishes,
Petia

On Thursday, November 28, 2019, 3:24:54 PM GMT+2, Jochen Martin Eppler <j.eppler@fz-juelich.de> wrote:


Dear Petia!

> My approach is the same as Andrew's but nevertheless it takes time to
> connect a complex network having multiple layers and
> feedback/feedforward connectivity even though I have prepared and saved
> all parameters in advance, esspecially if I want to have sparse
> connectivity.

Of course it takes time to re-instantiate a network completely to do
repeated experiments on pristine networks, but so would saving and
loading. In fact, all our attempts to implement this functionality
showed that it actually often takes *more* time to restore a network
from disk than it would to just re-running the script that created it.
The main reason for this is that memory and processors are lightning
fast compared to disks.

The other reason for not having any checkpointing functionality and
removing ResetNetwork in NEST 3 is that is just crazy complicated to get
this right. There are spike buffers in neurons and inside the NEST
kernel, modified default values, random number generator states,
internal flags indicating simulation phases, possibly open files, and so
on and so forth. Because it is almost impossible to implement this in a
way that is both complete and correct, we rather not provide it.

> I was also wandering is it possible to have sparse connectivity matrix W
> to be used in the following manner: connect(pop1, pop2, "all_to_all",
> W). Now I am generating full matrix with numerous zero elements but if I
> want to have dynamic synapses, initial zero weights might result in
> non-zero one after some time.

You have to create all connections from the start if you want them to
exhibit dynamic weight changes during the simulation. The only exception
to this rule is structural plasticity:
https://www.fz-juelich.de/ias/jsc/EN/Expertise/SimLab/slns/research/structural_plasticity/_node.html

Best regards,
Jochen!



> On Wednesday, November 27, 2019, 4:42:32 PM GMT+2, Simon Brodeur
> <simon.brodeur@usherbrooke.ca> wrote:
>
>
> Hi Andrew,
>
> Is it because the network takes a long time to build?
> Are you working with very large networks that need to be spread on
> multiple machines?
>
> I am personally building networks with complex topologies, where
> creating the synaptic connections requires a lot of time since I do
> random sampling with constraint satisfaction directly in Python.
> I also need to compute per-synapse approximations of axonal delays,
> dendritic tree attenuations and much more. I do build the network once
> and have written some Python code that allow to pickle the necessary
> information (e.g. parameters of the neuron models, synaptic weights) to
> instantiate faster the network in NEST when I want to perform
> simulations. But that is just a custom solution, not general to any network.
>
> Cordially,
> Simon
>
> On Tue, 2019-11-26 at 12:39 +0100, alehr wrote:
>> Dear NEST developer,
>>
>> I am wondering if my inquiry from November 11th has been looked at.
>>
>> Thanks,
>> Andrew Lehr
>>
>> On Mon, Nov 11, 2019 at 1:52 PM alehr <alehr@mun.ca
>> <mailto:alehr@mun.ca>> wrote:
>>> Dear NEST developer,
>>>
>>> I would like to initialize a network with neurons and connections and
>>> then run many simulations with it. It would be great if I could build
>>> the network one time and then deepcopy (or something similar) for
>>> each simulation. Is something like this possible?
>>>
>>> Thanks,
>>> Andrew Lehr
>> _______________________________________________
>> NEST Users mailing list --users@nest-simulator.org  <mailto:users@nest-simulator.org>
>> To unsubscribe send an email tousers-leave@nest-simulator.org  <mailto:users-leave@nest-simulator.org>
>>
> --
>
> ___________________________________________________
>
> *Simon Brodeur*
> /Étudiant au doctorat/
> Université de Sherbrooke
> Département génie électrique et génie informatique
> Laboratoire NECOTIS, C1-3036
> Tél. : (819) 821-8000 poste 62187
> Courriel: Simon.Brodeur@USherbrooke.ca <mailto:Simon.Brodeur@USherbrooke.ca>
>
> ___________________________________________________
>
> _______________________________________________
> NEST Users mailing list -- users@nest-simulator.org
> <mailto:users@nest-simulator.org>
> To unsubscribe send an email to users-leave@nest-simulator.org
> <mailto:users-leave@nest-simulator.org>
>
> _______________________________________________
> NEST Users mailing list -- users@nest-simulator.org
> To unsubscribe send an email to users-leave@nest-simulator.org
>

--
Dr. Jochen Martin Eppler
Phone: +49(2461)61-96653
----------------------------------
Simulation Laboratory Neuroscience
Jülich Supercomputing Centre
Institute for Advanced Simulation


------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------
Forschungszentrum Juelich GmbH
52425 Juelich
Sitz der Gesellschaft: Juelich
Eingetragen im Handelsregister des Amtsgerichts Dueren Nr. HR B 3498
Vorsitzender des Aufsichtsrats: MinDir Volker Rieke
Geschaeftsfuehrung: Prof. Dr.-Ing. Wolfgang Marquardt (Vorsitzender),
Karsten Beneke (stellv. Vorsitzender), Prof. Dr.-Ing. Harald Bolt,
Prof. Dr. Sebastian M. Schmidt

------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------
_______________________________________________
NEST Users mailing list -- users@nest-simulator.org
To unsubscribe send an email to users-leave@nest-simulator.org