Comments (7)
I've explored this in the past. If I recall the results correctly, while passing a threshold is a speedup, it causes worse move ordering for the prob cut picker. IE, when eval > rBeta, we will allow moves with negative SEE() scores -- but not they are placed at the same order as what is conventionally called a good SEE move.
I will happily try again, and see what happens.
Naturally, it SHOULD be initNoiseMovePicker(&movePicker, thread, rBeta - eval);
from ethereal.
http://chess.grantnet.us/viewTest/1547/
This was the original test, and it looks like I never followed up on the probcut part of the idea. I did however, add the noisyMovePicker version for the qsearch
from ethereal.
Yeah, using max would cut some moves with SEE between rBeta - eval and 0 that would be played with the current move picker. It Indeed changes the move order.
from ethereal.
Do you think is worth to limit the number of movements? Maybe use something like probCutMoves < LateMovePruningCounts[improving][1]?
from ethereal.
This has been tried -- I believe Stockfish was the first to do it in the open source world. They will try no more than 3/4 moves for a position.
Original idea http://chess.grantnet.us/viewTest/2069/ is going well so far, so perhaps I will again try the limiting.
from ethereal.
http://chess.grantnet.us/viewTest/379/
http://chess.grantnet.us/viewTest/380/
http://chess.grantnet.us/viewTest/381/
from ethereal.
Nice, almost passing the STC!
from ethereal.
Related Issues (20)
- Can you build a Korean chess engine? HOT 1
- PONDERLOCK is locked by a thread and unlocked by another thread which is undefined behavior HOT 2
- UCI_AnalyseMode HOT 1
- Error compiling Ethereal on MacOS HOT 2
- compiling error : "the clang compiler does not support '-march=native'" HOT 1
- strange and surprising chess mistake : Why ? HOT 1
- Evals not normalized to +1.00 = 50% win
- Normalized evaluation HOT 5
- Ethereal Commercial VS Ethereal Free HOT 2
- make error HOT 3
- tt_store comment confusion HOT 2
- Things to do if I had time
- pawn targets in genAllNoisyMoves HOT 4
- Sizeof(board.history)
- Please add ARMv9.2, SVE2, Dot Product and Neon support HOT 1
- queen contribution to attackedBy2 is wrong HOT 6
- nit -- line appears to be a no-op
- Bug in evaluateComplexity HOT 2
- Recommendation for CCC Engines
- Missing -static in CFLAGS? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ethereal.