fuzzified tree search in real domain games
Post on 06-Feb-2016
34 Views
Preview:
DESCRIPTION
TRANSCRIPT
Fuzzified tree search in real domain gamesDmitrijs Rutko, Faculty of Computing, University of Latvia
dim_rut@inbox.lv
GAME TREE SEARCH ALGORITHM
FUZZIFIED APPROACH
RESULTS
• We present a new game tree search algorithm which is based on the idea that the exact game tree evaluation is not required to find the best move.
• Experimental results in real domain games demonstrated 10 percent performance increase over existing algorithms
This research is supported by the European Social Fund project No. 2009/0138/1DP/1.1.2.1.2/09/IPIA/VIAA/004.
• In current experiments BNS demonstrated itself to be more efficient comparing scanned leaf node count. BNS gives a 10 percent performance improvement over MTDF algorithm
• Comparable with expected results achieved in experiments in abstract domain
• BNS demonstrates good potential and could be used as a general purpose game tree search algorithm
Conclusions
Algorithm Performance
1 2 7 4 3 6 8 9 5 4
2 7 8 9
2 8
8
√ √ √ Χ Χ √ √ √ Χ Χ
max
min
max
1 2 7 4 3 6 8 9 5 4
<5 ? ≥5 ≥5
<5 ≥5
≥5
√ √ Χ Χ Χ √ Χ √ Χ Χ
max
min
max
α β2 8
X2
X1 X3
Fig. 3. Geometric interpretation of the fuzzified game tree search
function BNS(node, α, β) subtreeCount := number of children of node do test := NextGuess(α, β, subtreeCount) betterCount := 0 foreach child of node bestVal := -AlphaBeta(child, -test, -(test - 1)) if bestVal ≥ test betterCount := betterCount + 1 bestNode := child update number of sub-trees that exceeds separation test value update alpha-beta range while not((β - α < 2) or (betterCount = 1)) return bestNode
HEY! THAT'S MY FISH!
• 2-4 player board game. • Collect as many fish as you can with your penguins.
Fig 4. “Hey! That's My Fish!” game board
Fig 5. Number of positions searched Fig 6. Relative number of positions
Future Work
• The implementation and analysis of transposition tables• The usage of different knowledge based or heuristic based evaluation functions.• The future experiments should also consider analyzing algorithm performance in other games, but we believe that the proposed approach could be successfully applied for any type of game as well
Fig. 1. Traditional Alpha-Beta Fig. 2. Fuzzified approach
• Take a look at game tree from a relative perspective like “is this move better or worse than some value X” (Fig. 2). At each level we identify if a sub-tree satisfies “greater or equal” criteria.
• Better results than the existing algorithms in real domain
• Iterative Deepening gives additional improvement
• Simple but with some subtle strategy behind• Fair amount of tactical content in the game. The
moves are not entirely obvious
1 5 9 13 17 21 25 29 33 37 41 450
10,000,000
20,000,000
30,000,000
40,000,000
50,000,000
60,000,000
AlphaBeta
NegaScout
NegaC
MTDF
BNS
Moves
Pos
itio
ns s
earc
hed,
mil
lion
s
1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 4680%
90%
100%
110%
120%
130%
140%
150%
160%
AlphaBeta
NegaScout
NegaC
MTDF
BNS
Moves
Pos
itio
ns s
earc
hed,
rel
ativ
e
top related