Author: Jorge Pichard
Date: 10:16:10 04/08/02
Go up one level in this thread
On April 08, 2002 at 12:31:03, Jorge Pichard wrote: >On April 08, 2002 at 00:07:39, Uri Blass wrote: > >>On April 07, 2002 at 22:07:30, David Dory wrote: >> >>>On April 07, 2002 at 10:15:21, Uri Blass wrote: >>> >>>>I think to build a small book for my program when the target is mainly to save >>>>time on the clock and not to learn. >>>> >>>>I do not like the idea of a big book because I do not want my program to blunder >>>>by playing a book move that the program never looked at it and I also never >>>>looked at it. >>>> >>>>I think to have the book as a text file when every line includes the following >>>>information: >>>>1)FEN of a legal position >>>>2)one book move by algebric notation(the target of the book is not to give a >>>>variety of possibility but only to save time so I am not going to give more than >>>>one move) >>>>3)maximal target time (should be dependent of the speed of the computer) when >>>>the book move is going to be played only when the time that my program expect to >>>>waste on the move is smaller than that number and in other cases my program is >>>>going to calculate. >>>> >>>>The strings in the text file should be ordered by lexisographic order from the >>>>smallest to the biggest. >>>> >>>>Every time my program plays a move in a game from a position that is not in book >>>>it should add the position together with the target time that it knows to it's >>>>book in order to prevent it from calculating the same position again. >>>> >>>>Every time the opponent plays a move my program should check if the position is >>>>in book because it is known that it is possible to get the same position in >>>>different ways so the fact that my program is out of book should not prevent it >>>>to search if the position is in book. >>>> >>>>Are there programs with free source code that do it in that way and what is the >>>>simplest program that does it? >>>> >>>>Even if there is only a free program for another thinking game that is not chess >>>>I may be interested to see the relevant source code. >>>> >>>>Uri >>> >>>When you say: >>> >>>>Every time the opponent plays a move my program should check if the position is >>>>in book because it is known that it is possible to get the same position in >>>>different ways so the fact that my program is out of book should not prevent it >>>>to search if the position is in book. >>> >>>I'd suggest saving that info to a file for later checking into, but I'd sure not >>>put it into the opening book. Seems you could dilute a good opening book into a >>>mine field! YMMV >>> >>>I think putting the FEN for every position in your opening book is more than you >>>need. Just store the moves, and your program will show you the position, on >>>screen. Are you thinking of finding the next move by searching through the >>>FEN's,? Haven't seen any like that, but it sounds creative. Curious to see what >>>get's recommended to you. >>> >>> >>> >>>Dave >> >>Yes >>I think to search through the FEN's and if they are ordered by lexisographic >>order then it should not take a long time. >> >>There is a reason that I do not like the idea of remembering the moves. >>The same position can happen in a different order of moves and I want to know >>that I am in book not only after 1.e4 e6 2.d4 d5 but also after 1.d4 e6 2.e4 e5 >>and also with opposite sides after 1.d3 e5 2.e3 d5 3.d4 > >In the same way that transposition works, for instance I have forced 1.h3 as the >first move to CTP 14.9 and depending on black's response it will converted it to >a known opening by transposition. PS: I believe that if a program has a decent evaluation most of the times it will select the best continuation regardless of what opening the opponent select, even if it is not in one of its opening line. I like the way that Sjeng is capable of automatically creating its own opponing. "From release 7.3 onwards Sjeng has an automatic bookbuilder which can use PGN databases to generate an opening book. To use it, just start Sjeng and enter 'book'. To generate a crazyhouse/bughouse book, first type 'variant crazyhouse', then type 'book'. Be sure to make the keycache large enough or the book-generation will be slow and you will end up with very large files. You must use a pure PGN database. PGN derivates like BPGN are not (yet) supported, nor is the psuedo-PGN that some other programs output. I recommend running your PGN database through the 'Extract' program by David Barnes first. It has options to strip variantions, comments and NAG's and to suppress duplicates which will significantly speed up the bookbuilding process, as well as getting rid of any psuedo-SAN." >Pichard. > > >>If I store moves I need to remember all of these games and if I store FEN's then >>I need to remember only one FEN. >> >>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.