Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: King's Out : move ordering questions

Author: Vasik Rajlich

Date: 03:17:57 04/03/04

Go up one level in this thread


On April 02, 2004 at 07:19:40, Bernd Nürnberger wrote:

>[...]
>>>>There should be no big difference between mmv/lva for move ordering. (Untested
>>>>hypothesis actually.) Killers should help.
>>>Do you mean, moving from MVV/LVA to SEE will not reduce my tree size
>>>drastically?  Killers did not help very much two months ago, maybe because
>>>they are very similiar to the history heuristics?!
>>
>>Yes, that's what I meant.
>>
>>Killers are more local than history. Are you sure you implemented them
>>correctly? They should definitely be done before bad captures, maybe even before
>>equal captures.
>
>Maybe I did the killers wrong. I did two for each ply, and for every
>beta cutoff, I move killer2[ply] to killer1[ply] and overwrite killer2[ply]
>by the move, causing the beta cutoff.

Yes, that's correct.

Actually, I put the new killer move such that it is the first one. (Ie chosen
first during subsequent move generation.) Intuitively this seems slightly more
correct, but I haven't tested this and it really shouldn't matter much.

>
>I tried to do the killers right after the hash table move, before any other
>move is generated, and tried somehow to verify wether the killer move is legal
>for the current position. Unfortunately this didn't work properly.

This one may depend on your internal structure. If you can easily generate
captures and decide which ones appear positive, or moves which escape a positive
capture by the opponent, then I am quite sure that these will on average be
better than killers, and should be searched first.

I think this also depends on the speed of your engine. The faster your engine,
the less time you should spend on move ordering. (More generally, the faster
your engine, the less time you should spend on everything.)

>
>Maybe I should try to do killers before even or bad captures, as you propose.
>I will test it, as soon as I have some SEE function implemented. Right now
>I am doing a MVV/LVA ordering, so I cannot clearly say: what is an even,
>what is a bad capture and the ordering itself does not do clear cuts here
>either.

Bad captures and moves which allow the opponent good captures should definitely
go at the bottom of the list. The question is whether it's worth the computation
to put them there.

Cheers,
Vas

>
>Greetings, Bernd



This page took 0.02 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.