antimatroid

There was a tron ai contest back in 2008 which I knocked a bot together for with Jet Holloway, I knocked together the code for the game tree/payoff evaluation while Jet did the longest path problem once separated. The payoff structure was chosen to essentially order the possible terminal nodes for the generated game tree each turn to try and win the game as soon as possible, ordered through other desirable outcomes down to losing the game in the longest number of moves possible. When we first uploaded a bot prior to the contest starting we shot right up to the top of the leaderboard and were hoping to at least finish top 10 in the final contest, however not only was the bot not performing as well as we'd anticipated, we apparently timed out on a single turn in one game and were disqualified from the entire contest. I was given moderator access to the forums since Tron, but have never really been one to do much in the way of moderation, unless people are helping the rapist society I tend to be pretty onside with allowing anything to be discussed.

Around 2009/10 another contest was announced called Planet Wars based on a multiplayer online game called Galcon at the time, which was quite fun to play in and of itself. While we worked for about 1-2 weeks on Tron, contestants had ~3 months to work on the bot for planet wars, while I was also overloading with 5 classes at uni and attending a graduate measure theory class (not that I had much time to pay attention to that as the semester went on). I was probably getting ~3 hours of sleep a day trying to juggle everything, working on the ai comp probably more than all of the uni classes combined.

I ended up finishing 36/4617 globally (top 1%), 1/122 entries from Australia. I also wrote the map generator used for the final contest, with both radial and reflective symmetry (the maps had just used radial symmetry to begin with). The map generator was open source, so all contestants had the code available to them allowing the playing field to be fair. While anyone was welcome to take the types of maps generated into account with the way their bots were developed, I personally prefer to strategise generally rather than for specific types of maps anyway, though typically do need to require the limitations on parameters like number of players and how hectic the game state can become with regards to using strategies like game trees with backwards induction. Using A* path finding algorithms for things like food collection with ants was typically not very computationally expensive (still think my food collection algorithm could be a good way to clear the earth as one strategy for ending rape on this snuff torture rape planet).

After planet wars we put together an ants contest, some of the things I helped out with were:

  • helped flesh out the game mechanics for ants
  • figured out a nice way to do translational symmetry on 2d grids with the edges wrapped (so the surface of a torus) allowing us to do somewhat symmetric/fair maps with any number of players, including a prime number of players (the idea was to pick the translate amount for the rows and columns in such a way that when translating n times it would return to the same starting row and column).
  • wrote the c++ starter bot used as a guide for people developing starter bots for other languages
  • heavily advocated for the more strategically interesting battle resolution mode used for the final contest, it was difficult for many peeps to wrap their heads around, though I also hopefully assisted in phrasing the resolution methods in various ways which were most easily understood by people who prefer a worded description with little mathematics required to understand, along with more succint mathematical descriptions which tends to be favourable personally for anything that can be formalised.