About Me
I'm a very passionate engineer, and I always wanted to study in the field of applied mechatronics engineering and artificial intelligence. I finished my PhD degree and I started a post-doc where I'm working on high performance control of wet clutches for off-highway transmissions.
I can prove a strong background as programmer in different languages, and programming is for sure something that I really love.
During my free time I like to play with my 3D Delta printer.
Experiences
I'm working on high-performance control for wet clutches for off-highway vehicles. My position is sponsored by the CARITO Foundation with the Young Researcher Programme.
Sorry, I cannot disclose more details on my work here. I hope you can understand
¯\_(ツ)_/¯
Frontal Lecture on use of Ruby programming language to develop numerical methods for Industrial Engineering. Ruby was chosen because of its simplicity and is expressivity, that is fundamental for students that try for the first time to develop a project.
To help students during the course an online documentation on the lectures is offered here: ragni.me/ncalc/
Visiting Researcher at School of Science and Technology. Collaboration with Prof. David Windridge in the field of Artificial and Cognitive Intelligence and Deep Learning.
A grid system is very useful when a lot of computational power is required. During this experience I developed a Linux based cluster, xCluster with Torque/Maui Resource manager and scheluder, that was patched to support GPU. The cluster has almost 1300 cores, 350 NVidia capable GPUs and more than 2TB of available RAM. The cluster has a web interface available here
Correction of homeworks with students in class for the Telecommunication Engineering Department
Publications
Read Abstract
We propose a hybrid adaptive feed-forward regulator for single input single output linear plants with a full relative degree. The scheme includes an adaptive law that estimates the inverse of the plant and provides a feed-forward control calculated on the basis of the desired output and its derivatives.
The adaptation is performed during discrete time events, called jumps, while the feed-forward action is continuous. This combination leads to a full hybrid system.
The advantage of this framework is a conceptual separation between the adaptation dynamics, which is discrete, and the plant dynamics, which is continuous.
Under an assumption of a persistence of excitation, we show through examples that the output asymptotically tracks the desired reference and that the estimate of the parameters of the inverse converges.
A working example is available on my Github repository adaptive.right.inverse
Read Abstract
In this paper we propose a control oriented Wiener model for wet-clutches in filled conditions and we discuss the associated identification technique.
We design a novel hybrid controller, which ensures zero steady-state error and a fast non-overshooting response. We show that the controller parameters can be conveniently obtained by solving a set of Linear Matrix Inequalities (LMIs).
Finally, we test the proposed control strategy on the Hydromechanical Variable Transmission (HVT) developed by Dana-Rexroth Transmission Systems (DRTS). The experiments show good performance and robustness with respect to modeling errors and noise.
Read Abstract
In manufacturing applications, process preparation is a time consuming and an error prone operation, and costs are especially relevant when dealing with small batches.
One mandatory operation for machining preparation is the raw material alignment with respect to machine reference frame, commonly done through an electronic touching probe. Machine manufacturers implement in-controller preparatory codes for the identification of a range of geometric features (simple contacts, plane normals, circles, etc.) in order to make alignments faster, but those procedures rely on human-input parameters, and an error may have catastrophic consequences for the probe itself.
ARTool Zero supports the operators in programming touching probe trajectories, generating and simulating on-the-fly the part-program that guides the probe in the identification of a geometric features. The interface of ARTool Zero is an augmented reality application based on the ARTool Framework. The application runs on a mobile device that communicates with the machine controller. ARTool Zero projects coordinates from the mobile device screen to the machine active reference frame through the means of markers. One of the markers acts as an anchor for a virtual plane, i.e. the plane in the real world on which the mobile screen coordinates are projected, allowing to convert a 2D screen tap in a 3D point in space.
Ego-localization accuracy is one of the critical aspects of the application, thus the validation of the core ARTool library is discussed. A video that presents the application in a real-case scenario is available on Youtube.
Read Abstract
The GTOC9 competition requires the design of a sequence of missions to remove debris from the LEO orbit. A mission is a sequence of transfer of the spacecraft from one debris to another. Both missions and transfer must fulfill a set of constraints. The work presents the procedures to develop a solution for the GTOC9 problem (i.e the mission sequence) that does not violate constraints.
The solution is obtained through an evolutionary algorithm that combines pre-computed basic missions stored in a database. The main objective of the algorithm is to minimize the overall cost of the solution, in order to maximize the competition score. The database of pre-computed missions is derived by connecting transfers stored in a database of transfers, through a combinatorial approach that considers the problem constraints. The database of transfer is formulated through the solution of a constrained minimization problem upon the control action (the magnitude of the overall impulsive velocity changes ΔV ). Only a subset of all possible transfers (selected on the basis of acceptable ΔV ), enters in the database.
Read Abstract
Unfortunately, this paper has been published with an error: my author name is wrong, and they inserted Amedeo Ragni instead of Matteo Ragni, and they are taking AGES for correcting the mistake. Thank you Springer...
In manufacturing applications, setup and part-program verification on CNC machine tools is a time-consuming and error-prone operation, whose costs are especially relevant when dealing with small batches, custom components, and large/complex shapes. This paper presents an Augmented Reality application aimed at supporting machine tool operators in setting up the machining process, simplifying and quickening the identification of setup errors and misalignments.
The paper firstly discusses the system architecture and its implementation, then presents a set of benchmark tests assessing system accuracy and reliability in ego-localization against an open-source AR library and an optical multistereoscopic motion capture ground-truth. Finally, the effectiveness of the proposed solution on typical part-program setup workflow is assessed by comparison with a standard in-air part-program execution and evaluated by means of a NASA TLX test campaign.
Read Abstract
The development of diffraction (from X-rays, neutrons, electrons) has been the key to understand the atomic arrangement in materials and complex systems. The structure of simple compounds can nowadays be solved in a rather straightforward way on small computers.
Some crystallography problems, however, are still open. Two of them are of particular relevance: a fast and accurate identification of all constituents in a mixture (for the identification of possible unknown and of minor phases) and the general structural solution of large structures. The available tools, based on a deterministic approach, seem to fail in the solution of the general case.
The fast development GPU-based computing has revived the interest in general approximator based upon machine learning approach. Fast training algorithms, developed for massively parallel consumer GPUs, have brought the complexity of deep multi-layer perceptron to desktop computing and embedded systems. As a consequence, the applications of neural networks to solve the most diverse tasks has exploded in the last few years.
In the recent past, the applications of machine learning in crystallography have been limited to the formulation of clustering and principal component analysis approaches to datasets, but did not massively capture the interest of the community. We will show here that an approximator, trained on a dataset that allow to sufficiently generalize a problem, can help in solving some of the toughest challenges.
In particular, the problems of classification of diffraction data, of identification of the phases in a mixture or of structure solution (phasing), can be expressed with a machine learning approach and a neural network can be trained to not only answer to a specific query, but also to express the confidence on such classification. Albeit still in its infancy, the approach has the potential to have a deep impact in the field and largely extend the current state of the art. Theory and applications will be provided.
Read Abstract
Aim: Machine-learning technologies like Multi Layer Perceptron (MLP) can help to estimate physiological variables that typically require exotic hardware. For instance, direct measurement of oxygen uptake (VO 2 ) is practically unattainable during outdoor cycling exercise. Using an Artificial Intelligence approach, the aim of our project was to predict VO 2 dynamics during cycling from heart rate, power output and minute ventilation.
Methods: An MLP was used as the classifier composed of 5 fully connected layers built to predict the probability for VO2 to fall into different intensity levels (or classes). Five common classes (zones) used in the design of training programs were defined, with one additional class added for appropriate analysis (0-45%VO 2max ), totalling 6 classes. The dataset was formed from data collected on amateur cyclists asked to follow pseudorandom cycling on an ergometer in the laboratory. The dataset was split into a training set (that typically used in training), a validation set (that used to tune hyper-parameters) and a test set (used to assess accuracy).
Results: The performance of the MLP on the test set reached 78% for the single run. The main uncertainties of the predictor were in the upper level of VO 2 consumption (between classes 5 and 6), where the experimental signal showed the highest noise. Moreover, these two classes did not show a balanced representation in the training set, as such exercise intensities that elicit high VO 2 are less sustainable, and more variable, above critical power. Conclusion: Despite modest levels of accuracy, this AI methodology holds potential to be refined and used for future cycling performance assessment from other easy to obtain variables, such as blood glucose or blood lactate concentrations.
Read Abstract
When we approach shape representation, we need to choose which modeling constructs to adopt, e.g., low-level geometric elements like edges and (sur)faces, or more general elements like protrusions, bumps and holes, among others. The latter can be described as spatial configurations of the former satisfying unity and, possibly, identity criteria. However, once these are brought into the picture, we need to understand what they are, how they relate to their shape, as well as how complex shapes result from the combination of simpler ones.
We address in the paper these issues and sketch an initial approach based on patterns.
Read Abstract
There are complete Computer Algebra System (CAS) systems on the market with complete solutions for manipulation of analytical models. But exporting a model to a given target language is often a rigid procedure that requires some manual post-processing, even with a good software.
This work presents a Ruby library that exposes core CAS capabilities-i.e. simplification, substitution, evaluation, etc. The library aims at rapid prototyping of numerical interfaces, and code generation for different target languages, separating mathematical expression from code generation rules supporting best practices for numerical conditioning. The library is implemented in pure Ruby language and is compatible with most Ruby interpreters.
Read Abstract
Recently, many studies have investigated the role of individual and cognitive differences during Web navigation and Web searching. Despite this interest, no works have considered the role may assume individual differences in real-environment navigation during Web navigation. The aim of this work is to investigate the effect of different spatial cognitive styles: Landmark style (LS), Route style (RS) and Survey style (SS), on Web searching behaviour. In real-environment navigation, having a specific style determines the type of information individuals selected to navigate and orient themselves. We hypothesize that LS individuals are less proficient during Web exploration due to their analytical analysis of the environmental features. Vice versa SS individuals will show high performance on Web exploration for their holistic analysis of the World.
We asked 30 College Students (10 LS, 10 RS, 10 SS) to solve three Web information tasks. The spatial cognitive style of participants was assessed through the Spatial Cognitive Style Test, and they were also asked to fill in a questionnaire about their internet and computer use. An ad hoc key-logger program for browsers was used to collect Web behaviour measures. In particular, the measures considered were: search engine tools used (e.g. back button), pages visited and revisited, time spent on information searching, and mouse cursor movements.
The results showed significant differences between the spatial cognitive styles: LS seems to use a trial and error strategy in order to obtain the relevant information. Differences also emerged in the distribution of mouse cursor movements during Web navigation.
Read Abstract
In manufacturing applications, setup and part-program verification on CNC machine tools is a time-consuming and error-prone operation, whose costs are especially relevant when dealing with small batches, custom components, and large/complex shapes. This paper presents an Augmented Reality application aimed at supporting machine tool operators in setting up the machining process, simplifying and quickening the iden-tification of setup errors and misalignments.
The paper firstly discusses the system architecture and its implementation, then presents a set of benchmark tests assessing system accuracy and reliability in ego-localization against an open-source AR library and an optical multistereoscopic motion capture ground-truth. Finally, the effectiveness of the proposed solution on the typical part-program setup workflow is assessed by comparison with a standard in-air part-program execution and evaluated by means of a NASA TLX test campaign.
Read Abstract
The key task performed by CNCs is the generation of the time sequence of set points for driving each physical axis of the machine tool during program execution. This interpolation of axes movement must satisfy a number of constraints on axes dynamics (velocity, acceleration, and jerk), and on process outcome (smooth tool movement and precise tracking of the nominal tool path at the desired feed rate). This paper presents an algorithm that aims at solving the axes interpolation problem by exploiting an optimal control problem formulation. Unlike other solutions proposed in the literature, the approach presented here employs an original approach by assuming a predefined path tracking tolerance—to be added to the constraints listed earlier—and calculating the entire trajectory (path and feed rate profile) that satisfies the given constraints.
The proposed solution is used for preprocessing a milling part program and redefining the sequence of positioning commands to cope with the solution of the OC problem. The new part program is then executed by a state-of-the-art industrial CNC, and the effectiveness in reducing execution time and axes accelerations is experimentally tested and reported.
DOI: 10.1541/ieejjia.5.53
Read Abstract
Starting from the basic paradigm of perception-action, an avionic system for an UAV aimed at avalanche rescue is derived as autonomous agent. Using last advances in cognitive science, situatedness and embodiment for the agent are analyzed, and exploited to reach the mission goal. Part of the searching algorithm is introduced as one of the complex behaviors in which the agent must decide between different intents.
A stacked layers architecture is presented. At the lower levels, algorithms run for stabilization and obstacles avoidance; those ensure drone's survival. Upper layer provides an estimation of orientation over ground and generates a reference in such a way that ARTVA signal is maximized, while safety for rescuers is ensured. Highest layers are reserved for searching routines. It is well known that pinpointing a victim - due to the particular shape of near-field transmitting source - using ARTVA signal is a difficult task. In this paper we present a way for searching buried victims that differs from the one presented in literature, in which two routines works together in order to find the field origin. The first routine exploits gradient information to reach the highest signal strength location, while the second tries to identify a confidence region through an internal emulation of the field (optimization problem).
When no beacons are detected the agent behavior changes and a search over a wider region is performed. So far, boundaries for the region are provided by an external agent, such as a rescuer. The switching between the two intent - i.e. scanning vs. active searching - is operated by an implementation of the radar detection algorithm.
Read Abstract
Reduced version of the work presented in IEEJ Journal of Industry Applications
The key task performed by CNCs is the generation of the time sequence of set points for driving each physical axis of the machine tool during program execution. This interpolation of axes movement must satisfy a number of constraints on axes dynamics (velocity, acceleration, and jerk), and on process outcome (smooth tool movement and precise tracking of the nominal tool path at the desired feed rate). This paper presents an algorithm that aims at solving the axes interpolation problem by exploiting an optimal control problem formulation. Unlike other solutions proposed in the literature, the approach presented here employs an original approach by assuming a predefined path tracking tolerance—to be added to the constraints listed earlier—and calculating the entire trajectory (path and feed rate profile) that satisfies the given constraints.
The proposed solution is used for preprocessing a milling part program and redefining the sequence of positioning commands to cope with the solution of the OC problem. The new part program is then executed by a state-of-the-art industrial CNC, and the effectiveness in reducing execution time and axes accelerations is experimentally tested and reported.