Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Middlegame Dilemma: Variety Vs Strength?

Author: Serge Desmarais

Date: 04:50:27 08/30/98

Go up one level in this thread


On August 29, 1998 at 20:38:42, Robert Henry Durrett wrote:

>On August 29, 1998 at 20:07:17, Serge Desmarais wrote:
>
><snip>
>
>>>THIS BEGS THE QUESTION:  How could the chess software designer defeat this
>>>strategy if he/she wanted to?  How could more variety [or randomness] be added
>>>to the middlegame without significantly reducing the computer's  middlegame
>>>strength?
>>
>>
>>   First of all, that is what the "book learning" is for. So after, with all
>>your takebacks, you manage to win/draw, the program will NEVER EVER reach that
>>same position when it was out of book in your game. Other forms of learning also
>> prevent it since the applies once out of book ("position learning" and all.
>>That is why, in Crafty for example, you can have the computer only play ONE
>>defence with the same line over and over and as long as you draw or win, the
>>computer's play will always vary. It will always try something new from game to
>>game (the new try could be worse than the preceeding one, but will at least be
>>different!).
>>
>>Serge Desmarais
>
>(1) That is interesting. I really would like to know more about "book learning
>and what you are calling "position learning."
>(2)I did not know much about "book learning" but assumed that is merely changed
>a "book" if it found a better move. It is not clear to me that it would have
>found a better move here.  Will it deliberately choose a second-best move just
>to avoid repeating the same "book moves"?  For example, if someone were to find
>a way to draw the game, will the computer be so dissatisfied with the half-point
>that it will deliberately replace the current move in the book with a
>second-best move?
>(3) The idea that there are two kinds of "learning" is also new to me.  If I
>understand you correctly, you are saying that the first kind, called "book
>learning," is what would make the computer refuse to return to that same leaf
>position.  The second kind of "learning" is less clear.
>(4)Intuitively, the "book learning" and "position learning" seem to be
>implementations of a more general concept, which is "adaptive software,"  which
>is a special case of "adaptive systems."  I had the impression that these fields
>were still in their infancy and that most chess programs simply had not made
>much progress in adaptability of the software.
>
>Best wishes,
>Bob D.

BOOK LEARNING :
   Okay! Let's start with crafty for example. It has only one kind of learning.
Suppose it plays White in a Ruy Lopez. 1.e4 e5 2.Nf3 Nc6 3.Bb5 a6 4.Bxc6 dxc6
etc.(it did not really occur, it is just an example). Now suppose it stays in
its book for 10 moves (though the variations of the Ruy Lopez are longer than
that, I am not a specialist of the Ruy Lopez, being mainly a Queen's pawn
player!). Now suppose the game ended as a draw. It will put a, say, -7 or -6
near the move #10, same thing for move 8 and move 9. Move 5,6,7 could have a -5
or -6 near them ; 4.Bxc6 could have a -3 or -4, as well as 3.Bb5 and 2.Nf3 and
1.e4 could have a -2 or -1. Now, next time it has White, it will probably play
1.d4. It will stick to 1.d4 as long as it wins. One draw or loss and it will
change for 1.c4 and then 1.Nf3. Now, when it will have at least one drawn game
with these 4 moves, it will have around 25% chances of playing any of the 4
moves. Suppose it plays 1.e4 again. After 1.e4 e5, the if there are statistics
for enough games going with another move than 2.Nf3, it will take it before
returning to 2.Nf3. But since over 80% of the games had 2.Nf3, it plays it. Now
black (the same human who managed to get a draw the first time, maybe) plays
2...Nc6. Fritz will probably play 3.Bc4 now. IF it plays 3.Bb5, after 3...a6, it
will NOT play 4.Bxc6, but 4.Ba4... 4.Bxc6 will have 0% chances of being played.
Fritz's factory book contains about 1 million moves divided amongs solid and
good lines (with a few exceptions)... So it could vary its play for hundreds, if
not thousands of games before being forced to play all the moves that led to a
draw or a defeat. In that case, only the results of the games played are taken
into account, not the real value of the moves. If there is a weak moves
(allowing the opponent to win a piece, for example) and Fritz won with it, it
will stick to it. The programs NEVER question the quality of their book moves.


BOOK LEARNING 2:
   Crafty (for one) uses the first form of book learning PLUS a second one.
Suppose that after the last book move played, it evaluates its position as being
+0.60 (small advantage) for itself. Now a few moves later, the evaluation is
-1.22 (big disadvantage!) : something bad/wrong has happened! So, it will copy
that evaluation at the end of the book line, along with the first move played
out of its book (as I remember). So, next time, it will not only calculates over
the position, but alse correctly evaluates the move it would otherwide prefer.
This form of learning is based on a direct evaluation of the position, not the
results obtained.


POSITION LEARNING : Now, this kind of learning has nothing to do with the book.
Suppose that in a certain position (say 20 or 30 moves away from the last book
move), it sends its knight behind the ennemy lines, making threats and all.
Several moves later, the knight is stuck and lost, and so the game. Crafty uses
that form of learning and will take a note about that position. IF it appears
again on the board, Crafty will NOT infiltrate its knight behind the lines,
KNOWING it would be lost in the end! So, this form of learning is for specific
positions that gave trouble to the program (here Crafty). Fritz doesn't use that
kind of learning either.


FINALLY I have seen an interesting standalone program on the Internet Chess Club
that, at first, had NO opening book! It created its book from its own play! It
was adding the moves (some of them?) it played as well as those from the
opponents in its book by itself, and thereafter adjusting them with the first
kind of book learning. So, all the book was built from scratch! I must say that
sometimes it was playing strange and unique lines! I do not know the details.


If you download the crafty's book, you could read the section about the
autolearning, too... I don't know the details for all the programs, so some
things may differ a little.


Serge Desmarais



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.