Przejdź do głównej zawartości

Stockfish 16060715 - nowa wersja silnika szachowego UCI!

Stockfish - silnik szachowy UCI

Poprzednie wersje Stockfish 

Autor kompilacji - 
Marco Costalba    

Informacje o wersji:
Timestamp: 1465304786 

Fix syzygy DTZ bug 

In this position: 3K4/8/3k4/8/4p3/4B3/5P2/8 w - - 0 5 

Current DTZ probe returns 1 instead of 15 

What happens is that the double push f4 is erroneously detected as a win move. 

After the push we have: 

[D]3K4/8/3k4/8/4pP2/4B3/8/8 b - f3 0 5 

And here the code misses the possible ep capture exf3. 

The bug is in probe_dtz_no_ep() where is used probe_ab() that is 
blind to ep captures so it returns v == 2 (win) for position 

3K4/8/3k4/8/4pP2/4B3/8/8 b - f3 0 5 

Note that at the caller site the original position did not have any 
possible ep capture, so probe_dtz() returns immediately after calling 
probe_dtz_no_ep(). 

The fix is to call the ep-aware probe_wdl() instead of probe_ab() 

I have verified that DTZ is correct now and also there are no more 
mistmatches compared to the new 'syzygy' branch. Tested on a set of 
more than 600 endgame positions, included some tricky ones. 

For people interested to redo the test or doing additional tests 
please pull branch tb_dbg from https://github.com/mcostalba/Stockfish repo. 

bench: 8450534 (bench unaffected because syzygy is not exercized during bench)   



Komentarze

Popularne posty z tego bloga

Dlaczego wydajesz tyle pieniędzy by Twój syn grał w szachy?

Na jednym z szachowych blogów znalazłem (J.S.) ciekawą wypowiedź dotyczącą nauki gry w szachy, której autorem jest  Martin Wollf . Genialna diagnoza! Pewien przyjaciel zapytał mnie: -  Dlaczego inwestujesz tyle pieniędzy i własnego czasu, aby twój syn uczył się grać w szachy? Moja odpowiedź: Cóż, muszę przyznać się do winy:  nie płacę za to, żeby mój syn grał w szachy. Czy wiesz, dlaczego płacę? - Płacę, żeby mój syn nauczył się być zdyscyplinowany. - Płacę również za to, by mój syn mógł ćwiczyć swój umysł i rozwijać swoją kreatywność. - Płacę za mojego syna, aby nauczył się radzić sobie z porażkami, z rozczarowaniami jeśli nie uda mu się osiągnąć tego, czego oczekiwał. - Płacę za mojego syna, aby nauczył się realizować swoje cele. - Płacę, aby moje dziecko zrozumiało, że aby osiągnąć mistrzostwo trzeba  ciężko pracować i trenować godzinami. I że sukces nie nastąpi z dnia na dzień. - Płacę za to, że mój syn nawiązał przyjaźnie na całe życie. - Płacę za mojego sy

Ognisko na szachownicy!

Nie wiem, czy młody mieszkaniec z Nowego Bytomia czytał książkę Aleksieja Szirowa " Ogień na szachownicy ". Jeśli znał, to wziął tytuł zbyt dosłownie, bo bawiąc w Rudzie Śląskiej z nudów rozpalił ognisko na betonowej szachownicy. Na szczęście zauważył to  operator monitoringu i młodzieniec zapłacił mandat w wysokości 500 złotych. Tak, nieznajomość zasad gry w szachy  szkodzi :)  Informację o zdarzeniu zamieścił portal internetowy Ruda Śląska - TUTAJ .

Debiuty szachowe dla początkujących - część pierwsza

Początkujący szachiści często nieudanie rozgrywają początkową fazę partii. Oczywiście trudności nie sprawiają same ruchy (bo ich nauczyć się nie sztuka) ale ich logika. Czegoż nie można zobaczyć w partii żółtodziobów: atak pionowy, miotanie się hetmanem po całej szachownicy, niefrasobliwość w obronie i osłabianie pozycji swojego króla. Jak należy grać aby uniknąć grubych błędów? Trzeba zapamiętać trzy magiczne słowa: pierwsze - centrum , drugie - mobilizacja , trzecie - bezpieczeństwo . Centrum Problem centrum zawsze zajmował szachistów w dawnych czasach. Uważano że ten, kto zajmie swoimi pionami centralne pola e4, d4, e5, d5 powinien szukać drogi do szybkiego zwycięstwa. Najlepiej przy pomocy taktyki. Współcześnie nie formuje się już tak kategorycznych ocen, ale pierwsza zasada debiutowała pozostaje niezmienna: najważniejsze w debiucie jest centrum . Dlatego trzeba dążyć do opanowania centrum swoimi pionkami i tak wyprowadzać figury, aby móc je atakować.  Partia Wł