Tomasz Sobczyk
880d23af1c
Move sfen input/output streams to sfen_stream.h
2020-10-15 20:37:03 +09:00
Tomasz Sobczyk
14f83ad7b9
Move public search/qsearch interface from namespace Learner to namespace Search
2020-10-15 20:37:03 +09:00
Tomasz Sobczyk
0494adeb2c
Move nnue evaluation stuff from evaluate.h to nnue/evaluate_nnue.h
2020-10-15 20:37:03 +09:00
Tomasz Sobczyk
4a340ad3b2
Add docs for auto_lr_drop
2020-10-12 23:56:26 +09:00
Tomasz Sobczyk
4a2bf16b30
Add option "auto_lr_drop" that specifies the amount of positions from previous lr drop after which to reduce lr by newbob_decay.
2020-10-12 23:56:26 +09:00
Tomasz Sobczyk
7d62b3f799
Store additional bits for fullmove clock and 50 more rule halfmove clock at the end of the bit stream. This change keeps backwards compatibility.
2020-10-11 20:59:27 +09:00
Tomasz Sobczyk
de20887e11
Update readme. Link to docs.
2020-10-10 14:37:51 +09:00
Tomasz Sobczyk
2af4bf7eac
Move the docs folder one above, it was in src by mistake.
2020-10-10 14:37:51 +09:00
Tomasz Sobczyk
ef57ac78a3
Print gensfen speed when outputting status.
2020-10-09 08:14:48 +09:00
Joost VandeVondele
adddf339bb
Output sfens/second in the trainer, to track performance more easily
2020-10-08 08:29:42 +09:00
Tomasz Sobczyk
3f55b3af42
Change some gensfen parameter defaults.
2020-10-07 23:09:33 +09:00
Tomasz Sobczyk
8830209125
Change some learn parameter defaults.
2020-10-07 23:09:33 +09:00
Tomasz Sobczyk
2e57f3fa22
Switch to set recommended learn UCI options
2020-10-07 23:09:33 +09:00
Tomasz Sobczyk
d1c44dca04
Switch to set recommended gensfen UCI options
2020-10-07 23:09:33 +09:00
Tomasz Sobczyk
5fa28b12fa
Allow setting UCI options programmatically.
2020-10-07 23:09:33 +09:00
Tomasz Sobczyk
80cbc3ffee
Fix grammar and spelling. Add recommendations for UCI options.
2020-10-07 16:08:26 +09:00
Tomasz Sobczyk
31f9d66f12
Initial documentation for learn, gensfen, convert, and binpack.
2020-10-07 16:08:26 +09:00
noobpwnftw
91cb4a6770
Skip eval dampening in Use NNUE = pure case
2020-10-03 19:31:21 +09:00
noobpwnftw
6f7a228707
Minor cleanups
...
Remove unused code and magic numbers
2020-10-01 16:52:20 +09:00
Joost VandeVondele
f848d67341
Use fair scheduling of threads under valgrind
...
fixes some rare case where the master search thread makes no progress,
observed in CI.
2020-10-01 09:36:44 +09:00
nodchip
b889debfb5
Merge pull request #171 from noobpwnftw/sf_merge
...
Merge SFdev
2020-09-30 10:18:41 +09:00
noobpwnftw
d865159bd6
Fix variable initialization in test commands
2020-09-29 17:30:08 +08:00
noobpwnftw
a8b502a975
Merge remote-tracking branch 'remotes/origin/master'
...
Bench: 3618595
2020-09-29 17:09:14 +08:00
noobpwnftw
b44d539c94
Fix a bug that LR is not correctly scaled when initial LR is not 1.0
2020-09-29 16:18:42 +09:00
Stéphane Nicolet
5af09cfda5
Include pawns in NNUE scaling
...
We now include the total pawn count in the scaling factor for the output
of the NNUE evaluation network. This should have the effect of trying to
keep more pawns when SF has the advantage, but exchange them when she
is defending.
Thanks to Alexander Pagel (Lolligerhans) for the idea of using the
value of pawns to ease the comparison with the rest of the material
estimation.
Passed STC:
LLR: 2.93 (-2.94,2.94) {-0.25,1.25}
Total: 15072 W: 1700 L: 1539 D: 11833
Ptnml(0-2): 65, 1202, 4845, 1355, 69
https://tests.stockfishchess.org/tests/view/5f7235a63b22d6afa50699b3
Passed LTC:
LLR: 2.93 (-2.94,2.94) {0.25,1.25}
Total: 25880 W: 1270 L: 1124 D: 23486
Ptnml(0-2): 23, 980, 10788, 1126, 23
https://tests.stockfishchess.org/tests/view/5f723b483b22d6afa5069a99
closes https://github.com/official-stockfish/Stockfish/pull/3164
Bench: 3776081
2020-09-28 22:42:26 +02:00
Stefan Geschwentner
6f0aa186d8
Tweak reduction formula.
...
Replace log(i) with log(i + 0.25 * log(i)). This increases especially for low values the reductions. But for bigger values there are nearly no changes.
STC:
LLR: 2.94 (-2.94,2.94) {-0.25,1.25}
Total: 49640 W: 5505 L: 5289 D: 38846
Ptnml(0-2): 270, 4074, 15924, 4274, 278
https://tests.stockfishchess.org/tests/view/5f71f04d3b22d6afa5069478
LTC:
LLR: 2.94 (-2.94,2.94) {0.25,1.25}
Total: 43856 W: 2209 L: 2021 D: 39626
Ptnml(0-2): 32, 1776, 18128, 1956, 36
https://tests.stockfishchess.org/tests/view/5f7232ee3b22d6afa50699a2
closes https://github.com/official-stockfish/Stockfish/pull/3163
Bench: 3555769
2020-09-28 22:34:25 +02:00
SFisGOD
5efbaaba77
Update default net to nn-baeb9ef2d183.nnue
...
Further optimization of Sergio's nn-03744f8d56d8.nnue
This patch is the result of collaboration with Joost VandeVondele.
STC:
LLR: 2.96 (-2.94,2.94) {-0.25,1.25}
Total: 37000 W: 4145 L: 3947 D: 28908
Ptnml(0-2): 191, 3016, 11912, 3166, 215
https://tests.stockfishchess.org/tests/view/5f71e7983b22d6afa5069475
LTC:
LLR: 2.96 (-2.94,2.94) {0.25,1.25}
Total: 60224 W: 2992 L: 2769 D: 54463
Ptnml(0-2): 48, 2420, 24956, 2637, 51
https://tests.stockfishchess.org/tests/view/5f722bb83b22d6afa506998f
closes https://github.com/official-stockfish/Stockfish/pull/3161
Bench: 3720073
2020-09-28 22:29:31 +02:00
FauziAkram
ba46599aa2
Tweaking Mobility and Safe Check
...
Passed STC:
https://tests.stockfishchess.org/tests/view/5f70d86d3b22d6afa50693b9
LLR: 2.94 (-2.94,2.94) {-0.25,1.25}
Total: 100368 W: 20323 L: 19914 D: 60131
Ptnml(0-2): 1927, 11641, 22605, 12118, 1893
Passed LTC:
https://tests.stockfishchess.org/tests/view/5f71bb553b22d6afa5069457
LLR: 2.94 (-2.94,2.94) {0.25,1.25}
Total: 77648 W: 10613 L: 10181 D: 56854
Ptnml(0-2): 634, 7280, 22594, 7652, 664
closes https://github.com/official-stockfish/Stockfish/pull/3160
Bench: 3861984
2020-09-28 22:26:37 +02:00
Vizvezdenec
a5e68d9b25
Adjust null move pruning constants
...
Idea is that division by fraction of 2 is slightly faster than by other numbers so parameters are adjusted in a way that division in null move pruning depth reduction features dividing by 256 instead of dividing by 213.
Other than this patch is almost non-functional - difference starts to exist by depth 133.
passed STC
https://tests.stockfishchess.org/tests/view/5f70dd943b22d6afa50693c5
LLR: 2.95 (-2.94,2.94) {-0.25,1.25}
Total: 57048 W: 6616 L: 6392 D: 44040
Ptnml(0-2): 304, 4583, 18531, 4797, 309
passed LTC
https://tests.stockfishchess.org/tests/view/5f7180db3b22d6afa506941f
LLR: 2.95 (-2.94,2.94) {0.25,1.25}
Total: 45960 W: 2419 L: 2229 D: 41312
Ptnml(0-2): 43, 1779, 19137, 1987, 34
closes https://github.com/official-stockfish/Stockfish/pull/3159
bench 3789924
2020-09-28 22:22:54 +02:00
Joost VandeVondele
36c2886302
Update default net to nn-04a843f8932e.nnue
...
an optimization of Sergio's nn-03744f8d56d8.nnue tuning the output layer (33 parameters) on game play.
WIP code to make layer parameters tunable is https://github.com/vondele/Stockfish/tree/optionOutput
Optimization itself is using https://github.com/vondele/nevergrad4sf
Writing of the modified net using WIP code based on the learner code https://github.com/vondele/Stockfish/tree/evalWrite
Most parameters in the output layer are changed only little (~5 for int8_t).
passed STC:
https://tests.stockfishchess.org/tests/view/5f716f6b3b22d6afa506941a
LLR: 2.94 (-2.94,2.94) {-0.25,1.25}
Total: 15488 W: 1859 L: 1689 D: 11940
Ptnml(0-2): 79, 1260, 4917, 1388, 100
passed LTC:
https://tests.stockfishchess.org/tests/view/5f71908e3b22d6afa506942e
LLR: 2.93 (-2.94,2.94) {0.25,1.25}
Total: 8728 W: 518 L: 400 D: 7810
Ptnml(0-2): 7, 338, 3556, 456, 7
closes https://github.com/official-stockfish/Stockfish/pull/3158
Bench: 3789924
2020-09-28 16:55:40 +02:00
noobpwnftw
c065abdcaf
Use incremental updates more often
...
Use incremental updates for accumulators for up to 2 plies.
Do not copy accumulator. About 2% speedup.
Passed STC:
LLR: 2.95 (-2.94,2.94) {-0.25,1.25}
Total: 21752 W: 2583 L: 2403 D: 16766
Ptnml(0-2): 128, 1761, 6923, 1931, 133
https://tests.stockfishchess.org/tests/view/5f7150cf3b22d6afa5069412
closes https://github.com/official-stockfish/Stockfish/pull/3157
No functional change
2020-09-28 16:54:35 +02:00
Stéphane Nicolet
1dbd2a1ad5
Tweak nnue scaling to keep more material
...
Current master uses a constant scale factor of 5/4 = 1.25 for the output
of the NNUE network, for compatibility with search and classical evaluation.
We modify this scale factor to make it dependent on the phase of the game,
going from about 1.5 in the opening to 1.0 for pure pawn endgames.
This helps Stockfish to avoid exchanges of pieces (heavy pieces in particular)
when she has the advantage, keeping more material on the board when attacking.
Passed STC:
LLR: 2.95 (-2.94,2.94) {-0.25,1.25}
Total: 14744 W: 1771 L: 1599 D: 11374
Ptnml(0-2): 87, 1184, 4664, 1344, 93
https://tests.stockfishchess.org/tests/view/5f6fb0a63b22d6afa506904f
Passed LTC:
LLR: 2.95 (-2.94,2.94) {0.25,1.25}
Total: 8912 W: 512 L: 393 D: 8007
Ptnml(0-2): 7, 344, 3637, 459, 9
https://tests.stockfishchess.org/tests/view/5f6fcf533b22d6afa5069066
closes https://github.com/official-stockfish/Stockfish/pull/3154
Bench: 3943952
2020-09-27 08:24:50 +02:00
noobpwnftw
9d4bf4fe0c
Optimize accumulators for null move.
2020-09-27 09:39:16 +09:00
noobpwnftw
96a3180770
Update instrumented_learn.sh
...
Fix typo.
2020-09-27 09:32:26 +09:00
noobpwnftw
5e8a49f7f2
Restore lambda and gradient function post-merge and minor fixes.
...
bench: 3788313
2020-09-26 12:55:02 +09:00
nodchip
d1967bb281
Merge pull request #165 from Sopel97/merge_attempt
...
Merge attempt with official-stockfish/master and noobpwnftw/trainer
2020-09-26 10:05:16 +09:00
SFisGOD
f66c381f11
Switch to NNUE eval probabilistically for OCB
...
Introduce a small chance of switching to NNUE if PSQ imbalance is large but we have opposite colored bishops and the classical eval is struggling to win.
STC:
LLR: 2.94 (-2.94,2.94) {-0.25,1.25}
Total: 25304 W: 3179 L: 2983 D: 19142
Ptnml(0-2): 172, 2171, 7781, 2345, 183
https://tests.stockfishchess.org/tests/view/5f6b14dec7759d4ee307cfe3
LTC:
LLR: 2.94 (-2.94,2.94) {0.25,1.25}
Total: 84680 W: 4846 L: 4556 D: 75278
Ptnml(0-2): 89, 3933, 34011, 4213, 94
https://tests.stockfishchess.org/tests/view/5f6b3fb6c7759d4ee307cff9
closes https://github.com/official-stockfish/Stockfish/pull/3146
Bench: 3865413
2020-09-25 17:44:19 +02:00
Stéphane Nicolet
5e6a5e48e6
Suppress info strings before 'uci'
...
On Windows, Stockfish wouldn't launch in some GUI because we output some
info strings (about the use of large pages) before sending the 'uci'
command. It seems more robust to suppress these info strings, and instead
to add a proper section section in the Readme about large pages use.
fixes https://github.com/official-stockfish/Stockfish/issues/3052
closes https://github.com/official-stockfish/Stockfish/pull/3147
No functional change
2020-09-25 17:44:14 +02:00
Tomasz Sobczyk
c99541828f
Remove the re-search on depth 0. It is correctly handled by search now.
2020-09-25 16:06:33 +02:00
Tomasz Sobczyk
b6e7733b4c
In gensfen call search before get_current_game_result so that rootMoves is initialized by Learner::init_for_search. Don't call Tablebases::rank_root_moves in get_current_game_result because it's called in Learner::init_for_search. This fixes accessing uninitialized variables related to tablebases.
2020-09-25 15:04:21 +02:00
Tomasz Sobczyk
89eeb36835
Initialize Tablebases::MaxCardinality to 0 to prevent uninitialized variable read in rank_root_moves
2020-09-25 13:42:27 +02:00
Tomasz Sobczyk
654b94f0a7
Remove old unused use_raw_nnue_eval option from gensfen tests
2020-09-25 10:41:40 +02:00
Tomasz Sobczyk
0a3e070ffb
Adjust instrumented learn test for parameter changes.
2020-09-25 00:11:24 +02:00
Tomasz Sobczyk
9955f51215
Update bench signature. Bench: 4698761
2020-09-24 23:23:37 +02:00
Tomasz Sobczyk
baf8b5beaf
Change default net so that the architecture matches the architecture expected by the binary.
2020-09-24 22:58:21 +02:00
Tomasz Sobczyk
d4a5f91766
Add info string when loading/failing to load an eval file.
2020-09-24 22:57:55 +02:00
Tomasz Sobczyk
9f87282c6d
Fix net not being downloaded on build. Make PGO build faster by reverting gensfen command change.
2020-09-24 21:59:25 +02:00
Tomasz Sobczyk
9f3de8b40e
Revert some unwanted changes from merge conflict resolution.
2020-09-24 21:10:10 +02:00
Tomasz Sobczyk
56f1a2fe49
Merge branch 'trainer' into merge_attempt
2020-09-24 20:45:23 +02:00
Tomasz Sobczyk
4abe836896
Merge remote-tracking branch 'upstream/master' into merge_attempt
2020-09-24 20:34:29 +02:00