Tag: NEO e dintorni

Analisi dei NEA – Conclusione

Concludiamo gli articoli sui NEA con un’ultima analisi: l’obiettivo è quello di presentare un modello statistico Y = M(X) in grado di classificare i NEA in una delle quattro classi: Aten, Amor, Apollo ed Atira. Per una breve descrizione del funzionamento degli algoritmi presenti si veda anche l’articolo precedente qui.

  • dati di input: componenti (semiasse maggiore, perielio, afelio) del dataset
  • dati di output: componente (classe di appartenenza) del dataset.

La classe è stata codificata in un numero secondo il seguente schema:

Classe NEACodifica numerica
per l’algoritmo di ML
Amor0
Apollo1
Aten2
Atira3

Vengono presentati i risultati di tre modelli:

  • Decision Tree
  • K-Neighbors
  • Random Forest

Decision Tree: la descrizione del modello è la stesso descritto in precedenza usato per la classificazione in base alla pericolosità.

Diagramma generato dall’autore in linguaggio Python con le librerie scikit-learn

Risultati Decision Tree: la matrice di confusione ha una dimensione 4 x 4 prodotto cartesiano delle quattro classi. Il contenuto della diagonale principale indica il numero di NEA che il modello ha correttamente identificato con la stessa classe fornita dal dataset iniziale. Il contenuto della matrice nella posizione (i, j) con i ≠j rappresenta il numero di NEA appartenente alla classe i ma che il modello identifica erroneamente di classe j. Il modello identifica correttamente tutti i NEA di classe Atira (codice = 3 nella matrice), mentre sbaglia completamente a classificare I NEA di classe Aten (codice = 2 nella matrice) Non è possibile disegnare il diagramma di colore in quanto il modello ha tre variabili di ingresso e quattro possibili valori di uscita e non è rappresentabile su un piano o nello spazio.

K-Neighbors: la descrizione del modello è la stesso descritto in precedenza usato per la classificazione in base alla pericolosità. Come in precedenza viene dapprima stimato il valore di K ottimale usato nel modello predittivo: sono stati valutati dieci classificatori K-Neighbors (K \in [1 \dots 10] ) e selezionato il valore di K per il quale l’accuratezza è massima. Il modello ottimale si ottiene per K = 9.

Risultati K-Neighbors: questo modello presenta un’accuratezza migliore fra quelli analizzati per questa classificazione: i risultati sono superiori sia rispetto al modello precedente che al successivo.

Random Forest: questo classificatore implementa un algoritmo che combina l’output di più strutture ad albero decisionali per raggiungere un unico risultato. Si costruisce una serie di strutture ad albero decisionali e ogni struttura ad albero è un insieme composto da un campione di dati tratto da un set di addestramento con sostituzione. La classificazione avviene a maggioranza: la variabile categoriale più frequente. Stessi campioni del dataset possono appartenere a diversi sottoinsiemi di analisi.

Gli algoritmi di Random Forest hanno tre iperparametri principali, che devono essere impostati prima dell’addestramento.

  • dimensione dei nodi
  • numero di strutture ad albero
  • numero di caratteristiche campionate
Diagramma generato dall’autore in linguaggio Python con le librerie scikit-learn

Risultati Random Forest: l’algoritmo offre un’accuratezza intermedia fra quelli analizzati: anch’esso riesce a classificare i NEA di tipo Atira e Amor ma classifica erroneamente tutti i NEA di tipo Apollo.

Il modello K-Neighbors presenta la migliore accuratezza, riuscendo a classificare correttamente una buona percentuale di NEA di tipo Aten.

Per ottenere risultati ancora migliori si può pensare di introdurre modelli più complessi utilizzando algoritmi di Deep Learning e reti neurali (la cui descrizione ed utilizzo esula dagli scopi di questo articolo)


Si conclude l’analisi mostrando I passaggi dei NEA pericolosi negli anni passata e futuri: ove presente viene indicato anche il diametro medio dell’oggetto celeste e la distanza minima di passaggio espresso in distanza media Terra-Luna (384.400 Km).

Molti oggetti nel passato recente sono transitati a distanza molto ravvicinata da noi: nel 2020 l’asteroide VT42020 VT4 è transitato a solo 0,01754 volte la distanza Terra-Luna. Nel 2029 è previsto l’incontro con 99942 Apophis, un NEA pericoloso di cui molto si è discusso: allo stato attuale però la sua pericolosità è stata declassata.

Diagramma generato dall’autore in linguaggio Python con le librerie scikit-learn
Diagramma di avvicinamento di Apophis nel 2029
generato dall’autore

L’incontro avverrà nell’Aprile 2029 e data l’elevata numerosità dei NEA (si suppone ce ne siano ancora migliaia da catalogare) l’incontro o il passaggio ravvicinato della Terra con un NEA è un evento normale.

Mediamente ogni anno ci sono circa 1600 passaggi ravvicinati di NEA alla Terra: nella prima settimana di Gennaio 2024 la Terra ha incontrato 24 NEA.

Dal database del CNEOS si evidenzia che quest’anno la Terra incontrerà ben 24 NEA catalogati come pericolosi: il più grande di essi è NK42013 di classe Apollo con un diametro minimo stimato di 460 metri che passerà ad una distanza di 8.5 volte la distanza media Terra-Luna (circa 3.300.000 Km).

Diagramma generato dall’autore in linguaggio Python con le librerie scikit-learn

NK42013 è un asteroide comunque con le dimensioni molto piccole in confronto a quello che 65 milioni di anni fa fu la concausa che portò all’estinzione dei dinosauri.

Domanda: supponete che un asteroide on un diametro compreso fra 10 e 20 Km è destinato ad entrare in atmosfera e ad impattare sulla Terra. Avete a disposizione solo una settimana prima dell’incontro. Cosa fareste nel tempo rimasto?

Bisogna preoccuparsi?
Fonte: https://stock.adobe.com/it/

Bibliografia

  • Hazardous Asteroid Classification with Machine Learning using Physical and Orbital, Arjun Ramakrishnan
  • BBC Scienze – Dicembre 2023, Gennaio 2024
  • OpenSpace Datasets for Asteroids and Comets

Analisi dei NEA – Parte II

Dopo aver introdotto l’argomento nel precedente articolo, procediamo alla costruzione di due sistemi di classificazione con supervisione dei NEA.

L’obiettivo è di classificare i NEA per:

  • pericolosità (PHA, non PHA)
  • tipo (ATE, APO, AMO ed IEO)

A partire dal dataset iniziale, per entrambe le classificazioni vengono eseguiti i seguenti passi:

  • si filtra il dataset mantenendo le componenti X sono necessari alla classificazione:
    • moid, H per la classificazione di pericolosità
    • a, q, Q per la classificazione di tipo
  • si identifica la componente Y di stima (oggetto della stima):
    • per la classificazione di pericolosità (PHA)
    • classe per la classificazione di tipo
  • si sostituisce l’etichetta della componente di stima con una enumerazione, per ognuna delle due analisi.
  • si normalizzano i dati in un’unica scala commensurabile uguale ad ogni caratteristica: una distribuzione N(\mu = 0, \sigma = 1)
  • si suddivide il dataset in due parti:
    • X_{train} = 40\% del dataset X usato come training per l’algoritmo
    • X_{test} = 60\% del dataset X usato come test e validazione dell’algoritmo.
    • Y_{train} = 40\% del dataset Y usato come training per l’algoritmo.
    • Y_{test} = 60\% del dataset Y usato come test e validazione dell’algoritmo: costituisce la baseline di riferimento.
  • si costruisce il modello matematico Y_{train}= M (X_{train})
  • Si applica il modello M per stimare Y_{pred} = M (X_{test})
  • Si valuta la bontà del modello confrontanto Y_{pred} con Y_{test} costruendo la matrice di confusione
  • Si calcolano i principali indici statistici (metriche) di validazione: precisione, accuratezza ed F1.

Le tre principali metriche sono rappresentate da:

  • accuratezza: che risponde alla domanda quanto le predizioni sono vere?
  • precisione: che risponde alla domanda fra tutte quelle positive/negative, quante sono vere?
  • richiamo: ovverora tutte quelle che dovrebbero essere previste come vere, quante lo sono veramente? (errore del primo tipo)
  • indice F1: misura statistica che combina richiamo e precision.

L’obiettivo è presentare un modello statistico Y = M (X) in grado di classificare i NEA in due classi: NEA pericolosi (PHA) o NEA non pericolosi (non PHA). Vengono presentati i risultati di tre modelli:

  • Support Vector Machine (SVM)
  • K-Neighbors
  • Decision tree

Per maggiori dettagli riguardo il principio di funzionamento di ogni modello si rimanda ai link visualizzati nei diagrammi presenti nelle figure sottostanti.

Modello SVM
Fonte: https://www.javatpoint.com/
Modello K-Neighbors
Fonte: https://www.kdnuggets.com
Modello Decision Tree
Fonte: https://www.kdnuggets.com

SVM: questo classificatore separa i punti usando un iperpiano con il massimo margine di separazione. L’algoritmo lavora in maniera iterativa individuando l’iperpiano ottimale (massimo) che separa il dataset in due zone entro i quali i nuovi dati verranno classificati minimizzando l’errore.

Diagrammi generati dall’autore in linguaggio Python con le librerie scikit-learn

Risultati SVM: Il modello possiede un’accuratezza del 96,9232%. Classifica molto bene i NEA della classe PHA, tuttavia presenta poca precisione. La matrice di confusione mostra che il modello presenta molti errori, in particolare sulla diagonale secondaria si evidenzia la presenza di molti falsi positive e falsi negativi. Ci sono 239 NEA che il modello identifica come non pericolosi quando in realtà nel dataset principale lo sono: si tratta di un errore grave, in quanto il modello sottovaluta il problema. Meno rilevante, ma non secondario, è il secondo tipo di errore: il modello identifica come pericolosi 124 NEA che in realtà non lo sono. In entrambi i casi è necessaria un’analisi approfondita con un modello più efficace oppure uno studio approfondito da parte degli astronomi.1 Sulla diagonale principale della matrice di confusione abbiamo il numero dei NEA correttamente identificati come PHA (598) oppure non PHA (10837).

Viene riportato anche il diagramma di colore, dove sulla ascissa viene espresso il moid, sull’ordinate H (magnitudine assoluta). Ogni punto colorato sul grafico rappresenta il valore della componente pericolosità: verde scuro per non PHA, verde chiaro per PHA. Viene disegnato anche l’iperpiano che separa le due classi con i margini massimi: essendo l’iperpiano per definizione una retta, esso non è in grado di dividere in maniera netta ed esclusiva la componente di previsione PHA, introducendo gli errori di valutazione evidenziati precedentemente.

K-Neighbors: questo classificatore usa il concetto di prossimità per fare previsioni sul raggruppamento a cui appartiene il dato in esame basandosi sull’ipotesi che punti ‘simili’ possono trovarsi vicini tra loro. L’assegnazione avviene per maggioranza (o per superamento di una soglia percentuale) analizzando i K punti più vicini ad ogni element del dataset. Serve quindi introdurre il concetto di distanza e definire una metrica per l’assegnamento della classe. Ci sono diverse metriche che si basano sulle seguenti definizioni di distanza:

  • Distanza di Hamming
  • Distanza di Manhattan
  • Distanza Euclidea (usata in questa analisi)

K rappresenta il parametron di prossiimità in base al quale cambia il numero dei vicini e quindi, l’associazione con la classe di appartenenza e la bontà del classificatore. Nel presente lavoro sono stati valutati dieci classificatori KNeighbors (K \in [1 \dots 10] ) e selezionato il valore di K per il quale l’accuratezza è massima. Il modello ottimale si ottiene per K = 5.

Risultati K-Neighbors: l’accuratezza di questo modello è del 99,7796%. Ci sono meno falsi positivi e falsi negativi. Solo 16 NEA vengono classificati come non pericolosi mentre in realtà lo sono. Il diagramma di colore mostra le due regioni di classificazione con la linea di separazione: la separazione non può essere lineare ma segue un percorso a zigzag perchè dipende dal concetto di associazione di prossimità calcolato punto per punto.

Albero decisionale: questo classificatore genera un albero così costituito:

  • ogni nodo rappresenta un attributo
  • ogni diramazione una regola di decisione basata su una metrica
  • ogni foglia un risultato (previsione)

L’algoritmo parte dalla radice e partiziona il dataset in funzione del valore di un attributo e procede in maniera iterativa: il processo è simile al procedimento decisionale dell’essere umano. Le principali metriche utilizzate per le definizioni di attributo ed assegnamento dei nodi (le regole di decisione ad ogni livello) si basano sulla definizione e quantità di informazione. Ci possono usare diverse metriche per quantificare l’informazione:

  • Information Gain (si basa sulla qunatità di entropia)
  • Gain Ratio (si basa sulla preferenza)
  • Gini Index (si basa su concetto di probabilità ed è la metrica usata in questa analisi)
Diagrammi generati dall’autore in linguaggio Python con le librerie scikit-learn

Risultati Albero decisionale: l’accuratezza di questo modello è del 99,7796%. Il modello identifica correttamente lo stesso numero di NEA pericolosi e non (diagonale principale) ma sbaglia a classificare lo stesso numero complessivo di NEA. C’è una differenza principale rispetto al modello KNeighbors: il numero di NEA identificati erroneamente come non pericolosi quando in realtà essi lo sono (errore peggiore), sono un numero più basso quindi il modello è considerato leggemente migliore. Il diagramma di colore mostra le due regioni di classificazione le linee di separazione associate ad ogni livello di decisione dell’albero.

I modelli KNeighbors e Decision Tree presentano la migliore accuratezza, tuttavia il secondo fornisce i risultati migliori in quanto riesce a minimizzare il numero NEA realmente pericolosi ma erroneamente catalogati come NON pericolosi.

(continua)


Bibliografia

  • Hazardous Asteroid Classification with Machine Learning using Physical and Orbital, Arjun Ramakrishnan
  • BBC Scienze – Dicembre 2023, Gennaio 2024
  • OpenSpace Datasets for Asteroids and Comets
  1. Prendere decisioni avventate esclusivamente sulla base dei risultati ad un modello di A.I. senza ulteriori analisi di un essere umano può portare a decisione errate o conseguenze gravi ↩︎

Analisi dei NEA – Parte I

I Near Earth Object (Near Earth Object) sono corpi rocciosi (asteroidi e comete) costituiti dai detriti rimasti dalla formazione del Sistema Solare che orbitano intorno al Sole: il loro principale interesse scientifico riguarda la composizione in quanto ci rivelano la chimica di 4,6 miliardi di anni fa. Essendo le loro orbite molto caotiche, anche una piccola perturbazione gravitazionale come un passaggio ravvicinato con un altro oggetto celeste è in grado, sul lungo periodo, di cambiare la loro traiettoria fino ad intersecare l’orbita terrestre.

I NEA (Near Earth Asteroid), oggetto del presente articolo, sono una particolare sottoclasse dei NEO a cui appartengono solo asteroidi. La pericolosità dei NEA inoltre è motivo di interesse non trascurabile anche se asteroidi con diametri piccoli hanno una grossa probabilità di bruciare durante l’ingresso in atmosfera terrestre: un eventuale collisione con un oggetto di 1 Km di diametro, per esempio, può provocare danni ingenti ad un’intera area metropolitana. Per prevenire  situazioni del genere ci sono programmi ESA e NASA che osservano il cielo alla scoperta di nuovi oggetti (si pensa che ce ne siano ancora migliaia da scoprire) per migliorare le conoscenze sulle loro orbite e individuarne la pericolosità.

Il  CNEOS classifica i NEA nelle seguenti quattro classi:

  • Amor: questi asteroidi hanno un’orbita completamente esterna a quella terrestre ma un perielio inferiore a 1.3 AU. Sono così chiamati dal loro capostipite familiare, ovvero 1221 Amor, scoperto da Eugene Delporte in 1932.
  • Apollo: questi asteroidi hanno un semiasse maggiore più grande di quello terrestre. Sono così chiamati dal loro capostipite familiare, ovvero 1862 Apollo. L’oggetto più grande è 1866 Sisyphus con un diametro di 848 km. Il meteorite che si disintegrò sopra i cieli di Chelyabinsk apparteneva a questa famiglia. Alcuni di questi oggetti sono classificati come pericolosi.
  • Aten: questi asteroidi hanno un semiasse maggiore più piccolo di quello terrestre. Sono così chiamati dal loro capostipite familiare 2062 Aten, un oggetto con un diametro di 1,1 Km scoperto nel 1976. Alcuni di questi oggetti sono classificati come pericolosi: il più grande ad oggi è 3554 Amun con un diametro di 3,3 Km.
  • Atira: questi asteroidi hanno un’orbita interamente contenuta entro l’orbita terrestre. È il gruppo meno numeroso con apena 32 oggetti. Sono così chiamati dal loro capostipite familiare 163693 Atira scoperto nel 2003.

I NEA che posso portare un potenziale impatto con il nostro pianeta sono classificati come pericolosi (Potentially Hazardous Asteroids – PHA). Tecnicamente vengono definiti pericolosi i NEA con:

  • distanza minima di intersezione orbitale è inferiore a 0.05 UA (moid < 0.05)
  • magnitudine assoluta inferiore a 22 (H < 22)

Ci sono circa 2000 oggetti in questo gruppo, la maggior parte appartengono alla classe Apollo.

L’uso di modelli di Machine Learning si rivela molto utile per aiutare il lavoro degli astronomi nella classificazione di questi oggetti celesti sia in base alla pericolosità che alla classe di appartenenza.

Si tratta di un esempio di algoritmi per la classificazione con etichette applicato al campo dell’astronomia.

Per quanto riguarda la seguente l’analisi verranno utilizzati tre distinti algoritmi per l’analisi PHA:

  • K-Neighbors
  • Decision Tree
  • Random Forest

Per la classificazione del gruppo di appartenenza (Aten, Apollo, Aten ed Atira) verranno utilizzati i seguenti due algoritmi:

  • K-Neighbors
  • Decision Tree

Il dataset di input è liberamente scaricabile dal sito del CNEOS. Tramite un’interfaccia web è possible selezionare la lista le caratteristiche degli oggetti interessati all’analisi: nel nostro caso le quattro classi di oggetti NEA (esclusi oggetti cometari) con i principali attributi (caratteristiche e parametri orbitali).

Si inizia con un’esplorazione  generica dei dati per:

  • eliminare dal dataset i valori incompleti
  • rimuovere le colonne inutili all’analisi (esempio gli indici BV, UB)
  • rimuovere le colonne con valori nulli (H, diametro, classe)
  • rinominare le classi orbitali (0,1,2,3 al posto di AMO, ATE, APO ed IEO)
  • rinominare il tipo di NEA (PHA, non PHA) con una codifica binaria

Si ottiene quindi un’idea generale del dataset. Si procede quindi alla partizione dell’insieme per classe e tipo e si visualizzano graficamente le caratteristiche comuni (numerosità complessiva e per tipo, percentuale di PHA, …) come riportato nei grafici seguenti.

Ci sono 33736 oggetti NEA, circa il 7% dei quali è classificato PHA: i NEA hanno un diametro medio di 1,3 Km (esclusi quelli per i quali questo campo non è valorizzato). Gli asteroidi PHA hanno un mediamente un diametro un poco più piccolo. Dato che gli asteroidi non hanno una forma sferica ma sono generalmente irregolari, il valore del diametro riportato nel dataset si intende un diametro equivalente che, eventualmente può anche essere stimato dalla magnitudine assoluta H ed albedo, oppure da alcune tabelle di confronto del CNEOS. Ovviamente se manca anche solo di uno dei due fattori la stima è impossibile.
La classe Apollo è la più numerosa, seguita dagli Amor, inoltre il numero di NEA scoperti è costantemente cresciuto negli ultimi anni, ma molti di essi (si stima migliaia) sono ancora in attesa di essere scoperti. Il gruppo più piccolo e più giovane (Atira) contiene solamente 32 elementi.
La classe Apollo contiene il maggior numero di oggetti pericolosi (piu di 2000) seguita in percentuale dagli Amor.
Dalla distribuzione delle dimensioni, più grande è l’oggetto, minore è la sua numerosità e quindi anche la probabilità che possa eventualmente causare un impatto sul nostro pianeta. Si stima che un oggetto dal diametro maggiore di 10 Km ha una frequenza di impatto di un singolo evento ogni 50 milioni di anni, mentre un oggetto dal diametro compreso fra 30 metri e 100 metri ha una frequenza di impatto di un evento ogni 500 anni.

L’analisi dei dati prosegue con il disegno dei diagrammi di dispersione dei principali parametri orbitali: si tratta di grafici in cui i valori di due variabili sono riportati su due assi cartesiani e l’aggregazione dei punti risultanti indica il livello di correlazione o meno tra tali variabili. Ecco i diagrammi che riportano:

• eccentricità vs diametro
• semiasse maggiore vs diametro
• perielio vs moid
• semiasse maggiore vs eccentricità

ed i diagrammi di distibuzione della densità dei parametri orbitali dei NEA per tipo di oggetto e pericolosità. Segue il tracciamento delle orbite di un sottoinsieme di NEA, in particolare sono selezionate le orbite di 50 asteroidi per ogni classe, ovvero 50 * 4 = 200 asteroidi in totale. Le orbite sono state tracciate per integrazione della soluzione a partire dai parametri orbitali e propagando l’orbita per un periodo di un anno.

Per confronto sono riportate anche le orbite della Terra e la posizione del Sole. Un numero maggiore di orbite avrebbe comportato calcoli più lunghi e pesanti, pertanto si è scelto un compromesso: si nota che la distribuzione degli Atira (arancione) è contenuta completamente in quella terrestre mentre gli Amor (viola) completamente esterna (coerente alla definizione).

(continua)

Nota: tutti i diagrammi ed i grafici sono stati realizzati dall’autore con Python ed il framework Jupyter

Bibliografia

  • OpenSpace Datasets for Asteroids and Comets
  • Hazardous Asteroid Classification with Machine Learning using Physical and Orbital, Arjun Ramakrishnan
  • BBC Scienze – Dicembre 2023, Gennaio 2024