For this challenge, we invite you to become "virtual contributors" to the Asteroid Grand Challenge and develop a hypothetical method, concept note or simple prototype that demonstrates how Machine Learning could be used to help us avoid the same fate as the dinosaurs.
Near Earth Object (NEO) is, by definition, any small Solar System body whose orbit brings it into proximity with Earth. We’re surrounded by these objects: more than 40.000 asteroids, 1000 comets and some space debris caused by asteroids and space launches. And these NEOs can be a real danger to life on Earth danger that moved NASA to announce the Planetary Defense Coordination Office in January 2016.
Meanwhile, human technology has evolved enough to synthesise some parts of our own intelligence. ‘Deep Learning’ was born as an attempt of making computers understand the world: machines are more powerful than ever, but they still couldn’t think or act like humans do.
A ‘Deep Learning’ network, also called ‘neural networks’, is a way of machine learning based on layers. This technique supposes the fastest-growing field in machine learning, making phenomenons like Artificial Intelligence possible, and we could use that technology to detect NEOs’ trajectories faster than ever.
Deep learning is the fastest-growing field in machine learning. Using TensorFlow’s exponential technology we can design a multilayered model, able to recognize and classify the potential NEO´s that could impact Earth.
TensorFlow offers several advantages as a ‘Deep Learning’ framework; it computes in multiple GPUs, offering faster solutions compared to computing in a single GPU. Besides, it allows to compute or select transfer functions easily and design what is called "black box optimization". In this deep learning orbital experience we are training the orbital network with several Ellipses, Wavefunctions and other Trigonometric Functions.
TensorFlow’s architecture presents another advantage. One of its classes, variables, can be sliced and re-edited with time. It means that the variables can be trained about the uncertainty of the change in orbit classification, offering an advantage against other classification approaches as SVMs
However, Deep Learning has its drawbacks. Many studies about this technology highlighted that, during a high number of iterations, it must be human-supervised in order to be valuable, and the selection of training data has already proven to be key in the learning process.
The Neural Network model include some key steps to consider data to be trained or tested for classification and future predictions:
0. Preparation of data sets. Extract into a CVS the actionable data in order to feed the training progress. Select a balanced dataset for initial learning, including known matched NEOs’ with transfer functions, composition, and date of impact. Monitoring objects is an important task for archive as most accuracy as possible.
1. Execution of NEO recognizing Protocol described in Tom Gehrels, Mildred Shapley Matthews ,A. M. Schumann ‘Hazards Due to Comets and Asteroids’. Tree decision data pruning process that allows raw data to transform into actionable and valuable data that could be implemented in the net as knowledge.
2. FIRST LAYER | Feed the neural net with training data. Given a known NEO, creating a tensor with the data described below, and including a transfer function that matches the known orbit of the NEO, feed the net in order to classify the NEO into the 4 main groups -Apolo, Aten, Amor and IEOs-
3. Execute a Softmax regression with the spectral and physical data about the asteroid, gathering more information about the potential harm the NEO could suppose.
4. SECOND LAYER | Retrain the Neural Network. Given a certain amount of time, the observation of NEO´s might drive into changes. The architecture of TensorFlow allow us to slice and edit those data identifying in the software development designed process the changes, false positives, and how those objects have being trained in each phase.
Managing uncertainty is one of the most important innovations any artificial network could develop. If we settle the variable time inside the net, we however accept the change as part of the design process of classification and recognition. Our value proposition drives not only in TensorFlow architecture use, but in how can we use its speed to train our network faster.
We have designed two types or valuable data -all regarding observation and visual parameters- in order to help with the classification of the NEOs. We have also searched for visual data in order to feed TensorFlow directly, helping the net to visualize the orbits.
For the Neural Net, key data sets as PHA, MOID data and ephemerides have been selected, selecting important parameters as variables.
Classification of asteroid chemical composition analysing its spectral features, including:
Also to determine
This tells us if the object is potentially dangerous, and its probability to impact Earth.
The objective is to achieve a faint limiting magnitude using short integration times and observe a large area of dark sky.
Estimating orbital accuracy is really important; degree of potential hazard can be estimated in terms of probability of impact with Earth. Combination of optical and radar astrometry should be used in critical cases.
Observing network will have to be maintained by a central processing facility. The facility will be responsible for scheduling observing patterns; establishing the mix among search, follow-up, and physical observations; changing observing schedule in response to single-point failures and discover of unusual NEOs; computing orbits and continuously updating the fixed- and moving- source catalogs.
A possibility, which eliminated the problems associated with detection at small solar elongations, is to construct an orbital detection system around Venus.
This intense conceptual software work wouldn’t be possible without a passionate group of people who has made this possible.
As a route during the hackathon challenge, we first starting to set back the reference system with the solar system, having the Sun as the center and setting up the Earth Orbit. We did study average asteroid behaviour; main characteristics and datasets associated to them and, after that, we drove into TensorFlow multilayered architecture and how we could use it for potentially design a classification system.
Also, this ‘solution’ wouldn’t exist without the minds that contributed to the project, one way or another. This idea started from a single mind, and we couldn't have reached a solution without everyone’s job. Everyone that contributed is authored in NASA’s project page, and we would love to thank them all for their work and support.