|
What made you
start to develop
BGBlitz?
My main hobbies are Backgammon and software development (the later
is also my profession), so combining both was an obvious thing to
me. And I ever found there was a vibrant scene in programming
board games (Chess, Go, Shogi etc) just Backgammon looked without
much activity to me, so I wanted to contribute to change that :)
Tell us about the history of BGBlitz?
Well I started BGBlitz back in 1995. I thought something like
Chessbase was missing, a software being able to replay and analyze
games and being able to plug in several AIs to play against. I
started it in C++ and then in 96 I came in touch with Java. Java
looked pretty promising to me. Doing all in my spare time, I had
not enough time to develop BGBlitz further and analyze whether
Java is well suited for serious programming, so I thought porting
BGBlitz to Java was a good test and would give me portability for
very little effort.
What have been the biggest challenges you have faced in its
development?
Although there has been some really ugly errors to find and
developing the AI was pretty difficult, there was no real biggest
challenge. The problem is more with the general handling of a
software of this complexity. The larger your software grows, the
more difficult to manage it gets, and this not increasing linearly
but exponentially. I don't know whether anyone can imagine how
much code such a program is. When you would print a listing of
BGBlitz and you would print 10 pages per minute, each with 50-60
lines of code, the printer would be busy more than 3 hours, more
than 2000 pages.... It's like a 2000 pages cookbook without
pictures....
Further, you don't make a real blueprint when you start such thing
as a spare time project. If you would do, you would realize how
much time you need and you won't ever start. And when you do
things in your spare time, you often work at the evening and at
night, a time when you are often pretty tired already.
Sometimes not having made a blue print or working at night hurts,
but overall I'm pretty satisfied with the internal quality and
stability of the code.
If you could change one thing about BGBlitz what would it be?
I would have started with the AI. At the beginning time the
competing programs were in their infancy too, so it would have
been easier to get more momentum for BGBlitz. And the AI is simple
the most important feature.
How long will you continue to develop BGBlitz?
Until it has the undisputed best AI :) and as long I like to do
it. Currently I can't see an end, although there are other things
that might be interesting projects too. The problem is that I have
only my spare time, so I can't do everything I want.
What more would you like to do with BGBlitz?
BGBlitz runs as AI on several of the largest servers. It runs on a
lot of operating systems and together with Markus Hervén I brought
BGBlitz to mobile phones. I'm pretty satisfied with all that.
What I would like to do is, use the whole stuff to implement some
backgammon variants I like to play, but this has to wait.
What new features would you like to see implemented?
Well my roadmap is:
2.6: (july/aug 2008)
====
- new AI. The first new AI since mid 2006. It's about 1.1 points
better in 100 cubeless games on 1-ply (ready)
- improved rollouts. (user interface, better integration etc.) (In
progress)
- better match database stuff with a real database which can be
used for other things later (ready)
2.8 (Nov 2008/Feb 2009)
===
- Match analysis (Maybe only with HTML generation)
- User statistics
3.0..3.2
===
- new AI.
- new user interface.
- maybe some very new things I'm thinking about
How do you think BGBlitz's playing strength compares to Snowie
4 and Gnubg 0.9?
That is a very difficult question. How do you measure it? Till now
there were only two attempts that give some real insight. Michael
Depreli's Benchmark of more than 600 difficult positions and
Torsten Schoops "Big Bot Shootout".
My best guess, is that currently GnuBG has a slight edge, maybe in
the range of 5-15 rating points. I would be very astonished if it
would be more. With Snowie? In 1000 25 point matches BGBlitz was
slightly ahead (not significant) against S4. So how much can be
the difference, if it doesn't show up in in 1000 25-point games? I
guess at most 5-10 rating points. And with the new AI in 2.6
things will be different again.
But what means "better" with a bot and Backgammon? Does that mean
that bot A makes always better moves than bot B? There are
countless examples where one bot errs and the others not, so you
have to crosscheck for any difficult position. And for any
practical purpose the difference in playing strength doesn't
matter because all three are playing on super human level.
What do you think BGBlitz offers that Gnubg does not?
I think BGBlitz is pretty user friendly, is easy to install,
pretty easy to use, the tutor works nice and has very attractive
graphics.
Do you think we will see a significant increase in strength in
backgammon computers over the next ten years?
First, I don't think we have the best possible bots yet. GnuBG
makes in some situations strange moves, a whole book is dedicated
to Snowie errors and BGBlitz has it's blind spots too. There will
be quite some way until we see the perfect bot. We might even find
that theory changes again to romantic moves like the 2-1 slot or
in other unexpected ways. But don't ask me how much it can
improve, I guess 0.05 in cubeless games is an upper bound, but
that is just a wild guess.
Another thing is whether the community will get something better.
Snowie 4 is from 2002. The AI of GnuBG is IIRC unchanged from
0.14, so the only improvements in the last 4 years were BGBlitz in
2006 with 2.0 and in a few weeks with BGB 2.6. Simply put, it
seems I'm currently the only one working on a Backgammon AI of a
decent strength and making it available. It would be better if
more people would work on that topic. BGBlitz is able to host
several AI's so the work would be just a decent AI and don't have
to care for the rest, a much easier effort, but this had attracted
no one till now :(
Tell us about your work with Partygammon and others providing
AI to their servers.
It started with Play65/GE that asked for the integration of the
BGBlitz AI in their server. I thought about how to do it and
suggested a solution to them. It worked pretty well and there was
only one quirk found in the first few month.
The other companies just asked and my architecture seems to fit
quite well ;) It's pretty much a shrink wrapped software and
usually they get it integrated with just a few hours of support.
One lesson I learned: Don't hand out your phone number, if the
time zones are vastly different. Getting a call at 6:00 am at a
Saturday morning is not so great ;))
What do you do outside of programming
BGBlitz?
Well, I'm working as a software developer in my day to day job.
There is my family, my wife and my two daughters, I like to read
fiction and non fictional stuff and hear a lot of music. For other
things there is only very little room left.
ciao
Frank
|