Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Fast way to sort moves in movelist ?

Author: Jeremiah Penery

Date: 16:26:57 10/16/99

Go up one level in this thread


On October 16, 1999 at 17:51:46, leonid wrote:

>To put in the chain of moves first the moves that give the check is simple -
>those moves can lead to the mate. Mate stop all the thinking, once the highest
>possible value is achieved.


It is true that these moves can lead to mate, but not very often.  In fact, most
of these moves will be useless.  Take this example:  1. e4 e5 2. Bc4 Nf6, then
the move Bxf7 is a check, but it is completely useless.  I suspect this will be
the case for most checking moves.
My guess is that sorting moves first because they give check probably won't give
good results compared to other orderings.

> Looking through the "tool" I found that the number
>of moves that lead to check is very small. This is the next reason for leaving
>those moves at the head of the chain.


This is true, but if the first move is very bad, you still have to search it
fully.  Like in my Bxf7 example above, that is a bad checking move, but you
would still have to search it fully before searching other moves.  This will be
bad for the branching factor in your program.

>I looked into your description of the move ordering and I hope that I understood
>correctly everything that you have said. It is probable that our move ordering
>is very close but we explain it in a different fashion.
>
>Languages that we use are not the same. Mine is Assembler. Until now wrote
>everything for DOS but prepare to rewrite everything for Windows. And for what
>system you write? Or probably Java is already perfect for every system?


It's quite difficult to write a program in assembler, as it makes it difficult
to easily modify.  I wish you luck. :)

Jeremiah



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.