Closed-Loop Neural Simulations

clones is an open-source interface between Brian, a neural simulator for python users, and Sofa, a physics engine for biomedical simulation. clones allows you to model animal behaviour through the interaction of neurons, muscles and the environment.


Communication between Brian and Sofa is achieved through shared memory and semaphores. The physical properties of sensors and effectors are defined in the sofa scene description.
<Node name="Worm" >
  <EulerImplicit /> <CGLinearSolver iterations="25" />  
  <MechanicalObject position="..." />  
  <Muscle name="ventral" spring="..." />
  <Muscle name="dorsal" spring="..." />
The list of sensors and effectors are passed as parameters to a function called in a network_operation :
import clones
@network_operation( when = 'start' )
def iteration(): 
   clones.iteration( effectors = my_effectors , sensors = my_sensors )
This function sends effector values to Sofa and it updates sensor values used by Brian.


clones can be downloaded here. You will need to install Sofa, Brian and posix_ipc.

Anonymous Subversion Access

The SVN repository can be checked out through anonymous access with the following commands.
svn checkout svn://
svn checkout --username anonsvn
The password is 'anonsvn'