General information

I present a light-weight detection system for social robots equipped with cameras that expands the robot current potentialities by enabling opportunistic behaviors in response to certain conditions. Nowadays, in the robotics field, agents usually follow pre-defined strategies that activate many capabilities or adaptive algorithms that require a quantity of resources proportional to the complexity of the environment. Unfortunately, they do not adapt to the variability of the environment or they require a huge amount of computational resources. With the proposed work, I try to overcome these current limitations by introducing a learning system that allows non-expert humans to teach the robot how to face situations in which it typically fails or that it cannot handle optimally with its current status. The detection system is composed by two modules: the first identifies the situation thanks to proper machine learning algorithms, which require a small amount of computational resources; the second extracts important information from special types of images, which are depth and infrared images, in order to speed up and improve the computation. Such detection system is then integrated with a human-in-the-loop learning layer that generates the behavior assimilated from human demonstrations. The overall system allows humans to interactively create decision algorithms and show new behaviors, teaching the robot when to replicate them and how.

Normally, engineers construct classification algorithm with a precise idea of what they are going to recognize and what will be the input. They collect a large amount of training samples, both negative and positive, and execute a training phase offline with the objective of score an sufficient accuracy and then use such algorithm without further modification. My requisites are very different with respect to a normal situation.

Initially, as expressed before, the agent does not know the event, the obstacles or the sensor malfunction that is going to encounter during a task. Therefore, when a situation occurs, the agent does not know how to react and sometimes it does not even know it commits a mistake or that there is a better solution with respect to the one it is employing. For this reason, after the acquisition of information through sensors, it is possible to generate a decision algorithm, designed appositely to help robots in taking the smartest decision.

Due to the unpredictability of the situations, the amount of training samples must be limited in order to learn quickly how to recover from a failure or how to catch the best opportunity. By exploiting the robot sensors before or during the considered situation, it is possible to teach how to react optimally to specific conditions in a short time.

A limited amount of training samples implies a lack of generalization. Hence, when a decider has been constructed, it must be enhanced thanks to the incremental learning. After a few session of updating, the decider is ready to help the agent in most of the situations it will face.

In order to study pre-processing procedures, to evaluate the performance of various classifiers and the whole detection module, I focused on creation of certain detection algorithms, that I considered very useful in multiples social environment:

  • Human legs classifier: for a social robot is fundamental the ability of recognizing human beings in order to interact with them, and, since most robots are not as tall as a human being, it is more simple and convenient to focus on legs;
  • Door handles classifier: the agent has to know if a door is open or closed, and in the latter contingency, the door handle would be clearly visible;
  • Projected sunlight classifier: sunlight causes interference with some navigation tools.

Additionally, I worked on a way to speed up the computation of such modules, providing method to extrapolate the interested portion of image where obstacles reside. Finally, depth maps provide metric information about the surrounding environment, which can be useful for further enhancing the computational speed and the detection power