Video Link: https://youtu.be/RI2gLdX9DAE
Live Website: https://determined-keller-5cbae8.netlify.app/
Project Code
https://github.com/kevin200617/Project-L.O.C.U.S.T/
Questo progetto è stato vincitore in occasione della NASA Space App Challenge 2020
Progetto L.L.O.C.U.S.T. [Locuste Locazione, Obliterazione e Coordinamento utilizzando i satelliti e l'equitazione] rileva e prevede la posizione delle locuste e prevede i loro movimenti nelle aree di interesse caraterrizate come vulnerabili. Utilizzando un modello di apprendimento automatico addestrato sui dati satellitari della NASA di vento, umidità, temperature superficiali e indice di vegetazione, tutti fattori che promuovono la popolazione di locuste, si sintonizza L.L.O.C.U.S.T per creare una mappa termica delle aree più a rischio di infestazione di locuste.
Attraverso l'uso di un sito Web interattivo, basato sull'intelligenza artificiale e di facile utilizzo, agricoltori, funzionari comunali e aziende possono visualizzare i rilevamenti e le previsioni del modello sotto forma di una mappa interattiva.
Come hanno affrontato questa sfida
Il team ha sviluppato un modello di apprendimento automatico che è stato addestrato sui dati satellitari di vento, umidità, temperature superficiali e indice di vegetazione dai satelliti SMAP e Terra (strumento MODIS, strumento ASTER).
Il prodotto finale viene mostrato come una mappa di un sito Web che aiuta a rilevare e valutare i livelli di rischio attuali e a prevedere le invasioni di locuste in un luogo e un'ora.
Il progetto L.L.O.C.U.S.T. è fondamentale per mantenere una sicurezza alimentare. Quando sciamano, le locuste possono consumare quanto cibo potrebbero consumare 35.000 persone al giorno. Nel contesto dei luoghi in cui le locuste sono più abbondanti, come l'Africa orientale e l'India settentrionale, tale danno minaccia il sostentamento della gente comune e delle imprese.
Quando inizia la stagione riproduttiva delle locuste, gli agricoltori vengono avvisati dell'avvicinarsi di uno sciame solo quando si trovano faccia a faccia con esso sui loro terreni agricoli. Questo lascia loro poco tempo per prepararsi, l'unica opzione poi è quella di guardare le locuste consumare la loro unica fonte di reddito.
Tuttavia, utilizzando L.L.O.C.U.S.T., gli agricoltori non solo sono in grado di vedere se sono o meno a rischio di infestazione di locuste, ma possono anche ottenere previsioni meteorologiche su dove è più probabile che la locusta volerà dopo.
Per utilizzare L.L.O.C.U.S.T. è sufficiente specificare la propria posizione geografica. Da lì, L.L.O.C.U.S.T. estrarrà immagini satellitari dai satelliti Terra (strumento MODIS, strumento ASTER) e SMAP della NASA, esaminando in particolare l'umidità, l'umidità del suolo, la temperatura, l'altitudine e la vegetazione. Questi dati verranno quindi inseriti nel modello, generando una mappa di calore che mostra la probabilità che lo sciame si formi intorno alla posizione corrente.
Oltre a ciò, L.L.O.C.U.S.T. utilizza anche i dati del vento di NOAA per calcolare dove molto probabilmente andrà uno sciame. Questa parte del progetto si basa sul fatto che gli sciami di locuste volano con il vento e non volano in giro a caso. Questo permette di proiettare un'area di sciamatura, simile a come un meteorologo potrebbe prevedere il percorso di un uragano.
Insomma, il progetto L.L.O.C.U.S.T. spera di dare un'idea dello sciame di locuste, dando ai funzionari della città più tempo per pianificare e preparare un'infestazione, rafforzare l'agricoltura locale e dare agli agricoltori la possibilità tanto necessaria per proteggere i loro raccolti, risparmiando miliardi a lungo termine.
Come hanno sviluppato questo progetto, cosa ha ispirato la squadra a scegliere questa sfida?
Con il cambiamento climatico che crea discordia atmosferica e gli incendi che infuriano in tutto il mondo, il team sapeva che il miglior uso delle competenze sarebbe dovuto essere l'addestramento e l'applicazione di un modello ML per rilevare i pericoli.
Tuttavia, durante la ricerca sui pericoli su cui focalizzare il progetto, il team ha appreso che molti dei pericoli "comuni" che appaiono nelle notizie hanno già avuto una ricerca ampia e ben documentata. Questo li ha portati a voler scegliere un pericolo che non fosse mainstream, un pericolo che è sempre più rilevante ma sotto il radar dei media e della stampa. Ciò ha ristretto la ricerca direttamente alle locuste, che nel corso della tarda primavera fino all'inizio dell'estate, hanno devastato l'Africa orientale, la penisola arabica e l'India settentrionale.
Secondo alcune stime, nella sola Africa orientale si sono verificati danni per oltre 8,5 miliardi di dollari, causando l'insicurezza alimentare di 20 milioni di persone, rispettivamente secondo la Banca Mondiale. Tuttavia, c'è stata poca copertura da parte della stampa sul tema, seduta all'ombra del COVID-19. La cosa più allarmante è che lo scorso anno c'è stato un aumento di 8.000 volte nella riproduzione delle locuste, causato da rare condizioni che i cambiamenti climatici hanno amplificato.
Qual è stato l' approccio allo sviluppo di questo progetto?
Il loro approccio al progetto può essere suddiviso in tre fasi.
Il primo passo è stato quello di ottenere i dati necessari per addestrare il modello. Per fare ciò, hanno creato una pipeline di dati che ha estratto le immagini satellitari dai server di visione del mondo della NASA. I satelliti specifici da cui hanno estratto sono i satelliti Terra (strumento MODIS, strumento ASTER) e SMAP della NASA. Da lì, hanno effettuato la preparazione dei dati sulle immagini satellitari, essenzialmente ritagliandole alle coordinate specifiche delle posizioni dello sciame conosciute (le posizioni dello sciame sono state prese dal Locust Hub della FAO). Inoltre, hanno creato uno script Python che creerà coordinate casuali in aree che non hanno infestazioni di locuste per rafforzare meglio il modello.
Il secondo passo nel loro approccio è stato l'addestramento del modello di previsione del rischio e la creazione della previsione "meteo" dello sciame. Per allenarsi, hanno prima scaricato, elaborato e archiviato il set di dati da varie fonti e dati satellitari. Hanno archiviato i valori dei pixel come valori esadecimali nel dataframe per una facile memorizzazione e manipolazione, quindi hanno convertito i valori esadecimali in valori RGB e li abbiamo utilizzati per l'addestramento del modello e per i test.
Nella terza fase, hanno concentrato i loro sforzi sull'essere in grado di visualizzare in modo conciso e chiaro le informazioni del loro modello e l'output di previsione. Per fare ciò, hanno creato un sito Web che mostra i loro risultati su una mappa multistrato. Il sito è progettato per consentire agli utenti di alternare vari livelli e visualizzare sciami di locuste insieme a dati ausiliari approfonditi come densità di popolazione e terreni agricoli. Hanno adattato un modello di previsione del vento esistente per prevedere i futuri modelli di movimento delle locuste e visualizzarli in modo chiaro.
Quali strumenti, linguaggi di codifica, hardware, software hanno utilizzato per sviluppare il questo progetto?
Hanno utilizzato Python per creare una pipeline di dati, che li ha consentiti di raccogliere, manipolare e archiviare immagini satellitari utilizzando librerie come Pandas e Raster.io. Dopo aver ottenuto i dati nel formato giusto, hanno quindi utilizzato la libreria di apprendimento automatico Sklearn per creare un modello per prevedere se una locusta sarebbe stata presente in un dato luogo e momento date le caratteristiche come l'umidità del suolo, la temperatura, l'umidità, l'elevazione e la vegetazione.
Poiché il download e l'elaborazione delle immagini satellitari in formato TIFF richiedevano molto tempo e risorse di calcolo, hanno deciso di raccogliere una discreta quantità di dati per i luoghi in cui è avvenuta l'invasione delle locuste e anche per i luoghi in cui non è avvenuta. Dopo l'addestramento, il modello Random Forest e il modello SVC hanno avuto un'accuratezza del 100% durante i test (si sospetta che ciò sia dovuto alla quantità limitata di dati che avevamo circa 200 campioni per i test). Quindi questo modello è stato utilizzato dall'app frontend per visualizzare la probabilità di un'infestazione di locuste in una determinata posizione.
La parte visiva del frontend del sito Web è stata creata utilizzando la libreria di mappatura Leaflet.JS. La simulazione del vento è stata creata utilizzando una versione pesantemente modificata della libreria di rendering del vento per proiettare i futuri modelli di movimento degli sciami di locuste. Le mappe di calore sono state visualizzate sulla mappa utilizzando Leaflet.Heat per mostrare la densità di popolazione e le loro previsioni su dove si sarebbero potuti verificarsi focolai di locuste.
Quali problemi e risultati ha avuto la squadra?
Una delle maggiori sfide incontrate dal team è stata ottenere e formattare i dati in modo utilizzabile, identificando i punti dati più utili per mantenere gestibili le dimensioni del set di dati. In totale, hanno trascorso più di 12 ore a eseguire il debug e a capire come estrarre in modo efficiente le immagini satellitari dal database della visione del mondo della NASA. Oltre a ciò, nessuno era preparato a quanto sia difficile lavorare con le immagini satellitari. Sebbene alcuni membri del team abbiano lavorato alla creazione di modelli basati su immagini, immagini satellitari e molti formati oscuri e stranieri in cui si trovano, non solo è stato atrocemente difficile lavorare con il team, ma è costato molto tempo al team.
Un'altra sfida è stata non scoprire un bug con il sito Web EOSDIS Worldview fino a quando non è stato possibile ottenere istantanee di livelli in cui dati sono mensili, 6 giorni, 8 giorni...
Hanno anche avuto difficoltà a modificare il modello del vento per gli scopi predittivi, ma alla fine sono riusciti a creare un potente strumento di visualizzazione che può essere utilizzato sia da cittadini che da ricercatori.
Volevano aggiungere una funzionalità per prevedere il costo economico che un certo sciame di locuste potrebbe causare in base al suo percorso previsto. Tuttavia, sono stati in grado di creare dati di simulazione sulla mappa solo per mostrare quella caratteristica perché avevanoo limiti di tempo.
Come hanno utilizzato i dati dell'agenzia spaziale in questo progetto
Hanno richiesto immagini dai satelliti Terra e SMAP della NASA in base a coordinate specifiche dal set di dati Locust Swarm (fornito dalla FAO) e quindi utilizzando Raster.io, hanno salvato i dati binari ricevuti in un file TIFF. Hanno quindi estratto i valori di pixel alle coordinate specifiche degli sciami di locuste e della posizione non sciame come valore esadecimale. Hanno quindi convertito questi valori in RGB per un ulteriore utilizzo durante l'addestramento e i test.
Si sono utilizzati i seguenti livelli:
SMAP_L4_Analyzed_Surface_Soil_Moisture (Soil_Moisture)
ASTER_GDEM_Color_Index (Elevazione)
SMAP_L4_Soil_Temperature_Layer_1 (Temperatura del suolo)
MODIS_Terra_NDVI_8Giorno
Video Link: https://youtu.be/RI2gLdX9DAE
Live Website: https://determined-keller-5cbae8.netlify.app/
Project Code
https://github.com/kevin200617/Project-L.O.C.U.S.T/