Author: Serge Desmarais
Date: 18:19:20 09/03/98
Go up one level in this thread
On September 03, 1998 at 18:23:31, Robert Henry Durrett wrote: ><snip> > >I hope everybody will forgive me for responding to my own bulletin, but after >posting it, I realized that it was too cryptic and possibly did not have the >right tone. Let me try again: > > >>>Chess is like a real war. In the beginning, you try to take control of the >>>center, just like trying to get on higher ground in a war, so that you can have >>>an advantage. From there you seek out your opponents weak spots, while >>>protecting your own. Formulate a plan of attack, by trying to capture his men >>>while maintaining your own mobility. Never take your eye off his king or >>>advancing forces. >>>All of the chess Opening Books in the world stress this. A good opening is one >>>in which you take control of the center so you can launch an attack. >>>There is no shame in losing, only in not trying again! >>>Bill Rogers >> >>No arguments with any of that. I guess this encapsulates "Chess in a Nutshell." >> In fact, if I recall correctly, someone actually wrote a book by that title! >>But it was an entire book, not just a couple of paragraphs. >> >>Could you write a computer program to implement those ideas? What would be the >>main characteristics of such a program? > >QUESTIONS: [Assuming that the opening book is disabled]: > >(1) If someone wished to write a simple subroutine or sub-program [which would >later be incorporated into a chess engine] which had the purpose of "trying to >take control of the centre," what would this software look like? Is this >actually done in any of the stronger chess engines? If so, how is it >accomplished? Of course it is! Fritz 5 plays 1.e4 as a first move without a book, while Genius 3 preferred 1.Nf3, which is also a correct move. > >(2) If someone wished to write a simple subroutine or sub-program [which would >later be incorporated into a chess engine] which had the purpose of "identifying >the weak spots in the position (for both sides)," what would this software look >like? Is this actually done in any of the stronger chess engines? If so, how is >it accomplished? Yes, it is already implemented. That is part of the evaluation of a position (balancing the weak spots for both sides, evaluating the space of both sides, piece mobility, potential and actual threats etc.). All this to decide which side is better. Mainly, the better the evaluation's function of a program is, the more precise it plays. It is of no use to calculate 15 plies deep and at the end not being able to decide if the resulting positions would be in favor of White/Black, to which extent (or equal). So, to head for certain positions instead of others, the program must be sure that position is the best it could achieve. It is not perfect, but sufficiently good to play relatively strong chess (probably of a good IM level, as HIARCS 6 showed in beating IM Deen Hergott in a 6 games match (40 moves in 2 hours), only losing one game. Hergott had a FIDE rating a little below 2400. > >(3) If someone wished to write a simple subroutine or sub-program [which would >later be incorporated into a chess engine] which had the purpose of "exploiting >the enemy's weak spots," what would this software look like? Is this actually >done in any of the stronger chess engines? If so, how is it accomplished? In fact, as Steinitz pointed it, the only reasonnable place to attack (when you have the advantage) is at the weakest spot of the ennemy (who would be fool enough to attack a stronghold at its most well guarded spot?). And yes, programs do this. They are also good at DEFENDING weak spots (the best programs at least). > >(4) If someone wished to write a simple subroutine or sub-program [which would >later be incorporated into a chess engine] which had the purpose of "protecting >one's own weak spots," what would this software look like? Is this actually >done in any of the stronger chess engines? If so, how is it accomplished? > See the end of the answer to your last question. >(5) If someone wished to write a simple subroutine or sub-program [which would >later be incorporated into a chess engine] which had the purpose of "Formulate a >plan of attack, by trying to capture his men while maintaining your own >mobility," what would this software look like? Is this actually done in any of >the stronger chess engines? If so, how is it accomplished? > There! Planning has about always been the weakest point for computers playing chess... But now, with the monster CPUs that have come, we see that a deep calculation resembles to something like a correct plan. Maybe HIARCS 6 is able to formulate "real" plans as it is supposed to be a strategic programs (slow searcher). I do not know since I don't have this program, but plan to buy the engine to put in Fritz later. You must know that for a GM, the planning part is mostly done saying mental sentences to oneself. Things like :"it would be nice to go on g5 with the knight and then, after closing the center with d4-d5, push the kingside pawns and open lines for the rooks there... But it coule be wise to first transfer the king to the queen-side." So, for a GM, the planning part (usually in closed positions) involves no calculations, or almost. The chess programs cannot really do that, so they have to "calculate" a plan. This reminds me of a story (don't ask me in what book exactly I got it!): 2 players were analyzing a game (close to the ending phase or already in it) and Capablanca came near the board and watched the players calculate and try moves for a short moment. Then he changed all the position, putting the pieces on specific squares (not playing moves, but creating a position). Then he just said that this position was winning for this side (don't remember which colour, but it has no real importance) and now all we have to do is reach that position with our moves. So the plan was just to try to reproduce that position! And that could be done! >(6) If someone wished to write a simple subroutine or sub-program [which would >later be incorporated into a chess engine] which had the purpose of "launch an >attack," what would this software look like? Is this actually done in any of >the stronger chess engines? If so, how is it accomplished? Fritz 5 is good at attacking, as well as Rebel (I don't own it, but from the games I looked at from the SSDF database) and the new Junior 5. In fact all the top programs you find on the SSDF list are good at attacking > >COMMENT: My impression is that doing these things directly would be very >difficult to program. Apart from the "planning part", it has all been done! 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.