Buggy-Online

Try the new online platform by the author of Buggy:

LIVE interface

Match Samb-Buggy
Media pack
N'Diaga Samb
Schedule - Results
Press review
Games
Analysed games
Photos
Videos
Rules of the match
Sponsors
Poll

Buggy
Computer tournaments
Against the humans
Technical data
Best games
Authors

Media Pack

Newsletter

Links

Contacts

 

Technical data

How does Buggy work ?

As all game-playing programs, Buggy has 3 main parts :

  1. an algorithm for generating the legal moves
  2. an algorithm for searching through the variants
  3. An evaluation function that gives a note to any position.

When the first 2 parts are done, a program can already play well enough to defeat 99% of the world population. Indeed, the program is then very strong in tactics (short-term planning). Its enormous computing capability is its biggest asset.

But, beating club players, or beating the world top players, is a different story ! In order to do so, the program has to know a lot about the game. It must understand the theory of the game, what we generally call strategy. The programmer must build a refined evaluation function, as accurate as possible, taking into account as many factors as possible. The endless problem for him is that games like Draughts or Chess, are extremely vast and complex. It is therefore very difficult to teach the computer all that the human players know (and some very simple ideas may be particularly hard to translate into a computer knowledge). Even if the program is very, very, very, very strong, you will always find a position where it plays poorly.

The more you work on a game-playing program, the more you understand how brilliant the human brain is.

If you want to know more about these programming techniques, please visit Jean-Bernard Alemanni's site. You will most likely find the answers to your questions.

Technical data about Buggy

Here are some information about the program Buggy.

  1. Algorithm : NegaScout with hashtables, ETC (enhanced transposition cutoffs), bitboards, singular sxtensions, double quiescence, extensions and pruning, full and lazy evaluation functions, pattern (shot) recognition, plus a few home-made tricks...
  2. Opening book : generated automatically from the database Turbo Dambase, then hand-tuned
  3. Evaluation function : different systems (classical, open...), passed pawns, tempo theory, endgame, etc.
  4. Endgame : the program knows the result of every position with 6 pieces or fewer (the database is 1.5 Gb large, it was computed by M. Grimminck and H. Jetten)
  5. Graphical User Interface : 2D right now, 3D in the near future
  6. File format : Portable Draughts Notation (PDN), the standard format for draughts games
  7. DamExchange Protocole : this protocole written by F. Mesander allows two programs to play each other without any human intervention. Buggy's favorite Sparring-Partner is the program Dam 2.2. They play against each other all night long.
  8. Time management : 5 different systems (blitz, Fischer system, official speed, mixed...)
  9. Analyse mode : coming soon