title: Nengo: a Python tool for building large-scale functional brain models.
abstract: Neuroscience currently lacks a comprehensive theory of how cognitive processes can be implemented in a biological substrate. The Neural Engineering Framework (NEF) proposes one such theory, but has not yet gathered significant empirical support, partly due to the technical challenge of building and simulating large-scale models with the NEF. Nengo is a software tool that can be used to build and simulate large-scale models based on the NEF; currently, it is the primary resource for both teaching how the NEF is used, and for doing research that generates specific NEF models to explain experimental data. Nengo 1.4, which was implemented in Java, was used to create Spaun, the world's largest functional brain model (Eliasmith et al., 2012). Simulating Spaun highlighted limitations in Nengo 1.4's ability to support model construction with simple syntax, to simulate large models quickly, and to collect large amounts of data for subsequent analysis. This paper describes Nengo 2.0, which is implemented in Python and overcomes these limitations. It uses simple and extendable syntax, simulates a benchmark model on the scale of Spaun 50 times faster than Nengo 1.4, and has a flexible mechanism for collecting simulation results.
authors.affiliation: Centre for Theoretical Neuroscience, University of Waterloo Waterloo, ON, Canada.
authors.forename: Trevor
authors.initials: T
authors.lastname: Bekolay
authors.affiliation: Centre for Theoretical Neuroscience, University of Waterloo Waterloo, ON, Canada.
authors.forename: James
authors.initials: J
authors.lastname: Bergstra
authors.affiliation: Centre for Theoretical Neuroscience, University of Waterloo Waterloo, ON, Canada.
authors.forename: Eric
authors.initials: E
authors.lastname: Hunsberger
authors.affiliation: Centre for Theoretical Neuroscience, University of Waterloo Waterloo, ON, Canada.
authors.forename: Travis
authors.initials: T
authors.lastname: Dewolf
authors.affiliation: Centre for Theoretical Neuroscience, University of Waterloo Waterloo, ON, Canada.
authors.forename: Terrence C
authors.initials: TC
authors.lastname: Stewart
authors.affiliation: Centre for Theoretical Neuroscience, University of Waterloo Waterloo, ON, Canada.
authors.forename: Daniel
authors.initials: D
authors.lastname: Rasmussen
authors.affiliation: Centre for Theoretical Neuroscience, University of Waterloo Waterloo, ON, Canada.
authors.forename: Xuan
authors.initials: X
authors.lastname: Choo
authors.affiliation: Centre for Theoretical Neuroscience, University of Waterloo Waterloo, ON, Canada.
authors.forename: Aaron Russell
authors.initials: AR
authors.lastname: Voelker
authors.affiliation: Centre for Theoretical Neuroscience, University of Waterloo Waterloo, ON, Canada.
authors.forename: Chris
authors.initials: C
authors.lastname: Eliasmith
keywords: Python; control theory; nengo; neural engineering framework; neuroscience; simulation; theoretical neuroscience