article man page on 4.4BSD

Man page or keyword search:  
man Server   1065 pages
apropos Keyword Search (all sections)
Output format
4.4BSD logo
[printable version]



		 GNU Chess: Experiences Learned
		      with Communal Sharing
		       by Stuart Cracraft
	      (and contributors to the GNU Project)

Limited sharing has characterized the  computer	 chess	community
for the past two decades. Occasional research articles give hints
and suggestions for useful features, but rarely reveal	the  real
details	 of  the  critically  important	 advances.  We	will here
describe an effort underway (titled "GNU Chess") to create a more
open and friendly environment of sharing.

GNU Chess is part of Project GNU, a large‐scale effort	in  which
the philosophical goals are far‐reaching. We will not go into any
great depth about these goals as they relate to the  larger  project, because these are described elsewhere [1]. However, we will
mention the basic issues and the changes we hope to encourage.

The start of the GNU Chess project was a natural  result  of  the
experiences  gleaned in writing a chess program. While the author
was at a progressive academic location [2], he was able	 to  con‐
ceive the idea of a communal chess program only after much heartache.  During the period of writing the initial	 version   (which
has  since  undergone  many improvements and whole revisions), it
became clear that the best features and most  useful  hints,  the
very best of the heuristics, were hidden and difficult to find in
the literature.

Sprinkled across many books, research papers, magazine	articles,
accumulated in the community, during the past 25 years, there was
literally a void of true,  empirical  programs.	 Locating  usable
programs was difficult. Many programs were the result of academic
work in "ivory towers", and hence were inaccessible to the common
man. Other programs were sequestered in research think‐tanks. Na‐
turally, developers  of	 commercial  programs  carefully  guarded
their  source  in order to protect their investment. On the other
hand, a few chess program source listings had actually been  pub‐
lished, but these were not really very strong, often written in a
non‐general language, and frequently more pedantic  than  practi‐
cal.

The idea of a  reasonably  strong  communal  program  solidified.
When  we  refer	 to  a communal program, we do not regard this as
public‐domain software. Rather, we refer to a  program	which  is
under  the shared authority of a number of individuals, the prin‐
cipal contributors.  These individuals have experienced and realized  the  positive  results of a sharing community and the rapid
improvements that come through contributing in such a  community.
Further, these individuals devote time and energy to coordinating
the contributions of other individuals.	 While	they  exercise	a
certain editorial right, this is usually not exercised arbitrari‐
ly; instead, a discussion is often undertaken.

Eventually, a working C program that played chess was  available.
The  coordinating  institution	for Project GNU [3], accepted our
suggestion of inclusion of a chess program in the  GNU	distribu‐
tion.  Initial	distribution of GNU Chess commenced in October of
1986. Interest in the project increased rapidly.

Contributions came in from many places and people. Interfaces  to
X‐windows  and SUN‐windows were donated, thus allowing very fancy
chess fonts on bit‐mapped screens. Also, contributions	involving
large  portions	 of  opening books such as MCO and collections of
master games  were  added  to  the  distribution.   Additionally,
tree‐search modifications and heuristics were provided, and occa‐
sionally even entire rewrites.

The program advanced in strength by several USCF class	intervals
during	a  period  of  less than one year. During this time, many
unusual features and enhancements were added to the program, usu‐
ally under the coordination of two or more people, with one work‐
ing in a distant‐advisory capacity to the other. Frequently, gra‐
duate  students	 would give up significant time from their thesis
work to devote energy to contributing. Their  corporate	 counter‐
parts would often give up project time to make their donation.

Contributors would often enter the project in a very forceful way
and  then  having made their contribution, learn the viability of
communal sharing once others had stepped in  and  contributed  to
them, thus providing considerable reinforcement. Frequently, con‐
tributors would then go into "hibernation" for a long  period  of
time,  but  most  of  them remained open to contributing and were
helpful when asked to reprogram their particular contribution  in
a more recent version.

GNU Chess has made great strides in relatively little  time.   It
has  run  on  many  different hardware architectures and has been
compiled by a number of C compilers [4]. A sampling of	the  com‐
puters	on  which  the	program	 has  run is: National 32032, Vax
11/750, 8550, 8600, 8650, Motorola  68020,  CCI	 5/32,	CCI  6/32
(tahoe), Cray XMP.

It is our belief that GNU Chess will stimulate graduate	 research
in computer chess theory and practice.	When students are able to
easily obtain a state‐of‐the‐art program in  order  to	test  out
their  ideas, they will no longer need to reinvent the wheel. The
students will be able to investigate their  research  areas  much
more thoroughly, because they will spend more time on the specif‐
ic research areas they are concerned about.  Basically, GNU Chess
"frees up" time in order to get on to more fundamental issues.

We also feel that as other researchers	gain  trust  in	 the  GNU
Chess  project, they will be more likely to release their results
directly and rapidly, through journal articles,	 or  directly  to
the  GNU  project,  and	 in fact become contributors and join the
present list [5]. At the very  least,  a  communal,  ever‐growing
program will encourage the few "closeted" researchers to be somewhat more open in their approach to disseminating advances.

In whatever form it takes, the	progress  toward  elaboration  of
machine	 chess	is  ongoing,  and  we hope that GNU chess will be
helpful to the community. Copies of GNU Chess source and  "book",
as  well  as  additional experimental code are available from the
Free Software Foundation [3] or the author [6].

[1]  The  GNU  Manifesto, Richard Stallman, Free Software Founda‐
tion, Inc.

[2] University of Southern California, Information  Sciences  In‐
stitute.

[top]

List of man pages available for 4.4BSD

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net