Author: Uri Blass
Date: 20:50:13 12/13/02
Go up one level in this thread
On December 13, 2002 at 18:00:21, Vincent Diepeveen wrote: >On December 13, 2002 at 14:34:12, Uri Blass wrote: > >>On December 13, 2002 at 14:05:51, Bas Hamstra wrote: >> >>>>A big evaluation in a very efficient program should never profit from >>>>lazy evaluation. >>> >>>In theory it is possible to tune your margins in such a way that lazy cuts will >>>not make *one* single error, and still save time. However the loss of bound info >>>plays a role too. For me it works. I remember my first experiments gave bad >>>results too. But that was when I "overdid" it. >>> >>> >>>Bas. >> >>I can only say that humans do lazy evaluation. > >I am not capable of knowing a single human doing lazy evaluation. >they always see when they look at a position that a certain >compensation is there. When humans see that they lose material they usually do not calculate the exact positional evaluation. > >>humans do not calculate the exact value of positional factors when they see that >>they lose a queen. >> >>If I understand correctly suppose >>Diep calculates 1.e4 e5 2.Nf3 Qh4 3.Nxh4 and calls evaluation > >not at all. > >i only evaluate leafs and here you present something without >nullmove. Yes because 2...Qh4 has a threat(3...Qxe4+) even if in this case you evaluate the position after Qxe4+ as better for white because of positional reasons it is possible to find examples when null move is not relevant. suppose that the move Qh4 is a threat and suppose that the position after 3.Nxh4 is deep in the tree. You still needs to evaluate it. positions when the side to move sacrifice a queen or a knight in the last ply are not something that you can prune by null move pruning. basically all of my nodes are in nullmove somehow. >the calculation and refutation of lines without a nullmove in >it is a very small %. I do not know how much but I believe that positions when the side to move sacrifice a piece in the last ply are not rare and if it is the last ply null move is not relevant. If you can be sure in a short time that there are no big positional problems like king safety or unstoppable passed pawn I see no reason not to use lazy evaluation. The only reason not to use lazy evaluation is when you have a fast evaluation so lazy evaluation simply does not save time. > >what i understand is that i outsearch many programs getting >less nodes a second, programs which get more nodes a second, >despite that i do not use lazy eval, no futility and i only >use nullmove. It is not relevant if other programs are inferior because of other reasons(like worse order of moves or worse use of hash tables or worse qsearch). The right comparison is Diep without lazy evaluation and Diep with lazy evaluation and not comparison with other programs. > >O yes i nearly forgot. I also use singular extensions sometimes >(but i plan to kick them out as soon as search depth allows me). > >Even if the difference in nodes a second is like 10 to 20 >i still only get outsearched by the commercial programs >like 3 ply. They use no SE then. If i kick it out it is >only 1 or 2 ply at most. > >Somehow i can't stop smiling always when i play Tao and he >claims lazy eval works when i outsearch him 2 ply. plies are also not important but what you see in these plies. I believe that Tao use more extensions than diep. 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.