Where is the source code of ShashChess engine

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

Moderator: Ras

corres
Posts: 3657
Joined: Wed Nov 18, 2015 11:41 am
Location: hungary

Re: Where is the source code of ShashChess engine

Post by corres »

Dann Corbit wrote: Sun Dec 27, 2020 1:21 pm ShashChess is superior tactically to Stockfish.
I use it for analysis and find it extremely useful (along with Bluefish and bleeding edge SF, it is absolutely critical for a thorough analysis of a tactical position).
It is a lot of work to analyze and understand what some difference actually does.
For me it boils down to this:
1. There are lots of people who simply steal Stockfish code and do not follow the GPL, the the ShashChess authors did not do this and hence are honorable.They have done more than jam in a screwdriver and tweak a few screws.
2. The changes they made are useful. They help SF to find solutions that are otherwise missed.
3. If someone wants to understand what the changes they made mean, there are no shortcuts, because comprehension comes from the study.

This third point is very important. For instance, if I read, analyze and understand the code it will not create understanding for someone else.
The only way to understand the changes is to study them yourself. You may imagine it will be faster if someone else studies it for you. But not so. It will only mean that they understand the changes and you still do not understand the changes. One might say that it would be quicker if someone else were to point out the places where something is different. But that is exactly what winmerge does.

IMO YMMV
You do not gave any answers to the most important question:
"Could you find in code of ShashChess the Shashin evaluation (files)" or not?
If somebody change the search of Stockfish (as it happened in ShashChess) obviously it will be modified the play of Stockfish. To decide about the play of the original Stockfish or the modified Stockfish (named as ShashChess) is nicer is a very subjective thing. Everybody have right to choose his opinion. There are peoples who like engines with "personality". I can not decide about the personalities of ShashChess that these are authentic or not. But one "personality" evidently lacks from the code and the play of ShashChess: The personality of Alexander Shashin.
So from what Stockfish became "ShashChess"??
corres
Posts: 3657
Joined: Wed Nov 18, 2015 11:41 am
Location: hungary

Re: Where is the source code of ShashChess engine

Post by corres »

amchess wrote: Sun Dec 27, 2020 3:35 pm I'm a corr chess IM, computer science engineer and I deeply studied Shashin theory in his book.
To simplify at the max, as every theory there is a model and its application.
In this case, the model is not totally scientific:
4 mathematical parameters (material, mobility packaging density and expansion factor) and another (the safety), an "artistic one", as told by the author himself. A human brain can conceive this parameter intuitively and with some gold rules, but it can not be adapted to a chess engine programmatically, even because too semplicistic compared to classical eval (about 11 factors in the linear combination) and nnue (even over 1000).
So the model MUST BE the one of Stockfish (or the other engine): classical or nnue eval.
The application is the drift chart at the beginning of the book where you can find the three main positions type (Tal, Capablanca and Petrosian).
The scale of this chart is by ratio centered to 1 (not as engines centered to 0).
So, my idea was, with the right conversion, to determine the position's nature by the original engine's eval and after direct the search and the eval itself (if classical).
The goal is to solve very know Stockfish problems like hard pruning and very weak hard positions solving capabilities.
Those problems are generated because Stockfish community has FAST TIME CONTROLS as first priority in their testing framework, but it is totally unsatisfying a modern corr player and a deep analysis: a lot of potentially good moves are discarded in many cases.
Some engines (even the commercial Komodo) added buttons like lmr or null move to enable/disable the engine.
This approach is unsatisfying because the absolute strength in game play is a lot decreased.
The results obtained by our testing strategy (match play and hard positions solving) demonstrate this is the flexible approach to follow.
The drawback surely is less kn/s, but this is not a god and I'm interested overall in long time controls to offer to corr chess players a truly useful tool.
Anyway, even at short time control, the better analysis quality compensate the minor speed and the results are not so bad.
Potentially, a lot of official discarded patches and even official ones can be applied in a flexible way by Shashin theory (so that when needed).
A lot of work and potential improvements: the only difficult is to find people available to tests....
As told above, Winmerge is enough to see my work (aprreciated also by some stockfish community member).
I tried to be coincise and clear.
Thanks anyway to have given me the possibility of those explications.
Andrea Manzo
If you would state you made a derivative of Stockfish what has changeable personalities I would not search for Shashin evaluations in your derivative. But a "ShashChess" engine without evaluation based on Shashin method...
Maybe you should modify the name of your derivative for the unanimity.
Winmerge can mark the difference between two sources, but Winmerge is unable to interpret the found differences.
For e.g. in this case winmerge do not know what is "Shashin Method" and which difference contain the codes of "Shashin Method" or anything totally other.
corres
Posts: 3657
Joined: Wed Nov 18, 2015 11:41 am
Location: hungary

Re: Where is the source code of ShashChess engine

Post by corres »

carldaman wrote: Sun Dec 27, 2020 2:29 pm "I immediately warn that chess cannot be taught, you can only learn it yourself" - Mikhail Botvinnik to his chess school students.
Robert Fisher was the person who took Botvinnik`s advice.
But Polgar Papa is that person who demonstrated just the opposite, playing chess can be taught.
And the results were demonstrated by the Polgar`Sisters.
Dann Corbit
Posts: 12817
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Where is the source code of ShashChess engine

Post by Dann Corbit »

I have lots of intervals that I analyze with.
Sometimes I do 50 plies
Sometimes I do 1/2 hour
Sometimes only 5 minutes.

If the position is tactical, ShashChess is a very good idea.

For opening positions, I use bleeding edge SF and LC0 with 2x2080 Supers.
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.
Dann Corbit
Posts: 12817
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Where is the source code of ShashChess engine

Post by Dann Corbit »

corres wrote: Sun Dec 27, 2020 10:29 pm You do not gave any answers to the most important question:
"Could you find in code of ShashChess the Shashin evaluation (files)" or not?
If somebody change the search of Stockfish (as it happened in ShashChess) obviously it will be modified the play of Stockfish. To decide about the play of the original Stockfish or the modified Stockfish (named as ShashChess) is nicer is a very subjective thing. Everybody have right to choose his opinion. There are peoples who like engines with "personality". I can not decide about the personalities of ShashChess that these are authentic or not. But one "personality" evidently lacks from the code and the play of ShashChess: The personality of Alexander Shashin.
So from what Stockfish became "ShashChess"??
I did not find the thing you ask for because I have never looked for it.
And if I were to search for it, I would first have to identify the signature of what I am looking for so that I could recognize it.
I did run the diffs myself, some time ago. I saw some interesting things and I wanted to trace them in the debugger so that I was sure my understanding was correct. However, I am able to compile without error but I cannot link successfully. So my investigations died there.

I honestly do not care if the changes follow some particular theoretical line or not. What I am interested in is, "Does it analyze better?"
I am fully convinced that it does a better job of analyzing tactical positions while still doing a good job on quiet positions.
I would like to understand more fully what the changes really accomplish and some of them were clear, but the unclear changes cannot currently be traced by me because I cannot build it. So my interest and investigations die there for now.

I still use it, but without fully comprehending exactly what is different.
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.
corres
Posts: 3657
Joined: Wed Nov 18, 2015 11:41 am
Location: hungary

Re: Where is the source code of ShashChess engine

Post by corres »

Dann Corbit wrote: Sun Dec 27, 2020 11:43 pm I have lots of intervals that I analyze with.
Sometimes I do 50 plies
Sometimes I do 1/2 hour
Sometimes only 5 minutes.

If the position is tactical, ShashChess is a very good idea.

For opening positions, I use bleeding edge SF and LC0 with 2x2080 Supers.
If you can not give us a correct answer please, save us this bla-di-bla.
You can use such an engine what you want.
karger
Posts: 218
Joined: Tue Feb 02, 2010 2:27 am
Full name: John Karger

Re: Where is the source code of ShashChess engine

Post by karger »

Corres , Dann Corbit has been recognized as one of the best computer chess experts alive today , What have you done for computer chess other than the blah-di-blah you posted here ? I googled you & found no contributions to computer chess at all. Maybe you can direct me to where I can find your many computer chess accomplishments , I really want to learn from you. Thanks , Karger
User avatar
Graham Banks
Posts: 45293
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: Where is the source code of ShashChess engine

Post by Graham Banks »

karger wrote: Mon Dec 28, 2020 12:55 am Corres , Dann Corbit has been recognized as one of the best computer chess experts alive today , What have you done for computer chess other than the blah-di-blah you posted here ? I googled you & found no contributions to computer chess at all. Maybe you can direct me to where I can find your many computer chess accomplishments , I really want to learn from you. Thanks , Karger
Why won't he use his real name?
I thought that this was a condition of joining Talkchess.
gbanksnz at gmail.com
Dann Corbit
Posts: 12817
Joined: Wed Mar 08, 2006 8:57 pm
Location: Redmond, WA USA

Re: Where is the source code of ShashChess engine

Post by Dann Corbit »

Let's cut him some slack.
We all get frustrated at times.
Month after month cooped up inside, we are probably all stir crazy by now
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.
Cornfed
Posts: 511
Joined: Sun Apr 26, 2020 11:40 pm
Full name: Brian D. Smith

Re: Where is the source code of ShashChess engine

Post by Cornfed »

Dann Corbit wrote: Sun Dec 27, 2020 11:43 pm I have lots of intervals that I analyze with.
Sometimes I do 50 plies
Sometimes I do 1/2 hour
Sometimes only 5 minutes.

If the position is tactical, ShashChess is a very good idea.

For opening positions, I use bleeding edge SF and LC0 with 2x2080 Supers.
I presume this was in answer to my question.

So, for your 'average' position (not opening, not tactical middlegames)...the latest Stockfish is better. SashChess is only better for deep tactical positions. That seems to be what I get from your answer.