Choose A Subgame to Play by Zhichao “Leaf” Li October 20th, 2003
Choose a Subgame to Play Problem Description Minimax and Hotstrat Improvement on Hotstrat Thermostrat Depthfixed Search Future Work
Problem Description Go endgame usually can be decomposed into several Subgames Play a single Subgame is trivial But, Question: Which Subgame should be chosen to play?
Game Decomposed Decompose the game (3 subgames here) Search out Combinatorial Games mapping to Subgames 0 | -1 0 | -2 || -3 5 || 2 | 0 Choose a Subgame (How?)
Methods of Choosing a Subgame Minimax Search Hotstrat Thermostrat Depthfixed Search Subgame 1: 0 | -1 Subgame 2: 0 | -2 || -3 Subgame 3: 5 || 2 | 0 Play Which Subgame?
Minimax Strategy Use Minimax to find out the best Subgame Advantage: Best Results Disadvantage: needs Time and Space
Hotstrat Choose Subgame with highest Temperature Advantage: Fast Disadvantage: often not the Best Result Improvement: Consider Sente position
Improvement on Hotstrat Consider Sente consider ‘one more move’ Example: Right to Move Subgame 1: 8 | 6 || 5 | -1Temp = 3(not 2) Subgame 2: 4 | -1Temp = 2.5 Play on Subgame 1 rather than 2
Results after Improvement level 5-Subgame Games beforenow Minimax vs. Hotstrat Hotstrat vs. Minimax level 5-Subgame Games beforenow Minimax vs. Hotstrat Hotstrat vs. Minimax
Thermostrat Use the Thermograph to find the best move 1. Combine subgames’ Thermographs 2. Find the Ambient where Left Most in Combined Graph (suppose Left to move) 3. Select the Subgame which widest at Ambient
Thermostrat Make mistakes Example: Left to Move Subgame 1: 19 | 0 Subgame 2: 39 | 12 || 3 | 0 Thermostrat chooses Subgame 1, not 2 How to improve it?
Depthfixed Search Minimax plays Best, but Slow Hotstrat plays Fast, but not best Combine these two strategies: 1. Set Max Search Depth 2. Search the move until it reaches Max Search Depth 3. Hotstrat plays the position to get the evaluation score
Results on 2-level Games DepthMinMin - DepMinDepMin – MinMin
Results on 3-level Games DepthMinMin – DepMinDepMin - MinMin
Depthfixed Search Make mistakes Example: Right to move Subgame 1 : 56 | 41 || 39 | 0 Subgame 2 : 67 | 31 || 6 | 0 Subgame 3 : 84 | 38 || 14 | 0 Subgame 4 : 96 | 86 Subgame 5 : 65 | 23 || 14 | 0 Depthfixed choses Subgame 2, not 3 (Max Search Depth = 2)
Depthfixed Search Hotstrat makes mistakes Subgame 2 : 67 | 31 || 6 | 0temp = 23 Subgame 5 : 65 | 23temp = 21 Right to move Hotstrat choses the wrong Subgame, therefore Depthfixed choses the wrong one
Future Work How to improve Thermostrat How to improve Hotstrat (help Depthfixed) Other evaluation functions for Depthfixed Others?