Is this idea useful?
It is easy and fast to do.
For example, if an engine has a move history stack (h is the pointer to the current ply):
then initialize at the root:
h->tries = 0
just before each move at the root:
h->tries++;
(h+1)->maxTries = h->tries;
then initialize in the regular search:
h->tries = 0;
just before each move in the regular search:
h->tries++;
(h+1)->maxTries = max(h->tries, h->maxTries);
So, then in the regular search, (certain) extensions can be denied if at any time during the search the number of tries at any previous ply depth exceeds N (N = 20 seems to be a good value).
Has anyone tried this?
Restricting extensions to the left most branches?
Moderators: hgm, Rebel, chrisw
-
- Posts: 3196
- Joined: Fri May 26, 2006 3:00 am
- Location: WY, USA
- Full name: Michael Sherwin
Restricting extensions to the left most branches?
If you are on a sidewalk and the covid goes beep beep
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
-
- Posts: 613
- Joined: Sun Jan 18, 2009 7:03 am
Re: Restricting extensions to the left most branches?
Haven't tried this, but my intuition says that preserving extensions, but using more aggressive LMR after "N" moves gives better results.Michael Sherwin wrote: Has anyone tried this?
My intuition has been proved to be wrong many times though.
Joona Kiiski
-
- Posts: 3196
- Joined: Fri May 26, 2006 3:00 am
- Location: WY, USA
- Full name: Michael Sherwin
Re: Restricting extensions to the left most branches?
It would shape the tree a lot differently than LMR and save time where LMR cannot.
Let's say that N is set to 20 and also we are going to consider first the root moves in the middle game. There could easily be many times 20 root moves. So, many - 20 is on average a large number of branches that do not extend (as much), saving time. Then while one of the first 20 branches is being searched the number of tries exceeds 20 at the next ply all further moves have no or reduced extensions. Etc.
Extensions are likely to be more important for the left most branches and may even benefit from being more aggressive with less possibility of tree explosion.
Let's say that N is set to 20 and also we are going to consider first the root moves in the middle game. There could easily be many times 20 root moves. So, many - 20 is on average a large number of branches that do not extend (as much), saving time. Then while one of the first 20 branches is being searched the number of tries exceeds 20 at the next ply all further moves have no or reduced extensions. Etc.
Extensions are likely to be more important for the left most branches and may even benefit from being more aggressive with less possibility of tree explosion.
If you are on a sidewalk and the covid goes beep beep
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through
Just step aside or you might have a bit of heat
Covid covid runs through the town all day
Can the people ever change their ways
Sherwin the covid's after you
Sherwin if it catches you you're through