I think at this point, there's just so. many. cards. that even a halfway competent AI is beyond the scope of a hobby project. There's just a lot of weird interactions that aren't hard to program but take time. Just implementing the rules of all the cards - and getting them to work right - is nontrivial. It's even more work than it seems because they have to be implemented in a way that they can be manipulated and reasoned about, even for simple internal questions like "if I play this card, will it trigger a reshuffle".
Sorry, I have not been clear. I was only talking about the AI part. Implementing all of Dominion would be a much longer task. If I were to attempt something like a Dominion AI, I would do a proof of principle with a selected set of cards (probably you want to some events or landmarks, too). Then you might want to talk to Stef to see if you can realize the same with the actual game.
By the way, this thread led me down a rabbit hole of reading about how AlphaGo and AlphaZero work. I don't really know what resources are the best, but it was fun to google and read about, I would recommend anyone who thinks thinking about AI is cool go down that rabbit hole for a bit.
Really puts into perspective that for a real AI, questions like how to decide "BM or Engine" or "What card to topdeck with Harbinger" just aren't the sort of questions the AI designer is going to be thinking about, it's all about how to set up the problem so that ML techniques can be applied to learn the answer to *all* those decisions in the same way.
Well there is also the aspect that they wanted to show that it can be done without any guidance. I don't know if in general the approach to supply no input at all is the best. Of course, games are also the best case scenario, because the evaluation function is well defined (you either win or you don't).
At first I wanted to add something about how the state of a Dominion game is much more difficult to describe than that of Go, but I'm not so sure anymore. There are around 200 cards in any given game and you need 4~5 bits to store where a card is. In addition ~100 bits to store the kingdom information. For Go you have a 19*19 board with 3 bits per field (empty, white, black). So I would get 900~1100 bits for Dominion and ~720 for Go.
But then the decision space of Dominion is much smaller. For every given game state there are probably less than ~30 possible choices whereas for Go you start of with 361 choices.
It is probably still harder to learn than Go though, because one bit flip in the game state (say replacing Pawn with Chapel) seems to have a much more severe impact than replacing one stone on the Go board (full disclosure, I did not play Go enough to check that this is true).