Matt Ginsberg's GIB (software for Windows; $79.95), which was earlier called "Goren in a Box" but is now sensibly named "Ginsberg's Intelligent Bridge Player," is the best bridge-playing program we have seen. Although we have not been able to test it thoroughly by the time of this review, our experiences with GIB have convinced us that it performs better than a human beginner. It is the first program to pass our elementary-level suite of tests.
It is not easy to describe briefly GIB's strength as a competitor. It does quite well at some things, not so well at others. It sometimes takes actions that strike us as weird -- these instances occur disproportionately on opening lead, confirming our impression that GIB does better during the play than in the bidding; leading depends on one's "understanding" of the auction. Two other characteristics will affect its table opponents. First, it is, in real time, slow. (It was sluggish when asked to play at "average speed" on a Windows NT platform running on a machine with a recommended minimum clock rate 133-MHz Pentium processor and oodles of memory; you can ask it to play faster, but then it will play "worse," as explained below.) Second, the software huddles at unfamiliar times, perhaps invoking in humans a sense of mild discomfort. (For example, it sometimes goes into the tank when nothing other than "all pass" seems possible.) We expect all of these things to improve with time, and we hope that the author's achievement in bringing forth a product at this level will stimulate all programmers to greater heights. The flaws of GIB pale in comparison with its abilities.
GIB's key algorithms depend on the results of double-dummy simulation, and it is important for a user to understand what such a machine's choices represent. Basically, the machine deals layouts that match the predefined constraints of the situation as it understands it, then counts how many times each possible action will succeed in order to pick the best one. The relative chances of (double-dummy) success of different actions and the size of the simulation determine the probabilities that the computer will choose each option. It will not "think" about many things in the same style as a human.
For example, suppose West has to pick an opening lead against one notrump -- three notrump from,
In the absence of special state-of-the-event or opposing-methods information, human logic, which in this case uses comparative analysis, comes to the conclusion that leading the spade queen is superior to leading the heart queen. "Everyone" would lead a spade. But "no one" would have an exact idea of how often, on balance, the spade queen would gain over the heart queen; aside from the virtual impossibility of doing such an analysis with a human brain, a homo sapien West is unlikely to care, because it is not relevant to determining the opening lead.
In the large sense, computer and human may get different answers because of varying fundamental methods. The human simplifies his analysis with a (largely subconscious) symmetry argument. The computer is not programed to realize that each time it generates a simulated deal it would be appropriate to generate another one with the other three players' major suits (basically) switched. If the computer could execute algorithms of that kind in this and more complex analogous situations, it would be enormously closer to being able to simulate human mental activity.
To view some quantitative results, let's imagine that in a situation of this kind -- human reasoning picks play X without considering how advantageous it is --, on average, double-dummy, out of every 100 appropriate cases, play X will in fact lead to a relevant gain 10 times, to a relevant loss 9 times, and to no difference 81 times. If a double-dummy players were to general appropriate deals and use the results to pick its play, it would act roughly -- very roughly; these calculations were made using generous, helpful approximations -- as follows:
If it created 10 deals, it would choose X 56% of the time.
If it created 100 deals, it would choose X 59% of the time.
If it created 1,000 deals, it would choose X 79% of the time.
If it created 10,000 deals, it would choose X 98% of the time.
You can see that "sampling error" (hitting an unluckily atypical sample in the simulation) might cause the computer to reject what humans consider a clear-cut decision. The smaller the "edge," the greater the chance of such error. (This model is perhaps relevant to the phenomenon that GIB occasionally does something that strikes us as bizarre, which would be our reaction to its leading a heart rather than a spade from the hand shown.) In any case, it would be an error to think that the computer's choice necessarily represents the abstractly correct action.
When a double-dummy-simulation player makes a decision, a human evaluating its output must consider at least the quality of (or degree of agreement with) the underlying assumptions, the applicability of double-dummy analysis (which, in a given case, may or may not be relevant to ordinary play), and the possibility of sampling error. Determining exactly what to make of a computer's bridge output is not going to be easy, but we have high hopes that these investigations will be fun (as long as no one asks us to do the arithmetic).
Copyright 1999 The Bridge World. Reprinted with permission.