Author: Gerd Isenberg
Date: 13:49:43 01/23/02
Go up one level in this thread
On January 23, 2002 at 15:12:00, Peter McKenzie wrote: >Fascinating stuff Gerd. I like the way you tested it by doing a search to >verify the static evaluation. > >Are you aware that something similar (Static Mate Detection) was done many years >ago by the team who worked on the British program called Master? There is an >article in one of the Advances in Computer Chess books. It seems that you have >taken it a bit further though. > >cheers, >Peter Hi Peter, thanks. I don't remember exactly, may be i read it some years ago. I also read Levy's Computer Chess Compendum and ICCA-Journals since 93. Surely i read about it and it was somewhere in my brain. The light switched on during implementation of some eval stuff and possibly i was influenced by this article or others. Hey, a queen attacks a square, only controlled by enemy king - and not occupied by a queens friend. Why not looking for possible escapes, supported controls considering batteries and indirect defence by enemy slider through the queen? If all conditions hit and finally the Queen is not pinned in other then move to mate direction - it's mate. You have to consider, that the Queen move possibly gives escape squares, if neighbourered king squares are exclusive controlled from the queens source square but not from target. It was in 95 or so, when i first implemented an easy kind of Static Mate Detection in my old Dos-Program. Only Queen Mates near King and very specialized BackRank-Mates with RookMover, cheap statements with relative high middlegame probability to hit. The old Dos-IsiChess (engine in 386-Assembler) already used BitBoards, no rotated (640K), but an incremental updated Array of 32 BitBoards (attacks for every possible piece) and an redundant Array of 64 PieceSets (32Bit, attacked by every possible piece) for every square and two arrays to map PieceIndex to PieceSquares. The update-performance was depending on how many square controls changed after a move - rather good in opening and early middlegame, closed positions and pawn endings, not so good in open positions, very bad in Queen endings. In 2000 I started the second try, rotated BitBoards, minimimal incremental update - huge/lazy eval - pure C++ and only a few optional lines of inline assembler. cheers, Gerd
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.