home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #3 / amigamamagazinepolishissue1998.iso / szachy / gnu / doc / article.2 < prev    next >
Text File  |  1995-05-02  |  7KB  |  129 lines

  1.  
  2.  
  3.                  GNU Chess: Experiences Learned
  4.                       with Communal Sharing
  5.                        by Stuart Cracraft
  6.               (and contributors to the GNU Project)
  7.  
  8.  
  9. Limited sharing has characterized the  computer  chess  community
  10. for the past two decades. Occasional research articles give hints
  11. and suggestions for useful features, but rarely reveal  the  real
  12. details  of  the  critically  important  advances.  We  will here
  13. describe an effort underway (titled "GNU Chess") to create a more
  14. open and friendly environment of sharing.
  15.  
  16. GNU Chess is part of Project GNU, a large-scale effort  in  which
  17. the philosophical goals are far-reaching. We will not go into any
  18. great depth about these goals as they relate to the  larger  pro-
  19. ject, because these are described elsewhere [1]. However, we will
  20. mention the basic issues and the changes we hope to encourage.
  21.  
  22. The start of the GNU Chess project was a natural  result  of  the
  23. experiences  gleaned in writing a chess program. While the author
  24. was at a progressive academic location [2], he was able  to  con-
  25. ceive the idea of a communal chess program only after much heart-
  26. ache.  During the period of writing the initial  version  (which
  27. has  since  undergone  many improvements and whole revisions), it
  28. became clear that the best features and most  useful  hints,  the
  29. very best of the heuristics, were hidden and difficult to find in
  30. the literature.
  31.  
  32. Sprinkled across many books, research papers, magazine  articles,
  33. accumulated in the community, during the past 25 years, there was
  34. literally a void of true,  empirical  programs.  Locating  usable
  35. programs was difficult. Many programs were the result of academic
  36. work in "ivory towers", and hence were inaccessible to the common
  37. man. Other programs were sequestered in research think-tanks. Na-
  38. turally, developers  of  commercial  programs  carefully  guarded
  39. their  source  in order to protect their investment. On the other
  40. hand, a few chess program source listings had actually been  pub-
  41. lished, but these were not really very strong, often written in a
  42. non-general language, and frequently more pedantic  than  practi-
  43. cal.
  44.  
  45. The idea of a  reasonably  strong  communal  program  solidified.
  46. When  we  refer  to  a communal program, we do not regard this as
  47. public-domain software. Rather, we refer to a  program  which  is
  48. under  the shared authority of a number of individuals, the prin-
  49. cipal contributors.  These individuals have experienced and real-
  50. ized  the  positive  results of a sharing community and the rapid
  51. improvements that come through contributing in such a  community.
  52. Further, these individuals devote time and energy to coordinating
  53. the contributions of other individuals.  While  they  exercise  a
  54. certain editorial right, this is usually not exercised arbitrari-
  55. ly; instead, a discussion is often undertaken.
  56.  
  57. Eventually, a working C program that played chess was  available.
  58. The  coordinating  institution  for Project GNU, accepted our
  59. suggestion of inclusion of a chess program in the  GNU  distribu-
  60. tion.  Initial  distribution of GNU Chess commenced in October of
  61. 1986. Interest in the project increased rapidly.
  62.  
  63. Contributions came in from many places and people. Interfaces  to
  64. X-windows  and SUN-windows were donated, thus allowing very fancy
  65. chess fonts on bit-mapped screens. Also, contributions  involving
  66. large  portions  of  opening books such as MCO and collections of
  67. master games  were  added  to  the  distribution.   Additionally,
  68. tree-search modifications and heuristics were provided, and occa-
  69. sionally even entire rewrites.
  70.  
  71. The program advanced in strength by several USCF class  intervals
  72. during  a  period  of  less than one year. During this time, many
  73. unusual features and enhancements were added to the program, usu-
  74. ally under the coordination of two or more people, with one work-
  75. ing in a distant-advisory capacity to the other. Frequently, gra-
  76. duate  students  would give up significant time from their thesis
  77. work to devote energy to contributing. Their  corporate  counter-
  78. parts would often give up project time to make their donation.
  79.  
  80. Contributors would often enter the project in a very forceful way
  81. and  then  having made their contribution, learn the viability of
  82. communal sharing once others had stepped in  and  contributed  to
  83. them, thus providing considerable reinforcement. Frequently, con-
  84. tributors would then go into "hibernation" for a long  period  of
  85. time,  but  most  of  them remained open to contributing and were
  86. helpful when asked to reprogram their particular contribution  in
  87. a more recent version.
  88.  
  89. GNU Chess has made great strides in relatively little  time.   It
  90. has  run  on  many  different hardware architectures and has been
  91. compiled by a number of C compilers. A sampling of  the  com-
  92. puters  on  which  the  program  has  run is: National 32032, Vax
  93. 11/750, 8550, 8600, 8650, Motorola  68020,  CCI  5/32,  CCI  6/32
  94. (tahoe), Cray XMP, SUN Sparc-1.
  95.  
  96. It is our belief that GNU Chess will stimulate graduate  research
  97. in computer chess theory and practice.  When students are able to
  98. easily obtain a state-of-the-art program in  order  to  test  out
  99. their  ideas, they will no longer need to reinvent the wheel. The
  100. students will be able to investigate their  research  areas  much
  101. more thoroughly, because they will spend more time on the specif-
  102. ic research areas they are concerned about.  Basically, GNU Chess
  103. "frees up" time in order to get on to more fundamental issues.
  104.  
  105. We also feel that as other researchers  gain  trust  in  the  GNU
  106. Chess  project, they will be more likely to release their results
  107. directly and rapidly, through journal articles,  or  directly  to
  108. the  GNU  project,  and  in fact become contributors and join the
  109. present list. At the very  least,  a  communal,  ever-growing
  110. program will encourage the few "closeted" researchers to be some-
  111. what more open in their approach to disseminating advances.
  112.  
  113. In whatever form it takes, the  progress  toward  elaboration  of
  114. machine  chess  is  ongoing,  and  we hope that GNU chess will be
  115. helpful to the community. Copies of GNU Chess source and  "book",
  116. as  well  as  additional experimental code are available from the
  117. Free Software Foundation [3] or the author [6].
  118.  
  119.  
  120. [1] The GNU Manifesto, Richard Stallman, Free Software Foundation, Inc.
  121.  
  122. [2] University of Southern California, Information Sciences Institute.
  123.  
  124. [3] Free Software Foundation, Inc. 675 Massachusetts Ave.,
  125.     Cambridge MA 02139.
  126.  
  127. [4] Stuart Cracraft, P.O. Box 2841, Laguna Hills, California.
  128.     92654-2841., cracraft@wheaties.ai.mit.edu.
  129.