Search found 155 matches

by Fulvio
Sun Jul 02, 2017 7:19 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: A remark on rigid testing
Replies: 13
Views: 1859

Re: A remark on rigid testing

The code implement this: http://onlinestatbook.com/2/estimation/mean.html tot_point:= 1 point for every win + 0.5 points for every draw and 0 points for every loss mean_value(m_mu):= (tot_points)/(number_of_games) variance:= devW + devL + devD; standard_error_of_the_mean(m_stdev):= sqrt(variance) / ...
by Fulvio
Sun Jul 02, 2017 6:02 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: A remark on rigid testing
Replies: 13
Views: 1859

Re: A remark on rigid testing

I probably misunderstood the meaning of the calculated confidence interval.
I've found the Cutechess math:
https://github.com/cutechess/cutechess/ ... rc/elo.cpp

and I'll try to figure how what it really means.
by Fulvio
Sun Jul 02, 2017 4:50 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: A remark on rigid testing
Replies: 13
Views: 1859

Re: A remark on rigid testing

Laskos wrote:What it happened to me, and can be used as the rule of thumb (if you can compute square root)
If you played only 40 games you get (4000-40)/4000 = 0.99
If you assume that the test will finish in -6 +/- 10*sqrt(0.99) there is no point in playing the games at all :)
by Fulvio
Sun Jul 02, 2017 4:11 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: A remark on rigid testing
Replies: 13
Views: 1859

Re: A remark on rigid testing

I doubt ELO calculation of error is very illuminating. I asked because if it's a function of win/draw/loss: sigma = f(n_win, n_draw, n_loss) in that case the final sigma is: sigma_final = f(n_win + dx_win, n_draw + dx_draw, n_loss + dx_loss) where: dx_win + dx_draw + dx_loss = games_to_be_played Wi...
by Fulvio
Sun Jul 02, 2017 2:48 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: A remark on rigid testing
Replies: 13
Views: 1859

Re: A remark on rigid testing

Interesting, even if i didn't understand the math :)

Can you pls explain the formula used by Cutechess to calculate the sigma?
by Fulvio
Sat Jul 01, 2017 2:48 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Algorithm for mate recognition
Replies: 10
Views: 2282

Re: Algorithm for mate recognition

Your analysis is correct, there are other details that contribute to the test results. The code is here: http://scid.sourceforge.net/doxygen/html/position_8cpp_source.html#l02114 In particular the SAN notation is generated before making the move, and to test for checks the move is done and undone. A...
by Fulvio
Sat Jul 01, 2017 2:45 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Algorithm for mate recognition
Replies: 10
Views: 2282

Re: Algorithm for mate recognition

Brilliant!! The key idea is that moving a queen cannot create a discovered check. With normal moves (no castle, no en-passant) it's possible to test an imaginary queen at the from-square. If this queen cannot attack the enemy king, the from-square cannot block any check and no discovered checks are ...
by Fulvio
Fri Jun 30, 2017 1:46 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Algorithm for mate recognition
Replies: 10
Views: 2282

Re: Algorithm for mate recognition

Thanks for the reply, I should have stated clearly my objective. I profiled SCID code when exporting a database to PGN and discovered that a lot of time is spent testing for check/mate. The current code works mostly like you suggested: it is only missing the cutoff. Exporting 1 million games to PGN ...
by Fulvio
Fri Jun 30, 2017 8:55 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Algorithm for mate recognition
Replies: 10
Views: 2282

Algorithm for mate recognition

I'm writing some code to convert a UCI move to a SAN move. I'm surprised by how difficult is to recognize a mate position in an efficient way. Below is my pseudo-code: does anyone know a better algorithm? nChecks:= number of adversary pieces that checks the king if nChecks > 0 kingMoves:= generate e...