1 Initial Remarksall projects designed with ...
... plan Aa good MSc thesis
... and plan Ban exceptional MSc thesis
possibility to publish a paper
8 defined proposals ...
... and one open proposal
Agenda
1. Gas Dispersal Simulation in ROSSepideh Pashami, Achim Lilienthal
2. GPGPU Gas Distribution ModellingSepideh Pashami, Achim Lilienthal
3. Gas Discrimination with Electronic Noses Despite Long-Term Drift
Marco Trincavelli
4. Identification of Gases with Missing SensorsMarco Trincavelli
Agenda
5. Feature Selection for Stock Market ForecastingMarco Trincavelli
6. Signal Reconstruction for Gas Discrimination with the PTM E-Nose
Victor Hernandez Bennetts, Achim Lilienthal
7. NAO StabilizationDimitar Dimitrov
Agenda
8. Planning Motions Considering Constraints with Priority
Dimitar Dimitrov
9. Mixture Models for Modeling MotionsDimitar Dimitrov
10.Open MSc Project Proposal
11.Further, Sketchy MSc Project Proposals
further details on our Web page: http://aass.oru.se/Research/Learning/studentprojects/ LSL_MSc_Project_Proposal-2010_12_16.pdf
Agenda
Gas Dispersal Simulation in ROS
(30 ECTS, 1 Student)
Supervisors: Sepideh Pashami, Achim Lilienthal
1 Gas Dispersal Simulation in ROS
Backgroundexisting gas dispersal simulation engine
combines OpenFOAM fluid flow simulation ...• physics simulation
1 Gas Dispersal Simulation in ROS
Backgroundexisting gas dispersal simulation engine
combines OpenFOAM fluid flow simulation ...
... with filament-based atmospheric dispersion model
1 Gas Dispersal Simulation in ROS
Backgroundexisting gas dispersal simulation engine
combines OpenFOAM fluid flow simulation ...
... with filament-based atmospheric dispersion model• time-dependent simulation• models turbulent effects
1 Gas Dispersal Simulation in ROS
Backgroundexisting gas dispersal simulation engine
OpenFOAM + filament-based atmospheric dispersion model
Project Goal: Integration of the Gas Dispersal Simulation Engine into the Robot Operating System (ROS)
1 Gas Dispersal Simulation in ROS
Backgroundexisting gas dispersal simulation engine
OpenFOAM + filament-based atmospheric dispersion model
Project Goal: Integration of the Gas Dispersal Simulation Engine into the Robot Operating System (ROS)
interface to gas dispersal simulation engine• interface to ROS: import of environment model• interface to ROS: simulation of (passive) robots• gas sensor model• pre-selection of meaningful simulation parameters
1 Gas Dispersal Simulation in ROS
Backgroundexisting gas dispersal simulation engine
OpenFOAM + filament-based atmospheric dispersion model
Project Goal: Integration of the Gas Dispersal Simulation Engine into the Robot Operating System (ROS)
Project Goal++: Mobile Robot Olfaction Experiments in Simulation (According to the Students' Preferences)
gas source localization (finding the gas source), sensor planning for gas source localization
gas distribution mapping (building a model of the gas distribution), sensor planning for gas distribution mapping
1 Gas Dispersal Simulation in ROS
Work Plan (1 Student, 30 ECTS Points)study of available filament-based gas dispersal simulation engine
study of Robot Operating System (ROS)
integration of gas dispersal simulation engine with ROS? comparison with alternative simulation framework in Player/Stage (PlumeSim)
? adding 3D visualization for the gas dispersal simulation engine
? mobile robot olfaction experiments in simulation ? gas source localization (finding the gas source)
? sensor planning for gas source localization
? gas distribution mapping (building a model of the gas distribution)
? sensor planning for gas distribution mapping
1 Gas Dispersal Simulation in ROS
RequirementsGood programming skills in C++
Additional Beneficial Skills (Not Mandatory)previous experience with ROS or Player/Stage
Contact PersonsSepideh Pashami [email protected]
Achim J. Lilienthal [email protected]
Achim
Sepideh
Agenda
GPGPU Gas Distribution Modelling
(30 ECTS, 1 Student)
Supervisors: Sepideh Pashami, Achim Lilienthal
2 GPGPU Gas Distribution Modelling
Backgroundmodel gas distributions from a set of gas sensor measurements
statistically build predictive models
2 GPGPU Gas Distribution Modelling
Backgroundmodel gas distributions from a set of gas sensor measurements
statistically build predictive models
parallel implementation can speed up computation of these predictive models
2 GPGPU Gas Distribution Modelling
Backgroundmodel gas distributions from a set of gas sensor measurements
statistically build predictive models
parallel implementation can speed up computation of these predictive models
Project Goalparallel implementation of existing statistical gas distribution modelling methods
2 GPGPU Gas Distribution Modelling
Work Plan (1 student, 30 ECTS)study of statistical gas distribution modelling approaches, focus on Kernel DM+V
implementation of Kernel DM+V in C++
study of CUDA parallel programming
implementation of Kernel DM+V in CUDA based on the C++ implementation in one GPU block
implementation of Kernel DM+V in more than one GPU block
? parallel implementation of other gas distribution modellingapproaches
2 GPGPU Gas Distribution Modelling
Requirementsgood programming skills in C++ and Matlab
interest in algorithm design
Additional Beneficial Skills (Not Mandatory)parallel programming knowledge
programming skills in CUDA or OpenCL
Contact PersonsSepideh Pashami [email protected]
Achim J. Lilienthal [email protected]
Achim
Sepideh
Agenda
Gas Discrimination with Electronic
Noses Despite Long-Term Drift
(30 ECTS, 1 Student)
Supervisor: Marco Trincavelli
3 E-Nose Gas Discrimination Despite Drift
Backgroundmetal oxide gas sensors (MOX) very popular in mobile robot olfaction (science of smelling robots)
one of the main limitations of MOX gas sensors is the drift in the response
it is possible to cope with the effect of drift by designing an appropriatepattern recognition algorithmfor gas discrimination
3 E-Nose Gas Discrimination Despite Drift
Backgroundmetal oxide gas sensors (MOX) very popular in mobile robot olfaction (science of smelling robots)
one of the main limitations of MOX gas sensors is the drift in the response
compensation of the drift by designing an appropriate pattern recognition algorithm for gas discrimination possible
Project Goaldesign and implementation of a gas discrimination algorithm that performs well on a dataset collected over 3 years
large data set available (collected by Alexander Vergara at UCSD)
3 E-Nose Gas Discrimination Despite Drift
Work Plan (1 student, 30 ECTS)get familiar with MOX gas sensors
analyze the effect of the drift on MOX gas sensors response
design and implement a gas discrimination algorithm that is robust to drift changes
test gas discrimination algorithm on available dataset use large data set collected over 3 years by Alexander Vergara at UCSD
3 E-Nose Gas Discrimination Despite Drift
RequirementsBackground in Machine Learning
Knowledge of Linear Algebra
Additional Beneficial SkillsProgramming skills in MATLAB
Contact PersonsMarco Trincavelli [email protected]
Marco
Agenda
Identification of Gases
with Missing Sensors
(30 ECTS, 1 Student)
Supervisor: Marco Trincavelli
4 Gas Discrimination with Missing Sensors
Backgroundgas sensing for Mobile Robot Olfaction, Air Pollution Monitoring, Exploration of Hazardous Areas
when a sensor array is deployed without sensing chamber only some of the sensors might be exposed to a gas
4 Gas Discrimination with Missing Sensors
Work Plan (1 student, 30 ECTS)get familiar with MOX gas sensors
comparison of different approaches for performing gas identification when one or more sensors are missing (imputation, reduced-feature models, etc.)
analysis of the degradation of performance when sensors are missing (theoretical bounds?)
4 Gas Discrimination with Missing Sensors
RequirementsBackground in Machine Learning
Programming skills in MATLAB
Contact PersonsMarco Trincavelli [email protected]
Marco
Agenda
Feature Selection
for Stock Market Forecasting
(30 ECTS, 1 Student)
Supervisor: Marco Trincavelli
5 Feature Selection for Stock Market Forecasting
Backgroundfeature selection is the problem of selecting a subset of M features from a set of N (M<N) that is optimal w.r.t. a classification/regression task
feature selection is generally a hard combinatorial problem
various heuristic methods for feature selection proposed in the literature
filters, embedded, wrappers
convex optimizationguarantees a global maximum, efficiently solved
5 Feature Selection for Stock Market Forecasting
Backgroundfeature selection: selecting M out of N features that is optimal w.r.t. a classification/regression task
feature selection is generally a hard combinatorial problem
various heuristic methods for feature selection
convex optimization
Project Goaldesign a feature selection algorithm that chooses which stocks to monitor for predicting a given financial index
5 Feature Selection for Stock Market Forecasting
Work Plan (1 student, 30 ECTS)study feature selection
design and implement a feature selection algorithm
compare developed algorithm with existing approaches
? extend the approach to include additional constraints (e.g. feature grouping) on the selected feature set
5 Feature Selection for Stock Market Forecasting
RequirementsBackground in Machine Learning
Programming skills in MATLAB
Additional Beneficial SkillsKnowledge of Optimization Techniques
Contact PersonMarco Trincavelli [email protected]
Marco
Agenda
Signal Reconstruction for Gas
Discrimination with the PTM E-Nose
(30 ECTS, 1 Student)
Supervisors: Victor Hernandez, Achim Lilienthal
6 Signal Reconstruction in the PTM E-Nose
Backgroundmetal oxide gas sensors (MOX) very popular in mobile robot olfaction (science of smelling robots)
characteristic of MOX gas sensors changes with the operating temperature
oper
atin
g te
mpe
ratu
re [a
.u.]
sens
or re
spon
se [a
.u.]
6 Signal Reconstruction in the PTM E-Nose
BackgroundMOX characteristic changes with operating temperature
temperature modulation set of virtual sensors (with different characteristics)
open sampling systems exposed to intermittent patches of gas short odour pulses
high modulation frequency required to expose all virtual sensors to short odour pulses ...
... but with increasing temperature "the chemistry cannot follow" number of virtual sensors decreases
PTM e-nose – operate several MOX sensors in parallel
6 Signal Reconstruction in the PTM E-Nose
PTM E-NoseN MOX sensors of the same type measure 1/N of the modulation period T
concatenation of the N pieces
approximate reconstruction of the signal of one sensor over the full modulation period
6 Signal Reconstruction in the PTM E-Nose
PTM E-NoseN MOX sensors of the same type measure 1/N of the modulation period T
concatenation of the N pieces
approximate reconstruction of the signal of one sensor over the full modulation period
reconstructed signal is used to identify gases (gas discrimination)
6 Signal Reconstruction in the PTM E-Nose
PTM E-NoseN MOX sensors measure 1/N of the modulation period T
reconstruction of the signal over the full modulation period
reconstructed signal used to identify gases
Project Goalinvestigate the value of reconstructing the response of a single sensor for gas discrimination with the PTM e-nose
6 Signal Reconstruction in the PTM E-Nose
Work Plan (1 student, 30 ECTS)get familiar with MOX gas sensors
investigate correlation between reconstructed signal and the true signal over the full modulation period
does the reconstruction step help to improve classification?
which segment of the modulation sinusoid is most informative for classification?
investigate modulation signals other then sinusoids
6 Signal Reconstruction in the PTM E-Nose
Work Plan (1 student, 30 ECTS)get familiar with MOX gas sensors
investigate correlation between reconstructed signal and the true signal over the full modulation period
investigate modulation signals other then sinusoids
study difference between transient and stationary signal
investigate value of signal reconstruction in the specific case of transient signals
transient signals are very important for real world applications (because odour pulses are short sensors do not reach the steady-state)
6 Signal Reconstruction in the PTM E-Nose
Work Plan (1 student, 30 ECTS)get familiar with MOX gas sensors
investigate correlation between reconstructed signal and the true signal over the full modulation period
investigate modulation signals other then sinusoids
study difference between transient and stationary signal
investigate value of signal reconstruction in the specific case of transient signals
transient signals very important for real world applications
question: does reconstruction improve classification as compared to extracting features from the T/N segments individually?
6 Signal Reconstruction in the PTM E-Nose
RequirementsMachine Learning
Matlab
Additional Beneficial Skills (Not Mandatory)–
Contact PersonsVictor Hernandez Bennetts
Achim J. Lilienthal [email protected]
Victor
Achim
7 NAO Stabilization
Background
In the laboratory we have two NAO humanoid robots. One problem related to the control of such robots is the generation of a “stable” walking gait.
Due to errors/uncertainty in the modeling of both the robot and environment, pre-computation of satisfactory motions offline is not feasible, hence strategies for generating them online are required.
7 NAO Stabilization
Background (continued)
Up to date, many stabilization schemes have been proposed. A particularly successful one (that we have been developing since 2007) is based on the use of Model Predictive Control (MPC).
Previous versions of this scheme have been successfully used for the online motion generation (planning) for humanoid robots like HRP-2 and NAO.
7 NAO Stabilization
The basic idea
Stable motion generation (online) using the whole dynamical model of complex systems (like a humanoid robot) is computationally very demanding task.
It is very common to use a simplified (often linear) model in combination with carefully chosen constraints that “guarantee” the generation/execution of stable motions.
7 NAO Stabilization
The basic idea (continued)
Linear model
Constraints
currentstate
+reference
profile
Prediction about the behavior in the “near future” as a function of
a set of control actions
Compute the set of optimal actions
7 NAO Stabilization
The basic idea (continued)The currently used control actions (which are computed according to a predefined optimality criterion in order to “guarantee” the robot’s stability) are:
position of the center of mass of the humanoid robot;
change of the reference positions of the feet on the ground (only when necessary). This is useful in the presence of “strong” disturbances.
The ability of the system to automatically perform repositioning of the feet if necessary, increases the robustness to unknown perturbations, however …
7 NAO Stabilization
Problem
From experience we know that our ability to preserve balance when pushed depends not only on how we reconfigure our body, but on the timing of the reaction.
Depending on when we react, the necessary reconfiguration (to preserve balance) could be completely different. Furthermore, in most cases we preserve our balance not only by repositioning of the feet.
7 NAO Stabilization
Problem (continued)
The current MPC scheme is based on a predefined discretization of the preview window (i.e., the time interval in the “near future” during which a prediction about the motion of the system is made).
As a result, the computation of both optimal time when to react, and optimal reaction is not performed.
7 NAO Stabilization
Envisioned contributions of the thesisTheoretical investigation and development of formulation that includes the time (of reaction) as a parameter of the optimization problem.
The reaction of the robot (to perturbation) should include not only foot repositioning but arm motion (which is not pre-defined) as well.
Implementation (and experimental work) demonstrating the validity of the developed approach on the humanoid robot NAO.
7 NAO Stabilization
The student would not start from scratch. The following main modules have already been developed:
Walking Motion Generation (WMG) library, with the ability to reposition foot placement (the implementation of the foot repositioning is still under development)
Inverse kinematics library for the execution of the control actions (computed by the WMG library).
A library for the application of control commands to the actuators of NAO (this is simply our C++ interface to using NAO)
7 NAO Stabilization
RequirementsVery good C++ programming skills!
Exposure to a linear algebra course
Additional Beneficial Skills (Not Mandatory)Exposure to a course in optimization
Matlab programming skills
Contact PersonDimitar Dimitrov [email protected]
Mitko
Agenda
Planning Motions Considering
Constraints with Priority
(30 ECTS, 1 Student)
Supervisor: Dimitar Dimitrov
8 Planning motions considering constraints with priority
Background
When dealing with systems with many Degrees of Freedom (DoF) it is often possible/desirable to perform multiple tasks simultaneously. For example while a humanoid robot is walking towards a goal, it might be desirable to point the head-built-in camera in a given direction.
Planning motion that satisfy multiple tasks (constraints) is a relevant issue.
8 Planning motions considering constraints with priority
Problem
In the presence of multiple tasks, it is possible that some of them are conflicting. In such cases, a standard approach would be to satisfy all tasks “as much as possible” while minimizing a given cost. However, this would result in possibly violating “by some amount” all tasks.
In practice, however, it is often the case that certain tasks are more important (with higher priority) than others.
8 Planning motions considering constraints with priority
Problem (continued)
When the notion of more relevant and less relevant task is defined, it is often advisable to use approaches that can account for the priorities of the tasks.
For example, if a humanoid robot wants to grasp an object, one might impose as a constraint with highest priority for the robot to keep its balance, while the grasping of the object is performed only if possible
8 Planning motions considering constraints with priority
Recent development
In 2010 an interesting paper appeared in “The international Journal of Robotics Research”
O. Kanoun, et al., “Planning foot placements for a humanoid robot: A problem of inverse kinematics,”
The authors make a very nice use of the task priority concept in the context of planning general motions for a humanoid robot.
8 Planning motions considering constraints with priority
The main idea
Example scenario: GO and GRASP the ball
The main idea is to NOT treat the planning of the steps and the “reaching motions” for the arms separately.
A virtual manipulator that parameterizes the footstep locations is used (more details: during the presentation or in the paper).
8 Planning motions considering constraints with priority
Envisioned contributions of the thesisImplementation (and verification) of the proposed strategy using the NAO robot
Extension to cases when the floor is not assumed to be flat. For example walking on stairs.
Development of a C++ library for the efficient task priority resolution (at velocity level) – this is based on papers from 2009 and 2010.
Integration with the results from the walking stabilization project
8 Planning motions considering constraints with priority
RequirementsVery good C++ programming skills!
Exposure to a linear algebra course
Additional Beneficial Skills (Not Mandatory)Matlab programming skills
Contact PersonDimitar Dimitrov [email protected]
Mitko
9 Mixture Models for Modeling Motions
BackgroundImagine a scenario where we are allowed to observe a given process and collect data describing its evolution.
A classical problem is to obtain a model of the process given the data we have collected.
The question: what model to use and how to fit it?
The answer: not clear (depends on the process and envisioned application).
9 Mixture Models for Modeling Motions
To be more specificThe process to be observed will be the humanoid robot NAO walking (for example we can joystick it around the room for a while)
The observed variable could be for example the positions and velocities of the center of mass (CoM), the position of the zero moment point (ZMP), and positions and velocities of the the two legs.
Our goal would be to develop a statistical model of the stabile walking process because we would like to predict whether a give action would be (statistically) safe to perform
9 Mixture Models for Modeling Motions
To be more specificThe purpose of the model would be twofold:
We could use it to simply detect abnormal behavior e.g., the system is perturbed;
Or to generate a reaction based on our statistical model, that would maximize the probability that the robot will maintain a stable configuration;
Essentially, we want to let NAO learn how to walk without using first principal models.
There are many related challenges, but an essential one is to find a (reasonably small) set of indicators (parameters) that would reflect the stability of the system.
9 Mixture Models for Modeling Motions
Model to useWe will first put Gaussian Mixture Model (GMM) and Gaussian Mixture Regression (GMR) to the test ☺;
The reason: over the past few years many publications present the successful application of mixture models in a variety of different applications.
Using a statistical model instead of first principle models could be advantageous in this scenario (more during the presentation).
9 Mixture Models for Modeling Motions
Envisioned contributions of the thesisThe theoretical investigation and development of a statistical model for the stability of NAO.
Experimental verification and comparison with MPC based control/planning schemes (the student need not be familiar with the later scheme).
Development of a scheme for online adaptation of the model (to be implemented in C++). The application is for example in case when the robot is walking on an inclined slope.
9 Mixture Models for Modeling Motions
RequirementsVery good Matlab and C++ programming skills!
Exposure to a probability or statistics course
Additional Beneficial Skills (Not Mandatory)Exposure to a machine learning course
Contact PersonDimitar Dimitrov [email protected]
Mitko
11 Further Project Ideas
Improved Gas Source Discrimination with a Mobile Robot By Modelling the Wind Distribution
contact Achim Lilienthal [email protected] or ...
... Marco Trincavelli [email protected]
Wind Mapping for Robot Localizationcontact Achim Lilienthal [email protected]
11 Further Project Ideas
3D-NDT on the GPUcontact Martin Magnusson
3D Scan-based Localizationcontact Todor Stoyanov
Combined 3D Scanning and Gas Distribution Mappingcontact Achim Lilienthal
11 Further Project Ideas
Combined 3D Scanning and Gas Distribution Mappinginput
registered 3D point cloud
gas concentration readings from 3D nose
tasksoftware that visualizes the fused information
• meshing the 3D point clouds• visualize mean concentration of the gas cloud (translucent)• simultaneously visualize the uncertainty about the gas
concentration• carry out further experiments with the smelling robot
in different environments
11 Further Project Ideas
Combined 3D Scanning and Gas Distribution Mappingplan A
meshing
develop the GUI to display the mean concentration
plan Bvisualize also the uncertainty about the gas concentration
carry out further experiments with the smelling robot in different environments
11 Further Project Ideas
QP solver on a GPUcontact Dimitar Dimitrov
Grasp planning in the presence of uncertaintiescontact Dimitar Dimitrov