Tree dumps

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

Robert Pope
Posts: 558
Joined: Sat Mar 25, 2006 8:27 pm

Tree dumps

Post by Robert Pope »

What programs can output the full tree that is searched for a given position (up to a given depth or # of nodes)? Crafty has a trace command that you can compile in -- do any other programs have a similar option?
User avatar
Zach Wegner
Posts: 1922
Joined: Thu Mar 09, 2006 12:51 am
Location: Earth

Re: Tree dumps

Post by Zach Wegner »

ZCT does something different. It uses interactive tree walking (though it's in an embryonic stage ATM). Just compile it with DEBUG_SEARCH defined, and start it up. Type "debug", and you can then type "help" to see the commands. To just walk the tree as it is being searched, type "break" and then "go".
User avatar
Kempelen
Posts: 620
Joined: Fri Feb 08, 2008 10:44 am
Location: Madrid - Spain

Re: Tree dumps

Post by Kempelen »

My engine, which is not released yet, is able to dump the whole tree as a XML format file, so I can walk through the tree with a XML viewer. Very useful as you store more info than the move and the score.
Allard Siemelink
Posts: 297
Joined: Fri Jun 30, 2006 9:30 pm
Location: Netherlands

Re: Tree dumps

Post by Allard Siemelink »

bright can do this too. (development version only, it is a compile time flag)

I save the tree in a compact binary format and I have a separate (Java) tree viewer utilty.
With tree dumping enabled, the search & viewer operate without noticeable delay for at least upto a couple of million nodes.
jswaff

Re: Tree dumps

Post by jswaff »

I do the same with Prophet. While developing the iterative search function I "dumbed down" the recursive search function, then "built it back up" as I added to the iterative search. I have checks to ensure both versions of the search traverse the same tree and the resulting data structures are identical.

There were a few spots I had a tough time with, so I wrote an XML Dump and used an XML viewer to help find where the two versions of the search started to vary. It turned out to be very useful.

--
James