CC book of records

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

Henk
Posts: 7220
Joined: Mon May 27, 2013 10:31 am

Re: CC book of records

Post by Henk »

Ok next record: Owner of largest number of different (test) versions of the same chess engine..
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: CC book of records

Post by bob »

Henk wrote:
mjlef wrote:If you count all of the test versions I have made for Komodo, I would win this easily!

Mark
No it may not be the same program. [Maybe you should have given them different base names. But also implementations must differ significantly]
I can claim the following:

blitz versions 1 through 6 were each completely different. Blitz version IV was over 100,000 lines of code and was the biggest version. Each (up until version 6) used wildly different approaches to selective search. Version 6 was the last blitz version and it was the version that transmuted to a full-width search engine (written from scratch) based on the overall approach of chess 4.x..

Cray Blitz was yet another rewrite that incorporated specific things for the Cray (vector instructions, 64 bit words, etc). So that is 7 completely different programs.

Crafty 1.x was a rewrite of Cray Blitz, converting it to C, and also converting it to chess 4.x type bit boards. Crafty version 6.0 was yet another major rewrite that incorporated rotated bit boards rather than northwestern incremental-update style bit boards.

That makes 9 versions that were different in major ways. There were others that were significant rewrites, such as version 15.0 that was a substantial rewrite to add parallel search along with pointers to the tree state everywhere...

I would count at least 10 over the time period 1968 to 2016 (48 years and counting).

What about the oldest currently running chess engine? Mine made its first chess move October 28, 1968, running on an IBM /360 model G40, written in Fortran-66. An ugly implementation as there was no recursion at the time, so I had a search1, search2, ..., which means fixed depth.
User avatar
velmarin
Posts: 1600
Joined: Mon Feb 21, 2011 9:48 am

Re: CC book of records

Post by velmarin »

bob wrote: I can claim the following:

blitz versions 1 through 6 were each completely different. Blitz version IV was over 100,000 lines of code and was the biggest version. Each (up until version 6) used wildly different approaches to selective search. Version 6 was the last blitz version and it was the version that transmuted to a full-width search engine (written from scratch) based on the overall approach of chess 4.x..

Cray Blitz was yet another rewrite that incorporated specific things for the Cray (vector instructions, 64 bit words, etc). So that is 7 completely different programs.

Crafty 1.x was a rewrite of Cray Blitz, converting it to C, and also converting it to chess 4.x type bit boards. Crafty version 6.0 was yet another major rewrite that incorporated rotated bit boards rather than northwestern incremental-update style bit boards.

That makes 9 versions that were different in major ways. There were others that were significant rewrites, such as version 15.0 that was a substantial rewrite to add parallel search along with pointers to the tree state everywhere...

I would count at least 10 over the time period 1968 to 2016 (48 years and counting).

What about the oldest currently running chess engine? Mine made its first chess move October 28, 1968, running on an IBM /360 model G40, written in Fortran-66. An ugly implementation as there was no recursion at the time, so I had a search1, search2, ..., which means fixed depth.
You can add them here,
Someone has immortalized it, there are at least 120 versions.
https://github.com/lazydroid/crafty-chess
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: CC book of records

Post by bob »

Henk wrote:Ok next record: Owner of largest number of different (test) versions of the same chess engine..
I have 33,467 different versions. I came to this number by taking all of my cluster Bayeselo output, combining it, then grepping every occurrence of Crafty. I then sort and uniq so that I end up with a BUNCH of things like Crafty-21.0R01, Crafty-21.0R02, ...

Will probably add to that total later today when Tracy sends me his latest changes...

Note that there were more than this, but I don't have records beyond what has been tested on the cluster. Otherwise this would go beyond 50K versions...

These date back to 2000 or so, but when I started testing I did not include the date in the BayesElo output file. But probably at least 15 years if not longer.
Henk
Posts: 7220
Joined: Mon May 27, 2013 10:31 am

Re: CC book of records

Post by Henk »

Next record: Ugliest implementation of a chess engine
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: CC book of records

Post by bob »

velmarin wrote:
bob wrote: I can claim the following:

blitz versions 1 through 6 were each completely different. Blitz version IV was over 100,000 lines of code and was the biggest version. Each (up until version 6) used wildly different approaches to selective search. Version 6 was the last blitz version and it was the version that transmuted to a full-width search engine (written from scratch) based on the overall approach of chess 4.x..

Cray Blitz was yet another rewrite that incorporated specific things for the Cray (vector instructions, 64 bit words, etc). So that is 7 completely different programs.

Crafty 1.x was a rewrite of Cray Blitz, converting it to C, and also converting it to chess 4.x type bit boards. Crafty version 6.0 was yet another major rewrite that incorporated rotated bit boards rather than northwestern incremental-update style bit boards.

That makes 9 versions that were different in major ways. There were others that were significant rewrites, such as version 15.0 that was a substantial rewrite to add parallel search along with pointers to the tree state everywhere...

I would count at least 10 over the time period 1968 to 2016 (48 years and counting).

What about the oldest currently running chess engine? Mine made its first chess move October 28, 1968, running on an IBM /360 model G40, written in Fortran-66. An ugly implementation as there was no recursion at the time, so I had a search1, search2, ..., which means fixed depth.
You can add them here,
Someone has immortalized it, there are at least 120 versions.
https://github.com/lazydroid/crafty-chess
I don't save the source for each version that is tested. I generally keep about 50-100 of the most recent, but no more. WAY too much stuff. I don't even keep old test records except for what I dug up from a few DVD backups...

I have 122 versions on my web page, but except for a couple of rare beta versions, all were release versions. I may have 1/2 of the released versions, maybe... Most of the early versions, prior to 16.0 were lost due to a disk failure a long while back.
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: CC book of records

Post by bob »

Henk wrote:Next record: Ugliest implementation of a chess engine
Probably

(a) too subjective and

(b) unobtainable. This would likely be an early program (such as mine) before recursion was included in a high-level language.
Henk
Posts: 7220
Joined: Mon May 27, 2013 10:31 am

Re: CC book of records

Post by Henk »

Or worst design ? Skipper had or has classes for WhitePawn .. BlackKing. Long, short castling, promotion, epMove etc. ChessPiece was implemented as a bridge. Also classes like ChessPieceFactory, MoveIterator, ABSearch, IDSearch etc.
User avatar
Greg Strong
Posts: 388
Joined: Sun Dec 21, 2008 6:57 pm
Location: Washington, DC

Re: CC book of records

Post by Greg Strong »

Henk wrote:
Greg Strong wrote:
Henk wrote:Easiest feature implemented in a chess engine giving large ELO gain ? Perhaps IID.
Alpha-beta
Not easy enough you can make errors in signs and position of alpha, beta and in the result. I mean -alphabeta(-beta, -alpha).

Maybe we should here look for a feature which hardly can go wrong.
Dude, it doesn't get any less complex than that. If you can't differentiate between + and - you can't write a chess program.
Henk
Posts: 7220
Joined: Mon May 27, 2013 10:31 am

Re: CC book of records

Post by Henk »

Recursion is not needed when using a stack.