[Top][All Lists]

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

[Bug-gnubg] An exact bearoff analyser!

From: Øystein Schønning-Johansen
Subject: [Bug-gnubg] An exact bearoff analyser!
Date: Sun, 10 Jun 2012 00:08:10 +0200

An exact bearoff analysing tool.

- Have you ever lost a position that was "impossible" to lose?
- Do you always feel unlucky in the bearoff?
- Have you ever told your hard luck story: "It was a No. 3. loss!" ?
- Ever thought: "That must have been a million to one chance of losing." ?

I have the right tool for you! The exact bearoff analyser! And when I say
exact, I mean exact! It's exact in the way that it will report a rational
number of the winning probability for the player on roll. It is still a
one sided bearoff database, so it is not exact in the way that it play
moves according the opponents positions.

Download: http://www.gnubg.org/media/sources/exact-bearoff.zip

exact-bearoff.c is written in pretty standard C, so I don't believe there will be much
problems compiling it with any C compiler. If you have any problems please contact me.
You need the GNU Multi-precision library (aka GMP) to compile and link. If you have
GMP and GCC you can try compiling like this:

> gcc -Wall -Wextra -O3 -I. -c exact-bearoff.c
> gcc -o exact-bearoff exact-bearoff.o -lgmp

The exact bearoff analyser is a pure command line tool. Just type:
> exact-bearoff <board for player onroll>-<board for opponent>

You need the file 'exact.ddb' in the current working directory.

> exact-bearoff 4-2
Winnning probability: 1/6

meaning that the position where the player on roll has 4 checkers on his ace point,
and the opponent has 2 checkers, the chance of winning is (of course) 1/6.

If you have this position:
 GNU Backgammon  Position ID: 3z0NAABfZw8AAA
                 Match ID   : cAngAAAAAAAA
 +13-14-15-16-17-18------19-20-21-22-23-24-+     O: gnubg
 |                  |   | O  O     O  O  O |     0 points
 |                  |   | O        O  O  O |
 |                  |   |          O  O  O |
 |                  |   |          O     O |
 |                  |   |                O |
v|                  |BAR|                  |     7 point match (Cube: 1)
 |                  |   |                X |
 |                  |   | X              X |
 |                  |   | X        X     X |
 |                  |   | X  X     X     X |     On roll
 |                  |   | X  X     X  X  X |     0 points
 +12-11-10--9--8--7-------6--5--4--3--2--1-+     X: oystein

This is a bit harder to calculate:
> exact-bearoff 513024-534012
Winning probability: 27253945372010549856722445713456890823/63936311986958875890717097301737734144

You can specify more than 9 checker on a point with the letters a-f. (Lowercase).

BSD style license. Please give me feedback if you find this tool useful
or want to use it any way. I would also like feedback if you think this tool
is totally useless!

Good luck,

"The Exact Bearoff Analyser -- Quantifying hard luck stories since 2012!"

reply via email to

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