PolyGlot - Winboard protocol to UCI protocol adapter
- book engine for Polyglot books
- - a collection of utilities for creating opening books
+ - a collection of utilities for creating and analyzing opening books
- a utility for analyzing epd files
- a perft counter
polyglot merge-book -in1 inputfile1 -in2 inputfile2 [-out outputfile]
+polyglot info-book [-bin inputfile] [-exact]
+
+polyglot dumb-book [-bin inputfile] -color color [-out outputfile]
+
polyglot [configfile] epd-test [-epd inputfile] [-min-depth depth] [-max-depth depth] [-max-time time] [-depth-delta delta]
polyglot perft [-fen fen] [-max-depth depth]
by their own GUIs.
PolyGlot can compile a pgn file into a binary PolyGlot book and furthermore
-it can merge two such binary books into a third one.
+it can merge two such binary books into a third one.
+
+PolyGlot can also extract some useful information from PolyGlot books. The utility
+"dump-book" dumps the "lines" in a book for a given color. By definition
+a line is a sequence of moves (from the starting position) in which
+the given color makes only book moves and the other color makes
+arbitrary moves (i.e. not necessarily book moves).
+
+Since a PolyGlot book is built up from positions and not lines there
+may be (and there usually are) many positions in the book that are not
+on a "line" as defined in the previous paragraph. It is convenient
+to call such positions "isolated" positions. The utility "info-book"
+counts such isolated positions.
+
+Some of the isolated positions are provably unreachable and they
+could in principle be deleted from the book. For example if a book
+contains only the move "e4" in the starting position but also the
+position after "d4 d5" then this last position is provably unreachable
+since it requires white to make a non-book move when a book move is
+available. Such situations arise frequently from the priority rules
+in merging books.
+
+Unfortunately not all isolated positions are provably unreachable and
+it is difficult to identify the latter. If invoked with "-exact" the
+utility info-book will attempt to count the isolated positions which
+require a player to make a non-book move when a book move is available.
+Due to the possibility of transpositions this is not a fool proof method.
=head2 Epd test mode
words when a position occurs both in "in1" and "in2" only the
moves and weights from "in1" will be retained in "out".
+When invoked
+as
+
+=head2 polyglot dump-book
+
+PolyGlot supports the following options
+
+=over 4
+
+=item B<-bin> (default: book.bin)
+
+Input file in PolyGlot book format.
+
+=item B<-color>
+
+The color for whom to generate the lines.
+
+=item B<-out> (default: book_<color>.txt)
+
+The name of the output file.
+
+=back
+
+When invoked
+as
+
+=head2 polyglot info-book
+
+PolyGlot supports the following options
+
+=over 4
+
+=item B<-bin> (default: book.bin)
+
+Input file in PolyGlot book format.
+
+=item B<-exact>
+
+Attempt to count the provably unreachable positions among the isolated ones.
+Note that this takes a very long time.
+
+=back
+
When invoked as
=head2 polyglot epd-test