Author: Uri Blass
Date: 04:37:47 06/29/04
Go up one level in this thread
On June 29, 2004 at 05:19:46, Fabien Letouzey wrote: >On June 28, 2004 at 21:10:40, Uri Blass wrote: > >Hi Uri, > >>I do not understand the reason for the name of the following function >>It does not check if a square is empty but only if the square is not a pawn. > >>static bool square_is_empty(const board_t * board, int square) { >> >> ASSERT(board!=NULL); >> ASSERT(square_is_ok(square)); >> >> return !PIECE_IS_PAWN(board->square[square]); >>} > >This module is the pawn hash table. I need to make sure that the position of >pieces does not interfere. As far as this module is concerned, a square that >does not contain a pawn is "empty". 1)I think that the name of the function is misleading and it is better to change it to square_does_not_contain_a_pawn. 2)I think that the definition of backward pawn should be dependent also on pieces but I dount if the definition of latest movei is better because it means that a pawn that is supported by the king can be defined as backward(white pawns a3 b4 and white king a4). I also thought that speed optimization like pawn hash tables is too early at the stage of movei and it is better first to find correct evaluation of pawn structure but maybe punishing blocked backward pawn by a piece is not productive because it means in the endgame that a3 is backward when you have a3 b4 and king at the square a4. I do not find big speed panelty from adding backward pawns but maybe in the case of movei speed is also less a problem because I use bitboard for pawnstructure and I can identify suspect for backward pawns by one bitboard so I do not need to do a loop on all the pawns to find the pawns that are suspected to be backward pawns. Note that I have bitboard for weak isolated pawns that is not used in the program now(it was used in the past to punish isolated pawns only if they are not passed pawns in all the versions that were tested by people before 00_8_247 but I found that changing it to punish every isolated pawn by 0.1 pawns is probably better). 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.