I read an interesting article about using genetic algorithms to find the optimal first steps for Starcraft 2 gameplay. Starcraft is a bit like chess in that the first few minutes of play can usually be done in a prescribed order. In chess this is known as your opening moves. In Starcraft this is known as the build order.
You can find the code posted here. It uses JGAP which is something I’ve fiddled around with before as part of the genetic algorithms used in Robocode.