When I was about 10, I was told that I had to pick my clothes off of my floor. It was around that time that I wanted to make a robot that could do it for me.
20 years later I have learned 2 important things: How to pick up my own clothes up off the floor and building a robot that can do it for me is both a multifaceted mechanical engineering problem as well as a very complex sequential decision task that cutting edge machine learning techniques still struggle to accomplish. Nevertheless, I have slowly found my way into the field of artificial intelligence where my dream of a robot that could do my chores for me is a problem domain instead of just a farfetched dream.
Besides artificial intelligence, I also spend my time finding good co-op boardgames, writing and playing video games, painting Cthulu in the background of second hand paintings and playing music.
After graduating, I starting working at Eidos Montreal. Its been great to work with such talented people and to focus on creative applications of machine learning.
In the summer of 2017 I interned at Sony Research and Development in Tokyo, Japan. I worked researched deep reinforcement learning based navigation systems and explored simulator grounding techniques as well as integrating rule based methods and reinforcement learning algorithms into a mobile robot. Here is a link to my blog of my experiences of living in Japan.
I have been working in the Blinc Lab for 4 years. My main focus for my first few months was integrating 2 of Blinc Lab's most interesting projects, the Handihand and the Bento arm, into an embedded system. The Little Intelligent Learning Limb, Lil'Limb, will eventually be worn by an amputee as a training tool for a more robust system.
Some people from the BLINC lab and I showcased our prosthetic arm and research platform at Maker Faire. There were cool demonstrations, FPV quadcopter races, and many other interesting things. We also released our source code and 3d print files open source at blincdev.ca.
I worked with Dr. Michael Bowling and the University of Alberta's Computer Poker Research Group the to develop a web query tool for his team's poker strategy that was published in Science Journal. The website had 1 Million visits within the first week and was linked to by hundreds of news stories.
I led a session at the 2015 SET conference where I discussed machine learning and opponent modeling applied to Rock, Paper, Scissors. I had a lot of fun showing the students how people usually aren't random and therefore the strategies that they attempt can be discovered and exploited to win in simple games. I had a great time with the students and look forward to my next volunteering opportunity with WISEST.
While I was in Japan I wanted to play some games with friends back home. I found that the bigger the game, the more data that needed to be transfered and thus the slower the connection. To fix this, I implemented my own multiplayer platformer game called Platformation using node.js and hosted it on Heroku. The game itself is pretty fun and has given me a lot of experience making multiplayer games and using node.js and also allowed me to play with friends when the internet was a bit slow.
I have had this idea for a game for like, 10 years now, and I thought "Hey, now that I am done my masters, I should really put some time into writing this game. The game I have in mind has many many variables and branches that direct the player through the game based on their interactions. Because of this, I found it very difficult to write and although there are editors out there like Twine that offer good tools, they seemed like overkill for what I needed and at the same time didn't have the control that I wanted. So instead I built Build Your Adventure which is very lightweight and can run on the browser.
In early 2015 I participated in a Global Game Jam with some talented friends. We were given 48 hours and we created a game with original story, art and music. There were many things I learned in this project and I had a lot of fun doing it. I highly recommend participating in a Game Jam if you have the chance.