Preview of FrayerChess 2009
Hello everyone; I would like to wish all a Merry Christmas and a wonderful holiday season. Thank you all for visiting the FrayerChess website over the past year.
Maintaining this website and its associated blogs has been a learning experiences for me as well as therapeutic one. Although I have been frustrated at times, an entertained thoughts of giving it up, a small but dedicated group of computer chess players have always been there to give me encouragement.
It has always been my intent to provide information and recourses for engine chess players. The promotion of engine chess as a true sport has also been a priority. To better accomplish these goals I encourage all visitors to offer suggestions of what they would like to see on the website in the coming year.
FrayerChess is getting ready to go through a metamorphoses. I have been looking closely at what other chess sites are providing and trying to judge what is needed. Engine players seem to want available downloads of opening books, game bases and end game table bases. Those new to engine vs. engine chess need advice on hardware, software configuration and opening book development. Although some of these areas are out of my range of expertise I may be able to enlist the help of more knowledgeable players to write articles and answer question in these areas.
In the coming year I intend to concentrated on opening book development, as well as playing in Freestyle chess events. As for the FrayerChess website you will be seeing a new look, more downloads, commentaries and articles by top computer chess enthusiasts.
As always, any comments, questions or suggestion may be sent to me at Kevin@frayerchess.com
It was recently suggested to me that modern chess programs are nothing more than calculators that use mathematical equations in a brut force attack on chess positions. I began to speculate that this may be a common belief among engine chess players. Of course we all know that calculators do not play chess. Modern chess programs use a variety of sub-routines that prune or limit the number of moves that are considered. Many sophisticated heuristically based techniques have been used to impart a limited but quite effective knowledge of chess to these programs. While far from being sentient, a modern chess engine is much more than a mere calculator.
It seems to me that there is a vast difference between scientific development and practical application of principal. To be sure both are important to the fledgling sport of engine chess.
The computer programs we enjoy today are a direct result of 50 years of scientific research in the field of Artificial Intelligence (Specifically that of Expert Systems, a sub-field therein.) Hundreds of unnamed contributors from many diverse disciplines came together to infuse that first spark of intelligence into a mass of inert circuitry. So slowly did it come about that we don’t clearly see its improbable wonder.
Most of these brilliant men are computer scientists and mathematicians and world class *Nerds. Not the kind of people capable of commercially profiting from the practical application of their work.
A two hour video on the history of computer chess:
The fact that there are industries businessmen that are willing to stand upon the shoulders of these geniuses in order to grab the brass ring of profit, is the way of the world. However as Henry Ford had little to do with the invention of the automobile, so to do the commercial chess programmers of today have little to do with the underlying heuristics of the programs they produce. Ford help put autos into the hands of millions, by doing this made them a practical and useful tool for the average user.
What I am saying is give credit where credit is due and seek the next quantum leap in chess programming from the unknown men and women working in the field of artificial intelligences. Locked away form the world, hidden behind secrecy contracts, in places like Bell Labs and Los Alamos where they continue the advancement to this day.
single-minded enthusiast: an enthusiast whose interest is regarded as too technical or scientific and who seems obsessively wrapped up in it (often used in combination; offensive in some contexts)
In the last few months a new website has made it appearance upon the net. One that’s mission statement and execution is so aligned with my viewpoint of what is best for the advancement of computer chess that I must shout its praises.
Norm Pruitt’s: www.enginechess.com
The mission statement of Norm’s site is to attempt to bring the computer chess player the tools needed to be competitive in a computer vs. computer environment. In this he is succeeding superbly, where others have fallen short. His site is clear, easy to navigate and very comprehensive.
Here you will find opening books by some of the top engine players (many found nowhere else). Articles about and interviews with Freestyle players. Links to all the right websites to get the information that is needed to increase your Elo in engine play. A new forum has just been established there and I will be closely monitoring it and adding to the discussions.
If you need to down load EGTB this is the place to go.
Norm is an acknowledged expert on the use of end game table bases and the hardware require to run them as well as a innovative book maker. He has held the top ranking in engine play, both in Blitz and longer time controls many times over the years. He resides in North Carolina with his wife Joyce and Sissy the chess cat.
As we separate the game of chess down into three parts (The opening, the middle game, and the end game) so too do I divide Engine Chess into three components. My thinking is, that to have a strong playing system, that is capable of sustaining a uniformly high Elo rating, detailed attention should be given to each of these aspects of engine chess.
1. Hardware: CPUs, RAM, Hard disk drives, Motherboards.
2. Software: UCI Engines, GUIs, Databases.
3. Books and EGTBs: Opening books, End game table bases.
The relative importance of these aspects seems to be in constant flux. (so I have not listed them here in order of weight) It also seems to be a highly debated point as engine players approach the game from different points of view. I am certain that players come from several different areas of expertise. Most notably Computers, Programming, and Chess. Some players enjoy seeing how there powerful computer hardware fairs in competition with other machines. Some like to use many different programs, tweaking them and in some cases fiddling with the code. Other come from the world of chess and are enticed by the strangely beautiful games produced by engine play. This I believe is the fulcrum that the fledgling sport can utilize to grow, its attraction to several different groups of enthusiasts.
As they once put on old maps beyond the explored areas “past this point there be monsters” Have no illusions that your old desktop PC with a Pentium in it will be competitive in online engine play. (that’s not to say you can’t still have fun) However there are some real monsters out there. We are now in the era of 64bit multiple core CPUs. The current median standard at this time is Intel’s Quad core 64bit chips. Search depths with these processors even at blitz time control often exceed 21 half moves. Over clocking is common and is a dark art in its self. Some 16-32 core machines lurk in the shadows ready to eat your lunch or Elo as the case my be.
Engine hash size is no longer as dependent upon RAM as it once was. The modern chess engines make use of CPUs L2 catch. (which is much larger in the new CPUs) O no, maybe I should not have said that. (this seems to be one of Rybka little secrets) The L2 catch has traditionally been used for video processing the reason for this is its much faster for the program to save temporary data and retrieve it. The L2 runs at the full speed of the CPU and the RAM modules on the motherboard only a fraction of that speed.
In fact it may be that the latest release of Rybka 2.3.2a has its non-configurable L2 hash size set at 128Mb. How this size was arrived at and whether or not it is the optimum setting seems to be preparatory knowledge. (If this is just idle speculation on my part perhaps Vas will add a comment and clarify the issue)
As for Hard Disk Drives; What I do is keep one just for engine play online. The only things I put on it are a stripped down windows operating system, (I like XPpro 64) The GUI (I like Fritz 9 with latest update) a few UCI engines and all the EGTBs that I will be using in play. (I can just get it all on a 150Gb 10,000rpm Raptor) A fast HD does seem to aide EGTB accesses speed.
The chess engine has reached a state of development as to be unfathomable to us ordinary mortals. Rybka 2.3.2a is by far the strongest commercially available engine at this time. There are some contenders especially in long time controls. Zappa Chess engine by Anthony Cozzie recently beat Rybka in an exhibition match in Mexico It is believed that the Zappa Mexico program used was better at its usage of more than 4 core CPUs. (This is alluding to the perceived problem that Rybka has in correct scaling above 4 cores)
Most of the GUIs are vary good; Fritz 9-10-11 are all compatible with UCI engine as are Shredder and Hiarcs.
ChessBase 9.0 is the premier database program available. Although some what expensive it is worth its price to the serious game collector. Its ability to manipulate game bases is awesome.
I feel that it is important to mention here that one should always buy these programs from the copyright holder. Not only does profiting form ones intellectual property act as an incentive for further improvement in the case of the engines you will want the authors to send you periodic updates.
Books and EGTBs
For me the opening book is the heart and soul of this kind of chess. I will be writing more in the weeks to come on my techniques and suggestions on how to make and develop books for chess engines. For right now let me just say that every one should try to make their own books. It gives your engine games a distinct caricature and unique stile that is a reflection of you own opening theories. There is much satisfaction to be had when your lines work out and much work to be done when they do not.
All the commercially available chess engines come with fairly comprehensive opening books. Although in most cases they are to broad and to shallow in scope. (The books that come with Rybka and Fritz seem to me to be intended to play against human opponents) It is relatively easy to tweak these already wide-ranging books into a more focused repertoire. This probably is where most players should start in the quest to take control of the stile that their engines will play. (Much more about opening books in later entries)
EGTBs are simply the game of chess worked out to its conclusion when only a few peaces are left on the board. All 3-4-5 and most 6 man bases are available some where on the net. However you must be aware that having all 3-4-5-6 man egtbs will require you to have at least 1.4Tb of storage space. No mater how fast your Hard Drives are this will prove to be to taxing on your system in fast time controls.
I recommend getting ChessBase Endgame Turbo 3 Nalimov Tablebases it comes on 9 DVDs and has all 3-4-5 man and a few 6 man. Once loaded onto your HD it will be about 42Gb in size. If configured properly in your GUI it will give you about +30 Elo in engine play. A list of the most commonly accruing 6 man end games can be found on the internet. If you feel brave and have the time and space you can use this list to download a further 100Gb of egtbs from the net. (This will take some time) 140-150Gb of the right bases can get you a +70 Elo boost in fast time controls.
Just before the turn of the new century I began to concern myself exclusively with Engine Chess. By the term, (engine chess) I mean one chess program playing another chess program. The winboard GUI had facilitated this but it was not until the Arena GUI was made available to the public in 2001 that we had a graphic interface specifically designed to play one chess engine against another.
Arena not only was compatible with the winboard protocols but also the newer UCI engines. Everything was configurable; the time controls, the number of games in a match, the engine parameters and of course the opening books along with their weighted learning capabilities. One could now take their computer hardware, chess engines and opining books onto the internet and play against other computers and their human handlers.
Commercial chess programs, particularly Chessbase’s Fritz 7-8 came along with strong client based engines and very pleasing graphics. In September of 2001 Chessbase’s player site, Playchess.com opened a room specifically for engine play and competitive engine chess came into existences. An Elo rating system based on individual computers, programs and the way their users configured them now was possible rather than be based on how they did against human Masters, This made judgments of relative engine strength more viable and contributed to programming development.
Now I know what some are thinking that there had been WCCC tournaments held every few years since 1974. But in fact these events were and still are primarily for showcasing commercial programs and cutting edge computer hardware. In my world view, these elite events held in exotic locations do not constitute Engine Chess being played in public venues by ordinary individuals that we enjoy today.
The commercial programs quickly proved themselves to be as strong their advertising departments had clamed. Fritz, Shredder, Junior, Hiarcs and many others all proved that they could play hauntingly beautiful chess. In early 2006 Vasik Rajlich’s UCI engine Rybka (little fish) rose to the top and is currently the dominant chess program in the world. One of the things I realized early about engine chess was that all things be equal, (both players having similar hardware and using the strongest program available) it is the opening book that made the difference.
Not only does the opening book set the tone of the game but its manipulation is best way for the human operator to communicate with his program. Even if an engine has detailed configuration setting, (material value of the pieces, king safety, aggressive vs. defensive stile) these are esoteric and communicate with the program in a none human way. Only the engine book guided by a human intelligence can channel a chess engines positional decision making power to its fullest potential.
It is possible to move a huge mound of dirt by hand. Using shovels, wheelbarrows and human muscle. History is replete with such accomplishments. Today however we attack the mound with bulldozers and trucks making short work of it. It is no disrespect to the laborers that would have done this feat in the past. As we move forward in 21st century applying these computer programs, theses engines of the mind to our beloved game of chess we mean not to diminish the accomplishments of the great human players but only to advance the game , the art that is chess.
Sometime in the early 90s I became aware of Dr. Robert Hyatt’s open source Crafty program. Not being a programmer, my ability to modify and manipulate the engine was limited. But I saw the potential of chess engines being separate from the graphical interface. They could be modified like internal combustion engines and then dropped into a GUI as if it were a racing chassis. This may have been common in computer programming at that time, I do not know, (compartmentalizing programs so as to be updateable) however the ability to drop an engine into the chess program was and still is a cool idea. Undoubtedly it has contributed to the development of the number crunching magic that goes on inside these invisible contraptions.
There were many good early engines that ran in the winboard GUI. (Delfi, Gromit, Little Goliath, Yace) to name but a few. Remember good is a vary relative term as I have used it here. Like Crafty they all had multiple configuration settings and could be tweaked nicely to the hardware that you were running them on. Opening books that could easily be modified came into being along with book learning and positional learning. Nalimov 3-4 man end game table bases where mated to many of these engines. Winboard protocols were superseded by UCI and we came into the modern era of computer chess.
By the end of the century the 32bit CPU had picked up speed and I will be darned if I could beat the things any longer. If the truth be known, no one could. We all had chess masters setting on our desks.
This may be an obscure reference but I believe to be an accurate analogy. In the movie Close Encounters of the Third Kind remember how after the mother ship had landed and the humans were beginning to communicate with it using musical notes and harmonics. At a given point the communication got to fast and complex for the human operators. A bank of computers could be seen in the background and a voice says “ok, we are taking over this conversation now” and the computers where turned on. The exchange continued faster and more complex than it had been. Strange yet somehow familiar as nonhuman intelligence spoke to us in a human way. This I think is what we are experiencing when we match one computer engine against a another. A strangely beautiful and somewhat disturbing display of nonhuman intelligent.
For me the beginning was in 1983 and the release of the Atari 800XL home computer. At the time I was working at Vincennes University and had had access to a main frame computer with teletype stile terminals. It had no chess programs and the Internet was just a baby. Connecting only a few universities and libraries. The Atari 800XL however had a monitor, floppy disk drive, and loadable programs that included. A word processor, a database and at least two available chess programs. (Sargon, Chessmaster)
At the time I was still playing in over the board chess tournaments and was the faculty sponsor of the universities chess club. As I began to play more correspondences chess I saw the potential of keeping these games organized in the meager database capabilities of these early chess programs. The chess engines themselves where not yet a factor in correspondents chess as they lacked the strength to be of any help in positional analyses.
I suppose, I did not foresee in those early days that programs using minimax algorithms (decision making equations in a zero sum games) would ever be strong enough to challenge the best human players. I believed the way to go was vast databases of games that would be searched for the winning move in any given position. In the early 80s CPU power and data storage were expanding exponentially.
Even on the Atari 800XLs 64K floppy disk many hundreds of games could be stored. I spent hours entering GM games mostly from the Chess Informant, that I subscribed to. These key GM games in the lines that I played in correspondence chess were invaluable in getting my postal (as we called it back then) ELO above 2100 and keep it there for many years.
I smile now when I think of those days. My entire collection of games where no more than 900Kb in size. Today in modern engine vs. engine play I use opening books that are 200-300Mb and end game table bases that are 150Gb in size. It is still not enough, perhaps it never will be.