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

Skill within strategy - ideas for better bg bots

6 views
Skip to first unread message

muratk

unread,
Jun 2, 2010, 10:28:59 PM6/2/10
to
Bg bots have become quite strong players but they are
still very weak in "strategy", which may be the "skill of
making use of skill".

First there is still the question of how good is the bot's
judgment of the "best move"?

We know that bot's judgment is based on statistics and
that in itself may not be wrong.

The problem is with bot's statistics being biased because
they are based on the bot's circular evaluation of results
based on its own skill.

In order to focus on the main subject of this article, let's
acknowledge this to be a rather fundamental problem in
bots but accept for now the bot's best moves to be the
"best moves".

What I really want to discuss is "strategy", or in other
words "strategic usage of skill".

Right now the bot's strategy is the "static usage of skill".

In any given position, it always plays the same way. And
I believe that such a strategy is hardly a "strategy" in the
true meaning of the word.

My proposition is that strategy needs to be "dynamic" in
order to be able to call it that.

And that would mean "choosing to make an inferior move
as part of strategy, even though one could make superior
moves"...

I believe that bots will eventually become smart enough
to use dynamic strategy against their opponents, even if
it may not happen soon.

However, bots could already be made to at least analyze
and rate human players more accurately based on the
same idea.

I don't know how difficult it would be, but we can start by
making the bots select 100 or 1000 or whatever practical
number of moves as the most difficult (i.e. most indicative
of skill).

Since I look down on "cube skill", I am talking here about
checker skill but I don't see why the same couldn't be
done for cube skill also.

So, having a list of 100 toughest moves, we can start rating
human players based on their ability to make those moves,
but without expecting them to be consistent/static in their
usage of their skill/strategy!

Let's say a player has been in the position to make one of
these tough moves 10 times and 8 times he makes the
expected "best" move but 2 other times doesn't.

Should those 2 times be counted as an error or blunder?

What if he makes the best move 6 out of 10 times, or 4 out
of 10 times??

At what point should we consider that he is capable of
making the best move but doesn't do so in order to make
an alternate move knowingly, as part of his strategy...?

Perhaps we come up with some bullshit like "if he gets 80
of the 100 hardest moves right at leas 5 time each, then his
rating should be N" and express it in a math-pretty formula?

And somehow we can tie this in with the "rating based on
results" idea?

Actually the only thing that matters is the actual results
and anything else is arbitrary speculation (that's why the
qualification "bullshit" above:).

If some lower rated players with higher error rates can show
that they can consistently achieve better results than what
would be expected from them against higher rated players
with lower error rates, then obviously there must be some
fundamental flaws in the measuring system.

I am one such player and that's were I come up with the above
ideas to improve the bots. (My ideas are valid improvements
to bots regardless of whether you believe I am such a player).

This would be a step towards bots being able to use dynamic
strategies some day but my whole purpose is not only to
come up more accurate player ratings or stronger bots.

What I'm really concerned and against about is the false
garbage that is being thought (and worse yet, being sold for
money) as the "better way of playing backgammon"... :(((

MK

Bradley K. Sherman

unread,
Jun 2, 2010, 11:13:40 PM6/2/10
to
In article <8a16efd4-f061-4768...@s4g2000prh.googlegroups.com>,
muratk <mu...@compuplus.net> wrote:
> ...

>In any given position, it always plays the same way. And
> ...

That is certainly *not* true of chess-playing programs.
There is no reason that the programmer could not write
the bot to "randomly" select one out several good moves.
(I don't know if any of the bg bots do this.)

I do agree that if a human can beat a bot it will have
to be through strategy, because the human is at a huge
disadvantage in tactics.

--bks

Walt

unread,
Jun 2, 2010, 11:30:02 PM6/2/10
to
Bradley K. Sherman wrote:
> In article <8a16efd4-f061-4768...@s4g2000prh.googlegroups.com>,
> muratk <mu...@compuplus.net> wrote:
>> ...
>> In any given position, it always plays the same way. And
>> ...
>
> That is certainly *not* true of chess-playing programs.
> There is no reason that the programmer could not write
> the bot to "randomly" select one out several good moves.
> (I don't know if any of the bg bots do this.)


gnubg has a setting for "noise" which adds a bit of randomization to its
choices. Not sue about the other popular bots.

//Walt

muratk

unread,
Jun 3, 2010, 1:27:50 AM6/3/10
to
On Jun 2, 9:30 pm, Walt <walt_ask...@yahoo.com> wrote:


> Bradley K. Sherman wrote:


>> muratk  <mu...@compuplus.net> wrote:


>>> In any given position, it always plays the same way. And

>> That is certainly *not* true of chess-playing programs.


>> (I don't know if any of the bg bots do this.)

> gnubg has a setting for "noise" which adds a bit of
> randomization to its choices.

Both of you are totally missing the point...

MK

Patti Beadles

unread,
Jun 3, 2010, 3:34:19 PM6/3/10
to

>However, bots could already be made to at least analyze
>and rate human players more accurately based on the
>same idea.

In theory, your idea has merit-- the term you're looking for
is "exploitive play". If the bot determines that a particular
human is especially weak at a certain style of position, the
bot can exploit that human weakness by steering games toward
those types of position.

I don't think that "identifying hardest moves" and "labeling an
opponent as weak" are the right way to approach that. A far
better way would be for the bot to identify particular patterns
of games (blitzes, holding games, back games, etc.) and to
analyze how a player handles those situations. How much equity
does a player give up, on average, in a holding game? When
being blitzed? When blitzing? If a human plays holding games
nearly perfectly but makes large equity blunders when being
blitzed, then the bot should blitz him slightlly more often than
usual. Doing the math to figure out how much optimal equity to
give up in pursuit of exploitive equity doesn't seem too hard.

In practice, I think it would be impossible for a bot to get a
sufficiently large data set on a particular person for them to
be able to reliably exploit human weaknesses. Plus, I'm not
sure that bots are quite up to the task of categorizing such
positions or of steering toward them. I might be wrong about
that last part.

Plus, my experience with poker is that it's usually less correct
than one would think to deviate from optimal play in order to
use exploitive play. I suspect it's even less correct in
backgammon.

-Patti
--
Patti Beadles, Oakland, CA |
pattib~pattib.org | All religions are equally
http://www.pattib.org/ | ludicrous, and should be ridiculed
http://stopshootingauto.com | as often as possible. C. Bond

tc...@lsa.umich.edu

unread,
Jun 3, 2010, 8:31:05 PM6/3/10
to
In article <hu903r$3ib$1...@blue.rahul.net>,

Patti Beadles <pat...@rahul.net> wrote:
>Plus, my experience with poker is that it's usually less correct
>than one would think to deviate from optimal play in order to
>use exploitive play. I suspect it's even less correct in
>backgammon.

I can't compare with poker because I don't play poker. However, when it
comes to the cube it's certainly true that top players routinely adjust
their cube action according to who they're playing. The simplest example,
which you don't have to be a top player to utilize, is that if you know or
strongly suspect that your opponent will drop, then it's clear to double
even if it's technically ND/T. There are many other such examples.

Exploitative checker play is not quite as common or dramatic but it is
definitely a useful tool in practice. A lot of the players that I play
have a much poorer understanding of holding games and running games than
they do of blitzes and priming games. They often won't even think about
splitting their back checkers even if I have an advanced anchor and am
threatening to prime them, because they're too scared of getting attacked.
I definitely try to steer the game in this direction if the dice allow it.
It's true, though, that there's a limit to how much equity I'm willing to
sacrifice in this manner because there's always the chance that the game
will swing in a different direction that my opponent then plays well.
--
Tim Chow tchow-at-alum-dot-mit-dot-edu
The range of our projectiles---even ... the artillery---however great, will
never exceed four of those miles of which as many thousand separate us from
the center of the earth. ---Galileo, Dialogues Concerning Two New Sciences

muratk

unread,
Jun 4, 2010, 6:55:09 AM6/4/10
to
On Jun 3, 1:34 pm, pat...@rahul.net (Patti Beadles) wrote:


> muratk  <mu...@compuplus.net> wrote:


>> However, bots could already be made to at least analyze
>> and rate human players more accurately based on the
>> same idea.


> In theory, your idea has merit-- the term you're looking
> for is "exploitive play".


Ok, thanks for the better term, but "exploitive play" was
only part of my point and I didn't even go as far to make
any suggestions about how the bots could use "exploitive
play". You are ahead of me there...

What I was proposing as a feasible "interim" improvement
was to make bots at least aware of when/how they may be
exploited.

And in fact, that would be only a byproduct of bots being
able to better rate their opponents (assumedly humans in
this context).

Right now, the bots' assessment of errors/blunders/etc.
are way off...! Totally arbitrary, circular, unrealistic.

So, my first suggestion was to better rate the players.

After that, can the bots be made a little smarter to
detect if an actually strong player is making weak moves
on purpose, in order to exploit the bot...?

Of course unless the bot can do something about it, what
good would it do for the bot to be aware of it?

But this is how progress is made. In baby steps. Maybe
the bots can be made to defend themselves against "sand
bagging" strategies.

Ultimately, they may even use what you call "exploitive
play" against their opponents some day...

> Plus, my experience with poker is that it's usually
> less correct than one would think to deviate from
> optimal play in order to use exploitive play.
> I suspect it's even less correct in backgammon.

After all that what you wrote, you go right back to an
undefined, arbitrary "optimal play"... Sigh... :((

My whole point is that the so-called "optimal play"
may not be as optimal as you all may think...!

MK

muratk

unread,
Jun 4, 2010, 7:05:13 AM6/4/10
to
On Jun 3, 6:31 pm, tc...@lsa.umich.edu wrote:


> Exploitative checker play is not quite as common
> or dramatic but it is definitely a useful tool
> in practice.

Good comment even though you may have not made it
purposefully.

Cube actions are triggered by swings of luck, thus
they can be very dramatic.

Checker plays are hardly ever dramatic enough to
put an early end to a game. That's why the checker
skill is often called "staying power"...

And yes, they are less common simply because there
are fewer players who can excel at checker skill
than at cube skill... ;)

MK

0 new messages