Questo studio non ha coinvolto partecipanti umani né animali vertebrati, né il prelievo di tessuti. Tutti i dati utilizzati per questa ricerca sono stati generati sinteticamente mediante modelli fisici di propagazione e parametri meteorologici disponibili pubblicamente. Pertanto, non è stata necessaria alcuna approvazione etica da parte di un Comitato per la Revisione Istituzionale (IRB) o di un Comitato Istituzionale per la Cura e l'Uso degli Animali (IACUC).
Generazione del Dataset in Base alla Teoria Fisica della Propagazione. Il dataset è stato costruito per simulare le condizioni atmosferiche orarie in un sistema di comunicazione ottica in spazio libero per un intero anno solare (2024), in condizioni atmosferiche irachene. È stata creata una base di dati sintetica contenente 1.500 campioni per ora.
Innanzitutto, le condizioni meteorologiche sono state assegnate casualmente in base alle tendenze regionali: cielo sereno (54,3%), polvere (24,9%), nebbia (10,5%), pioggia (7,4%) e neve (2,8%). In secondo luogo, è stato applicato a ciascun campione il corrispondente modello fisico di attenuazione in base alla condizione meteorologica, ovvero la legge di Beer-Lambert per il cielo sereno, il modello Kim per la nebbia, la teoria di Carbonneau per la pioggia e la teoria dello scattering di Mie per le tempeste di sabbia. In terzo luogo, i parametri del sistema FSO sono stati impostati come segue: potenza trasmessa di 20 dBm, lunghezza d'onda di 1550 nm, distanza di trasmissione di 3 km, apertura di trasmissione di 2,5 cm e apertura ricevente di 20 cm. In quarto luogo, l'attenuazione è stata calcolata in dB/km per ogni campione. Infine, l'intero set di dati è stato suddiviso casualmente in 1.200 campioni di addestramento (80%) e 300 campioni di test (20%). Le condizioni simulate includono elevate concentrazioni di polvere associate a tempeste di sabbia, temporali e variazioni di temperatura comprese tra −4,89°C e 47,99°C. Le condizioni meteorologiche e le distribuzioni dei parametri sono state selezionate sulla base dei dati climatici iracheni registrati nel periodo 2020–2024. I cinque regimi meteorologici (cielo sereno, nebbia, pioggia, tempeste di sabbia e neve) sono stati scelti perché coprono l'intero spettro delle condizioni atmosferiche che influenzano l'attenuazione FSO in Iraq, con le tempeste di sabbia particolarmente diffuse nel Medio Oriente. I dati meteorologici storici raccolti nelle diverse regioni dell'Iraq sono stati utilizzati per creare la distribuzione di probabilità per ciascuna condizione meteorologica. La distribuzione risultante è la seguente: 54,3% di cielo sereno (lo stato predominante), 24,9% di polvere (a rappresentare il problema delle tempeste di sabbia in Iraq), 10,5% di nebbia (frequente negli inverni del nord dell'Iraq), 7,4% di pioggia (basse quantità di precipitazioni tipiche dell'Iraq) e 2,8% di neve (talvolta presente nelle zone montuose settentrionali). I parametri meteorologici rilevanti sono stati modellati utilizzando distribuzioni di probabilità per ciascuna condizione meteorologica come segue: la temperatura è stata modellata mediante una distribuzione normale (media 28,55±11,18°C) compresa tra −4,89°C e 47,99°C, in base agli estremi stagionali iracheni; l'umidità è stata modellata mediante una distribuzione uniforme (media 42,01±25,56%) da 0% a 100%; la visibilità è stata modellata mediante una distribuzione log-normale compresa tra 0,05 km e 29,99 km (media 13,10±10,91 km) per tenere conto degli eventi frequenti di bassa visibilità durante le tempeste di sabbia; la concentrazione di polvere è stata modellata mediante una distribuzione esponenziale compresa tra 0 e 4,96 mg/m3 (media 0,74±1,30 mg/m3), con probabilità più elevate per basse concentrazioni e code lunghe per eventi estremi di polvere.
Il sistema di comunicazione è stato progettato con una potenza di trasmissione di 20 dBm, una lunghezza d'onda di 1550 nm, una distanza di trasmissione fino a 3 km, un'apertura di trasmissione di 2,5 cm e un'apertura ricevente di 20 cm per compensare la perdita dovuta alla divergenza. I parametri del sistema FSO sono stati suddivisi in due gruppi: parametri fissi, che non sono cambiati per tutti i campioni, e parametri variabili, modificati durante la generazione del set di dati. Per tutti e 1.500 i campioni, i seguenti parametri sono stati mantenuti costanti: potenza di trasmissione (20 dBm), lunghezza d'onda operativa (1550 nm), apertura di trasmissione (diametro 2,5 cm, efficienza 0,7) e apertura ricevente (diametro 20 cm, efficienza 0,7). Questi parametri sono stati mantenuti fissi poiché rappresentano le specifiche fisiche dell'hardware del sistema FSO e non variano in base alle condizioni atmosferiche. Il set di dati è stato creato con 1.500 campioni, variando i seguenti parametri: temperatura (da −4,89°C a 47,99°C), umidità (da 0% a 100%), visibilità (da 0,05 km a 29,99 km), concentrazione di polvere (da 0 a 4,96 mg/m3) e condizione meteorologica (cielo sereno, nebbia, pioggia, polvere, neve). Questi parametri sono stati modificati in base a distribuzioni di probabilità ricavate dai dati climatici dell'Iraq registrati negli anni 2020–2024. Per ogni campione, il valore di attenuazione (dB/km) è stato calcolato utilizzando il corrispondente modello fisico di attenuazione, in base alla specifica combinazione di condizioni atmosferiche e parametri variabili.
L'attenuazione fisica è stata modellata utilizzando il modello Carbonneau per la pioggia, la legge di Beer-Lambert per condizioni di cielo sereno, la teoria dello scattering di Mie per la polvere e il modello Kim per la nebbia24. La legge di Beer-Lambert si applica in condizioni di cielo sereno, in cui l'attenuazione è dominata dalla diffusione molecolare e dall'assorbimento, che decrescono esponenzialmente con la distanza25. Il coefficiente di estinzione α a 1550 nm è dovuto allo scattering di Rayleigh causato dalle molecole d'aria e all'assorbimento da parte dei gas atmosferici26. Il modello Kim è un modello specifico per la nebbia che correla l'attenuazione alla visibilità attraverso coefficienti empirici derivati dalle distribuzioni dimensionali delle goccioline di nebbia. L'esponente dipendente dalla lunghezza d'onda q tiene conto dello scattering di Mie27. Il parametro principale del modello Carbonneau è l'intensità di pioggia R, poiché l'attenuazione causata dalla pioggia dipende dalle dimensioni e dalla densità delle gocce d'acqua, e i coefficienti sono stati derivati empiricamente a 1550 nm e calibrati specificamente per lunghezze d'onda ottiche28. La teoria dello scattering di Mie è applicabile alle condizioni di polvere, poiché le dimensioni delle particelle di polvere (raggio compreso tra 0,1 e 100 μm) sono comparabili alla lunghezza d'onda (1550 nm), e l'indice di rifrazione complesso m = 1,55–0,005i per la polvere del Medio Oriente include sia scattering che assorbimento29. I seguenti modelli fisici di attenuazione sono stati implementati con le rispettive equazioni e impostazioni dei parametri.
Per condizioni di cielo sereno, è stata utilizzata la legge di Beer-Lambert:
Aclear = 10×log₁₀(e(α×d)) (1)
dove α è il coefficiente di estinzione (variato utilizzando una distribuzione normale centrata a 0,02 dB/km con una variazione di ±0,005 dB/km a 1550 nm in condizioni di cielo sereno) e d è la distanza di trasmissione (fissata a 3 km). Per condizioni di nebbia, è stato implementato il modello di Kim utilizzando l'equazione:
Afog = 10×ln(10)/V×(λ/550)−q (2)
dove V è la visibilità in chilometri (variabile da 0,05 km a 10 km), λ è la lunghezza d'onda in nanometri (fissata a 1550 nm) e q è il coefficiente di distribuzione dimensionale delle particelle calcolato come: q=1,6 per V>50 km, q=1,3 per 6<V<50 km, q=0,585×V(1/3) per 1 <V<6 km, q=0 per 0,5<V<1 km e q=0,5 per V<0,5 km. Per le condizioni di pioggia, è stato utilizzato il modello di Carbonneau:
Arain=0.023×R0.93 (3)
dove R è la velocità di precipitazione in mm/h (variata tra 0,25 e 50 mm/h in base ai dati pluviometrici dell'Iraq). La relazione di efficienza di estinzione è stata utilizzata per le condizioni di tempesta di polvere mediante la diffusione di Mie:
Adust=10×log₁₀(e(τ×L)) (4)
dove τ=∫₀^∞ πr2Qext(r,λ,m)N(r)dr, r è il raggio della particella (0,1–100 μm in base alla composizione della polvere irachena), Qext è l'efficienza di estinzione calcolata utilizzando la teoria di Mie, λ=1550 nm, m=1,55–0,005i è l'indice di rifrazione complesso per la polvere del Medio Oriente e N(r) è la distribuzione dimensionale delle particelle modellata mediante una distribuzione log-normale con raggio medio geometrico di 2,5 μm e deviazione standard di 2,0. Il modello di attenuazione è stato implementato per le condizioni di neve come segue:
Asnow = 0.1×S0.75 (5)
dove S è la velocità di nevicata in mm/h (0,5–15 mm/h). Questa equazione empirica è stata scelta sulla base dei lavori presenti in letteratura30, in cui sono stati sviluppati modelli di attenuazione per la propagazione ottica attraverso la neve utilizzando la teoria della diffusione di Mie applicata alle distribuzioni dimensionali dei fiocchi di neve. L'equazione è valida per tassi di caduta della neve compresi tra 0,5 e 15 mm/h e assume condizioni di neve secca con diametri tipici dei fiocchi compresi tra 1 e 10 mm. Il coefficiente 0,1 e l'esponente 0,75 sono stati ottenuti mediante fitting di curve ai calcoli di diffusione di Mie30 per la neve a 1550 nm. Il modello non tiene conto della neve umida o delle precipitazioni miste, che possono presentare proprietà di attenuazione variabili, anche se fornisce una stima ragionevole per la neve secca. Poiché l'approccio è computazionalmente efficiente, spesso citato nelle pubblicazioni sulle comunicazioni ottiche in spazio libero (FSO) e adatto alle condizioni nevose previste nel nord dell'Iraq (regione del Kurdistan nei mesi di gennaio e febbraio), è stato scelto per questa indagine. Utilizzando Numpy per i calcoli numerici, tutti i modelli sono stati implementati in Python 3.9. Il modello corrispondente è stato applicato alle condizioni meteorologiche scelte casualmente e ai dati ambientali campionati per calcolare il valore di attenuazione per ogni campione. La distribuzione meteorologica ottenuta comprendeva 814 condizioni di cielo sereno (54,27%), 375 eventi di polvere (25,00%), 157 eventi di nebbia (10,47%), 111 eventi di pioggia (7,40%) e 43 eventi di neve (2,87%).
L'esame delle informazioni meteorologiche storiche raccolte da stazioni meteorologiche irachene in diverse regioni (Baghdad, Basra, Mosul e Ramadi) tra il 2020 e il 2024 è stato utilizzato per determinare le proporzioni delle condizioni atmosferiche. I dati originali sono stati forniti dal Ministero dei Trasporti dell'Iraq e dall'Organizzazione Meteorologica e Sismologica dell'Iraq (IMOS). I dati includevano registrazioni meteorologiche giornaliere che riportavano le condizioni atmosferiche correnti per ciascun giorno. Tra le caratteristiche specifiche estratte da questi registri figuravano temperatura (minima, massima e media giornaliera), umidità relativa, visibilità, quantità di precipitazioni e occorrenze di tempeste di sabbia. Una parte dei dati IMOS è accessibile tramite il portale open data del governo iracheno (https://www.motrans.gov.iq/); tuttavia, i record specifici utilizzati in questo studio non sono archiviati pubblicamente in un unico repository centrale. Le informazioni climatiche utilizzate per calcolare le percentuali delle condizioni meteorologiche e dei valori dei parametri sono riassunte nella Tabella 1. I giorni con cielo sereno sono stati definiti come giorni senza precipitazioni, con visibilità superiore a 10 km e assenza di attività di polvere, rappresentando il 54,27% dei 1.825 giorni registrati. I giorni con tempesta di sabbia (inclusa tempesta di sabbia completa (visibilità < 1 km) e tempesta di sabbia parziale (visibilità tra 1 e 10 km))) hanno rappresentato il 19,45% del totale, mentre i giorni piovosi hanno costituito il 26,28%. < 1 km) e polvere sospesa (visibilità 1–5 km)) hanno rappresentato il 25,00% dei giorni, indicando l'elevata frequenza di eventi di tempesta di sabbia nel clima arido e semi-arido dell'Iraq. I giorni con visibilità inferiore a 1 km causata dalla sospensione di goccioline d'acqua (escludendo la riduzione della visibilità indotta dalla polvere) sono stati classificati come giorni di nebbia. La percentuale di giorni di nebbia è stata del 10,47% e tali giorni si sono verificati principalmente in inverno nelle regioni settentrionali dell'Iraq. Giorni di pioggia, giorni con precipitazioni misurabili >0,1 mm, erano del 7,40%, coerente con la bassa media delle precipitazioni annuali in Iraq, pari a 150–200 mm all'anno. I giorni con neve (giorni con accumulo di precipitazioni ghiacciate) costituivano il 2,87% dei giorni ed erano limitati alle aree montuose del nord (regione del Kurdistan) nei mesi di gennaio e febbraio. Queste proporzioni sono state successivamente utilizzate come pesi probabilistici per il campionamento casuale nella generazione del dataset. Pertanto, il dataset sintetico riflette la frequenza reale di ciascuna condizione meteorologica nell'ambiente iracheno.
Considerazioni sui bias nella generazione di dati sintetici
Per ridurre i possibili bias sono stati adottati diversi passaggi:
(1) Selezionare la distribuzione: Le proprietà statistiche dei dati climatici di origine sono state utilizzate per selezionare le distribuzioni di probabilità. La temperatura presentava una distribuzione normale con media e deviazione standard registrate dall'IMOS. L'umidità era distribuita uniformemente sull'intero intervallo osservato (0-100%). Si è ipotizzato che la visibilità seguisse una distribuzione log-normale, per tenere conto della frequente occorrenza di eventi di bassa visibilità durante le tempeste di sabbia. La concentrazione di polvere seguiva una distribuzione esponenziale, con probabilità più elevate a basse concentrazioni e code lunghe in corrispondenza di eventi estremi di polvere31. Questo risultato era coerente con la frequenza osservata di eventi di polvere in Iraq32.
(2) Proporzioni delle condizioni meteorologiche: l'analisi dei dati IMOS per il periodo 2020–2024, comprendente 1.825 osservazioni giornaliere in tutte e quattro le regioni, ha prodotto le seguenti proporzioni: 54,3% cielo sereno, 24,9% polvere, 10,5% nebbia, 7,4% pioggia e 2,8% neve. I giorni con cielo sereno sono stati definiti come giorni senza precipitazioni, con visibilità >10 km e in assenza di attività di polvere. I giorni con tempeste di sabbia includevano sia tempeste di sabbia complete (visibilità <1 km) sia polvere sospesa (visibilità 1–5 km). Un giorno di nebbia è stato definito come un giorno in cui la visibilità era inferiore a 1 km e la causa era la sospensione di goccioline d'acqua (e non polvere). I giorni di pioggia sono stati definiti come giorni con precipitazioni misurabili >0,1 mm. I giorni di neve sono stati definiti come giorni con precipitazioni ghiacciate accumulate33.
(3) Intervalli dei parametri: gli intervalli dei parametri si basavano sugli estremi osservati nei record IMOS: la temperatura variava da −4,89 °C (Mosul, inverno) a 47,99 °C (Basra, estate), la visibilità variava da 0,05 km (tempeste di sabbia severe) a 29,99 km (condizioni di cielo sereno) e la concentrazione di polvere variava da 0 a 4,96 mg/m3 (in base alla concentrazione massima di polvere osservata durante eventi severi di haboob)34.
(4) Assunzioni di indipendenza: Si è assunto che i parametri ambientali fossero campionati in modo indipendente, il che rappresenta una semplificazione delle condizioni reali in cui le variabili atmosferiche sono correlate (ad esempio, un'elevata concentrazione di polvere è spesso associata a scarsa visibilità). Al fine di fornire un ambiente di simulazione controllato per un confronto metodico dei modelli, è stata adottata questa assunzione di indipendenza 35. Le conseguenze di tali presupposti sono trattate nella Discussione.
(5) Divisione stratificata: La suddivisione tra training e test è stata effettuata in modo stratificato in base alla categoria di condizione meteorologica (cielo sereno, nebbia, pioggia, polvere, neve) per garantire che la proporzione di ciascuna condizione meteorologica nei set di addestramento e di verifica corrispondesse alla distribuzione originale del dataset. In questo modo, il set di test non risulta sbilanciato rispetto alle condizioni meteorologiche rare (in particolare la neve al 2,87%)36.
Riconoscimento della generazione deterministica della sequenza bersaglio
È importante sottolineare che la buona prestazione predittiva osservata qui potrebbe essere in parte dovuta al fatto che il modello apprende o approssima le equazioni fisiche deterministiche utilizzate per generare i valori target sintetici37. A differenza delle misurazioni sperimentali nel mondo reale, che contengono rumore di misura, errori strumentali e fenomeni fisici non modellati, il dataset sintetico fornisce una relazione pulita e priva di rumore tra le caratteristiche in ingresso e l'obiettivo di attenuazione. Questo perché i valori di attenuazione sono stati calcolati direttamente dai modelli fisici di propagazione (legge di Beer-Lambert, modello di Kim, modello di Carbonneau e teoria dello scattering di Mie) sulla base dei parametri in ingresso. Pertanto, le metriche quantitative di prestazione (R2, RMSE, MAE) rappresentano le prestazioni su dati sintetici derivati da equazioni e non devono essere interpretate come prestazioni attese su dati osservativi o sperimentali rumorosi. I risultati dovrebbero essere considerati principalmente come una valutazione comparativa delle metodologie di modellazione in un ambiente di simulazione controllato38.
Set completo di caratteristiche per l'addestramento del modello
Il set di dati di addestramento disponeva di 10 caratteristiche in ingresso per l'addestramento del modello:
1. Temperatura (°C)
2. Umidità (%)
3. Visibilità (km)
4. Concentrazione di polvere (mg/m3)
5. Tasso di precipitazione (mm/h)
6. Tasso di nevicata (mm/h)
7. Velocità del vento (m/s)
8. Pressione atmosferica (hPa)
9. Mese (numerico, 1–12)
10. Stagione (codificata in forma one-hot: primavera, estate, autunno, inverno)
Chiarimento importante: le condizioni meteorologiche (cielo sereno, nebbia, pioggia, polvere, neve) sono state utilizzate come variabile categorica per la stratificazione durante la suddivisione del dataset e non sono state incluse come caratteristiche di input per alcun modello. L'analisi SHAP include solo le 10 caratteristiche elencate sopra. La variabile stagione è stata codificata con il metodo one-hot (4 categorie: primavera, estate, autunno, inverno) e, per l'analisi SHAP, i contributi delle variabili stagionali codificate in questo modo sono stati sommati per ogni stagione al fine di produrre un singolo valore di contributo stagionale. Questo valore combinato rappresenta il contributo totale di tutte le variabili relative alla stagione alla previsione dell'attenuazione. Prima di creare la figura riassuntiva, sono state identificate le quattro colonne stagionali codificate con il metodo one-hot e i relativi valori SHAP sono stati sommati per ogni campione. Questo metodo garantisce che l'utilizzo della stagione da parte del modello come variabile categorica complessa sia coerente con l'analisi SHAP.
I principali fattori ambientali che hanno influenzato direttamente l'attenuazione ottica attraverso meccanismi fisici erano le caratteristiche 1–6. L'aggiunta delle caratteristiche 7 e 8 (velocità del vento e pressione) come fattori meteorologici supplementari potrebbe avere un impatto indiretto sull'attenuazione, influenzando la stabilità dell'aria e la dispersione degli aerosol. Per tenere conto delle variazioni stagionali delle condizioni atmosferiche, le caratteristiche 9–10 (mese e stagione) sono state incluse come descrittori temporali. Il valore di attenuazione (dB/km) è stato utilizzato come variabile obiettivo per tutti i modelli. Le statistiche chiave del dataset includevano la temperatura (28,55°C ± 11,18°C), l'umidità (42,01% ± 25,56%), la visibilità (13,10 ± 10,91 km; intervallo: 0,05–29,99 km), la concentrazione di polvere (0,74 ± 1,30 mg/m3; massimo: 4,96 mg/m3), l'attenuazione (4,80 ± 7,20 dB/km; intervallo: 0,09–50,93 dB/km), la distanza operativa (5,74 ± 1,97 km) e il rapporto segnale-rumore (64,88 ± 15,07 dB). La distanza operativa e il rapporto segnale-rumore sono stati calcolati a partire dai valori di attenuazione utilizzando le equazioni standard del bilancio del collegamento FSO.
Calcolo del campo operativo
L'intervallo operativo (in km) è stato calcolato utilizzando l'equazione del bilancio di collegamento:
Prx=Ptx×Gt×Gr×(λ/(4πR))2×10(−A×R/10) (6)
dove: Prx = potenza ricevuta (impostata alla sensibilità minima di −30 dBm); Ptx = potenza di trasmissione (fissa a 20 dBm); Gt = guadagno del trasmettitore (calcolato a partire dalle dimensioni dell'apertura); Gr = guadagno del ricevitore (calcolato a partire dalle dimensioni dell'apertura); λ = lunghezza d'onda (1550 nm); R = distanza in km; A = attenuazione atmosferica in dB/km (calcolata a partire dai modelli fisici).
Guadagni del trasmettitore e del ricevitore: Il guadagno del trasmettitore (Gt) è stato calcolato come: Gt = 10×log₁₀[0.7×(π×0.025/1.55×10⁻6)2] ≈ 44.2 dBi. Il guadagno del ricevitore (Gr) è stato calcolato come: Gr = 10×log₁₀[0.7×(π×0.20/1.55×10⁻6)2] ≈ 62.3 dBi. L'apertura di trasmissione aveva un diametro di 2,5 cm e un'efficienza pari a 0,7. L'apertura ricevente aveva un diametro di 20 cm e un'efficienza pari a 0,7. L'equazione è stata risolta in modo iterativo rispetto a R per determinare la massima distanza raggiungibile dal collegamento per ciascun valore di attenuazione.
Calcolo del rapporto segnale-rumore
Il rapporto segnale-rumore (SNR) in dB è stato calcolato utilizzando l'equazione:
SNR=Prx−10×log₁₀(kTB)−NF (7)
dove: Prx = potenza ricevuta in dBm (calcolata a partire dal bilancio del collegamento); k = 1,38×10⁻23 J/K (costante di Boltzmann); T = 290 K (temperatura del ricevitore); B = 109 Hz (larghezza di banda del ricevitore, 1 GHz); NF = 3 dB (fattore di rumore del ricevitore). Il livello del rumore è stato calcolato come:
10 × log10(kTB) ≈ −84 dBm (8)
Per ogni campione, dopo aver calcolato l'attenuazione A utilizzando il modello fisico appropriato, la distanza operativa è stata ricavata risolvendo il bilancio del collegamento per R, e il rapporto segnale-rumore (SNR) è stato calcolato a partire dalla potenza ricevuta risultante Prx a quella distanza.
Valori dell'Intervallo Operativo Specifici per le Condizioni Meteorologiche: L'intervallo operativo variava in base alle condizioni meteorologiche: cielo sereno (7,12 ± 1,85 km), nebbia (5,81 ± 1,92 km), neve (5,42 ± 1,56 km), pioggia (3,81 ± 0,98 km) e polvere (3,72 ± 1,08 km). Un margine di 3 dB non è stato applicato nei calcoli attuali; l'intervallo operativo rappresenta la portata massima teorica senza margine di sistema. L'intervallo operativo riportato (5,74 ± 1,97 km) è la media complessiva su tutte le condizioni meteorologiche39.
Distanza di Trasmissione Fissa: La distanza di trasmissione nei modelli di attenuazione fisica è stata impostata a 3 km. Questa è la distanza del collegamento per la quale sono stati effettuati i calcoli di attenuazione. La portata operativa riportata è la distanza massima teorica calcolata utilizzando l'equazione del bilancio del collegamento, che può differire dalla distanza di trasmissione fissa di 3 km. I valori di attenuazione specifici per le condizioni meteorologiche sono stati registrati per condizioni di cielo sereno (0,27±0,06 dB/km), nebbia (1,88±1,92 dB/km), neve (6,45±2,54 dB/km), pioggia (13,58±6,32 dB/km) e polvere (13,10±7,32 dB/km). Tutti i valori quantitativi riportati in questo manoscritto sono espressi come media ± deviazione standard (DS), salvo diversa indicazione40.
L'R2 di cross-validazione per la Random Forest è riportato pari a 0,960±0,007. In alcuni casi, come per la temperatura (−4,89 a 47,99°C), la visibilità (0,05 a 29,99 km), la concentrazione di polvere (0 a 4,96 mg/m3) e l'attenuazione (0,09 a 50,93 dB/km), l'intervallo (dal valore minimo al massimo) è indicato per esteso. Il dataset è stato suddiviso in sottogruppi per il test (300 campioni; 20%) e per l'addestramento (1.200 campioni; 80%). Per effettuare la suddivisione tra training e test è stato utilizzato un campionamento casuale stratificato. La stratificazione è stata applicata in base alla categoria di condizioni meteorologiche (cielo sereno, nebbia, pioggia, polvere e neve) per garantire che la percentuale di ciascuna condizione meteorologica nel set di addestramento (80%) e in quello di test (20%) corrispondesse alla distribuzione originale del dataset. In particolare, 1.200 (80%) dei 1.500 campioni sono stati assegnati al set di apprendimento e 300 (20%) al set di test. I campioni sono stati selezionati casualmente per ciascuna categoria di condizioni meteorologiche, mantenendo le proporzioni originali: dai 814 campioni di cielo sereno (54,27%), 651 sono stati assegnati al training e 163 al test; dai 375 campioni di polvere (25,00%), 300 al training e 75 al test; dai 157 campioni di nebbia (10,47%), 126 al training e 31 al test; dai 111 campioni di pioggia (7,40%), 89 al training e 22 al test; dai 43 campioni di neve (2,87%), 34 al training e 9 al test. Il campionamento casuale all'interno di ogni strato è stato effettuato utilizzando un seme casuale pari a 42 per garantire la riproducibilità. Questo approccio stratificato è stato scelto per evitare una rappresentazione sbilanciata delle condizioni meteorologiche rare (in particolare la neve al 2,87%) nel set di test, il che potrebbe portare a una valutazione delle prestazioni non affidabile per tali condizioni.
Valutazione del modello di apprendimento automatico
Sono stati valutati sei metodi di apprendimento automatico, inclusa la regressione con macchine a vettori di supporto (SVR) con un kernel a funzione di base radiale (C = 100), i K-vicini più prossimi (KNN; k = 10, con pesatura per distanza), RF (200 alberi, profondità massima = 20), boosting estremo del gradiente (XGBoost; 200 stimatori, profondità massima = 10, tasso di apprendimento = 0,1), macchina con boosting del gradiente leggero (LightGBM; 200 stimatori, profondità massima = 10, tasso di apprendimento = 0,1) e regressione lineare di base. Per tutti i modelli di apprendimento automatico e di apprendimento profondo, è stata effettuata la taratura degli iperparametri per i parametri più critici, mentre sono stati mantenuti i valori predefiniti per i parametri non specificati. Per i modelli di apprendimento automatico, i seguenti parametri sono stati regolati esplicitamente utilizzando una ricerca a griglia con validazione incrociata a 5 ripetizioni sul set di addestramento: 1) Foresta casuale: numero di alberi (testati: 50, 100, 150, 200, 250) e profondità massima (testata: 10, 15, 20, 25, senza limite), con valori ottimali selezionati di 200 alberi e profondità 20. 2) XGBoost: numero di stimatori (testati: 100, 150, 200, 250), profondità massima (testata: 6, 8, 10, 12) e tasso di apprendimento (testato: 0,05, 0,1, 0,2), con valori ottimali di 200 stimatori, profondità 10 e tasso di apprendimento 0,1. 3) LightGBM: sono stati utilizzati intervalli di taratura identici, ottenendo 200 stimatori, profondità 10 e tasso di apprendimento 0,1. 4) SVR: sono stati regolati il parametro di regolarizzazione C (testato: 1, 10, 50, 100) e il coefficiente del kernel gamma (testato: ‘scale’, ‘auto’, 0,1, 0,01), con valori ottimali C = 100 e kernel RBF. 5) KNN: è stato regolato il numero di vicini k (testato: 3, 5, 7, 10, 15), con valore ottimale k = 10 e abilitata la votazione pesata per distanza.
Tutti gli altri parametri per questi modelli sono stati lasciati ai valori predefiniti specificati in scikit-learn (vedere la Tabella dei materiali per la versione; ad esempio, Random Forest: bootstrap=True, min_samples_split=2, min_samples_leaf=1; XGBoost: subsample=1.0, colsample_bytree=1.0, gamma=0). Per i modelli di deep learning, l'architettura (numero di strati e unità per strato) e la dropout rate (20%) sono stati regolati manualmente mediante sperimentazione iterativa sul set di validazione, mentre l'ottimizzatore (Adam), il tasso di apprendimento iniziale (0,001), la pazienza dello stop anticipato (20 epoche) e i parametri di riduzione del tasso di apprendimento (fattore 0,5, pazienza 10) sono stati impostati in base alle pratiche standard presenti in letteratura e mantenuti fissi in tutti gli esperimenti di deep learning.
Fonti di dati climatici
Le informazioni meteorologiche storiche raccolte da stazioni meteorologiche irachene in diverse località (Baghdad, Basra, Mosul e Ramadi) tra il 2020 e il 2024 sono state utilizzate per calcolare le proporzioni degli stati atmosferici e le distribuzioni delle variabili. I dati grezzi sono stati forniti dal Ministero dei Trasporti dell'Iraq e dall'Organizzazione Meteorologica e Sismologica dell'Iraq (IMOS). I dati includevano registrazioni meteorologiche giornaliere che descrivevano lo stato atmosferico prevalente per ciascun giorno. Le variabili specifiche ottenute da questi registri comprendevano temperatura (minima, massima e media giornaliera), umidità relativa, visibilità, quantità di precipitazioni e occorrenze di tempeste di polvere. I dati IMOS sono parzialmente disponibili attraverso il portale open data del governo iracheno (https://www.motrans.gov.iq/), anche se i registri specifici utilizzati in questo studio non sono archiviati pubblicamente in un repository centralizzato. Un riepilogo dei dati climatici utilizzati per determinare le proporzioni delle condizioni meteorologiche e gli intervalli dei parametri è riportato nella Tabella 1.
È stata utilizzata una cross-validation a cinque ripetizioni sul set di addestramento (1.200 campioni) per ottimizzare gli iperparametri e stimare le prestazioni di tutti i modelli di apprendimento automatico. Tutte le variabili in ingresso (temperatura, umidità, visibilità, concentrazione di polvere, intensità di pioggia, intensità di neve, velocità del vento, pressione) sono state normalizzate mediante standardizzazione (normalizzazione con punteggio Z): x_scaled = (x − μ)/σ, dove μ e σ sono rispettivamente la media e la deviazione standard del set di addestramento. L'operazione di standardizzazione è stata effettuata all'interno di ciascun fold della cross-validation, utilizzando esclusivamente le statistiche del fold di addestramento, per evitare il data leakage. I modelli basati su alberi (Random Forest, XGBoost, LightGBM) sono invarianti rispetto alla scala, ma è stata applicata la stessa standardizzazione per garantire coerenza tra tutti i modelli di apprendimento automatico. Per i modelli di deep learning è stata utilizzata la normalizzazione min-max: x_scaled = (x−x_min)/(x_max−x_min), che scala le caratteristiche nell'intervallo [0, 1] in base ai valori minimo e massimo del set di addestramento. L'uso di ingressi limitati consente una convergenza più rapida delle reti neurali, motivo per cui è stata scelta questa procedura. Il set di test è stato scalato utilizzando i parametri ottenuti dal set di addestramento, e non è stato impiegato per la selezione del modello né per l'ottimizzazione degli iperparametri.
Sono state registrate metriche di prestazione complete, inclusi il coefficiente di determinazione del test (R2), errore quadratico medio (RMSE), errore assoluto medio (MAE), R di cross-validazione2e il tempo di addestramento. I tempi di addestramento per tutti i modelli di machine learning e deep learning sono riportati in secondi (s) per i modelli più veloci (Regressione Lineare, KNN, SVR, Random Forest, XGBoost, LightGBM) e in minuti (min) per i modelli più lenti (architetture di deep learning). Tutti i modelli sono stati addestrati nello stesso ambiente computazionale per garantire un confronto equo.41.
Il tempo di addestramento è stato misurato utilizzando il modulo time di Python, ovvero il tempo effettivo trascorso dall'inizio alla fine della funzione di addestramento del modello, escludendo il tempo necessario per il caricamento e la pre-elaborazione dei dati. Il tempo di addestramento per un modello di apprendimento profondo corrisponde al tempo impiegato per completare tutte le epoche fino all'arresto precoce. Ciò include la propagazione in avanti, la propagazione all'indietro e i controlli di validazione. Tutti gli esperimenti sono stati eseguiti con il sistema privo di altri processi computazionalmente intensivi, al fine di ottenere misurazioni temporali coerenti. I tempi riportati rappresentano la media di 5 esecuzioni indipendenti (deviazioni standard)42.
Valutazione del modello di apprendimento profondo
Sei architetture di apprendimento profondo sono state valutate utilizzando l'accelerazione GPU, inclusi un percettrone multistrato (MLP; 64-32-16), una rete neurale profonda (DNN) con normalizzazione del batch (128-64-32-16), una rete long short-term memory (LSTM; 64-32 unità, lunghezza della sequenza = 10), una rete neurale convoluzionale unidimensionale (1D-CNN), un modello ibrido CNN–LSTM e una rete basata sull'attenzione. Tutti i modelli di apprendimento profondo sono stati implementati utilizzando TensorFlow con l'API Keras ed eseguiti con accelerazione GPU (vedere Tabella dei Materiali per le versioni di hardware e software). L'architettura 1D-CNN era composta da tre strati convoluzionali (64, 128 e 256 filtri, dimensione del kernel 3, attivazione ReLU, padding=’same’), due strati MaxPooling1D (dimensione del pool 2), uno strato GlobalAveragePooling1D, uno strato denso con 128 unità e attivazione ReLU, uno strato Dropout (0,2) e uno strato di output denso (1 unità, attivazione lineare), per un totale di circa 245.000 parametri addestrabili. L'architettura ibrida CNN-LSTM accettava sequenze in ingresso di 10 passi temporali con 5 caratteristiche, utilizzando due strati Conv1D (64 e 128 filtri, dimensione del kernel 3, ReLU, padding=’same’), uno strato MaxPooling1D (dimensione del pool 2), due strati LSTM (64 e 32 unità, return_sequences=False), strati Dropout (0,2), uno strato denso (32 unità, ReLU) e uno strato di output denso (1 unità, attivazione lineare), per un totale di circa 198.000 parametri addestrabili. La rete basata sull'attenzione utilizzava un meccanismo di attenzione multi-testa con 4 teste (dimensioni chiave e valore di 64), in cui l'ingresso veniva proiettato su 64 dimensioni, seguito da un'attenzione basata sul prodotto scalare normalizzato (formula: Attention(Q, K, V) = softmax(QKT/√d_k)V), connessioni residue, normalizzazione del livello, una rete feedforward (128→64 unità), un'operazione di global average pooling, Dropout (0,2), uno strato denso (32 unità, ReLU) e uno strato di output denso (1 unità, attivazione lineare), per un totale di circa 167.000 parametri addestrabili43.
Tutti i modelli hanno utilizzato l'arresto anticipato (patience = 20), la riduzione del tasso di apprendimento (fattore = 0,5, patience = 10), il dropout (20%) e l'ottimizzatore Adam (tasso di apprendimento = 0,001). Per tutti i modelli di apprendimento profondo, la dimensione del batch è stata impostata a 32 campioni, il numero massimo di epoche di addestramento è stato fissato a 200 con arresto anticipato (patience = 20, ripristino dei migliori pesi), e la funzione di perdita utilizzata è stata l'errore quadratico medio (MSE). La suddivisione tra training e validazione è stata la seguente: partendo dagli originali 1.200 campioni di addestramento (dopo la suddivisione 80/20 tra training e test), l'80% (960 campioni) è stato utilizzato per l'addestramento e il 20% (240 campioni) per la validazione. La suddivisione tra training e validazione è stata stratificata in base alle condizioni meteorologiche per preservarne la distribuzione. Il set di validazione è stato utilizzato esclusivamente per l'arresto anticipato, la riduzione del tasso di apprendimento e il monitoraggio dell'overfitting; non è mai stato impiegato per la selezione del modello o l'ottimizzazione degli iperparametri al di là di queste procedure automatizzate. Non è stato previsto un set di validazione separato per i modelli di machine learning; invece, è stata utilizzata una validazione incrociata a cinque ripetizioni sui 1.200 campioni di addestramento per ottimizzare gli iperparametri e stimare le prestazioni44.
Giustificazione per la valutazione dell'architettura LSTM e CNN–LSTM
Il set di dati principale è costituito da campioni meteorologici generati in modo indipendente, ma abbiamo anche testato architetture LSTM e CNN–LSTM per i seguenti motivi: (1) le condizioni atmosferiche nel mondo reale presentano autocorrelazione temporale e il test di modelli basati su sequenze ci permette di determinare se la cattura di tali dipendenze possa migliorare l'accuratezza delle previsioni; (2) ricerche recenti nella previsione atmosferica hanno dimostrato il valore potenziale delle architetture sequenziali per modellare l'evoluzione temporale dei parametri meteorologici34; (3) il test di un'ampia gamma di architetture garantisce un confronto esaustivo tra approcci metodologici, che rappresenta un contributo fondamentale di questo studio; e (4) l'architettura ibrida CNN–LSTM combina l'estrazione di caratteristiche spaziali con la modellazione temporale, il che potrebbe risultare vantaggioso per catturare le complesse interazioni tra molteplici variabili atmosferiche45.
Formattazione dei dati per l'input del modello sequenziale
Per le architetture sequenziali (LSTM e CNN–LSTM), i dati di ingresso sono stati riorganizzati da campioni indipendenti a pseudo-sequenze utilizzando un approccio a finestra mobile. In particolare, i 1.200 campioni di addestramento sono stati innanzitutto raggruppati in categorie di condizioni meteorologiche per preservare la coerenza fisica. All'interno di ciascuna categoria meteorologica, i campioni sono stati ordinati in base ai loro timestamp generati (osservazioni simulate orarie per l'anno solare 2024). Successivamente, è stata applicata una finestra mobile di lunghezza 10 per produrre sequenze di ingresso composte da 10 passi temporali consecutivi (ciascuno con 5 caratteristiche: temperatura, umidità, visibilità, concentrazione di polvere e intensità di pioggia) al fine di prevedere l'attenuazione al 11° passo temporale. Questo metodo preserva l'ordinamento temporale delle osservazioni simulate, consentendo al contempo ai modelli sequenziali di apprendere le dipendenze temporali. La struttura del set di test era la stessa, fatta eccezione per la medesima dimensione della finestra e il medesimo insieme di caratteristiche. Riconosciamo che questa strutturazione pseudo-sequenziale rappresenta una semplificazione metodologica e non riflette le dinamiche temporali del mondo reale. Abbiamo riconosciuto questa limitazione nella sezione Discussione.
Valutazione degli approcci ibridi
Sono stati esaminati tre approcci ibridi. Il primo approccio era un insieme a voto (Voting Ensemble) che mediava le previsioni provenienti dai modelli Random Forest, XGBoost e Deep Neural Network utilizzando pesi uguali (a ciascun modello veniva assegnato un peso di 1/3), con la previsione finale calcolata come:
ŷensemble=(1/3)ŷRF+(1/3)ŷXGB+(1/3)ŷDNN (9)
È stata scelta una ponderazione equa per evitare l'introduzione di ulteriori iperparametri e per valutare le prestazioni di base dell'insieme senza alcun bias verso un singolo modello. Il secondo approccio ha impiegato un metodo di stacking con meta-learner Ridge. I modelli di base erano Foresta Casuale, XGBoost e una Rete Neurale Profonda (basata sull'attenzione). La procedura di stacking prevedeva due fasi: innanzitutto, ciascun modello di base è stato addestrato sull'intero insieme di training di 1.200 campioni utilizzando una cross-validation a 5 fold per generare predizioni out-of-fold, creando così una nuova matrice di meta-caratteristiche di dimensione 1.200×3 (una predizione per modello di base per ogni campione). In secondo luogo, un meta-learner basato su regressione Ridge (parametro di regolarizzazione L2 alpha=1,0) è stato addestrato su queste meta-caratteristiche, utilizzando i valori originali di attenuazione come obiettivo, per apprendere i pesi ottimali di combinazione dei modelli di base. La predizione finale ottenuta tramite stacking era:
ŷstacking=wRF×ŷRF+wXGB×ŷXGB+wDNN×ŷDNN (10)
dove i pesi w sono stati appresi dal meta-algoritmo Ridge. Il terzo approccio era una rete neurale informata dalla fisica, che combinava il 70% delle predizioni della rete neurale con il 30% proveniente dal modello di Kim per i campioni in condizioni di nebbia. La combinazione è stata effettuata mediante media pesata fissa utilizzando la seguente formula:
ŷhybrid=0.7×ŷneural+0.3×ŷKim (11)
dove ŷneural è l'output della rete neurale basata sull'attenzione e ŷKim è l'attenuazione calcolata a partire dal modello di nebbia di Kim in base all'input di visibilità. Per i campioni senza nebbia, la componente fisica è stata impostata a 0 e il modello è stato eseguito come rete neurale pura. I pesi (70% neurale e 30% fisico) sono stati fissati in base a esperimenti preliminari sul set di validazione (non sul set di test), in cui abbiamo testato combinazioni di pesi pari a 90:10, 80:20, 70:30, 60:40 e 50:50. È stata scelta la suddivisione 70/30 poiché forniva il valore di R2 di validazione migliore e al contempo manteneva un vincolo fisico sufficiente derivato dal modello di Kim per regolarizzare le previsioni ed evitare output fisicamente implausibili, specialmente in condizioni di nebbia, dove il modello di Kim fornisce limiti teorici di attenuazione ben stabiliti.
Analisi dell'importanza e dell'interpretabilità delle caratteristiche
È stato utilizzato il modello Random Forest con importanza delle caratteristiche basata sull'impurità (riduzione della varianza) per estrarre tutte e 10 le classifiche di importanza delle caratteristiche in ingresso. L'analisi ha mostrato che la concentrazione di polvere (67,3%) e la visibilità (21,2%) erano i predittori più importanti, spiegando insieme l'88,5% dell'importanza predittiva totale. La terza caratteristica più importante era l'intensità della pioggia (6,0%), seguita dalla velocità del vento (2,1%), dalla temperatura (1,5%), dall'umidità (0,9%), dal mese (0,5%), dalla stagione (0,3%), dal tasso di nevicata (0,1%) e dalla pressione atmosferica (0,1%). I bassi punteggi di importanza per le caratteristiche temporali (mese e stagione) indicano che la variazione stagionale nell'attenuazione atmosferica è catturata principalmente da parametri ambientali sottostanti piuttosto che da schemi basati esclusivamente sul tempo.
È stata eseguita un'analisi SHAP (Shapley Additive exPlanations) per valutare le relazioni tra i fattori ambientali e l'attenuazione. L'implementazione SHAP utilizzata è stata il modulo TreeExplainer della libreria SHAP, specificamente ottimizzato per modelli basati su alberi, inclusi Random Forest, XGBoost e LightGBM (vedere la Tabella dei Materiali per la versione). La configurazione per l'analisi SHAP è stata la seguente: il modello Random Forest addestrato è stato passato a TreeExplainer, che ha calcolato i valori SHAP utilizzando l'approccio di attribuzione delle caratteristiche interventista (marginale) basato sull'aspettativa condizionata dell'output del modello. I valori SHAP sono stati calcolati per tutti e 300 i campioni del set di test, generando una matrice di dimensioni 300 × 10 (un valore SHAP per ogni caratteristica per ogni campione). Per ogni caratteristica, il valore SHAP rappresentava il suo contributo alla previsione rispetto alla linea di base (la previsione media del modello). Valori SHAP negativi indicavano una riduzione; mentre valori SHAP positivi indicavano che la caratteristica aumentava la previsione di attenuazione. L'intensità del contributo era indicata dall'ampiezza del valore SHAP. La distribuzione dei valori SHAP per ogni caratteristica (utilizzando grafici a nuvola d'api), la direzione dell'influenza (la correlazione tra i valori della caratteristica e i valori SHAP) e le classifiche di importanza delle caratteristiche sono state tutte visualizzate mediante grafici riassuntivi. Le funzioni di plotting integrate nella libreria SHAP—shap.summary_plot() per il grafico a nuvola d'api e shap.bar_plot() per l'importanza globale delle caratteristiche—sono state utilizzate per creare tutte le visualizzazioni SHAP.
Gestione delle variabili codificate in modalità one-hot: per codificare la variabile stagione sono state utilizzate inizialmente quattro colonne binarie (primavera, estate, autunno e inverno). Al fine di ottenere un singolo valore di contributo per "stagione" per ogni campione nell'analisi SHAP, i contributi di queste quattro variabili codificate in modalità one-hot sono stati combinati sommando i valori SHAP per ciascuna categoria stagionale. Per realizzare questo raggruppamento, sono state identificate tutte le colonne corrispondenti ai gruppi stagionali codificati in modalità one-hot, sono stati estratti i valori SHAP per ogni campione e successivamente sommati elemento per elemento. I valori SHAP combinati risultanti rappresentano il contributo complessivo della stagione alla previsione dell'attenuazione. Questo metodo consente di visualizzare una singola riga "stagione" nel grafico riassuntivo SHAP e garantisce coerenza con l'utilizzo della stagione da parte del modello come variabile categorica composta. Poiché il valore combinato offre una rappresentazione più chiara del contributo totale della stagione, i valori SHAP relativi alla stagione non sono stati mostrati separatamente per ciascuna categoria stagionale.