transposition tables via zobrist hashes
init zobrist hashmap, hash per node
keep hash updated after moves (husk! koblocked!)
track hash with all nodes in tree
track parent nodes via set of hashes in tree
do updates via map of hashes instead of tree
maybe in parallel with extra check at first?
garbage collection of unreachable nodes in hashmap on move
maybe optional in initial implementation
capture needs to dominate everything
individual liberties needs to dominate (atari - extend)
could ponder on previous uct tree / rave map in engine state while waiting for opponent
wrap UCT in some toplevel object?
tune updateGameState speed
adjacentStuff is called very often
policyRaveUCB1 could maybe do less computation
GameState versus Goban and representation still could be improved
if copyGoban is used cleverly, maybe runOneRandom could use runST without the RealWorld
it seems this would need something like STUArrays thaw / freeze support
implement zobrist hash of moves / board / towards transposition tables
suitable as key to DataMap or the like
prior: even game more likely
cheap territory estimate - maybe bouzy?
General:
naive implementation done
timer could be more sophisticated
low main time and lots of byoyomi will not be used well (will try to complete in main time)
Network.GoTextProtocol2.Server:
merge commandargparserlist and commandHandlers lists
implement a way so commandHandlers can be passed in from an inheriting module running startLoop
Network.GoTextProtocol2.Parser:
handle #-prefix comments and empty lines