[ View Thread ] [ Post Response ] [ Return to Index ] [ Read Prev Msg ] [ Read Next Msg ]

BGonline.org Forums

Cubeful equities: how to derive from cubeless?

Posted By: NJ
Date: Thursday, 7 January 2010, at 6:59 a.m.

In Response To: Cubeful equities: how to derive from cubeless? (Matt Ryder)

You made 3 posts with similar questions, and I'll give you all my answers in one post. I recently had to research and implement Janowski's formulae in order to write my game so it's pretty fresh in my mind.

1) Why not use a dedicated neural net to calculate cubeful equities instead of converting cubeless to cubeful?

In order to do so, you would have to train a different neural net for each match score. Since there is already a way to convert cubeless equities to cubeful (i.e. Janowski), it's a lot easier to just make one cubeless neural net and then do some math to get the cubeful equity. There's also no reason to believe that a cubeful neural net would be more accurate than cubeless + Janowski + enough lookahead (see next question).

2) The Janowski method seems to involve a lot of guesswork, especially in the estimation of the cube efficiency (x). Isn't there a better method?

If you actually took some positions and varied x, you would see that it doesn't change the cubeful evaluation by too much. What matters a lot more is the lookahead. Janowski only applies to the last ply of an evaluation. In a GNU 2-ply evaluation, for example, the last ply is done via Janowski, but each previous ply is done by directly averaging the evaluations of the 21 possible rolls for the ply ahead.

Another way of putting it is that Janowski only approximates the cubeful equity by calculating a theoretical take point and then making an educated guess as to whether or not the next roll will cause you to lose your market. The proper way to determine whether to double is to actually look ahead at every possible roll and see whether you will, in fact, lose your market. The more lookahead you use, the less important the final ply's evaluation is, although it still makes a difference. For example, a lot of market losers will evaluate in a lookahead ply as double/pass no matter what x you choose, so it's only those positions where the lookahead positions involve close doubling decisions that will be affected by tuning the Janowski x parameter.

3) Does XG do anything different than GNU?

It's clear from Michael Dipreli's bot comparison that XG at the same ply is doing better than GNU for cube decisions. If I had to take a guess as to why, I'd have to say it's because GNU is notoriously bad at estimating absolute equities. It suffers from an strong even-odd effect that causes it to systematically misevaluate positions. For example, I know of a position where GNU thinks the chance of winning is 80% on 3-ply but only 60% on 2-ply. Assuming that the actual chance of winning for that position is 70%, you can that it would probably miss the double on 2-ply and make an early double on 3-ply.

I think that is a far bigger source of error than miscalculating the "x" factor in Janowski's formula.

4) How exactly do you calculate the cubeful equity from a cubeless equity using Janowski?

The full answer to this question is beyond the scope of one post, but I can try to explain a bit of it. Let me first say that if you've read "Take Points in Money Games" by Janowski, that it appears to be either incomplete or wrong at places. For example, the formula for cube centered equity doesn't make sense. If you use the formula for a game in which neither side can gammon, it says that you can be too good to double. I ended up deriving my own formulas that didn't have those problems.

OK so let's start out by talking about the equity graph. The equity graph has p on one axis and E on the other. p is the probability that you will win, and ranges from 0% to 100%. E is your cubeful equity. The simplest equity graph is for a cubeless gammonless game such as DMP. The equity graph for this game is a straight line from (0%, -1) to (100%, 1). So, given a probability of winning, e.g. 75%, you can find the equity E by interpolating on that line. In this example, the point on the line would be (75%, 0.5) so your equity would be 0.5.

Now consider a gammonless game with the doubling cube centered. Suppose through some calculations, you determined that your cash point (i.e. your opponents take point) was at 75% chance to win. Also, suppose that you determined that your own take point was at 25% chance to win. Notice that since the game is gammonless, if either side crosses beyond their take point it will be a double/pass (there is no too good to double). The equity graph is now composed of three connected line segments. This is similar to what you read in the GNU manual.

The line segments would be (0%, -1) to (25%, -1), then (25%, -1) to (75%, 1), then (75%, 1) to (100%, 1). Now if you wanted to find your (live) cubeful equity, you just have to first know your cubeless chance of winning. Suppose your cubeless chance of winning was 15%. Since 15% falls in the first line segment, your equity is -1. This makes sense because your opponent will double you and you will pass. If your chance of winning was 30%, then you are in the second line segment and need to find where 30% lies on the (25%, -1) to (75%, 1) line. The answer is (30%, -0.8) so your (live) cubeful equity is -0.8.

Now why did I say "live" equity? Well, the answer is that this graph is only valid assuming that each side will never lose their market and will perfectly utilize the doubling cube. According to Janowski, there is also a "dead" equity where the doubling cube is dead (the graph would look like a single line segment). The actual equity is somewhere between live and dead, and that is where x comes into play. x=1 means live equity, x=0 means dead equity, and anywhere in between means an averaging of the two.

Anyways, this is where my own theory diverges from Janowski (and maybe everyone else). My personal theory is that the equity graph has seven line segments with the following eight points: certain loss, opponent's too good to double point, take point, opponent's initial doubling point, your initial doubling point, cash point, your too good to double point, and certain win. I also have my own formulas for calculating all these points, that derive somewhat from Janowski's ideas.

If you have more questions, I can go into more detail but I'm sure you'll need some time to digest all of this.

Messages In This Thread

 

Post Response

Your Name:
Your E-Mail Address:
Subject:
Message:

If necessary, enter your password below:

Password:

 

 

[ View Thread ] [ Post Response ] [ Return to Index ] [ Read Prev Msg ] [ Read Next Msg ]

BGonline.org Forums is maintained by Stick with WebBBS 5.12.