-
Notifications
You must be signed in to change notification settings - Fork 28
Minimax AI #17
Comments
Implementing this, requires implementing several subparts:
|
The simulator will likely need to have card specific code and information, to get the simulation correct. Having the simulator will also allow the AI API to support reverting operations, which may help implementing some features. The board evaluator will be based upon external configuration variable, which can be set by user, or via evolutionary algorithms. (The last approach may take quite some time). |
I don't think so. Minimax algorithm bases on expectations on opponents' move. You need to first calculate probabilities of the decks they may be using and then calculate probabilities of the cards they may be holding. Such calculation is exponential. In addition, the search depth of minimax represents the turns yet to come. You have to calculate the probability of every top-decks. |
I think Minimax would be performed on all possible actions available to be done for you, on a SINGLE TURN. Eg, to answer the question : how do i spend my x mana crystals most efficiently this turn / what is the best order to play my current cards in. Looking any farther ahead than the current turn is, as you said, exponentially more complicated. |
@jamesford42 If we just want to optimize the current turn's play, Minimax is not needed. A slightly pruned DFS (or even a DP algorithm) can deal with that efficiently. Minimax is powerful because it evaluates the opponent's possible counter plays (and your response to that and so on). If we only consider the current turn, then we are talking about the same thing: not using Minimax. However it is possible to mimic Minimax behaviors by manually maintaining a "play-around card list", including most AOE spells and popular tech cards, and by using bigger cards first to reserve small cards as "fillers" to be used later (e.g. a six-drop is usually better than a five-drop and a one-drop on turn six). |
The AI should be completely redesigned to use the minimax algorithm, via a game simulator, this will be the final goal of the AI subsystem.
The text was updated successfully, but these errors were encountered: