I better clarify this.....
1: lookup TT.
2: try a null move
3: try the 2 killer moves. (These caused a beta cut somewhere else in the tree)
4: generate moves
5: sort moves in order of PV, Captures, Killers, Quiet moves.
So if the killers did not cause an early cut they are research will the full depth.
I have tried the conventional move order but this method does give me speed up.
My main intention is to identify the type on node and avoid move generation.
Maybe with other engines that can do fast move gen it would be irrelevant.
Engine improvement ?
Moderator: Ras
-
Sven
- Posts: 4052
- Joined: Thu May 15, 2008 9:57 pm
- Location: Berlin, Germany
- Full name: Sven Schüle
Re: Engine improvement ?
So you search killer moves twice if they do not cause a cutoff?lauriet wrote:I better clarify this.....
1: lookup TT.
2: try a null move
3: try the 2 killer moves. (These caused a beta cut somewhere else in the tree)
4: generate moves
5: sort moves in order of PV, Captures, Killers, Quiet moves.
So if the killers did not cause an early cut they are research will the full depth.
I have tried the conventional move order but this method does give me speed up.
My main intention is to identify the type on node and avoid move generation.
Maybe with other engines that can do fast move gen it would be irrelevant.
And what about 1 "lookup TT", does that also include trying the TT move, or do you only mean "lookup TT for possible transposition"? In the latter case you would either lack the TT move completely, or you just missed to list it in no. 5 (but then you would try killer moves prior to the TT move which is weird). In the former case, however, the better order should be:
1. lookup TT for possible transposition
2. try null move
3. try TT move
and so on, since otherwise null move reduction is not so effective (always try the null move before trying any real move).
-
lauriet
- Posts: 199
- Joined: Sun Nov 03, 2013 9:32 am
Re: Engine improvement ?
This can get confusing cant it ! SO...
1: probe TT if good depth then (if exact return score, if fail low and score < alpha return alpha, if fail high and score > beta return beta)
If depth is no good save move for later.
2: try null.
3: search the 2 killers to reduced depth (R=1) if score >beta then return beta.
4: gen moves.
5: sort moves.......PV, saved TT move, captures, killers, quiet moves.
I hope that helps......yes the killers get searched again to the normal depth......but hopefully we have a exit before they are researched....this probly only happens at an all node.
regards
laurie
1: probe TT if good depth then (if exact return score, if fail low and score < alpha return alpha, if fail high and score > beta return beta)
If depth is no good save move for later.
2: try null.
3: search the 2 killers to reduced depth (R=1) if score >beta then return beta.
4: gen moves.
5: sort moves.......PV, saved TT move, captures, killers, quiet moves.
I hope that helps......yes the killers get searched again to the normal depth......but hopefully we have a exit before they are researched....this probly only happens at an all node.
regards
laurie
-
Sven
- Posts: 4052
- Joined: Thu May 15, 2008 9:57 pm
- Location: Berlin, Germany
- Full name: Sven Schüle
Re: Engine improvement ?
That explains your "-25%". You might save a lot of nodes by doing so but it will make your engine much weaker. Note that a killer move caused a beta cutoff in a completely different position! Therefore taking such a shortcut is really dangerous, it will lead to nowhere else than a big loss. It is like "EMR" (Early Move Reduction)lauriet wrote:3: search the 2 killers to reduced depth (R=1) if score >beta then return beta.
-
lauriet
- Posts: 199
- Joined: Sun Nov 03, 2013 9:32 am
Re: Engine improvement ?
But surely its just a legal that happens to cause a cut off ?
Does it matter where it comes from ?
Laurie
Does it matter where it comes from ?
Laurie
-
Sven
- Posts: 4052
- Joined: Thu May 15, 2008 9:57 pm
- Location: Berlin, Germany
- Full name: Sven Schüle
Re: Engine improvement ?
As I wrote: it happened to cause a cutoff at full depth in a different position. That does not justify at all to assume that causing a cutoff in the current position at a very shallow depth qualifies the move as a good move. The killer move heuristic says something *very different*. It is intended for move ordering only. What you do affects the best move and score at the root.lauriet wrote:But surely its just a legal that happens to cause a cut off ?
Does it matter where it comes from ?