Good chance that this would makes them weaker. This looks a lot like "Unmotivated Reduction of Everything" (UROE), because hash moves can be lost by any number of reasons. If this is also done in all-nodes, virtually all all-nodes would be reduced, as these typically do not have a hash move in a stable search.
Reducing everything but the PV isn't necessarily bad. Even reducing everything including the PV would not be detrimental, it just means you lie more about your depth. If reducing everything but the PV gives an improvement, it means your normal reduction scheme wasn't tuned well. Under those conditions random extra reductions outside the PV can also give an improvement.
An alternative to IID
Moderators: hgm, Rebel, chrisw
-
- Posts: 27790
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
-
- Posts: 6991
- Joined: Thu Aug 18, 2011 12:04 pm
Re: An alternative to IID
What if I tell you that at longer time control (CCRL Blitz) it gives even more elo, currently +35.hgm wrote: ↑Fri Aug 14, 2020 2:37 pm Good chance that this would makes them weaker. This looks a lot like "Unmotivated Reduction of Everything" (UROE), because hash moves can be lost by any number of reasons. If this is also done in all-nodes, virtually all all-nodes would be reduced, as these typically do not have a hash move in a stable search.
Reducing everything but the PV isn't necessarily bad. Even reducing everything including the PV would not be detrimental, it just means you lie more about your depth. If reducing everything but the PV gives an improvement, it means your normal reduction scheme wasn't tuned well. Under those conditions random extra reductions outside the PV can also give an improvement.
And it's not "Unmotivated", it's a another (but different) way (like IID) to handle large unsorted subtrees.
90% of coding is debugging, the other 10% is writing bugs.
-
- Posts: 6991
- Joined: Thu Aug 18, 2011 12:04 pm
Re: An alternative to IID
That I worry too, see the OP.silentshark wrote: ↑Fri Aug 14, 2020 9:31 amNice! IIR, I like it.
I wonder what it would do in one of the super strong, 3000 ELO+ engines?
For the moment I notice a considerable lower branch factor which automatically leads to 1 or 2 more iterations and formerly reduced nodes due to the lack of a hash move become alive because now that there is a hash move. The worry is that IIR may become counter productive when the TT is saturated, so depending on the size of the TT (or the % filled) there has to be a depth limit.
90% of coding is debugging, the other 10% is writing bugs.
-
- Posts: 584
- Joined: Fri Mar 30, 2018 7:20 am
- Full name: Andreas Matthies
Re: An alternative to IID
I can confirm that replacing IID with this idea gives +12 Elo in my engine.
Credits will go to Ed in the merge and the ChangeLog
Credits will go to Ed in the merge and the ChangeLog
-
- Posts: 27790
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: An alternative to IID
IID is motivated by the desire to reduce the search time of a deep tree by first obtaining some info to sort on in a comparatively cheap way. But eventually you would still search the intended tree, it doesn't change what you search in any way.
That a tree is unsorted, or merely had its hash move overwritten, doesn't seem to be a valid motivation for reducing its search depth. Unless you would consider it a valid motivation to do reductions based on the day of the week, or when the TickCount is odd...
Considering the positive test results I am sure absence of a hash move must strongly correlate with some more fundamental property of the node. Like I said, perhaps this means you are doing it in every all-node. But in that case it should even work better if you just did it in every all-node, and nowhere else, irrespective of whether there was a hash move or not.
-
- Posts: 584
- Joined: Fri Mar 30, 2018 7:20 am
- Full name: Andreas Matthies
-
- Posts: 584
- Joined: Fri Mar 30, 2018 7:20 am
- Full name: Andreas Matthies
Re: An alternative to IID
-
- Posts: 327
- Joined: Sat Mar 27, 2010 7:15 pm
Re: An alternative to IID
Seems to be holding at about +14 ELO after 14K games for me. These games are 60 moves in 1 minute, vs earlier version of my engine, and vs some other sparring partners.silentshark wrote: ↑Fri Aug 14, 2020 8:43 am+14 ELO after 7.5K games for me now..silentshark wrote: ↑Thu Aug 13, 2020 9:38 pm+13 ELO after 2.5K games for me.. looking interestingsilentshark wrote: ↑Thu Aug 13, 2020 6:05 pmInteresting idea. I will give this a go, as I've never been happy with my IID implementation anyway. Will post back results after a few thousand games.
This does spark other ideas. I might try the following - tweaking LMR reduction, e.g reduce more if there is not a hash move
Anyhow, Ed's idea seems to have promise on its own. Overall depth increases quite a lot (like 1 or 2 plies), and strength increases slightly.
-
- Posts: 6991
- Joined: Thu Aug 18, 2011 12:04 pm
Re: An alternative to IID
I am not surprised, engines like yours already search at incredible depths.RubiChess wrote: ↑Fri Aug 14, 2020 10:10 pmSorry. Seems it was the other patch that won the Elo. Replacing IID with the "decrease depth" idea is < 1 Elo.
In the old days IID was a winner, I looked at SF and it says about IID ~1 elo.
90% of coding is debugging, the other 10% is writing bugs.
-
- Posts: 347
- Joined: Tue Nov 19, 2019 4:34 am
- Location: https://github.com/TerjeKir/weiss
- Full name: Terje Kirstihagen
Re: An alternative to IID
Replacing IID with this gains 3-8 elo in Weiss, lower with higher TC / threadcount.