I ricercatori creano uno strumento per simulare con precisione sistemi complessi.

Researchers create tool to accurately simulate complex systems.

Il sistema che hanno sviluppato elimina una fonte di bias nelle simulazioni, portando a migliorare gli algoritmi che possono aumentare le prestazioni delle applicazioni.

A new technique eliminates a source of bias in a popular simulation method, which could enable scientists to create new algorithms that are more accurate and boost the performance of applications and networks.

Gli esperti spesso utilizzano le simulazioni durante la progettazione di nuovi algoritmi, poiché testare le idee nel mondo reale può essere costoso e rischioso. Tuttavia, poiché è impossibile catturare ogni dettaglio di un sistema complesso in una simulazione, di solito raccolgono una piccola quantità di dati reali che riproducono durante la simulazione dei componenti che vogliono studiare.

Conosciuto come simulazione guidata da traccia (i piccoli pezzi di dati reali sono chiamati tracce), questo metodo a volte produce risultati distorti. Ciò significa che gli esperti potrebbero scegliere inconsapevolmente un algoritmo che non è il migliore tra quelli valutati, e che si comporterà peggio sui dati reali rispetto a quanto previsto dalla simulazione.

Gli esperti del MIT hanno sviluppato un nuovo metodo che elimina questa fonte di distorsione nella simulazione guidata da traccia. Consentendo simulazioni guidate da traccia imparziali, la nuova tecnica potrebbe aiutare gli esperti a progettare algoritmi migliori per una varietà di applicazioni, tra cui il miglioramento della qualità video su Internet e l’aumento delle prestazioni dei sistemi di elaborazione dati.

L’algoritmo di apprendimento automatico degli esperti si basa sui principi della causalità per apprendere come le tracce di dati sono state influenzate dal comportamento del sistema. In questo modo, possono riprodurre la versione corretta e imparziale della traccia durante la simulazione.

Confrontando il metodo di simulazione degli esperti con un simulatore guidato da traccia sviluppato in precedenza, gli esperti hanno correttamente previsto quale algoritmo appena progettato sarebbe stato il migliore per lo streaming video, ovvero quello che ha portato a meno buffering e maggiore qualità visiva. I simulatori esistenti che non tengono conto della distorsione avrebbero indicato un algoritmo che funziona peggio.

“I dati non sono l’unica cosa importante. Anche la storia di come i dati sono stati generati e raccolti è importante. Se si vuole rispondere a una domanda controfattuale, bisogna conoscere la storia sottostante alla generazione dei dati in modo da intervenire solo su quelle cose che si vogliono davvero simulare”, afferma Arash Nasr-Esfahany, uno studente di dottorato in ingegneria elettrica e informatica e co-autore di un articolo su questa nuova tecnica.

Lui è coautore dell’articolo insieme ad Abdullah Alomar e Pouya Hamadanian, entrambi studenti di dottorato in ingegneria elettrica e informatica, ad Anish Agarwal, studente di dottorato recentemente laureato al MIT, e agli autori senior Mohammad Alizadeh, professore associato di ingegneria elettrica e informatica, e Devavrat Shah, professore di ingegneria elettrica e informatica e membro dell’Istituto per i sistemi e la società dei dati e del laboratorio per i sistemi di informazione e decisione. La ricerca è stata presentata di recente al simposio USENIX sui sistemi di rete e l’implementazione.

Simulazioni fuorvianti

Gli esperti del MIT hanno studiato la simulazione guidata da traccia nel contesto delle applicazioni di streaming video.

Nello streaming video, un algoritmo di bitrate adattativo decide continuamente la qualità video, o bitrate, da trasferire a un dispositivo in base ai dati in tempo reale sulla larghezza di banda dell’utente. Per testare come diversi algoritmi di bitrate adattativo influenzano le prestazioni di rete, gli esperti possono raccogliere dati reali da utenti durante uno streaming video per una simulazione guidata da traccia.

Utilizzano queste tracce per simulare ciò che sarebbe successo alle prestazioni di rete se la piattaforma avesse utilizzato un diverso algoritmo di bitrate adattativo nelle stesse condizioni di base.

Gli esperti hanno tradizionalmente supposto che i dati delle tracce siano esogeni, il che significa che non sono influenzati da fattori che vengono modificati durante la simulazione. Si supporrebbe che, durante il periodo in cui gli esperti hanno raccolto i dati sulle prestazioni della rete, le scelte che l’algoritmo di adattamento del bitrate ha fatto non abbiano influenzato quei dati.

Tuttavia, questa è spesso un’assunzione falsa che porta a distorsioni sul comportamento dei nuovi algoritmi, rendendo la simulazione non valida, spiega Alizadeh.

“Abbiamo riconosciuto, e anche altri hanno riconosciuto, che questo modo di fare la simulazione può indurre errori. Ma non penso che le persone sapessero necessariamente quanto significativi potessero essere quegli errori”, afferma.

Per sviluppare una soluzione, Alizadeh e i suoi collaboratori hanno impostato il problema come un problema di inferenza causale. Per raccogliere una traccia imparziale, è necessario capire le diverse cause che influenzano i dati osservati. Alcune cause sono intrinseche a un sistema, mentre altre sono influenzate dalle azioni che vengono intraprese.

Nell’esempio di streaming video, le prestazioni di rete sono influenzate dalle scelte che l’algoritmo di adattamento del bitrate ha fatto, ma sono anche influenzate da elementi intrinseci, come la capacità di rete.

“Il nostro compito è quello di svincolare questi due effetti, cercare di capire quali aspetti del comportamento stiamo osservando sono intrinseci al sistema e quanto di ciò che stiamo osservando si basa sulle azioni che sono state intraprese. Se riusciamo a separare questi due effetti, allora possiamo fare simulazioni imparziali”, afferma.

Apprendere dai dati

Ma spesso i ricercatori non possono osservare direttamente le proprietà intrinseche. Qui entra in gioco il nuovo strumento, chiamato CausalSim. L’algoritmo può apprendere le caratteristiche sottostanti di un sistema utilizzando solo i dati di traccia.

CausalSim prende i dati di traccia che sono stati raccolti attraverso un trial di controllo randomizzato e stima le funzioni sottostanti che hanno prodotto quei dati. Il modello dice ai ricercatori, sotto le stesse condizioni sottostanti che un utente ha sperimentato, come un nuovo algoritmo cambierebbe l’output.

Utilizzando un simulatore tipico basato sulla traccia, il bias potrebbe portare un ricercatore a selezionare un algoritmo che funziona peggio, anche se la simulazione indica che dovrebbe funzionare meglio. CausalSim aiuta i ricercatori a selezionare il miglior algoritmo testato.

I ricercatori del MIT hanno osservato questo in pratica. Quando hanno usato CausalSim per progettare un algoritmo di adattamento del bitrate migliorato, li ha portati a selezionare una nuova variante che aveva un tasso di blocco che era quasi 1,4 volte inferiore rispetto ad un algoritmo concorrente ben accettato, pur ottenendo la stessa qualità video. Il tasso di blocco è la quantità di tempo che un utente impiega a ricaricare il video.

Al contrario, un simulatore basato sulla traccia progettato da un esperto ha previsto il contrario. Ha indicato che questa nuova variante dovrebbe causare un tasso di blocco che era quasi 1,3 volte superiore. I ricercatori hanno testato l’algoritmo su streaming video del mondo reale e hanno confermato che CausalSim era corretto.

“I guadagni che stavamo ottenendo nella nuova variante erano molto vicini alla previsione di CausalSim, mentre il simulatore esperto era totalmente sbagliato. Questo è davvero eccitante perché questo simulatore progettato da un esperto è stato utilizzato nella ricerca degli ultimi dieci anni. Se CausalSim può essere così chiaramente migliore di questo, chissà cosa possiamo fare con esso?” dice Hamadanian.

In un esperimento di 10 mesi, CausalSim ha migliorato costantemente l’accuratezza della simulazione, producendo algoritmi che hanno commesso circa la metà degli errori rispetto a quelli progettati utilizzando i metodi di base.

In futuro, i ricercatori vogliono applicare CausalSim a situazioni in cui i dati del trial di controllo randomizzato non sono disponibili o in cui è particolarmente difficile recuperare la dinamica causale del sistema. Vogliono anche esplorare come progettare e monitorare i sistemi per renderli più adatti all’analisi causale.