Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

What is so drastically different between gnubg grandmaster and 4ply?

507 views
Skip to first unread message

mu...@compuplus.net

unread,
Jun 8, 2012, 6:47:16 AM6/8/12
to
Until yesterday, I was happy to play against gnudung grandmaster as the strongest of its settings. How ever, since I realized that there is a higher strength called 4ply, I decided to play the last 10-11 matches of my experiment against it.

While I was able to play several matches in a few hours against grandmaster, since I switched to playing against 4ply, after about 12 hours, we are only playing the 6the game in a 25-point match (me being ahead 10 to 1).

Why is this huge, huge!!! difference...?

Like I said before, I don't want to be wasting my time playing against a less than perfect bot, with all that inserted noise bullshit. But this is just plain unbearable... :(

Are there some setting adjustments that will speed up the game without compromising the fact that I am playing against the highest strength of gnudung...??

MK

Michael Petch

unread,
Jun 8, 2012, 7:14:47 AM6/8/12
to
There is no noise on Grandmaster or 4ply. The only ones with noise are
beginner, casual, intermediate, advanced. Expert and above have no
"noise" as in they don't make random plays. Each ply allows the bot to
look 1 extra move forward. The idea is that the further you look in the
match the more likely the result will be correct.

Each ply level is about 20 times slower than the previous ply. You can
see the settings associated with one of the levels like "grandmaster" by
going to the menu/settings/analysis. Select the level you wish to view
from the drop down (ie, grandmaster). Click the "Advanced Settings"
button. The values displayed there are what are associated with the
level you chose on the previous screen.

As for settings the only one that will likely help any is the cache.
That can be set under Settings/Options/Other and cache. 58mb is what I
use, setting it higher can cause it to slow down.

The only other way to speed it up is to play on a different ply level.
One thing you might consider if you are playing "4 ply" is to use the
instructions above, select 4 ply, click the "Advanced Settings" button,
and drop the cube analysis from 4ply to 2ply. What you end up with is
2ply cube/4ply chequer. On the same screen you can set the filter to
something smaller, but you give up some accuracy as some moves may be
skipped over.

Michael Petch

unread,
Jun 8, 2012, 7:18:39 AM6/8/12
to
On 2012-06-08 05:14, Michael Petch wrote:

> The only other way to speed it up is to play on a different ply level.
> One thing you might consider if you are playing "4 ply" is to use the
> instructions above, select 4 ply, click the "Advanced Settings" button,
> and drop the cube analysis from 4ply to 2ply. What you end up with is
> 2ply cube/4ply chequer. On the same screen you can set the filter to
> something smaller, but you give up some accuracy as some moves may be
> skipped over.
I should point out if you use the Advanced Settings button discussed
previously, you can set the ply level as high as 7 (for cube and or
chequer), but as you can imagine that will be incredibly slow.

mu...@compuplus.net

unread,
Jun 9, 2012, 1:31:14 AM6/9/12
to
On Friday, June 8, 2012 5:14:47 AM UTC-6, Michael Petch wrote:

> Each ply level is about 20 times slower than the previous ply.

The difference between supremo and grandmaster sure doesn't seem like 20 fold.

> That can be set under Settings/Options/Other and cache. 58mb is what I
> use, setting it higher can cause it to slow down.

I have 16gb ram, so I set it to 464mb. I guess I'll just stick with that and default grandmaster settings.

MK

Michael Petch

unread,
Jun 9, 2012, 2:13:31 AM6/9/12
to
On 2012-06-08 23:31, mu...@compuplus.net wrote:
> The difference between supremo and grandmaster sure doesn't seem like 20 fold.

You were quick to pick up on something erroneous, and not sure why I
typed 20. It is more like ~20^2 or ~400. Thanks.

mu...@compuplus.net

unread,
Jun 9, 2012, 4:53:28 AM6/9/12
to
I guess I ended up doing something good inadvertently because you misread what I wrote.

Now that you said it, I agree the difference between grandmaster and 4-ply felt much longer than 20 fold, and I have no reason to negate you that it is actually 400 fold.

But what I was referring to was the difference between grandmaster and "supremo", not 4-ply...

Interestingly, now that I looked at them, both "world class" and "supremo" are 2-ply, and there is no 1-ply preset player. Why is this...?

Anyway, my point is that the difference in slowness between any of the "world class", "supremo" and/or "grandmaster" is nowhere near the difference between "grandmaster" and "4-ply".

I was trying to underline and question this very fact!

MK

Michael Petch

unread,
Jun 10, 2012, 2:21:16 AM6/10/12
to
On 2012-06-09 02:53, mu...@compuplus.net wrote:
> On Saturday, June 9, 2012 12:13:31 AM UTC-6, Michael Petch wrote:
>
>> On 2012-06-08 23:31, mu...@compuplus.net wrote:
>
>>> The difference between supremo and grandmaster sure doesn't seem like 20 fold.
>
>> You were quick to pick up on something erroneous, and not sure why I
>> typed 20. It is more like ~20^2 or ~400. Thanks.
>

Previously I gave a couple number. 20 times and 400. In certain
respects, both these numbers are accurate. with certain assumptions.
Assume one evaluation in the neural net is equal to one time unit AND
that there is no pruning, no caching, and no filtering, then this would
be an approximation (not that it will vary depending on the position or
roll being analysed)

0-ply is 20 units
1-ply is 8,000 units (400 times more than 0-ply)
2-ply is 160,000 units (20 times more than 1-ply)
3-ply is 3,200,000 units (20 times more than 2-ply)
4-ply is 64,000,000 units (20 times more than 3-ply)

These numbers would have been true in the original stages of GNUBG's
development. A number of enhancements were added over the years, which
included the cache, pruning, and filters. The cache is used to store
positions previously computed on a given ply level and other settings.
Pruning is a smaller neural net that is used to more quickly rank legal
moves at plies greater than 0. Filters limit the number of candidate
positions that will continue to be processed at any given ply, by
skipping over what appear to be obviously bad plays.

Since all these techniques speed things up, and can vary between moves
and decisions being analysed there is no hard and fast numbers, however
based on some observations this might give a very rough idea of the
speed differences observed with pre-defined analysis levels. Pruning is
on by default for all levels for plies > 0, cubeful evaluations, and no
noise.

Expert (0-ply chequer, 0-ply cube, Filter N/A) is 20 units
World Class (2-ply chequer, 2-ply cube, Filter Normal) is 40,000 units
Supremo (2-ply chequer, 2-ply cube, Filter Large) is 80,000 units
GrandMaster (3-ply chequer, 3-ply cube, Filter Large) 400,000 units
4ply (4-ply chequer, 4-ply cube, Filter Large) is 8,000,000

The observation that there is a bigger jump between 4ply and grandmaster
compared to GM and Supremo, or Supremo to WorldClass is accurate. This
has to do with the how the filters are set for each ply level on a given
analysis setting, and the amount of caching that is done, and the effect
of pruning.

With that being said, one thing I'd like to say about all this is that
you can probably double the speed of 4-ply, by manually setting 4-ply
and then changing the default move filter from large to normal. All
though less accurate, I believe the errors involved are probably
marginal. Note the move filter was the only difference between Supremo
and WorldClass.

4-ply with a normal filter would be about 4,000,000 units.

If the next question is, would it be beneficial to consider a normal
filter on 4 ply rather than large? The answer is that it is something I
will present to the GNUBG mailing list.

Something people should be aware of is that the normal evaluation engine
in GNUBG is not multi-threaded. The down side is that if you play
against the bot or do individual hint/evaluations it will only use one
core on your system. So if you have a large multicore system, it won't
make any difference, and this is probably the biggest single limitation
present for those playing against the bot.

Where multiple cores come into play is when you do a rollout, or analyse
a session (session is more than one move).

mu...@compuplus.net

unread,
Jun 10, 2012, 4:36:22 AM6/10/12
to
On Sunday, June 10, 2012 12:21:16 AM UTC-6, Michael Petch wrote:

> Previously I gave a couple number. 20 times and 400. In certain
> respects, both these numbers are accurate. with certain assumptions.

Thanks for all the detailed info. Articles like this should be archived, unless the info is already available at some gnubg web site or such...

MK
0 new messages