Fortress Detection and Evaluation

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

corres
Posts: 3657
Joined: Wed Nov 18, 2015 11:41 am
Location: hungary

Re: Fortress Detection and Evaluation

Post by corres »

zullil wrote: Fri Aug 23, 2019 11:49 pm As for your first question, almost no A/B engines have code to correctly evaluate fortress draws as 0.00. My sense is that there is little to no interest in creating and including such code. Certainly Stockfish/Cfish has no such code. Sting, which is based on a very old version of Stockfish, might be worth a look.
I, for one, would be interested in seeing the position(s) in question.
Codes for evaluating fortresses would slow down and would weaken an AB engines. Moreover the probability of fortress is low and because of this the Elo of that engine would decrease. I think there is no such a code what can help to find every type of fortresses.
At least there is a problem what forces to think the correspondence chess players...
User avatar
hgm
Posts: 27796
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Fortress Detection and Evaluation

Post by hgm »

Engines are kept free of fortress-detection code based on the argument that this does not produce any Elo. (Which, IMO, shows that the Elo measure does say pitifully little about Chess capabilities...)

It isn't very hard to add evauation code capable of detecting some types of fortresses, with an easily tested condition for invoking it, so that it causes virtually undetectable slowdown during most of the game.
lech
Posts: 1136
Joined: Sun Feb 14, 2010 10:02 pm

Re: Fortress Detection and Evaluation

Post by lech »

Stephen Ham wrote: Fri Aug 23, 2019 10:58 pm ---
But my primary question is whether any progress is being made with AB engine coding to detect and correctly evaluate fortresses without such measures. My second question is: can NN engines detect and correctly evaluate fortress positions upon reaching them?
---
"Zero" doesn't mean "draw". It means only that a position seems to be equal.
A position can be equal, if there is no gain too.
Alpha-beta searching "always" returns a static evoluation of the end of pv-line. The "rule-50" makes that searching is not able go to "ZERO" quickly, in a honest way (growing reversal pyramid).
But the main goal of searching is to get the best move or moves (pv-line).
If you want to get a result (mate or draw) stop searching ans start auto-playing - a natural and logical extension (continuation) of searching.
Maybe, I can't be friendly, but let me be useful.
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: Fortress Detection and Evaluation

Post by zullil »

Stephen Ham wrote: Sat Aug 24, 2019 5:03 am Hello All,

Here's one of several fortress positions I've encountered in a present ICCF game - this is a potential future position, quite remote from the actual game:
[d]8/1b1q1pk1/1R2p2p/4P1p1/8/4Q3/5PP1/6K1 b - - 0 42

What say you?

All the best,
-Steve-
Lc0 (network 320x24.J13-swa-410000) with 100M nodes gives

info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -35 hashfull 66 nps 64297 tbhits 255752 multipv 1 pv d7d1 g1h2 d1h5 e3h3 h5h3 h2h3 b7d5 b6b8 f7f6 e5f6 g7f6 h3g3 d5e4 f2f3 e4f5 g3f2 h6h5 g2g3 f5g6 f2e3 g6f7 e3d4 f7g6 b8f8 f6g7 f8a8 g7f6 a8h8

Full log info follows:

Code: Select all

0824 06:47:37.535917 139993689208576 ../../src/mcts/search.cc:384] Stopped search: Reached visits limit: 100000211>=100000000
0824 06:47:37.537353 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -35 hashfull 66 nps 64297 tbhits 255752 multipv 1 pv d7d1 g1h2 d1h5 e3h3 h5h3 h2h3 b7d5 b6b8 f7f6 e5f6 g7f6 h3g3 d5e4 f2f3 e4f5 g3f2 h6h5 g2g3 f5g6 f2e3 g6f7 e3d4 f7g6 b8f8 f6g7 f8a8 g7f6 a8h8
0824 06:47:37.537404 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -48 hashfull 66 nps 64297 tbhits 255752 multipv 2 pv b7d5 b6b4 d7c7 b4g4 c7c2 g1h2 c2f5 e3g3 g7g6 g4b4 f5c2 g3e3 g6g7 b4d4 c2f5 f2f3 f5c2
0824 06:47:37.537417 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -51 hashfull 66 nps 64297 tbhits 255752 multipv 3 pv d7d5 f2f3 d5d1 g1h2 b7d5 e3c3 d1e2 b6b4 e2f2 b4g4 f2e2 g4g3 g7g6 f3f4 e2h5 h2g1 h5d1 g1f2 d1a4 f4g5 h6g5 c3d3 d5e4 d3d8
0824 06:47:37.537428 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -51 hashfull 66 nps 64297 tbhits 255752 multipv 4 pv d7c7 b6b2 b7e4 b2b4 e4d5 b4g4 c7c2 g1h2 g7g6 g4b4 g6g7 f2f3 c2c7 b4g4 c7c2 g4d4 c2f5 h2g3
0824 06:47:37.537437 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -51 hashfull 66 nps 64297 tbhits 255752 multipv 5 pv b7a8 b6b4 d7d1 g1h2 a8d5 f2f3 d1c2 h2g3 c2c7 g3h3 c7c2 h3g3 c2c7 b4a4 c7c2 a4d4 c2c7 d4d1 c7c2
0824 06:47:37.537446 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -54 hashfull 66 nps 64297 tbhits 255752 multipv 6 pv b7c6 g1h2 d7d5 f2f3 d5c4 b6b1 c6d5 b1d1 c4h4 h2g1 h4g3 d1d4 h6h5 d4b4 g7g6 b4b8 g6g7 b8c8
0824 06:47:37.537454 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -56 hashfull 66 nps 64297 tbhits 255752 multipv 7 pv d7c8 b6b4 b7d5 e3d2 c8a8 f2f4 a8a2 d2a2 d5a2 g1f2 a2d5 g2g3 g7g6 f2e3 g6f5 b4b8 f5g4
0824 06:47:37.537474 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -66 hashfull 66 nps 64297 tbhits 255752 multipv 8 pv g7g6 g1h2 b7d5 e3d3 g6g7 b6b4 d7c7 d3g3 c7c2 f2f4 c2d2 b4a4 g7g6 f4g5 h6g5 a4g4
0824 06:47:37.537483 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -73 hashfull 66 nps 64297 tbhits 255752 multipv 9 pv d7e7 g1h2 b7d5 b6b2 e7c7 f2f4 c7c4 b2f2 c4e4 e3g3 e4g6 f4g5 h6g5 g3g4 d5e4 f2f6 g6h7 h2g1 h7h4
0824 06:47:37.537491 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -73 hashfull 66 nps 64297 tbhits 255752 multipv 10 pv g7h7 b6b1 b7a8 b1a1 a8b7 a1a7 d7b5 e3d4 h7g7 g1h2 b7d5 f2f3 b5b1 a7c7
0824 06:47:37.537500 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -91 hashfull 66 nps 64297 tbhits 255752 multipv 11 pv g7g8 g1h2 d7c7 b6b2 b7d5 f2f4 f7f6 e3g3 g8f7 b2f2 f6f5 f4g5 h6g5 g3g5 c7e5 f2f4 f7e8 g5g3 e8d7 f4h4
0824 06:47:37.537508 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -111 hashfull 66 nps 64297 tbhits 255752 multipv 12 pv g7h8 g1h2 h8h7 b6b4 h7g7 f2f4 d7e7 e3d2 b7d5 f4g5 e7g5 d2e2 h6h5 b4d4 g7g6
0824 06:47:37.537517 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -158 hashfull 66 nps 64297 tbhits 255752 multipv 13 pv g7f8 e3b3 b7d5 b6b8 f8g7 b3a3 d7c7 a3f8 g7g6 f8g8 g6f5 b8b1 f5e5 g8g7 e5f5 g7h7 f5e5 h7h6 e5f5 h6h7 f5f6 h7h8 f6g6
0824 06:47:37.537525 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -233 hashfull 66 nps 64297 tbhits 255752 multipv 14 pv b7c8 e3f3 g7h7 b6b3 c8a6 g1h2 d7e7 b3b6 a6c8 f3c6 e7d8 b6b8 d8d4 c6c2 h7g7 b8c8
0824 06:47:37.537533 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -514 hashfull 66 nps 64297 tbhits 255752 multipv 15 pv d7a4 b6b7 a4d1 g1h2 d1h5 e3h3 h5e2 h3f3 e2e5 g2g3 e5f6 f3f6 g7f6 b7b8 f6g7
0824 06:47:37.537541 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -572 hashfull 66 nps 64297 tbhits 255752 multipv 16 pv b7g2 g1g2 d7d5 g2h2 d5c4 e3f3 c4h4 h2g2 h4d4 b6b7
0824 06:47:37.537550 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -518 hashfull 66 nps 64297 tbhits 255752 multipv 17 pv b7e4 e3e4 d7d1 g1h2 d1h5 h2g3 f7f5 e5f6 g7f7 e4e6 f7g6 f6f7 g6g7
0824 06:47:37.537558 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -471 hashfull 66 nps 64297 tbhits 255752 multipv 18 pv d7d8 b6b7 d8d1 g1h2 d1h5 e3h3 h5e2 h3f3 e2e5 g2g3 e5f6 f3f6 g7f6 b7b8
0824 06:47:37.537566 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -700 hashfull 66 nps 64297 tbhits 255752 multipv 19 pv d7c6 b6c6 b7c6 f2f4 g5f4 e3f4 c6e8 f4f6 g7h7 g1f2
0824 06:47:37.537574 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -515 hashfull 66 nps 64297 tbhits 255752 multipv 20 pv d7e8 b6b7 e8a4 b7b1 a4e8 e3f3 g7h7 b1b7 h7g6
0824 06:47:37.537582 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -506 hashfull 66 nps 64297 tbhits 255752 multipv 21 pv b7a6 b6a6 d7d1 g1h2 d1h5 e3h3 h5e2 a6a3 e2f2 h3g3 f2d4 a3d3 d4e4
0824 06:47:37.537590 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -269 hashfull 66 nps 64297 tbhits 255752 multipv 22 pv f7f5 e5f6 g7f6 e3h3 d7d1 g1h2 d1d5 h3h6 f6f7 h6h7 f7f6 b6b7 d5e5 g2g3
0824 06:47:37.537598 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -260 hashfull 66 nps 64297 tbhits 255752 multipv 23 pv f7f6 e5f6 g7f6 e3h3 d7d1 g1h2 d1d5 h3h6 f6f7 h6h7 f7f6 b6b7 d5e5 g2g3
0824 06:47:37.537609 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -1114 hashfull 66 nps 64297 tbhits 255752 multipv 24 pv b7f3 e3f3 g7f8 b6b8 f8g7 f3f6 g7h7 b8h8
0824 06:47:37.537622 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -337 hashfull 66 nps 64297 tbhits 255752 multipv 25 pv g5g4 e3f4 d7d5 f4g4 g7h7 b6b4 d5e5 b4b7 e5e1 g1h2 e1e5 g2g3 e5b8 b7f7 h7h8
0824 06:47:37.537630 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -1113 hashfull 66 nps 64297 tbhits 255752 multipv 26 pv d7d6 e5d6 b7g2 g1g2 g5g4 f2f3 h6h5 f3f4 e6e5
0824 06:47:37.537639 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -714 hashfull 66 nps 64297 tbhits 255752 multipv 27 pv d7b5 b6b5 b7c6 b5b6 c6d5 g1f1 d5g2 f1g2 g7g6
0824 06:47:37.537648 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -583 hashfull 66 nps 64297 tbhits 255752 multipv 28 pv h6h5 e3g5 g7f8 b6d6 b7g2 d6d7 g2d5 d7d8
0824 06:47:37.537661 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -782 hashfull 66 nps 64297 tbhits 255752 multipv 29 pv d7d3 e3d3 b7g2 g1g2 h6h5 f2f3 g5g4 f3f4 h5h4
0824 06:47:37.537669 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -942 hashfull 66 nps 64297 tbhits 255752 multipv 30 pv d7d2 e3d2 g5g4 b6b7 g7g6 b7b8 g6h5 b8a8 h5g6
0824 06:47:37.537678 139993689208576 ../../src/chess/uciloop.cc:218] << info depth 20 seldepth 45 time 1555272 nodes 100000211 score cp -700 hashfull 66 nps 64297 tbhits 255752 multipv 31 pv d7d4 e3d4 b7g2 g1g2 g7f8 f2f3 f8g7 f3f4 g5f4
0824 06:47:37.537827 139993689208576 ../../src/chess/uciloop.cc:218] << info string d7d4  (297 ) N:    1935 (+ 0) (P:  0.82%) (Q: -0.96501) (D:  0.019) (U: 0.84543) (Q+U: -0.11958) (V: -0.9021) 
0824 06:47:37.537842 139993689208576 ../../src/chess/uciloop.cc:218] << info string d7d2  (301 ) N:    2068 (+ 0) (P:  0.88%) (Q: -0.97592) (D:  0.017) (U: 0.85654) (Q+U: -0.11938) (V: -0.9661) 
0824 06:47:37.537850 139993689208576 ../../src/chess/uciloop.cc:218] << info string d7d3  (299 ) N:    2097 (+ 0) (P:  0.89%) (Q: -0.96963) (D:  0.020) (U: 0.85018) (Q+U: -0.11946) (V: -0.9205) 
0824 06:47:37.537858 139993689208576 ../../src/chess/uciloop.cc:218] << info string h6h5  (642 ) N:    2116 (+ 0) (P:  0.88%) (Q: -0.95553) (D:  0.038) (U: 0.83604) (Q+U: -0.11949) (V: -0.9929) 
0824 06:47:37.537866 139993689208576 ../../src/chess/uciloop.cc:218] << info string d7b5  (291 ) N:    2168 (+ 0) (P:  0.92%) (Q: -0.96590) (D:  0.029) (U: 0.84634) (Q+U: -0.11956) (V: -0.9693) 
0824 06:47:37.537874 139993689208576 ../../src/chess/uciloop.cc:218] << info string d7d6  (288 ) N:    2254 (+ 0) (P:  0.97%) (Q: -0.98039) (D:  0.013) (U: 0.86089) (Q+U: -0.11950) (V: -0.9990) 
0824 06:47:37.537882 139993689208576 ../../src/chess/uciloop.cc:218] << info string g5g4  (861 ) N:    2497 (+ 0) (P:  0.97%) (Q: -0.89788) (D:  0.089) (U: 0.77837) (Q+U: -0.11951) (V: -0.8963) 
0824 06:47:37.537890 139993689208576 ../../src/chess/uciloop.cc:218] << info string b7f3  (240 ) N:    2551 (+ 0) (P:  1.10%) (Q: -0.98041) (D:  0.016) (U: 0.86084) (Q+U: -0.11957) (V: -0.9904) 
0824 06:47:37.537898 139993689208576 ../../src/chess/uciloop.cc:218] << info string f7f6  (346 ) N:    2702 (+ 0) (P:  0.95%) (Q: -0.82409) (D:  0.163) (U: 0.70461) (Q+U: -0.11948) (V: -0.8951) 
0824 06:47:37.537906 139993689208576 ../../src/chess/uciloop.cc:218] << info string f7f5  (351 ) N:    2715 (+ 0) (P:  0.97%) (Q: -0.83763) (D:  0.146) (U: 0.71814) (Q+U: -0.11949) (V: -0.7828) 
0824 06:47:37.537914 139993689208576 ../../src/chess/uciloop.cc:218] << info string b7a6  (229 ) N:    2795 (+ 0) (P:  1.15%) (Q: -0.94595) (D:  0.047) (U: 0.82650) (Q+U: -0.11945) (V: -0.8310) 
0824 06:47:37.537927 139993689208576 ../../src/chess/uciloop.cc:218] << info string d7e8  (277 ) N:    2824 (+ 0) (P:  1.17%) (Q: -0.94735) (D:  0.048) (U: 0.82776) (Q+U: -0.11959) (V: -0.4571) 
0824 06:47:37.537936 139993689208576 ../../src/chess/uciloop.cc:218] << info string d7c6  (287 ) N:    3032 (+ 0) (P:  1.28%) (Q: -0.96503) (D:  0.019) (U: 0.84567) (Q+U: -0.11936) (V: -0.6246) 
0824 06:47:37.537948 139993689208576 ../../src/chess/uciloop.cc:218] << info string d7d8  (276 ) N:    3643 (+ 0) (P:  1.49%) (Q: -0.94024) (D:  0.046) (U: 0.82084) (Q+U: -0.11940) (V: -0.3858) 
0824 06:47:37.537957 139993689208576 ../../src/chess/uciloop.cc:218] << info string b7e4  (238 ) N:    3659 (+ 0) (P:  1.51%) (Q: -0.94775) (D:  0.043) (U: 0.82833) (Q+U: -0.11941) (V: -0.4269) 
0824 06:47:37.537965 139993689208576 ../../src/chess/uciloop.cc:218] << info string b7g2  (242 ) N:    4655 (+ 0) (P:  1.94%) (Q: -0.95437) (D:  0.025) (U: 0.83488) (Q+U: -0.11950) (V: -0.3403) 
0824 06:47:37.537973 139993689208576 ../../src/chess/uciloop.cc:218] << info string d7a4  (296 ) N:    6232 (+ 0) (P:  2.57%) (Q: -0.94710) (D:  0.042) (U: 0.82768) (Q+U: -0.11942) (V: -0.2421) 
0824 06:47:37.537981 139993689208576 ../../src/chess/uciloop.cc:218] << info string b7c8  (220 ) N:    7260 (+ 0) (P:  2.36%) (Q: -0.77129) (D:  0.210) (U: 0.65191) (Q+U: -0.11938) (V: -0.6622) 
0824 06:47:37.537989 139993689208576 ../../src/chess/uciloop.cc:218] << info string g7f8  (362 ) N:    7332 (+ 0) (P:  1.53%) (Q: -0.53687) (D:  0.408) (U: 0.41750) (Q+U: -0.11937) (V: -0.6431) 
0824 06:47:37.537997 139993689208576 ../../src/chess/uciloop.cc:218] << info string g7h8  (364 ) N:   11534 (+ 0) (P:  1.49%) (Q: -0.37772) (D:  0.567) (U: 0.25838) (Q+U: -0.11934) (V: -0.6042) 
0824 06:47:37.538005 139993689208576 ../../src/chess/uciloop.cc:218] << info string g7g8  (363 ) N:   18654 (+ 0) (P:  1.77%) (Q: -0.30949) (D:  0.624) (U: 0.19016) (Q+U: -0.11933) (V: -0.5015) 
0824 06:47:37.538013 139993689208576 ../../src/chess/uciloop.cc:218] << info string g7h7  (371 ) N:   29858 (+ 0) (P:  1.94%) (Q: -0.24994) (D:  0.680) (U: 0.13059) (Q+U: -0.11934) (V: -0.4261) 
0824 06:47:37.538021 139993689208576 ../../src/chess/uciloop.cc:218] << info string d7e7  (282 ) N:   39559 (+ 0) (P:  2.56%) (Q: -0.24927) (D:  0.682) (U: 0.12994) (Q+U: -0.11932) (V: -0.2739) 
0824 06:47:37.538030 139993689208576 ../../src/chess/uciloop.cc:218] << info string g7g6  (374 ) N:   43028 (+ 0) (P:  2.29%) (Q: -0.22606) (D:  0.696) (U: 0.10673) (Q+U: -0.11932) (V: -0.3298) 
0824 06:47:37.538039 139993689208576 ../../src/chess/uciloop.cc:218] << info string d7c8  (275 ) N:   95827 (+ 0) (P:  3.41%) (Q: -0.19080) (D:  0.725) (U: 0.07148) (Q+U: -0.11932) (V: -0.2713) 
0824 06:47:37.538047 139993689208576 ../../src/chess/uciloop.cc:218] << info string b7c6  (231 ) N:  198564 (+ 0) (P:  6.42%) (Q: -0.18421) (D:  0.728) (U: 0.06489) (Q+U: -0.11932) (V: -0.3228) 
0824 06:47:37.538056 139993689208576 ../../src/chess/uciloop.cc:218] << info string b7a8  (218 ) N:  202084 (+ 0) (P:  5.66%) (Q: -0.17552) (D:  0.734) (U: 0.05621) (Q+U: -0.11932) (V: -0.3074) 
0824 06:47:37.538064 139993689208576 ../../src/chess/uciloop.cc:218] << info string d7c7  (281 ) N:  319983 (+ 0) (P:  8.60%) (Q: -0.17321) (D:  0.731) (U: 0.05389) (Q+U: -0.11932) (V: -0.2690) 
0824 06:47:37.538072 139993689208576 ../../src/chess/uciloop.cc:218] << info string d7d5  (293 ) N:  495949 (+ 0) (P: 13.98%) (Q: -0.17587) (D:  0.728) (U: 0.05656) (Q+U: -0.11932) (V: -0.2518) 
0824 06:47:37.538080 139993689208576 ../../src/chess/uciloop.cc:218] << info string b7d5  (236 ) N:  538174 (+ 0) (P: 11.90%) (Q: -0.16369) (D:  0.735) (U: 0.04437) (Q+U: -0.11932) (V: -0.2746) 
0824 06:47:37.538088 139993689208576 ../../src/chess/uciloop.cc:218] << info string d7d1  (302 ) N: 97942461 (+ 6) (P: 15.63%) (Q: -0.11964) (D:  0.793) (U: 0.00032) (Q+U: -0.11932) (V: -0.1143) 
0824 06:47:37.538098 139993689208576 ../../src/mcts/search.cc:294] --- Opponent moves after: d7d1
0824 06:47:37.538118 139993689208576 ../../src/mcts/search.cc:299] e3e1  (534 ) N:   17093 (+ 0) (P:  9.56%) (Q: -0.98586) (D:  0.005) (U: 1.10768) (Q+U:  0.12182) (V: -0.9037) 
0824 06:47:37.538124 139993689208576 ../../src/mcts/search.cc:299] g1h2  (157 ) N: 97925367 (+ 6) (P: 90.43%) (Q:  0.12003) (D:  0.793) (U: 0.00183) (Q+U:  0.12186) (V:  0.0623) 
0824 06:47:37.538132 139993689208576 ../../src/chess/uciloop.cc:218] << bestmove d7d1 ponder g1h2
0824 06:47:37.538170 139993697601280 ../../src/mcts/search.cc:700] End a watchdog thread.
mwyoung
Posts: 2727
Joined: Wed May 12, 2010 10:00 pm

Re: Fortress Detection and Evaluation

Post by mwyoung »

Stephen Ham wrote: Sat Aug 24, 2019 6:06 am Hello again,

My initial post mentioned multiple fortress draws, all from positions in an ongoing ICCF game. That said, here's another position that's remote from the present game position:
[d]8/5p2/R3bk1p/8/5K2/1p4P1/6P1/8 w - - 0 49

I don't recall what Cfish's evaluation was after a 70 ply search, other than it was a very large White advantage. However, I'd guess that most humans can immediately see that this is a fortress draw.

I only have 5-man Tablebases, but an online 6-man Tablebase can hold this equivalent position, and confirm the draw.
[d]8/5p2/R3bk2/8/5K2/1p6/8/8 w - - 0 1

Sincerely,
-Steve-
[d]8/5p2/R3bk1p/8/5K2/1p4P1/6P1/8 w - - 0 49

Strange both Stockfish and Lc0 see instantly this position is going no where. Not sure why Cfish's evaluation would be so wrong.


New game Line
8/5p2/R3bk1p/8/5K2/1p4P1/6P1/8 w - - 0 1

Analysis by Stockfish 230819 64 POPCNT:

1.Rb6 h5 2.Rb5 Kg6 3.Rg5+ Kh6 4.Rc5 Kg6 5.Rb5 Bc4 6.Rb6+ f6 7.Ke4 Bf1 8.Kf3 Bc4
The position is equal: = (0.00) Depth: 46/34 00:00:04 153MN, tb=2388027
(, 24.08.2019)

Lc0 v0.22.0 Line, Blitz 5m+5s
8/5p2/R3bk1p/8/5K2/1p4P1/6P1/8 w - - 0 1

Analysis by Lc0 v0.22.0:

1.Rb6 Kg7 2.Ke5 Kg6 3.Rb8 Kg7 4.Rb4 Kg6 5.Kf4 Kg7 6.g4 Kf6 7.Rb5
The position is equal: = (0.08) Depth: 8/20 00:00:08 546kN, tb=715
(, 24.08.2019)

New game Line
8/5p2/R3bk1p/8/5K2/1p4P1/6P1/8 w - - 0 1

Analysis by Stockfish 230819 64 POPCNT:

1.Rb6 h5 2.Rb5 Bc4 3.Rb8 Bd5 4.g4 Bxg2 5.g5+ Kg6 6.Rb6+ f6 7.Rxf6+ Kg7 8.Rb6 h4 9.Rb8 h3 10.Kg3 Kf7 11.Rb4 Bd5 12.Kxh3
The position is equal: = (0.00) Depth: 91/24 00:01:01 2766MN, tb=33441368
(, 24.08.2019)

New game Line
8/5p2/R3bk1p/8/5K2/1p4P1/6P1/8 w - - 0 1

Analysis by Lc0 v0.22.0:

1.Rb6 Kg6 2.Ke5 Kg5 3.Rb8 Kg6 4.Rg8+ Kh7 5.Rb8 Kg6 6.Rg8+ Kh7 7.Rb8 Kg6
The position is equal: = (0.09) Depth: 11/25 00:01:20 6961kN, tb=15737
(, 24.08.2019)
"The worst thing that can happen to a forum is a running wild attacking moderator(HGM) who is not corrected by the community." - Ed Schröder
But my words like silent raindrops fell. And echoed in the wells of silence.
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: Fortress Detection and Evaluation

Post by zullil »

mwyoung wrote: Sat Aug 24, 2019 4:56 pm
Stephen Ham wrote: Sat Aug 24, 2019 6:06 am Hello again,

My initial post mentioned multiple fortress draws, all from positions in an ongoing ICCF game. That said, here's another position that's remote from the present game position:
[d]8/5p2/R3bk1p/8/5K2/1p4P1/6P1/8 w - - 0 49

I don't recall what Cfish's evaluation was after a 70 ply search, other than it was a very large White advantage. However, I'd guess that most humans can immediately see that this is a fortress draw.

I only have 5-man Tablebases,...
Sincerely,
-Steve-
[d]8/5p2/R3bk1p/8/5K2/1p4P1/6P1/8 w - - 0 49

Strange both Stockfish and Lc0 see instantly this position is going nowhere. Not sure why Cfish's evaluation would be so wrong.


New game Line
8/5p2/R3bk1p/8/5K2/1p4P1/6P1/8 w - - 0 1

Analysis by Stockfish 230819 64 POPCNT:

1.Rb6 h5 2.Rb5 Kg6 3.Rg5+ Kh6 4.Rc5 Kg6 5.Rb5 Bc4 6.Rb6+ f6 7.Ke4 Bf1 8.Kf3 Bc4
The position is equal: = (0.00) Depth: 46/34 00:00:04 153MN, tb=2388027
(, 24.08.2019)
The effect of tablebases, rather than Stockfish vs. Cfish? Stephen is using 5-man only.

Stockfish-dev with no tables:

info depth 60 seldepth 83 multipv 1 score cp 87 nodes 809131762 nps 35566231 hashfull 123 tbhits 0 time 22750 pv a6b6 f6g6 b6d6 g6h7 d6d4 h7g6 f4e3 e6f5 d4b4 f5e6 e3d2 g6g5 d2c3 g5g6 b4f4 e6d5 f4d4 d5e6 d4b4 e6d5 b4b5 d5e6 b5c5 g6f6 c5a5 f6g6 c3b2 g6f6 a5h5 f6g6 h5e5 g6g7 b2c3 g7f6 e5c5 f6g6 c3d4 e6f5 c5b5 f5e6 g3g4 g6f6 g2g3 f6g6 d4c3 g6f6 c3d3 f6g6 d3d4 g6f6 d4e3 f6g6 e3f4 e6c4 b5b8 c4e6 b8b6 g6g7 b6b5 g7g6 g4g5 h6g5 b5g5 g6h6 g5b5

Stockfish-dev with 6-man tables:

info depth 50 seldepth 26 multipv 1 score cp 0 nodes 261925370 nps 5237774 hashfull 52 tbhits 4284708 time 50007 pv a6b6 h6h5 b6a6 f6g7 a6d6 g7g6 d6d8 g6f6 d8d4 f6g6

Stockfish-dev with 5-man tables:

info depth 70 seldepth 105 multipv 1 score cp 79 nodes 4110046144 nps 36838273 hashfull 392 tbhits 20213674 time 111570 pv a6a5 f6g6 a5b5 g6f6 b5b6 f6g6 g3g4 g6f6 b6b5 f6g6 b5b4 e6d5 b4b6 g6g7 g2g3 d5c4 f4e3 c4e6 b6b5 g7f6 e3d4 f6g6 d4e4 g6f6 b5b8 f6g5 b8g8 g5f6 e4d4 e6d7 d4e3 d7e6 e3e4 e6c4 e4f4 c4e6 g8b8 f6g7 b8b7 g7f6 b7b6 f6e7 f4e5 e7d7 b6b4 d7c6 e5d4 c6d6 d4c3 d6c5 b4a4 c5d6 a4f4 d6e7 f4f1 e7d6 f1f2 d6e5 c3d2 e5d6 f2f4 d6c5 d2c1 c5d6 c1b2 d6c5 f4f6 c5c4 f6h6 e6g4 h6f6 g4e6 f6f3 c4d4 f3f1 d4d3