### Re: Polyglot extension tool

Posted:

**Tue Jan 08, 2019 12:59 am**I would like to get the lookup for Epd and analysis specified as an API call of some sort.

The reason is that I have millions of position analyzed to 36 ply or better and many times more than that with shallow analysis.

So instead of looking for file 30.epd and then analyzing the raw position, why not ask for a list of already analyzed positions via API call.

e.g. expect the data to come back as {for instance}:

<Epd, char string>, <centipawn_evaluation, signed short>, <suggested_move, char[9]>, <statistical_eval, signed short>, <depth unsigned char>

Statisical eval is an estimation function based on the number of actual wins, losses, and draws for the position. There could be (for instance) a radio button for the book to average the two score numbers. Also, an extra byte for the book could be obtained by shortening suggested_move to move_number, where the possible moves are sorted lexically and the number (from 0 to 217[*]) from the position in the sorted array is the move to make. The extra space conserved could be used to store something else.

The depth field will be useful in long time control and/or superior hardware situations. If your depth is 36 and you have a 128 core machine running at 40 moves in 2 hours, you should probably discard the book value and let the computer think.

[*] The greatest mobility for any position every found is 218. But an unsigned 8 bit byte could hold up to 256 distinct values.

The reason is that I have millions of position analyzed to 36 ply or better and many times more than that with shallow analysis.

So instead of looking for file 30.epd and then analyzing the raw position, why not ask for a list of already analyzed positions via API call.

e.g. expect the data to come back as {for instance}:

<Epd, char string>, <centipawn_evaluation, signed short>, <suggested_move, char[9]>, <statistical_eval, signed short>, <depth unsigned char>

Statisical eval is an estimation function based on the number of actual wins, losses, and draws for the position. There could be (for instance) a radio button for the book to average the two score numbers. Also, an extra byte for the book could be obtained by shortening suggested_move to move_number, where the possible moves are sorted lexically and the number (from 0 to 217[*]) from the position in the sorted array is the move to make. The extra space conserved could be used to store something else.

The depth field will be useful in long time control and/or superior hardware situations. If your depth is 36 and you have a 128 core machine running at 40 moves in 2 hours, you should probably discard the book value and let the computer think.

[*] The greatest mobility for any position every found is 218. But an unsigned 8 bit byte could hold up to 256 distinct values.