For this project, I created a walking simulation, that is trained using a genetic algorithm. The walkers are created using multiple parameters such as node radius, restitution, friction, joint length and many more. The genetic algorithm works by taking the best parameters from a pool (each generation) and permuting those parameters by a normal model. Eventually the walkers learn how to walk! Each generation contains a set number of walkers (the population) and the parent count is some subset that will be used to "mate" and create the following generation. The entire world is contained within Box2D (a popular physics engine) and the project was written in C++. Here is the link to the repository if you would like to contribute or take a look!
Garbage Collector was my first time ever utilizing machine learning. In this project, my team trained a convolutional neural network to detect items of trash within photographs. Accompanying this is a web app that allows users to upload images and check their own photos. The photo to the left is OpenCV's YOLO which can only detect bottles of certain position, and to the right is the neural network that my team and I were able to train. The ultimate goal with this project is to allow CCTV security camera's upload images periodically to this server and detect when trash is thrown in these areas. This would be a high impact tool in places such as playgrounds, national parks, and subway stations. More information on this project can be found here.
This is a video with a live demonstration of the Stock Data Analysis Tool I created. The tool enables users to customize portfolios based off of historical trends, key ratios, and users risk tolerance. In addition, a prediction algorithm is provided that makes plausible attempts at guessing future stock prices based off of the financial data of said stock. Here is the link to the repository if you would like to contribute or take a look!