Projects and Interests

Projects

Carathéodory's Theorem - Interactive Visualizer

Mar 2026 | Live Demo

Any point inside a convex hull in \(\mathbb{R}^2\) can be written as a convex combination of at most 3 of its vertices - this is Carathéodory's theorem. The interactive tool lets you click anywhere inside a convex polygon and instantly decomposes that point into its barycentric coordinates over the minimal triangle of hull vertices. Drag any vertex to reshape the polygon; the decomposition updates live. The page also includes an essay on the theorem, its proof, and why it keeps appearing in LP, SVMs, and sparse approximation.

Variance-Controlled SGD: Adaptive Batch Size via Gradient Noise

Mar 2026 | Project Link | Report

Player compatibility scoring using GNNs

Oct–Nov 2025 | Project Link

NLP Analysis of the Israel-Syria War’s Impact on Gold, Oil, and Financial Markets

Oct–Nov 2024 | ECO318 - Money, Banking and Financial Markets | Project Link

Electricity Consumption Forecasting Using Time Series Analysis

Sept–Nov 2024 | DSE315 - Data Science in Practise | Project Link

Traffic Density Estimation and Vehicle Detection Using YOLOv8

Sept–Nov 2024 | DSE312 - Computer Vision| Project Link

From Scratch

I really like to implement things from scratch,I try out various algorithms, restricting myself only to using NumPy and similar basic standard libraries only.

Transformer

August 2025 | Project Link

I implemented a Transformer model completely from scratch using only NumPy, covering key components like multi-head self-attention, feedforward layers, and positional embeddings. The model stacks multiple Transformer blocks with residual connections and layer normalization. Finally, it projects outputs through a language modeling head, enabling sequence-to-sequence predictions. I am planning to implement more complex architectures from scratch in coming times.

ARIMA

August 2025 | Project Link

This implementation builds an ARIMA (AutoRegressive Integrated Moving Average) model entirely from scratch using only numpy. It avoids high-level libraries like statsmodels, making every step transparent: differencing for stationarity, manual AR and MA term calculations, and likelihood-based parameter estimation.

Paper Implementations

I find great joy in reading academic papers, and trying to implement them ground up.

Isolation Forest

July 2025 | Project Link

We've all learnt and implemented random forest; it's one of the first algorithms we encounter in ML. Most of the time, we strive to find patterns using such algorithms. Another paradigm is anomaly detection - and that's how I came across Isolation Forests. In this project, I wrote the full Isolation Forest algorithm from scratch using NumPy. The model builds binary trees by recursively splitting randomly sampled data to isolate outliers quickly. I used synthetic 2D data (normal + uniform noise), calculated anomaly scores based on average path lengths, and visualized the decision boundaries.

Gravitational Search Algorithm

June 2025 | Project Link

Implemented GSA on the Heterogeneous Truck Fleet Optimization problem. Inspired by evolutionary algorithms introduced in my AI course, I explored GSA - a nature-inspired metaheuristic. I implemented it on the same truck fleet problem to compare its effectiveness with genetic algorithms and MIP.

Heterogeneous Truck Fleet Optimization

DSE316 - Applied Optimization | Project Link