Crystal Update

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

jhellis3
Posts: 546
Joined: Sat Aug 17, 2013 12:36 am

Crystal Update

Post by jhellis3 »

For those who may find such things useful:

The changes since last release are pretty minor but not insignificant.

1) Small tweak to the "fortress detection" code
2) Better effort to output a sensible PV for only moves
3) More robust king danger detection in search
4) Latest upstream Stockfish merged in

Number 3 along with the ongoing work of all Stockfish contributors (sine qua non) are the most significant changes. Two test problems I check changes against have had their time to resolution dramatically reduced, and many others have had minor or substantial improvement.

The part I am most happy about is that I was able to achieve this without an apparent reduction in playing strength and perhaps even a small gain.

Special thanks to MikeB whose efforts inspired me to jump down the rabbit hole once more. I didn't end up using similar methods (in a way quite the opposite), but Mike's work kickstarted several ideas which, after many iterations, eventually resulted in a few promising ones.

A couple of those ideas did not make it in and will remain only that for the time being.

Source: https://github.com/jhellis3/Stockfish/tree/crystal
User avatar
MikeB
Posts: 4889
Joined: Thu Mar 09, 2006 6:34 am
Location: Pen Argyl, Pennsylvania

Re: Crystal Update

Post by MikeB »

jhellis3 wrote: Wed Apr 08, 2020 4:51 am For those who may find such things useful:

The changes since last release are pretty minor but not insignificant.

1) Small tweak to the "fortress detection" code
2) Better effort to output a sensible PV for only moves
3) More robust king danger detection in search
4) Latest upstream Stockfish merged in

Number 3 along with the ongoing work of all Stockfish contributors (sine qua non) are the most significant changes. Two test problems I check changes against have had their time to resolution dramatically reduced, and many others have had minor or substantial improvement.

The part I am most happy about is that I was able to achieve this without an apparent reduction in playing strength and perhaps even a small gain.

Special thanks to MikeB whose efforts inspired me to jump down the rabbit hole once more. I didn't end up using similar methods (in a way quite the opposite), but Mike's work kickstarted several ideas which, after many iterations, eventually resulted in a few promising ones.

A couple of those ideas did not make it in and will remain only that for the time being.

Source: https://github.com/jhellis3/Stockfish/tree/crystal
For those who are looking for the 'truth' in a chess position , the Crystal chess engine is absolutely a necessary tool in the tool box. A nod and a tip of my hat to Joe Ellis for his contribution in finding the 'truth' in chess.
Image
Alayan
Posts: 550
Joined: Tue Nov 19, 2019 8:48 pm
Full name: Alayan Feh

Re: Crystal Update

Post by Alayan »

Nice ! I'm very interested by 3. I think it could have practical elo-gaining applications, not just analysis applications.

I suggested to Aloril to use Crystal to do live-analysis on TCEC SuFi games between Leela and Stockfish. If any engine can find a brilliancy missed by both of these, it might be Crystal.
User avatar
Marek Soszynski
Posts: 581
Joined: Wed May 10, 2006 7:28 pm
Location: Birmingham, England

Re: Crystal Update

Post by Marek Soszynski »

Thanks Joe,

I look forward to executables.

I have a Linux system, and I can do the Linux compiles myself, which work very well.

However, I also need Windows compiles (non-pc) for certain programs (like old versions of ChessBase and Aquarium running under Wine), and I cannot do Windows compiles on my Linux system.

Marek S.
Marek Soszynski
jhellis3
Posts: 546
Joined: Sat Aug 17, 2013 12:36 am

Re: Crystal Update

Post by jhellis3 »

I created a release with a couple of compiles IpMan has done.

https://github.com/jhellis3/Stockfish/releases/tag/v2.0

One of my favorite things about it is this position: 8/1p1pNpbk/1q1P4/pP2p2K/P3N3/4P1P1/3P4/8 w - -

I actually did not realize it finds it (less than 180s single thread) when I made the original post, but it does. Finally....
Last edited by jhellis3 on Wed Apr 08, 2020 7:39 pm, edited 1 time in total.
Dann Corbit
Posts: 12537
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Crystal Update

Post by Dann Corbit »

Thank you kindly.
Crystal is a must have for analysis of difficult positions.
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.
Vinvin
Posts: 5228
Joined: Thu Mar 09, 2006 9:40 am
Full name: Vincent Lejeune

Re: Crystal Update

Post by Vinvin »

jhellis3 wrote: Wed Apr 08, 2020 7:38 pm I created a release with a couple of compiles IpMan has done.

https://github.com/jhellis3/Stockfish/releases/tag/v2.0

One of my favorite things about it is this position: 8/1p1pNpbk/1q1P4/pP2p2K/P3N3/4P1P1/3P4/8 w - -

I actually did not realize it finds it (less than 180s single thread) when I made the original post, but it does. Finally....
Many Thanks !!

Vincent
User avatar
Marek Soszynski
Posts: 581
Joined: Wed May 10, 2006 7:28 pm
Location: Birmingham, England

Re: Crystal Update

Post by Marek Soszynski »

jhellis3 wrote: Wed Apr 08, 2020 7:38 pm I created a release with a couple of compiles IpMan has done.

https://github.com/jhellis3/Stockfish/releases/tag/v2.0
IpMan also included a "general" version for older PCs:
http://ipmanchess.yolasite.com/compiles.php
Marek Soszynski
Jouni
Posts: 3278
Joined: Wed Mar 08, 2006 8:15 pm

Re: Crystal Update

Post by Jouni »

I tested it in my mate suite. Clearly the best mate solver now! Nice progress from previous version. Thanks.
Jouni
jhellis3
Posts: 546
Joined: Sat Aug 17, 2013 12:36 am

Re: Crystal Update

Post by jhellis3 »

I have added one more very minor update, which includes the following:

1) Correct scoring support for 7 piece TBs

2) Put a few example positions in the readme for the inevitable question: why Crystal?

3) Retired razoring.... it was barely worth any Elo, (even tested better without it at LTC for me), severely restricted in application, and the only negative early pruning. Removing it cleaned up the code and is one less thing to worry about, which I am all for, so it is gone :).