bug-gnubg
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Interesting question/experiment about value of cube ownership


From: MK
Subject: Re: Interesting question/experiment about value of cube ownership
Date: Wed, 6 Mar 2024 21:45:06 -0700
User-agent: Mozilla Thunderbird

On 3/4/2024 5:26 AM, Ian Shaw wrote:

Since at least you care to continue this discussion, I will invest
more of my time and effort mainly for the sake of improving GnuBG.

Sorry, MK, I didn't read back over the old threads,

It was in my a previous post in this current thread here but it's
no big deal. However, if you are serious about discussing this
issue, which one of many related ones, you really need to read at
least this thread in RGB (which I had mentioned in my last post):

https://groups.google.com/g/rec.games.backgammon/c/QU1jM9aatO0/m/peIBhLJNAgAJ

There is a lot in there, including a bug that I had pointed out
in "analysis.c" that had been there since 2014, which is still
there. See lines 243-246 in 2022 and 272-275 in current version:

https://cvs.savannah.gnu.org/viewvc/gnubg/gnubg/analysis.c?revision=1.241&view=markup

https://cvs.savannah.gnu.org/viewvc/gnubg/gnubg/analysis.c?revision=1.263&view=markup

Too bad that the development/maintenance team isn't hearing me.

You asked earlier about the GNUBG ID I used. It was:       
4HPwATDgc/ABMA:cAkAAAAAAAAA
This is the ID obtained after the sequence I suggested:   
4HPwATDgc/ABMA:cAkAAAAAAAAA
They are identical, so there is no indication in the ID to
indicate whether it is the opening roll.

Let's clarify things. The starting position when you open GnuBG
is 4HPwATDgc/ABMA:cAgAAAAAAAE at which analyze functions aren't
yet available. 4HPwATDgc/ABMA:cAkAAAAAAAE (g changed to k) sets
the game started flag (with nothing happened yet) and analyze
functions become available. 4HPwATDgc/ABMA:cAgAAAAAAAA is the
same position with the stupid JacKoby on :( Sorry for not being
more careful. It makes a slight -0.0075 difference in the average
equity of the position (+0.0989 vs +0.1064).

The Contact Net does not have an input for Opening Roll,
which makes sense. The bot plays by maximizing the equity
of the next position. The opening layout – with doubles
prohibited - is never the next position.

Not the "equity" but the "equity difference" between the "from"
position and the "to" position.

The starting position has an average equity just like any other
position except that it has two different equities depending on
its initial and subsequent (recycled) occurrences. This is the
issue here.

Comparing evaluation, Rollout as Normal Position, Rollout
as Initial Position, we can see that the evaluation is
close to the value of the rollout.

"Close" but not the "same" because the evaluation is based on
erroneously including doubles in the average position equity
even in the initial occurrence of the starting position! See
the bug in the code above, which is only part of the reason.
(Also see the attached temp map and eval images).

The rollout as the initial position is lower since
it doesn’t include those useful doubles.

That's why I had asked if bot's auto-playing was the same as
roll-outs...

If you paste the 4HPwATDgc/ABMA:cAkAAAAAAAE and look at the
temperature map, you can see that the average position equity
of +0.1064 includes doubles and is almost twice what it should
be +0.0521 (a difference of +0.0543).

This makes all subsequent equity and luck calculations wrong!
since they are all based on the equity difference between two
positions, before and after what is rolled (and how it's played).

If a bot is claimed to be superior to humans, it can't contain
such inaccuracies...

I don’t think the value of 0.36 ppg for cube ownership that we
both obtained is a "coincidence". I think it's evidence that
your script is a good emulation of a rollout.

It wouldn't be a coincidence for it to be "close enough", based
the above facts, but it being exactly the same must have been a
coincidence.

If you think 0.36 is inaccurate, I’m open to persuasion. Do you
have a theory as to why it’s wrong, or what you think the
correct value is?

I believe I have provided enough factual evidence above...

Regarding the equity at the beginning of the game, I’m not aware
of any “age-old fallacy”. It's well established that winning the
opening roll confers an advantage. I don’t think there's any theory
that says the equity (between equal opponents) is non-zero before
the opening roll.

There wasn't/isn't. That's what I'm calling "a fallacy" because
the equity between equal players before the "opening roll" isn't
zero.

You all confuse "before the game starts" and "before the opening
roll" because in GambleGammon (what I call the BG variant played
with the cube), deciding who goes first and the opening roll happen
simultaneously.

Imagine we are equal players wanting to play just one game. You
roll your die with your eyes closed and ask who won the opening
roll. I say you did. At that point you are on roll but haven't
rolled the opening roll yet, (your eyes are still closed and you
don't yet know the numbers lying on the board). For having won
the opening roll, you already accrued an average +0.0521 equity.

In fact, I'd argue that with the cube centered, you should be
allowed to double if you want before you open your eyes but this
is a whole different subject and for one of the experiments that
I have done and will share soon.

So, now you open your eyes and see your "opening roll" which just
happened now, after the game had actually started prior to it...

Indeed, the construction of most match equity tables is based on
the equity at the start of the game being zero (unless they are
assuming unequal players).

Well, then, they must be all wrong. The false argument that was
offered in the above linked RGB thread was that in the long run
both sides will win the opening roll an equal number of times
and thus their equity difference is zero, which is again the
fallacy.

Calculating the average equity after one million trials isn't
the same thing as assuming that two equal players will play a
million games and base equity tables on that. You have to take
each game separately, as though it will be the only game played.
In that case the equity gained by winning the opening roll makes
a difference. This is my argument. Anyone should feel free to
provide argument to the contrary.

MK


reply via email to

[Prev in Thread] Current Thread [Next in Thread]