Inspiration
All 3 of us are University of Waterloo students and have experienced many scary geese in our days here. So we wanted to create a visual representation of the way the Waterloo geese act while learning new skills. Specifically how certain aggressive geese decide to follow you as you are walking to class.
What it does
Mr. Goose on the Loose, is a very smart goose that can learn the fastest and most rewarding path to the Waterloo student as it continues to attack the same student. There are buildings that Mr. Goose cannot get through (brown boxes) and cages (black tents) that send Mr. Goose back to the start. This is without any user input and is shown on the screen using GUI libraries in Python.
How we built it
We harnessed reinforcement learning strategies in Python to have Mr. Goose learn from every successful attack of a Waterloo student. Using libraries such as Tkinter, NumPy, Sys and Pandas we were able to display a visual design with a grid, walls, grass and cages.
Challenges we ran into
We ran into challenges such as visually showing Mr. Goose in a friendly way since we began with him as a red square. As well as improving the algorithm used for reinforcement learning for larger mazes. As the bigger the maze the longer it would take, so adding a re-visited penalty to Mr. Goose improved his efficiency in getting to the student. Since this was our first time doing work with reinforcement learning there were some challenges in understanding the mechanics of it and some general debugging.
Accomplishments that we're proud of
We are proud that we were able to work together as a team as we had never worked together before and this was our first in-person hackathons. We are also proud of our ability to learn about reinforcement learning in such a short time and produce a final product as none of us had any previous experience with reinforcement learning. Also our ability to adapt to different challenges that arose throughout the weekend.
What we learned
We learned a lot about what reinforcement learning is, the mechanics of reinforcement learning and many libraries associated with Python. We also learned how to work collaboratively as a team working on a coding project and how to time manage. By attending workshops including the discord bot, the one on using Ruby to build a webpage, and the introduction to machine learning, all team members were able to pick up many valuable skills.
What's next for Mr. Goose on the Loose
Mr. Goose will continue to terrorize Waterloo students and become faster at attacking students. This will be done by improving his reinforcement learning algorithm. Another step would be creating more obstacles for Mr. Goose and improving the visual design of Mr. Goose on the Loose.
Log in or sign up for Devpost to join the conversation.