Computer Chess Club Archives


Search

Terms

Messages

Subject: Statistical Emulation of Chessplayers

Author: Bob Durrett

Date: 08:42:49 11/02/02



Here, by "emulation" I mean "mimicing," and not "duplicating" the guts and
brains of the chessplayers.

The ultimate purpose of "emulating chessplayers" would be to produce chess
engines whose chess play could not be distinguished from that of real humans.

The entire population of human chessplayers worldwide could be partitioned into
classes.  To make sure everybody is on the same page here, I should point out
that if a particular chessplayer is in one class then he/she would not also be
in any other class.  Similarly, if two people were in different classes, then
they could not be together in any single class.

One simplistic way of accomplishing the partitioning would be to do it on the
basis of ELO performance ratings.

Class 1:  2800 and above, Class 2: 2700-2799, Class 3: 2600-2699, etceteras.

Each of these classes could be partitioned into subclasses, perhaps based on
playing style.

The sub-classes could again be partitioned into sub-classes and this process
repeated at will until each resulting subclass had at most one person in it.

I don't propose to do all that sub-partitioning, but just mention it to point
out that it could be done if there were a reason to do so.

For the sake of discussion, suppose we are looking at the class containing all
chessplayers, worldwide, with ELO ratings of 2500-2599.

To represent that class, a large high quality database of games could be used.
This database would contain games having the property that each game in that
database would have at least one ELO 2500-2599 contestant.  One might produce
such a database by creating it from Chessbase's Megabase using a query search.

This would be a large statistical sample, so it should do a good job of
representing the entire population of ELO 2500-2599 players worldwide.

The next step would be to search the database for instances of a particular type
of play.  Books about the characteristics of chessplayers and their games could
be used as a source of "types of play" to use.

It would be trivial to obtain statistics on how often that particular "type of
play" occurred in the database, and to convert this into a best estimate of a
probability of occurrence.

The next step is to program the otherwise perfect chess engine to exhibit that
particular "type of play" as often as it occurred in the human games database.
[The use of random number generators is indicated.]

The original engine should be strong enough so that it could defeat any human
"blindfolded."  In other words, a chess engine of year 2010 playing on a top-of
the line computer of year 2010.

This could be repeated for the next "type of play."

In the end, the modified chess engine would exhibit ALL of the statistically
significant or important "types of play" found in the database of the ELO
2500-2599 players.

This could be repeated for each range of ratings until all chessplayers were
emulated.

Trivial, conceptually!

Bob D.




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.