Lorenzo Natale and Ali Paikan - Istituto Italiano di Tecnologia
The goal of this talk is to provide a general overview of the iCub software infrastructure and its middleware (YARP). I will describe the general philosophy that has guided the development in the past 10 years and how some of the design choices have allowed us to minimize the impacts due to changes in the mechanical structure, sensors and electronics of the iCub. In will also illustrate some of the recent developments including: dynamic plugin system for protocols and devices and tools for defining custom types and interfaces and provide interoperability with ROS. Finally I will describe how connections points in YARP can now be extended with custom code to achieve monitoring, coordination and data transformations. I will provide some examples to illustrate the effectiveness of this solution.
Francesco Nori and Silvio Traversaro - Istituto Italiano di Tecnologia
We propose a software abstraction layer born within the context of the european project CoDyCo (Whole Body Compliant Dynamical Contacts in Cognitive Humanoids). It has been designed to implement whole-body motion controllers without dependency from the specific library used to compute kinematic (e.g. Jacobians) and dynamic (e.g. mass matrix) quantities. The core of the proposed abstraction layer is purely virtual C++ class to access the robot sensors (iWholeBodySensors), actuators (iWholeBodyActuators), model (iWholeBodyModel) and estimated quantities (iWholeBodyStates). In the present talk we will show the use of the wholeBodyInterface to implement whole-body controllers in C++, MATLAB and SIMULINK. The wholeBodyInterface has been recently implemented in C++ to develop whole-body controllers on the iCub humanoid. This implementation (yarp-wholebodyinterface) has two major dependencies: YARP (middleware) and KDL (kinematics and dynamics).
Alessandro Rudi and Lorenzo Rosasco - University of Genoa
Machine learning techniques are becoming essential tools in artificial intelligence and robotics. In this talk we present the GURLS library, targeted to machine learning practitioners as well as non-specialists, and including state-of-the-art solutions for training machines for medium and large-scale learning, as well as routines for efficient model selection. We will begin providing a short introduction of supervised machine learning and the Kernel Least Squares algorithm at the core of GURLS, and then illustrate the feature of the library with some examples both in C++ and Matlab.
Alessio Rocchi, Enrico Mingo, Silvio Traversaro - Istituto Italiano di Tecnologia
During this talk we will present a set of plugins for the Gazebo simulator that enables the interoperability between a robot, controlled using the YARP framework, and Gazebo. The plugins have two main components: a YARP interface with the same API as the real robot interface, and a Gazebo plugin which handles simulated joints, encoders, IMUs, force/torque sensors and clock synchronization with the simulated time. We will present examples on the COMAN and iCub robots, in walking and compliant whole body control demos: in general any robot provided with an SDF model, which describes all the geometric, dynamic and visual characteristics of the robot, can be used in the YARP/Gazebo environment.
Timothee Habra - Université Catholique de Louvain and Houman Dallali - Istituto Italiano di Tecnologia
In this talk, we present Robotran, a dynamic simulator newly interfaced with Yarp. This open source simulator leverages an efficient symbolic generation to get a fast and accurate multibody dynamics computation. It allows to simulate rigid body and actuator dynamics of a full humanoids robot faster than real time. The simulation is fully customizable by the user to include any type of actuator dynamics including hydraulic and electric. These features are of high interest in the context of design optimization, model-based control or prediction where speed and accuracy are both required. The main principles of the Robotran simulator will be presented and illustrated with an electro-mechanical model of COMAN humanoid robot controlled in real-time with Yarp modules. The audience will have access to the open source repository of the simulator to try running their own controller.
Serena Ivaldi - INRIA, France
iCub is the ideal platform for studying interaction between humanoids and humans. It can be used to study social interaction, through the exchange of gaze and speech signals for example, or physical signals through exchanged forces. In this talk I will show the software tools we used to design and perform different social interaction experiments, where iCub interacts with ordinary people without background in robotics.
Modelling Software Systems in Experimental Robotics for Improved Reproducibility - A Case Study with the iCub Humanoid Robot
Florian Lier, Sven Wachsmuth, Sebastian Wrede - Research Institute for Cognition and Robotics (CoR-Lab), Bielefeld University, Germany
Research on robot systems either integrating a large number of capabilities in a single architecture or displaying outstanding performance in a single domain achieved considerable progress over the last years. Results are typically validated through experimental evaluation or demonstrated live, e.g., at robotics competitions. Common robot hardware, simulation and programming platforms such as the iCub ecosystem yield a vastly improved basis for comparable research. Despite this progress, many of the described experiments still cannot be easily reproduced by interested researchers to confirm the reported findings. We consider this a critical challenge for experimental robotics. We address this problem in our work by introducing an integrated approach facilitating the reproduction of robotics experiments. We identify major obstacles to experiment replication and introduce an integrated approach that allows aggregation and discovery of required research artifacts, automated build and deployment of required system components, as well as experiment description, repeatable execution and evaluation. We explain the usage of the introduced process through replication of an exemplary robotics experiment using the iCub humanoid robot.