Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: a different take on this.

Author: Andrew Dados

Date: 10:19:54 03/24/00

Go up one level in this thread


On March 24, 2000 at 11:21:33, Tom Kerrigan wrote:

>On March 24, 2000 at 10:48:04, KarinsDad wrote:
>
>>On March 24, 2000 at 00:23:38, Tom Kerrigan wrote:
>>
>>[snip]
>>>
>>>If you're talking about a situation that is not mate, i.e., positional
>>>advantage, then I think problems like this are virtually unsolvable.
>>
>>Not so. This is a limitation of using one PV.
>>
>>>
>>>My program will sometimes play e.g. Bd3 blocking its own pawn on d2. No matter
>>>what kind of penalty I have for this situation, my program will invariably play
>>>this stupid move. The reason is that it thinks it will move the bishop off of d3
>>>later in the PV, so the penalty is never enacted. Very frustrating.
>>>
>>>-Tom
>>
>>Of course there is a solution, but it involves hanging onto older PVs.
>>
>>If a PV changes due to a different PV getting a better score, save off the old
>>PV.
>>
>>If a PV changes due to it's own score dropping, do not save it.
>>
>>If a current line comes within a certain delta of the current best score, save
>>it off.
>>
>>When you are about to make a move, instead of just taking the current best score
>>PV first move, look through your list of old PVs as well. Carefully examine your
>>main PV and any of the old PVs that have a score close to the main one (e.g.
>>within -0.2). Since you may be searching say 24 positions per PV and have maybe
>>5 or so PVs to search, this takes very little time. Have a list of "types of
>>situations" which you consider "bad". Count the number of bad situations that
>>show up in any of the positions within each PV and pick the PV that has the
>>fewest bad situations with the highest score (i.e. if you main PV has the bad
>>bishop and none of the other old PVs have any bad moves, pick a PV from the save
>>list with the highest score, etc.).
>>
>>Theoretically, a -0.2 pawn is not going to cause any tactical problems, but
>>examining your "main lines" after searching could enable you to avoid lines with
>>tactically look ok, but play some stupid move that could hurt you way beyond the
>>event horizion.
>>
>>The issue is not one of resolving these types of problems within the evaluation.
>>If you do it that way, you either have to stop searching once you get to one of
>>these situations or you have to live with it. The alternative is to search for
>>this type of thing once your search engine is finished. I prefer the latter
>>method.
>>
>>KarinsDad :)
>
>Interesting idea. Do any programs actually do this?
>
>-Tom

I doubt it would work.
For most of searches (interrupted due to time elapsed, or not) I get only one PV
for given depth.
If I get more then one, then: either I got better move then previous, or
previous best failed low (this case we can disregard here of course). And
somehow I doubt there are 'do nothing' moves in PV for move which just failed
high (except for maybe pushing loss beyond horizon, and doing some extra checks
or captures for that).

In other words: if my PV does not care about making progress, it would not fail
high over previous best move (or it would fail high at lower depths, so for this
depth I get only one PV still).

All that is only 'feeling', not an attempt to prove it...
-Andrew-




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.