I did some testing on SF4, in a way similar to what you described: i started with full SF4, and then disabled one search feature at a time (cumulatively), running it against my program and recording incremental impact of each feature. Here are the results:
LMR=100
Sing. Ext=38
prob cut=28
step 7- futility pruning=56
step 6 - razoring=14
IID=-7
step 13a=27
step 13b=55
step 13c=39
That is, disabling LMR reduces ELO by 100. Then disabling singular extensions reduces it by another 38, and so on. These steps together have an impact of 357 ELO, and i guess they explain most of SF search strength.
Youri.
investigating why stockfish is strong idea
Moderators: hgm, Rebel, chrisw
-
- Posts: 64
- Joined: Fri Oct 18, 2013 11:40 pm
- Location: New York
-
- Posts: 3232
- Joined: Mon May 31, 2010 1:29 pm
- Full name: lucasart
Re: investigating why stockfish is strong idea
Certainly not!Vinvin wrote:This should be done by the dev team.
The testing system is very good to evaluate the Elo perf : http://tests.stockfishchess.org/tests
If someone is willing to spend his time doing the programming, that's his problem. But wasting endless resources in fishtest only to satisfy Uri's curiosity, no thanks!
Theory and practice sometimes clash. And when that happens, theory loses. Every single time.
-
- Posts: 5228
- Joined: Thu Mar 09, 2006 9:40 am
- Full name: Vincent Lejeune
Re: investigating why stockfish is strong idea
It's a choice : you can use 100% of your resources to improve SF or you can use a part to make some research (produce some papers, rise the level of computer science, ...).lucasart wrote:Certainly not!Vinvin wrote:This should be done by the dev team.
The testing system is very good to evaluate the Elo perf : http://tests.stockfishchess.org/tests
If someone is willing to spend his time doing the programming, that's his problem. But wasting endless resources in fishtest only to satisfy Uri's curiosity, no thanks!
-
- Posts: 5566
- Joined: Tue Feb 28, 2012 11:56 pm
Re: investigating why stockfish is strong idea
I don't think there is a choice. Resources are provided to fishtest by volunteers, at their cost, in order to enable the SF developers to improve SF.Vinvin wrote:It's a choice : you can use 100% of your resources to improve SF or you can use a part to make some research (produce some papers, rise the level of computer science, ...).lucasart wrote:Certainly not!Vinvin wrote:This should be done by the dev team.
The testing system is very good to evaluate the Elo perf : http://tests.stockfishchess.org/tests
If someone is willing to spend his time doing the programming, that's his problem. But wasting endless resources in fishtest only to satisfy Uri's curiosity, no thanks!
It is always an option to run tests locally, as Youri has done. It may take longer, so what.
-
- Posts: 10309
- Joined: Thu Mar 09, 2006 12:37 am
- Location: Tel-Aviv Israel
Re: investigating why stockfish is strong idea
There is clearly a choice and the choice is by the leader of the project.syzygy wrote:I don't think there is a choice. Resources are provided to fishtest by volunteers, at their cost, in order to enable the SF developers to improve SF.Vinvin wrote:It's a choice : you can use 100% of your resources to improve SF or you can use a part to make some research (produce some papers, rise the level of computer science, ...).lucasart wrote:Certainly not!Vinvin wrote:This should be done by the dev team.
The testing system is very good to evaluate the Elo perf : http://tests.stockfishchess.org/tests
If someone is willing to spend his time doing the programming, that's his problem. But wasting endless resources in fishtest only to satisfy Uri's curiosity, no thanks!
It is always an option to run tests locally, as Youri has done. It may take longer, so what.
volunteers who give computer time simply decide to support the leader.
If the leader decides about a different choice then the result may be different number of volunteers(I do not know if more volunteers or less volunteers).
Of course the leader is free to decide what to do and I blame nobody in this post and only wanted to corrected the claim that there is no choice.
-
- Posts: 2684
- Joined: Sat Jun 14, 2008 9:17 pm
Re: investigating why stockfish is strong idea
You tests are useless because take nowhere, it's pure academic.Uri Blass wrote: Of course the leader is free to decide what to do and I blame nobody in this post and only wanted to corrected the claim that there is no choice.
People not involved in SF development in any way (even not donating CPU time) have no saying on our choices, even less to tell us what "we should do".
-
- Posts: 10309
- Joined: Thu Mar 09, 2006 12:37 am
- Location: Tel-Aviv Israel
Re: investigating why stockfish is strong idea
It is possible that with different choice different people may donate CPU time.mcostalba wrote:You tests are useless because take nowhere, it's pure academic.Uri Blass wrote: Of course the leader is free to decide what to do and I blame nobody in this post and only wanted to corrected the claim that there is no choice.
People not involved in SF development in any way (even not donating CPU time) have no saying on our choices, even less to tell us what "we should do".
I do not tell the stockfish team what to do and only explain that the claim that there is no different choice is not correct.
My posts are not in order to convince the stockfish team to do something different.
I do not think that they will cause a change but if they cause a change there is a bigger chance that they will cause another person to create his own team when volunteers are going to donate computer time for testing why stockfish is strong and not for improving stockfish.
-
- Posts: 2684
- Joined: Sat Jun 14, 2008 9:17 pm
Re: investigating why stockfish is strong idea
I was not referring to you.Uri Blass wrote: I do not tell the stockfish team what to do
-
- Posts: 3232
- Joined: Mon May 31, 2010 1:29 pm
- Full name: lucasart
Re: investigating why stockfish is strong idea
Then I wonder what the purpose of your posts are. It's always the same. You make suggestions like "we" should do this, "we" should do that. It would be interesting to study the effect of this and that. Yet, when it comes to writing the code, you never do it, unless it is completely trivial. And when it comes to spending CPU resources, you never give your own CPU time. This kind of attitude is not welcome in open source projects.Uri Blass wrote: My posts are not in order to convince the stockfish team to do something different.
Academic masturbation leads nowhere. All the theoretical stuff in computer chess has been discovered 20+ years ago. The answer to your initial question is that there is no magic recipe in SF. As Pavel Koziol explained, it's all about fine tuning and synergy between things. There's no fundamental difference between SF and an "average amateur engine", apart from the absence (or rareness) of bugs, and much better fine tuning. They all have the same fundamentals in (alpha beta, null move, qsearch, iid, pvs, hash table, etc.)
Theory and practice sometimes clash. And when that happens, theory loses. Every single time.
-
- Posts: 2272
- Joined: Mon Sep 29, 2008 1:50 am
Re: investigating why stockfish is strong idea
There are still plenty of things that are not understood from a theoretical point of view.All the theoretical stuff in computer chess has been discovered 20+ years ago.
(1) It there a theoretical explanation why minimax search works so well in Chess? The research into game tree pathologies appears rather unsatisfying to me.
(2) Why is difference in engine strength roughly additive? In other words why is there something like the elo model?
(3) Are there convincing examples of non-transitivity in Chess? Of course you can easily make up pathological examples but this is not what I mean.
(4) Why does self play magnify elo differences? In other words how does the "mind reading effect" _really_ work?
I could go on for a while...
Ideas=science. Simplification=engineering.
Without ideas there is nothing to simplify.
Without ideas there is nothing to simplify.