This project started out as a final project for ESE650, where I worked with two of my friends, Phil and Ramya. For our final project, we investigated a sampling-based approach to Model-Predictive Control. I will walk through the general project, but I will focus on highlighting my own contributions (bc this is my website lol). The primary focus of the project was to implement the MPPI Controller onto a quadrotor in a Gym environment. The success of the MPPI Controller for aggressive manuveuring with mobile robots was popularized by Grady et al, 2016. Notably, our work focused on comparing an analytical model of the system dynamics to a neural network model of the system dynamics. Furthermore, we developed some understanding of how the fidelity of the ground truth dynamics model affects network generalization, such as including drag, downwash, and ground effect. Shown below is a video we used to demo the performance of the MPPI Algorithm. It's not perfect but a huge amount of work is required to even create a testbed for different planning and control algorithms. As such, I am proud of the performance of this system, and hopefully can improve upon it's performance in the future!

Figure 1: A sample video of the MPPI planning and control module. Red markers are RDP-pruned waypoints created from a dense, 2D leminiscate path. Blue markers are the desired global trajectory, created by a custom, differentially-flat, minimum-snap trajectory generation routine. Green markers are the tracked flight of the quadrotor.

I will use the writeup we submitted as our final project in ESE650 as a stand-in for further explanation as I work on filling up the rest of my portfolio. I also plan to put in some work to expand this project even further. Until then, click the link below for our final writeup!

Final Report