Fritz11's engine parameters

by ChessBase
9/5/2008 – There are numerous ways to tweak a chess engine's performance: hash tables, different time controls, endgame tablebases, handicap modes. But a little-used performance tweak for Fritz11 is its engine parameters. You can find out more about these variable settings in the new edition of ChessBase Workshop.

ChessBase 17 - Mega package - Edition 2024 ChessBase 17 - Mega package - Edition 2024

It is the program of choice for anyone who loves the game and wants to know more about it. Start your personal success story with ChessBase and enjoy the game even more.


Fritz11 brought several changes to both the program interface and to the engine itself. Appearing among the engine changes was a newer, more streamlined set of adjustable engine parameters. These appear in their own dialogue; to reach it from the main chessboard screen, hit F3 to bring up the scrolling list of available engines, single-click on the Fritz11 engine in the list (to highlight it), then click the "Engine parameters" button:


A frequent user question is "How can I change the engine parameters to make Fritz11 stronger?" The simple answer is this: the deafult setting is the one recommended by Fritz' programmers for general use. However, should you wish to experiment with alternative settings, feel free to tweak to your heart's content -- just be aware that changing the engine parameters might be either beneficial or harmful to Fritz' playing strength depending on the interplay of the settings you've selected and the exact game/board situations which arise.

The box for "Use tablebases" is self-explanatory; uncheck the box if you don't want the engine to access tablebases for improved endgame play. Why would you want to uncheck this box? One example is an experiment to see how an engine evaluates an endgame position using its own algorithm instead of using the tablebase files.

There's also a check box for turning the "null move" aspect of the Fritz engine's algorithm on and off. We've discussed "pruning" in previous columns; if an engine sees a move it deems unpromising early in its search, it cuts this move out of consideration in later, deeper searches. The "null move" feature acts as a aid in pruning. The engine supposes that it could make two moves in a row (without a reply from the opponent in-between); if the positions after various second moves are evaluated as not giving the engine a significant advantage, then the first move is deemed unpromising and is "pruned", that is, removed from further consideration. This allows the Fritz engine to perform deeper searches by not wasting time on side branches which don't lead to noticible gains (this is why you seldom see a chess engine sacrifice significant material). Unchecking this box turns off the "null move" feature; the engine won't look as far ahead, but the trade-off is that it's less likely to miss an important side variation which initially looks like it leads nowhere but later results in some large advantage.

"Draw value" is a variant of what is often called "contempt value" by chess engine programmers (you'll often see it called by that name in some of our other chess engines). This value controls how readily the engine will play for a draw. It's similar to the judgement a human player would use going in to the last round of a tournament; if a last round draw would result in the player still winning the tournament, he'll be more willing to play for a draw than if the last round game is a "must win" for the player to finish in first place.

Leaving Fritz at the default "0" setting means that the engine will use its normal play settings. Setting the numerical value to a positive number means that Fritz will actually be willing to accept a stalemate, even playing for one if possible. Setting the value to a negative number means that the engine will try to avoid stalemate. The father the value is from zero, the stronger the effect on the engine. The value can be set from -200 up to 200. For example, if the value is set to -200, the engine will be willing to sacrifice up to two pawns to make sure that a stalemate does not occur. A positive 200 means that the engine will sac material up to two pawns to make a stalemate happen.

You can combine these settings in various ways; they're independent of each other. If you discover an interesting setting you wish to use again, you can save the settings as a reloadable file. Just click the "Save" button; a dialogue will allow you to name and save the current engine parameters into a file with the *.param suffix. If you develop a collection of these, you can easily switch between them by clicking the "Load" button and using the resulting dialogue to load the desired .param file. Of course, you can always return to the programmers' recommended default settings by clicking the "Defaults" button.

Why would you want to change the way the engine thinks? Just plain old experimentation is one reason. If you combine last week's ChessBase Workshop with this one, you might try using the Shootout feature with a variety of engine parameter settings. For example, you might have an engine play three games against itself from a particular position using the default engine parameters, then turn off the "null move" feature and run three more games from the same position to see how the engine's play changes.

There are myriad possibilities here and exploring them can be both interesting and fun. And the latter is what I'd like you to be having until we meet again next week...

You can e-mail me with your comments on ChessBase Workshop. No tech support questions, please.


© 2008, Steven A. Lopez. All rights reserved.

Reports about chess: tournaments, championships, portraits, interviews, World Championships, product launches and more.


Rules for reader comments


Not registered yet? Register