| |
BGonline.org Forums
Cubeful equities: how to derive from cubeless?
Posted By: NJ In Response To: Cubeful equities: how to derive from cubeless? (Timothy Chow)
Date: Thursday, 7 January 2010, at 8:27 a.m.
Timothy Chow wrote:
The other thing to be aware of is that there's not much incentive for people to work hard to improve the bots. Certainly the financial incentive is pretty low. Another potential source of incentive is the prestige accompanying the publication of a brilliant new idea; this drives a lot of academic work. There is not a lot of this kind of incentive either. So even if there is a lot of room for improvement, it's not clear that anyone will be motivated to put in all the requisite work. The small number of people developing the current bots have done and continue to do admirable work, but they have limited time and resources.
------------
This is so true. From personal experience, I can tell you that there is very little financial incentive to improving a bot past the current world class levels. Suppose you created the ultimate backgammon bot that had perfect evaluations and never made a mistake. The average backgammon player wouldn't be able to tell that bot apart from any other world class bot such as GNU or XG. So at least from a financial perspective, the time spent improving a bot's accuracy would be better spent adding other sorts of features that would be applicable to the average user.
In fact, I've thought up many ideas on how current bots could be improved, but I don't have any reason to work on them other than out of my own curiosity. For example, here are some ideas on how GNU Backgammon could be improved:
1) Reduce the even-odd effect by retraining the neural net. I did an experiment on my own neural net (which also suffered from an even-odd effect) and I was able to reduce the problem by retraining with a mix of even and odd ply evaluations. I believe that GNU was trained using rolled out positions and then with 2-ply evaluations. I think it should be retrained with a mix of 2-ply and 3-ply evaluations.
2) Add an opening book, like in chess. After all, every bot has a database of bearoff positions so why not opening positions as well? Stick has already done the rollouts. There's no reason for a bot to ever make a mistake in the first 2 or 3 moves (unless of course you wanted it to play a certain line).
3) I'm not 100% sure but I have a feeling that GNU doesn't do its cubeful N-ply evaluations correctly. At least from what I read in their manual it didn't sound correct. Their manual says that they calculate double/take and nodouble at each ply. But I think that if there is ever a double/take in an intermediate ply, that the next ply would need to calculate double/take, nodouble, and redouble/take. The next ply after that might need to calculate even more. Of course, this would probably only make a difference in high volatility situations where each side might redouble immediately. But I wonder if those positions are being misevaluated right now.
Also, the manual doesn't mention the last ply evaluating both double/take and nodouble, but I think that it should. Of course, the manual could just be wrong or out of date.
4) I'm not sure about this either, GNU might also be doing its Janowski calculations incorrectly. At least, I found that Janowski's formulas were incorrect, so if GNU is using them as stated in the "Take Points in Money Games" article, then it's probably wrong. However, I've tested some positions on GNU and it seemed to not exhibit that problems I would expect. So they probably came to the same conclusions that I did and used different formulas.
Anyways, my point is that there are plenty of ideas floating around about how to improve bots. But like Timothy said, there's very few people doing the work and not a lot of incentive on improving the bots further.
| |
BGonline.org Forums is maintained by Stick with WebBBS 5.12.