4.4BSD/usr/src/games/chess/DOCUMENTATION/ARTICLE

[This article was reproduced from a GNU Bulletin.]

                          GNU Chess
                      by Stuart Cracraft
		copyright 1987 Stuart Cracraft


   GNU Chess is a communal chess program. Contributors donate their
time and effort in order to make it a stronger, better, sleeker program.
Contributions take many forms: interfaces to high-resolution displays,
opening book treatises, speedups of the underlying algorithms, additions
of extra heuristics. These contributions are then distributed to the
large user-base so that all may enjoy the fruits of our labor. The
original and continuing purpose of this project is to permanently end 
the rampant hoarding of computer chess software that has been the 
case for the past 20 years.

   Many people have contributed to GNU Chess. Their contributions have
improved the program from being a patzer (weak program) to being a
grandpatzer (decently strong program). In its growth since initial
release, GNU Chess has gone from approximately class D to expert
strength. It beats the Fidelity Excel commercial unit rather handily.

   GNU Chess's structure is a hybrid of the Shannon Type-A and
Type-B methods. It conducts a full-width search to a fixed-depth
and then continues with a quiescence search for many more ply.
This quiescence search helps the program find positions which
can be safely evaluated and which are not too turbulent. If
a terminal position is too turbulent, the evaluation will be
highly inaccurate. Additional searching by investigating series
of captures, checks, and other potentially imbalance-producing
moves is quite helpful.

  GNU Chess will sacrifice pieces in order to reach known winning
endings. Also, it uses a trade-down bonus to encourage the stronger
side to trade off certain types of pieces thus reaching a more
simplified and therefore ostensibly "clearer" position.

  GNU Chess has certain types of knowledge regarding easier endgames.
This allows it to play these endings somewhat better than might be
expected.

  GNU Chess has time heuristics that it uses to improve its handling 
of time-controls and hasten its making of "obvious" moves.
 
  GNU Chess is interfaced to the SUN Windows and X Windows
display protocols and can display its pieces in elaborate format,
similar to chess diagrams.

  GNU Chess has an opening book which consists of many variations
from MCO (Modern Chess Openings).

  For comparison purposes, GNU Chess running on a VAX 8650 is
stronger than the famous Chess 4.5 running on a CDC 6400.

  We wish to acknowledge the contributions of the following
individuals: (in alphabetical order) Jim Aspnes, Wayne Christopher,
Steve Dougherty, David Goldberg, Richard Greenblatt, David Kittinger,
Richard Stallman, John Stanback, and Ken Thompson.

  Contact information: The author may be reached by a variety of
methods. Via U.S. mail: Stuart Cracraft, 5 Via Amistosa, Suite G,
Rancho Santa Margarita, Ca. 92688 USA. 
    By Internet: 'cracraft at wheaties.ai.mit.edu'
The author may also be contacted via the Free Software Foundation, Inc.
675 Massachusetts Ave.,Cambridge MA 02139.