Answers.Body: <p>There has indeed been some research towards combining MCTS and minimax-like algorithms. For example, the following two publications:</p>
  
  <ul>
  <li><a href="https://ieeexplore.ieee.org/document/6633630" rel="noreferrer">Monte-Carlo Tree Search and minimax hybrids</a></li>
  <li><a href="https://link.springer.com/chapter/10.1007/978-3-319-14923-3_4" rel="noreferrer">Monte-Carlo Tree Search and Minimax Hybrids with Heuristic Evaluation Functions</a></li>
  </ul>
  
  <p>The basic intuition behind such combinations tends to be to use small minimax-like searches inside a larger MCTS search, and/or backing up proven wins/losses (proven in the sense that minimax-like search has established that a certain state is a certain win or loss when following perfect play) through the MCTS tree, in addition to the more standard value estimates.</p>
  
  <blockquote>
    <p>but if possible I'd like to somehow import MC search into the engine I've already built.</p>
  </blockquote>
  
  <p>I'm not sure how easy that would be. As I described above, I think it is more common that small minimax searches are used inside a larger MCTS search. I think that would mean that you'd first want to build an MCTS, and then try to import your already implemented minimax into it. That's kind of the opposite / other way around of what you write that you'd like to do. </p>
  
  <p>I don't think integrating small MCTS searches inside a "larger" minimax would work well. The value estimates of small MCTS searches would be too unreliable for subsequent use in an "outer" minimax-like algorithm.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2018-12-13T18:37:00.473Z
Answers.LastActivityDate: 2019-05-12T21:32:11.037Z
Answers.LastEditDate: 2019-05-12T21:32:11.037Z
Answers.UserDisplayName: Dennis Soemers
Body: <p>I've been working on a game-playing engine for about half a year now, and it uses the well known algorithms. These include minimax with alpha-beta pruning, iterative deepening, transposition tables, etc.</p>
  
  <p>I'm now looking for a way to include Monte Carlo tree search, which is something I've wanted to do for a long time. I was thinking of just making a new engine from scratch, but if possible I'd like to somehow import MC tree search into the engine I've already built.</p>
  
  <p>Are there any interesting strategies to import MC tree search into a standard game-playing AI?</p>
  
Tags: <game-ai><monte-carlo-tree-search><minimax>
Title: Any interesting ways to combine Monte Carlo tree search with the minimax algorithm?
UserDisplayName: Inertial Ignorance
ThreadText: # Any interesting ways to combine Monte Carlo tree search with the minimax algorithm?
  
  (Asked by: username_0 on 2018-12-13)
  
  I've been working on a game-playing engine for about half a year now, and it uses the well known algorithms. These include minimax with alpha-beta pruning, iterative deepening, transposition tables, etc.
  
  I'm now looking for a way to include Monte Carlo tree search, which is something I've wanted to do for a long time. I was thinking of just making a new engine from scratch, but if possible I'd like to somehow import MC tree search into the engine I've already built.
  
  Are there any interesting strategies to import MC tree search into a standard game-playing AI?
  
  **Tags:** game-ai, monte-carlo-tree-search, minimax
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2018-12-13. Score: 5 | Accepted answer
  
  There has indeed been some research towards combining MCTS and minimax-like algorithms. For example, the following two publications:
  
  * [Monte-Carlo Tree Search and minimax hybrids](https://ieeexplore.ieee.org/document/6633630)
  * [Monte-Carlo Tree Search and Minimax Hybrids with Heuristic Evaluation Functions](https://link.springer.com/chapter/10.1007/978-3-319-14923-3_4)
  
  The basic intuition behind such combinations tends to be to use small minimax-like searches inside a larger MCTS search, and/or backing up proven wins/losses (proven in the sense that minimax-like search has established that a certain state is a certain win or loss when following perfect play) through the MCTS tree, in addition to the more standard value estimates.
  
  > but if possible I'd like to somehow import MC search into the engine I've already built.
  
  I'm not sure how easy that would be. As I described above, I think it is more common that small minimax searches are used inside a larger MCTS search. I think that would mean that you'd first want to build an MCTS, and then try to import your already implemented minimax into it. That's kind of the opposite / other way around of what you write that you'd like to do.
  
  I don't think integrating small MCTS searches inside a "larger" minimax would work well. The value estimates of small MCTS searches would be too unreliable for subsequent use in an "outer" minimax-like algorithm.
  
  
  ---
  
  