Open Side Menu Go to the Top
Register
Backgammon Training Program Backgammon Training Program

03-22-2011 , 12:36 PM
In another thread I mentioned that I was working on a program to provide drills of the Openings and the Opening Responses. This comment received some nice feedback, and others mentioned they would be interested in this kind of program. So I am starting this thread to keep those that are interested informed of my progress.

I am hoping to have something workable by the end of this weekend, but I'm horrible at judging how long it will take me to complete a project. Based on past experience, I would not be surprised if it took me one or two additional weekends to get it working (BTW, this is a night and weekend project for me).

In any event, on Sunday night I will publish what I have done even if it is really buggy. At the end of each Sunday I will post whatever bug fixes I've made over the week. The site where you will find this program will be at www.backgammoncoach.com.

A little bit about the intended direction of this program --

First of all it is completely written in Javascript. What this means is that the entire program is contained in a webpage. This is in contrast to a powerful program running on a server that is creating webpages and is tied into high-end database software. In comparison Javascript is fairly limited, but the latest version of Javascript does have some nice features. The latest version of Javascript contains a new Canvas element that allows me to draw the backgammon board, checkers, dice, etc. and make them all drag and dropable. It also contains a new localStorage function, which is where I store all the data such as opening rolls and proper opening moves, opening replies, etc. This is not nearly as powerful as a real database management system like SQL, but it is surprisingly functional. You will also need a modern browser to view the website and use the program (the latest Internet Explorer or Google Chrome browser should work fine).

When it is completed the program will have four major training areas --

Openings -- where a board is displayed along with the dice that were rolled and you need to make the proper move. The program will display opening rolls at random, and you need to get the move correct three times in a row (this number is user selectable) before the program stops displaying the move. Once you have gotten all the moves correct three times in a row then you have completed a training session. The proper opening move can vary depending on whether the game/match is being played under a Cubeless, Double Match Point, Gammon Go, or Gammon Save situation. The user can select a specific game/match type that they want to drill (e.g. just Cubeless, or all types). The Opening Replies are treated in a similar manner. When drilling Opening Replies the user can also limit the drills to just Opening Replies to a specific Opening (i.e. the 'opening reply roll' is selected at random). They can also drill based on a specific Opening Reply (i.e. the 'opening reply roll' is always the same but 'opening roll' is chosen at random). Note: I'm using Tom Keith's rollouts because they were already separated by Cubeless, DMP, GG, and GS. I don't know which, if any, differ from Stick Rice's rollouts.

Key Positions -- will allow the user to drill themselves on various key positions. For example, when to slot or not, hit or not, play a blitz, bearin, bearoff, cube decisions, etc. Various key positions are displayed and the user needs to enter the correct move (or make the right cube decision). Once again they need to get the answer correct three times in a row (or whatever the user selects), and the user can select the types of problems that are displayed. The really cool thing about this portion of the training program is that users can add their own positions. In fact, it will only come preloaded with a few positions and it is expected that most positions will be supplied by the user. If you are playing GnuBG (or XG) and come across a challenging position then add it to your Key Positions list. This is one of the nice things about the localStorage feature of javascript -- it allows each user to have their own local database to which they can add and delete their own positions. They can get the positions from GnuBG, XG, or even positions out of books they own. This is another nice thing about localStorage, whatever you enter is local to just you and not used by everybody, so there aren't any copyright issues in regards to using a position out of a book.

Endings -- will cover primarily Pip Counts. The Key Positions area can be used to handle various end game situations such as bearing in, bearing off, proper doubling at key positions, etc. So the Endings area will concentrate on providing drills for pip counts. This includes drills for standard pip counts and effective pip counts (i.e. the Keith Count). A position will be displayed and the user must enter each player's pip count and the correct cubing decision. Unlike the other training areas the Endings training area will be timed. The object is to improve both your accuracy and your speed at doing pip counts. This training area may also handle N-Roll decisions. These are decisions where we get down to just the last couple of rolls and proper play and cube decisions are required.

Misc. -- will contain options and drills not covered above. For example, the option to switch the direction of the board, or switch checker colors, would be located here. Maybe drills on calculating the chance of hitting, or getting hit, or coming in off the bar could be handled here. This area is kind of a catch all for future enhancements.

----------------

Right now I'm concentrating on getting the first section (Openings & Replies) working, so it will probably be a while before everything is working. But, I just wanted to let everyone know what my plans are for this project. Any recommendations are also appreciated.

One recommendation that I can see coming, but that I can't do, is having a robust mechanism for searching and selecting positions. The javascript storage I'm using isn't SQL so it's pretty limited. It's just a key/value pair and doesn't support queries.
Backgammon Training Program Quote
03-22-2011 , 05:06 PM
Stick's rollouts plus some of the addition I do posted at bg online are pretty much recognized as the best available info on openings. While many of the mo es will not change it would be much better to use the data from Stick
Backgammon Training Program Quote
03-28-2011 , 08:59 AM
Just a little update. I was hoping to have something to release this weekend, but I think the code is still too buggy to release. I'm afraid that instead benefiting from using the program that people would just become frustrated with the bugs, so I've decided to get a few more bugs worked out before I release it. I'd say there is about a 90% chance I'll release it next weekend.
Backgammon Training Program Quote
03-28-2011 , 02:14 PM
cool idea, hope you can make it work
Backgammon Training Program Quote
04-01-2011 , 01:29 PM
What would also be a good idea is the abbility to import your own positions in this training software. (Even better is to be able to do a bulk import of positions one has analyzed with XG/GNU/Snowie.)
So that one can train and quiz themselves with their previous mispalyed positions. It would also be nice if it kept stats and score about all these positions and your improvement in general.
Backgammon Training Program Quote
04-04-2011 , 08:37 AM
I think many would agree that it is strongly recommended NOT to use Keith's rollouts, the settings are weak and the number of games rolled out insufficient.

What is more, the special match score opening rollouts were not performed in proper scores, as mentioned in the site:

"The DMP, GG, and GS values are inferred from the probabilities of the cubeless rollout. It is possible that a true rollout (according to score) would give different results than those shown for these special scores."

Using them might even be counterproductive.

Otherwise your application is undoubtedly welcomed by many in the backgammon community.
Backgammon Training Program Quote

      
m