Silent Watcher AI (SWAI) is an interactive project that combines AI with NASA’s open datasets to classify and explore exoplanets. It makes cutting-edge space science accessible through an intuitive web interface, fostering curiosity, learning, and engagement in the search for new worlds beyond our solar system.
![]() |
![]() |
Performing 'A World Away: Hunting for Exoplanets with AI' from NASA Spaceapps Challenge 2025
The project focuses on building a machine learning model capable of classifying exoplanets and making the results accessible through an interactive web application.
The application is designed to run on the web for accessibility.
It uses real scientific data provided by NASA and Exoplanet Archives.
The machine learning model performs supervised classification of planetary candidates, confirmed planets, and false positives.
The web interface enables users to test new data points in real time, visualize outputs, and engage with the classification process.
General Specifications:
You may (but are not required to) consider the following:
Target audience: students, researchers, and space enthusiasts interested in exoplanet science.
Your tool could:
• Provide an interactive web interface to classify exoplanets in real time using NASA datasets (Kepler, K2, TESS).
• Show how exoplanets are detected and confirmed, focusing on light curves and transit methods.
• Visualize the difference between candidate planets, confirmed planets, and false positives.
• Explain the role of NASA’s Exoplanet Exploration Program and link to official NASA resources.
• Offer simple educational visualizations to make data science and astronomy accessible.
• Optionally include extra interactive features (e.g., data input by users, exploration of model accuracy, or quizzes to reinforce learning).
For datasets and resources, NASA’s Exoplanet Archive and mission data are integrated directly into the project.
IDE's & languages:
The algorithm processes tabular input data derived from NASA’s Exoplanet Archive, which includes parameters such as:
- Orbital period
- Transit duration
- Radius ratio (Rp/Rs)
- Impact parameter
- Signal-to-noise ratio (SNR)
- Stellar effective temperature
After preprocessing and feature normalization, the model is trained to predict whether a candidate is likely to be:
- Confirmed Planet
- Candidate
- False Positive
The classifier outputs both the predicted label and a confidence score, representing the model’s estimated probability of the prediction being correct. This score is displayed in the interface as a “trust” or “confidence” percentage.
The trained model is serialized and stored as an artifact for later inference within the Streamlit web interface, allowing users to input new observation parameters and instantly receive classification results.
Warning
To run the project locally you must have Python 3.9+ installed and set up a virtual environment. All other dependencies can be installed via pip install -r requirements.txt.
How to run:
1 - Clone or download the repository.
git clone https://github.com/LLuisPP/Hunting_for_Exoplanets_with_AI.git swai
cd swai-exoplanets
2 - Create a virtual environment and install dependencies:
python3 -m venv venv
source venv/bin/activate # Linux / Mac
venv\Scripts\activate # Windows
pip install -r requirements.txt
Fetch data from NASA resource site: Link
python3 src/fetch_data.py
Train the model:
python3 src/train_model.py
3 - Run the app locally (if you don’t want to use the hosted version):
streamlit run src/app.py
4 - Open your browser at localhost shown in terminal:
http://localhost:8501
5 - Or simply access the deployed version directly on Render:
SWAI Explore Exoplanets (Hosted on Render) -> SWAI_static_web
Or using QR:
Python & package manager
https://www.python.org/ | https://pip.pypa.io/
Virtual environments
https://docs.python.org/3/library/venv.html | https://python-poetry.org/
Jupyter Notebook / Lab
https://jupyter.org/
Data analysis
https://pandas.pydata.org/ | https://numpy.org/
Machine Learning
https://scikit-learn.org/ | https://www.tensorflow.org/ (opcional)
Visualization
https://matplotlib.org/
Web app (frontend ligero + backend)
https://streamlit.io/ | https://flask.palletsprojects.com/ (alternativa)
Model persistence (opcional)
https://joblib.readthedocs.io/en/latest/ | https://docs.python.org/3/library/pickle.html
Linting & formatting
https://docs.astral.sh/ruff/ | https://black.readthedocs.io/
Gimp for image edit https://www.gimp.org/
AI image animation https://magi.sand.ai/
Video to gif tool https://ezgif.com/video-to-gif
Documentation & Open-Source Principles
- https://k12cs.org/navigating-the-practices/
- Principle of Citation/Code Use: Incorporate existing code, media, and libraries into original programs while citing their source.
- Use of Digital Tools: Employ digital tools (e.g., computers) to analyze very large datasets for patterns and trends.
Scientific Data & Exoplanet Context
- https://exoplanetarchive.ipac.caltech.edu/
- https://es.wikipedia.org/wiki/Planeta_extrasolar
- https://es.wikipedia.org/wiki/M%C3%A9todos_de_detecci%C3%B3n_de_planetas_extrasolares
- https://www.esa.int/Science_Exploration/Space_Science/Cheops/How_to_find_an_exoplanet
Hackathon & NASA Resources
https://github.com/LLuisPP/Hunting_for_Exoplanets_with_AI/blob/main/SWAI.pdf














