Quote:
Originally Posted by punter11235
1)XG is so close to perfection that any improvements wouldn't make much of a difference
It's hard to say. XG rates itself an 0.15 error rating which is pretty good. If you accept that a bot rating its own play has some issues you might add another 0.2-0.4. Just an educated guess. I recently analysed some dozens matches of another bot against itself with XG and that showed that perfection is not yet reached.
Quote:
Originally Posted by punter11235
2)XG can be beaten significantly by implementing modern techniques (for starters make it use GPU and use modern big Neural Net akin to those used in chess or go these days)
This one is easy to answer. If you look at chess and Go they are 2D. Here the image recognitions algorithms shine (i.e. convolutional nets). Backgammon is in essence 1D and therefore the "classical" approach having a Multilayer Perceptron with one hidden layer works extremely well (for GnuBG, TD_Gammon and BGBlitz I'm sure about that architecture. XG, Sowie and Jellyfish most probably do the same)
One issue with the GPU is that it takes quite some time to move the data to the GPU. In fact you've calculate it on the CPU much quicker. I recently found a website where training of Backgammon AI was made on a GPU. 1000 games in an hour. Impressive? On a single CPU core, with the perceived slow language Java on a recent laptop I need for 1000 games about 30 seconds...
Don't get me wrong GPUs are fantastic technology, but the problem must fit.
(A bit more technical: MLP is Level 2 Blas where memory access dominates computation nowadays. Convolutional nets are Blas level 3 where you could reuse an item quite a lot, so calculation dominates memory access and GPUs outperform CPUs)
Quote:
Originally Posted by punter11235
I have two questions I realize are difficult to answer objectively but I appreciate opinions or at least slightly educated guesswork as well.
My questions are the following:
1)How far do you think XG at reasonable high settings (let's say it can spend 2 seconds per move on modern hardware) is from perfection?
see above, maybe PR 0.4. It might be that e.g. backgames with new strategies turn game play around (comparable to what AlphaZero did to Stockfish, where it played much different than we are used to), but I won't bet on that. And I'm confident that no one can judge that.
Quote:
Originally Posted by punter11235
2)Is there any money/recognition/fun to gain from developing a stronger engine?
fun definitely yes.
Money/recognition only if you surpass XG in some critical features (e.g. XG is really fast. Much faster than the competition).
Quote:
Originally Posted by punter11235
The reason I am asking this is that I am interested in Neural Network based engines. Chess (my main game) is very far advanced now and a difficult ground to contribute meaningfully. Backgammon software looks like much easier target.
About 25 years ago I asked myself whether writing a chess engine or an BG engine should be my next spare time project. I judged that chess will probably need 2-3 years to get something competitive, so I decided for Backgammon being quicker to get something reasonable . Boy was I off....