A genetic algorithm for automatic feature extraction from EEG data

From AIRWiki
Revision as of 19:14, 24 March 2009 by GiuseppeChindemi (Talk | contribs)

Jump to: navigation, search

Part 1: project profile

Project name

A genetic algorithm for automatic feature extraction from EEG data and its application as an online classifier

Project short description

The identification of sight-related stimuli (typically some sort of flash) based upon EEG-analysis needs a specific software capable to find and extract a set of relevant stimuli-related features from those EEG. In particular we are looking for a stimulus called P300 (a positive deflection found, in an EEG, after more or less 300ms from the stimulation). The application we are further developing aims at finding those features that best describe everyone's partcular P300. Such an application, based upon an ad-hoc genetic algorithm, has already been developed at Politecnico with excellent results. The goals of this project are

  • producing a c++ version of this software in order to maximize efficiency and portability
  • producing a c++ class that uses the previously detected template to classify any epoch as target or non-target


  • Start date: 2008/10/01
  • End date: 2009/04/30

People involved

Project head(s)
Students currently working on the project
Students who worked on the project in the past

Part 2: project description

State of the art

It is currently under development the online component of the identification section of the code and the class to which is delegated the computation of the P300 template.

Preliminary studies and sketches

After a deep analysis of the pre-existing source code, a c++ flavor of an analogous matlab version, we moved towards the current phase of further development and conversion of the application.

Design notes and guidelines

Our attention is focused on portability and efficiency; due to this fact we are currently developing the software in the form of a c++ class.

Experiments (description and results)

After we will have developed the application in its entireness, it's been planned to carry on some experiments related to fitness, genes and parameters tweaking.


Savane - BioSignal Analysis Toolkit (you must be a registered user to log in the repository of Savane)

Part 3: project status

  • 14/03/2009 Searching for the weights vector in IClassifier object; searching documentation about IClassifier class
  • 16/03/2009 Defined the skeleton of the class OnlineClassifier, core of the second part of the project. Defined the prototype of the method TemplateGenerator, with which it's possible to write to filesystem the representation of the template of user's P300.
  • 17/03/2009 Modified repository; defined where the second module fits in the framework of BCI2000 project; evaluated a possible implementation of the method TemplateGenerator; GenericSignal taken into account as the default way to describe a template/epoch (instead of the ones used in the preexisting code)
  • 19/03/2009 Written the pseudocode of the function TemplateGenerator. Read the documentation of class GenericSignal of BCI2000. Found the weight vector in IClassifier.
  • 24/03/2009 Given an implementation to the function TemplateGenerator. First attempts to interface with BCI2000.

Part 4: documents and references


A Genetic Algorithm for Automatic Feature Extraction in P300 Detection

A Genetic Algorithm Tutorial