25-08-2017, 09:32 PM
Biological Neural Networks (BNNs) Toolbox for MATLAB: User Guide
Biological Neural.pdf (Size: 372.64 KB / Downloads: 74)
Introduction
What is BNN Toolbox?
Biological Neural Network (BNN) Toolbox is MATLAB-based software to simulate
network of biological realistic neurons, as an abstract model of brain and
Central Nervous System1. This software enables user to create and simulate various
BNN models easily, using built-in library models, and just in a few lines of
code. User can also create custom models and add them to the library, using
library templates. A set of very descriptive examples are available to give a quick
introduction to the toolbox and to reduce the coding time for beginners. In addition
this toolbox only covers spiking models of neurons and biologically plausible
network components. To simulate firing rate models (also known as ANN2), there
exists very well designed packages, such as Neural Network Toolbox of MATLAB.
This toolbox uses powerful MATLAB programming language. MATLAB is
a popular computation platform with highly specialized and powerful toolboxes
for most scientific and engineering fields. To use all benefits of this toolbox, user
must have an essential knowledge of programming in MATLAB or other similar
popular languages, such as C/C++ or PASCAL. But a very small experience in
defining variables and function usage is also suffices to use this package. User
also can gain this by tracking example codes. Note that this constraint will be
removed in next versions using a user friendly GUI system.
Overview and Features
As the name of the toolbox implies, the main goal of this software is to provide
users a set of integrated tools to create models of biological neural networks and
simulate them easily, without the need of extensive coding. Users can create and
simulate a huge network of spiking neurons in less than 10 lines of code (or even
in one line, if they give all arguments to the main function) using predefined
library functions. It is also possible to create and add new models to the library
easily, using template library items provided for this reason.
Since programming in MATLAB is now very popular, users also would have
the benefits of other toolboxes to extend their code and models easily. The
followings are a list of features available in this release.
Future Outlook
• Next releases will have a very user friendly GUI4 to improve the model creation
and simulation processes. Because of time considerations this feature
is not present in this release.
• There will be a Simulink blockset for simulating BNNs using MATLAB
Simulink. This will highly increase the flexibilities of this toolbox with
linking it to other Simulink libraries.
• There will be a variant of this toolbox for those users without MATLAB
software. So they will be able to run this toolbox as a stand-alone software.
• Next versions will be much faster than this version in simulating models.
• The library will have more models for neurons, synapses, and architectures.
If you have a model and wishing it to be included in next releases, please
contact the author.
• The adaptation library will be added, containing various learning mechanisms
for different parts of the system.
Installation Guide
Requirements
Here is the check list for the essential requirements to run this toolbox.
• MATLAB version 7.0 or 6.x. See Notes section below for more information.
• The latest version of the Biological Neural Networks Toolbox for
MATLAB.
Notes:
Since MATLAB system is a script interpreter, you need to have MATLAB
running on your computer to execute this toolbox (and of course any other MATLAB
program). Because of this feature, most of the MATLAB programs are OS
independent, if one does not use features provided for a specific OS. So there is
no restriction about the system specifications including hardware and operating
system except that it must have a MATLAB installed on it and also be capable
of running MATLAB properly.
The toolbox is originally developed using MATLAB 7.0, Release 14 and is
tested successfully with MATLAB 6.x, Release 13 under Microsoft Windows 2000
Professional.
Basics of BNN
A Biological Neural Network or simply BNN is an artificial abstract model of
different parts of the brain or nervous system, featuring essential properties of
these systems using biologically realistic models. Neurons in the CNS communicate
using short duration pulses, called action potentials or spikes, which the
basic features of these signals, such as amplitude and temporal properties, are
not different for a population of neurons in a certain part of the CNS. So the
basic feature of a BNN is to use spiking neurons instead of traditional firing rate
models (also known as sigmoidal neurons) used in ANNs. Because of this spiking
behaviour, in most cases Spiking Neural Networks (SNNs) term is used instead
of BNNs for these models.
The basic components of a BNN model is described in next section using
a very simple and illustrative example explaining the essential features of the
toolbox. It is recommended for beginners in computational neuroscience to read
some reference books regarding modeling aspects of neuronal systems, since this
manual is not going to repeat them here. It is supposed throughout this guide
that the user has the eseential knowledge of spiking neurons
Components of a BNN
Let’s start this section with a simple example. Suppose we want to simulate a
network of three fully connected integrat-and-fire neurons using this toolbox. The
source code for this example is available in the examples directory of the toolbox,
under example1.m. Most of the functions in this example use default values for
their input arguments. This will simplify the introduction process. Note that
the full description of the commands and their input arguments will be given in
next chapters. To open this example in a m-file editor, execute edit example1 in
command window or run Open option from File menu and select example1.m.