Fabian Fichter [Fri, 15 Nov 2019 00:11:08 +0000]
Define variant template for minixiangqi
Fabian Fichter [Fri, 15 Nov 2019 00:03:52 +0000]
Improve XBoard compatibility
Support pieceToCharTable in setup command to improve compatibility (#54).
Fabian Fichter [Thu, 14 Nov 2019 23:26:46 +0000]
Improve XBoard compatibility for makruk variants
Fabian Fichter [Thu, 14 Nov 2019 16:19:48 +0000]
Support New Zealand chess
Allow castling with one non-rook piece type and add New Zealand chess (#52).
bench: 4470822
Fabian Fichter [Thu, 14 Nov 2019 13:14:44 +0000]
Support Centaur chess
https://www.chessvariants.com/large.dir/contest/royalcourt.html
Closes #33.
bench: 4556696
Fabian Fichter [Thu, 14 Nov 2019 10:47:47 +0000]
Support debug commands also in XBoard protocol
Commands `d` and `eval` can now also be used in xboard protocol (#47).
Fabian Fichter [Thu, 14 Nov 2019 09:37:59 +0000]
Separate XBoard protocol code
Split UCI and XBoard protocol code for better maintainability.
No functional change.
Fabian Fichter [Thu, 14 Nov 2019 09:25:40 +0000]
Tweak piece values for hoppelpoppel
hoppelpoppel STC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 159 W: 113 L: 25 D: 21
http://www.variantfishtest.org:6543/tests/view/
5dcc4d846e23db1ffe4a2734
hoppelpoppel LTC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 136 W: 100 L: 16 D: 20
http://www.variantfishtest.org:6543/tests/view/
5dcc61d96e23db1ffe4a2739
Fabian Fichter [Tue, 12 Nov 2019 22:53:09 +0000]
Avoid copying of pieceToChar string
Small speed-up by using references.
Fabian Fichter [Tue, 12 Nov 2019 20:54:11 +0000]
Fix description of chancellor in variants.ini
Fabian Fichter [Tue, 12 Nov 2019 19:59:03 +0000]
Support perft command in xboard protocol
Fabian Fichter [Tue, 12 Nov 2019 19:25:01 +0000]
Update documentation in variants.ini
Describe recently added configuration options.
Fabian Fichter [Mon, 11 Nov 2019 20:01:17 +0000]
Set default variant based on protocol
Improve compatibility with shogi and xiangqi GUIs
by setting suitable defaults for UCI_Variant:
UCI: chess
USI: shogi
UCCI: xiangqi
xboard: chess
Fabian Fichter [Mon, 11 Nov 2019 15:44:51 +0000]
Update list of supported protocols in readme
Fabian Fichter [Sun, 10 Nov 2019 22:03:11 +0000]
Further increase king danger for xiangqi
xiangqi
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 564 W: 199 L: 121 D: 244
Fabian Fichter [Sun, 10 Nov 2019 21:51:26 +0000]
Fix king ring for non-standard board sizes
Adjust king danger for shogi variants to compensate for effect of fix.
Fabian Fichter [Sun, 10 Nov 2019 16:07:43 +0000]
Fix attackers calculation for xiangqi generals
xiangqi
LLR: 1.77 (-2.94,2.94) [0.00,10.00]
Total: 1000 W: 330 L: 274 D: 396
Fabian Fichter [Sun, 10 Nov 2019 16:05:07 +0000]
Mitigate perpetual check blindness
Improve handling of problematic positions in #49.
Fabian Fichter [Sun, 10 Nov 2019 14:19:29 +0000]
Increase king danger for xiangqi generals
xiangqi
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 648 W: 249 L: 166 D: 233
Fabian Fichter [Sun, 10 Nov 2019 13:00:24 +0000]
Calculate pins by cannons
xiangqi
LLR: 3.01 (-2.94,2.94) [0.00,10.00]
Total: 868 W: 303 L: 218 D: 347
Fabian Fichter [Sat, 9 Nov 2019 23:38:51 +0000]
Tweak endgame scale factor for xiangqi
xiangqi
LLR: 3.00 (-2.94,2.94) [0.00,10.00]
Total: 1232 W: 413 L: 324 D: 495
Fabian Fichter [Sat, 9 Nov 2019 15:19:47 +0000]
Improve CI coverage
Fabian Fichter [Sat, 9 Nov 2019 14:54:04 +0000]
Support UCCI protocol
http://www.xqbase.com/protocol/cchess_ucci.htm
Closes #46.
Fabian Fichter [Fri, 8 Nov 2019 15:29:36 +0000]
Search checking captures early in drop variants
crazyhouse STC (yellow)
LLR: -2.96 (-2.94,2.94) [0.00,10.00]
Total: 19119 W: 9373 L: 9198 D: 548
http://www.variantfishtest.org:6543/tests/view/
5d93b6486e23db3768ec0881
crazyhouse LTC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 5822 W: 2894 L: 2711 D: 217
http://www.variantfishtest.org:6543/tests/view/
5d94cc056e23db3768ec0892
crazyhouse VLTC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 10293 W: 5048 L: 4802 D: 443
http://www.variantfishtest.org:6543/tests/view/
5d97772d6e23db3768ec0898
Fabian Fichter [Thu, 7 Nov 2019 22:00:25 +0000]
Support xiangqi and minixiangqi
New features:
- Piece types soldier, horse, and elephant
- Restriction of piece mobility
- Flying general rule
- Piece synonyms
Closes #31.
bench: 4448277
Fabian Fichter [Mon, 4 Nov 2019 18:02:27 +0000]
Ensure that GUI sends time command in CECP
Fabian Fichter [Sun, 3 Nov 2019 18:05:47 +0000]
Fix mate score for XBoard protocol (#44)
Fabian Fichter [Sun, 3 Nov 2019 17:53:44 +0000]
Replace hard-coded variant name
No functional change.
Fabian Fichter [Sun, 3 Nov 2019 17:46:15 +0000]
Fix mate score for XBoard protocol (#44)
Fabian Fichter [Fri, 1 Nov 2019 20:36:31 +0000]
Support XBoard protocol (close #37)
Fabian Fichter [Sun, 3 Nov 2019 08:57:12 +0000]
Fix quiet check move generation
Do not generate quiet checks outside of board in quiescence search.
Closes #45.
Fabian Fichter [Sat, 26 Oct 2019 19:24:02 +0000]
Consistent capture_or_promotion for special moves
No functional change except for cambodian, micro, and kyotoshogi.
Fabian Fichter [Fri, 25 Oct 2019 22:01:09 +0000]
Rewrite king danger of pieces in hand
crazyhouse STC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 1056 W: 576 L: 460 D: 20
http://www.variantfishtest.org:6543/tests/view/
5db370d96e23db1ffe4a2671
crazyhouse LTC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 708 W: 399 L: 289 D: 20
http://www.variantfishtest.org:6543/tests/view/
5db410896e23db1ffe4a2679
Fabian Fichter [Fri, 25 Oct 2019 14:27:30 +0000]
Reduce memory footprint of continuation history
Close #43.
No functional change.
Fabian Fichter [Fri, 25 Oct 2019 09:11:10 +0000]
Merge official-stockfish/master
bench: 4231542
Joost VandeVondele [Mon, 21 Oct 2019 20:21:50 +0000]
Simplify reductions on singular extension
Current master employs a scheme to adjust reductions on singular
nodes that is somewhat controversial, see
https://github.com/official-stockfish/Stockfish/pull/2167
This patch removes this use of a search result outside of [a,b],
by observing that the main effect of this code is to adjust the
reduction by an average of ~2 (1.7) rather than 1.
Claims the first blue at STC and LTC:
STC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 30142 W: 6547 L: 6442 D: 17153
http://tests.stockfishchess.org/tests/view/
5daf16c40ebc5902c06da566
LTC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 45715 W: 7380 L: 7298 D: 31037
http://tests.stockfishchess.org/tests/view/
5daf2f3c0ebc5902c06da6c7
Closes https://github.com/official-stockfish/Stockfish/pull/2367
Bench: 5115841
Joost VandeVondele [Mon, 21 Oct 2019 06:05:14 +0000]
Avoid crashing on Log File opening
Stockfish crashes immediately if users enter a wrong file name (or even an existing
folder name) for debug log file. It may be hard for users to find out since it prints
nothing. If they enter the string via a chess GUI, the chess GUI may remember and
auto-send to Stockfish next time, makes Stockfish crashes all the time. Bug report by
Nguyen Hong Pham in this issue: https://github.com/official-stockfish/Stockfish/issues/2365
This patch avoids the crash and instead prefers to exit gracefully with a error
message on std:cerr, like we do with the fenFile for instance.
Closes https://github.com/official-stockfish/Stockfish/pull/2366
No functional change.
Fabian Fichter [Mon, 21 Oct 2019 11:47:58 +0000]
Return to development version
Fabian Fichter [Mon, 21 Oct 2019 10:31:56 +0000]
Fairy-Stockfish 10.3
bench: 3686859
Fabian Fichter [Mon, 21 Oct 2019 10:22:01 +0000]
Describe variant configuration inheritance in INI
xoto10 [Thu, 19 Sep 2019 16:10:46 +0000]
Remove uithread
With the current questions and issues around threading, I had a look at
https://github.com/official-stockfish/Stockfish/issues/2299.
It seems there was a problem with data races when requesting eval via UCI while
a search was already running. To fix this an extra thread uithread was created,
presumably to avoid an overlap with Threads.main() that was causing problems.
Making this eval request seems to be outside the scope of UCI, and @vondele also
reports that the data race is not even fixed reliably by this change. I suggest
we simplify the threading here by removing this uithread and adding a comment
signaling that user should not request eval when a search is already running.
Closes https://github.com/official-stockfish/Stockfish/pull/2310
No functional change.
Fabian Fichter [Mon, 14 Oct 2019 11:51:55 +0000]
Scale piece values with board size
losalamos STC
LLR: 2.98 (-2.94,2.94) [0.00,10.00]
Total: 786 W: 242 L: 164 D: 380
http://35.161.250.236:6543/tests/view/
5da456e16e23db3768ec0928
losalamos LTC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 480 W: 161 L: 87 D: 232
http://35.161.250.236:6543/tests/view/
5da4790a6e23db3768ec092a
courier STC
LLR: 2.98 (-2.94,2.94) [0.00,10.00]
Total: 1971 W: 550 L: 459 D: 962
http://35.161.250.236:6543/tests/view/
5da4f9696e23db3768ec0938
courier LTC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 755 W: 231 L: 154 D: 370
http://35.161.250.236:6543/tests/view/
5da4fa306e23db3768ec093b
VoyagerOne [Fri, 18 Oct 2019 13:23:00 +0000]
Current capture for Counter-Move history
Use current capture to index the CMH table instead of prior capture.
STC:
LLR: 2.96 (-2.94,2.94) [0.00,4.00]
Total: 61908 W: 13626 L: 13220 D: 35062
http://tests.stockfishchess.org/tests/view/
5da8aa670ebc597ba8eda558
LTC:
LLR: 2.96 (-2.94,2.94) [0.00,4.00]
Total: 49057 W: 8071 L: 7765 D: 33221
http://tests.stockfishchess.org/tests/view/
5da8e99d0ebc597ba8eda9ca
Closes https://github.com/official-stockfish/Stockfish/pull/2362
Bench: 4423737
Fabian Fichter [Fri, 18 Oct 2019 14:13:03 +0000]
More documentation in variants.ini (close #30)
Fabian Fichter [Fri, 18 Oct 2019 10:31:14 +0000]
Fix #41: 50-move rule for Sittuyin
Joost VandeVondele [Tue, 1 Oct 2019 20:11:12 +0000]
Add four positions to bench
The current bench is missing a position with high 50 moves rule counter,
making most 'shuffle' tests based on 50mr > N seem non-functional.
This patch adds one FEN with high 50mr counter to address this issue
(taken from a recent tcec game).
Four new FENs:
- position with high 50mr counter
- tactical position with many captures, checks, extensions, fails high/low
- two losses by Stockfish in the S16 bonus games against Houdini
See the pull request for nice comments by @Alayan-stk-2 about each position
in bench: https://github.com/official-stockfish/Stockfish/pull/2338
Bench: 4590210
Fabian Fichter [Sun, 13 Oct 2019 21:49:14 +0000]
Support Cambodian chess (Ouk Chatrang, Kar Ouk) (close #39)
https://en.wikipedia.org/wiki/Makruk#Cambodian_chess
- Captures by special move of queen/neang are allowed.
- King may only make its leap if the side to move is not in check,
and if the move does not capture a piece.
No functional change for existing variants.
Fabian Fichter [Mon, 14 Oct 2019 16:24:27 +0000]
Set castling rights only if enabled
Makes FEN parsing more robust and allows to support S-Chess without castling.
Fabian Fichter [Mon, 14 Oct 2019 13:58:46 +0000]
Fix compiler warnings for large-board version
No functional change.
Fabian Fichter [Fri, 11 Oct 2019 13:14:19 +0000]
Amendment for documentation update (#30)
Fabian Fichter [Fri, 11 Oct 2019 13:07:50 +0000]
Extend variant INI documentation (#30)
VoyagerOne [Tue, 8 Oct 2019 14:44:01 +0000]
Introduce separate counter-move tables for inCheck
Enhance counter-move history table by adding a inCheck dimension. This doubles
the size of the table but provides more accurate move ordering.
STC: (yellow)
LLR: -2.94 (-2.94,2.94) [0.50,4.50]
Total: 36217 W: 7790 L: 7777 D: 20650
http://tests.stockfishchess.org/tests/view/
5d9b9a290ebc5902b6d04fe0
LTC:
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 36665 W: 6063 L: 5788 D: 24814
http://tests.stockfishchess.org/tests/view/
5d9b9fcc0ebc5902b6d05985
Closes https://github.com/official-stockfish/Stockfish/pull/2353
Bench: 4053577
31m059 [Mon, 7 Oct 2019 18:47:43 +0000]
No reachable outpost bonus for bishops
Previously, we used various control statements and ternary operators to divide
Outpost into four bonuses, based on whether the outpost was for a knight or
bishop, and whether it was currently an Outpost or merely a potential ("reachable")
one in the future. Bishop outposts, however, have traditionally been worth far
less Elo in testing. An attempt to remove them altogether passed STC, but failed LTC.
Here we include a narrower simplification, removing the reachable Outpost bonus
for bishops. This bonus was always suspect, given that its current implementation
conflicts directly with BishopPawns. BishopPawns penalizes our bishops based on the
number of friendly pawns on the same color of square, but by definition, Outposts
must be pawn-protected! This PR helps to alleviate this conceptual contradiction
without loss of Elo and with slightly simpler code.
On a code level, this allows us to simplify a ternary operator into the previous
"if" block and distribute a multiplication into an existing constant Score. On a
conceptual level, we retire one of the four traditional Outpost bonuses.
STC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 22277 W: 4882 L: 4762 D: 12633
http://tests.stockfishchess.org/tests/view/
5d9aeed60ebc5902b6cf9751
LTC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 51206 W: 8353 L: 8280 D: 34573
http://tests.stockfishchess.org/tests/view/
5d9af1940ebc5902b6cf9cd5
Closes https://github.com/official-stockfish/Stockfish/pull/2352
Bench: 3941591
Fabian Fichter [Mon, 7 Oct 2019 19:36:47 +0000]
Fix pseudo-legal move validation (close #35)
sittuyin STC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 126 W: 60 L: 2 D: 64
http://35.161.250.236:6543/tests/view/
5d9b94916e23db3768ec08f3
sittuyin LTC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 111 W: 58 L: 1 D: 52
http://35.161.250.236:6543/tests/view/
5d9b9f566e23db3768ec08fd
bench: 3686859
Alayan [Mon, 7 Oct 2019 17:02:33 +0000]
Adjust aspiration window with eval
This patch changes the base aspiration window size depending on the absolute
value of the previous iteration score, increasing it away from zero. This
stems from the observation that the further away from zero, the more likely
the evaluation is to change significantly with more depth. Conversely, a
tighter aspiration window is more efficient when close to zero.
A beneficial side-effect is that analysis of won positions without a quick
mate is less prone to waste nodes in repeated fail-high that change the eval
by tiny steps.
STC:
LLR: 2.96 (-2.94,2.94) [0.50,4.50]
Total: 60102 W: 13327 L: 12868 D: 33907
http://tests.stockfishchess.org/tests/view/
5d9a70d40ebc5902b6cf39ba
LTC:
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 155553 W: 25745 L: 25141 D: 104667
http://tests.stockfishchess.org/tests/view/
5d9a7ca30ebc5902b6cf4028
Future work : the values used in this patch were only a reasonable guess.
Further testing should unveil more optimal values. However, the aspiration
window is rather tight with a minimum of 21 internal units, so discrete
integers put a practical limitation to such tweaking.
More exotic experiments around the aspiration window parameters could also
be tried, but efficient conditions to adjust the base aspiration window size
or allow it to not be centered on the current evaluation are not obvious.
The aspiration window increases after a fail-high or a fail-low is another
avenue to explore for potential enhancements.
Bench: 4043748
SFisGOD [Mon, 7 Oct 2019 04:30:57 +0000]
Tweak kingFlankAttacks factor in kingDanger
Increase kingFlankAttacks factor in kingDanger from 5/16 to 6/16.
Failed STC:
LLR: -2.96 (-2.94,2.94) [0.00,4.00]
Total: 77947 W: 16989 L: 16848 D: 44110
http://tests.stockfishchess.org/tests/view/
5d9ac0280ebc5902b6cf63cd
Passed LTC 1:
LLR: 2.96 (-2.94,2.94) [0.00,4.00]
Total: 13443 W: 2231 L: 2037 D: 9175
http://tests.stockfishchess.org/tests/view/
5d9ac88d0ebc5902b6cf6ffb
Passed LTC 2:
LLR: 2.96 (-2.94,2.94) [0.00,4.00]
Total: 23340 W: 3842 L: 3617 D: 15881
http://tests.stockfishchess.org/tests/view/
5d9acf7f0ebc5902b6cf7c27
Closes https://github.com/official-stockfish/Stockfish/pull/2349
Bench: 4042155
Alain SAVARD [Sun, 6 Oct 2019 22:48:19 +0000]
Adjust pawn span
Run as a simplification
a) insures that pawn attacks are always included in the pawn span
(this "fixes" the case where some outpost or reachable outpost
bonus were awarded on squares controlled by enemy pawns).
b) compute the full span only if not "backward" or not "blocked".
By looking at "blocked" instead of "opposed", we get a nice simpli-
fication and the "new" outpost detection is almost identical, except
a few borderline cases on rank 4.
passed STC
http://tests.stockfishchess.org/tests/view/
5d9950730ebc5902b6cefb90
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 79113 W: 17168 L: 17159 D: 44786
passed LTC
http://tests.stockfishchess.org/tests/view/
5d99d14e0ebc5902b6cf0692
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 41286 W: 6819 L: 6731 D: 27736
See https://github.com/official-stockfish/Stockfish/pull/2348
bench: 3812891
Ondrej Mosnacek [Sun, 6 Oct 2019 07:57:20 +0000]
Make priorCapture a bool
It is always used as a bool, so let's make it a bool straight away.
We can always redefine it as a Piece in a later patch if we want
to use the piece type or the piece color.
No functional change.
VoyagerOne [Sat, 5 Oct 2019 14:42:36 +0000]
Introduce separate counter-move tables for captures
Enhance counter-move history table by adding a capture/no-capture dimension,
depending wether the previous move was a quiet move or a capture. This doubles
the size of the table but provides more accurate move ordering.
STC:
LLR: 2.95 (-2.94,2.94) [0.50,4.50]
Total: 79702 W: 17720 L: 17164 D: 44818
http://tests.stockfishchess.org/tests/view/
5d97945e0ebc590c21aa724b
LTC:
LLR: 2.96 (-2.94,2.94) [0.00,3.50]
Total: 29147 W: 4907 L: 4651 D: 19589
http://tests.stockfishchess.org/tests/view/
5d97ccb90ebc590c21aa7bc0
Closes https://github.com/official-stockfish/Stockfish/pull/2344
Bench: 4131643
Brian Sheppard [Sat, 28 Sep 2019 20:27:23 +0000]
Eliminate ONE_PLY
Simplification that eliminates ONE_PLY, based on a suggestion in the forum that
support for fractional plies has never been used, and @mcostalba's openness to
the idea of eliminating it. We lose a little bit of type safety by making Depth
an integer, but in return we simplify the code in search.cpp quite significantly.
No functional change
------------------------------------------
The argument favoring eliminating ONE_PLY:
* The term “ONE_PLY” comes up in a lot of forum posts (474 to date)
https://groups.google.com/forum/?fromgroups=#!searchin/fishcooking/ONE_PLY%7Csort:relevance
* There is occasionally a commit that breaks invariance of the code
with respect to ONE_PLY
https://groups.google.com/forum/?fromgroups=#!searchin/fishcooking/ONE_PLY%7Csort:date/fishcooking/ZIPdYj6k0fk/KdNGcPWeBgAJ
* To prevent such commits, there is a Travis CI hack that doubles ONE_PLY
and rechecks bench
* Sustaining ONE_PLY has, alas, not resulted in any improvements to the
engine, despite many individuals testing many experiments over 5 years.
The strongest argument in favor of preserving ONE_PLY comes from @locutus:
“If we use par example ONE_PLY=256 the parameter space is increases by the
factor 256. So it seems very unlikely that the optimal setting is in the
subspace of ONE_PLY=1.”
There is a strong theoretical impediment to fractional depth systems: the
transposition table uses depth to determine when a stored result is good
enough to supply an answer for a current search. If you have fractional
depths, then different pathways to the position can be at fractionally
different depths.
In the end, there are three separate times when a proposal to remove ONE_PLY
was defeated by the suggestion to “give it a few more months.” So… it seems
like time to remove this distraction from the community.
See the pull request here:
https://github.com/official-stockfish/Stockfish/pull/2289
Stéphane Nicolet [Sat, 5 Oct 2019 09:15:24 +0000]
Fix compare function in previous patch
Bench: 4012371
mstembera [Sat, 24 Aug 2019 22:04:41 +0000]
Remove temporary shelter array
Remove temporary array of shelters and avoid iterating over it each time to find
if the shelter values after castling are better than the current value.
Work done on top of https://github.com/official-stockfish/Stockfish/pull/2277
Speed benchmark did not measure any difference.
No functional change
Fabian Fichter [Thu, 3 Oct 2019 14:58:20 +0000]
Support generation of SFEN (gbtami/pychess-variants#36)
Report SFEN next to FEN in the "d" command.
Fabian Fichter [Wed, 2 Oct 2019 21:56:51 +0000]
Support Makrukhouse (Makruk+Crazyhouse hybrid)
Fabian Fichter [Fri, 27 Sep 2019 07:31:08 +0000]
Speed up move picking for losing chess
giveaway STC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 403 W: 203 L: 114 D: 86
http://35.161.250.236:6543/tests/view/
5d93a8726e23db3768ec087a
giveaway LTC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 369 W: 178 L: 93 D: 98
http://35.161.250.236:6543/tests/view/
5d93be896e23db3768ec088a
losers STC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 539 W: 290 L: 190 D: 59
http://35.161.250.236:6543/tests/view/
5d93a8fd6e23db3768ec087d
losers LTC
LLR: 2.97 (-2.94,2.94) [0.00,10.00]
Total: 604 W: 314 L: 214 D: 76
http://35.161.250.236:6543/tests/view/
5d93be916e23db3768ec088c
codrus STC
LLR: 2.95 (-2.94,2.94) [0.00,10.00]
Total: 857 W: 477 L: 364 D: 16
http://35.161.250.236:6543/tests/view/
5d93a9126e23db3768ec087f
Moez Jellouli [Fri, 27 Sep 2019 08:18:22 +0000]
More accurate pawn attack span definition
Tweak the pawn attack span for backward pawns and the zone behind
opponent opposing pawns. This is important in positional play and
one of weaknesses of the engine in recent high level games.
STC
LLR: -2.95 (-2.94,2.94) [0.50,4.50]
Total: 66843 W: 14884 L: 14717 D: 37242
http://tests.stockfishchess.org/tests/view/
5d8dcb1b0ebc590f3beb2956
LTC
LLR: 2.96 (-2.94,2.94) [0.00,3.50]
Total: 77699 W: 12993 L: 12602 D: 52104
http://tests.stockfishchess.org/tests/view/
5d8de9bc0ebc590f3beb3d00
See discussion in https://github.com/official-stockfish/Stockfish/pull/2332
Bench: 4012371
Joost VandeVondele [Wed, 25 Sep 2019 19:24:05 +0000]
Adjust reductions based on the number of threads
In lazySMP it makes sense to prune a little more, as multiple threads
search wider. We thus increase the prefactor of the reductions slowly
as a function of the threads. The prefactor of the log(threads) term
is a parameter, this pull request uses 1/2 after testing.
passed STC @ 8threads:
LLR: 2.96 (-2.94,2.94) [0.50,4.50]
Total: 118125 W: 23151 L: 22462 D: 72512
http://tests.stockfishchess.org/tests/view/
5d8bbf4d0ebc59509180f217
passed LTC @ 8threads:
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 67546 W: 10630 L: 10279 D: 46637
http://tests.stockfishchess.org/tests/view/
5d8c463b0ebc5950918167e8
passed ~LTC @ 14threads:
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 74271 W: 12421 L: 12040 D: 49810
http://tests.stockfishchess.org/tests/view/
5d8db1f50ebc590f3beb24ef
Note:
A larger prefactor (1) passed similar tests at STC and LTC (8 threads),
while a very large one (2) passed STC quickly but failed LTC (8 threads).
For the single-threaded case there is no functional change.
Closes https://github.com/official-stockfish/Stockfish/pull/2337
Bench: 4088701
Fixup: remove redundant code.
Fabian Fichter [Tue, 1 Oct 2019 20:07:06 +0000]
Make drop region constraint more explicit
No functional change.
protonspring [Mon, 30 Sep 2019 21:10:44 +0000]
Remove ThreatByRank
This is a functional simplification that removes ThreatByRank.
STC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 48009 W: 10630 L: 10560 D: 26819
http://tests.stockfishchess.org/tests/view/
5d92095c0ebc594fb88eb61e
LTC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 18682 W: 3177 L: 3053 D: 12452
http://tests.stockfishchess.org/tests/view/
5d9231120ebc594fb88ebacd
Moving forward, it's possible that ThreatByMinor and ThreatByRook
could be combined, but I haven't really contemplated that yet.
Closes https://github.com/official-stockfish/Stockfish/pull/2336
bench 4088701
Joost VandeVondele [Fri, 27 Sep 2019 17:25:22 +0000]
Remove depth dependence in value_draw().
The condition "depth >= 4 * ONE_PLY" does not seem needed at this point.
passed STC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 32751 W: 7178 L: 7078 D: 18495
http://tests.stockfishchess.org/tests/view/
5d8e46660ebc590f3bebad5e
passed LTC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 31693 W: 5299 L: 5196 D: 21198
http://tests.stockfishchess.org/tests/view/
5d8e4b4f0ebc590f3bebb165
Bench: 4062526
31m059 [Fri, 27 Sep 2019 06:45:28 +0000]
Extend castling independently of singular extension
A curious feature of Stockfish's current extension code is its repeated
use of "else if." In most cases, this makes no functional difference,
because no more than one extension is applied; once one extension has
been applied, the remaining ones can be safely ignored.
However, if most singular extension search conditions are true, except
"value < singularBeta", no non-singular extensions (e.g., castling) can
be performed!
Three tests were submitted, for three of Stockfish's four non-singular
extensions. I excluded the shuffle extension, because historically there
have been concerns about the fragility of its conditions, and I did not
want to risk causing any serious search problems.
- Modifying the passed pawn extension appeared roughly neutral at STC. At
best, it appeared to be an improvement of less than 1 Elo.
- Modifying check extension performed very poorly at STC
- Modifying castling extension (this patch) produced a long "yellow" run
at STC (insufficient to pass, but positive score) and a strong LTC.
In simple terms, prior to this patch castling extension was occasionally
not applied during search--on castling moves. The effect of this patch is
to perform castling extension on more castling moves. It does so without
adding any code complexity, simply by replacing an "else if" with "if" and
reordering some existing code.
STC:
LLR: -2.96 (-2.94,2.94) [0.00,4.00]
Total: 108114 W: 23877 L: 23615 D: 60622
http://tests.stockfishchess.org/tests/view/
5d8d86bd0ebc590f3beb0c88
LTC:
LLR: 2.96 (-2.94,2.94) [0.00,4.00]
Total: 20862 W: 3517 L: 3298 D: 14047
http://tests.stockfishchess.org/tests/view/
5d8d99cd0ebc590f3beb1899
Bench: 3728191
--------
Where do we go from here?
- It seems strange to me that check extension performed so poorly -- clearly
some of the singular extension conditions are also very important for check
extension. I am not an expert in search, and I do not have any intuition
about which of the eight conditions is/are the culprit. I will try a
succession of eight STC tests to identify the relevant conditions, then try
to replicate this PR for check extension.
- Recent tests interacting with the castle extension may deserve retesting.
I will shortly resubmit a few of my recent castling extension tweaks, rebased
on this PR/commit.
My deepest thanks to @noobpwnftw for the extraordinary CPU donation, and to
all our other fishtest volunteers, who made it possible for a speculative LTC
to pass in 70 minutes!
Closes https://github.com/official-stockfish/Stockfish/pull/2331
Alain SAVARD [Thu, 26 Sep 2019 03:23:07 +0000]
Simplify RookOnPawn
Remove the RookOnPawn logic (for rook on rank 5 and above aligning with pawns
on same row or file) which was overlapping with a few other parameters.
Inspired by @31m059 interesting result hinting that a direct attack on pawns
instead of PseudoAttacks might work.
http://tests.stockfishchess.org/tests/view/
5d89a7c70ebc595091801b8d
After a few attempts by me and @31m059, and some long STC greens but red LTC,
as a proof of concept I first tried a local SPSA at VSTC trying to tune related
rook psqt rows, and mainly some rook related stuff in evaluate.cpp.
Result was STC green, but still red LTC,
Finally a 100M fishtest SPSA at LTC proved successful both at STC and LTC.
All this was possible with the awesome fishtest contributors.
At some point, I had 850 workers on the last test !
Run as a simplification
STC
http://tests.stockfishchess.org/tests/view/
5d8d68f40ebc590f3beaf171
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 7399 W: 1693 L: 1543 D: 4163
LTC
http://tests.stockfishchess.org/tests/view/
5d8d70270ebc590f3beaf63c
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 41617 W: 6981 L: 6894 D: 27742
Closes https://github.com/official-stockfish/Stockfish/pull/2329
bench: 4037914
Fabian Fichter [Fri, 27 Sep 2019 07:01:31 +0000]
Support "coffeehouse" chess
Crazyhouse with mandatory captures.
Fabian Fichter [Thu, 26 Sep 2019 18:46:32 +0000]
Do not consider quiet moves as attacks
Fix attack bitboard calculation for hoppelpoppel-style pieces.
hoppelpoppel STC
LLR: 2.94 (-2.94,2.94) [0.00,10.00]
Total: 863 W: 335 L: 247 D: 281
http://35.161.250.236:6543/tests/view/
5d8d0ab36e23db3768ec085c
hoppelpoppel LTC
LLR: 2.96 (-2.94,2.94) [0.00,10.00]
Total: 717 W: 271 L: 187 D: 259
http://35.161.250.236:6543/tests/view/
5d8d0d8f6e23db3768ec085f
chess STC
LLR: 3.00 (-2.94,2.94) [-10.00,5.00]
Total: 1338 W: 317 L: 279 D: 742
http://35.161.250.236:6543/tests/view/
5d8d16766e23db3768ec0861
Joost VandeVondele [Mon, 16 Sep 2019 05:51:25 +0000]
Remove custom mutex implementation
As part of the investigation of the hang caused by an incorrect implementation
of condition_variable in libwinpthread, it was realized that our custom Mutex
implementation is no longer needed. Prior to lazySMP this custom implementation
resulted in a 30% speedup, but now no speed difference can be measured as no
mutex is used on the hot path in lazySMP.
https://github.com/official-stockfish/Stockfish/issues/2291
https://github.com/official-stockfish/Stockfish/issues/2309#issuecomment-
533733393 https://github.com/official-stockfish/Stockfish/issues/2309#issuecomment-
533737515
The interest of this patch is that it removes platform-specific code, which is
always less tested.
No functional change.
Stéphane Nicolet [Thu, 26 Sep 2019 21:19:31 +0000]
Restore development version (revert previous commit)
Revert the previous patch now that the binary for the super-final
of TCEC season 16 has been sent.
Maybe the feature of showing the name of compiler will be added to the
master branch in the future. But we may use a cleaner way to code it, see
some ideas using the Makefile approach at the end of pull request #2327 :
https://github.com/official-stockfish/Stockfish/pull/2327
Bench: 3618154
Fabian Fichter [Thu, 19 Sep 2019 18:48:16 +0000]
Use shuffle extension only with N-move rule
makruk STC
LLR: 4.58 (-2.94,2.94) [-10.00,5.00]
Total: 3656 W: 314 L: 264 D: 3078
http://35.161.250.236:6543/tests/view/
5d83cf5e6e23db3768ec083c
makruk LTC
LLR: 2.95 (-2.94,2.94) [-10.00,5.00]
Total: 3645 W: 268 L: 238 D: 3139
http://35.161.250.236:6543/tests/view/
5d8a510d6e23db3768ec0854
Stéphane Nicolet [Tue, 24 Sep 2019 17:00:27 +0000]
Temporary patch to show the compiler for TCEC submission
This patch shows a description of the compiler used to compile Stockfish,
when starting from the console.
Usage:
```
./stockfish
compiler
```
Example of output:
```
Stockfish 240919 64 POPCNT by T. Romstad, M. Costalba, J. Kiiski, G. Linscott
Compiled by clang++ 9.0.0 on Apple
__VERSION__ macro expands to: 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.38)
```
No functional change
Stéphane Nicolet [Tue, 24 Sep 2019 10:41:45 +0000]
Increase weight for supported pawns
This patch changes the weight for counting supports of pawns
from 17 to 21. Hopefully Stockfish will accept to play a bit
more of closed or semi-closed positions.
STC:
LLR: 2.95 (-2.94,2.94) [0.00,4.00]
Total: 13822 W: 3158 L: 2939 D: 7725
http://tests.stockfishchess.org/tests/view/
5d89c3a10ebc595091802379
LTC:
LLR: 2.96 (-2.94,2.94) [0.00,4.00]
Total: 63066 W: 10590 L: 10236 D: 42240
http://tests.stockfishchess.org/tests/view/
5d89ca7f0ebc595091802680
Future work: try to tweak the evaluation to better understand
the French structures.
Closes https://github.com/official-stockfish/Stockfish/pull/2326
Bench: 3618154
nickpelling [Sat, 21 Sep 2019 07:59:32 +0000]
Clarify the mapping of files to queenside
This patch replaces the obscure expressions mapping files ABCDEFGH to
ABCDDCBA
by explicite calls to an auxiliary function:
old: f = min(f, ~f)
new: f = map_to_queenside(f)
We used the Golbolt web site (https://godbolt.org) to check that the current
code for the auxiliary function is optimal.
STC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 30292 W: 6756 L: 6651 D: 16885
http://tests.stockfishchess.org/tests/view/
5d8676720ebc5971531d6aa1
Achieved with a bit of help from Sopel97, snicolet and vondele, thanks everyone!
Closes https://github.com/official-stockfish/Stockfish/pull/2325
No functional change
xoto10 [Mon, 23 Sep 2019 07:24:13 +0000]
Encourage rook lift to third rank
This change to the Rook psqt encourages rook lifts to the third rank
on the two center files.
STC 10+0.1 th 1 :
LLR: 2.96 (-2.94,2.94) [0.00,4.00]
Total: 40654 W: 9028 L: 8704 D: 22922
http://tests.stockfishchess.org/tests/view/
5d885da60ebc5906dd3e9fcd
LTC 60+0.6 th 1 :
LLR: 2.96 (-2.94,2.94) [0.00,4.00]
Total: 56963 W: 9530 L: 9196 D: 38237
http://tests.stockfishchess.org/tests/view/
5d88618c0ebc5906dd3ea45f
Thanks to @snicolet for mentioning that Komodo does this a lot and
Stockfish doesn't, which gave me the idea for this patch, and to
@noobpwnftw for providing cores to fishtest which allowed very quick
testing.
Future work: perhaps this can be refined somehow to encourage this
on other files, my attempts have failed.
Closes https://github.com/official-stockfish/Stockfish/pull/2322
Bench: 3950249
Stéphane Nicolet [Mon, 23 Sep 2019 07:10:28 +0000]
Revert "Clarify the mapping of files to queenside"
This reverts commit
7756344d5d2b93970e7cd423f8cbf6fb1da11b74.
Stéphane Nicolet [Mon, 23 Sep 2019 06:52:27 +0000]
Clarify the mapping of files to queenside
Author: @nickpelling
We replace in the code the obscure expressions mapping files ABCDEFGH to
ABCDDCBA
by an explicite call to an auxiliary function :
old: f = min(f, ~f)
new: f = map_to_queenside(f)
We used the Golbolt web site (https://godbolt.org) to find the optimal code
for the auxiliary function.
STC:
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 30292 W: 6756 L: 6651 D: 16885
http://tests.stockfishchess.org/tests/view/
5d8676720ebc5971531d6aa1
No functional change
Joost VandeVondele [Fri, 20 Sep 2019 14:33:57 +0000]
More random draw evaluations
Use the randomized draw function value_draw() also for draw evalutions.
This extends the earlier commit
https://github.com/official-stockfish/Stockfish/commit/
97d2cc9a9c1c4b6ff1b470676fa18c7fc6509886
which did this only for 3folds.
As in that case, this test was yellow at STC and LTC, but green at VLTC,
indicative of the fact that the higher the drawrate, the more likely this
idea is beneficial.
STC:
LLR: -2.96 (-2.94,2.94) [0.50,4.50]
Total: 83573 W: 18584 L: 18335 D: 46654
http://tests.stockfishchess.org/tests/view/
5d84e44d0ebc5971531d4f94
LTC:
LLR: -2.96 (-2.94,2.94) [0.00,3.50]
Total: 92252 W: 15240 L: 15160 D: 61852
http://tests.stockfishchess.org/tests/view/
5d865dd90ebc5971531d68e1
VLTC: 120+1.2 @ 2th
LLR: 2.96 (-2.94,2.94) [0.00,3.50]
Total: 51902 W: 7323 L: 7028 D: 37551
http://tests.stockfishchess.org/tests/view/
5d8763620ebc595f57c22b15
Closes https://github.com/official-stockfish/Stockfish/pull/2321
Bench: 3441237
protonspring [Mon, 23 Sep 2019 01:48:52 +0000]
Simplify connected pawn scoring
When scoring the connected pawns, replace the intricate ternary expressions
choosing the coefficient by a simpler addition of boolean conditions:
` value = Connected * (2 + phalanx - opposed) `
This is the map showing the old coefficients and the new ones:
```
phalanx and unopposed: 3x -> 3x
phalanx and opposed: 1.5x -> 2x
not phalanx and unopposed: 2x -> 2x
not phalanx and opposed: 1x -> 1x
```
STC
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 11354 W: 2579 L: 2437 D: 6338
http://tests.stockfishchess.org/tests/view/
5d8151f00ebc5971531d244f
LTC
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 41221 W: 7001 L: 6913 D: 27307
http://tests.stockfishchess.org/tests/view/
5d818f930ebc5971531d26d6
Bench: 3959889
blah
Joost VandeVondele [Sun, 22 Sep 2019 14:56:36 +0000]
Acknowledge fishtest authors
Explicitly acknowledge fishtest authors.
Their efforts are almost invisible, but essential for the project.
Many thanks to https://github.com/glinscott/fishtest/blob/master/AUTHORS !
No functional change.
Fabian Fichter [Wed, 18 Sep 2019 19:55:14 +0000]
Skip updating history of reverse move for drops
crazyhouse STC
LLR: 2.95 (-2.94,2.94) [-10.00,5.00]
Total: 3523 W: 1731 L: 1690 D: 102
http://35.161.250.236:6543/tests/view/
5d83cf716e23db3768ec083e
Fabian Fichter [Fri, 20 Sep 2019 15:59:44 +0000]
Fix pos_is_ok for castling with non-king piece
No functional change.
Fabian Fichter [Fri, 20 Sep 2019 14:26:47 +0000]
Support peasant revolt
Fabian Fichter [Thu, 19 Sep 2019 19:58:13 +0000]
List variant configuration options in INI (#30)
Fabian Fichter [Sun, 1 Sep 2019 18:50:36 +0000]
Filter invalid moves early
No functional change.
Fabian Fichter [Thu, 19 Sep 2019 13:02:00 +0000]
Update readme
Fabian Fichter [Tue, 17 Sep 2019 19:09:21 +0000]
Revert "Fix #29: Increase stack limit for mingw"
This reverts commit
9085d6831bf9cabc8f1ff6edc15b9ba0b0c2f6b4.
No longer required due to fix merged from upstream.
Fabian Fichter [Mon, 16 Sep 2019 19:55:09 +0000]
Merge official-stockfish/master
bench: 3815926
noobpwnftw [Sat, 14 Sep 2019 16:18:10 +0000]
Raise stack size to 8MB for pthreads
It seems there is no other way to specify stack size on std::thread than linker
flags and the effective flags are named differently in many toolchains. On
toolchains where pthread is always available, this patch changes the stack
size change in our C++ code via pthread to ensure a minimum stack size of 8MB,
instead of relying on linker defaults which may be platform-specific.
Also raises default stack size on OSX to current Linux default (8MB) just to
be safe.
Closes https://github.com/official-stockfish/Stockfish/pull/2303
No functional change
Stéphane Nicolet [Sun, 15 Sep 2019 21:18:54 +0000]
Scale down endgame factor when shuffling
This patch decreases the endgame scale factor using the 50 moves counter.
Looking at some games with this patch, it seems to have two effects on
the playing style:
1) when no progress can be made in late endgames (for instance in fortresses
or opposite bishops endgames) the evaluation will be largely tamed down
towards a draw value.
2) more interestingly, there is also a small effect in the midgame play because
Stockfish will panic a little bit if there are more than four consecutive
shuffling moves with an advantage: the engine will try to move a pawn or to
exchange a piece to keep the advantage, so the follow-ups of the position
will be discovered earlier by the alpha-beta search.
passed STC:
LLR: 2.95 (-2.94,2.94) [0.50,4.50]
Total: 23017 W: 5080 L: 4805 D: 13132
http://tests.stockfishchess.org/tests/view/
5d7e4aef0ebc59069c36fc74
passed LTC:
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 30746 W: 5171 L: 4911 D: 20664
http://tests.stockfishchess.org/tests/view/
5d7e513d0ebc59069c36ff26
Pull request: https://github.com/official-stockfish/Stockfish/pull/2304
Bench: 4272173
Vizvezdenec [Sat, 14 Sep 2019 22:32:39 +0000]
Introduce midgame initiative
This patch finally introduces something that was tried for years: midgame score
dependance on complexity of position. More precisely, if the position is very
simplified and the complexity measure calculated in the initiative() function
is inferior to -50 by an amount d, then we add this value d to the midgame score.
One example of play of this patch will be (again!) 4 vs 3 etc same flank endgames
where sides have a lot of non-pawn material: 4 vs 3 draw mostly remains the same
draw even if we add a lot of equal material to both sides.
STC run was stopped after 200k games (and not converging):
LLR: -1.75 (-2.94,2.94) [0.50,4.50]
Total: 200319 W: 44197 L: 43310 D: 112812
http://tests.stockfishchess.org/tests/view/
5d7cfdb10ebc5902d386572c
passed LTC:
LLR: 2.95 (-2.94,2.94) [0.00,3.50]
Total: 41051 W: 6858 L: 6570 D: 27623
http://tests.stockfishchess.org/tests/view/
5d7d14680ebc5902d3866196
This is the first and not really precise version, a lot of other stuff can be
tried on top of it (separate complexity for middlegame, some more terms, even
simple retuning of values).
Bench: 4248476
Stéphane Nicolet [Sat, 14 Sep 2019 06:33:00 +0000]
Assorted trivial cleanups
No functional change
31m059 [Fri, 13 Sep 2019 19:46:05 +0000]
Use queens of either color in RookOnQueenFile
The recently-added RookOnQueenFile evaluation term (36e4a86) provided a bonus
for placing our rook on the same file as an enemy queen.
Here, we relax a condition in this bonus, broadening its effect to any queen.
It is also strategically desirable to place the rook on the same file as a friendly
queen, so the restriction on the queen's color is removed.
STC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 66856 W: 14847 L: 14815 D: 37194
http://tests.stockfishchess.org/tests/view/
5d7b3c6a0ebc5902d385bcf5
LTC:
LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
Total: 86786 W: 14264 L: 14248 D: 58274
http://tests.stockfishchess.org/tests/view/
5d7b4e9b0ebc5902d385c178
Closes https://github.com/official-stockfish/Stockfish/pull/2302
Bench: 3703909
Stéphane Nicolet [Sat, 14 Sep 2019 05:33:48 +0000]
Update Makefile documentation
Follow-up to previous commit. Update the documentation for the user when using `make`,
to show the preferred bmi2 compile in the advanced examples section.
Note: I made a mistake in the previous commit comment, the documentation is shown when
using `make` or `make help`, not `make --help`.
No functional change