cbs42 wrote:
Bah ... screw NNs.
Whip up some genetic algorithm AIs and
evolve your computer players.

Actually, I was thinking about this (and talking with another programmer) who pointed that out to me, and I realized something ...
wmshub wrote:
But you can't just drop in an NN and call it a day; you need to work out the proper inputs and outputs to have a hope of getting a strong player in the end, and there's a lot of tweaking and tuning that can be done after, of course.
Given the game that I'm working on, I could use a correlation matrix. (Pretty much every decision can be modeled as an independant action). In fact, I could make a giant correlation matrix of weights (I'm thinking a 200 x 40, with perhaps a few 'extra' rows to tweak it). I'd only have 1-5 columns (of the forty) that are legal plays at a time, and most of the (200) inputs (corresponding to position) would also be zeroes. That may be too many genes (8000) to be manageable, but it would also be fairly easy to tweak, and I could (unlike a NN) eyeball a reasonable seeding value. More importantly, it seems to capture some (not all) of how I think when playing the game. ("I have this, so I need that."
When I was thinking of this via NN, I knew I'd need 40 outputs (for the choices) and at least 80 inputs. plus a few hidden levels. But it also has the tough problem of how to train intermediate decisions (things that may not score well now, but lead to long term positional growth). I'm definitely leaning towards a genetic solution now ... for one thing, it's easier to code.