01. Introduction to neuronal simulation with PyNN

Last modified by adavison on 2021/08/03 17:48

tutorial under development

Learning objectives

In this tutorial, you will learn about:

  • the different levels of abstraction that can be used in modelling biological nervous systems and their components;
  • the range of software tools that are available for modelling and simulation of neural systems;
  • the challenges created by having so many different tools;
  • some other tools that try to address these challenges, such as PyNN and NeuroML;
  • why you might want to use PyNN.

Audience

This tutorial is intended for people with at least a basic knowledge of neuroscience (high school level or above) and basic familiarity with the Python programming language. It should also be helpful for people who already have advanced knowledge of neuroscience and neural simulation, who simply wish to learn how to use PyNN, and how it differs from other simulation tools they know.

Prerequisites

To follow this tutorial, you need a basic knowledge of neuroscience (high-school level or greater). For example, you should know:

  • The brain is made up of electrically excitable cells called neurons, which have long, narrow extensions called dendrites and axons.
  • Neurons have a voltage difference across their cell membrane due to differences in the concentration of sodium, potassium, calcium, chloride and other ions between the inside and the outside of the cell.
  • The neuron cell membrane contains many proteins that can open or close to allow diffusion of different ions, or can actively transport ions across the membrane; this can cause rapid changes in the voltage difference.
  • In general neurons receive signals from other neurons in their dendrites, and generate electrical pulses (large, rapid changes in the membrane voltage lasting a few milliseconds or less) called action potentials that travel down their axons to other neurons.
  • The connections between neurons are called synapses, and the most common type of synapse is the chemical synapse, at which the arrival of an action potential triggers the release of a chemical, called a neurotransmitter, from one neuron into the space between two neurons; this chemical then diffuses across this space, and binds to proteins called receptors on the other neurons; this binding then leads to movements of ions across the cell membrane, and hence to changes in membrane voltage.
  • Most neurons have a threshold voltage above which they will generate an action potential; most of the time, the membrane potential is below this level. When the voltage moves closer to this threshold we speak of "exciting" or "depolarising" the neuron; when the voltage moves away from this threshold, we speak of "inhibiting" or "hyperpolarising" the neuron.
  • Some neurotransmitters cause depolarisation, others hyperpolarisation.
  • In general, each synapse releases only one type of neurotransmitter, so we speak of "excitatory" or "inhibitory" synapses, depending on the effect of the neurotransmitter they release.
  • In general, all the synapses of a given type of neuron release the same neurotransmitter, therefore we speak of "excitatory" or "inhibitory" neurons.
  • Nervous systems are very complex, and most of the statements above are approximations, simplifications, or "general rules" with many exceptions!

Format

This tutorial will be a video with slides and animations, but no code examples. The intended duration is 15-20 minutes.

Script

Introduce yourself (if video)

.

State the learning objectives (In this tutorial, you will learn to do X…)

.

State prerequisites

.

Description, explanation, and practice

.

Summary (In this tutorial, you have learned to do X…)

.

Acknowledgements if appropriate

.

References to websites (For more information, visit us at…)

.

Contact information (For questions, contact us at…)

.