Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Question about Alpha-Beta-Improvements

Author: Tim Foden

Date: 05:07:17 04/24/01

Go up one level in this thread


On April 24, 2001 at 05:40:56, Rafael Andrist wrote:

>On April 24, 2001 at 03:57:54, Tony Werten wrote:
>
>>On April 23, 2001 at 11:12:55, Rafael Andrist wrote:
>>
>>>In my chessprog, I'm using an Alpha-Beta-Search with an infinite window. After
>>>adding a hashtable, only half of the nodes need to be searched, but I get still
>>>a branching factor around 9. The use of Iterative Deepening didn't change much.
>>>So now my question is what can I do to improve the search? Should I try to
>>>improve the move-sorting? Or is it necessary to use other pruning techniques
>>>like Nullmove?
>>
>>The use of iterative deepening doesn't nescesairy help the BF. It's advantage is
>>that you don't need to decide on forehand how deep you are going to search.
>>
>>If you decide to search 10 ply and you run out of time, without ID you have
>>nothing, with ID you have the best move of ply 9.
>
>I know, but I hoped that it helps sorting the moves too. It really does that
>too, but only a little bit.
>
>>
>>BF of 9 is a bit too high but not too much if you don't use nullmove. There are
>>a couple a reasons why it could be this high:
>>
>>Are you using killermoves ?(you should, noncaptures only)
>
>Now I do :) and the BF has gone to 7.
>
>>Is your evaluation a bit intelligent ? (it should, at least material and passed
>>pawns)
>
>Yes, my eval is little bit intelligent, I get good results in games with fixed
>dephts.
>
>>Do you store bestmoves in the hashtable (you should) ?
>
>Yes.
>
>>Do you store bestmove if score is <=alfa ? (you shouldn't)
>
>No. Why is this bad?
>
>>How do you orden capturemoves (to start with, use MVV/LVA, most valuable victim,
>>least valuable attacker )
>>Have you tried history tables ? (should help at lower depths )
>>
>
>my move ordering:
>
>- Hashmove
>- 2 Killers (just implemented)
>- checking moves
>- capturing moves (sorted like you discribed above)
>- history heuristic
>- castling (if there are moves with equal scores, castling should be favoured)
>- moving piece (pawns first, king last)
>- square onto which the piece move (center, near the opponent is good)
>

With capturing moves, you may want to try leaving the losing captures till after
all other moves.  Also, it is normally good to try the winning/drawing captures
before the killers.

The current move ordering I use in Green Light (not at the root though) is:

1.  hash move.
2.  'winning' captures (uses SEE here, but MVV/LVA is also good)
3.  killers (GL has 2, only 1 can be losing capture)
4.  5 of remaining moves ordered by history heuristic
5.  rest of moves in the order they occur (losing captures still last)

>The history heuristic doesn't seem to work well, I may have to improve this too.
>
>Thanks
>
>Rafael B. Andrist
>
>>Have fun trying out,
>>
>>Tony
>>



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.