himmat mahal

Himmat Mahal

About Me


Hi there! My name is Himmat, I am a third year student, in progress of obtaining a Bachelor's degree, Majoring in Computer Science (Co-op) with a Minor in Mathematics at the University of Guelph.

I love solving problems, being creative, and thinking outside the box when faced with a strong challenge, which is one of the reasons I enjoy studying Computer Science and Mathematics.


Some things I have done outside of school

Here are a few topics that I have been interested in and exploring in my free time, aside from my academic studies in CS, and Math.


Generating Fractals

While studying math as part of my minor, I developed an interest in generating fractal images using complex numbers. This can be done using very simple mathematical techniques, resulting in some interesting pictures and gifs. Below are a few that I generated. These were generated with Node.js, and some python as well.

Animated Gifs:

Pictures:


Full Stack Web Developement

During the initial COVID-19 Lockdown, I had plenty of extra time and I took an interest in Full-Stack Web-Developement. This led me to enroll myself in an online Full-Stack Web-Developement Bootcamp Course. I picked up quite a few technical skills through the lectures, and wrote a few fully-functioning social network/blog clone websites as practice.
Namely, I learned the following things about Full-Stack Web-Developement:

udemyicon
Machine Learning and Data Science

When working on some of my personal projects, I began to wonder how I could make them more effective. Naturally, I started looking into Machine Learning and found it to be quite interesting. I then enrolled myself in a Machine Learning and Data Science Bootcamp Course on Udemy, to really learn the fundamentals, the theory, and the practice of Machine Learning and Data Science using Python. This is where I learned about the process of collecting, analyzing and visualizing, cleaning, and scaling data to in order to set up a Model, and evaluating and adjusting models. This was all done using popular Python libraries like pandas, NumPy, matplotlib and seaborn, TensorFlow and Keras, SciKit-Learn, etc.
Here are a few of the algorithms and techniques I've learned and used with Python: udemyicon

Personal Projects

I have done quite a few larger projects as assignments for school, and as part of the online courses above. However I still like to get creative and create some projects on my own. Here are a few original projects that I have come up with:

proj01
Fractal Generator

Using Node.js and a few npm libraries, wrote a brief program to generate fractals. The thumbnail above is an example of a randomly generated fractal that I liked.

proj1
Calculus Gradient Visualizer

Using python along with some common libraries, created an program to compute and visualize the gradient of a 3-D polynomial function.


proj2
Reinforcement Learning Agent for Bhabhi Card Game

Used Q-Learning Algorithm to create an AI Player for a Card Game called Bhabhi. Written in python, with a visual demonstration using pygame.

proj3
Visualizing Pi

A Python GUI program to visualize and compare how quickly various infinite series and infinite products converge to the irrational number Pi.

proj4
Kinematics Calculator

My first ever personal project. A Java GUI application to compute answers to 1-Dimensional Kinematics Problems. For example, finding the displacement of an object given velocity and time.