Things involving Matt

Once upon a time, Matt Fowles lived in the room next to mine. The two of us made an excellent programming team, and during my last two semesters we collaborated on a number of projects.

Konane: Matt and I tried to paramaterize all possible AIs for a Konane game player and then apply search algorithms to find the best possible Konane player. It seemed like a great idea at the time. Unfortunately it didn't work out as well as we hoped; the problem seems to be that we need a better comparison operator.

Multiple Dispatch: Probably the most clever bit of code I've ever been involved in writing - an implementation of 2 variable multiple dispatch for C++. Matt's writeups tend to be a little... technical, so if you're only interested in seeing the dispatcher in action, I'd suggest going straight to our example code.
     One quick anecdote: Before writing up the dispatcher, Matt and I had a chance to briefly talk to Bjarne Stroustrup about our plans - his comment was something like "I would have implemented that myself, but never quite got around to it; deciding how to handle all possible cases turns out to be a real mess". As we soon found out, Bjarne was right. Multiple dispatch and multiple inheritance do not play well together.

Nolfi vs. Elman: The final project for our robotics seminar - introducing an Elman Network into Nolfi's "Emergent Modularity" experiments. Matt and I hacked the Stage client in a way that let us run generations of our GA much faster than we could have going through Player.