Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: A pondering idea... [a more clear {hopefully} example]

Author: Uri Blass

Date: 08:11:33 09/29/01

Go up one level in this thread


On September 29, 2001 at 09:57:46, Robert Hyatt wrote:

>On September 29, 2001 at 03:36:38, Uri Blass wrote:
>
>>On September 28, 2001 at 22:56:55, Robert Hyatt wrote:
>>
>>>On September 28, 2001 at 12:08:37, Uri Blass wrote:
>>>
>>>>On September 28, 2001 at 10:55:46, Robert Hyatt wrote:
>>>>
>>>>>On September 28, 2001 at 00:58:15, Dann Corbit wrote:
>>>>>
>>>>>>On September 27, 2001 at 23:44:19, Robert Hyatt wrote:
>>>>>>
>>>>>>>On September 27, 2001 at 19:05:43, Dann Corbit wrote:
>>>>>>>
>>>>>>>>On September 27, 2001 at 17:48:32, Peter Fendrich wrote:
>>>>>>>>[snip]
>>>>>>>>>Yes, I buy all that. My intention was to oppose to the "it's impossible"
>>>>>>>>>statement. You are talking about some general case. There is no reason why each
>>>>>>>>>move has to be 20% because the first one is. That's why I'm talking about
>>>>>>>>>isolating cases where the other move might be better. Another question is what
>>>>>>>>>happens if the ponder move has only 10% or 5% probability.
>>>>>>>>>I have no proofs that these cases are possible to identify but I'm still open
>>>>>>>>>for it, until I know better...
>>>>>>>>
>>>>>>>>Also, it does not have to be either/or.
>>>>>>>>
>>>>>>>>We could ponder the root for 1/2 of the extrapolated opponent time slice, and at
>>>>>>>>that point, change to the pm and ponder that.
>>>>>>>>
>>>>>>>>It seems to me that there are many possibilities.
>>>>>>>>
>>>>>>>>Something that is puzzling me...
>>>>>>>>If one move is really much better than the others, then we would think that it
>>>>>>>>would fail high, re-search, and gobble most of the time anyway.  If that does
>>>>>>>>not happen, then some of the alternatives must be pretty good.
>>>>>>>>
>>>>>>>>So, why does pondering root yield only a 2% gain, and pondering the pm give an
>>>>>>>>enormous one?
>>>>>>>>
>>>>>>>>It still does not make sense to me.
>>>>>>>>
>>>>>>>>I guess I'm just having a hard time understanding why it is so much better to
>>>>>>>>ponder the pm instead of the root.
>>>>>>>
>>>>>>>If by "root" you mean the position _before_ any opponent move, then the reason
>>>>>>>is obvious...  you will spread your time over N moves, which means that when
>>>>>>>the opponent moves, you will have looked at the _right_ move only 1/N of the
>>>>>>>time.  You still have a long time to search to meet the target time for this
>>>>>>>search.
>>>>>>
>>>>>>By the root, I mean "the root move for the opponent -- after I have made my move
>>>>>>but before the opponent returns the response.  In other words, the opponent's
>>>>>>current position.
>>>>>>
>>>>>>If the search is so even that time is distributed over N moves, then the chance
>>>>>>of picking the right one is only 1/N anyway.
>>>>>>
>>>>>>If two or three moves are far better than the others, then most of the time will
>>>>>>have been spent searching them.
>>>>>
>>>>>This is not correct.  We are using alpha/beta remember.  The _best_ move will
>>>>>consume about 75% of the total search time.  The next best move will take a
>>>>>tiny fraction of that to prove it is worse, even if it is only .01 worse.
>>>>
>>>>I believe that the truth is in the middle.
>>>>blunders are often considered for less time when moves that are worse by 0.01
>>>>pawn considered for more time in most of the cases but it is only an average
>>>>rule and not a general rule.
>>>>
>>>>Uri
>>>
>>>
>>>The score difference is _not_ causing what you are seeing.  When a move
>>>starts to take far longer to dismiss than others at ply=1, it doesn't mean
>>>it is close in score to the best move.  It means something is changing in that
>>>sub-tree, and move ordering is not as efficient as it should be.  Otherwise I
>>>can mathematically prove that if the score for move 1 is only .01 better than
>>>the score for move 2, that the tree will be _exactly_ the same size as if the
>>>score for move 1 is 100.00 better than move 2.  The score has nothing to do
>>>with the size of the tree.  That is the function of move ordering...
>>
>>I did not say that the score difference is causing it but there is a correlation
>>between the score difference and the time that moves are considered.
>>
>>one reason for that:
>>
>>If the program reject a blunder for the right reason then a lot of moves may be
>>pruned by null move pruning so the program is going to consider the move for
>>less time.
>>if the move is only 0.01 pawn worse than null move pruning often does not work.
>>
>
>This isn't what happens.  Null-move is effective in dumping bad lines
>quickly.  Even if the two moves at the root are only .01 apart, null-move
>is just as effective.

In most cases when the moves is 0.01 worse there is a threat so you cannot prune
it by null move.

if you have an obvious blunder you may prune a lot by null move(maybe not in the
first ply but later)
if the opponent capture the queen in the first ply after the blunder you can
reject a lot of moves later because they have no threat.

  Because a full-width search still looks at lots of
>very stupid moves that null-move dismisses more quickly than a normal search
>would.
>
>Null-move works just fine on the _PV_ search in fact, for this very reason.
>
>
>>Another reason: when the move is 0.01 worse the order of the moves is often
>>worse than the order of the moves after a blunder.
>>
>
>
>I don't follow.  On a move scored at .01, there are _still_ zillions of blunders
>in the tree for that move.

Yes, but these lines are often pruned quickly by the null move pruning and there
are more important lines when you do not reject them for the right reason.

example:the position after 1.e4 e5 2.Nf3
[D]rnbqkbnr/pppp1ppp/8/4p3/4P3/5N2/PPPP1PPP/RNBQKB1R b KQkq - 0 1

suppose 2...Nf6 is best with a difference of 0.01 pawn relative to 2...Nc6

I believe that there is a good probability that the killer move for 2...Nc6 does
not work in the next ply and you need to look for another killer move.

You can be more sure that the killer move for Qh4(Nxh4) or Qg5(Nxg5)
or even a6(Nxe5) is the right move.

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.