Computer Chess Club Archives




Subject: Re: likelihood instead of pawnunits? + chess knowledge

Author: Ingo Lindam

Date: 14:01:08 10/27/02

Go up one level in this thread

On October 26, 2002 at 15:55:30, Bob Durrett wrote:

>These are my "post-breakfast" thoughts.  Again, I am still trying to see
>whether or not I understand what you are proposing.

Well, I really believe in post-breakfast thoughts must be the best.
Unfortunately my breakfast is long time ago but I had a very good lunch and
cheesecake later.

>Since the chess engine must find a move, we need to think about how that would
>be done using your "patterns."  Please ignore the trivial case of getting the
>move from an opening book or an endgame tablebase.  Let's limit ourselves to >the middlegame.

This is a very clever simplification I appreciate.

>Associated with each of the patterns you store in your computer [regardless of
>storage medium], there typically will be moves associated with that pattern.
>For example, if the pattern is the one associated with the thematic sac of a
>bishop on h7, then the bishop move Bxh7 could be the one associated with that
>pattern.  Some patterns may have more than one move associated with it.  One
>could generalize to include "combinations" assiciated with certain positions.
>For example, recall the familiar smothered mate involving the moves Nf7+,
>Kh8-g8, Nh6 dis. ch. [with the queen on the diagonal], Kh8, Qh8+ RxQ Nf7
>smothered mate.  This is a case of a combination being associated with the
>position fragment [which you call a "pattern."]

My main idea of using patterns was to give the computer more positional
knowledge to judge about positions. Nevertheless I am aware that a statistical
choice of pattern will also lead to tactical motives and it might be hard to
distinguish. I as well thought at once of the motive of the smothered mate
probably will be found in a lot of games. When you find a pattern while running
a training (or generation of pattern) on a huge data base you may distinguish
several classes of patterns also by the following moves after the occurence of
this pattern. This may lead to typical moves, plans or just to a method to
distinguish different pattern classes. This idea of using the moves following
the appearance of a pattern might make the whole thing more complex. The
response on my ideas here at CCC were more like telling me the problems or the
ambition of the ideas are two big (or just nonsense) so I don't really dare to
dream of generating plans (at first step). The main idea is just to use the
pattern to evaluate the position.

>Typically, a position occuring in a game [being played with the chess engine]
>may include dozens or even hundreds of position fragments for which you have
>patterns in your database [or table].

Well, I expect to find a number of pattern in a position to evaluate or a few
less but more complex pattern. Its hard to say what is a reasonable number of
pattern I should find and with how many pattern I could deal at which stage of
the evaluation process now.

>In a parallel processing [or hybrid] implementation of your concept, there
>be some process required to go from the information you have for the relevant
>patterns to the choice of move.

Yes, if I want to use the pattern in a chess playing engine my engine has to
make moves and has to decide which to play (when possible a little bit quicker
than I do).

>The various relevant patterns may each have one or more moves associated with
>it.  Each such move could be considered to be a probability function of the
>pattern.  P[move1] = etc.

Well, this is ofcourse possible to associate moves with the pattern, but to make
the idea not failing by being to complex at first stage I would rather kepp this
in mind as an option and look how far it goes without linking moves or plans to
the pattern. But ofcourse you never should forget about this option. The pattern
come from games... and I search for pattern that name my position a winning
position. If I bring myself to a position that contains these winning patterns I
have automatically a lot of examples in my game data base how to win such a

>How do you decide which pattern should be taken more seriously?

Well, I should take those pattern more seriously that apear more often... and
that lead to significant probabilities for P+, P= or P-. And here is the most
important reason to use three (or two) instead of a single score. When I find
nothing in a position I can value for white or for black I probably can just
score the position 0 (?). Don't might this lead to an optimization of the moves
into noland (knowing nothing about the position) as more as I evaluate the
opponents moves/positions the same way? My approach should (!) lead to
distingish seriously between draw and knowing nothing.

>If there are hundreds of patterns in the position, there could easily be
>hundreds of moves, each associated with one or more of the patterns.  Somehow,
>you must decide how to arrive at the one and only one move to play.  I must
>admit that this is unclear to me at this time.

A very natural possibility should be to use the pattern just to evaluate
positions. When I evaluate positions in a search tree that should lead me
automatically to make moves leading into positions I find more good pattern for
me than for my opponent.

>Am I still on track?

Ofcourse Bob... I don't expect you to leave the track.


This page took 0.01 seconds to execute

Last modified: Thu, 07 Jul 11 08:48:38 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.