fairystockfish.git
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.

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

bench: 3258421

6 years agoFix sed for OS X (#2080)
Marco Costalba [Sat, 6 Apr 2019 10:43:41 +0000]
Fix sed for OS X (#2080)

The sed command is a bit different in Mac OS X (why not!).

The ‘-i’ option required a parameter to tell what extension to add for the
backup file. To fix it, just add extension for backup file, for example ‘.bak’

Fix broken Trevis CI test

No functional change.

6 years agoMake ONE_PLY value independent again
erbsenzaehler [Sun, 27 Jan 2019 08:20:38 +0000]
Make ONE_PLY value independent again

And a Trevis CI test to catch future issues.

No functional change.

6 years agoFix a missing assignment in previous commit
Marco Costalba [Sat, 6 Apr 2019 00:03:15 +0000]
Fix a missing assignment in previous commit

While reformatting the patch, I got wrong a statement and converted it badly.

6 years agoUse average bestMoveChanges across all threads #2072
xoto10 [Wed, 3 Apr 2019 07:35:55 +0000]
Use average bestMoveChanges across all threads #2072

The current update only by main thread depends on the luck of
whether main thread sees any/many changes to the best move or not.
It then makes large, lumpy changes to the time to be
used (1x, 2x, 3x, etc) depending on that sample of 1.
Use the average across all threads to get a more reliable
number with a smoother distribution.

STC @ 5+0.05 th 4 :
LLR: 2.95 (-2.94,2.94) [0.50,4.50]
Total: 51899 W: 11446 L: 11029 D: 29424
http://tests.stockfishchess.org/tests/view/5ca32ff20ebc5925cf0016fb

STC @ 5+0.05 th 8 :
LLR: 2.96 (-2.94,2.94) [0.50,4.50]
Total: 13851 W: 2843 L: 2620 D: 8388
http://tests.stockfishchess.org/tests/view/5ca35ae00ebc5925cf001adb

LTC @ 20+0.2 th 8 :
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 48527 W: 7941 L: 7635 D: 32951
http://tests.stockfishchess.org/tests/view/5ca37cb70ebc5925cf001cec

Further work:
Similar changes might be possible for the fallingEval and timeReduction calculations (and elsewhere?), using either the min, average or max values across all threads.

Bench 3506898

6 years agoRemove pureStaticEval #2069
Moez Jellouli [Fri, 29 Mar 2019 13:05:02 +0000]
Remove pureStaticEval #2069

Remove pureStaticEval variable and keep only one
static evaluation (ss->staticEval).

STC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 64617 W: 14348 L: 14312 D: 35957 Elo -0.24
http://tests.stockfishchess.org/tests/view/5c9e1ad70ebc5925cfffc106

LTC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 82200 W: 13703 L: 13680 D: 54817 Elo -0.24
http://tests.stockfishchess.org/tests/view/5c9e4efd0ebc5925cfffc68b

Bench : 3506898

6 years agoAdd attacked by 2 pawns to attackedBy2 (#2074)
Moez Jellouli [Thu, 4 Apr 2019 06:49:35 +0000]
Add attacked by 2 pawns to attackedBy2 (#2074)

Add squares attacked by 2 pawns to the attackedBy2 array

STC :
LLR: -2.95 (-2.94,2.94) [0.50,4.50]
Total: 132722 W: 29583 L: 29090 D: 74049
http://tests.stockfishchess.org/tests/view/5ca231ba0ebc5925cf000794

LTC :
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 94589 W: 16161 L: 15718 D: 62710
http://tests.stockfishchess.org/tests/view/5ca25d180ebc5925cf000ba4

Bench: 3337864

6 years agoMerge official-stockfish/master
Fabian Fichter [Sun, 31 Mar 2019 17:32:29 +0000]
Merge official-stockfish/master

bench: 3273755

6 years agoMerge official-stockfish/master
Fabian Fichter [Sun, 31 Mar 2019 11:11:19 +0000]
Merge official-stockfish/master

No functional change.

6 years agoAssorted trivial cleanups 3/2019 (#2030)
Marco Costalba [Sun, 31 Mar 2019 09:47:36 +0000]
Assorted trivial cleanups 3/2019 (#2030)

No functional change.

6 years agoUse simple array for Pawns Connected bonus #2061
protonspring [Mon, 25 Mar 2019 19:04:14 +0000]
Use simple array for Pawns Connected bonus #2061

Simplification which removes the pawns connected array.
Instead of storing the values in an array, the values are
calculated real-time. This is about 1.6% faster on my machines.

Performance:
master ave nps: 159,248,672
patch ave nps: 161,905,592

STC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 20363 W: 4579 L: 4455 D: 11329
http://tests.stockfishchess.org/tests/view/5c9925ba0ebc5925cfff79a6

Non functional change.

6 years agoShuffle detection #2064
Moez Jellouli [Sun, 31 Mar 2019 08:51:08 +0000]
Shuffle detection #2064

Shuffle detection procedure :

Shuffling positions are detected if

    the last 36 moves are reversible (rule50_count() > 36),
    the position have been already in the TT,
    there is a still a pawn on the board (to avoid special endings like KBN vs K).

The position is then judged as a draw.

An extension is realized if we already made 14 successive reversible moves in PV to accelerate the detection of the eventual draw.

To go further : we can still improve the idea. The length of the tests need a lot of ressources.

    the limit of 36 is logic but must be checked again for special zugzwang positions,
    this limit can be decreased in special positions,
    the limit of 14 moves for extension has not been tuned.

STC
LLR: -2.94 (-2.94,2.94) [0.50,4.50]
Total: 32595 W: 7273 L: 7275 D: 18047 Elo +0.43
http://tests.stockfishchess.org/tests/view/5c90aa330ebc5925cfff1768

LTC
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 51249 W: 8807 L: 8486 D: 33956 Elo +1.85
http://tests.stockfishchess.org/tests/view/5c90b2450ebc5925cfff1800

VLTC
LLR: 2.96 (-2.94,2.94) [0.00,3.50]
Total: 137974 W: 20503 L: 19983 D: 97488 Elo +1.05
http://tests.stockfishchess.org/tests/view/5c9243a90ebc5925cfff2a93

Bench: 3548313

6 years agoReplace std::mins/max with clamp function (#2062)
protonspring [Sun, 31 Mar 2019 08:48:27 +0000]
Replace std::mins/max with clamp function (#2062)

Adding a clamp function makes some of these range limitations a bit prettier and removes some #include's.

STC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 28117 W: 6300 L: 6191 D: 15626
http://tests.stockfishchess.org/tests/view/5c9aa1df0ebc5925cfff8fcc

Non functional change.

6 years agoRemove duplication. (#2068)
Joost VandeVondele [Sun, 31 Mar 2019 08:44:55 +0000]
Remove duplication. (#2068)

always use the implementation of gives_check in position, no need to
hand-inline part of the implementation in search.

LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 57895 W: 12632 L: 12582 D: 32681
http://tests.stockfishchess.org/tests/view/5c9eaa4b0ebc5925cfffc9e3

No functional change.

6 years agoAccessor for SquareBB #2067
protonspring [Sun, 31 Mar 2019 08:43:20 +0000]
Accessor for SquareBB #2067

This is a non-functional code style change.

If we add an accessor function for SquareBB we can consolidate all of the asserts. This is also a bit cleaner because all SquareBB accesses go through this method making future changes easier to manage.

STC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 63406 W: 14084 L: 14045 D: 35277
http://tests.stockfishchess.org/tests/view/5c9ea6100ebc5925cfffc9af

No functional change.

6 years agoIncrease stack size for MSVC (fixes #8)
Fabian Fichter [Sat, 30 Mar 2019 16:47:04 +0000]
Increase stack size for MSVC (fixes #8)

Default stack size of 1 MB is insufficient for debug builds,
so increase it to 2 MB (same value as for OS X).

6 years agoMerge official-stockfish/master
Fabian Fichter [Sat, 30 Mar 2019 15:12:56 +0000]
Merge official-stockfish/master

bench: 3356469

6 years agoMerge official-stockfish/master
Fabian Fichter [Sat, 30 Mar 2019 15:10:23 +0000]
Merge official-stockfish/master

No functional change.

6 years agoMerge official-stockfish/master
Fabian Fichter [Sat, 30 Mar 2019 13:51:07 +0000]
Merge official-stockfish/master

bench: 3539234

6 years agoMerge official-stockfish/master
Fabian Fichter [Sat, 30 Mar 2019 13:32:34 +0000]
Merge official-stockfish/master

No functional change.

6 years agoTweak quadratic bonus for antichess
Fabian Fichter [Sat, 30 Mar 2019 12:46:12 +0000]
Tweak quadratic bonus for antichess

giveaway STC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 3128 W: 1311 L: 1182 D: 635
http://35.161.250.236:6543/tests/view/5c9d2d226e23db76ed25265a

giveaway LTC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 2882 W: 1168 L: 1045 D: 669
http://35.161.250.236:6543/tests/view/5c9dd5136e23db76ed25265f

6 years agoSimplify pawn asymmetry (remove use of semiopen files). (#2054)
protonspring [Sun, 24 Mar 2019 16:41:25 +0000]
Simplify pawn asymmetry (remove use of semiopen files). (#2054)

This is a functional simplification.

To me, the exclusive OR of semiopenFiles here is quite convoluted. Looks like it can be removed.

STC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 43885 W: 9731 L: 9653 D: 24501
http://tests.stockfishchess.org/tests/view/5c9041680ebc5925cfff10ea

LTC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 68437 W: 11577 L: 11533 D: 45327
http://tests.stockfishchess.org/tests/view/5c9101740ebc5925cfff1cbf

bench 3575627

6 years agoRemove unneeded condition. (#2057)
Joost VandeVondele [Sun, 24 Mar 2019 16:40:29 +0000]
Remove unneeded condition. (#2057)

This is covered by the line just before. If we would like to protect
against the piece value of e.g. a N == B, this could be done by an
assert, no need to do this at runtime.

No functional change.

6 years agoSimplify Passed Pawns (#2058)
protonspring [Sun, 24 Mar 2019 16:37:38 +0000]
Simplify Passed Pawns (#2058)

This is a non-functional simplification/speedup.

The truth-table for popcount(support) >= popcount(lever) - 1 is:
------------------lever
------------------0-------1---------2
support--0------X-------X---------0
-----------1------X-------X---------X
-----------2------X-------X---------X

Thus, it is functionally equivalent to just do: support || !more_than_one(lever) which removes the expensive popcounts and the -1.

Result of 20 runs:
base (...h_master.exe) = 1451680 +/- 8202
test (./stockfish ) = 1454781 +/- 8604
diff = +3101 +/- 931

STC
LLR: 2.94 (-2.94,2.94) [-3.00,1.00]
Total: 35424 W: 7768 L: 7674 D: 19982
Http://tests.stockfishchess.org/tests/view/5c970f170ebc5925cfff5e28

No functional change.

6 years agoAvoid timeouts in travis builds
Fabian Fichter [Sat, 23 Mar 2019 15:48:59 +0000]
Avoid timeouts in travis builds

6 years agoInclude large-board version in CI
Fabian Fichter [Sat, 23 Mar 2019 15:18:41 +0000]
Include large-board version in CI

6 years agoFix upstream merge for large-board version
Fabian Fichter [Sat, 23 Mar 2019 15:02:38 +0000]
Fix upstream merge for large-board version

6 years agoMerge official-stockfish/master
Fabian Fichter [Fri, 22 Mar 2019 20:35:36 +0000]
Merge official-stockfish/master

bench: 3456069

6 years agoMerge official-stockfish/master
Fabian Fichter [Fri, 22 Mar 2019 20:05:35 +0000]
Merge official-stockfish/master

bench: 3933394

6 years agoMerge official-stockfish/master
Fabian Fichter [Fri, 22 Mar 2019 19:48:52 +0000]
Merge official-stockfish/master

bench: 3653948

6 years agoTweak nCheck bonus
Fabian Fichter [Fri, 22 Mar 2019 18:23:43 +0000]
Tweak nCheck bonus

3check STC
LLR: -2.97 (-2.94,2.94) [0.00,10.00]
Total: 14209 W: 6657 L: 6550 D: 1002
http://35.161.250.236:6543/tests/view/5c8956106e23db76ed2525e2

3check LTC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 5693 W: 2683 L: 2507 D: 503
http://35.161.250.236:6543/tests/view/5c92acec6e23db76ed252639

6 years agoRemove !extension check #2045
xoto10 [Sun, 10 Mar 2019 21:57:48 +0000]
Remove !extension check #2045

While looking at pruning using see_ge() (which is very valuable)
it became apparent that the !extension test is not adding any
value - simplify it away.

STC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 56843 W: 12621 L: 12569 D: 31653
http://tests.stockfishchess.org/tests/view/5c8588cb0ebc5925cffe77f4

LTC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 78622 W: 13223 L: 13195 D: 52204
http://tests.stockfishchess.org/tests/view/5c8611cc0ebc5925cffe7f86

Further work could be to optimize the remaining see_ge() test. The idea of less pruning at higher depths is valuable, but perhaps the test (-PawnValueEg * depth) can be improved.

Bench: 3188688

6 years agoSkip skipping thread scheme (#1972)
CoffeeOne [Wed, 20 Mar 2019 13:50:41 +0000]
Skip skipping thread scheme (#1972)

Several simplification tests (all with the bounds [-3,1]) were run:
5+0.05 8 threads, failed very quickly:
http://tests.stockfishchess.org/tests/view/5c439a020ebc5902bb5d3970

20+0.2 8 threads, also failed, but needed a lot more games:
http://tests.stockfishchess.org/tests/view/5c44b1b70ebc5902bb5d4e34

60+0.6 8 threads passed:
http://tests.stockfishchess.org/tests/view/5c48bfe40ebc5902bca15325

60+0.6 4 threads passed:
http://tests.stockfishchess.org/tests/view/5c4b71a00ebc593af5d49904

No functional change.

6 years agoRe-enable appveyor debug builds
Fabian Fichter [Fri, 15 Mar 2019 13:55:05 +0000]
Re-enable appveyor debug builds

No functional change.

6 years agoTweak extinction bonus
Fabian Fichter [Fri, 15 Mar 2019 13:07:56 +0000]
Tweak extinction bonus

kinglet STC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 854 W: 438 L: 332 D: 84
http://35.161.250.236:6543/tests/view/5c89565a6e23db76ed2525eb

kinglet LTC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 707 W: 360 L: 259 D: 88
http://35.161.250.236:6543/tests/view/5c8a07376e23db76ed2525f0

extinction STC
LLR: 2.98 (-2.94,2.94) [-10.00,5.00]
Total: 5185 W: 2409 L: 2382 D: 394
http://35.161.250.236:6543/tests/view/5c89566e6e23db76ed2525ee

6 years agoMerge official-stockfish/master
Fabian Fichter [Fri, 15 Mar 2019 10:39:42 +0000]
Merge official-stockfish/master

bench: 3633478

6 years agoMerge official-stockfish/master
Fabian Fichter [Fri, 15 Mar 2019 10:23:51 +0000]
Merge official-stockfish/master

bench: 3423031

6 years agoReenable unoptimized builds for OSX
Fabian Fichter [Thu, 14 Mar 2019 20:26:01 +0000]
Reenable unoptimized builds for OSX

6 years agoIncrease thread stack for OS X (#2035)
Marco Costalba [Tue, 12 Mar 2019 07:35:10 +0000]
Increase thread stack for OS X (#2035)

On OS X threads other than the main thread are created with a reduced stack
size of 512KB by default, this is dangerously low for deep searches, so
adjust it to TH_STACK_SIZE. The implementation calls pthread_create() with
proper stack size parameter.

Verified for no regression at STC enabling the patch on all platforms where
pthread is supported.

LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 50873 W: 9768 L: 9700 D: 31405

No functional change.

6 years agoMerge official-stockfish/master
Fabian Fichter [Thu, 14 Mar 2019 21:05:47 +0000]
Merge official-stockfish/master

6 years agoAdjust instrumented testing
Fabian Fichter [Thu, 14 Mar 2019 18:55:42 +0000]
Adjust instrumented testing

Fix timeouts and skip thread-sanitizing for now to fix CI.

No functional change.

6 years agoIncrease thread stack for OS X (#2035)
Marco Costalba [Tue, 12 Mar 2019 07:35:10 +0000]
Increase thread stack for OS X (#2035)

On OS X threads other than the main thread are created with a reduced stack
size of 512KB by default, this is dangerously low for deep searches, so
adjust it to TH_STACK_SIZE. The implementation calls pthread_create() with
proper stack size parameter.

Verified for no regression at STC enabling the patch on all platforms where
pthread is supported.

LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 50873 W: 9768 L: 9700 D: 31405

No functional change.

6 years agoBonus for extinction piece types
Fabian Fichter [Sun, 10 Mar 2019 15:25:37 +0000]
Bonus for extinction piece types

kinglet STC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 117 W: 104 L: 9 D: 4
http://35.161.250.236:6543/tests/view/5c84ed3d6e23db76ed2525af

giveaway STC
LLR: 2.94 (-2.94,2.94) [-10.00,5.00]
Total: 2220 W: 948 L: 905 D: 367
http://35.161.250.236:6543/tests/view/5c85020e6e23db76ed2525b2

extinction STC (failed)
LLR: -2.98 (-2.94,2.94) [-10.00,5.00]
Total: 939 W: 400 L: 471 D: 68
http://35.161.250.236:6543/tests/view/5c84ece66e23db76ed2525a8

6 years agoFix tablebase probing
Fabian Fichter [Sat, 9 Mar 2019 10:19:53 +0000]
Fix tablebase probing

Do not rely on assumption that PIECE_TYPE_NB = 8.

6 years agoFix FEN of nCheck variants
Fabian Fichter [Sat, 9 Mar 2019 22:29:05 +0000]
Fix FEN of nCheck variants

3check
LLR: 2.96 (-2.94,2.94) [-10.00,5.00]
Total: 515 W: 268 L: 208 D: 39
http://35.161.250.236:6543/tests/view/5c843ee36e23db76ed252591

3check 2threads
LLR: 2.95 (-2.94,2.94) [-10.00,5.00]
Total: 527 W: 270 L: 211 D: 46
http://35.161.250.236:6543/tests/view/5c84440f6e23db76ed252594

6 years agoRemove popcount16() (#2038)
protonspring [Sun, 10 Mar 2019 09:53:39 +0000]
Remove popcount16() (#2038)

This is a non-functional simplification / code-style change.

This popcount16 method does nothing but initialize the PopCnt16 arrays.

This can be done in a single bitset line, which is less lines and more clear. Performance for this code is moot.

No functional change.

6 years agoSimplify failedLow away #1986
xoto10 [Fri, 1 Feb 2019 20:02:03 +0000]
Simplify failedLow away #1986

FailedLow doesn't seem to add any value so remove it.

STC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 43915 W: 9682 L: 9604 D: 24629
http://tests.stockfishchess.org/tests/view/5c5339770ebc592fc7baef74

LTC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 58515 W: 9670 L: 9609 D: 39236
http://tests.stockfishchess.org/tests/view/5c53cc840ebc592fc7baf6c1

Ideas for further work:

    Tune the values in the revised fallingEval calculation
    Consider adding a term using delta, e.g. c * (delta - 20) as an indicator of eval instability

Bench: 3318033

6 years agoRevert "Allowing singular extension in mate positions"
Marco Costalba [Sat, 9 Mar 2019 12:24:26 +0000]
Revert "Allowing singular extension in mate positions"

It was causing an assert: value > -VALUE_INFINITE
under some conditions.

See https://github.com/official-stockfish/Stockfish/issues/2036

Bench: 3318033

6 years agoMerge official-stockfish/master
Fabian Fichter [Fri, 8 Mar 2019 21:43:44 +0000]
Merge official-stockfish/master

bench: 3428840

6 years agoTweak shatranj piece values
Fabian Fichter [Wed, 6 Mar 2019 20:47:20 +0000]
Tweak shatranj piece values

shatranj STC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 980 W: 170 L: 104 D: 706
http://35.161.250.236:6543/tests/view/5c7ec32b6e23db07348e8774

shatranj LTC
LLR: 2.98 (-2.94,2.94) [0.00,10.00]
Total: 918 W: 134 L: 71 D: 713
http://35.161.250.236:6543/tests/view/5c7ed6e76e23db07348e8777

6 years agoRemove FutilityMoveCounts array. (#2024)
protonspring [Tue, 5 Mar 2019 19:48:29 +0000]
Remove FutilityMoveCounts array. (#2024)

This is a functional simplification that removes the FutilityMoveCounts array with a simple equation using only ints.

LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 14175 W: 3123 L: 2987 D: 8065

LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 9900 W: 1735 L: 1597 D: 6568

Bench: 3380343

6 years agoShrink Reductions[] array to one dimension
protonspring [Sun, 3 Mar 2019 14:53:36 +0000]
Shrink Reductions[] array to one dimension

This is a non-functional patch which shrinks the reductions array.
This saves about 8Kb of memory.

The only slow part of master's reductions array is the calculation
of the log values, so using a separate array for those values and
calculating the rest real-time appears to be just as fast as master.

STC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 63245 W: 13906 L: 13866 D: 35473
http://tests.stockfishchess.org/tests/view/5c7b571f0ebc5925cffdc104

No funcional change.

6 years agoPawn value tweak
SFisGOD [Tue, 5 Mar 2019 04:34:02 +0000]
Pawn value tweak

STC:
LLR: 2.96 (-2.94,2.94) [0.00,4.00]
Total: 47166 W: 10664 L: 10311 D: 26191
http://tests.stockfishchess.org/tests/view/5c7dfc370ebc5925cffdf830

LTC:
LLR: 2.95 (-2.94,2.94) [0.00,4.00]
Total: 35439 W: 6034 L: 5767 D: 23638
http://tests.stockfishchess.org/tests/view/5c7e41020ebc5925cffdfe9b

Bench: 3470519

6 years agoAssorted trivial cleanups 2/2019
Marco Costalba [Fri, 8 Feb 2019 09:36:03 +0000]
Assorted trivial cleanups 2/2019

No functional change.

6 years agoAdd continuation history 5
Vizvezdenec [Wed, 27 Feb 2019 20:25:12 +0000]
Add continuation history 5

Original patch passed STC:
http://tests.stockfishchess.org/tests/view/5c7439ff0ebc5925cffd3e64
LLR: 2.95 (-2.94,2.94) [0.50,4.50]
Total: 26348 W: 5926 L: 5632 D: 14790

and LTC:
http://tests.stockfishchess.org/tests/view/5c745a8b0ebc5925cffd41a8
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 198411 W: 33238 L: 32510 D: 132663

But had undefined behavior.
After fixing (thx to @vondele )

passed LTC:
http://tests.stockfishchess.org/tests/view/5c763c7c0ebc5925cffd5de2
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 112253 W: 18711 L: 18225 D: 75317

bench 3049229

6 years agoImplement sittuyin stalemate rule (#14)
Fabian Fichter [Mon, 4 Mar 2019 19:22:44 +0000]
Implement sittuyin stalemate rule (#14)

Taking a promotion to avoid stalemate is optional (rule 3.9 c.7).

Example:
setoption name multipv value 20
setoption name UCI_Variant value sittuyin
position fen k5PK/3r4/8/8/8/8/8/8 b - - 0 1
go depth 1

No functional change for other variants.

6 years agoFix detection of optional game end
Fabian Fichter [Mon, 4 Mar 2019 19:54:56 +0000]
Fix detection of optional game end

No functional change for variants without counting rules.

6 years agoTweak shogi piece values
Fabian Fichter [Sat, 2 Mar 2019 21:02:14 +0000]
Tweak shogi piece values

shogi
LLR: 2.98 (-2.94,2.94) [0.00,10.00]
Total: 918 W: 504 L: 390 D: 24

6 years agoMerge official-stockfish/master
Fabian Fichter [Sat, 2 Mar 2019 13:49:49 +0000]
Merge official-stockfish/master

bench: 3253645

6 years agoMerge official-stockfish/master
Fabian Fichter [Sat, 2 Mar 2019 10:07:32 +0000]
Merge official-stockfish/master

bench: 3334755

6 years agoExtend endgame evaluation for fairy pieces
Fabian Fichter [Fri, 1 Mar 2019 22:59:03 +0000]
Extend endgame evaluation for fairy pieces

6 years agoGeneralize passed pawn evaluation
Fabian Fichter [Fri, 1 Mar 2019 18:39:49 +0000]
Generalize passed pawn evaluation

losalamos
LLR: 2.99 (-2.94,2.94) [-10.00,5.00]
Total: 140 W: 56 L: 13 D: 71

ai-wok
LLR: 3.04 (-2.94,2.94) [-10.00,5.00]
Total: 194 W: 112 L: 53 D: 29

6 years agoRemove skipQuiets with mate fix. (#2021)
Joost VandeVondele [Wed, 27 Feb 2019 12:36:48 +0000]
Remove skipQuiets with mate fix. (#2021)

This removes the skipQuiets variable, as was done in an earlier round by
@protonspring, but fixes an oversight which led to wrong mate
announcements. Quiets can only be pruned when there is no mate score, so
set moveCountPruning at the right spot.

tested as a fix at STC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 66321 W: 14690 L: 14657 D: 36974
http://tests.stockfishchess.org/tests/view/5c74f3170ebc5925cffd4b3c

and as the full patch at LTC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 25903 W: 4341 L: 4228 D: 17334
http://tests.stockfishchess.org/tests/view/5c7540030ebc5925cffd506f

Bench: 3292342

6 years agoRevert "Remove skipQuiets variable in search()"
Marco Costalba [Tue, 26 Feb 2019 12:20:48 +0000]
Revert "Remove skipQuiets variable in search()"

This reverts commit 76d2f5b94a0df20d84ccf922bd1c0fcf1c779090.

Due to a bug, see https://github.com/official-stockfish/Stockfish/issues/2019

Bench: 3516616

6 years agoMerge official-stockfish/master
Fabian Fichter [Sat, 23 Feb 2019 13:50:16 +0000]
Merge official-stockfish/master

bench: 4439882

6 years agoFix PSQT color symmetry for non-standard board sizes
Fabian Fichter [Sat, 23 Feb 2019 09:32:43 +0000]
Fix PSQT color symmetry for non-standard board sizes

minishogi
LLR: 2.99 (-2.94,2.94) [-10.00,5.00]
Total: 584 W: 324 L: 259 D: 1

shogi
LLR: 2.96 (-2.94,2.94) [-10.00,5.00]
Total: 680 W: 363 L: 301 D: 16

6 years agoUpdate readme
Fabian Fichter [Sat, 23 Feb 2019 09:31:40 +0000]
Update readme

6 years agoTweak NMP depth for racing kings
Fabian Fichter [Fri, 22 Feb 2019 20:05:59 +0000]
Tweak NMP depth for racing kings

racingkings STC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 2269 W: 812 L: 706 D: 751
http://35.161.250.236:6543/tests/view/5c6daf426e23db07348e86e3

racingkings LTC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 3534 W: 1201 L: 1081 D: 1252
http://35.161.250.236:6543/tests/view/5c6dce286e23db07348e86ec

6 years agoAdd KNNvKP Endgame Heuristic
Kurtbusch [Fri, 4 Jan 2019 23:27:14 +0000]
Add KNNvKP Endgame Heuristic

This is a somewhat different patch. It fixes blindspots for
 two knights vs pawn endgame.

With local testing starting from random KNNvKP positions where the
pawn has not advanced beyond the 4th rank (thanks @protonspring !)
at 15+0.15 (4 cores), this went +105=868-27 against master. All except
two losses were won in reverse.

The heuristic is simple but effective - the strategy in these endgames
is to push the opposing king to the corner, then move the knight that's
blocking the pawn in for the checkmate while the pawn is free to move
and prevents stalemate. This patch gives SF the little boost it needs
to search the relevant king-cornering mating lines.

See the discussion in pull request 1939 for some more good results for
this test in independant tests:
https://github.com/official-stockfish/Stockfish/pull/1939

Bench: 3310239

6 years agoProbCutCount limit dependancy to cutNode
MJZ1977 [Tue, 19 Feb 2019 16:48:03 +0000]
ProbCutCount limit dependancy to cutNode

Use the ProbCutCount limit `2 + 2 * cutNode` instead of constant 3.

STC
LLR: -2.95 (-2.94,2.94) [0.50,4.50]
Total: 61812 W: 13599 L: 13459 D: 34754
http://tests.stockfishchess.org/tests/view/5c6d19240ebc5925cffca07a

LTC
LLR: 2.96 (-2.94,2.94) [0.00,3.50]
Total: 27549 W: 4614 L: 4363 D: 18572
http://tests.stockfishchess.org/tests/view/5c6d45c10ebc5925cffca7a6

Closes https://github.com/official-stockfish/Stockfish/pull/2015

Bench: 3368889

6 years agoRemove PvNode dimension from Reductions array
protonspring [Wed, 13 Feb 2019 21:58:43 +0000]
Remove PvNode dimension from Reductions array

This is a functional simplification: if we simply subtract one to Reductions[]
when PvNode is set, we can remove this dimension of the multidimensional array.
I think this saves about 8K of memory.

STC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 10118 W: 2282 L: 2138 D: 5698
http://tests.stockfishchess.org/tests/view/5c6332b60ebc5925cffbdfed

LTC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 70765 W: 11617 L: 11575 D: 47573
http://tests.stockfishchess.org/tests/view/5c63379e0ebc5925cffbe0de

Closes https://github.com/official-stockfish/Stockfish/pull/2010

Bench 3261078

6 years agoRemove skipQuiets variable in search()
protonspring [Thu, 14 Feb 2019 21:23:24 +0000]
Remove skipQuiets variable in search()

This is a functional simplification. The moveCountPruning variable and the
skipQuiets variable are similar enough in function that they can be combined.
This removes the skipQuiets variable in search.

STC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 23278 W: 5210 L: 5091 D: 12977
http://tests.stockfishchess.org/tests/view/5c65dc490ebc5925cffc12e9

LTC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 77107 W: 12792 L: 12761 D: 51554
http://tests.stockfishchess.org/tests/view/5c65e4360ebc5925cffc1490

Closes https://github.com/official-stockfish/Stockfish/pull/2011

bench 3640330

6 years agoFix placement chess in large-board version
Fabian Fichter [Wed, 20 Feb 2019 21:50:33 +0000]
Fix placement chess in large-board version

6 years agoSupport microshogi
Fabian Fichter [Sun, 17 Feb 2019 13:23:28 +0000]
Support microshogi

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

No functional change for other variants.

6 years agoTweak piece values for drop games
Fabian Fichter [Sun, 17 Feb 2019 12:34:56 +0000]
Tweak piece values for drop games

Decrease value of strong pieces for drop games and games where checks are prohibited.

crazyhouse STC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 1687 W: 883 L: 759 D: 45
http://35.161.250.236:6543/tests/view/5c6723ee6e23db07348e86aa

crazyhouse LTC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 1096 W: 586 L: 471 D: 39
http://35.161.250.236:6543/tests/view/5c6745716e23db07348e86af

racingkings STC
LLR: 7.35 (-2.94,2.94) [0.00,10.00]
Total: 17215 W: 6182 L: 5762 D: 5271
http://35.161.250.236:6543/tests/view/5c6724056e23db07348e86ad

racingkings LTC
LLR: 2.98 (-2.94,2.94) [-10.00,5.00]
Total: 1634 W: 527 L: 487 D: 620
http://35.161.250.236:6543/tests/view/5c67d4776e23db07348e86b5

shogi
LLR: 3.00 (-2.94,2.94) [-10.00,5.00]
Total: 1066 W: 548 L: 488 D: 30

minishogi
LLR: 2.95 (-2.94,2.94) [-10.00,5.00]
Total: 1126 W: 591 L: 531 D: 4

6 years agoSimplify evaluation of passed shogi pawns
Fabian Fichter [Sun, 10 Feb 2019 20:03:06 +0000]
Simplify evaluation of passed shogi pawns

shogi
LLR: 1.60 (-2.94,2.94) [-10.00,5.00]
Total: 1000 W: 502 L: 473 D: 25

6 years agoTweak king danger for fairy pieces
Fabian Fichter [Sun, 10 Feb 2019 19:48:24 +0000]
Tweak king danger for fairy pieces

minishogi
LLR: 2.98 (-2.94,2.94) [0.00,10.00]
Total: 1390 W: 753 L: 630 D: 7

asean
LLR: 3.01 (-2.94,2.94) [-10.00,5.00]
Total: 684 W: 151 L: 111 D: 422