Abbey is a Markov chain player. You can check the source to see her implementation and chain length. I’ve never used
mchmm before, but I think to use it for this project, you will need to read starting at the
Calculating Nth order transition probability matrix: section and onward because this is really a Markov chain problem. I don’t think memory will be an issue here since for the 800 moves you are using, that can only affect the last 200 moves of the trial.
There are at least two ways I’ve found to beat Abbey. One, you can use a long enough Markov chain (longer than hers) and win (enough to pass the test, but not convincingly). Two, you can implement a specific anti-Abbey strategy and win at almost 90% but to do this you’ll have to understand exactly how she is playing.
There are undoubtedly other ways, but I haven’t bothered to research or implement some of the more advanced ones I’ve seen mentioned.