module Make: functor (G : Game) -> M with type gameField = G.gameField
with type move = G.move
functor for building a Minimax implementation on a given game
type gameField
The type of game positions
type move
Moves that can be performed on a given position
val byDepth : (gameField -> float) ->
int -> gameField -> move
Search the game up to a given depth
val byTime : (gameField -> float) ->
float -> gameField -> move
Search by iteratively deepening and returning after a given
maximum time
val byNodes : (gameField -> float) ->
int -> gameField -> move
Search by iterativly deepening and returning, when the last search expands
a certain number of nodes