top of page

Some of my works

for such projects, I mainly work in Python and hence most of the projects here would be python or jupyter-notebook based. On the other hand I mainly work with C++ for Competitive programming and C# for game development in Unity.

​

MonaLisa.png

K-means Image Compression/Stylization

Using the Kmeans algorithm, which falls in a class of machine learning with clustering, we can compress images in a way such that the final image has only K colors, where K is a constant we can choose. More examples and the implementation of the algorithm in python can be viewed on github

CentredAt1at32_35DashDottedOrange.gif

Wavefunction time-evolution

Evolves any initial wavefunction inside a 1D box with time. You can set the initial wavefunction using a python function and the boundaries and my program would show how it will evolve in time, conforming to the quantum mechanical rules. Currently, only an infinite potential well of 1D box is simulated, but planning on adding more cases of potentials as well.

more animations and detailed description can be viewed on github

Stormtrooper.png

String Art Calculator

Made a library that can process an image and create string art that resembles the image. It can also print a continuous list of connection points, so anyone in real life can use only one piece of long string, and make connections along nails to make the string art. I am interested in working on making it faster for now, and later creating an actual machine capable of forming physical string art from the connections calculated. More images on github

A stormtrooper helmet outline, n = 151 points.

Physics Collision Engine

A physics engine! also has additional key controls to pause time, move frame by frame, show speed by color gradient, turn gravity on or off, and even pick balls up with mouse! This is still just the initial implementation and finally I want to write it using CUDA so I can handle many more objects in the scene with high framerate. More gifs and details on 
DhruvAhlawat/Physics-Simulations: Libraries for Physics simulation in python using pygame. (github.com)

gravitiy_drop.gif
LogisticCurve.png

Logistic Regression Library

Made a library that can do Logistic regression quickly with vectorization. the class supports both Normalized and Unnormalized Regression training, as well as adding regularization parameters. Also provides ability to graph the loss function.

github link

Course Projects

There were some assignments that I thoroughly enjoyed making, and also helped me learn a lot. The languages used are mainly Python, C++, C, and SML​

Deep learning and ML

Table parsing using pytorch!

paragraph math questions solving using LSTMs

Detecting languange

Resnet and batch normalization implementations

Won first place for my model that detects the language based on a sentence, without using neural networks. Used Naive bayes with multiple training using outputs for correcting incorrect labels in training set.

DhruvAhlawat/A1_Natural_Language_Processing: detects the language a given text is in, out of 12 options (github.com)

implemented resnet in pytorch and experimented with different normalization types for bird classification.​​

DhruvAhlawat/A1_DeepLearning: Resnet implementation for Bird classification (github.com)

Systems

xv6 operating system

built xv6 from ground up during the course COL331 (OS)

learned many things about the architecture like booting procedure, assembly language, implementing threading with multiple processes runnning, paging systems and copy-on-write mechanisms etc. 

CUDA programming 

Rational PL-0 Compiler

This was an assignment that I really enjoyed making. Pl-0 is a type of a programming language that is easy to parse, and has datatypes bool, int and procedures without parameters. We had to also include a datatype of "rational" (not float, it had exact representation instead of approximate, or complete precision). The language supports variable declarations, nested procedures, and recursion with static scoping, and type-checking of expressions. github link

Markdown-to-HTML converter

We had this as the second assignment in the course of programming languages at my university. It was a real challenge, and had to be done without using any automatic parsers or grammar, but solely through our intuition. This converter supports all features of markdown like bold,italic, underline, nested lists (unordered and ordered), blockquotes, codeblocks, and even some additional features that were added like Tables. complete description at the github link

bottom of page