Professional Documents
Culture Documents
Advanced Info in LC8
Advanced Info in LC8
Advanced Info in LC8
0
LucasChess 8.0 is trying, likely for the very first time in the history of the
chess softwares, to implement a numerical method to show and tell its
users some advanced abstract and concrete informations about the
position.
This is a very hard target: it is both an intellectual challenge and it is also
very useful for the users, because they will understand more about the
game than ever before.
Surely in the process of this development, we will change many times
the way we "calculate" those information we have spoken about.
In order to achieve that LucasChess needs to know, after every and
each move, a certain number of things, both by asking them to the
running engine and by calculating itself.
Some other variables are derived, meaning that they are just a proper
combination of the originl ones (they all are fractional numbers,
expressed as a percentage):
xcompl: the value that shows how complex is a position (range:
typically from 0 to 80 or 90, in all our simulations it very hardly overtook
100).
xmlr: a value that tells how likely will occurr the victory of the winning
side (range: it varies from 0 to +100).
xemo: a value to show how efficient is the mobility of a player (range:
from 0 to 100).
xnar: a value that shows how narrow and/or crowded is a position
(range: from 0 to 200, but very often it stays below 100).
xact: a value that shows how active are the pieces of the side to
move(range: from 0 to 200, but very often i stays below 100).
xext: a value that shows how great is the tendency of a player to
exchange pieces, or in other words, his/her tendency to simplify (range:
from slightly negative values to 100 or even more).
xgst: a value that tells which stage of the game we are in (there are five
possibilities: opening, transition to middlegame, middlegame, transition
to endgame, endgame).
COMPLEXITY
There is no unanimously accepted idea, currently, about the way to
show how complex is a chess position, and likely will never exist a safe
way to get it.
In the latest fritz gui there is a tachimeter that shows how that but we are
not sure that it works the way we have imagined (naturally this doesnt
mean that we are right and chessbase is wrong).
We should also consider the fact that what is complex for an engine (for
example to follow a long plan) might not be for a human and naturally it
is true the opposite as well (for example a checkmate in 7).
We have decided to follow a human-oriented path.
For complexity we mean a value that tells the user how difficult is to find,
in a certain position, the best move.
About users, in our opinion, a value of complexity that varies from zero
or almost zero to around 100 is very easy to understand; though it has
no mathematical meaning at all, it comes natural associating such
values with the concept of percantage.
And actually the formula has been designed to achieve that.
LucasChess shows (in the abstract kibitzer) the value itself as a
percentage and aside the value a text string that is related to the value:
0 ≤ xcompl <5 very low
5 ≤ xcompl <15 low
15 ≤ xcompl < 35 moderate
35 ≤ xcompl < 55 high
55 ≤ xcompl < 85 very high
85 ≤ xcompl <+infinite extreme
WIN PROBABILITY
Another useful information given by LucasChess is the win probability
(of the better side) in a certain position.
This is expecially useful in order to tell the user how good is his/her
technique because if this value keeps on increasing during the game
after the user has got a good position, it means that the user is beating
the opponent engine displaying a very consistent and precise play.
It also can teach beginners about some endgames, if they are won or
draw with absolute certainty (as long as it is used a modern engine with
long thinking time) or about some positions that are impossible to win.
Our idea:
xeval
xmlr= | 100 * tanh(-------------) |
2 * xmat
LucasChess will show this mlr as percentage to win for the winning
side, and aside an adjective related; exactly the same as in complexity.
EFFICIENT MOBILITY
It is possible that the user wishes to know if his/her position offers many
acceptable resources or not: in other words LucasChess wants to show
how efficient is the mobility at disposal of a player.
Somehow it is possible to say that efficient mobility measures how
forcing is the nature of the position, from the point of view of the side
with the right to move.
This is an information not to undervalue at all.
Moreover, there is no safe correlation between complexity and efficient
mobility, because the two data really measure two very different things:
a player might have a great mobility but his/her position is not
necessarily either simple or complex.
LucasChess will shows which stage of the game we are in, according to
the following table:
0 ≤ gst <5 endgame
5 ≤ gst <10 transition to endgame
10 ≤ gst < 40 middlegame
40 ≤ gst < 50 transition to middlegame
50 ≤ gst ≈ 962000 opening