Accidentally Cheating at Backgammon

Why players perceive unfairness in Backgammon software

On a regular basis, inexperienced Backgammon players voice opinions about how a certain computer program or game server cheats.  The stochastic nature of the game lends itself to this kind of perception on the part of human beings.  Generally, there are a few primary reasons for this type of belief.

First, novice players often fail to recognize the complexities of the game of Backgammon, so what they perceive as an unnatural number of “lucky rolls” are not (necessarily) due to luck, but rather due to skillful play on the part of the opponent.  Expert players tend toward positions where a greater number of rolls would be considered good (i.e., “lucky”).  A higher percentage of good moves tends to make the dice appear biased in ones favor, and it is also key to good checker play.

In many cases, players also fail to understand the nature of truly random numbers.  It is often stated that, say, a certain number of doubles in a row indicates…  excuse me…  “proves” that the virtual dice are unfair when, in fact, a truly random number generator would have to produce any arbitrary sequence (whether or not a pattern is perceptible) given enough rolls.  Of course, we are talking about pseudo-random number generators (PRNG), so they are, by their very nature, not truly random.  However, one would have to do an actual study/count of the dice rolls to make any conclusion about any particular PRNG.

The reason for this need to analyze a PRNG scientifically, rather than anecdotally, seems fairly obvious.  Human beings have selective memory, which means that we tend to recall things that are out of the ordinary, so a number of doubles in a row stands out, whereas a statistically identical sequence of rolls that do not seem to show a pattern are not reported.  Likewise, a few very good (or very bad) rolls are more memorable than many run-of-the-mill rolls.

Related to this is the concept of apophenia, which is the human “experience of seeing patterns or connections in random or meaningless data.” [from Wikipedia]  Our minds have evolved to recognize patterns, so we can sometimes perceive things that are not there.  This is how people see images in clouds, hear music or sounds in white noise, and imagine divine imagery in oil stains or burnt toast.

All of these factors make it very easy for an average person to perceive unfairness in Backgammon software or servers (even in games against other human beings), and even trained experts can be fooled.

How experts demonstrate that Backgammon software is fair

There are a few key points that are usually made by experts when arguing that a particular Backgammon program does not cheat.  First, of course, one generally describes some of the aspects of the perception problem, as listed above.  In particular, reports are almost always anecdotal, so they can be dismissed quickly as having no scientific validity until somebody does an actual count and statistical analysis.

To dismiss accusations of manipulated dice (by software), the suggestion is to manually input dice rolls, which most (decent) programs allow, according to the rolls of physical dice recorded meticulously, or by changing to an alternative PRNG.  If the results stay statistically consistent, that argues against the idea that the rolls are manipulated.  Another common argument is that programs can “look ahead” to see which rolls are upcoming and make moves based on this prior knowledge, and manual input of dice rolls also removes this possibility.

Another method to test if dice rolls are being artificially manipulated is to switch sides and look for discrepancies.  In other words, start a game (or save one in progress) with a particular random number seed and play the rest of the game, recording the dice rolls for each side.  Then, restart (or load) the game and play the opposite side.  If the dice rolls remain the same, then no manipulation was done to bias the outcome.

A final, less scientific, approach is the simple “Why?” method, wherein one looks at the reasons why (and how) a programmer might decide to write a biased program.  Speaking as the primary programmer for MVP Backgammon Professional, from MVP Software, I can assure you that cheating would add a whole extra layer of (unwanted and unnecessary) complexity, so I certainly did not and would not include such code.  In fact, accusations of unfairness were troubling enough to MVP for the first version of the program that our version has a replaceable PRNG library so one can write ones own (with whatever extra checking is desired).

Possibility for Backgammon software to cheat without malice aforethought

This whole topic was reinvigorated when yet another thread appeared on rec.games.backgammon recently, entitled “Jellyfish.  Cheating or just Lucky” [links to Google groups].  Through dozens of messages, some people suggested/argued that the Backgammon program Jellyfish seemed to cheat, while two other popular programs, GNU Backgammon and Snowie, did not.

Interestingly (and, n.b., anecdotally), when testing MVP Backgammon, I had a similar experience.  I was simply testing relative strength with a series of 25-point matches between my program and these others.  Whereas the strength of my neural network was comparable to the others, it got beaten significantly by Jellyfish when it rolled the dice.  When MVPBG rolled, it was much closer.  As a final test, I played one match with manual rolls, and it was again close.  At this point, I figured out the likely problem (leaving alive the possibility that it was just sheer chance).

The whole purpose of a neural network is to discover connections and patterns in provided data, and the conclusions are affected by the design of the inputs (essentially, which raw data is supplied) and, of course, the requested output(s).  In our design, we basically supplied the number of checkers on each point (in a special format), the number on the bar, and the number borne off.  This specifies a pure position in the game (with no knowledge about moves or rolls), and our outputs were designed to estimate the probability of each potential game outcome (win, loss, or winning/losing either a gammon or backgammon).  The neural network was only used for evaluation; the selection of moves was based on the evaluation of the resulting position (and cube decisions were calculated mathematically from the neural network outputs).

Theoretically, we could provide irrelevant inputs (e.g., outside temperature) and during training, their influence on the network would tend toward zero.  However, providing somewhat related data, such as the last game move, could give the neural network just enough information to begin to anticipate an outcome and bias the outputs.  More directly, providing the current dice roll, or perhaps designing the neural network to rate individual moves based on that roll, gives the network additional information that could be used to actually predict the next pseudo-random roll, especially if the particular PRNG is not very good.  After all, guessing what the next roll would be based on the position and previous roll is exactly the kind of task that neural networks are designed to solve.

Based on this observation, I suggest that it is possible that the programmers of Jellyfish may have inadvertently, and with no malicious intent whatsoever, provided their neural network with just a little too much information, and it may have taken that information to (at least partially) figure out the random number sequence and then draw conclusions that were not intended.

This would be a very interesting (and perhaps slightly startling) example of emergent behavior in a computer system.  It would, however, explain why a program could pass all of the tests to “prove” it is not cheating, but still have an observable bias when using its own dice.  I suppose we could call it “computer intuition“.  Of course, without more scientific study, it could still just be called “luck“.

Most Popular Solitaire is #1!

One of our solitaire games tops the Apple Downloads charts.

As I mentioned in a previous post, Apple had stopped updating the pages on its Apple Downloads site back in March, so Most Popular Solitaire, our solitaire title with 30 of the most popular games, was reliably in the top 15 on the (dynamic) ‘Top Downloads’ list on the left of each page but was not listed at all on the ‘Most Popular’ pages in the ‘Games’ category.  (As of this posting, Most Popular Solitaire 2.02 is #11 of all Apple downloads, including Apple’s own products.)

This morning, though, Apple finally updated the pages and Most Popular Solitaire is at the very top of all game downloads, listed as #1 on both the Games: Most popular and Cards & Puzzle: Most popular pages.  Sure, this position is likely to be fleeting, especially now that new submissions are being posted again, but it feels good for the moment.  Of course, some of those new submissions will be from Goodsol Development, so we will be looking to match this success and get more of our games to the top.

Thanks to Apple for finally getting this fixed.

More than Just a Name

Most Popular Solitaire is the most popular solitaire game for Mac OS X.

The Good News over the last few weeks has been that our solitaire title, Most Popular Solitaire, featuring 30 favorite solitaire games, has proven to be the most downloaded solitaire game at Apple Downloads.  Ever since the latest update, Most Popular Solitaire 2.02 has been receiving amazing numbers of downloads, even eclipsing the Windows version of Pretty Good Solitaire.

Most Popular Solitaire appears on the ‘Top Downloads‘ list on the left side of every Apple Downloads page, and has consistently done so since shortly after its release.  Charting as high as #7 and only dropping off for a single day.  (As of this writing, MPS is ranked at #12.)  Note that this is for all downloads from Apple’s site, including such packages as iTunes, Safari, and Mozilla Firefox.  At times, our solitaire game has been ranked higher than QuickTime, and no other solitaire game has appeared on the list.  In fact, we have regularly had the most download game (period).

Now comes the Bad News.  Whether it is due to some oversight in the midst of the iPad excitement, or related to the recent change to remove the ‘Downloads’ link from the main Apple page (in favor of “iPad”), or just a run-of-the-mill screw-up, the ‘Most popular’ pages for each category are not being updated, and this problem has lasted for three weeks now, which means that these pages show the top downloads from just before our game update was released.  It is clear that Most Popular Solitaire should be ranked #1 on the Cards & Puzzle: Most popular page, and probably no lower than #2 on the Games: Most popular page.

Now we still have the problem that traffic is falling off due to the lack of updates, and assuming that the problem will be fixed (hopefully soon), there will probably be a frenzy of product submissions, especially with those already in the pipeline, and our products could become lost in the noise.  Since Apple Downloads is a very important distribution point for Mac OS X titles, this issue is already impacting our marketing.

Despite this inconvenience, development for this platform is continuing apace, and there should be an official announcement about Pretty Good MahJongg Mac Edition in the very near future, as well as one for a related platform, hinted at the end of the most recent post at A Shareware Life.

In any event, I am currently enjoying an absolutely beautiful day, with summer temperatures, bright sunshine, and the stress-free knowledge that all of our business and personal taxes have long since been filed.  Happy Tax Day!

Most Popular Solitaire 2.02

Our entry level product for Mac OS X and Windows is updated.

This week, Goodsol Development released Most Popular Solitaire 2.02, a maintenance release of this popular solitaire title.  The product contains 30 of the most popular solitaire games, including FreeCell, Spider, and Klondike (known to many as simply “Solitaire”), plus 13 more bonus variants (not available in the evaluation version).

Ostensibly, this update contains a few bug fixes and does not change much about the product itself, though internally it takes a sizable step forward.  This version brings the code up to the latest (properly tested) version of the Goodsol Solitaire Engine, so future updates will be easier to build and maintain (on multiple platforms).

Most Popular Solitaire is available for only $16.95 via secure server, and trial versions are also available for Windows and for Mac OS X.

More is yet to come.

A couple of weeks ago, I decided to challenge myself to completing three products in three weeks.  I have been sequestered in my office, for the most part, since then.  As much as I would like to proclaim the two Most Popular Solitaire 2.02 SKUs as two of those, the truth is that they were not even considered, so there are still three products (and SKUs) yet to come, albeit not next week.

My status is that the first priority, a full Mac OS X port, has taken longer than originally anticipated, but it will be announced shortly.  The second project, extending a recent product to operate on a new platform, has been forcibly pushed back for at least 9 more days.  (You figure it out; I cannot talk about it.)  The final product in this group, Pretty Good Solitaire Mac Edition 2.20 (with 100 more games and a few new features), is making good progress but…  there is only so much we can do at once.

Finally, although I have not had any time for Facebook during my challenge, I will tell you that you — yes, you! — can now become a fan of Pretty Good Solitaire.

Pretty Good Solitaire Mac Edition 2.11

An update to our primary Mac product is published.

Goodsol Development released Pretty Good Solitaire Mac Edition 2.11 last week.  This updated version is a maintenance release that adds no features, but fixes a number of issues that were discovered in the previous version, including a couple of obscure crash bugs.  It is definitely a recommended update, and it is free to all previous PGSME customers.

Pretty Good Solitaire Mac Edition features 200 different types of solitaire games using standard playing cards, plus an additional 45 bonus games in the full (purchased) version.  You can download an evaluation version, or just purchase via secure server for only $24.95.  For more information on the product, please visit http://www.goodsol.com/mac.

This is our third or fourth product release in 2010 (depending on how one counts), and the regular release schedule should continue for a while yet.  Upcoming releases will include Pretty Good MahJongg Mac Edition, the first version of our MahJongg solitaire game for Mac OS X, and Pretty Good Solitaire Mac Edition 2.20, which will increase the game count to 300 (plus even more bonus games).  We also have some other titles planned in the near future, so stayed tuned for more announcements (soon).

FreeCell Plus 4.00

A new FreeCell solitaire game for Mac and Windows

Today, on the 14th anniversary of version 1.0, Goodsol Development published FreeCell Plus 4.00, a major update to its basic collection of FreeCell-type solitaire games.

FreeCell Plus 4.0 is an entry-level collection of 8 solitaire games, including the original FreeCell (with compatible deals), plus several similar card solitaire games, including favorites such as Sea Towers and Penguin.  The registered version includes 4 more bonus variants, all for only $9.95.  As with all of our products, one can download trial versions from the FreeCell Plus web site (or for Windows or for Mac OS X directly).

This particular update has been interesting because the previous version, FreeCell Plus v3.0, was released way back in 1998, for Windows 3.1!  Aside from being a less expensive product for FreeCell lovers, this title makes two new games available on the Mac side (and in Windows climb mode): Two Cells (standard) and Three Cells (bonus game).

We are just getting ramped up for a very productive year, with two releases already, plus three or four more in the pipeline for the next couple of months.

Goodsol Solitaire 101 Mac Edition 2.00

A new product release for the New Year

Last week, Goodsol Development released Goodsol Solitaire 101 Mac Edition 2.00, as our first new product for 2010.  Now equivalent versions of Goodsol Solitaire 101 are available for both Windows and Mac OS X.

Goodsol Solitaire 101 is a collection of 101 of the most played solitaire games the world over, plus 34 bonus games for customers, and it includes support for climb mode.  You can download the product for Mac OS X here (or for Windows here) and purchase the game now for only $19.95 here.

In the several days since its release, Goodsol Solitaire 101 Mac Edition 2.0 has (as of this writing) taken the #4 position in the Cards & Puzzle category at Apple Downloads, which translates into #9 in the general Games category.  (Most Popular Solitaire 2.01 is still hanging in there at #15 of the 20 games on the first list, too.)

This release is the first of many expected throughout 2010, including some new products, major upgrades, and probably support for a new platform as well.  There are already two more products scheduled for publishing in the next few weeks.  This New Year is starting out to be as strong as last year ended, and I hope only to build on this momentum.

Beatles-style sweep of the top 3 positions, anyone?

Pretty Good Solitaire Mac Edition 2.10

A major update to our best-selling Mac solitaire game is published.

Last week, Pretty Good Solitaire Mac Edition 2.10 was released by Goodsol Development, capping a very successful period of development.

Pretty Good Solitaire Mac Edition 2.10 adds 99 new games since the previous version (2.0), bringing the total to 200 games, nearly double the previous count.  The full (purchased) version includes a few more bonus games, so our Mac users now have access to 245 solitaire games, and this is a free upgrade to all previous PGSME customers.

What makes this particular release special is that, for the first time, Mac users have access to game features that are not (yet) available to Windows users.  In particular, PGSME includes climb mode for all of the 200 (+45) supported games, which gives users of this title access to 99 (+11) climb mode online high score listings that are not yet accessible from any of our products for Windows.  (Goodsol Solitaire 101 supports climb mode for all its games, though.)

Pretty Good Solitaire Mac Edition 2.10 is available for only $24.95 and can be ordered via secure server, and you can get the (optional) CD for only $7.50 more.  A 30% discount is available for registered Pretty Good Solitaire [Windows] users.  Of course, as with all of our game products, a trial version is available for download.

But wait!  There’s more!! PGSME 2.20, with 300 games, has already been announced for release in 2010, and it will be a free upgrade for everybody who purchases the current version.  Buy now!

Most Popular Solitaire 2.01

A maintenance release of our popular Windows and Mac game is released.

Last week, Goodsol Development published Most Popular Solitaire 2.01, an update to this title available for both Windows and Mac OS X.  This update fixes a couple of bugs that were uncovered since the release of MPS version 2.00 back in May.

Most Popular Solitaire is a collection of 30 of the most popular solitaire games, including Klondike (a.k.a., Solitaire), FreeCell (same deals as Windows FreeCell), and Spider (plus the One Suit and Two Suits variants), as well as some more unusual games, such as Crazy Quilt.  There are 13 more bonus game variants for registered users, for whom this is a free (and recommended) update.

If you are looking for a fun collection of solitaire games, but feel overwhelmed when confronted with hundreds of different games, try Most Popular Solitaire.  You can download and try either the Windows 98/Me/XP/Vista/7 version or the Mac OS X 10.4+ version, or you can simply and safely purchase online for only $16.95 (with an optional CD for $7.50).

Note that the Windows and Mac OS X are compatible, such that all initial deals are identical, saved games can be exchanged between platforms, and they both use the same online high score tables.  This allows for result comparisons and discussion of games in the (active) Goodsol discussion forum.

(Yes, we have been very busy on the development side lately, and an even bigger release is scheduled for next week…)

Goodsol Solitaire 101 version 1.02

Another maintenance update for this Windows solitaire product is released.

Goodsol Development has published Goodsol Solitaire 101 version 1.02, an update to this popular solitaire title for Windows.  The product features 101 different types of card solitaire, as well as 34 more bonus games when the full game is purchased.

This free update fixes the few bugs reported since GS101 version 1.01, which was released back in April, and is recommended for all users.  Fortunately, there were no issues associated with the release of Windows 7, so the software is fully compatible.  (This should be the last Windows-only release of GS101, as the Mac OS X version is expected soon.)

For more information, please visit the Goodsol Solitaire 101 web site, or just download the trial version now and try it.  The program can be purchased now for only $19.95, with an optional CD available for $7.50 more.