Capyblanca is now GPL’d

In 1995, Douglas Hofstadter wrote:

“A visit to our Computer Science Department by Dave Slate, one of the programmers of Chess 4.6, at that time one of the world’s top chess programs, helped to confirm some of these fledgling intuitions of mine. In his colloquium, Slate described the strict full width, depth-first search strategy employed by his enormously successful program, but after doing so, confided that his true feelings were totally against this type of brute-force approach. His description of how his ideal chess program would work resonated with my feelings about how an ideal sequence-perception program should work. It involved lots of small but intense depth-first forays, but with a far greater flexibility than he knew how to implement. Each little episode would tend to be focused on some specific region of the board (although of course implications would flow all over the board), and lots of knowledge of specific local configurations would be brought to bear for those brief periods.”

That was, of course, many years before I would meet Doug.

How do chess players make decisions? How do they avoid the combinatorial explosion? How do we go from rooks and knights to abstract thought? What is abstract thought like? These are some of the questions involving the Capyblanca project. The name, of course, is a blend between José Raoul Capablanca, and Hofstadter’s original Copycat Project implemented by Melanie Mitchell, which brought us so many ideas. Well, after almost 5 years, we have a proof-of-concept in the form of a running program, and we are GPL’ing the code, so interested readers might take it to new directions which we cannot foresee. Some instructions are in the paper, and feel free to contact me as you wish.

The manuscript is under review in a journal, and a copy of the working paper follows below. Interested readers might also want to take a look at some of my previous publications in AI and Cognitive Science:

(i) Linhares, A. & P. Brum (2007), “Understanding our understanding of strategic scenarios: what role do chunks play?”, Cognitive Science, 31, pp. 989-1007.

(ii) Linhares, A. (2005), “An active symbols theory of chess intuition”, Minds and machines, 15, pp. 131-181.

(iii) Linhares, A. (2000), “A glimpse at the metaphysics of Bongard Problems”, Artificial Intelligence, 121 (1-2), pp. 251-270.

Any feedback will be highly appreciated!


Capyblanca paper under reviewUpload a Document to Scribd
Read this document on Scribd: Capyblanca paper under review
Explore posts in the same categories: Architecture, Author: Alexandre Linhares, General, News

2 Comments on “Capyblanca is now GPL’d”

  1. Eric Says:

    Alex — the paper looks great! I somehow missed your post in August, but now I’m printing out the paper…

  2. Eric N. Says:

    One question: I’ve just looked through the example run in your paper. You show how the system discovers the idea that the black king has to be both guardian of the black pawn and the guardian against white’s pawn promotion threat. However, I can imagine a similar position where black is able to do both things at once: protect the base of a (longer) pawn chain as well as prevent promotion. It’s still an indication that black’s in trouble, with the king taking dual roles, but it doesn’t necessairly mean it’s the right idea (although it is, in your example position).

    In any arbitrary middlegame position, you may have many pieces with many multiple defense roles in place at once. Often exploiting the overwork is the basis of a combination. Is your intent to use these sort of ideas as a way to guide some brief depth-first searches involving certain key pieces/squares? My point is that I’m curious if you can get from the right strategic ideas to the actual detailed calculations that are necessary to exploit some of these positions. Of cours,e maybe this is in your paper, which I haven’t looked at closely, or maybe it’s future work. Anyway, I think the paper is great!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: