Author: Uri Blass
Date: 12:25:23 05/16/04
Go up one level in this thread
On May 16, 2004 at 12:39:48, Will Singleton wrote: >On May 16, 2004 at 08:30:48, Uri Blass wrote: > >>Suppose that you have a book of 2^20 positions. >>Suppose that you need in average 16 bytes for every position(to store >>positions,moves and some more information like learning value for every move). >> >>I do not like the idea to store only positions in book and I think that the the >>job of making all moves in book positions to find more book moves can be done in >>the time of creating the book. >> >>I can think of 3 ways to find if a position is in book >> >>1)To do a binary search in the file that has the positions(Disadvantage:you do >>more searches in the file relative to other ways and you basically need to probe >>the file 20 times only to find if a position is in book). > >That's what I do. Easy and quick. I do not find it as easy. The problem is that I do not know a special function to do a binary search in a file and I do not like to try to write a special function for that purpose. There is bsearch that performs a binary search of a sorted array but I need to perform a binary search of a sorted file because I do not like to remember all the book in RAM. I start generating the book by doing qsort that performs a quick sort of an array. Now I need to copy the array to a file and I think that Crafty's solution is both faster and simpler than writing a special function to perform a binary search on a file even in case that the book is book of positions and moves and not book of positions like Crafty's book so alternatives 2 and 3 seems better for me and I think that 3 is the best alternative but before I try it I prefer to read what other people do. Uri
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.