-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Missing PVs #52
Comments
Could also add a section with positions where there is likely a shorter mate? For example from your talkchess links: |
How about always stating our currently best found mates/PVs? I make a start:
|
This is probably the idea behind
|
I ran fairly long analysis on all positions with missing PV lines. That's the summary:
|
@vondele Thanks! So apart from the positions that have by now been merged, the improvement is
(best info was M37 beforehand) Indeed I believe our best chance of progress with "brute-force" searches from root are these (conjectured short-ish) mates:
Maybe you could run these individually on your big machine for 24h each, or so? |
That's exactly what was done for 4 of these positions without PV in matetrackpv.epd, but no luck. (which might cast some doubt on them being correct, IMO). I can give it a longer run on the last position where there is a suspected shorter mate. |
I agree that the three positions with currently best mate >30 are almost certainly incorrect. But they seem to be mates in under 40 moves, so we could retain them in the suite if we manage to find/confirm the PVs. |
yes, no need to remove them right now, somebody might have PVs. I actually realize that for the suspected |
Edit: This is in fact the same line as posted by David in #52 (comment). |
So a run like this: |
My quick one-liner lost the mate in the backwards analysis, but it will be searching for 24h from the root after that.
|
I might actually also try to setup your tool. |
I think my tool will just use |
What's the difference in these two input files |
First one is without the PV. The tool parses the edp file to look for missing PVs. It then tries to prove the ones suggested in the cdb file. |
Second one should have
|
And the first file the same line but without the PV. |
I suspect that PV line is not correct. The python script is 'stuck'
and my one-line lost mate there as well, I think, and is currently for the rootpos at:
|
Hm, does not necessarily mean the PV is wrong. Would need deep analysis of the FEN the script is stuck at. Could well be that SF finds it hard to refute a side line, with the TT not having been filled for that refutation. If you see what I mean. |
Notice that the talkchess post from robertnurnberg/matetools#32 (comment) has the root pos at depth 119, though it is not clear with what engine. |
I'll keep them running for ~20h or so, but only report back on Monday. suggested: enhancement for the provepvs script... store the engine output for each 'go mate' in a file, so one has that deep analysis on the 'stuck' move. |
With engine output you mean more than is printed to console currently? I usually pipe that to |
Full engine output to file. However, I was too quick, here we go:
next suggestion... after finding the right mate, restart search until a full PV is available. Now at least we know it should be possible.. |
So, currently I have local analyses running for two of the three positions with Maybe @vondele and/or @Yery have some powerful hw to do the same? Please report here if you find a new better mate for any of the three positions. |
OK, will run for a few days on each and report back. |
For position 8/p7/qb5p/p6p/p7/7p/2P1P2k/2Q2K2 w - - bm #23; I started after the following 7 moves (which is the line given above), all forced for black, c1f4 h2h1 f4e4 h1h2 e4e5 h2h1 e5d5 h1h2 d5d6 h2h1 d6c6 h1h2 c2c4 8/p7/qbQ4p/p6p/p1P5/7p/4P2k/5K2 b - c3 0 7 This is the result after almost a day long think (The Huntsman) So this brings it down to a mate in 36. I'll keep it going a day longer. Update after 2 days: |
Nice. I think the same argument applies to the sister position. There white can force this position: |
I had a look at this position: "6k1/p1p2pP1/5PpK/5p2/1p2pP2/1P1pP2N/1P1P2P1/5BBq w - - bm #104; Black can play 94...a4 and probably avoid getting mated". I agree, after 94...a4 black is probably winning or can force draw. The original idea of the puzzle stands, if we remove black's c-pawn as then ...a4 never helps black. In this case it is a mate in 66. I would propose this fix, rather than removing this position, as it is a beautiful test to have in the suite, for current and future engines! 6k1/p4pP1/5PpK/5p2/1p2pP2/1P1pP2N/1P1P2P1/5BBq w - - 0 1
Hard to find for engines, but probably relatively easy to verify with the provepvs.py (I haven't tried since my PC is currently crunching on the other position). |
Hm, a slippery slope. We have not added new positions so far. I think it's nice that we have this connection to the original set (only correcting apparent mistakes, or removing). But ultimately that kind of decision would be up to the maintainer. :) Regarding the position in question, I was under the impression that the suggested PV was found by @dav1312 himself, or was it proposed "officially" for this puzzle somewhere? |
I updated my post above on the bm23 position. Will now also give 8/p7/qbQ4p/p7/p1P4p/7p/4P2k/5K2 b - c3 0 7 a try for the sister position. Result after ~1 day (The Huntsman): So this supports the mate in 34. |
As I noted in the comment, I assume that is the PV following the logic of the study. |
Just to add to this: what makes it very likely to be the intended PV is that the logic of that PV leads exactly to the desired mate length. However the 94 ..a4 move means that the puzzle is flawed (likely a draw). So the only two options (that I see) are either to remove that position or to fix it somehow (ideally leaving the logic of the intended PV intact). |
Ok. I would propose to remove it then, as we have done with other (likely) draws in the past. Let me open a PR for it now. |
In the meantime my local analysis with stockfish has also found this shorter M36:
|
So @Yery, I have opened a PR for the two As far as I know, we have not even confirmed the stated talkchess PV so far. It is this one: cdb. The first few moves on cdb look like you could do your usual magic by finding a move sequence where black's answers are basically forced (to avoid short mates). We could then let our local engines run on whatever position you are confident can be forced, and see first of all if we can confirm the M34 mating line. |
I am currently running that position from the root, for over two days now, and The Huntsman currently found a mate in M35. I'll keep it going for a few more days and see if it can find the M34 (or better). If that fails I try the "manual" approach! |
After more than 5 days it just found this M33: info depth 83 seldepth 66 multipv 1 score mate 33 nodes 22503107069846 nps 47302759 hashfull 1000 tbhits 0 time 475725040 pv g8e6 e8f7 e6c8 c3d2 b1c2 a2c3 e4e3 a3a2 c8a6 f7e8 c6c7 e8d7 a6d6 d2d1n c2d1 c3d1 e3f3 a2a1q d6e7 e1d2 e7d7 d2c2 c7c8q d1c3 c8c5 a1h1 f3g3 h1c1 d7e7 c1d1 e7e3 c2b3 e3e6 b3a3 c5a5 c3a4 e6e3 d1b3 g3f4 b3e3 f4e3 a3b3 a5c7 a4b2 c7g7 b2c4 e3d4 c4a3 f5f6 a3c2 d4c5 b3a2 f6f7 c2e1 c5c4 e1c2 f7f8q a2b1 c4b3 b1c1 g7b2 c1d2 b2c2 d2e3 f8f2 I keep it going a bit longer :) |
info depth 87 seldepth 64 multipv 1 score mate 32 nodes 32441610082138 nps 45840413 hashfull 1000 tbhits 0 time 707707628 pv g8e6 e8f7 e6c8 c3d2 b1c2 a2c3 e4e3 a3a2 c8a6 f7e8 c6c7 e8d7 a6d6 d2d1n c2d1 c3d1 e3f3 a2a1q d6e7 e1d2 e7d7 d2c2 c7c8q d1c3 c8c5 a1h1 f3g3 h1c1 d7g7 c2b2 c5f2 b2a3 g7a7 a3b3 f2e3 c1f1 e3e6 b3c2 a7e3 b4b3 e6c6 f1d3 c6g2 d3e2 g2e2 c3e2 e3e2 c2c3 f5f6 b3b2 e2d1 b2b1q d1b1 c3c4 b1c2 c4b5 f6f7 b5b6 f7f8q b6b7 f8b4 b7a6 c2a2 |
Ten full days, final result (I am done with this position): |
Thanks a lot! A nice symmetry (23 -> 32). Will open PR soon. I will soon also have news on the M125 position. :) |
Any progress with the remaining PVs? |
I had some unsuccessful attempts with my matetb script, no results so far. I may get back to looking at this more closely again in the future. For the
Maybe we can use this thread to brainstorm on the remaining 4 open positions. ;) |
The |
True. I just solved it. Will open PR soon. In the past I was worried about all the captures (and promotions) once black has to move the h pawn due to zugzwang. So the trick was to have a local engine with a high depth to resolve the final mate one black moved that pawn, and keep the bishop fixed on h1 until then. |
Ok, so for the PV given for the
So if the rest of the PV is correct, this would give an overall Edit: In a similar vain, the position after
This would bring the overall mate down to |
PV matches the expected result
PV doesn't match the expected result
Missing PV
The text was updated successfully, but these errors were encountered: