🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.chess
Article #5329

Re: Errors in GNU opening lib

#5329
From: Stuart Cracraft
Date: Mon, 17 Jan 1994 05:26
109 lines
4723 bytes
In article <1994Jan12.165834.11527@Informatik.TU-Muenchen.DE> pein@Informatik.TU-Muenchen.DE (Ruediger Pein) writes:
>
>
>
>Hello,
>
>I have GNU-Chess 3.21 with an opening library a bit longer then 50.000 bytes.
>As me too, I'm writing a chess program, I included a procedure that also reads
>GNU openings. I recognized about 30-50 different errors in the opening book which
>I corrected nearly all. I received the opening book several times through several
>sources, so I think it's the "official" one.
>
>So, didn't you know of the errors, dose GNUChess ignore wrong moves, and are you
>interested in the corrected version ?
>

Yes please. Send it to cracraft@ai.mit.edu.

>By the way, is there a specification that describes how GNU Books have to be
>written ?
>

I have enclosed something for you at the end of this message.

>Do I have to pass the COPYING File with the opening library if I include it in my
>own Freeware chess program LASKER, or if I include a converted version of it.
>Or is it forbidden to give it along with my own program ?
>
>Ruediger Pein

Yes. You must pass along COPYING with the opening library.
Please don't shortchange/circumvent the efforts of the Foundation.


With this release of Gnuchess the book file is being switched from a text-based file to
a binary file. Where in the past the book file was "gnuchess.book" now the primary 
book file is "gnuchess.book.data". It is intended that text book files will only be 
used to generate the binary file.

The GDX based bookfile is the standard binary bookfile and should be used. This means the -DGDX
compile option should be used and the instructions for generating a GDX book followed. The Makefile
will generate a GDX book for the basic gnuchess.book text file if "make install" is entered or
if "make gnuchess.book.data" is entered. Larger opening databases can be created using the opening
data in the misc directory. If you use other than GDX based books follow the instructions below.

COMPILE TIME

There are now three choices for the binary book file at compile time. 

Compile option -DGDBM creates a GNU-dbm based book. It is fast carefree but
not very space efficient and slow to generate. It is highly recommended that it
be done on a memory based file system.

Compile option -DGDX creates a random file based book file. It is space efficient
medium fast to generate, and allows large books.

If neither of the above options is choosen the memory based book is generated.
The size of the book is then dependent on the memory you have available.


Creating a Binary book file.



*GDX based.

GDX based creates a disk based hash file. You must specify the size of the file.
It is the most efficient book to use.

	gnuchessr -b textfile -B binaryfile -S #entries [-P plys]

"#entries" is the number of unique position/move combinations  that will be kept plus an extra 20-30%
since this is a hashfile. The size of the file will be:

	12 + (#entries)*12

A book with 528k moves which resulted in 319k entries. There can be
multiple entries for a position. I put this in a binary file with space 
for 450k entries and it took about 5 meg.




GDBM based.

Use gnuchessr.

	gnuchessr -b textfile -B binaryfile [ -P plys ]

will read the text book file "textfile" add create a gdbm file "binaryfile".
Data for 28 plys (14 moves each side) will be stored, unless the -P option
is specified. With -P you can specify the number of plys. Less plys less space.

You then just move the binary file from your memory based file system to 
the name and path specified in the Makefile for BINBOOKFILE and it will use it.


*Memory based.

Memory based bookfiles are produced just like GDX based.

Misc.

You can add entries to an existing binary file. If the binary file
exists the entries in the text file will be added to the binary file.


If possible use a memory based file system when generating a binary
book file. It will go much faster.
Technical Details
Message-ID: <2hd7i2INNi9t@life.ai.mit.edu>
Path: arc1-ca.pugleaf.net!gmd.de!newsserver.jvnc.net!darwin.sura.net!howland.reston.ans.net!usenet.ins.cwru.edu!eff!news.kei.com!bloom-beacon.mit.edu!ai-lab!rice-chex!cracraft
References: <1994Jan12.165834.11527@Informatik.TU-Muenchen.DE>

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: 10d71d,1c4e8eeec20fe035
X-Google-Attributes: gid10d71d,public
X-Google-ArrivalTime: 1994-01-16 23:17:49 PST
Path: arc1-ca.pugleaf.net!gmd.de!newsserver.jvnc.net!darwin.sura.net!howland.reston.ans.net!usenet.ins.cwru.edu!eff!news.kei.com!bloom-beacon.mit.edu!ai-lab!rice-chex!cracraft
From: cracraft@rice-chex.ai.mit.edu (Stuart Cracraft)
Newsgroups: gnu.chess
Subject: Re: Errors in GNU opening lib
Date: 17 Jan 1994 05:26:26 GMT
Organization: MIT Artificial Intelligence Lab
Lines: 109
Message-ID: <2hd7i2INNi9t@life.ai.mit.edu>
References: <1994Jan12.165834.11527@Informatik.TU-Muenchen.DE>
NNTP-Posting-Host: rice-chex.ai.mit.edu