To analysis.sesse.net owner : disable contempt

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

Moderators: hgm, Harvey Williamson, bob

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
Vinvin
Posts: 4137
Joined: Thu Mar 09, 2006 8:40 am

To analysis.sesse.net owner : disable contempt

Post by Vinvin » Sun Nov 18, 2018 11:20 am

Last game I followed on analysis.sesse.net, I saw that when it's white to play score is higher for white and it's black to play score is higher for black.
I suppose the reason is the contempt value is not set to 0. ( Note may be I'm wrong and up and down values were real ...)
That lead to a roller-coaster graph.
For analysis it's better to get a neutral value.
So please set contempt = 0 in parameters.

Thanks,
Vincent

syzygy
Posts: 4343
Joined: Tue Feb 28, 2012 10:56 pm

Re: To analysis.sesse.net owner : disable contempt

Post by syzygy » Sun Nov 18, 2018 1:54 pm

This is why "Off" should be the default value of Analysis Contempt (and "Both" is simply useless).

Gian-Carlo Pascutto
Posts: 1120
Joined: Sat Dec 13, 2008 6:00 pm
Contact:

Re: To analysis.sesse.net owner : disable contempt

Post by Gian-Carlo Pascutto » Mon Nov 19, 2018 3:42 pm

But I guess it's hopeless to convince people to fix this for Stockfish 10?

It's very annoying because of course every application designed around Stockfish inevitably gets it wrong.

Dann Corbit
Posts: 9055
Joined: Wed Mar 08, 2006 7:57 pm
Location: Redmond, WA USA
Contact:

Re: To analysis.sesse.net owner : disable contempt

Post by Dann Corbit » Mon Nov 19, 2018 8:10 pm

Vinvin wrote:
Sun Nov 18, 2018 11:20 am
Last game I followed on analysis.sesse.net, I saw that when it's white to play score is higher for white and it's black to play score is higher for black.
I suppose the reason is the contempt value is not set to 0. ( Note may be I'm wrong and up and down values were real ...)
That lead to a roller-coaster graph.
For analysis it's better to get a neutral value.
So please set contempt = 0 in parameters.

Thanks,
Vincent
I make special builds where I turn all contempt off, because I don't care if it makes it play stronger, I want the real analysis.
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: 9055
Joined: Wed Mar 08, 2006 7:57 pm
Location: Redmond, WA USA
Contact:

Re: To analysis.sesse.net owner : disable contempt

Post by Dann Corbit » Mon Nov 19, 2018 8:49 pm

Here is the main change to alter contempt:

Code: Select all

                // Adjust contempt based on root move's previousScore (dynamic contempt)
                int dct;
                if (Options["Dynamic Contempt"] == false)
                {
                    dct = 0;
                    contempt = Score(0);
                }
                else
                {
                    dct = ct + 88 * previousScore / (abs(previousScore) + 200);
                    contempt = (us == WHITE ?  make_score(dct, dct / 2)
                                : -make_score(dct, dct / 2));
                }
Don't worry SF team, I never play it in contests. I only use it to analyze.
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.

schack
Posts: 111
Joined: Thu May 27, 2010 1:32 am
Contact:

Re: To analysis.sesse.net owner : disable contempt

Post by schack » Tue Nov 20, 2018 5:24 am

Where do you insert this in the source files?

MikeB
Posts: 2720
Joined: Thu Mar 09, 2006 5:34 am
Location: Pen Argyl, Pennsylvania

Re: To analysis.sesse.net owner : disable contempt

Post by MikeB » Tue Nov 20, 2018 5:45 am

schack wrote:
Tue Nov 20, 2018 5:24 am
Where do you insert this in the source files?
look for this line in search.cpp

Code: Select all

// Adjust contempt based on root move's previousScore (dynamic contempt)
and then slide this in as Dann shows it in his post. You also need to to update ucioption.cpp

Code: Select all

 
 int dct;
 if (Options["Dynamic Contempt"] == false)
                {
                    dct = 0;
                    contempt = Score(0);
                }
                else
this will be in my feature set in the next release of McCain...

schack
Posts: 111
Joined: Thu May 27, 2010 1:32 am
Contact:

Re: To analysis.sesse.net owner : disable contempt

Post by schack » Tue Nov 20, 2018 4:55 pm

What do I update in ucioptions?

I've just been setting contempt=0 and then compiling, but it would be good to have the option to remove the other contempt too.

Dann Corbit
Posts: 9055
Joined: Wed Mar 08, 2006 7:57 pm
Location: Redmond, WA USA
Contact:

Re: To analysis.sesse.net owner : disable contempt

Post by Dann Corbit » Tue Nov 20, 2018 7:30 pm

schack wrote:
Tue Nov 20, 2018 5:24 am
Where do you insert this in the source files?
Of course, if anyone asks, I should share the source code. Here is a link and there are 2 64 bit binaries in it.
https://drive.google.com/open?id=1Rmmi0 ... tQNfOjllJa

You should not use it for competitions like tournaments because the changes I have made are strictly for analysis and not for game play.

It also logs the analysis directly to disk and you may want to turn that off. I have a program that reads the disk log file and turns the data into stored procedure calls so that I can update my database. I do not think that data will be very useful for most people. Logging is a UCI option in my version.
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.

BeyondCritics
Posts: 335
Joined: Sat May 05, 2012 12:48 pm
Location: Bergheim

Re: To analysis.sesse.net owner : disable contempt

Post by BeyondCritics » Wed Nov 21, 2018 7:12 pm

Please can you explain, why setting "Contempt=Both" is so unbearable in analysis mode?
At the very least it relieves us from useless 3-fold repetitions in the pv, which were really a plague, as you might recall.

Post Reply