Il problema di ottimizzazione che emerge in un contesto di Federated Edge Learning (FEEL) abilitato da Unmanned Aerial Vehicles (UAV) è strettamente legato alla pianificazione del tempo di esecuzione e all'allocazione delle risorse. Il problema descritto in (6.38) si presenta come un problema di programmazione lineare che può essere separato in N problemi indipendenti, con le variabili ottimali dei slot temporali descritte dall'equazione (6.39). La risoluzione ottimale di questo problema viene dettagliata nell'algoritmo 7, che si basa su un approccio duale per risolvere il sistema di equazioni e ottimizzare le variabili primarie, come l'allocazione delle risorse e la programmazione del tempo.

La progettazione della traiettoria è una componente cruciale nella riduzione del tempo di completamento e nella minimizzazione dei costi complessivi del sistema FEEL. Una volta stabiliti i parametri di programmazione e allocazione {A, δ, τ}, il sottoproblema di ottimizzazione della traiettoria si riduce a un problema di verifica della fattibilità (6.40a), in cui le distanze tra i dispositivi e le risorse devono essere ottimizzate tenendo conto di vincoli energetici. Le soluzioni a questo problema sono formulate come un problema di programmazione quadratica convessa (QCQP), il cui obiettivo è minimizzare l'energia consumata, garantendo al contempo la fattibilità del sistema.

Il problema di ottimizzazione delle traiettorie, che è una parte integrale del sistema FEEL, implica la gestione ottimale della posizione dell'UAV in modo che la comunicazione con i dispositivi avvenga in modo efficiente, riducendo al minimo i tempi di latenza e ottimizzando l'uso delle risorse energetiche disponibili. Per affrontare questo problema, è stato applicato il metodo BCD (Block Coordinate Descent), un approccio che alterna la risoluzione dei problemi (6.24) e (6.41) fino alla convergenza. Ogni iterazione di questo metodo ottimizza separatamente le variabili di ciascun blocco, come la pianificazione temporale, l'allocazione delle risorse e la selezione dei dispositivi.

Nel contesto della simulazione e dei risultati numerici, vengono presentati parametri e scenari che aiutano a comprendere meglio l'efficacia dell'algoritmo proposto. Ad esempio, il sistema FEEL abilitato da UAV opera all'interno di un'area quadrata di dimensioni [0, 400] m × [0, 400] m, con l'UAV che vola a un'altitudine costante di 100 m. La simulazione prevede che i dispositivi siano divisi in due cluster con diverse capacità energetiche, il che influenza direttamente il tempo di completamento dell'intero processo di apprendimento.

In questa analisi, i risultati numerici evidenziano l'impatto della progettazione congiunta dell'UAV e della selezione dei dispositivi. In particolare, viene messo a confronto il sistema proposto con tre approcci di riferimento, tra cui la programmazione completa, l'UAV statico e l'UAV statico con selezione dei dispositivi basata su euristica. Tra questi, la progettazione congiunta ottimizzata, che include la progettazione della traiettoria e la selezione dinamica dei dispositivi, porta a una riduzione significativa del tempo di completamento rispetto agli altri approcci. In particolare, l'uso della mobilità dell'UAV per ridurre le distanze di comunicazione tra i dispositivi programmati gioca un ruolo fondamentale nella riduzione del tempo di completamento e nell'eliminazione degli errori di aggregazione dovuti alla presenza di dispositivi "straggler".

Il confronto delle performance e dei tempi di completamento in relazione alla precisione di convergenza di FEEL (Figura 6.3) dimostra che, mentre l'approccio di scheduling completo non è influenzato dalla precisione di convergenza, gli altri approcci che utilizzano la pianificazione dei dispositivi mostrano miglioramenti nel tempo di completamento con l'aumentare della precisione di convergenza. L'approccio proposto, che integra sia la progettazione della traiettoria che la pianificazione dei dispositivi, offre i migliori risultati, riducendo significativamente i tempi di completamento rispetto agli schemi di riferimento.

Al di là di quanto descritto, è fondamentale comprendere che l'ottimizzazione della traiettoria e la pianificazione delle risorse non sono soluzioni isolate, ma devono essere considerate come parte di un sistema complesso che include l'influenza di variabili come la potenza di trasmissione, la qualità del canale, le interferenze e le risorse computazionali dei dispositivi. Inoltre, l'approccio BCD, pur essendo efficace, richiede una gestione attenta della convergenza e una calibrazione precisa dei parametri per evitare iterazioni troppo lunghe o una convergenza non ottimale. La sfida principale, quindi, non è solo ottimizzare il tempo di completamento ma farlo in modo che tutte le risorse siano sfruttate al massimo delle loro potenzialità, mantenendo il sistema bilanciato e reattivo alle condizioni dinamiche del canale di comunicazione.

Come Ottimizzare l'Apprendimento Federato su Edge: Un'analisi dell'integrazione Blockchain nel modello B-FEEL

Il processo di apprendimento federato su dispositivi edge (B-FEEL) si articola in una serie di passaggi complessi, che coinvolgono la formazione di modelli locali, il loro caricamento su un server centrale e l'aggregazione di questi modelli in un modello globale. Questi passaggi, sebbene tecnicamente avanzati, sono fondamentali per garantire l'efficienza del sistema e la sicurezza dei dati, soprattutto quando si integra la tecnologia blockchain per la validazione e l'autenticazione delle transazioni.

Nella fase iniziale, ogni dispositivo edge Dk effettua l'addestramento del proprio modello locale utilizzando un insieme di dati locali Sk. Questo modello è calcolato attraverso una funzione di perdita locale Fk, per poi essere aggiornato con un algoritmo di discesa del gradiente:

wtk=wt1kηFk(wt1k;Sk)wt_k = wt-1_k - \eta \nabla F_k(wt-1_k; S_k)

In questo contesto, η rappresenta il tasso di apprendimento, e ∇Fk è il gradiente della funzione di perdita Fk. Una volta che il modello locale è aggiornato, il dispositivo edge Dk carica il suo modello sul server principale attraverso una transazione che include un pacchetto di dati digitalmente firmato. Questa firma digitale è cruciale per garantire l'autenticità e l'integrità dei dati, impedendo alterazioni non autorizzate e validando il proprietario del modello.

Una volta che tutti i dispositivi edge hanno caricato i propri modelli locali, il server principale raccoglie queste informazioni e le utilizza per creare un modello globale. Questo processo avviene attraverso l'algoritmo multi-KRUM, che seleziona i modelli locali più rappresentativi, resistenti agli attacchi byzantini, e li aggrega in un modello globale:

wtg=multi_KRUM({wtk,DkD})wt_g = multi\_KRUM(\{wt_k, \forall Dk \in D\})

Il modello globale ottenuto viene successivamente impacchettato in un blocco, che viene distribuito ai server di validazione, i quali devono confermare la validità del modello e delle transazioni. In questa fase, i server di validazione sono coinvolti in un processo di consenso basato sul protocollo PBFT (Practical Byzantine Fault Tolerance), che garantisce che tutte le transazioni siano verificate correttamente.

Una volta raggiunto il consenso, il blocco contenente il modello globale viene aggiunto alla blockchain. Ogni fase del processo — dalla validazione delle firme digitali all'aggregazione dei modelli locali — comporta latenza computazionale e di comunicazione. La latenza computazionale è principalmente determinata dalla verifica delle transazioni e dal calcolo del modello globale, mentre la latenza di comunicazione riguarda la trasmissione dei dati tra i dispositivi edge, il server principale e i server di validazione.

Il consenso viene ulteriormente formalizzato attraverso una serie di messaggi che confermano, in modo sequenziale, la validità del blocco e l'accordo tra i server di validazione. Una volta che i server di validazione inviano il messaggio di "commit" e il consenso è raggiunto, il blocco è ufficialmente accettato nella blockchain.

A questo punto, il server principale invia il modello globale validato a tutti i dispositivi edge, che possono così avviare il prossimo ciclo di addestramento. È importante notare che l'efficienza complessiva del sistema dipende fortemente dall'ottimizzazione delle fasi di upload, validazione e aggregazione, oltre alla gestione accurata della latenza di comunicazione.

Integrazione con la Blockchain
L'uso della blockchain nel processo di B-FEEL serve a garantire la trasparenza e la sicurezza del sistema. Ogni transazione, che coinvolge l'upload dei modelli locali e l'aggregazione nel modello globale, viene registrata come un blocco immutabile. Questo meccanismo di registrazione è essenziale per proteggere i dati da eventuali manipolazioni e per mantenere un registro verificabile di tutte le operazioni, utile anche in ambiti di audit o di monitoraggio del sistema.

Inoltre, l'uso della blockchain aiuta a decentralizzare ulteriormente il processo di apprendimento federato. I dispositivi edge non sono più dipendenti da un'unica autorità centrale per la validazione, ma possono contare su un sistema distribuito che rende il processo più resiliente e sicuro. L'integrazione tra edge computing e blockchain, quindi, non solo ottimizza l'efficienza operativa, ma rafforza anche la protezione dei dati, creando un ecosistema più robusto per l'apprendimento federato.

Ottimizzazione delle Risorse
Una considerazione cruciale è l'efficienza nell'allocazione delle risorse, come la banda e la potenza, che devono essere distribuite tra tutti i dispositivi edge per evitare colli di bottiglia durante le fasi di comunicazione e calcolo. La gestione dinamica delle risorse è necessaria per garantire che tutte le operazioni, sia computazionali che comunicative, siano bilanciate in modo ottimale, riducendo così i tempi di latenza e migliorando le performance generali del sistema.

Scalabilità e Resilienza
Un aspetto fondamentale da comprendere è la scalabilità del modello. Poiché il numero di dispositivi edge può variare, è essenziale che il sistema possa adattarsi facilmente alla crescita della rete senza compromettere la qualità dell'apprendimento o l'efficienza della comunicazione. L'approccio federato e l'uso della blockchain permettono una scalabilità naturale, in quanto i dispositivi edge possono essere aggiunti al sistema senza bisogno di modifiche centralizzate. Inoltre, la resilienza del sistema è garantita dalla capacità della blockchain di resistere agli attacchi esterni e di mantenere l'integrità dei dati anche in presenza di malfunzionamenti di alcuni nodi.

Come Ottimizzare la Latenza in Sistemi Federati tramite Blockchain

Nel contesto della Federated Edge Learning (FEEL) supportata dalla tecnologia blockchain, uno degli aspetti chiave da analizzare è l'ottimizzazione della latenza di trasmissione. La latenza gioca un ruolo cruciale nella performance complessiva di un sistema, specialmente in scenari che coinvolgono dispositivi edge distribuiti. L'integrazione della blockchain, seppur apporti sicurezza e trasparenza, introduce complessità computazionale che deve essere attentamente considerata durante l'analisi delle prestazioni.

La trasmissione dei dati in un sistema FEEL avviene attraverso un ciclo di round in cui i dispositivi edge e i server edge lavorano in sincronia. La velocità di trasmissione tra un dispositivo Dk e il server edge Bm, rappresentata come RtDkR_t^{Dk}, dipende da vari fattori, tra cui la potenza di trasmissione ptp_t, la banda disponibile btb_t, e il guadagno del canale htDk,Bh_{tDk,B}. La latenza totale per trasmettere un pacchetto dati di dimensione ω\omega tra il dispositivo Dk e il server Bm può essere espressa come TDk,Bm=ωRDk,BmT_{Dk,Bm} = \frac{\omega}{R_{Dk,Bm}}.

L'introduzione della blockchain comporta l'aggiunta di fasi ulteriori di computazione, necessarie per validare i modelli locali, aggregare i modelli globali, e garantire la sicurezza dei dati tramite la verifica delle firme digitali. Ad esempio, durante l'aggiornamento dei modelli locali, ogni dispositivo esegue l'algoritmo di backpropagation, il cui tempo di calcolo dipende dalla potenza di elaborazione della CPU del dispositivo, dalla dimensione del batch di addestramento, e dalla complessità dell'algoritmo stesso. La latenza di calcolo può essere espressa come Tktrain=max(δfk,sD)T_{ktrain} = \max \left( \frac{\delta}{f_k}, s_D \right), dove δ\delta è il numero di cicli CPU necessari per un singolo campione, e fkf_k è la frequenza della CPU del dispositivo Dk.

Dopo l'addestramento locale, ogni modello aggiornato viene incorporato in una transazione che include una firma digitale. Il tempo di calcolo per generare questa firma è un altro fattore da considerare. Questo tempo può essere rappresentato da Tup=ρfkT_{up} = \frac{\rho}{f_k}, dove ρ\rho è il numero di cicli CPU necessari per generare la firma digitale. La latenza di trasmissione del modello locale al server primario è influenzata dalla dimensione della transazione e dalla velocità di trasmissione.

Una volta che i modelli locali sono inviati al server edge primario, questi vengono verificati per autenticità, e il server esegue un contratto intelligente per aggregare i modelli locali in un modello globale. Questo processo di aggregazione, che utilizza algoritmi come il multi-KRUM, è fondamentale per garantire che il modello globale sia una rappresentazione fedele dei dati aggregati. L'aggregazione richiede un significativo carico computazionale, espresso come Tagg=Kρ+σfBpT_{agg} = \frac{K\rho + \sigma}{f_{Bp}}, dove KK è il numero di dispositivi edge, e σ\sigma è il numero di cicli CPU richiesti per eseguire l'algoritmo di aggregazione.

Una volta che il modello globale è stato aggregato, viene confezionato in un blocco blockchain insieme alle transazioni dei modelli locali. Il numero massimo di transazioni in un blocco è K+1K+1, dove K è il numero di dispositivi edge e uno per il modello globale. La latenza associata a questa fase di aggregazione deve essere presa in considerazione, poiché dipende dalle capacità computazionali del server edge primario e dalla necessità di verificare ogni firma digitale. Il tempo di calcolo per l'aggregazione del blocco può essere dato da Tblock=Kρ+σfBpT_{block} = \frac{K\rho + \sigma}{f_{Bp}}.

Subito dopo la creazione del blocco, il server primario invia un messaggio di pre-preparazione a tutti i server validatori, che sono incaricati di verificare la validità delle transazioni e del modello globale. Questo passo richiede una verifica delle firme digitali e un calcolo per assicurarsi che il modello globale sia corretto. La latenza di questa fase è rappresentata da Tprep=SmaxBmRBp,BmT_{prep} = \frac{S}{\max_{Bm} R_{Bp,Bm}}, dove SS è la dimensione del messaggio di pre-preparazione, che include le informazioni sul blocco.

L’ultimo passo del processo coinvolge la diffusione del messaggio di commit, che viene trasmesso a tutti i server per completare il ciclo di validazione del blocco. La latenza per questa fase di diffusione è espressa come Tcommit=SmaxBmRBp,BmT_{commit} = \frac{S}{\max_{Bm} R_{Bp,Bm}}, simile a quella della fase di pre-preparazione, ma con la necessità di generare e verificare anche i messaggi di commit.

In generale, la latenza totale di un sistema B-FEEL (Blockchain-based Federated Edge Learning) dipende dall’efficienza delle operazioni locali di addestramento, dalla velocità della rete, dalla capacità di elaborazione dei dispositivi edge, e dalla complessità delle fasi di aggregazione e validazione della blockchain. Ogni fase introdotta dalla blockchain comporta un sovraccarico, ma al contempo garantisce la sicurezza e l'integrità dei dati, due caratteristiche fondamentali in contesti di apprendimento distribuito.

È essenziale comprendere che la blockchain, pur portando vantaggi in termini di sicurezza e trasparenza, impone una gestione attenta delle risorse computazionali. La scelta dell'algoritmo di aggregazione, la gestione della latenza di rete e la frequenza di aggiornamento del modello globale sono fattori determinanti che influenzano la velocità complessiva del sistema. Oltre alla latenza di trasmissione e al carico computazionale, la resilienza del sistema alle anomalie, come dispositivi malintenzionati o attacchi alla rete, è un altro elemento cruciale da considerare.