HE-KNOWS - An electronic nose
Part 1: project profile
Development of olfactory characterization of the environment.
Project short description
An electronic nose is an instrument which comprises an array of electronic chemical sensors with partial specificity and an appropriate pattern recognition system, capable of recognizing simple or complex odours.
Using a multi-sensor olfactory system, we are trying to improve the characterization of substances (through data analysis and learning). After that we will study the application of the system to a mobile robot. The measurements are temperature and humidity dependant so we are studying some method to limitate the problem and to improve the classification.
Start date: 2007/07/01
End date: 2008/07/23
G. Gini - gini (at) elet (dot) polimi (dot) it
Other Politecnico di Milano people
D. Medei - davide (dot) medei (at) mail (dot) polimi (dot) it
Students currently working on the project
Fabio Bertuccio - fabio (dot) bertuccio (at) mail (dot) polimi (dot) it
Students working on the project in the past
Matteo Ateri - matteo (dot) ateri (at) mail (dot) polimi (dot) it
Laboratory work and risk analysis
A list of potentially dangerous (if not correctly performed) activities is included into the Safety norms of the AIRLab, which you MUST know to work at the AIRLab.
Laboratory work for this project will be mainly performed at AIRLab/Lambrate. Laboratory work for this project is mainly limited to software related activities. Potentially risky activities are related to the substances used for tests and recognition problems on the electronic nose (for example combustible substances or solvents). Standard safety measures described in Safety norms will be followed.
Part 2: project description
This project is aimed at designing and implementing a pattern recognition system based on artificial neural networks. The work is based on an Artificial Neural Network (ANN) electronic nose, intended particularly for volatile organic compounds (VOCs). The electronic nose consider inputs from an array of Metal Oxide and Electrochemicals sensors. Measurements of sensors resistance are used as key features in determining chemical vapors. We also use temperature and humidity measurements as inputs. Sensors resistance are used as inputs of a Multilayer Feed Forward Neural Network. Error back propagation is the learning algorithm used. The training may be performed in batch mode, online mode and superSAB mode. The network is used as a classifier and as a recognizer for many substances, like coffee and essential oils. We found the backpropagation network needs a long time to train and the number of the hidden layer is difficult to decide. Despite that the backpropagation network we created can classify training e testing samples with accuracy between 90% and 100%, also in concentration problems. We are trying to solve the temperature and humidity dependance problem using temperature and humidity measurements as additional inputs for the network. We can also create different small networks trained on small temperature and humidity ranges and then automatically select the right network to use for recognition at certain temperature and humidity.
The software is GUI based and is composed of four distinct modules. With these modules we can:
- Connect to the electronic nose through serial/usb port;
- manage a large number of parameters like number and type of sensors to use, mesaurements duration an many others;
- manage sensors heating;
- receive data from electronic nose and save them to text files;
- create datasets from text files in appropriate format to train and test the neural network, splitted in training, validation and certification set;
- join different datasets to create big datasets including data acquired in different days;
- create patterns to be recognized by the trained network;
- create and modify multilayer feed forward neural netwoks with any number of layers;
- train, validate and certificate the net through backpropagation training algorithm in batch, online and superSAB mode;
- choice of different sigmoidal functions and many other parameters;
- monitor error and accuracy trend online;
- save the trained networks;
- classify and recognize unknown patterns (unknown substances).
We will use only open source and free software.
Documentation and source code of the software are coming soon.