Let me introduce myself...
I'm specialized in Engineering in Artificial Intelligence and Robotics, with experience in Planning and Logical Reasoning, control of Autonomous Multi-Agent systems and Human-Robot Interaction routines.
I have a Bachelor's Degree from Sapienza University of Rome in Computer Engineering and Automation, and a Master's Degree in Artificial Intelligence and Robotics, from both of which I graduated with honors.
My research activity lead to the publication of several academic papers at the RoboCup Symposium (in 2022, 2023 and 2024), and a paper about Multi agent LLM-assisted document generation at the HCI Interational 2024 Conference.
As a member of the SPQR RoboCup Team at Sapienza University, I took part in RoboCup SPL competitions in 2021 and 2022, designiing the software for our team of autonomous humanoid NAO robotic soccer players. Learn more about RoboCup SPL here!
Fast facts
I am currently developing software for the "first italian robotic employee", AlterEGO, a humanoid robot developed by IIT and qbRobotics that will act as a museum guide at the Temple of Hadrian, in Rome.
RoboCup Standard Platform League team member: I have been a member of SPQR Team from Sapienza University of Rome. developing AI algorithms (mainly planners) and also managing its Social Media (LinkTree of the team).
I've been part of the RoboCup SPL Technical Committee for RoboCup 2023, contributing to the RoboCup SPL rulebook every year to give a technological direction to the evolution of the league.
Humanoid robots programming: I have practical experience with C++ programming for NAO v6 robots, building two additional projects on-top of the C++ framework used in-game by the SPQR Team, resulting in several publications at the RoboCup Symposium. The second publication (2023) won the the "Best Paper Award".
I have developed some projects as a freelance Python programmer on the Upwork platform (link to my Upwork profile) with a 5 star rating on all my delivered projects.
I wrote an article as a freelance for an AI blog (link)
Competences
Programming: Python, C, C++, Java, JavaScript (NodeJS, BabylonJS, CannonJS, ThreeJS, jQuery), Scala, MatLab, MySQL, Prolog, Assembler, Web languages (HTML5, CSS), Android Development
Machine Learning: Neural Networks (PyTorch), Natural Language Processing, Machine Learning models design, Recognition and Synthesis models based on Neural Networks, Computer Vision
Robotics: C++ and Python programming on ROS, Coreographe (NAO), Management and programming of control frameworks (C++) for robotics, Humanoid Robots (NAO)
Other skills:
Proficient in English language (C1 level, not certified)
Self-taught in Adobe Photoshop, Adobe Illustrator, Adobe AfterEffects. I used the Adobe Software Suite to produce content for the SPQR Team Social Media accounts. I also realized my projects logos and videos with them.
My main skill
Working on robot systems, requiring both hardware and software-related know-how, with multiple programming languages and frameworks involved, requiring a broad computer engineering and robotics knowledge.
Publications
"Adaptive Team Behavior Planning using Human Coach Commands", Musumeci E., Suriani V., Antonioni E., Nardi D., Bloisi D.D. (2023). RoboCup 2022. Lecture Notes in Computer Science(), vol 13561. Springer, Cham. (Google Scholar).
"Play Everywhere: A Temporal Logic based Game Environment Independent Approach for Playing Soccer with Robots", Suriani V., Musumeci E., Nardi D., Bloisi D.D., Lecture notes in computer science-RoboCup 2023: Robot World Cup XXVI (Google Scholar)
"LLM Based Multi-Agent Generation of Semi-structured Documents from Semantic Templates in the Public Administration Domain", Musumeci E., Brienza M., Suriani V., Nardi D., Bloisi D. D., [Presented at HCI International 2024]. (Google Scholar)
Projects
Task-based Human-Robot interaction routine in a Robot Soccer setting
This video shows the demo of a human-robot interaction routine, based on the autonomous completion of tasks issued through a GUI on an external device (a laptop, tablet or smartphone), chosen among a predefined library of soccer-related tasks. The robotic agent is a child-sized humanoid NAO robot, by Aldebaran, now acquired by SoftBanks Robotics.
The software being used on the robot is a fork of the framework used by the SPQRTeam in RoboCup SPL competitions, in turn based on the B-Human RoboCup SPL framework.
Languages involved:
Python
C++
HTML/JavaScript
RoboCup Coach
Project published with the paper "Adaptive Team Behavior Planning using Human Coach Commands"
The idea behind this project is to make a first step towards real-time coaching of robots in RoboCup Soccer SPL, by using online planning in a PDDL domain using temporal goals and constraints. The presented architecture allows a human in the loop to speak temporal goals over PDDL predicates, influencing robot behaviors in real-time.
Languages involved:
Python
C++
Minigame.io
A browser game, developed as a final project for an Interactive Graphics exam, featuring a series of “mini-games” (easy levels with a specific objective), designed modularly to allow an easy addition of new levels. It is implemented using the Babylon.js framework and Cannon.js as a physics engine. After a first round where all mini-games are played in sequence, mini-games will be chosen randomly and randomized (each mini-game provides its own randomization features). The player is implemented as a hierarchical model representing a “drawing mannequin” with animations for walking (forward, left, right, back), jumping, falling and being idle.
Languages involved:
JavaScript using BabylonJS and CannonJS libraries
HTML
Unsupervised feature selection for clustering in high-dimensional spaces
This library provides a vanilla implementation of a genetic algorithm. The library is then used to attempt a novel approach to perform unsupervised feature selection for clustering in high-dimensional spaces. Probably not publishable or peer-reviewable but at least I had fun implementing it.
UrbanSound8K sound classification using a Convolutional Neural Network
Classifier based on a convolutional neural network, to solve the environmental sound classification task. The CNN is trained using audio data taken from the UrbanSound8K dataset, with the addition of various feature extraction techniques:
Audio augmentations, as in the paper Deep Convolutional Neural Networks and Data Augmentation for Environmental Sound Classification. In particular, the Dynamic Range Compression augmentation is performed using the MUDA library.
Spectrogram deltas and delta-deltas, as in the paper Environmental Sound Classification with Convolutional Neural Networks
Spectrogram image augmentation techniques (mostly found on the web and by experimentation)
TRPO algorithm in Tensorflow 2
Small homemade modular framework created as a University project, to implement and test Reinforcement Learning algorithms, with a working implementation of TRPO.
Pass Planner for RoboCup SPL
As a member of SPQR Team, I contributed to the development of the "Pass Planner", an Artificial Intelligence System based on Automatic Planning algorithms (Dijkstra's algorithm for the search of shortest-paths and A* algorithm for heuristic search), to compute the best pass sequence to implement, during RoboCup SPL matches, effective collaborative strategies, culminating in a successful action, to score in the opponent goal.
GitHub repository is currently private and covered by Copyright
Play Everywhere
As an extension to previous work, we published "Play Everywhere: A Temporal Logic based Game Environment Independent Approach for Playing Soccer with Robots"
Here, we proposed a temporal logic-based approach that allows robots’ behaviors and goals to adapt to the semantics of the environment.
The soccer setting is modeled hierarchically and the robot selects the level of operation based on the perceived semantic characteristics of the environment, thus dynamically modifying the set of rules and goals to apply in an unstructured environment.
LLM Multi-Agent Generation of Documents from Semantic Templates
The recent introduction of Large Language Models has enabled the creation of customized text output satisfying user requests. In this work, we propose a novel approach that combines the LLMs with prompt engineering and multi-agent systems for generating new documents compliant with a desired structure. The main contribution of this work concerns replacing the commonly used manual prompting with a task description generated by semantic retrieval from an LLM. The potential of this approach is demonstrated through a series of experiments and case studies, showcasing its effectiveness in real-world Public Administration scenarios.
LLCoach: a multi-role LLM/VLM pipeline for generating multi-agent strategies in RoboCup Soccer
This paper introduces a novel application of Large Language Models (LLMs) to address the challenge of generating actionable plans in such settings, specifically within the context of the RoboCup Standard Platform League (SPL) competitions where robots are required to autonomously execute soccer strategies that emerge from the interactions of individual agents. In particular, we propose a multi-role approach leveraging the capabilities of LLMs to generate and refine plans for a robotic soccer team. The potential of the proposed method is demonstrated through an experimental evaluation, which has been carried out by simulating multiple matches where robots with the AI-generated plans play against robots running human built code.
Events
RoboCup 2021 Worldwide
Due to the COVID-19 pandemic, the annual RoboCup event was held remotely (link to the official website). This saw our team of robots facing 4 different challenges:
Obstacle avoidance challenge: the robot had to dribble through randomly placed obstacles, in order to score a goal
Passing challenge: two robots of the same team had to pass the ball to each other through an obstacle field
1vs1 challenge: two robots of opposing teams had to kick up to 4 balls in the opponent's field, scoring a point each time the ball stopped there. We got 4th worldwide in this challenge! This is the link to the video of one of our best matches.
Autonomous calibration challenge: the robot had to autonomously calibrate its cameras on a random remote soccer field and then self-localize on this field with the smallest possible error.
Maker Faire 2021 Rome Edition
Maker Faire is an event that hosts inventors, makers and researchers from all over the world, where each participant can share his ideas or showcase his inventions.
I took part in this event as a member of SPQR Team. We invited the HULKs Team (a german RoboCup SPL team) as adversaries for a small RoboCup tournament.
We also took the chance to showcase the reality of RoboCup SPL and the skills of our robots.
RoboCup 2022 Bangkok
RoboCup is a the main event in Robotics and Artificial Intelligence, taking place every year in different locations all over the world.
It features expositions, pitches and seminars but its main focus is posed on robotics tournaments.
I took part in this event as a member of SPQR Team from RoCoCo Lab of Sapienza University of Rome.
After the end of RoboCup 2022 I presented the paper "Adaptive Team Behavior Planning using Human Coach Commands" (link) at the RoboCup Symposium 2022.
Maker Faire 2022 - The European Edition
I took part in the 2022 edition of Maker Faire as a member of SPQR Team. We invited the Nao Devils team (a german RoboCup SPL team) as adversaries.