<< 1 >>
Rating:  Summary: For the more advanced practioner Review: . This book will provide the most benefit to someone who has already written a computer chess program and is looking to improve it. The chapters on extended forward-pruning were especially informative and a number of high-level programs currently use the adaptive null-move pruning presented here.I also found the chapter on interior-node recognizers unique and eye opening. A number of clever enhancements are provided that coupled with chapter 6, on knowledgable tablebase encoding, are sure to provide a idea or two even to hardened computer programmers. This book is not for the faint of heart, but if you spend the time delving through it, you will more than likely find a number of ideas to apply to your chess engine. It is written with an academic perspective and is rigourous in the ideas that it presents (unlike Levy and Monroe's books which are geared more towards the general public).
Rating:  Summary: Not bad, but.... Review: The book is pretty good, and I got a lot out of it. It contains lots of interesting ideas about pruning. I suppose I got out of it what I wanted to get out of it. The reason I don't rate the book higher is because most of the book was pretty worthless. Nearly 50 pages of the book is devoted to the move lists of all the games they played! I don't need to see 50 pages worth of computer chess game moves. That's something that could be better served from a website. Sure it's probably needed for the thesis to verify that they actually did the studies they say they did, but I don't think it belongs in the book. Also, a large portion of the book is devoted to end game databases and recognizing when to look in them and optimal ways to index, etc. I wasn't very interested in that. My last complaint is that there isn't really any source code included with the book. All of the snippets of code that are shown are greatly cut up to the point where they're completely illegal. This book would be a 5 start book if they had actual pieces of code - or even the whole source - instead of the stupid moves. Code like if(try_null) { // do null move here } is the kind of code you see. He should have just printed the full alpha-beta algorithms. He tries to describe them as clearly as possible, using as little as possible real code. Like he wants to explain it all, yet keep it a secret! Putting in the code would be self-descriptive.
Rating:  Summary: Not bad, but.... Review: The book is pretty good, and I got a lot out of it. It contains lots of interesting ideas about pruning. I suppose I got out of it what I wanted to get out of it. The reason I don't rate the book higher is because most of the book was pretty worthless. Nearly 50 pages of the book is devoted to the move lists of all the games they played! I don't need to see 50 pages worth of computer chess game moves. That's something that could be better served from a website. Sure it's probably needed for the thesis to verify that they actually did the studies they say they did, but I don't think it belongs in the book. Also, a large portion of the book is devoted to end game databases and recognizing when to look in them and optimal ways to index, etc. I wasn't very interested in that. My last complaint is that there isn't really any source code included with the book. All of the snippets of code that are shown are greatly cut up to the point where they're completely illegal. This book would be a 5 start book if they had actual pieces of code - or even the whole source - instead of the stupid moves. Code like if(try_null) { // do null move here } is the kind of code you see. He should have just printed the full alpha-beta algorithms. He tries to describe them as clearly as possible, using as little as possible real code. Like he wants to explain it all, yet keep it a secret! Putting in the code would be self-descriptive.
<< 1 >>
|