Nengo: Large-scale brain modelling in Python
Nengo is a Python library for building and simulating large-scale neural models. Nengo can create sophisticated spiking and non-spiking neural simulations with sensible defaults in a few lines of code. Yet, Nengo is highly extensible and flexible. You can define your own neuron types and learning rules, get input directly from hardware, build and run deep neural networks, drive robots, and even simulate your model on a completely different neural simulator or neuromorphic hardware.
Installation
Nengo depends on NumPy, and we recommend that you install NumPy before installing Nengo. If you're not sure how to do this, we recommend using Anaconda.
To install Nengo:
pip install nengo
If you have difficulty installing Nengo or NumPy, please read the more detailed Nengo installation instructions first.
If you'd like to install Nengo from source, please read the developer installation instructions.
Nengo is tested to work on Python 3.6 and above. Python 2.7 and Python 3.4 were supported up to and including Nengo 2.8.0. Python 3.5 was supported up to and including Nengo 3.1.
Examples
Here are six of many examples showing how Nengo enables the creation and simulation of large-scale neural models in few lines of code.
- 100 LIF neurons representing a sine wave
- Computing the square across a neural connection
- Controlled oscillatory dynamics with a recurrent connection
- Learning a communication channel with the PES rule
- Simple question answering with the Semantic Pointer Architecture
- A summary of the principles underlying all of these examples
Documentation
Usage and API documentation can be found at https://www.nengo.ai/nengo/.
To build the documentation yourself, run the following command:
python setup.py build_sphinx
This requires Pandoc to be installed, as well as some additional Python packages. For more details, see the Developer Guide.
Development
Information for current or prospective developers can be found at https://www.nengo.ai/contributing/.
Getting Help
Questions relating to Nengo, whether it's use or it's development, should be asked on the Nengo forum at https://forum.nengo.ai.