Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Beginner Chess Programmer

Author: Ferdinand S. Mosca

Date: 03:58:17 04/30/03

Go up one level in this thread


On April 29, 2003 at 17:48:50, Magoo wrote:

>Hello dear chess loving people.
>
>I'm working on a simple chess engine, i am having some hard problems to solve.
>My program is TOO SLOW, and when i mean slow, i mean really slow.
>It's not the "nps" measure, which i think is ok, i get around (approx.) 500 000
>nodes/1-2min, or something...
>The problem im having is move ordering of some sort, i have done my homework,
>i've
>read almost everything there is to read about chess programming on the internet.
>Anyway, initially i did not have move ordering at all, it worked fine with
>depth=2
>and quiescent search until no more pieces can be captured.
>Then today, after some hard work, i have implemented both a Transposition Table
>and the History move ordering. I also implemented iterative deepening (to
>benefith from the TT ..). I thought this would speed my program up so i could do
>a 6 ply search in no time. Besides the History move ordering I use the MVV/LVA
>ordering for the Quiescent search.
>This is my move order:
>1. Hash - if depth < stored_depth always try the stored "best_move"
>2. Captures - orderd by MVV/LVA
>3. History
>This should be enough, but when, i looked at the move list for some positions,
>i noticed that many bad moves were on top of the list, like losing captures, and
>moving pieces to squares where the piece can be taken.
>This makes me belive that you cannot just put all the captures on top of the
>list, put winning/equal captures should be better?
>But, the move list is not THAT bad (like there are no silly pawn/king moves near
>the top of the list). I should be getting better results than just RANDOM order
>(not really random but in the order move_gen produces them) not SLOWER!!
>What am i doing wrong?? Im guessing i have a really nasty bug in my alpha_beta
>function... there should be more prunning, 500 000 nodes for a 4-ply search is
>too much..

Man you are too fast, be slow, in chess programming it is very very easy to have
bugs. Take a look at the logs of crafty, chess programming is also avoiding
incorrect codes, and later on concepts. If you have something to implement test
it first, and evaluate thoroughly, before adding new feature.

Regards,
Dinan



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.