Computer Chess Club Archives


Search

Terms

Messages

Subject: Emulating Human Pattern-Recognition in Chess

Author: Robert Henry Durrett

Date: 14:16:47 05/17/02


The general topic, not limited to chess, of "pattern recognition" is of great
interest to the global technical community, and this interest is surely not
limited to software developers.  It seems likely that many papers have been
written about this topic in many different technical journals [most of which
would be "way over my head"].

Incidentally, the papers may be written by "those found in Universities, like
Bob Hyatt, for example, or funded by governments or non-for-profit foundations"
but chess programmers are not excluded.

Pattern recognition is also a very important topic for serious chess players,
especially chess grandmasters and chess psychologists.  The ability of GMs to
recognize the similiarity of the position at hand to a similar position
encountered previously is said by some to be the primary factor that
distinguishes a GM from a chess amateur.  [Personally, I suspect that the
ability to think fast, i.e. high IQ is equally important.]  Chess books intended
for learners often spend a lot of time in teaching the learner how to recognize
important patterns, such as positions leading to White sacrificing a bishop on
h7.

The basic idea seems to be that the GM, recognizing the similarity of the given
position to a remembered position, also recalls information as to how to
proceed.  It makes possible the recognition of the possibility of formulating a
plan, based on past experience, and finding a way to implement, or "realize"
that plan.

The logical application of these ideas to chess engine programming seems
obvious, even though creation of appropriate algorithms and coding surely is FAR
from obvious.

Nowadays, you hear about modern engines being "knowledge based."  Presumably,
this means that the evaluation of "leaf nodes" is more sophisticated than in the
past.

But coming up with a numerical evaluation for a leaf node is not the only thing
that could be done with the information gained about a leaf node.

Intuitively, it seems to me that it is precisely at the time a leaf node is
being "evaluated," using "chess knowledge," when the opportunity presents itself
for pattern recognition, as performed mentally by GMs, and the "recall" of
information as to which approach or "plan" worked from the similar position in
the past.

Recognition of the similarity of the position to a stored position could prompt
recall of planning information.  This information could then be used in a way
the programmer choses to focus or narrow down furthur computation.

This idea is not limited to the use of leaf node information.  The pattern
recognition might begin, or be ongoing, even from the beginning.

Sophisticated multiprocessor chess computers are "right around the corner" and
parallel processing within a multiprocessor is already here.

Why not let one or more of the processors be dedicated to pattern recognition of
the kind suggested above?  Let these processors influence the search for the
"best move."

Of course, this may seem futuristic.  It may never happen, due to marketing
considerations.  But if it does happen, it will be because dedicated chess
engine programmers desire to make stronger and stronger chess computers, even if
not profitable.  Sometimes "fortune" without "fame" is not enough!













This page took 0.01 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.