1Questions and answers about precise neurons
2===========================================
3
4(1) Q: **Is it meaningful to compare the precise sequences of spikes
5    generated by the simulations of a recurrent network using different
6    solvers?**
7
8A: No, due to the chaotic nature of the dynamics, minor differences in
9the computer representation of the spike times lead to completely
10different spike sequences after a short time.
11
12(2) Q: **Does an event-driven algorithm which determines the precise
13    spike times of a neuron by numerically evaluating a closed form
14    expression or an iterative procedure like Newton-Raphson lead to
15    machine independent spike sequences?**
16
17A: No. For example, if machine A uses “double” for the representation of
18floating point numbers and machine B uses “quad” precision, the spike
19sequences of the two simulations deviate after a short time. Even with
20the same representation of floating point values, results rapidly
21diverge if some library function like exp() is implemented in a slightly
22different way or the terms of mathematical expressions are reordered.
23
24(3) Q: **Given the non-reproducibility of spike sequences in network
25    simulations, is there any meaningful way to talk about the accuracy
26    of a solver?**
27
28A: Yes, even though network dynamics may be chaotic, for many neuron
29models relevant to Computational Neuroscience the dynamics of the single
30neuron is not. Examples are integrate-and-fire models with linear
31subthreshold dynamics and the AdEx model considered in `Hanuschkin
32(2010) <http://dx.doi.org/10.3389/fninf.2010.00113>`__. In these cases
33it is possible to study the accuracy of a solution of the single neuron
34dynamics.
35
36(4) Q: **Why are we investigating the performance of network simulations
37    anyway?**
38
39A: A single neuron simulation is no challenge for modern processors in
40terms of memory consumption. The data fit into the fast cache memory and
41memory bandwidth is not an issue. In a network simulation, however, the
42run time of a simulation algorithm is to a large extent determined by
43the organization of the data flow between main memory and processor.
44Solvers may differ considerably in their demands on memory bandwidth.
45Therefore it is essential that integration algorithms are compared with
46respect to the run time of network simulations.
47
48(5) Q: **How can the efficiency of a solver be defined if accuracy is
49    only accessible in single neuron simulations and run time is only of
50    interest for network simulations?**
51
52A: Efficiency needs to be defined as the run time of a network
53simulation required to achieve a certain accuracy goal of a single
54neuron simulation with input statistics corresponding to the network
55simulation. This was developed and described in `Morrison et al.
56(2007) <http://dx.doi.org/10.1162/neco.2007.19.1.47>`__.
57
58(6) Q: **Given that network dynamics is chaotic anyway, why is it
59    important that single neuron dynamics is accurately integrated?**
60
61A: Although the networks dynamics is chaotic, in some cases mesoscopic
62measures of network activity can be affected by the quality of the
63single neuron solver. For example, `Hansel et al.
64(1998) <http://dx.doi.org/10.1162/089976698300017845>`__ showed that a
65measure of network synchrony exhibits a considerable error if the single
66neuron dynamics is integrated using a grid-constrained algorithm.
67Without confidence in the precision of the single neuron solver we
68cannot interpret features observed on the network level or control for
69artifacts.
70
71(7) Q: **The biological system contains noise and any model is only an
72    accurate description of nature to some degree. Why is it then
73    important to be able to integrate a model with a precision of n
74    digits?**
75
76A: This question is based on a mix-up between a scientific model and a
77simulation of the model. A simulation should always attempt to solve the
78equations of a model accurately, so that the scientist can be sure of
79the predictions of the model. Any noise terms or variability of
80parameters should be explicit constituents of the model, not of a
81particular simulation.
82
83(8) Q: **Does this mean that we should always simulate using the maximum
84    precision implementations of neuron models?**
85
86A: No, for many scientific problems a limited precision is good enough.
87The fastest method delivering at least the required precision is the one
88of choice. In the case of chaotic dynamics there is generally no good
89reason to consider results produced by a neuron model implementation
90with high precision as being ‘more correct’ than those produced by a
91faster implementation with lower precision, as long as mesoscopic
92measures of interest remain unchanged. With a more accurate method at
93hand, the researcher can always carry out control simulations at higher
94precision to verify that the scientific results are robust with respect
95to the integration method.
96
97(9) Q: **Is there a fundamental difference between event-driven and
98    time-driven algorithms in the reproducibility of the spike sequences
99    of network simulations if the solvers do not miss any spikes?**
100
101A: No. In both cases the sequence of spike times is generally not
102reproducible by a different implementation or on a different machine
103because it depends on the details of the numerical implementation and
104the representation of floating point numbers.
105
106(10) Q: **Is there a fundamental difference in the accuracy of an
107     event-driven algorithm and the time-driven algorithm presented
108     in**\ `Hanuschkin
109     (2010) <http://dx.doi.org/10.3389/fninf.2010.00113>`__\ **?**
110
111A: Yes. In a class of integrate-and-fire neuron models with linear
112subthreshold dynamics the event-driven methods never miss a spike. The
113time-driven method presented in the study misses spikes with a low
114probability.
115
116(11) Q: **Is there a fundamental difference in the accuracy of an
117     event-driven algorithm and the time-driven algorithm presented
118     in**\ `Hanuschkin
119     (2010) <http://dx.doi.org/10.3389/fninf.2010.00113>`__\ **if the
120     event-driven algorithm is used for a neuron model like the AdEx
121     model, for which a spike prediction expression remains to be
122     discovered?**
123
124A: No, in this case both types of algorithms rely on solvers moving
125forward with an adaptive step size which can theoretically miss spikes,
126but in practice does not, due to the explosive dynamics at threshold. As
127there is no difference in the accuracy, the faster algorithm should be
128chosen.
129
130(12) Q: **Why is the time-driven method for the AdEx model presented
131     in**\ `Hanuschkin
132     (2010) <http://dx.doi.org/10.3389/fninf.2010.00113>`__\ **the
133     preferred method if neither an event-driven nor a time-driven
134     algorithm is known which theoretically excludes the loss of
135     spikes**?
136
137A: The time-driven method is more efficient: it delivers the same
138accuracy in a shorter time because of a lower administrative overhead.
139
140(13) Q: **What is the rate at which spikes are missed in a typical
141     large-scale neuronal network simulation of integrate-and-fire model
142     neurons with linear subthreshold dynamics in the balanced state and
143     a spike rate of around 10 Hz**?
144
145A: At a typical parameter setting for a simulation with around 10,000
146neurons and 15 million synapses, the total rate at which spikes are
147missed is up to 5 spikes per second.
148
149(14) Q: **Is the time-driven method presented in**\ `Hanuschkin
150     (2010) <http://dx.doi.org/10.3389/fninf.2010.00113>`__\ **more
151     general than the event-driven methods discussed?**
152
153A: Yes, the event-driven methods that do not miss any spikes are
154specific to a particular class of neuron models (current based with
155exponential synapses). In contrast, the time-driven method presented in
156the study is applicable to any neuron model with a threshold condition
157independently of the nature of the subthreshold dynamics.
158
159(15) Q: **What is the scalability of the proposed solution for
160     large-scale network simulations in comparison to an event-driven
161     scheme?**
162
163A: The scalability of the time-driven method presented in `Hanuschkin
164(2010) <http://dx.doi.org/10.3389/fninf.2010.00113>`__ is excellent. It
165is identical to that of the classical time-driven solver constraining
166spikes to a fixed computation time grid. In contrast, the classical
167event-driven scheme does not scale well because it requires a central
168queue. This can be improved if a decoupling technique based on the
169existence of a minimal delay (`Morrison et
170al. 2005 <http://dx.doi.org/10.1162/0899766054026648>`__) is employed,
171see `Lytton & Hines
172(2005) <http://dx.doi.org/10.1162/0899766053429453>`__.
173