Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Working with moves or with positions.

128 views
Skip to first unread message

Guillem Barnolas

unread,
Feb 22, 1998, 3:00:00 AM2/22/98
to


I was looking to the source of KCChess, a pascal chess program, and I
see that they have two procedures that make a move and unmake it, so
when looking to a position they generate all the moves, and then start
making, evaluating and then unmaking.

In the computer chess programming web page, in xs4all or something
like that, in the pseudo-c search algorithms it seems it works with
positions instead of with movements, I mean, when generating the
moves, it stores the positions reached, so it's faster, because you
only have to evaluate the position, without making-unmaking.

Can anyone comment this, thanks..

Guillem.


Bo Persson

unread,
Feb 22, 1998, 3:00:00 AM2/22/98
to

As usual, it depends :-)

Depending on the amount of data you store for a position and
how fast the memory in your computer is, the save-restore
(or copy-modify-discard) can take even more time than unmaking
the move.


Bo Persson
bo.pe...@mbox3.swipnet.se

Robert Hyatt

unread,
Feb 22, 1998, 3:00:00 AM2/22/98
to

Guillem Barnolas <guill...@redestb.es> wrote:
:
: I was looking to the source of KCChess, a pascal chess program, and I
: see that they have two procedures that make a move and unmake it, so
: when looking to a position they generate all the moves, and then start
: making, evaluating and then unmaking.

: In the computer chess programming web page, in xs4all or something
: like that, in the pseudo-c search algorithms it seems it works with
: positions instead of with movements, I mean, when generating the
: moves, it stores the positions reached, so it's faster, because you
: only have to evaluate the position, without making-unmaking.

: Can anyone comment this, thanks..

: Guillem.

It's an idea that is sub-optimal for the PC, which has a very low memory
bandwidth. Early versions of Crafty were based on copy-update (copy old
position to new position, then make the move, so that the unmake is not
needed, just back up to the old position and copy again). This was not
so hot on the PC. Make/UnMake executes more instructions, but instructions
are far less important than memory loads/stores, since a P6/200 can execute
40 instructions (two at a time or more) while waiting on one cache miss to
be handled...

--
Robert Hyatt Computer and Information Sciences
hy...@cis.uab.edu University of Alabama at Birmingham
(205) 934-2213 115A Campbell Hall, UAB Station
(205) 934-5473 FAX Birmingham, AL 35294-1170

Guillem Barnolas

unread,
Feb 23, 1998, 3:00:00 AM2/23/98
to

Robert Hyatt <hy...@cis.uab.edu> wrote:

>Guillem Barnolas <guill...@redestb.es> wrote:
>:
>: I was looking to the source of KCChess, a pascal chess program, and I
>: see that they have two procedures that make a move and unmake it, so
>: when looking to a position they generate all the moves, and then start
>: making, evaluating and then unmaking.

>: In the computer chess programming web page, in xs4all or something
>: like that, in the pseudo-c search algorithms it seems it works with
>: positions instead of with movements, I mean, when generating the
>: moves, it stores the positions reached, so it's faster, because you
>: only have to evaluate the position, without making-unmaking.

>: Can anyone comment this, thanks..

>: Guillem.

>It's an idea that is sub-optimal for the PC, which has a very low memory
>bandwidth. Early versions of Crafty were based on copy-update (copy old
>position to new position, then make the move, so that the unmake is not
>needed, just back up to the old position and copy again). This was not
>so hot on the PC. Make/UnMake executes more instructions, but instructions
>are far less important than memory loads/stores, since a P6/200 can execute
>40 instructions (two at a time or more) while waiting on one cache miss to
>be handled...

Thanks, very clear again...

Greetings, Guillem.


Greg Teets

unread,
May 25, 1998, 3:00:00 AM5/25/98
to

On Sun, 22 Feb 1998 10:05:13 GMT, guill...@redestb.es (Guillem
Barnolas) wrote:

> In the computer chess programming web page, in xs4all or something
>

Please give me the address for this page.

Thanks

Greg Teets
Cincinnati, OH

Komputer Korner

unread,
May 25, 1998, 3:00:00 AM5/25/98
to

http://www.xs4all.nl/~verhelst/chess/programming.html

--
--
Komputer Korner
The inkompetent komputer

To send email take the 1 out of my address. My email address is
kor...@netcom.ca but take the 1 out before sending the email.
Greg Teets wrote in message <3569f79...@news.ececs.uc.edu>...

0 new messages