Recursive Exhaustive MiniMax
bubbleup (boardptr,ply){
if boardptr.nextply = null return
if boardptr.winfor = x
boardptr.eval := 1
return
for childptr ? boardptr.nextply
bubbleup(childptr,ply+1)
if odd(ply) boardptr.eval:= max(nextply)
else boardptr.eval := min(nextply)}
Evaluation function: simple sum of winning positions in the subtree
Previous slide
Next slide
Back to first slide
View graphic version