GSoC/GCI Archive
Google Summer of Code 2013

International Neuroinformatics Coordinating Facility

Web Page: http://www.incf.org/gsoc/

Mailing List: https://lists.incf.org/listinfo/incf-users

INCF develops collaborative neuroinformatics infrastructure and promotes the sharing of data and computing resources to the international research community.

Neuroinformatics integrates information across all levels and scales of neuroscience to help understand the brain and treat disease.

Our mission is to facilitate the work of neuroscientists around the world, and to catalyze and coordinate the global development of neuroinformatics.

We also aim to foster scientific interaction through information flow within our global network; valuate neuroinformatics activities and infrastructures; and to facilitate training in neuroinformatics.

Projects

  • Algorithm Improvements to Diffusion Guided Quantitative Susceptibility Mapping My proposal is to accelerate the reconstruction of Quantitative Susceptibility Maps (QSM) by introducing software implementation optimizations and mathematical insights to an existing algorithm. QSM is an important tool for studying the levels of iron in the brain, which has been linked to neurological disorders such as Alzheimer's disease, Parkinson’s disease, and multiple sclerosis. Additionally, QSM has been used to study the accumulation of iron as the brain ages, which can impair motor control and cognition later in life.
  • Android Conference Mobile Application Android based conference mobile application that would allow conference participants access all the relevant information, like general information, the schedule, and the abstracts. There will be another interesting feature, user can synchronize data when he/she using internet and user can save data in device for offline use.
  • BrianDROID - Neural simulation on mobile devices Brian is a simulator for spiking neural networks, written in Python. The 2.0 version (currently in development) uses a hybrid programming language approach: The models and the simulation script are written in Python but the code in each simulation timestep is executed in generated code (for example in C++). Mobile devices such as Android phones have powerful processing units and versatile sensors, making them useful as a "brain" in robotics applications. Being able to run a Brian script on an Android phone would therefore be a useful testbed for neural models in a "real life" setting. The aims of this project are the following: - Write a conversion tool to convert a Brian simulation to a standalone Java program that runs on Android (making use of Brian's existing code generation facilities). - Add features to Brian that allow real-time simulation (e.g. dynamically adapt the simulation time step if the simulation is running too slow) - Access the phone's sensors (e.g. the microphone) and use them in the simulation in real time. The end result should be code with the above functionality and a working prototype for a neural model running on Android (for example, the so-called Licklider model of pitch recognition, using the phone's microphone as input). The student working on this project needs to have access to an Android phone.
  • G-Node Client for INCF Dataspace Recently INCF has launched the Dataspace - a platform to enable collaboration between researchers through the sharing of neuroscience data, text, images, sounds, movies, models and simulations. This platform is based on iRODS and physically integrates several data hubs, federated together. However, the INCF Dataspace is not the only system hosting neuroscience data. Several other data platforms are available, including the data management system developed at the German Neuroinformatics Node, which provides direct access to neuroscience data via a well-defi ned API. The aim of this project is to develop a client application that allows Dataspace users to search and access data at the G-Node, thus integrating available G-Node neuroscience data into the Dataspace federation.
  • Open source, cross simulator, models of cortical circuits. An increasing number of studies are using large scale network models incorporating realistic connectivity to understand information processing in cortical structures. High performance computational resources are becoming more widely available to computational neuroscientists for this type of modeling and general purpose, well tested simulation environments such as NEURON and NEST are widely used. In addition, hardware solutions (based on custom neuromorphic hardware or off the shelf FPGA/GPU hardware) are in development, promising ever larger, faster simulations. However, there is a lack of well tested, community maintained network model examples which can work across all of these simulation solutions, which both incorporate realistic cell and network properties and provide networks of sufficient complexity to test the performance and scalability of these platforms. This work will involve converting a number of published cortical network models into open, simulator independent formats such as PyNN (http://neuralensemble.org/PyNN/), NeuroML (http://www.neuroml.org/) and NineML (http://software.incf.org/software/nineml), testing them across multiple simulator implementations and making them available to the community through the Open Source Brain repository (http://www.opensourcebrain.org/). By converting or implementing models into these simulator-independent formats the computational neuroscience community improves important aspects to the development of the field such as model transparency, accessibility and reuse.
  • Smart image uploader Scientific lab images are huge and take a long time to completely upload to the server for backup. During upload if there is any network failure, the entire process has to restart. I have proposed a way to overcome this problem by overriding default behaviour of CherryPy HTTP request class. On a network failure, the uploaded chunk of image is saved. User can resume the upload whenever the network is back. This is done using CherryPy, JQuery and PostgreSQL.