english only
EPFL > STI > IMT > LASA > Teaching > Student Projects
LASA MENU
Home
Research
Publications
Teaching
People
Arriving to LASA
Videos / Photos
Press & News

GitHub Repository
Older Source Codes
The Blog
Intranet

Prospective Students
TEACHING INDEX
Teaching
Student Projects
Former Projects
Robot Contests

Student Projects propositions

If you are interested in one of the below projects, Semester Projects, Master Projects at EPFL, or Master Projects in Industry please contact the first person of reference indicated in each description either by telephone, or by email, or by visiting us directly to the LASA offices.


Semester Projects

   
   

Compliance in reinforcement learning for countinous state-action space

Learning by demonstration provides us with a powerful framework to enable a robot to perform desirable tasks. However, real-world demonstrations are prone to noise and other uncertainties; especially, when a teacher (i.e., the person who provides the demonstrations) can only provide sub-optimal solutions. While these noisy demonstrations can speed up the learning process at the beginning, it is favorable if our robot can go beyond this sub-optimality and reach the optimal solution to perform the task. This requires a delicate balance between the exploitation of the noisy demonstrations and the exploration for the optimal solution. As human, one key element that enables us to exhibit this behavior naturally is our physical compliance. When we start to learn a new task we reproduce what we see or are told and thus stay compliant. Reaching a satisfactory confidence in performance, we start to reduce our compliance and search for small improvements.

This concept has been tackled by previous students (https://www.dropbox.com/s/phd70gjouwy84b2/Report_Semester_Project.pdf?dl=0 , https://www.dropbox.com/s/pvg2vrrv8lg226f/main.pdf?dl=0). Their work was done in a discrete world and offered keen insight into compliance. The goal of this project is to extend the work into continuous state-action space in order to bring it closer to actual implementation on a real robotic platform. This is a nontrivial step. We will look at algorithms such as the policy gradient algorithm and the actor-critic algorithm in order to find efficient ways by which to incorporate compliance in these algorithms. If time permits actual implementation on a robotic platform will be considered, starting with simple point-to-point reaching.

The student will need to familiarize themselves with reinforcement learning theory and practice as well as the concept of compliance developed in the lab. A direction will be proposed, but the student will be free to explore ideas which they deem interesting as long as they provide scientific justification for them and they are in line with the goal of the project.

Project: Semester Project
Period: 01.08.2017 - 01.02.2018
Section(s): EL IN MA ME MT MX
Type: 30% theory, 20% software, 50% testing
Knowledge(s): Must have taken a machine learning course.
Subject(s): Reinforcement learning
Responsible(s): Andrew Sutcliffe
 
   
   
   

Adaptive human-robot interaction: From human intention to compliant robotic behavior

Robots are mainly here to assist us with tasks that are repetitive and burdensome. Machine learning and control theory provided us with a variety of techniques to teach our robots to perform such tasks. However, the ability of robots to adapt their tasks to their environment or to the intention of their human-user is limited. Providing robots with such adaptive abilities will unlock new possibilities for assistive robotics. Consider polishing as a task for a robotic arm. The robot learns how to polish from human demonstrations. However, during polishing, the human-user can safely grab the robot and change the polishing direction by applying few repetitions of movements in a new desirable direction. This means that the robots quickly adapts its motions to the intention of the human, thus, assisting him/her in performing the new task.

Previously, as the first step, we proposed a method for adapting the robot’s behavior to the intention of a human-user. This method is implemented/tested in simulation, and well-documented here. For the next step, the student will implement this method on a real robot. We will be using 7-DOF Kuka LWR 4+. An impedance controller will be provided to control the end-effector of the robot, and the student will mostly focus on adaptive motion planning using dynamical system. The method will be implemented in C++ using ROS libraries. At the end, we expect a compliant robot that polishes a surface and adapts its behavior (i.e., the location and the shape of the polishing) to the motions of the human.

Project: Semester Project
Period: 01.08.2017 - 01.02.2018
Section(s): IN MA ME MT MX
Type: 10% theory, 30% software, 60% implementation
Knowledge(s): Basic of Robotics and control, and C++ programming,
Subject(s): Physical Human-robot interaction, Adaptive control
Responsible(s): Mahdi Khoramshahi
   
   
   

Learning Manipulation with 4 Robotic Arms

Many industrial tasks require to have several robotic arms working on the same piece simultaneously. This is very difficult as we want the robots to perform the task while not intercepting each other. The joint workspace of the robots is highly non-convex and cannot be expressed mathematically. This project will apply machine learning techniques to learn a representation of the feasible workspace of the 4 robotic arms. This representation will then be used in an inverse kinematic controller to control for the robot's motions at run time. The algorithm will be validated to control 4 robotic arms in the lab that must manipulate objects on a moving conveyer belt.

Project: Semester Project
Period: 01.01.2017 - 15.07.2018
Section(s): EL IN MA ME MT PH
Type:
Knowledge(s):
Subject(s): Robotics, Machine Learning
Responsible(s): Aude Billard
   

Master Projects at EPFL

   
   

Sparse Solutions for Large-Scale Regression Problems

The curse of dimensionality is one of the main challenges in 'Big Data' problems. Unless the learning algorithm has an explicitly imposed sparsity constraint, model complexity will undoubtedly increase with respect to the number of samples. Typical sparse solutions for regression focus on problems where the number of samples "M" is less than the input "P", i.e. "M P", specifically, datasets with > 100,000 samples and where a sparse solution is needed for efficient prediction. Two kernel-based methods exist that are formulated to tackle such problems: 1) Relevance Vector Machines, a Bayesian formulation of Support Vector Machines that applies the Bayesian ‘Automatic Relevance Determination’ (ARD) methodology to linear kernel models. 2) Sparse Gaussian Process with Pseudo-Inputs, whose covariance is parameterized by the locations of "M" pseudo-input points, which we learn by a gradient based optimization (analogous to 'relevant vectors'). Nevertheless, both of these algorithms do not scale to data >100k training samples due to their optimization during training. Based on the literature of 1) and 2), the student should extend one of these algorithms to be capable of handling larger datasets, either by a) reformulating the optimization problem, such that it becomes feasible or b) tackle it with a divide-and-conquer approach and partition the large dataset into smaller sub-sets where 1) or 2) can be learned and merging/appropriate aggregation schemes must be introduced. The proposed approach will then be validated on interesting real-world dataset with M > 100k. The solution shall be implemented in Matlab/Python/C++ (the students choice).

[1] Michael Tipping. Relevance vector machine, October 14 2003. US Patent 6,633,857
[2] E. Snelson and Z. Ghahramani , "Sparse Gaussian Processes using Pseudo-inputs", NIPS 2006.

Project: Master Project at EPFL
Period: 01.09.2017 - 01.09.2018
Section(s): EL IN MA ME MT MX PH
Type: 80% Theory, 20% Software
Knowledge(s): Background in Machine Learning, Linear Algebra and Convex Optimization is required.
Subject(s): Machine Learning, Optimization
Responsible(s): Nadia Figueroa
   
   
   

Towards Incremental Learning: Merging SVMs from independent sample sets

With the increase in data available online and ever-changing applications, incremental and online machine learning algorithms that can adapt, learn and un-learn will become essential in the near future. Support Vector Machines (SVM) are undoubtedly one of the most powerful machine learning algorithms to date, however, due to the nature of the posed optimization problem (batch learning), they fall short when applied to incremental/adaptive problems. In this work, we are interested in finding a suitable solution for the problem of "incomplete datasets" or "complementary datasets" for a classification problem. Assume we are given a dataset at a specific point in time and we must learn a model to start predicting immediately. Then, we are suddenly given a new set of samples which belong to the same dataset. The question now is: What do we do with this new data? Do we re-learn the entire model with all the data-points? What if the samples are contradictory? Can we learn a new decision function from the new samples and merge them to the old model, without hindering performance on classification? Can we incrementally update the old model with our new samples? What if we suddenly realize that some samples were labeled erroneously and we would like to 'un-learn' them? These are the [sub-set of] questions that the student should try to answer. Seldom work in SVM literature is capable of handling these issues. The few works that can, are categorized into 1) "active/online methods" where training points are fed one-by-one and the SVM is learned sequentially [1] and 2) "ensemble methods" where a dataset is 'partitioned' into N-sets where N-SVMs are learned and basic aggregation schemes are applied to generate a final machine [2]. These approaches, however, are mostly suitable for handling large datasets and focus primarily on improving training time (i.e. efficient learning). By leveraging ideas from 1), 2) and online convex optimization [3], the student must propose an efficient and adaptable SVM learning scheme capable of solving all [or a sub-set] of the issues imposed by the proposed incremental learning problem. The solution shall be implemented in Matlab/Python/C++ (the students choice).

[1] Antoine Bordes, Seyda Ertekin, Jason Weston and Léon Bottou: Fast Kernel Classifiers with Online and Active Learning, Journal of Machine Learning Research, 6:1579-1619, September 2005.
[2] M. Claesen, F. De Smet, J. Suykens, and B. De Moor, "EnsembleSVM: A library for ensemble learning using support vector machines", Journal of Machine Learning Research, vol. 15, pp. 141–145, 2014.
[3] Introduction to Online Convex Optimization. Graduate text in machine learning and optimization. Elad Hazan. http://ocobook.cs.princeton.edu/

Project: Master Project at EPFL
Period: 01.09.2017 - 01.09.2018
Section(s): EL IN MA ME MT MX PH
Type: 80% Theory, 20% Software
Knowledge(s): Background in Machine Learning, Linear Algebra and Convex Optimization is required.
Subject(s): Machine Learning, Optimization
Responsible(s): Nadia Figueroa
   
   
   

Robust Bimanual Reaching motion for ABB-Yumi Robot

To perform many of our daily tasks, we use our both arms (and hands). This fact allows us to have a better control over our environment (better perception, higher precision, higher degrees of actuations, and higher applied forces). Given the uncertainties in our surrounding environment, our ability to coordinate the motion of our arms is extraordinary. Endowing robots with the same ability would increase their performance in the interaction with uncertain environments. Imagine a scenario where the robotic task is to grasp an object with imprecise location (only a probability distribution is available). This imprecision can be due to noisy perceptions or the fact that the object is moving with unknown dynamics. In such conditions, taking the maximum likelihood for granted and performing the task in a deterministic fashion might lead to poor performances and even failures. However, the robot can perform exploratory motions to gain better knowledge about the environment (i.e., a probability distribution with higher confidence for the target) which in turn would increase the performance of the task.

As the first step in this project, the student will focus on the formulation of a simple algorithm for simultaneous estimation and motion planning (using Kalman filters and dynamical system). As the second step, the student will implement and test this algorithm using ABB Yumi robot. The implementation will be done in C++ using ROS libraries where the robot is controlled in position. At the end, we expect a bimanual robot that grasps objects efficiently under environmental uncertainties.

Project: Master Project at EPFL
Period: 01.08.2017 - 01.02.2018
Section(s): EL IN MA ME MT MX
Type: 30% theory, 30% software, 40% implementation
Knowledge(s): Basics of Robotics and control, and C++ programming
Subject(s): Estimation, Motion planning, and Control
Responsible(s): Mahdi Khoramshahi
   
   
   

Learning Manipulation with 4 Robotic Arms

Many industrial tasks require to have several robotic arms working on the same piece simultaneously. This is difficult as the robot should not intercept each other while performing the task. The joint workspace of the robot is highly non-convex and cannot be expressed mathematically. This project will apply machine learning techniques to learn a representation of the feasible workspaces f 4 robotic arms. This representation will then be used in an inverse kinematic controller to control for the robot's motions at run time. The algorithm will be validated to control 4 robotic arm in the lab that must manipulate objects on a moving conveyer belt. It will also extend the approach to enable to manipulate the object under perurbations, such as when the conveyer belt slows down or accelerates rapidly.

Project: Master Project at EPFL
Period: 01.01.2017 - 15.07.2018
Section(s): EL IN MA ME MT PH
Type:
Knowledge(s):
Subject(s): Robotics, Machine Learning
Responsible(s): Aude Billard
   

Master Projects in Industry

   
   

Detection of product purchases from shelves in unconstrained, uncalibrated, heavily cluttered environments

Our work requires us to track changes within shelves in retail environments, corresponding to shoppers picking up products and buying them or putting them back on the shelves. Our methodology involves analysing video from one or more cameras recording up to 16h of store activity.
The task is complex as high numbers of shoppers move and occlude the videos when approaching the shelves, viewing angles are sometimes drifting throughout the day and there is no opportunity for calibration of the recording equipment when deploying in store.
The goal of the project is to leverage on the existing background subtraction system to integrate shopper occlusion and gradual camera movements to facilitate the detection process.
Knowledge requirements: Very good knowledge of C++ and principles of machine learning/computer vision (knowledge of OpenCV is a welcome plus).
Interested candidates should send an email to aude.billard@epfl.ch with a copy of their CV and grades.

Project: Master Project in Industry
Period: 01.09.2016 - 01.08.2017
Section(s): EL IN MT
Type:
Knowledge(s): Machine Learning, Programming in C++
Subject(s): Machine Learning
Responsible(s): , Basilio Norris
URL: Click here
   
   
   

Extraction of profiles of shopping and purchases patterns

In the scope of our shopper behaviour studies, we are confronted with the task of segmenting profiles of shoppers according to the type of purchases they make (categories of products, departments visited, …).
The goal of this project is to investigate the structure of shopping profiles in terms of clustering of sparse, high-dimensional data from hundreds of “shopping carts”, and to extract the main purchasing profiles and product category “proximities” according to the shopping behaviour rather than their relative location in store.
Knowledge requirements: Good understanding of Machine Learning concepts and tools (Clustering, Dimensional Reduction / Scaling, …). Good knowledge of at least one Machine Learning-related programming language (e.g. Matlab, R, Python, C++).

Interested candidates should send an email to aude.billard@epfl.ch with a copy of their CV and grades.

Project: Master Project in Industry
Period: 01.09.2016 - 01.08.2017
Section(s): EL IN MT
Type:
Knowledge(s): Machine Learning, Programming in C++ / Python / Matlab / R
Subject(s): Machine Learning
Responsible(s): , Basilio Norris
URL: Click here
   



Last update: 01/03/2012