Skip to content

Latest commit

 

History

History
84 lines (56 loc) · 2.27 KB

TODO.org

File metadata and controls

84 lines (56 loc) · 2.27 KB

Roadmap june:

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

heuristic

capture needs to dominate everything

individual liberties needs to dominate (atari - extend)

self-atari is mostly bad

homework:

nice to have

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

refactoring

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

target 64bit word

suitable as key to DataMap or the like

quickcheck testing

towards heuristic

prior: even game more likely

patterns

cheap territory estimate - maybe bouzy?

possible incremental goban improvement: http://en.wikipedia.org/wiki/Disjoint-set_data_structure

General:

ko / superko

naive implementation done

scoring

area for now

timer could be more sophisticated

low main time and lots of byoyomi will not be used well (will try to complete in main time)

testing

quickcheck

hunit

profile infrastructure

benchmark

criterion

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