Ovyron wrote: ↑Mon Feb 10, 2020 1:41 pm
Zenmastur wrote: ↑Mon Feb 10, 2020 9:52 am
Could you do a small test analysis for us? Something not too difficult like analyze this position to mate:
[d]2b3k1/r2r2p1/p1N1q3/1B6/3p4/2b1B2R/PPP5/2K4R w - - 0 36
You mean some mate score as shown by the engine, right? Not the shortest mate, which I don't see the point of doing...
So for this I'll be using 2 different engines, instead of some boring Engine 1 and Engine 2 let's nickname them:
Femme Fatale: This engine is really good at finding mates at low depth. However, it'll show some insane lowerbounds, like "+M160", which stands for "I can guarantee to win this position, and I can guarantee to do it on 160 moves or less." That she does, she'll decrease their counter with every move, but not with more depth. But I don't think you'd be happy if I show a mate score of 200 for this, would you?
Harem Girl: This one is the opposite, failing to see mate until it's on her face, choosing to report scores of +132.00 instead. Her problem is that these +132 scores may stay the same after a move, or they may go backwards (like from 132.71 to 132.70), so it's not reliable on finding them. HOWEVER, once she sees the mate she'll show a much better lowerbound, such as +M23 for the same position that Femme Fatale showed +M160. This would be the score that you'd want to backsolve.
For these purposes I'll use Femme Fatale for the white side exclusively. The idea is that she'll be leading the position to a mate score. I'll be using Harem Girl for the black side at the tail of the variations, so she tells us better mate scores (which could be lower than what she shows, but we'd be happy if those are brought to the root.)
SPOILER ALERT - I'm not doing it to completion, just for enough time so it's clear how the procedure works.
Initially, I use Femme Fatale at Depth 32 for the main move, and Depth 22 to get an alternative move. This is important in case her mainline falls below an alternative move, so we're not following the winning line. So I start (I'm snipping the end of the variations for clarity):
32/58 1:47 +9.45 1.Rh8+ Kf7 2.Rf1+ Qf5 3.Rxf5+ Kg6 4.Rg5+ Kf6 5.Bd3 dxe3 6.Rg6+
22/38 0:04 +0.32 1.Bc4 Qxc4 2.Rh8+ Kf7 3.Ne5+ Ke6 4.Nxc4 Rac7 5.bxc3 dxe3 6.Nxe3
I'll be making these first white and black moves that it shows in her PV, so 1.Rh8+ Kf7 are moved.
32/54 1:10 +9.07 2.Rf1+ Qf5 3.Rxf5+ Ke6 4.Re5+ Kd6 5.Bf4 axb5 6.Nxa7
22/39 0:04 +0.35 2.Bc4 dxe3 3.bxc3 Qxc4 4.Ne5+ Ke6 5.Nxc4 Rac7 6.Nxe3
2.Rf1+ Qf5 are moved.
32/57 2:14 +10.66 3.Rxf5+ Ke6 4.Re5+ Kd6 5.Bf4 axb5 6.Nxa7 Rxa7 7.Rxc8
Here 2 minutes / move are deemed too long per node, so I decrease main depth to 31, and the depth of the alternatives to 21.
21/38 0:04 +5.15 3.Bc4+ Kf6 4.Rxf5+ Kxf5 5.Rf8+ Rf7 6.Bxf7 dxe3 7.Bc4+
3.Rxf5 Ke6 are moved.
31/02 0:01 +10.66 4.Re5+ Kd6 5.Bf4 axb5 6.Nxa7 Rxa7 7.Rxc8 Ba5 8.Rxb5+
21/37 0:04 +6.74 4.Rf3 axb5 5.Nxa7 Rxa7 6.Rxc8 Rxa2 7.bxc3 dxe3 8.Rxe3+
And so on...
31/02 0:02 +10.66 5.Bf4 axb5 6.Nxa7 Rxa7 7.Rxc8 Ba5 8.Rxb5+ Kd7 9.Rc4
21/36 0:03 +6.74 5.Rxc8 dxe3 6.Rxe3 Bf6 7.Rd3+ Ke6 8.Nxa7 Rxa7 9.Rc6+
.
.
.
... snip snip...
.
.
.
We need a better 12th.
40/54 0:58 +132.72 12...Ra7 13.Rg5 Kf7 14.Be5 (265.310.352) 4521 TB:2.770.218
31/02 0:00 +M146 13.Rbxd4 Ke6 14.Rd6+ Kf5 15.Rd7 (1.293.266) 2288
So now I'd play Femme Fatale's move into Harem Girl until she shows a better bound, then go back and forward until she shows a mate score for the 9th move, and I go back to the 8th, and so on.
By this point it should be clear what I'm doing. After I'm done Harem Girl would be able to show a mate score from the root position, and since she'd store it on her learning file, she'd show it immediately even after I unload and reload the engine in the GUI.
The reason I have to reach depths below 2 minutes is that to backsolve a score I'd need to at least reach this depth everywhere, which becomes a waste of time with more depth.