Author: Robert Hyatt
Date: 10:05:02 01/20/04
Go up one level in this thread
On January 20, 2004 at 12:55:58, Sune Fischer wrote: >On January 20, 2004 at 11:55:20, Robert Hyatt wrote: >> >>OK. Multiply the above by 100x and turn that into times. It takes how long >>to copy a complete cache line from memory to cache and back? That is 32 words >>which is longer than _most_ PVs. Do that 100 times you can't even measure it >>over the rest of the search expense. :) > >You are not adressing the other issues, the termination stuff and the added >code. >It's not the copy-cost that mainly keeps me from doing it. I gave you _exactly_ the code from within Crafty. One store, two calls to memcpy() (and one of those could be a store in fact). I don't have any "termination stuff" at all in Crafty. When I start a new PV, I store the ply for the last move. That's all I need. > >>>The fundamental principle in chess programming is never to do any work that is >>>not needed. >>>That's why I think it is a bit silly to update a PV a few hundred times (in >>>particular in qsearch) and then only print it out the last one. >>> >>>If you need the pv for search related things I can understand, but if you only >>>want it to look at it then it is nothing more than eye-candy. >> >>Sorry, but we disagree. A chess engine has more than one function. If all it >>did was play chess, then I'd get rid of the PV myself although I might change >>my mind based on move ordering. IE at the end of an iteration I stuff the PV >>into the hash to make sure there are no "fishy" moves left there, and not doing >>that will impact the search space a bit. > >Doesn't that worry you then, that you have to do this at all? yes. But you miss the point. You don't do this. But you should. Because I have found that without the "stuffing the PV" code, my search gets a bit bigger. If I don't "stuff the PV" I am using the _same_ information you are using, namely residual hash information, and I know that it is going to have a bogus best move here and there for the reasons already given. If I retrieved the PV from the hash, I would find what is in the hash, yet my "stuff the PV" code has shown that what is there is not so good, and is often incomplete as well... > >It might be an indication something isn't optimal if your hash is losing >important entries that easily. Somehow that is doubtful. Hashing is not exactly rocket science. My code is open for all to examine, of course... > >>But a chess engine does other things. IE analyze positions and give scores and >>PVs for the moves. Who would want an annotated game that just suggested a move >>and score, with no indication of why the move played was bad or the move >>suggested was good? > >I'm not sure you will care for my opinion on the value of computer annotated >games :) That's your choice. I have found it _very_ useful. Particularly when you are looking for tactical mistakes, where the computer is very good at finding them and the PV is very good in illustrating why the move was bad. > >Speaking as a chess player, I think there are better ways to analyze a position >than to look at a PV. > >Just consider how often the it fails to guess the right ponder move, that's like >40% of the time perhaps? >Now what's the probability it can guess the 3rd move correctly? in forcing lines, the ponder percent is near 100%. That is the point. In places where we are talking about positional judgement only, then the PV may or may not be useful at all. But for debugging, it certainly is always an important tool. > >It turns into nonsense real fast, so for a serious player it can't be of much >value. A _lot_ of "serious" players use the PV output. I hope nobody treats it as 100% accurate unless the position is tactical in nature. But then the best move of the programs is hardly 100% accurate so that is a sort of circular argument. If it has flaws, don't use it... It has flaws, so don't use it, repeat... > >>And, again, what about debugging? > >Right, nothing debugs the hash better :) > >-S.
This page took 0.01 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.