Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Chess Wizard, some history and techniques

Author: Roy Eassa

Date: 13:04:51 10/08/02

Go up one level in this thread


On October 08, 2002 at 03:30:47, Frederic Louguet wrote:

>The first time Chess Wizard played a real game of chess was in 1994. I worked a
>lot in 1994/1995/1996, and in 1996 it won the french championship with Chess
>Guru. I read a lot of publications, studied some source code (Turbo Chess in
>Turbo Pascal, GNU, later Crafty), tried a thousand ideas that did not work,
>found a few that really worked...
>
>I tried the bitboard approach very early (1995) because of the possibilities
>regarding evaluation. I always wanted Wizard to have a good evaluation, and a
>lot of complex things were easier to implement with bitboards. I learned some
>bitboard tricks from Crafty (in the 9.x to 10. versions I think) that I had not
>thought about before. But Chess Wizard is not entirely bitboard-based, it's more
>a hybrid approach.
>
>I have two problems : my opening book is not very good, and I don't seem to find
>a way to make forward pruning really work. I tried 6723 ideas, a few times I
>thought I had found the solution, but everytime it was a false impression. Maybe
>I am forward-pruning challenged. I use null move (R=4 very far, then R=3, then
>R=2), I recently removed all checks from the quiescence search. The strength of
>Chess Wizard is based on two things : good evaluation, and search extensions. I
>use many threat extensions with small increments (2/16 of a ply), strange out of
>checks extensions, and so on. I tried singular extensions too, but with bad
>results.
>
>When Wizard detects some patterns in the position, it simply tones down, and
>sometimes even shuts down completely, entire parts of the evaluation fonction to
>concentrate on the parameters that really counts (so other parameters don't get
>in the way).
>
>But I really would like to find super-efficient forward pruning techniques, like
>those used in the top commercial programs. For the moment, I compensate with
>extensions. Maybe it is not possible to do both. Maybe it is the same thing,
>from a certain point of view.
>
>But I have learned a few important things :
>
>1) You must never dismiss some thing that doesn't work now. Maybe in a year from
>now, It will work.
>2) You must never assume that something that works in someone else program wil
>work in your program.
>3) Like Christophe Theron rightly says, you must believe in statistics. Your
>testing methodology must be extremely well thought out.
>4) If you hear someone say "this algorithm sucks", or "it doesn't work", don't
>forget to add "for me" to the sentence. You must try it for yourself.
>5) Sometimes, you should completely leave the world of chess programming (even
>for one or two weeks). Some ideas have a way of being found only when you don't
>think about them !


Great post!

I only wish the whole chess world could get its hands on copies of Chess Wizard.



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.