That description is of course too simplistic. I am assuming a simple aspiration search where the root window is just made bigger on fail high/low. SF does more funky stuff.Michel wrote:Or perhaps more generically, not raising alpha at root when a move returns TBwin and beta=>TBwin?Probably the only thing that would work is going to multipv = 2 in such a situation...
It seems hard to justify this theoretically though...
Natural TB
Moderators: hgm, Rebel, chrisw
-
- Posts: 2272
- Joined: Mon Sep 29, 2008 1:50 am
Re: Natural TB
Ideas=science. Simplification=engineering.
Without ideas there is nothing to simplify.
Without ideas there is nothing to simplify.
-
- Posts: 5566
- Joined: Tue Feb 28, 2012 11:56 pm
Re: Natural TB
Once the game has been won (TBwin returned) one can of course afford any luxury, theoretically sound or not.Michel wrote:Or perhaps more generically, not raising alpha at root when a move returns TBwin and beta=>TBwin?Probably the only thing that would work is going to multipv = 2 in such a situation...
It seems hard to justify this theoretically though...
Doing it only at the root is only a partial solution. It should be done at every PV node. We don't want to see Qxf6 halfway the PV, I suppose...
-
- Posts: 2272
- Joined: Mon Sep 29, 2008 1:50 am
Re: Natural TB
Well such a line would still return TBwin at root. So alpha would not be raised.Doing it only at the root is only a partial solution. It should be done at every PV node. We don't want to see Qxf6 halfway the PV, I suppose...
Ideas=science. Simplification=engineering.
Without ideas there is nothing to simplify.
Without ideas there is nothing to simplify.
-
- Posts: 2272
- Joined: Mon Sep 29, 2008 1:50 am
Re: Natural TB
I guess the line could be good. So probably doing things in deeper PV nodes would be better. If it does not lead to search explosion.Michel wrote:Well such a line would still return TBwin at root. So alpha would not be raised.Doing it only at the root is only a partial solution. It should be done at every PV node. We don't want to see Qxf6 halfway the PV, I suppose...
Ideas=science. Simplification=engineering.
Without ideas there is nothing to simplify.
Without ideas there is nothing to simplify.
-
- Posts: 27807
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Natural TB
Note that PROBE_OFF does not mean you should entirely go without probing. Probes with the 'wrong' result (i.e. draws or losses for the side with the proven win) can of course be used to immediately cut off the branch. Probes with the desired result to inferior tables should be ignored, however. And probes to superior tables with the desired result should only lead to an immediate cutoff if they specify a win for the side to move. Not if they specify a loss. Otherwise you would still cut after Qxf6 if you had 7-men tables, as KQRRKBB is superior to KQRRKBBN. But since the opponent will use its turn to recapture Kxf6, by the time it is your move you will be in KRRKBB, which is inferior to KQRRKBBN, so that the winning probe will be ignored.
So the only effect of PROBE_OFF should be
* ignore TB wins for the winning side in inferior tables
* ignore TB losses for the losing side when that side is to move
If you also probe in QS, the second case should affect the stand-pat score, however, as stand-pat would leave us in the superior table.
So the PROBE_OFF state actually involves remembering who is the winning side, and what is considered inferior.
So the only effect of PROBE_OFF should be
* ignore TB wins for the winning side in inferior tables
* ignore TB losses for the losing side when that side is to move
If you also probe in QS, the second case should affect the stand-pat score, however, as stand-pat would leave us in the superior table.
So the PROBE_OFF state actually involves remembering who is the winning side, and what is considered inferior.
-
- Posts: 5566
- Joined: Tue Feb 28, 2012 11:56 pm
Re: Natural TB
And that is a lot of code to get right...hgm wrote:So the PROBE_OFF state actually involves remembering who is the winning side, and what is considered inferior.
Already writing down a formal definition of "inferior" seems pretty tricky. What do you compare it to? Exchanging into KNNvKP might be excellent and it might be silly, depending on the "stable" position where the side having the advantage gets to make the choice of how to continue.
-
- Posts: 27807
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Natural TB
Doesn't look very complex to me:
You just remember the material evaluation in the root. PROBE_ON is achieved by setting winning = NONE, which reduces the above code to a no-op. For PROBE_OFF you set 'winning' to the side-to-move in the root. That will ignore all winning EGT probes in tables with material inferior to that in the root when the winning side has the move, and ignore all losing EGT probes when the losing side has themove (because the loss might be based on an immediate conversion to an inferior table, even if at the moment the material is superior). This is needed to avoid Sactifices of the Q x protected N type, which lead to a superiorwin before the recapture.
That will suppress
Code: Select all
int winning, rootMaterial;
Search(...)
{
score = ProbeEGT();
#ifdef NATURAL
if(score == TB_WIN) {
if(stm == winning && material < rootMaterial) score = MISS;
} else if(score == TB_LOSS)
if(xstm == winning) score == MISS;
}
#endif
if(score != MISS) return score;
// normal search
...
}
That will suppress
-
- Posts: 2821
- Joined: Fri Sep 25, 2015 9:38 pm
- Location: Sortland, Norway
Re: Natural TB
How to update my Syzygy to Natural TBs?
Please
Please
-
- Posts: 5228
- Joined: Thu Mar 09, 2006 9:40 am
- Full name: Vincent Lejeune
Re: Natural TB
The files don't change.Nordlandia wrote:How to update my Syzygy to Natural TBs?
Please
It's the program who search the positions in a different manner.
-
- Posts: 2821
- Joined: Fri Sep 25, 2015 9:38 pm
- Location: Sortland, Norway
Re: Natural TB
It is possbile to precatch 5-Men into RAM before game/analyze.
type C:\wdl345\*.rtbw > NUL
http://pastebin.com/bKYqyEDY
type C:\wdl345\*.rtbw > NUL
http://pastebin.com/bKYqyEDY