Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Any programs out there with multiple personality disorder?

Author: Volker Böhm

Date: 12:45:18 08/10/04

Go up one level in this thread


Hi,

sorry that I can´t help you with your question, but perhaps I can give a hint.

In every position, even opening positions, chess engines are searching full
moves until a certain (flexible) depth and then doing captures/recaptures
(quiescense - search). I suppose you know that but I need it for explaining the
following.

Because of captures/recaptures a chess engine evaluates different type of
positions (opening, mid-game, endgame) in many poisition (sure it cannot go back
to a mid-game position once in endgame).

Thus if a chess engine is doing what you are asking for, it must change the
algorithm (the personality) for different nodes of the same search tree.
In some situations it will be very hard to decide which algorithm to take, is it
a midgame poisiton or allready endgame?

If you have a function that decides if it is opening, midgame or endgame then
the function will suddenly switch just because of a tiny change in the
situration. This is a large drawback for a chess engine because the searchvalue
gets instable reducing the search depth and the quality of search result.

The only way to avoid this is to evaluate the position to different aspects
multiply those results with a weight and then add the aspect-values for the
total value.

For example a position is 60% midgame and 40% endgame. Then you could call
eval = eval_midgame * 0.6 + eval_endgame * 4.0

Mostly this approach is too expensive to calculate. Better to calculate each
aspect of game once and then add it weighted according the game-state to the
total eval.
This works better for chess.

Thus I doubt that you will find a good chess engine doing what you asked for.

Greetings Volker



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.