> Dear fuego-devel
> The Fuego Wiki has an interesting page  with hints how to tune Fuego's
> playing strength. After reading those hints I came up with a few questions
> that I hope some people on this list can answer in less time than it would
> take me to find out myself by studying the source code. You can call me
> lazy :-)
> 1) Is it correct that "pondering" simply means that the Fuego is doing
> calculations while the human player takes his time for his turn, thus
> increasing Fuego's playing strength because it had more time for its
> 2) What does "reuse subtree" mean anyway? If the real answer to that is
> maybe too technical, can it be said that turning this options on/off
> simply increases/decreases Fuego's playing strength? And does it make
> sense to turn this on/off independently from any other parameter such as
> "pondering" or memory use?
Reuse subtree means that Fuego is trying to re-use the relevant parts of a tree from a previous search. For example, say it searches from the empty 9x9 board and grows a tree of 10M (million) nodes. Then it chooses to play E5, and the opponent answers E3. Some part of the original tree will be a subtree reached after these two moves. Since they are strong moves, maybe 3M of the 10M nodes will be in this subtree. So when we ask Fuego again to choose a move, it will not start the search from nothing, but it will keep these 3M nodes and expand from that tree.
Reuse makes sense without pondering. It just means that the re-used tree is typically from two moves ago, when it was last Fuego's turn to think. If pondering is on, the tree will be just one move old, since Fuego was pondering after its previous move (E5 in the example) has already been played.
> 3) Assuming that Fuego is currently processing a "genmove" GTP command,
> can I send it another command "uct_max_memory" to immediately lower its
> memory consumption? Or will the "uct_max_memory" command be processed only
> after calculations for "genmove" have finished? What about if Fuego is
> pondering and I send it "uct_max_memory"?
You can only run one GTP command at a time.
You can interrupt the genmove command.
Pondering runs in a different thread. It runs in "slices" of time and returns periodically.
I am not sure how and when it would interact with uct_max_memory.
> 4) When pondering is disabled and then re-enabled, does Fuego continue
> with its calculations where it left off?
Not sure either. It depends on when the tree is cleared. It should be easy to test it - just look at the debug output to see how large the trees are.
You can also see more output by using the Live gfx commands. E.g. check Uct Param Search commands for Live gfx and Live gfx interval.