Sogeti Codefest - Feedback & Strategies

Happy to have won, largely with a port from my Fantastic Bits code.

Sad that the competition was limited to a few countries: semi-private contests like those are a good occasion to revisit existing games with slightly different rules.

As for the actual algorithm: no, contrary to what was speculated on chat, there are no neural networks in my code :slight_smile:

I will refer you to my Fantastic Bits post-mortem. In that document, I described a large number of heuristics, stating that many of them didn’t work.

Since writing that PM, I have found that during the contest my simulation engine was flawed, and my genetic algorithm could only generate angles between 0 and 255 degrees :expressionless:

Upon correcting these bugs back in 2017, my FB AI became much better, and was only beaten by reCurse recently.

You can therefore consider my FB PM as my Sogeti PM, where everything actually works :slight_smile:

In summary :

  • It’s a genetic algorithm
  • It’s important to have a good representation of what the opponent would do, à-la-minimax (see my COTC PM for a description of how a GA can be changed to account for several opponent moves)
  • Reading the rules, I was convinced the spell was too expensive and would be underpowered. In local testing, I observed approximately 300 elo improvement when adding the spells.
6 Likes