Main page Research activities Publications Talks MSc thesis projects Courses Mentoring Hobby and spare time Write me This site uses
Google Analytics
Last updated on
10 January 2024

Completed thesis projects

Some thesis projects I coordinated in the past, along with pointers to source code, documentation or other material that has been possibly made available for download.

Automatic Music Transcription using convolutional neural network(CNN) and constant-Q transform(CQT), by Yohannis K. Telila

This thesis project has been realized by Yohannis K. Telila in partial fulfillment of the requirements for the MSc in Computing Science at University of Pisa, under the supervision of Tommaso Cucinotta and Davide Bacciu. The work realized in this thesis resulted also in a scientific publication: "Automatic Music Transcription using Convolutional Neural Networks and Constant-Q Transform," in Proceedings of the 3rd National CINI Conference on Artificial Intelligence (Ital-IA 2023), AI for Media & Games Workshop, May 29-31, 2023, Pisa, Italy.

Abstract

Automatic music transcription (AMT) is the problem of analyzing an audio recording of a musical piece and detecting notes that are being played. AMT is a challenging problem, particularly when it comes to polyphonic music.

In a traditional AMT, a holistic approach is commonly used, which involves using a single model to identify and detect all the musical notes in a given piece of music. These models are often large and complex making it difficult to train and deploy in real-world scenarios. This thesis introduces a new approach for transcribing a piano musical piece using a Convolutional neural network (CNN) and Constant-Q transform (CQT). The approach involves training separate classifiers per octave, with each classifier capable of detecting notes in an octave. The features from the audio signals are extracted using the CQT method and the resulting CQT coefficients are used as an input to the CNN model. By dividing the task of music transcription into multiple small tasks, this approach is expected to significantly reduce the model complexity and computation overhead of the transcription task, making it more suitable for real-world applications such as real-time music transcription.

Two approaches of subdividing the task of music transcription have been tested. The first approach involves detecting notes/chords for a given octave considering the given octave itself and the two octaves above. The second approach, in addition to the two octaves above, it considers an octave below the current one. This approach was compared with holistic models to determine its effectiveness. The experiments are aimed at evaluating the effectiveness of the proposed approach and its potential benefits in comparison to existing methods for transcribing piano songs.

Results show that the proposed approach was able to achieve a frame-based accuracy that was comparable to the holistic approach with significantly fewer parameters and training time demonstrating the feasibility of the proposed approach.

Document downloads

Access the University of Pisa thesis download page.

Download the published paper: Automatic Music Transcription using Convolutional Neural Networks and Constant-Q Transform.

Artificial Intelligence techniques to support monitoring of infrastructures for Network Function Virtualization (NFV), by Dawit M. Anelay

This thesis project has been realized by Dawit Mezemir Anelay in partial fulfillment of the requirements for the MSc in Computing Science at University of Pisa, under the joint supervision of Tommaso Cucinotta (Scuola Superiore Sant'Anna) and Davide Bacciu (University of Pisa).

Description

The world of network operators is shifting away from the traditional paradigm of physical appliances, to the novel one of software components deployed as virtual machines or containers, managed in an elastic way, according to a private cloud paradigm.
This thesis project proposes to build tools based on Artificial Intelligence, in order to support such tasks as performance monitoring and troubleshooting, and capacity monitoring and planning, needed to operate an infrastructure for Network Function Virtualization, in the context of a Telecom operator.

Requirements

Strong programming skills in C/C++ and Python, fluent Linux command-line tooling and BaSH shell scripting, good knowledge of operating systems and virtualization.

Benefits

The student will have a good opportunity to refine his/her skills in the above fields while working on real data, and gain a unique experience with developing innovative technologies that promise to disrupt the world of cloud and NFV operations.

Industrial collaborations

This thesis proposal is framed in the context of an on-going industrial collaboration with Vodafone, involving the RETIS, INRETE, PERCRO and ICT-COISP labs of Scuola Sant'Anna, as well as multiple international sites of the virtual infrastructure capacity management team of Vodafone.

RT-Mongo: Differentiated Real-Time Performance on a NoSQL Data-Base, by Remo Andreoli

This thesis project has been realized by Remo Andreoli in partial fulfillment of the requirements for the MSc in Computing Science at University of Pisa.

In this thesis a set of modifications is proposed to the popular MongoDB NoSQL data-base software, that reduces temporal interference among competing requests on a per-client/request basis. Extensive experimentation with synthetic stress workloads demonstrates that the proposed solution is able to assure that requests with higher priorities achieve reduced and significantly more stable response times, with respect to lower priorities ones.

This work has also been published and presented at the 11th International Conference on Cloud Computing and Services Science (CLOSER 2021), on April 28-30, 2021, in Prague, Czech Republic, where it got the Best Student Paper Award. A later extension of the paper has also been published and presented at the 16th Workshop on Virtualization in High-Performance Cloud Computing (VHPC 2021), within the International Supercomputing Conference - High Performance (ISC 2021), July 2nd, 2021, in Frankfurt, Germany.

Intelligent placement and handling of containers for real-time cloud and NFV services on Kubernetes, by Stefano Fiori

This thesis project has been realized by Stefano Fiori in partial fulfillment of the requirements for the MSc in Embedded Computing Systems at University of Pisa.

OS-level virtualization mechanisms, such as Linux Containers (LXC), are growing in demand and popularity as deployment and isolation mechanisms, thanks to their increased efficiency in resource usage, when compared with traditional machine virtualization techniques. Containers are becoming a fundamental brick in current and future architectures for distributed fault-tolerant components, which are increasingly based on micro-services.
In this context, Kubernetes is gaining momentum as an increasingly adopted open-source platform for automating deployment, scaling, and management of containerized applications. Kubernetes is written in Go, a modern programming language particularly suitable for writing efficient distributed applications, thanks to its compiled nature, along with a wide availability of libraries and tools.
This thesis proposal deals with integrating in Kubernetes advanced real-time scheduling features available on the Linux kernel today, such as SCHED_DEADLINE and its hierarchical variant for ensuring predictable execution of complex software components such as containers or virtual machines.

Design and Implementation of a Performance Testing Framework for High-Performance Inter-Container Communications, by Gabriele Ara

This thesis project has been realized by Gabriele Ara in partial fulfillment of the requirements for the MSc in Embedded Computing Systems.

In the domain of network operators, recent technological trends led to replacing traditional physical networking infrastructures with more flexible cloud-based systems, which can be dynamically instantiated on demand. The paradigm represented by Network Function Virtualization (NFV) aims to replace most of the highly specialized hardware appliances that traditionally are used to build a network infrastructure with software-based Virtualized Network Functions (VNFs) to improve network flexibility. A number of network functions need high-performance and low end-to-end latency. Primary research focus is now into reducing per-packet processing overheads by using user-space networking techniques, allowing applications to avoid the kernel when exchanging data between containers, either on the same machine or between different hosts. These techniques are generally indicated as kernel bypass mechanisms. In this thesis, a benchmarking framework has been designed and realized, for the purpose of comparing different kernel bypass mechanisms that can be used to exchange data between VNFs deployed on OS containers within a private cloud infrastructure, to determine which is the most suitable to build efficient network infrastructures in the cloud. Among these mechanisms, this work focuses on the evaluation of the Data Plane Development Kit (DPDK) framework and other tools that are built on top of it (e.g. software virtual switches).

The work has also been published and presented at the 14th Workshop on Virtualization in High-Performance Cloud Computing (VHPC 2019), within the International Supercomputing Conference - High Performance (ISC 2019), June 20th, 2019, in Frankfurt, Germany. A later extension of the paper has been published and presented at the 10th International Conference on Cloud Computing and Services Science (CLOSER 2020), on May 7-9, 2020, in Prague, Czech Republic, where it got the Best Paper Award.

A RISC-V Software Ecosystem - Study and Development of a Software Ecosystem employing a Test Driven Approach, by F. De Gioia

This thesis project has been realized by Francesco De Gioia in partial fulfillment of the requirements for the MSc in Embedded Computing Systems, during an internship at Cobham Gaisler Research, in Gothenburg (Sweden), under the joint academic supervision of myself and prof. Luca Fanucci.

Estensioni real-time per sound daemon su Linux, by G. Bagnoli

The thesis project has been developed by Giacomo Bagnoli, modifying the JACK low-latency audio infrastructure for Linux, integrating it with AQuoSA, a set of modifications to the Linux kernel adding an EDF-based real-time scheduling policy for real-time applications. The work has also been published and presented at the Linux Audio Conference 2011.

SCOTT - Smart Card Open Test Toolkit (Gestore di Smart-Card Modulare), by A. Angella

The thesis project has been developed by Andrea Angella, realising SCOTT (Smart Card Open Test Toolkit), an open, modular and expandable architecture for the realisation of a smart-card shell. Various smart-card devices or even higher-level APIs may be supported by adding plug-ins to the project. The plug-in currently developed as part of the thesis project are: one for generic ISO 7816 T=0 communications, one for ISO 7816-4 APDU commands, and one for the specific commands of the Schlumberger Cryptoflex 16K device. More information is available in the Andrea Angella master thesis.
The code has been released in open-source under GPL license, and it is available at the URL: https://gna.org/projects/scott.

QSign, by C. Mauceri

Qt-based digital signature application that computes and verifies digital signatures in the PKCS#7 standard format and uses the PKCS#11 standard API for communicating with external smart-card devices.

JMuscleCard, by A. Pieroni

Module allowing the use of the MuscleCard API for smart-card devices from the Java programming language, through the use of the Java Native Interface (JNI) mechanism.

JC Emulator, by M. Ferrari and P. Grimaccia

Emulation environment for JavaCard compliant smart-cards, allowing the execution of complete tests for solutions based on such platform in an absolutely transparent way.

GKM Manager, by D. Grandoni

Modular and expandable middleware for the management of group cryptographic keys in the multicast setting. Includes a module implementing an algorithm based on the "One Way Function Tree" (OWFT) technique.


Main page Research activities Publications Talks MSc thesis projects Courses Mentoring Hobby and spare time Write me Last updated on
10 January 2024