SpiNNakerManchester / sPyNNaker

The SpiNNaker implementation of the PyNN neural networking language
Apache License 2.0
100 stars 42 forks source link

sim.StructuralMechanismStatic vs sim.reset #1279

Open Christian-B opened 1 year ago

Christian-B commented 1 year ago

to replicate:

import pyNN.spiNNaker as sim sim.setup(1.0) stim = sim.Population(9, sim.SpikeSourceArray(range(10)), label="stim")

pop = sim.Population(9, sim.IF_curr_exp(), label="pop_1")

sim.Projection( stim, pop, sim.AllToAllConnector(), sim.StructuralMechanismStatic( partner_selection=sim.RandomSelection(), formation=sim.DistanceDependentFormation([3, 3], 0.0), elimination=sim.RandomByWeightElimination(4.0, 1.0, 1.0), f_rew=1000, initial_weight=4.0, initial_delay=3.0, s_max=9, seed=0, weight=0.0, delay=1.0))

sim.run(10) sim.reset() sim.run(10)

Error spinn_front_end_common/interface/interface_functions/graph_data_specification_writer.py", line 132, in __generate_data_spec_for_vertices vertex.generate_data_specification(spec, pl) spynnaker/pyNN/models/neuron/population_synapses_machine_vertex_lead.py", line 105, in generate_data_specification self._write_synapse_data_spec( spynnaker/pyNN/models/neuron/population_machine_synapses.py", line 160, in _write_synapse_data_spec synapse_dynamics.write_structural_parameters( spynnaker/pyNN/models/neuron/synapse_dynamics/synapse_dynamics_structural_common.py", line 111, in write_structural_parameters self.write_post_to_pre_table( spynnaker/pyNN/models/neuron/synapse_dynamics/synapse_dynamics_structural_common.py", line 332, in write_post_to_pre_table raise Exception("Too many initial connections per incoming neuron")

Christian-B commented 1 year ago

Fails even with a hard reset: Forced by) pop = sim.Population(9, sim.IF_curr_exp(), label="pop_2") before the second run.