SpaceCodeChallenge2025
SpaceCodeChallenge2025
SpaceCodeChallenge2025
Hosted by the Space Technology and Astronomy Cell (STAC), IIT Mandi
Welcome to this year’s exciting SpaceCode Challenge! Get ready to explore the wonders of computational
astronomy as you tackle the challenges we’ve prepared for you. The competition consists of three main computational
problems that will test your understanding of the code behind the exostars and pulsars. These tasks will require you
to demonstrate your skills in data analysis, algorithm design, and visualization.
This year’s challenge is designed as a 2-day hackathon, where participants will work in teams of two or three to
solve the problems and showcase their solutions. The competition is open to all levels, so whether you’re a beginner
or an advanced coder, you’ll find an opportunity to apply your knowledge and learn something new.
In addition to the computational tasks, we’ve included a set of purely theoretical problems. These problems do
not require computational effort but will challenge your conceptual understanding and creativity. Tackling these
problems could provide you with a slight edge in the competition.
1
Computational Questions
Your task is to analyze the exoplanet data available on the above mentioned website by generating a histogram
plot that shows the number of exoplanets discovered as a function of their orbital time period around their host
stars.
Deliverables:
• A histogram plot showing the distribution of exoplanets’ orbital periods using radial velocity data.
• A detailed analysis addressing the above questions and offering insights into why the distribution shows a
concentration of short-period exoplanets.
• The Python code (or equivalent) used to generate the plot and perform the analysis.
2
Problem 02: Radial Velocity Method for Finding Exoplanets
The Radial Velocity (RV) method is one of the most effective techniques for detecting exoplanets. By observing the
Doppler shifts in a star’s spectral lines, caused by its motion due to an orbiting exoplanet, astronomers can infer the
presence and properties of these planets. The wobble of the star, induced by the gravitational pull of the planet,
leads to periodic shifts in its velocity, observable as changes in the star’s light spectrum.
In this problem, you will work with both synthetic and real radial velocity data. You will generate RV curves
for hypothetical star-exoplanet systems, simulating the dynamics based on provided parameters such as stellar mass,
planetary mass, and orbital period. Additionally, you will analyze real RV data for the star 51 Pegasi, the first
Sun-like star found to host an exoplanet using this method.
This exercise is designed to help you understand the fundamental principles of orbital mechanics and data analysis
in exoplanet detection. You will visualize the generated data, study periodic signals through periodogram analysis,
and interpret key orbital properties such as eccentricity, mass, and orbital period. Through this, you will gain
practical insight into the RV method, a cornerstone of modern exoplanetary science.
Tasks:
1. Create a detailed plot of the radial velocity data with time on the X-axis and the measured radial velocity on
the Y-axis. Represent each data point as a large, filled circle for clarity. Ensure that the plot is well-labeled,
with axis titles, and consider adding gridlines for better readability and accuracy.
2. From the scatter plot, make an initial estimation of the orbital period of the exoplanet. Look for repeating
cycles or patterns in the data that may indicate the periodic motion of the star caused by the gravitational
pull of the orbiting planet.
3. Perform a Lomb-Scargle periodogram analysis to more rigorously estimate the orbital period. Use the following
formula to compute the periodogram:
N
!
1 X
PLS = arg max (RVi cos(ωti ) + RVi sin(ωti ))
N i=1
where RVi represents the radial velocity at time ti , and ω is the angular frequency. Carefully explain the steps
and justify the choice of parameters used in your periodogram analysis.
4. Using the orbital period derived from the periodogram analysis, fold the radial velocity data onto a single
orbital cycle. This requires calculating the phase of each observation relative to the period. Afterward, plot
the folded radial velocity curve, showing the periodic motion of the star, and discuss any noticeable trends or
noise present in the data.
Tools:
Use Python and the SciPy library for periodogram analysis.
Deliverables:
• Scatter plot of time vs. radial velocity with large filled circles for each data point.
• Initial estimate of the orbital period based on the scatter plot.
• Lomb-Scargle periodogram showing the estimated orbital period, with a clear explanation of the method and
parameters used.
• Folded radial velocity curve, plotted using the orbital period obtained from the periodogram analysis.
3
Problem 03: Pulsars in Deep Space
Pulsars are highly magnetized, rotating neutron stars that emit beams of electromagnetic radiation from their
magnetic poles. This radiation is observable from Earth only when the beam of emission is directed toward us,
creating a pulsed appearance. Often referred to as cosmic lighthouses, pulsars provide invaluable insights into the
fundamental physics of neutron stars, the interstellar medium, and even serve as cosmic clocks for testing general
relativity.
In this challenge, your task is to develop a classifier that separates real astronomical signals originating from
pulsars from man-made radio frequency interference (RFI). The astronomical signals of interest are emitted by
pulsars, which are the ultra-dense remnants of exploded stars. However, these signals are often obscured or mimicked
by RFI, making the classification task both challenging and critical.
Dataset:
You are provided with two datasets for this challenge:
1. Numerical Features Dataset: A dataset consisting of eight numerical features per sample, extracted from
the pulsar signals. This data set is suitable for traditional machine learning models such as random forests,
support vector machines (SVM), and neural networks.
Testing & Training files for this dataset are available at https://t.ly/6WL6Q and https://t.ly/z6Co_.
2. Image Dataset: A dataset of images representing the raw signal data from which the numerical features were
derived. This data set is particularly suitable for convolutional neural network (CNN)-based classification. The
image dataset can be accessed at the following link:
https://as595.github.io/HTRU1/
Scroll down on the webpage for instructions on how to load the dataset using PyTorch.
Tasks:
1. Data Preprocessing: Load and preprocess both the numerical features dataset and the image dataset. For the
numerical dataset, ensure proper handling of missing values, scaling, and splitting into training and validation
sets. For the image data set, apply necessary transformations, such as resizing, normalization, and batching,
to make it compatible with CNN models.
2. Model Development:
• Use the numerical features dataset to train and evaluate classification models, such as Random Forests,
SVMs, or fully connected Neural Networks.
• For the image dataset, design and train a Convolutional Neural Network (CNN) model to classify pulsar
signals and RFI.
3. Performance Evaluation: Evaluate your models on both datasets using appropriate metrics such as accuracy,
precision, recall, F1 score, and ROC-AUC. Emphasize minimizing false positives (RFI misclassified as pulsars)
while maximizing true positives.
4. Comparison and Discussion: Compare the performance of your models trained in the numerical data set
with those trained in the image data set. Discuss the advantages and limitations of each approach and suggest
scenarios where one might be preferred over the other.
Tools:
• Use Python and libraries such as scikit-learn, PyTorch, or TensorFlow for implementing and training models.
• Explore visualization tools like matplotlib or seaborn to better understand the data and model outputs.
Deliverables:
• Preprocessed datasets, including any code used for data cleaning and transformation.
• Well-documented code for all implemented models.
• A report detailing.
• Visualization of results, including confusion matrices, ROC curves, and feature importance (if applicable).
4
Theoretical Questions
Question: Orbital resonances are not just theoretical. Jupiter’s moons—Io, Europa, and Ganymede are in a 4:2:1
resonance, causing significant tidal heating on Io, making it the most volcanically active body in the solar system.
Just imagine about similar effects which might occur in exoplanetary systems. Two planets orbit a Sun-like star in
a 3:2 mean-motion resonance. The semi-major axis of the inner planet is 0.8 AU.
1. Derive the orbital period of the inner planet using Kepler’s Third Law:
a3
T2 = .
M⊙
5
Submit Your Solutions Here
Submission Guidelines:
Please make sure to follow these simple instructions when submitting your solutions:
1. Submission Link: https://t.ly/_K-pI (Active till 15th January 00:00 hours)
2. Include the data file(s) you worked on (e.g., .csv or .txt file with RV measurements and corresponding times).
3. Attach a .zip file containing all the relevant files for your submission. Rename this as <YourTeamName> SCC.zip.
4. Submit .py files or Jupyter notebooks (.ipynb) for computational tasks with any necessary visualizations.
5. Provide a neat PDF of your theoretical solutions, typed or handwritten (if handwritten, ensure legibility).
6. Include a explanatory document (Word, PDF, or similar) explaining your approach to each task.
7. Number your submissions by question (e.g., <YourTeamName> SCC Q1.ext etc.) for clarity.
Best of Luck!
Wishing you an insightful and thrilling journey through the cosmos.