Solvers for differential equations for a neuron model with non-linear dynamics
Master thesis
Date
2010-10-29Metadata
Show full item recordCollections
- Master's theses (RealTek) [1826]
Abstract
The human kind knows a lot about nature but it is still overwhelming many
phenomena the humans in total do not know much about. This is in
uenced
by the fact that many of the systems in nature are complex. A possible way
of investigating such systems is by simulations. The increase in computational
power during the last years has made it possible to do research on
more and more complex systems.
Neuroscience is the science which deals with the understanding of the brain
and the nervous system. Such systems are very complex. Simulations are
therefore a necessary tool to increase the understanding in this eld.
Neurons are an important building brick of the brain and the nervous system.
Di erent types of neurons exist and are specialized for di erent purposes.
Before it is possible to simulate their behaviour, a mathematical model of
equations has to be made. Depending on what e ects it is desirable to
investigate, the description of the neuron varies.
Neural Simulation Toolbox (NEST) is a simulator aimed to simulate networks
of neurons and measure the network activity. NEST supports di erent
neuron models. Among them is the conductance based model of a leaky
integrate-and- re neuron, named iaf cond alpha.
The aim of this master thesis has been to decrease the simulation time for
this model. Two new versions of it have therefore been made. They are
named iaf cond alpha ei and iaf cond alpha ei step.
The simulation times for the new models are approximately 25% for the
iaf cond alpha ei model and 30% for the iaf cond alpha ei step model, when
comparing to the simulation time for the original iaf cond alpha model.
Neuron models are described by di erential equations. These equations are
integrated numerically in a simulator. This will take the system forwards in
time.
In the models used in this master thesis there are ve equations that have
to be evaluated. Four of the equations describe the synaptic dynamics of the neuron and the last one describes the membrane potential.
The original and the new models di er in which methods for numerical integration
that are used. Iaf cond alpha uses a Runge-Kutta-Fehlberg method
of fourth- fth order with adaptive step size control from GNU Science Library.
The new models use Exact Integration for updating of the synaptic
dynamics. Updating of the membrane potential is done with a manually implemented
Runge-Kutta method. The iaf cond alpha ei model uses a fourth
order method and the iaf cond alpha ei step uses a fth order method.
It is, however, not enough to reduce the simulation time. The numerical
precision and error is also important. The new models are tested for numerical
precision and error, and are as good as the original iaf cond alpha
model.
Both the original and the new neuron models are written in the C++ programming
language. The testing is done in the Python programming language.
NEST Python interface PyNEST has been used to easily create neurons,
adjust parameter values, make simulations and pick out the desired
recorded values. Sammendrag
Menneskene vet mye om naturen, men det er fortsatt veldig mange fenomener
som menneskene samlet sett ikke vet stort om. At mange av systemene som
nnes i naturen er komplekse p avirker til dette. En mulig m ate a nne
ut mer om slike systemer er a simulere dem. I de senere arene har det
blitt mulig a gj re unders kelser p a stadig mer komplekse systemer. Dette
skyldes en kraftig kning av regnekraft.
Nevrovitenskap er vitenskapen der en pr ver a forst a hjernen og nervesystemet.
Dette er sv rt komplekse system. Simuleringer er derfor et n dvendig
hjelpemiddel og verkt y for a kunne ke kunnskapen p a dette omr adet.
Nevroner er viktige byggesteiner i hjernen og i nervesystemet. Det eksisterer
forskjellige typer nevroner som alle er spesialisert for ulike form al. F r
det er mulig a simulere et nevrons oppf rsel m a det lages en matematisk
modell som i ligninger beskriver oppf rselen til nevronet. Hvordan nevronet
modelleres er avhengig av hvilke egenskaper som nskes unders kt.
NEST (Neural Simulation Toolbox) er en simulator utviklet med det til hensikt
a kunne simulere nettverk av nevroner og m ale aktiviteten i nettverket.
NEST har st tte for bruk av mange ulike nevronmodeller. Blant dem er en
konduktansebasert modell av et integrer-og-fyr nevron med lekkstr m (Engelsk
betegnelse: Integrate-and- re neuron). Denne modellen heter iaf cond -
alpha.
Arbeidet utf rt i denne mastergradsoppgaven har hatt til hensikt a redusere
simuleringstida for nevronmodellen iaf cond alpha. Det er derfor blitt lagd
to nye versjoner basert p a den originale modellen. De heter iaf cond alpha ei
og iaf cond alpha ei step.
Simuleringstida for de nye modellene iaf cond alpha ei og iaf cond alpha ei step
er henholdsvis omtrent 25% og 30% av simuleringstida til den originale
iaf cond alpha-modellen.
For a beskrive nevronmodeller brukes di erensialligninger. I en simulator
blir disse integrert numerisk. Dermed tas systemet framover i tid. I modellene som brukes i denne mastergradsoppgaven er det fem ligninger
som m a oppdateres. Fire av dem beskriver signaler inn til nevronet via
synapsen. Den siste beskriver membranpotensialet.
Den originale og de nye modellene bruker ulike metoder for numerisk integrasjon.
Iaf cond alpha bruker en Runge-Kutta-Fehlberg metode av fjerdefemte
orden med skrittlengdekontroll fra GNU Science Library. De nye modellene
bruker Eksakt Integrasjon for a oppdatere dynamikken i synapsen.
Oppdatering av membranpotensialet gj res med en manuelt implementert
Runge-Kutta metode. Modellen iaf cond alpha ei bruker en fjerdeordens
metode og iaf cond alpha ei step bruker en femteordens metode.
Uansett er det ikke tilstrekkelig a redusere simuleringstida. Numerisk presisjon
og feil er ogs a viktig. De nye modellene har blitt testet p a b ade
numerisk presisjon og feil, og er like gode som den originale iaf cond alphamodellen.
B ade den originale nevronmodellen og de to nye er skrevet i programmeringsspr
aket C++. Testing er gjort med programmeringsspr aket Python.
Brukergrensesnittet til NEST via Python, PyNEST, har blitt brukt for a
enkelt kunne skape nevroner, forandre parameterverdier, kj re simuleringer
og hente ut nskede lagrede verdier.
Description
Developing new neuron models with increased effiency and as good precision as the original models