fairystockfish.git
6 years agoMerge official-stockfish/master
Fabian Fichter [Sun, 16 Jun 2019 13:54:37 +0000]
Merge official-stockfish/master

No functional change.

6 years agoMerge official-stockfish/master
Fabian Fichter [Sun, 16 Jun 2019 11:54:56 +0000]
Merge official-stockfish/master

bench: 3700144

6 years agoReduce connected bonus for horde
Fabian Fichter [Sun, 16 Jun 2019 08:17:18 +0000]
Reduce connected bonus for horde

Revert parameter change caused by mis-merge.

horde STC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 500 W: 302 L: 193 D: 5
http://35.161.250.236:6543/tests/view/5d05fb8b6e23db34f4206bd6

horde LTC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 343 W: 222 L: 116 D: 5
http://35.161.250.236:6543/tests/view/5d0603346e23db34f4206bd9

6 years agoMerge official-stockfish/master
Fabian Fichter [Sat, 15 Jun 2019 14:08:54 +0000]
Merge official-stockfish/master

bench: 3785196

6 years agoMerge official-stockfish/master
Fabian Fichter [Sat, 15 Jun 2019 13:45:57 +0000]
Merge official-stockfish/master

No functional change.

6 years agoMerge official-stockfish/master
Fabian Fichter [Thu, 13 Jun 2019 20:26:10 +0000]
Merge official-stockfish/master

bench: 3468545

6 years agoMerge official-stockfish/master
Fabian Fichter [Thu, 13 Jun 2019 20:09:05 +0000]
Merge official-stockfish/master

No functional change.

6 years agoAssorted trivial cleanups 5/2019
Marco Costalba [Thu, 2 May 2019 17:36:25 +0000]
Assorted trivial cleanups 5/2019

No functional change.

bench: 4178282

6 years agoRemove depth condition for ttPv (#2166)
Stefan Geschwentner [Sun, 9 Jun 2019 12:34:51 +0000]
Remove depth condition for ttPv (#2166)

Currently PV nodes with a depth <= 4 were ignored for ttPv. Now remove this constraint and use all PV nodes.

STC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 52209 W: 11755 L: 11694 D: 28760
http://tests.stockfishchess.org/tests/view/5cebc2d30ebc5925cf07b93a

LTC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 20874 W: 3689 L: 3568 D: 13617
http://tests.stockfishchess.org/tests/view/5cec01fc0ebc5925cf07c62d

6 years agoSimplify passed pawns. (#2159)
protonspring [Sun, 9 Jun 2019 12:33:34 +0000]
Simplify passed pawns. (#2159)

This is a functional simplification.

If all of the stoppers are levers, a simple pawn push passes.

STC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 41768 W: 9360 L: 9278 D: 23130
http://tests.stockfishchess.org/tests/view/5ce82ed60ebc5925cf073a79

LTC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 40463 W: 6964 L: 6875 D: 26624
http://tests.stockfishchess.org/tests/view/5ce87d0b0ebc5925cf07472b

6 years agoRemove a few file_of's (simplify adjacent_files_bb) #2171
protonspring [Sun, 9 Jun 2019 12:31:16 +0000]
Remove a few file_of's (simplify adjacent_files_bb) #2171

This is a non-functional simplification that removes two file_of(s).

STC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 22030 W: 5106 L: 4984 D: 11940
http://tests.stockfishchess.org/tests/view/5cf028de0ebc5925cf0839e7

6 years agoSimplify WeakUnopposedPawn #2181
protonspring [Sun, 9 Jun 2019 12:28:42 +0000]
Simplify WeakUnopposedPawn #2181

This is a functional simplification.

Moves WeakUnopposedPawn to pawns.cpp and remove piece dependency.

STC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 8699 W: 2000 L: 1853 D: 4846
http://tests.stockfishchess.org/tests/view/5cf7721b0ebc5925cf08ee79

LTC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 46605 W: 7969 L: 7890 D: 30746
http://tests.stockfishchess.org/tests/view/5cf7d5f70ebc5925cf08fa96

6 years agoSEE Pruning Tweak (#2183)
VoyagerOne [Sun, 9 Jun 2019 12:27:50 +0000]
SEE Pruning Tweak (#2183)

Don't SEE prune any check extensions

STC (yellow):
LLR: -2.96 (-2.94,2.94) [0.50,4.50]
Total: 129934 W: 29390 L: 28905 D: 71639
http://tests.stockfishchess.org/tests/view/5cf6b1a70ebc5925cf08dedb

LTC:
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 102115 W: 17692 L: 17224 D: 67199
http://tests.stockfishchess.org/tests/view/5cf830710ebc5925cf090331

6 years agoAdvanced pawn pushes tweak (#2175)
Michael Chaly [Sun, 9 Jun 2019 12:26:53 +0000]
Advanced pawn pushes tweak (#2175)

passed STC
http://tests.stockfishchess.org/tests/view/5cf586ee0ebc5925cf08c0ed
LLR: 2.96 (-2.94,2.94) [0.50,4.50]
Total: 29496 W: 6718 L: 6406 D: 16372

passed LTC
http://tests.stockfishchess.org/tests/view/5cf59b630ebc5925cf08c343
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 40778 W: 7057 L: 6765 D: 26956

original idea from early 2018 by @jerrydonaldwatson
Code slightly rewritten to be shorter and more logical, no functinal changes
compared to passed patch.

6 years agoSimplify Outposts #2176
protonspring [Mon, 3 Jun 2019 13:16:33 +0000]
Simplify Outposts #2176

This is a functional simplification. This is NOT the exact version that was tested. Beyond the testing, an assignment was removed and a piece changes for consistency.

Instead of rewarding ANY square past an opponent pawn as an "outpost," only use squares that are protected by our pawn. I believe this is more consistent with what the chess world calls an "outpost."

STC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 23540 W: 5387 L: 5269 D: 12884
http://tests.stockfishchess.org/tests/view/5cf51e6d0ebc5925cf08b823

LTC
LLR: 2.94 (-2.94,2.94) [-3.00,1.00]
Total: 53085 W: 9271 L: 9204 D: 34610
http://tests.stockfishchess.org/tests/view/5cf5279e0ebc5925cf08b992

bench 3424592

6 years agoSimplify k-value for passers. Bench: 3854907 (#2182)
31m059 [Sun, 9 Jun 2019 12:19:07 +0000]
Simplify k-value for passers. Bench: 3854907 (#2182)

Stockfish evaluates passed pawns in part based on a variable k, which shapes the passed pawn bonus based on the number of squares between the current square and promotion square that are attacked by enemy pieces, and the number defended by friendly ones. Prior to this commit, we gave a large bonus when all squares between the pawn and the promotion square were defended, and if they were not, a somewhat smaller bonus if at least the pawn's next square was. However, this distinction does not appear to provide any Elo at STC or LTC.

Where do we go from here? Many promising Elo-gaining patches were attempted in the past few months to refine passed pawn calculation, by altering the definitions of unsafe and defended squares. Stockfish uses these definitions to choose the value of k, so those tests interact with this PR. Therefore, it may be worthwhile to retest previously promising but not-quite-passing tests in the vicinity of this patch.

STC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 42344 W: 9455 L: 9374 D: 23515
http://tests.stockfishchess.org/tests/view/5cf83ede0ebc5925cf0904fb

LTC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 69548 W: 11855 L: 11813 D: 45880
http://tests.stockfishchess.org/tests/view/5cf8698f0ebc5925cf0908c8

Bench: 3854907

6 years agoScale lazy threshold according to material. (#2170)
protonspring [Fri, 31 May 2019 12:35:39 +0000]
Scale lazy threshold according to material. (#2170)

STC
LLR: 2.95 (-2.94,2.94) [0.50,4.50]
Total: 58543 W: 13238 L: 12782 D: 32523
http://tests.stockfishchess.org/tests/view/5cef3efa0ebc5925cf081f07

LTC
LLR: 3.70 (-2.94,2.94) [0.00,3.50]
Total: 82232 W: 14281 L: 13825 D: 54126
http://tests.stockfishchess.org/tests/view/5cef595d0ebc5925cf082441

bench 3807737

6 years agoSimplify semiopen_file (#2165)
protonspring [Wed, 29 May 2019 08:00:32 +0000]
Simplify semiopen_file (#2165)

This is a non-functional simplification. Since our file_bb handles either Files or Squares, using Square here removes some code. Not likely any performance difference despite the test.

STC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 6081 W: 1444 L: 1291 D: 3346
http://tests.stockfishchess.org/tests/view/5ceb3e2e0ebc5925cf07ab03

Non functional change.

6 years agoTweak connected bonus for drop variants
Fabian Fichter [Fri, 24 May 2019 17:40:26 +0000]
Tweak connected bonus for drop variants

crazyhouse STC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 5584 W: 2806 L: 2626 D: 152
http://35.161.250.236:6543/tests/view/5ce82ccd6e23db34f4206b26

crazyhouse LTC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 2588 W: 1324 L: 1187 D: 77
http://35.161.250.236:6543/tests/view/5ceac7766e23db34f4206b3d

6 years agoTweak connected bonus for horde chess
Fabian Fichter [Fri, 24 May 2019 17:55:16 +0000]
Tweak connected bonus for horde chess

horde STC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 443 W: 273 L: 165 D: 5
http://35.161.250.236:6543/tests/view/5ce8fc696e23db34f4206b38

horde LTC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 394 W: 250 L: 142 D: 2
http://35.161.250.236:6543/tests/view/5ce914f66e23db34f4206b3b

6 years agoRemove one division. (#2158)
Joost VandeVondele [Sat, 25 May 2019 07:43:52 +0000]
Remove one division. (#2158)

Can be included in the earlier calculation, with a small rounding difference.

passed STC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 17912 W: 4044 L: 3915 D: 9953
http://tests.stockfishchess.org/tests/view/5ce711f90ebc5925cf070d0e

passed LTC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 56061 W: 9579 L: 9516 D: 36966
http://tests.stockfishchess.org/tests/view/5ce716820ebc5925cf070e37

Bench: 3817662

6 years agoFix #21 bitboard operations for MSVC
Fabian Fichter [Mon, 6 May 2019 18:24:37 +0000]
Fix #21 bitboard operations for MSVC

No functional change for other compilers.

6 years agoReduce memory consumption of continuation history
Fabian Fichter [Sun, 5 May 2019 16:12:04 +0000]
Reduce memory consumption of continuation history

No functional change for standard chess.

6 years agoLess LMR for losing chess variants
Fabian Fichter [Sat, 18 May 2019 08:04:38 +0000]
Less LMR for losing chess variants

giveaway STC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 555 W: 269 L: 176 D: 110
http://35.161.250.236:6543/tests/view/5cdfbcee6e23db34f4206af7

giveaway LTC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 1321 W: 557 L: 456 D: 308
http://35.161.250.236:6543/tests/view/5cdfd1a26e23db34f4206afc

losers STC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 929 W: 484 L: 375 D: 70
http://35.161.250.236:6543/tests/view/5cdfbd0f6e23db34f4206afa

losers LTC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 1153 W: 573 L: 463 D: 117
http://35.161.250.236:6543/tests/view/5cdfd1b06e23db34f4206afe

6 years agoMerge official-stockfish/master
Fabian Fichter [Fri, 17 May 2019 12:59:32 +0000]
Merge official-stockfish/master

bench: 3293925

6 years agoFix passed pawn evaluation
Fabian Fichter [Fri, 17 May 2019 13:21:47 +0000]
Fix passed pawn evaluation

No functional change for variants with promotion rank equal to 8.

6 years agoFix CTF bonus for large-board version
Fabian Fichter [Thu, 16 May 2019 19:09:25 +0000]
Fix CTF bonus for large-board version

racingkings STC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 179 W: 120 L: 32 D: 27
http://35.161.250.236:6543/tests/view/5cddb8176e23db34f4206acd

racingkings LTC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 242 W: 149 L: 58 D: 35
http://35.161.250.236:6543/tests/view/5cddb83b6e23db34f4206ad0

6 years agoAllow RQ through pieces. Bench: 3415326 (#2153)
31m059 [Fri, 17 May 2019 11:38:23 +0000]
Allow RQ through pieces. Bench: 3415326 (#2153)

We evaluate defended and unsafe squares for a passed pawn push based on friendly and enemy rooks and queens on the passed pawn's file. Prior to this patch, we further required that these rooks and queens be able to directly attack the passed pawn. However, this restriction appears unnecessary and worth almost exactly 0 Elo at LTC.

The simplified code allows rooks and queens to attack/defend the passed pawn through other pieces of either color.

STC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 29019 W: 6488 L: 6381 D: 16150
http://tests.stockfishchess.org/tests/view/5cdcf7270ebc5925cf05d30c

LTC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 54224 W: 9200 L: 9133 D: 35891
http://tests.stockfishchess.org/tests/view/5cddc6210ebc5925cf05eca3

Bench: 3415326

6 years agoRemove unused code (#2150)
svivanov72 [Thu, 16 May 2019 12:14:11 +0000]
Remove unused code (#2150)

Remove an unused operator in has_game_cycle (thanks @vondele)
and modify its comment to explain other code.

No functional change.

6 years agoScore and Select Best Thread in same loop (#2125)
protonspring [Thu, 16 May 2019 12:13:16 +0000]
Score and Select Best Thread in same loop (#2125)

This is a non-functional simplification that combines vote counting and thread selecting in the same loop.

It is possible that the best thread would be updated more frequently than master, but I'm not sure it matters here. Perhaps "mostVotes" is a better name than "bestVote?"

STC (stopped early).
LLR: 0.70 (-2.94,2.94) [-3.00,1.00]
Total: 10714 W: 2329 L: 2311 D: 6074
http://tests.stockfishchess.org/tests/view/5ccc71470ebc5925cf03d244

No functional change.

6 years agoConsolidate some code in set_state. (#2151)
protonspring [Thu, 16 May 2019 12:11:00 +0000]
Consolidate some code in set_state. (#2151)

Non functional change.

6 years agoSupport capablanca random chess
Fabian Fichter [Tue, 14 May 2019 20:55:33 +0000]
Support capablanca random chess

https://en.wikipedia.org/wiki/Capablanca_Random_Chess

6 years agoTweak fairy piece values
Fabian Fichter [Mon, 13 May 2019 16:26:23 +0000]
Tweak fairy piece values

capablanca STC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 344 W: 187 L: 96 D: 61
http://35.161.250.236:6543/tests/view/5cd99b016e23db34f4206ab0

capablanca LTC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 345 W: 192 L: 99 D: 54
http://35.161.250.236:6543/tests/view/5cd9ab846e23db34f4206abd

courier STC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 162 W: 92 L: 18 D: 52
http://35.161.250.236:6543/tests/view/5cd99b206e23db34f4206ab3

courier LTC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 144 W: 80 L: 11 D: 53
http://35.161.250.236:6543/tests/view/5cd9ac0b6e23db34f4206abf

6 years agoUpdate failedHighCnt rule #2063
xoto10 [Sun, 31 Mar 2019 15:33:32 +0000]
Update failedHighCnt rule #2063

Treat all threads the same as main thread and increment
failedHighCnt on fail highs. This makes the search try
again at lower depth.

@vondele suggested also changing the reset of failedHighCnt
when there is a fail low. Tests including this passed so the
branch has been updated to include both changes. failedHighCnt
is now handled exactly the same in helper threads and the main
thread. Thanks vondele :-)

STC @ 5+0.05 th 4 :
LLR: 2.94 (-2.94,2.94) [-3.00,1.00]
Total: 7769 W: 1704 L: 1557 D: 4508
http://tests.stockfishchess.org/tests/view/5c9f19520ebc5925cfffd2a1

LTC @ 20+0.2 th 8 :
LLR: 2.94 (-2.94,2.94) [-3.00,1.00]
Total: 37888 W: 5983 L: 5889 D: 26016
http://tests.stockfishchess.org/tests/view/5c9f57d10ebc5925cfffd696

Bench 3824325

6 years agoRevert "Make rootDepth local to search. (#2077)"
Marco Costalba [Wed, 15 May 2019 08:50:27 +0000]
Revert "Make rootDepth local to search. (#2077)"

This reverts commit 44c320a572188b5875291103edb344c584b91d19.

Fix a compile error.

Bench: 3824325

6 years agoRemove per thread instances of Endgames. (#2056)
mstembera [Wed, 15 May 2019 08:41:58 +0000]
Remove per thread instances of Endgames. (#2056)

Similar to PSQT we only need one instance of the Endgames resource. The current per thread copies are identical and read only(after initialization) so from a design point of view it doesn't make sense to have them.

Tested for no slowdown.
http://tests.stockfishchess.org/tests/view/5c94377a0ebc5925cfff43ca
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 17320 W: 3487 L: 3359 D: 10474

No functional change.

6 years agoMake rootDepth local to search. (#2077)
Joost VandeVondele [Wed, 15 May 2019 08:35:58 +0000]
Make rootDepth local to search. (#2077)

passed STC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 61869 W: 13668 L: 13626 D: 34575
http://tests.stockfishchess.org/tests/view/5ca660eb0ebc5925cf004f0c

No functional change.

6 years agoSimplify connected #2114
protonspring [Tue, 23 Apr 2019 18:26:58 +0000]
Simplify connected #2114

This is a functional simplification that simplifies
some of the math for connected pawns. The bench is
different because I moved a /2 from opposed into
the connected array.

STC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 37954 W: 8504 L: 8415 D: 21035
http://tests.stockfishchess.org/tests/view/5cbf599a0ebc5925cf028156

LTC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 27780 W: 4682 L: 4572 D: 18526
http://tests.stockfishchess.org/tests/view/5cbf6a5e0ebc5925cf0284b8

Bench 3824325

6 years agoSimplify reduction formula #2122
Moez Jellouli [Wed, 15 May 2019 08:26:32 +0000]
Simplify reduction formula #2122

Simplify reduction formula

No functional change.

6 years agoSimplify Thread Voting Scheme #2129
protonspring [Wed, 15 May 2019 08:24:00 +0000]
Simplify Thread Voting Scheme #2129

This is a functional simplification of the math in the voting scheme.

It took a bit longer to pass LTC 8 threads, so perhaps more testing is needed at longer times and/or more threads.

STC 4 threads
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 22315 W: 4852 L: 4732 D: 12731
http://tests.stockfishchess.org/tests/view/5ccc86280ebc5925cf03d439

STC 8 threads
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 42427 W: 8451 L: 8369 D: 25607
http://tests.stockfishchess.org/tests/view/5cccb67c0ebc5925cf03da90

LTC 4 Threads
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 23513 W: 4208 L: 4092 D: 15213
http://tests.stockfishchess.org/tests/view/5ccce94d0ebc5925cf03e1ec

LTC 8 Threads
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 70098 W: 11442 L: 11399 D: 47257
http://tests.stockfishchess.org/tests/view/5ccd22aa0ebc5925cf03e463

No functional change (in single thread)

6 years agoPrecompute repetition info (#2132)
svivanov72 [Wed, 15 May 2019 08:22:21 +0000]
Precompute repetition info (#2132)

Store repetition info in StateInfo instead of recomputing it in
three different places. This saves some work in has_game_cycle()
where this info is needed for positions before the root.

Tested for non-regression at STC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 34104 W: 7586 L: 7489 D: 19029
http://tests.stockfishchess.org/tests/view/5cd0676e0ebc5925cf044b56

No functional change.

6 years agoRemove pawn count in space() calculation #2139
xoto10 [Sun, 5 May 2019 13:22:40 +0000]
Remove pawn count in space() calculation #2139

Simplification. Various attempts to optimise the pawn
count bonus showed little effect, so remove pawn count
altogether and compensate by subtracting 1 instead of 4.

STC 10+0.1 th 1:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 152244 W: 33709 L: 33847 D: 84688
http://tests.stockfishchess.org/tests/view/5cceed330ebc5925cf04170e

LTC 60+0.6 th 1:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 24100 W: 4079 L: 3964 D: 16057
http://tests.stockfishchess.org/tests/view/5cd5b6b80ebc5925cf04e889

Bench: 3648841

6 years agoAdd eg component to evaluate_shelter() #2137
xoto10 [Sun, 12 May 2019 21:20:51 +0000]
Add eg component to evaluate_shelter() #2137

Add an endgame component to the blockedstorm penalty
so that the penalty applies more uniformly through the game.

STC 10+0.1 th 1 :
LLR: -2.95 (-2.94,2.94) [0.50,4.50]
Total: 94063 W: 21426 L: 21118 D: 51519
http://tests.stockfishchess.org/tests/view/5cd4605c0ebc5925cf04bf43

LTC 60+0.6 th 1 :
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 188232 W: 32808 L: 32090 D: 123334
http://tests.stockfishchess.org/tests/view/5cd47d0a0ebc5925cf04c4fd

Refactored code with higher constant values gave a more convincing LTC result:
LLR: 2.96 (-2.94,2.94) [0.00,3.50]
Total: 30050 W: 5330 L: 5066 D: 19654
http://tests.stockfishchess.org/tests/view/5cd6a0000ebc5925cf050653

Bench: 3687700

6 years agoAllow for higher depths. (#2147)
Joost VandeVondele [Wed, 15 May 2019 07:52:27 +0000]
Allow for higher depths. (#2147)

High rootDepths, selDepths and generally searches are increasingly
common with long time control games, analysis, and improving hardware.
In this case, depths of MAX_DEPTH/MAX_PLY (128) can be reached,
and the search tree is truncated.

In principle MAX_PLY can be easily increased, except for a technicality
of storing depths in a signed 8 bit int in the TT. This patch increases
MAX_PLY by storing the depth in an unsigned 8 bit, after shifting by the
most negative depth stored in TT (DEPTH_NONE).

No regression at STC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 42235 W: 9565 L: 9484 D: 23186
http://tests.stockfishchess.org/tests/view/5cdb35360ebc5925cf0595e1

Verified to reach high depths on
k1b5/1p1p4/pP1Pp3/K2pPp2/1P1p1P2/3P1P2/5P2/8 w - -
info depth 142 seldepth 154 multipv 1 score cp 537 nodes 26740713110 ...

No bench change.

6 years agoDecrease reduction in case we had singular extension. #2146
Michael Chaly [Wed, 15 May 2019 07:49:29 +0000]
Decrease reduction in case we had singular extension. #2146

Passed STC http://tests.stockfishchess.org/tests/view/5cda71790ebc5925cf057a84
LLR: 2.95 (-2.94,2.94) [0.50,4.50]
Total: 73454 W: 16482 L: 15954 D: 41018

Passed LTC http://tests.stockfishchess.org/tests/view/5cdab17b0ebc5925cf05822f
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 56696 W: 9877 L: 9538 D: 37281

Original idea by @locutus2

bench 3378510

6 years agoUpdate readme
Fabian Fichter [Mon, 13 May 2019 21:31:49 +0000]
Update readme

6 years agoRemove PvNode template from reduction
Miguel Lahoz [Tue, 7 May 2019 15:55:56 +0000]
Remove PvNode template from reduction

This functional simplification removes the PvNode reduction and adjusts
the ttPv lmr condition accordingly. Their definitions only differ by the
inclusions of ttPv. Aside from this, shallow move pruning definition
will be the only other functional difference, but this does not seem to
matter too much.

STC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 58908 W: 12980 L: 12932 D: 32996
http://tests.stockfishchess.org/tests/view/5cd1aaaa0ebc5925cf046c6a

LTC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 20351 W: 3521 L: 3399 D: 13431
http://tests.stockfishchess.org/tests/view/5cd23fa70ebc5925cf047cd2

Bench: 3687854

6 years agoFix cycle detection in presence of repetitions
Sergei Ivanov [Sun, 14 Apr 2019 12:50:37 +0000]
Fix cycle detection in presence of repetitions

In master search() may incorrectly return a draw score in the following
corner case: there was a 2-fold repetition during the game, and the
current position can be reached by a move from a repeated one. This case
is treated as an upcoming 3-fold repetition, which it is not.

Here is a testcase demonstrating the issue (note that the moves
after FEN are required). The input:

  position fen 8/8/8/8/8/8/p7/2k4K b - - 0 1 moves c1b1 h1g1 b1c1 g1h1 c1b1 h1g1 b1a1 g1h1
  go movetime 1000

produces the output:

  [...]
  info depth 127 seldepth 2 multipv 1 score cp 0 [...]
  bestmove a1b1

saying that the game will be drawn by repetion. However the other possible
move for black, Kb2, avoids repetitions and wins. The patch fixes this behavior.
In particular it finds mate in 10 in the above position.

STC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 10604 W: 2390 L: 2247 D: 5967
http://tests.stockfishchess.org/tests/view/5cb373e00ebc5925cf0167bf

LTC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 19620 W: 3308 L: 3185 D: 13127
http://tests.stockfishchess.org/tests/view/5cb3822f0ebc5925cf016b2d

Bench is not changed since it does not test positions with history of moves.

Bench: 3184182

6 years agoLess LMR at root
Stefan Geschwentner [Wed, 8 May 2019 19:40:46 +0000]
Less LMR at root

Do no LMR for the first four moves if at root node.

STC:
LLR: 2.95 (-2.94,2.94) [0.50,4.50]
Total: 19686 W: 4524 L: 4261 D: 10901
http://tests.stockfishchess.org/tests/view/5cd3577b0ebc5925cf04a089

LTC:
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 88335 W: 15193 L: 14766 D: 58376
http://tests.stockfishchess.org/tests/view/5cd35e600ebc5925cf04a1c3

Bench: 3184182

6 years agoLMR for captures not cracking alpha
Stefan Geschwentner [Sun, 5 May 2019 13:58:52 +0000]
LMR for captures not cracking alpha

Enable LMR for a capture/promotion move which does not seem
to have a good chance to fail high according to static eval
and value of captured piece.

STC:
LLR: 2.96 (-2.94,2.94) [0.50,4.50]
Total: 40477 W: 9158 L: 8792 D: 22527
http://tests.stockfishchess.org/tests/view/5cceedc60ebc5925cf04174f

LTC:
LLR: 2.94 (-2.94,2.94) [0.00,3.50]
Total: 21926 W: 3873 L: 3634 D: 14419
http://tests.stockfishchess.org/tests/view/5ccf04310ebc5925cf041ab0

Bench: 3644175

6 years agoMerge branch 'master' of https://github.com/official-stockfish/Stockfish
Fabian Fichter [Sat, 4 May 2019 13:36:04 +0000]
Merge branch 'master' of https://github.com/official-stockfish/Stockfish

bench: 3414828

6 years agoMerge official-stockfish/master
Fabian Fichter [Sat, 4 May 2019 13:33:28 +0000]
Merge official-stockfish/master

No functional change.

6 years agoMerge official-stockfish/master
Fabian Fichter [Sat, 4 May 2019 13:16:15 +0000]
Merge official-stockfish/master

bench: 3246425

6 years agoStat Score reset at rootNode - Bench: 3393330 (#2124)
VoyagerOne [Sat, 4 May 2019 11:41:53 +0000]
Stat Score reset at rootNode - Bench: 3393330 (#2124)

At rootNode reset great great grandchildren stat score i.e (ss + 4)->statScore = 0

STC: (yellow)
LLR: -2.96 (-2.94,2.94) [0.50,4.50]
Total: 256079 W: 57423 L: 56315 D: 142341
http://tests.stockfishchess.org/tests/view/5ccb0c420ebc5925cf03a6a5

LTC:
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 61550 W: 10611 L: 10260 D: 40679
http://tests.stockfishchess.org/tests/view/5ccbf9d00ebc5925cf03c487

Bench: 3393330

6 years agoSupport Chancellor chess
Fabian Fichter [Sat, 4 May 2019 08:32:48 +0000]
Support Chancellor chess

https://en.wikipedia.org/wiki/Chancellor_Chess

6 years agoAssorted trivial cleanups 4/2019
Marco Costalba [Sun, 31 Mar 2019 10:02:19 +0000]
Assorted trivial cleanups 4/2019

No functional change.

6 years agoSimplified shuffle extension version (#2121)
Joost VandeVondele [Thu, 2 May 2019 17:22:29 +0000]
Simplified shuffle extension version (#2121)

only the extension part of the shuffle patch is sufficient to
pass [0,3.5] bounds at VLTC as shown by two more tests.

http://tests.stockfishchess.org/tests/view/5cc168bc0ebc5925cf02bda8
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 120684 W: 17875 L: 17400 D: 85409

http://tests.stockfishchess.org/tests/view/5cc14d510ebc5925cf02bcb5
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 68415 W: 10250 L: 9905 D: 48260

this patch proposes to simplify back to this basic and easier to
understand version. In case there is a need to run a [-3, 1] VLTC on
this one, it can be done, but it is resource intensive, and not needed
IMO.

Bench: 3388643

6 years agoSupport non-GCC and 32bit for large-board version
Fabian Fichter [Tue, 29 Jan 2019 22:14:58 +0000]
Support non-GCC and 32bit for large-board version

6 years agoFix check extension for drop variants
Fabian Fichter [Tue, 30 Apr 2019 20:59:38 +0000]
Fix check extension for drop variants

6 years agoFix pretty printing of bitboards for debugging
Fabian Fichter [Tue, 30 Apr 2019 20:13:32 +0000]
Fix pretty printing of bitboards for debugging

No functional change.

6 years agoMerge branch 'master' of https://github.com/official-stockfish/Stockfish
Fabian Fichter [Sun, 28 Apr 2019 15:55:21 +0000]
Merge branch 'master' of https://github.com/official-stockfish/Stockfish

bench: 3246425

6 years agoAllow for address sanitizer. (#2119)
Joost VandeVondele [Sat, 27 Apr 2019 18:47:06 +0000]
Allow for address sanitizer. (#2119)

Properly allow for sanitize=address (-fsanitize=address) as an argument to the Makefile.

No functional change

6 years agoFix bench number of previous patch
Marco Costalba [Sat, 27 Apr 2019 09:37:06 +0000]
Fix bench number of previous patch

bench: 3388643

6 years agoInclude bishop protection in king Danger evaluation. #2118
Michael Chaly [Sat, 27 Apr 2019 09:31:55 +0000]
Include bishop protection in king Danger evaluation. #2118

Same idea as fisherman's knight protection.

passed STC
LLR: 2.96 (-2.94,2.94) [0.50,4.50]
Total: 17133 W: 3952 L: 3701 D: 9480
http://tests.stockfishchess.org/tests/view/5cc3550b0ebc5925cf02dada

passed LTC
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 37316 W: 6470 L: 6188 D: 24658
http://tests.stockfishchess.org/tests/view/5cc3721d0ebc5925cf02dc90

Looking at this 2 ideas being recent clean elo gainers I have a feeling that we can add also rook and queen protection bonuses or overall move this stuff in pieces loop in the same way as we do pieces attacking bonuses on their kingring... :) Thx fisherman for original idea.

Bench 3429173

6 years agoShuffle detection #2108
MJZ1977 [Wed, 10 Apr 2019 10:56:05 +0000]
Shuffle detection #2108

Bench: 3402947

6 years agoMerge branch 'master' of https://github.com/official-stockfish/Stockfish
Fabian Fichter [Thu, 25 Apr 2019 20:16:19 +0000]
Merge branch 'master' of https://github.com/official-stockfish/Stockfish

No functional change.

6 years agoTweak SEE pruning margin for drop variants
Fabian Fichter [Wed, 24 Apr 2019 19:26:27 +0000]
Tweak SEE pruning margin for drop variants

crazyhouse STC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 2927 W: 1494 L: 1352 D: 81
http://35.161.250.236:6543/tests/view/5cbed6646e23db76ed252774

crazyhouse LTC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 1666 W: 869 L: 745 D: 52
http://35.161.250.236:6543/tests/view/5cbf83926e23db76ed252782

6 years agoRemove useless initializations (#2115)
Joost VandeVondele [Wed, 24 Apr 2019 17:51:57 +0000]
Remove useless initializations (#2115)

Removes two unneeded inits, they are always set before their use later on.

No functional change.

6 years agoRemove DistanceRing #2107
protonspring [Wed, 17 Apr 2019 18:38:38 +0000]
Remove DistanceRing #2107

Remove the DistanceRing array. This reduces the
memory footprint by about 4kb.

http://tests.stockfishchess.org/tests/view/5cba35350ebc5925cf020d7f
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 101421 W: 22491 L: 22528 D: 56402

No functional change.

6 years agoMerge branch 'master' of https://github.com/official-stockfish/Stockfish
Fabian Fichter [Fri, 19 Apr 2019 18:12:59 +0000]
Merge branch 'master' of https://github.com/official-stockfish/Stockfish

No functional change.

bench: 3359419

6 years agoTweak threat evaluation for losing chess variants
Fabian Fichter [Fri, 19 Apr 2019 17:28:46 +0000]
Tweak threat evaluation for losing chess variants

giveaway STC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 5279 W: 2193 L: 2034 D: 1052
http://35.161.250.236:6543/tests/view/5cb197406e23db76ed2526e8

giveaway LTC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 23616 W: 9228 L: 8824 D: 5564
http://35.161.250.236:6543/tests/view/5cb2c5fe6e23db76ed252702

losers STC (failed)
LLR: -2.97 (-2.94,2.94) [-10.00,5.00]
Total: 7179 W: 3195 L: 3309 D: 675
http://35.161.250.236:6543/tests/view/5cb197556e23db76ed2526eb

losers LTC
LLR: 2.98 (-2.94,2.94) [-10.00,5.00]
Total: 2363 W: 1066 L: 1021 D: 276
http://35.161.250.236:6543/tests/view/5cb2c60b6e23db76ed252704

6 years agoRemove capping in reduction (#2110)
Joost VandeVondele [Fri, 19 Apr 2019 15:33:26 +0000]
Remove capping in reduction (#2110)

Saves two std::min.

Bench is unchanged to high depth, but in principle this is a functional change so tested both STC and LTC.

passed STC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 78193 W: 17220 L: 17210 D: 43763
http://tests.stockfishchess.org/tests/view/5cb789540ebc5925cf01b90b

passed LTC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 93846 W: 15964 L: 15962 D: 61920
http://tests.stockfishchess.org/tests/view/5cb8066d0ebc5925cf01c72b

Bench: 3402947

6 years agoSimplify distance (#2109)
Joost VandeVondele [Thu, 18 Apr 2019 14:53:52 +0000]
Simplify distance (#2109)

Only called with Squares as argument, so remove unused variants.

As this is just syntax changes, only verified bench at high depth.

No functional change.

6 years agoAllow shallow depth pruning for horde pawn pushes
Fabian Fichter [Wed, 17 Apr 2019 20:12:20 +0000]
Allow shallow depth pruning for horde pawn pushes

horde STC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 1701 W: 905 L: 779 D: 17
http://35.161.250.236:6543/tests/view/5cb4d5d96e23db76ed252721

horde LTC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 1307 W: 708 L: 587 D: 12
http://35.161.250.236:6543/tests/view/5cb609536e23db76ed252731

giveaway STC
LLR: 2.96 (-2.94,2.94) [-10.00,5.00]
Total: 3966 W: 1558 L: 1529 D: 879
http://35.161.250.236:6543/tests/view/5cb4d6fd6e23db76ed25272a

kinglet STC
LLR: 2.99 (-2.94,2.94) [-10.00,5.00]
Total: 8117 W: 3649 L: 3644 D: 824
http://35.161.250.236:6543/tests/view/5cb4d7146e23db76ed25272c

6 years agoMerge branch 'master' of https://github.com/official-stockfish/Stockfish
Fabian Fichter [Wed, 17 Apr 2019 19:46:06 +0000]
Merge branch 'master' of https://github.com/official-stockfish/Stockfish

bench: 3359419

6 years agoRemove Movepick::move (#2085)
protonspring [Wed, 17 Apr 2019 19:13:39 +0000]
Remove Movepick::move (#2085)

The "move" class variable is Movepick is removed (removes some abstraction) which saves a few assignment operations, and the effects of "filter" is limited to the current move (movePtr). The resulting code is a bit more verbose, but it is also more clear what is going on. This version is NOT tested, but is substantially similar to:

STC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 29191 W: 6474 L: 6367 D: 16350
http://tests.stockfishchess.org/tests/view/5ca7aab50ebc5925cf006e50

This is a non-functional simplification.

6 years agoMove pawnsOnSquares to Position (#2100)
protonspring [Tue, 16 Apr 2019 21:10:53 +0000]
Move pawnsOnSquares to Position (#2100)

We can remove the values in Pawns if we just use the piece arrays in Position. This reduces the size of a pawn entry. This simplification passed individually, and in concert with ps_passedcount100 (removes passedCount storage in pawns.).

STC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 19957 W: 4529 L: 4404 D: 11024
http://tests.stockfishchess.org/tests/view/5cb3c2d00ebc5925cf016f0d

Combo STC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 17368 W: 3925 L: 3795 D: 9648
http://tests.stockfishchess.org/tests/view/5cb3d3510ebc5925cf01709a

This is a non-functional simplification.

6 years agoMerge branch 'master' of https://github.com/official-stockfish/Stockfish
Fabian Fichter [Tue, 16 Apr 2019 20:28:45 +0000]
Merge branch 'master' of https://github.com/official-stockfish/Stockfish

bench: 3359419

6 years agoCalculate passedCount real-time #2099
protonspring [Tue, 16 Apr 2019 14:12:47 +0000]
Calculate passedCount real-time #2099

This is a non-functional simplification which removes the passedCount variable in pawns.

STC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 27982 W: 6227 L: 6118 D: 15637
http://tests.stockfishchess.org/tests/view/5cb3cdd30ebc5925cf017025

Combo STC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 17368 W: 3925 L: 3795 D: 9648
http://tests.stockfishchess.org/tests/view/5cb3d3510ebc5925cf01709a

Non functional test.

6 years agoRemove semiopenFiles in pawns and simplify space #2102
protonspring [Tue, 16 Apr 2019 14:09:36 +0000]
Remove semiopenFiles in pawns and simplify space #2102

This is a functional simplification.

    1. semiopenFiles is removed in pawns and uses the piece arrays in position instead.

    2. popcount is removed in space calculations and uses pawn piece count instead.

STC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 33327 W: 7423 L: 7324 D: 18580
http://tests.stockfishchess.org/tests/view/5cb4be090ebc5925cf018511

LTC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 10173 W: 1774 L: 1636 D: 6763
http://tests.stockfishchess.org/tests/view/5cb4c5920ebc5925cf018696

bench 3402947

6 years agoSupport modern chess
Fabian Fichter [Mon, 15 Apr 2019 21:01:06 +0000]
Support modern chess

https://en.wikipedia.org/wiki/Modern_Chess_(chess_variant)

No functional change for existing variants.

6 years agoDouble pawn evaluation for horde chess
Fabian Fichter [Mon, 15 Apr 2019 18:04:32 +0000]
Double pawn evaluation for horde chess

horde STC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 512 W: 310 L: 200 D: 2
http://35.161.250.236:6543/tests/view/5cb375166e23db76ed25270b

horde LTC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 372 W: 238 L: 131 D: 3
http://35.161.250.236:6543/tests/view/5cb392e06e23db76ed252717

giveaway STC
LLR: 2.97 (-2.94,2.94) [-10.00,5.00]
Total: 1388 W: 567 L: 520 D: 301
http://35.161.250.236:6543/tests/view/5cb38d356e23db76ed252713

kinglet STC
LLR: 2.96 (-2.94,2.94) [-10.00,5.00]
Total: 1412 W: 645 L: 594 D: 173
http://35.161.250.236:6543/tests/view/5cb398846e23db76ed252719

extinction STC (failed)
LLR: -2.96 (-2.94,2.94) [-10.00,5.00]
Total: 5129 W: 2307 L: 2407 D: 415
http://35.161.250.236:6543/tests/view/5cb38d486e23db76ed252715

6 years agoLess LMR for losing chess variants
Fabian Fichter [Sun, 14 Apr 2019 16:33:31 +0000]
Less LMR for losing chess variants

giveaway STC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 617 W: 304 L: 208 D: 105
http://35.161.250.236:6543/tests/view/5cb19ce66e23db76ed2526f0

giveaway LTC
LLR: 2.94 (-2.94,2.94) [0.00,10.00]
Total: 906 W: 401 L: 305 D: 200
http://35.161.250.236:6543/tests/view/5cb1ad106e23db76ed2526f5

losers STC
LLR: 2.96 (-2.94,2.94) [-10.00,5.00]
Total: 882 W: 441 L: 383 D: 58
http://35.161.250.236:6543/tests/view/5cb1b5b96e23db76ed2526f8

losers LTC
LLR: 2.96 (-2.94,2.94) [-10.00,5.00]
Total: 1471 W: 704 L: 651 D: 116
http://35.161.250.236:6543/tests/view/5cb1c3776e23db76ed2526fe

6 years agoMerge branch 'master' of https://github.com/official-stockfish/Stockfish
Fabian Fichter [Sat, 13 Apr 2019 16:09:25 +0000]
Merge branch 'master' of https://github.com/official-stockfish/Stockfish

bench: 2706246

6 years agoRemove two useless assignments (#2093)
Joost VandeVondele [Sat, 13 Apr 2019 15:17:47 +0000]
Remove two useless assignments (#2093)

These variables are initialized before their use in the movepicker loop.

passed STC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 138732 W: 30727 L: 30838 D: 77167
http://tests.stockfishchess.org/tests/view/5cb07af40ebc5925cf012c32

No functional change.

6 years agoGive penalty for all early quiets of prev. ply
Joost VandeVondele [Tue, 9 Apr 2019 14:51:39 +0000]
Give penalty for all early quiets of prev. ply

passed STC:
LLR: 2.94 (-2.94,2.94) [-3.00,1.00]
Total: 32884 W: 7283 L: 7184 D: 18417
http://tests.stockfishchess.org/tests/view/5cacb1b20ebc5925cf00ce97

passed LTC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 22869 W: 3920 L: 3803 D: 15146
http://tests.stockfishchess.org/tests/view/5cacbd760ebc5925cf00cfce

Bench: 3723099

6 years agoSimplify Connected Pawn Scoring #2090
protonspring [Thu, 11 Apr 2019 14:38:53 +0000]
Simplify Connected Pawn Scoring #2090

This is a functional simplification that simplifies
connected scoring of pawns.

STC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 37472 W: 8318 L: 8228 D: 20926
http://tests.stockfishchess.org/tests/view/5cae74ef0ebc5925cf00f8a5

LTC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 43035 W: 7366 L: 7281 D: 28388
http://tests.stockfishchess.org/tests/view/5caea3b50ebc5925cf00fe1e

Bench: 3470173

6 years agoMerge official-stockfish/master
Fabian Fichter [Sat, 13 Apr 2019 08:03:23 +0000]
Merge official-stockfish/master

bench: 3309231

6 years agoRevert "Shuffle detection #2064"
Marco Costalba [Fri, 12 Apr 2019 11:35:32 +0000]
Revert "Shuffle detection #2064"

It causes a serious regression hanging a simple fixed
depth search. Reproducible with:

position fen q1B5/1P1q4/8/8/8/6R1/8/1K1k4 w - - 0 1
go depth 13

The reason is a search tree explosion due to:

if (... && depth < 3 * ONE_PLY)
      extension = ONE_PLY;

This is very dangerous code by itself because triggers **at the leafs**
and in the above position keeps extending endlessly. In normal games
time deadline makes the search to stop sooner or later, but in fixed
seacrch we just hang possibly for a very long time. This is not acceptable
because 'go depth 13' shall not be a surprise for any position.

This patch reverts commit 76f1807baa90eb69f66001d25df2a28533f9406f.
and fixes the issue https://github.com/official-stockfish/Stockfish/issues/2091

Bench: 3243738

6 years agoMerge official-stockfish/master
Fabian Fichter [Thu, 11 Apr 2019 18:52:18 +0000]
Merge official-stockfish/master

bench: 3414192

6 years agoTweak scaling of passed pawn evaluation
Fabian Fichter [Thu, 11 Apr 2019 18:38:58 +0000]
Tweak scaling of passed pawn evaluation

shatranj STC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 4787 W: 590 L: 504 D: 3693
http://35.161.250.236:6543/tests/view/5c8ccad36e23db76ed25260d

shatranj LTC
LLR: 15.68 (-2.94,2.94) [0.00,10.00]
Total: 15959 W: 1537 L: 1169 D: 13253
http://35.161.250.236:6543/tests/view/5c8d69876e23db76ed252610

ELO: 6.25 +-6.4 (95%) LOS: 97.3%
Total: 2000 W: 194 L: 158 D: 1648
http://35.161.250.236:6543/tests/view/5cab9f0d6e23db76ed2526c0

kinglet LTC
ELO: -9.56 +-14.2 (95%) LOS: 9.4%
Total: 2000 W: 846 L: 901 D: 253
http://35.161.250.236:6543/tests/view/5cab9eed6e23db76ed2526be

6 years agoExtend dangerous passed pawn moves (#2089)
miguel-l [Wed, 10 Apr 2019 17:35:47 +0000]
Extend dangerous passed pawn moves (#2089)

Introduce a new search extension when pushing an advanced passed pawn is
also suggested by the first killer move. There have been previous tests
which have similar ideas, mostly about pawn pushes, but it seems to be
overkill to extend too many moves. My idea is to limit the extension to
when a move happens to be noteworthy in some other way as well, such as
in this case, when it is also a killer move.

STC:
LLR: 2.96 (-2.94,2.94) [0.50,4.50]
Total: 19027 W: 4326 L: 4067 D: 10634
http://tests.stockfishchess.org/tests/view/5cac2cde0ebc5925cf00c36d

LTC:
LLR: 2.94 (-2.94,2.94) [0.00,3.50]
Total: 93390 W: 15995 L: 15555 D: 61840
http://tests.stockfishchess.org/tests/view/5cac42270ebc5925cf00c4b9

For future tests, it looks like this will interact heavily with passed
pawn evaluation. It may be good to try more variants of some of the more
promising evaluations tests/tweaks.

Bench: 3666092

6 years agoSimplify castlingPath (#2088)
protonspring [Wed, 10 Apr 2019 17:33:57 +0000]
Simplify castlingPath (#2088)

Instead of looping through kfrom,kto, rfrom, rto, we can use BetweenBB. This is less lines of code and it is more clear what castlingPath actually is. Personal benchmarks are all over the place. However, this code is only executed when loading a position, so performance doesn't seem that relevant.

No functional change.

6 years agoRewrite definition of piece types
Fabian Fichter [Tue, 2 Apr 2019 19:00:14 +0000]
Rewrite definition of piece types

No functional change.

6 years agoIncrease stack size to 4 MB
Fabian Fichter [Tue, 9 Apr 2019 20:34:02 +0000]
Increase stack size to 4 MB

6 years agoMerge official-stockfish/master
Fabian Fichter [Tue, 9 Apr 2019 19:54:07 +0000]
Merge official-stockfish/master

bench: 3014293

6 years agoRaise kingDanger threshold and adjust constant term #2087
31m059 [Tue, 9 Apr 2019 17:35:17 +0000]
Raise kingDanger threshold and adjust constant term #2087

The kingDanger term is intended to give a penalty which increases rapidly in the middlegame but less so in the endgame. To this end, the middlegame component is quadratic, and the endgame component is linear. However, this produces unintended consequences for relatively small values of kingDanger: the endgame penalty will exceed the middlegame penalty. This remains true up to kingDanger = 256 (a S(16, 16) penalty), so some of these inaccurate penalties are actually rather large.

In this patch, we increase the threshold for applying the kingDanger penalty to eliminate some of this unintended behavior. This was very nearly, but not quite, sufficient to pass on its own. The patch was finally successful by integrating a second kingDanger tweak by @Vizvezdenec, increasing the kingDanger constant term slightly and improving both STC and LTC performance.

Where do we go from here? I propose that in the future, any attempts to tune kingDanger coefficients should also consider tuning the kingDanger threshold. The evidence shows clearly that it should not be automatically taken to be zero.

Special thanks to @Vizvezdenec for the kingDanger constant tweak. Thanks also to all the approvers and CPU donors who made this possible!

STC:
LLR: -2.96 (-2.94,2.94) [0.00,4.00]
Total: 141225 W: 31239 L: 30846 D: 79140
http://tests.stockfishchess.org/tests/view/5cabbdb20ebc5925cf00b86c

LTC:
LLR: 2.95 (-2.94,2.94) [0.00,4.00]
Total: 30708 W: 5296 L: 5043 D: 20369
http://tests.stockfishchess.org/tests/view/5cabff760ebc5925cf00c22d

Bench: 3445945

6 years agoRemove BetweenBB Array #2076
protonspring [Fri, 5 Apr 2019 03:45:52 +0000]
Remove BetweenBB Array #2076

Non functional change.

6 years agoInclude variant bench in CI
Fabian Fichter [Sat, 6 Apr 2019 17:55:49 +0000]
Include variant bench in CI

No functional change.

6 years agoAdd missing bitboard operator
Fabian Fichter [Sat, 6 Apr 2019 15:56:11 +0000]
Add missing bitboard operator

Fix issues with shogi variants due to upstream merge.