Visual Analytics for Distributed Algorithms

NEW: 2023 Master thesis: Visualization and interaction of/with distributed algorithms

Context

Understanding how a distributed algorithm works can be very complicated. This is because, unlike centralized algorithms, we are dealing with different processes that coordinate with each other thanks to the exchange of messages. Each process is characterized by a set of variables that form its state. Depending on which message it receives and when, it updates its status in accordance with it and possibly sends additional messages.

Below is a scenario where the interactions between processes in terms of messages exchanged are mainly highlighted. In some cases, the impact that the message has on the status of the process that receives it is represented.

Below is the status of each process and how this evolves over time with respect to the messages exchanged.

Objectives and previous works:

The goal of the thesis work is to allow a designer/user to understand how distributed algorithms work. The medium is the design and development of a Visual Analytics environment.

As part of a previous master thesis work, the following features were developed aimed at understanding the distributed algorithm.

Algorithm operation overview: View the execution of a predetermined distributed algorithm to understand how its execution occurs (see Figure 3).

Detailed views and interactions: Being able to have different views with different grains, in order to be able to see both the details of the message exchange and the impact on the state of the processes.

In particular, the existing tool deals with viewing the logs produced by a simulator of algorithms for the blockchain (Tendermint). In the next thesis work we aim to extend the work done as follows:

Basic objectives:

• Extend the simulator with other distributed algorithms to generalize the solution;

• Extend the simulator with a visual support to the evolution of the blockchain as an object distributed in each node (Bitcoin is already provided). Possibly integrating Ethereum 2.0. in the simulator.

• Define parameterizable analytics;

• Extend user interactive choices about what to view and analyze.

Advanced goals:

• Extend the simulator with a scheduler that accepts input from the simulation environment in order to be able to view online the effects on the execution of the modification of one and more events (at present each "run" of the simulator is independent, and to simulate a user change you need to perform a whole new run)

Information:

The thesis has as its place of development the headquarters of CEA Saclay [1], and would be co-followed by a supervisor at Sapienza and a supervisor at CEA.

Where: CEA Saclay [1], sito Nano-Innov. In Paris-Saclay[2].

Who: We are a research laboratory specialized in Blockchain across different disciplines: distributed systems, multi-agent systems, formal systems and game theory.

We are about ten people of various origins: Italy, France, Turkey, Spain, Togo, Algeria and Madagascar.

When: Internships can start at any time of the year. For security reasons, the dossiers take about three months to be approved. The CEA is usually closed one week at Christmas and one in mid-August.

How: The CEA is a research center, it is required the presence on the site but you have the possibility to work in smart one day a week. Internships are paid and the CEA provides help to pay rent and public transport.

Why come to CEA: it is an excellent opportunity to experience a multicultural research laboratory in a dynamic environment such as that of Saclay (20 km from Paris).

It is also possible to benefit, in parallel with what is offered by CEA, of an additional subsidy provided by Sapienza through the ERASMUS+ program regarding theses and internship periods abroad: https://www.uniroma1.it/it/pagina/erasmus-traineeship

If interested, write an email to: angelini AT diag DOT uniroma1 DOT it

reporting in the subject "CEA Thesis". At that point we will set up a cognitive meeting and define the next steps.


Past experience(s):