Closed robertnurnberg closed 6 months ago
This PR uses the local engine to complete a possibly short PV.
Examples:
> pypy3 matetb.py --epd "8/8/8/8/NK6/1B1N4/2rpn1pp/2bk1brq w - -" --engine ./stockfish Running with options --epd "8/8/8/8/NK6/1B1N4/2rpn1pp/2bk1brq w - -" --excludeSANs "Nb6 Nb5 Nc4" --excludeFrom "a4 b3 d3" --excludeAllowingCapture --engine ./stockfish --limitDepth 2 --analyseAll Restrict moves for WHITE side. Create the allowed part of the game tree ... Found 4437 positions in 9.16s Connect child nodes ... Connected 4437 positions in 0.58s Generate tablebase ... Tablebase generated with 6 iterations in 0.01s Matetrack: 8/8/8/8/NK6/1B1N4/2rpn1pp/2bk1brq w - - bm #7; PV: b4a5 c1a3 a5a6 a3c1 a6b6 c1a3 b6a5 a3c1 a5b4 c1a3 b4a3 e2f4 ; PV is short; Lengthening PV ... Matetrack with complete PV: 8/8/8/8/NK6/1B1N4/2rpn1pp/2bk1brq w - - bm #7; PV: b4a5 c1a3 a5a6 a3c1 a6b6 c1a3 b6a5 a3c1 a5b4 c1a3 b4a3 e2f4 a4c3;
> pypy3 matetb.py --epd "8/7p/8/8/NK6/1B1N4/2rpn1pp/2bk1brq w - -" --engine ./stockfish Running with options --epd "8/7p/8/8/NK6/1B1N4/2rpn1pp/2bk1brq w - -" --excludeSANs "Nb6 Nb5 Nc4" --excludeFrom "a4 b3 d3" --excludeAllowingCapture --engine ./stockfish --limitDepth 2 --analyseAll Restrict moves for WHITE side. Create the allowed part of the game tree ... Found 25625 positions in 31.45s Connect child nodes ... Connected 25625 positions in 2.28s Generate tablebase ... Tablebase generated with 17 iterations in 0.08s Matetrack: 8/7p/8/8/NK6/1B1N4/2rpn1pp/2bk1brq w - - bm #27; PV: b4a5 c1a3 a5a6 a3c1 a6b6 c1a3 b6a5 a3c1 a5b4 h7h6 b4a5 c1a3 a5a6 a3c1 a6b6 c1a3 b6a5 a3c1 a5b4 h6h5 b4a5 c1a3 a5a6 a3c1 a6b6 c1a3 b6a5 a3c1 a5b4 h5h4 b4a5 c1a3 a5a6 a3c1 a6b6 c1a3 b6a5 a3c1 a5b4 h4h3 b4a5 c1a3 a5a6 a3c1 a6b6 c1a3 b6a5 a3c1 a5b4 c1a3 b4a3 e2f4 ; PV is short; Lengthening PV ... Matetrack with complete PV: 8/7p/8/8/NK6/1B1N4/2rpn1pp/2bk1brq w - - bm #27; PV: b4a5 c1a3 a5a6 a3c1 a6b6 c1a3 b6a5 a3c1 a5b4 h7h6 b4a5 c1a3 a5a6 a3c1 a6b6 c1a3 b6a5 a3c1 a5b4 h6h5 b4a5 c1a3 a5a6 a3c1 a6b6 c1a3 b6a5 a3c1 a5b4 h5h4 b4a5 c1a3 a5a6 a3c1 a6b6 c1a3 b6a5 a3c1 a5b4 h4h3 b4a5 c1a3 a5a6 a3c1 a6b6 c1a3 b6a5 a3c1 a5b4 c1a3 b4a3 e2f4 a4c3;
This PR uses the local engine to complete a possibly short PV.
Examples: