Coordinare la comunicazione tra robot
Una delle sfide dell'informatica è controllare il comportamento di gruppi di dispositivi. La difficoltà maggiore? Condividere un messaggio che regoli la cooperazione nel sistema.
L’informazione è un elemento che sta alla base di tutte le nostre attività, ci permette di conoscere fatti e situazioni, di operare delle scelte e di stabilire un comportamento cooperativo. Lo sviluppo di nuovi sistemi di comunicazione, dai computer all’Internet delle cose, sta creando nuove sfide nella trasmissione delle informazioni; per questo la ricerca nel campo della teoria dell’informazione è particolarmente attiva. La teoria dell’informazione è una branca dell’informatica che studia le leggi matematiche alla base dell’elaborazione e della trasmissione dell’informazione.
Giulia Cervia è al KTH Royal Institute of Technology di Stoccolma per studiare la cooperazione e il coordinamento tra dispositivi mediante la comunicazione, al fine di far rispettare un comportamento congiunto.
Nome: Giulia Cervia
Età: 31 anni
Nata a: Brescia
Vivo a: Stoccolma (Svezia)
Dottorato in: scienza e ingegneria (Francia)
Ricerca: Coordinazione nei sistemi di informazione
Istituto: Information Science and Engineering, KTH Royal Institute of Technology (Stoccolma)
Interessi: viaggiare, correre, leggere
Di Stoccolma mi piace: la natura, c’è una giusta combinazione tra natura e città vecchia
Di Stoccolma non mi piace: il buio d’inverno, le case non hanno le persiane
Pensiero: Mi manca niente. (Tre Allegri Ragazzi Morti)
Quali sono gli elementi base della teoria della coordinazione?
Il problema della coordinazione è una cosa abbastanza nuova e tuttora irrisolta nell’informatica. Lo sviluppo tecnologico degli ultimi anni ha portato alla diffusione di dispositivi sempre più presenti nella vita di tutti i giorni. Basti pensare a come sfruttiamo il nostro smartphone per coordinare oggetti di uso comune, dallo smartwatch alle cuffie bluetooth, o alle innovazioni della domotica, che permettono la gestione coordinata e integrata del sistema di riscaldamento, di sorveglianza, degli elettrodomestici.
Da qui la necessità che tutti questi dispositivi si comportino in un modo prestabilito dall’utente e che ci sia comunicazione e coordinazione tra i vari nodi, per scambiarsi messaggi, trasmettersi informazioni, ricevere notifiche, inviare comandi.
La mia ricerca si occupa di coordinazione intesa nel senso più ampio del termine cioè di riuscire a indurre un comportamento congiunto tra i dispositivi attraverso la comunicazione. In questo contesto, non è tanto importante il testo o la distribuzione del messaggio quanto il risultato dello scambio di informazioni. Anche perché la comunicazione in sé potrebbe essere intercettata, disturbata, interrotta dal rumore di fondo del canale e il messaggio potrebbe non arrivare mai a destinazione. Quindi meno i dispositivi comunicano tra loro meglio è.
In quali casi è possibile ottenere coordinazione tra due dispositivi?
Attraverso teoremi di esistenza voglio riuscire a stabilire proprio per che sistemi, scritti in una determinata maniera ossia con un dato numero di nodi che comunicano in un certo modo, esiste un codice con cui si possa sicuramente ottenere una coordinazione che sembri random.
In genere i sistemi sono composti da una sorgente di informazione, un encoder (che prende la sorgente random e la trasforma in un segnale), un segnale trasmesso attraverso un canale, un segnale ricevuto e un decoder (che ritrasforma il segnale ricevuto in una informazione simile a quella emessa dalla sorgente).
Il tutto può essere modellizzato in termini di probabilità: la sorgente ha una certa probabilità di emettere uno 0 o un 1; l’encoder di restituire il messaggio; il ricevente di ricevere l’informazione. Una volta scritta la stringa di probabilità, l’obiettivo è individuare le distribuzioni e le condizioni di encoder/decoder per cui la sequenza assomiglia al comportamento che abbiamo prestabilito.
Nei casi più semplici, come quello di due utenti che comunicano attraverso un canale senza rumore, individuare uno schema ottimale è possibile. Ma se introduco una richiesta successiva, come un canale con rumore di fondo, diventa molto più difficile individuare la regione di coordinazione. Quello di cui mi occupo è proprio questo, trovare uno schema in cui è possibile ottenere coordinazione e scoprire quali distribuzioni sono raggiungibili.
Quali sono le reali applicazioni dei problemi di coordinazione?
Per adesso, le applicazioni più forti sono nel campo della sicurezza: dal punto di vista matematico è relativamente semplice immaginarsi sistemi con comportamento random. Se però si riuscisse a superare questo ostacolo, potremmo progettare robot che si comportano come vogliamo e usarli in tantissimi ambiti, come quello emergente della domotica.
Per fare un esempio, immaginiamo due robottini che si muovono in uno spazio, un aeroporto, per fare dei controlli di sicurezza. L’obiettivo di chi li progetta è farli muovere a destra e a sinistra in modo che un osservatore esterno non possa prevedere le loro mosse: il loro comportamento deve sembrare del tutto casuale, come se non ci fosse una comunicazione tra i due dispositivi che, invece, stanno cooperando e si stanno muovendo assieme. In un sistema del genere, la coordinazione è un approccio ottimale perché permette di condividere a priori un messaggio con i robot e di indurre un comportamento, controllando semplicemente la distribuzione delle probabilità. Se, al contrario, stabilissi a priori che un robot deve andare a sinistra con probabilità 1/3 e a destra con probabilità 2/3, innanzitutto dopo un po’ le mosse sarebbero prevedibili e poi ci dovrebbe essere molta più comunicazione tra i dispositivi, con tutti i rischi legati all’intercettazione, alla decodifica e al disturbo del canale.
Quali sono le prospettive future del tuo lavoro?
Dal punto di vista dei codici, sia trovarne uno che funziona nei sistemi con rumore di fondo sia iniziare a lavorare sui polar codes. Ultimamente si sente molto parlare di questo tipo di codici, soprattutto dopo che la Huawai li ha inseriti negli standard per il 5G. Con specifiche aggiunte, funzionano anche per la coordinazione e, se per ora sono solo dei teoremi, mi piacerebbe rendere questo approccio fattibile nella vita reale.
Infine vorrei continuare a studiare le implicazioni della coordinazione a livello di sicurezza, in modo da rendere quello che succede tra i robot impenetrabile per un osservatore esterno.
Leggi anche: Cybersecurity, la sfida informatica del secolo
Articolo pubblicato con licenza Creative Commons Attribuzione-Non opere derivate 2.5 Italia.