It is absolutely crucial, in this scheme, to be able to tell how good a given random try was. Our general approach to AI-“machine learning”-involves the AI trying some random approach, evaluating it for effectiveness, and then doing so over, and over, and over, refining that randomness towards something better and better. There is a major constraint on the way we currently build AI, that makes its application to deck-building games intractable, at least on our current hardware. I defer to anyone who is an expert in AI, but I think currently my expertise is most applicable to this question.
I would be interested in any attempts at creating such an AI.įirst, just so you know where I’m coming from, I’m a professional programmer, and I’ve studied AI, but I don’t work with AI professionally, so there are limits to my expertise.
And it links to a GitHub with the source.Īs the comments note, this may not be a high quality attempt nor one that handles any card set set you throw at it, but it is an attempt, as per the original post's request: The article goes on to talk about the approach he used. Ooooooooh! Yes, it is as exciting as it sounds! GAs allow us to literally evolve good decks using artificial selection. In particular, I want to talk about an approach to deck building using a technique called genetic algorithms or GAs. If you just want to jump directly to the code, or a deep-dive into the technical nitty-gritty for yourself, you can dig deeper on GitHub. In this article, I want to outline at a high level how I approached this challenge, how my approach works, what went well, and what didn’t. Read along to find out how it works, how you can start using it, and better yet, how you can help make it awesome.
(I guess you could make the pool 60 copies of each card legal for the format). Don Goodman-Wilson made a program to build decks given a pool of cards.