20 Aug 2014: Two additional general-purpose projects have been spun out from Topographica. holoviews provides nearly code-free visualizations of arbitrary scientific data, ideal for use with IPython Notebook. FeatureMapper measures feature maps, receptive fields, tuning curves, and similar input-output relationships for any simulator or experimental system. Together with Param, ParamTk, and ImaGen, these packages provide nearly all of the functionality of Topographica for any researcher to use in their own independent projects.
4 Nov 2013: An IPython Notebook reproducing the results of Stevens et al. (J. Neuroscience 2013) is now available as an example in the Tutorials section. This notebook is designed to show how to write a reproducible paper using Topographica, IPython Notebook, and Lancet.
2 Oct 2013: Topographica GCAL V1 modelling paper (Stevens et al., J. Neuroscience 2013) published. The GCAL tutorial shows how to explore a running GCAL model, and the GCAL demo shows how the model develops over time.
2 May 2013: New website launched.
Topographica is a software package for computational modeling of neural maps, developed by the Institute for Adaptive and Neural Computation at the University of Edinburgh and the Neural Networks Research Group at the University of Texas at Austin. Development of Topographica has been funded by the NIMH Human Brain Project under grant 1R01-MH66991. The goal is to help researchers understand brain function at the level of the topographic maps that make up sensory and motor systems.
Topographica is intended to complement the many good low-level neuron simulators that are available, such as Genesis and Neuron. Those simulators focus on modeling the detailed internal behavior of neurons and small networks of them. Topographica instead focuses on the large-scale structure and function that is visible only when many thousands of such neurons are connected into topographic maps containing millions of connections. Many important phenomena cannot be studied without such large networks, including the two-dimensional organization of visual orientation and motion direction maps, and object segmentation and grouping processes.
To make such models practical, in Topographica the fundamental unit is a sheet of neurons, rather than a neuron or a part of a neuron. For most simulations, the sheets can be implemented at a high level, consisting of abstract firing-rate or integrate-and-fire neurons. When required for validation or for specific phenomena, Topographica can easily be extended using a Sheet that interfaces to more detailed neuron models in other simulators. Less-detailed sheets can also be used temporarily, e.g. when interacting with the model in real time. Throughout, Topographica makes it simple to use an appropriate level of detail and complexity, as determined by the available computing power, phenomena of interest, and amount of biological data available for validation.
Compared to writing code for such models from scratch in Python or Matlab, Topographica makes it simple to define a complex network of multiple interconnected populations, to use localized patches of connections within each sheet, to control the inputs to each sheet and analyze the outputs, and to manage results from models and simulations as they are developed and improved over time.
The figure at top right shows an example Topographica model of the early stages in the visual system, modeling how retinal input is transformed by the thalamus, primary visual cortex, and higher cortical areas. Because Topographica is a general-purpose map simulator, it also supports any other sensory modality that is organized into topographic maps, such as touch and hearing, as well as motor areas.
Topographica is freely available for downloading, and is an open source project (BSD license) whose capabilities can be extended and modified by any user. We welcome contributions from users, usually in the form of GitHub pull requests, and invite interested people to join our globally distributed development team.