Wednesday, November 11, 2015

What is my best Chess Engine Parameter

Playing over the chess server Infinity is a big challenge , People are really well prepared there and maximizing my engine parameter shall be the key to unlock many victory



So according to some research I did ,this is what I have found

-Log dir
-max cpus
-random
-main process priority
-child process priority
-use large pages
-multi pv


-Log dir
What directory to write the logs in.

-max cpus
How many CPUs to use during analysis and game play.  This number should be less than or equal to the number of CPUs on your computer.

-random
Don't remember

-main process priority
The Rybka chess engine has a main server that launches helper child processes.  The priority of the process controls how many time slices the process will get.  There is a single main process.  The higher the number the more compute power the process will get.  However, if you raise the priority of the processes too high, your computer will become unresponsive when the games are being played, especially if max cpus is set equal to your computer's resources.

-child process priority
The Rybka chess engine spawns child processes to help in the search.  The priority of these processes controls how many time slices the processes will get.  For all of these processes, I would not recommend elevating the priority above normal.

-use large pages
Large pages is a fiddly setting that will give your engine a small boost in compute power.  You have to run the processes with administrator rights and memory fragmentation makes this setting somewhat unreliable.  So use with care and read threads that talk about how to use it.

-multi pv 
Multi-pv is NOT good for game play.  It is sometimes useful for analysis of chess positions.  The idea of multi pv is that it has the chess engine study other lines besides the main line.  The problem with multi pv is that it slows down the engine a lot.



http://rybkaforum.net/cgi-bin/rybkaforum/topic_show.pl?tid=27663



Tactical Mode (checkbox)
When Tactical Mode is active, Houdini modifies its search process and uses some clever tricks to focus on tactical solutions in the root position. In Tactical Mode Houdini becomes a very skilled tactical problem solver. Below some results for two popular tactical test suites with Houdini running at 30 seconds per position using 2 threads on a Core i5-750 with 512 MB hash.

1) Arasan 14 Tactical Suite, comprising 197 medium to hard positions
- Houdini 1.5a solves 148 positions, total solution time 34 minutes.
- Houdini 2 solves 155 positions, total solution time 35 minutes.
- Houdini 4 Tactical solves 177 positions, total solution time 22 minutes.

2) Die Tactical Suite, comprising 100 hard positions
- Houdini 1.5a solves 29 positions, total solution time 40 minutes.
- Houdini 2 solves 33 positions, total solution time 39 minutes.
- Houdini 4 Tactical solves 56 positions, total solution time 30 minutes.

Note that the focus on tactical moves will reduce the playing strength of the engine, the Tactical Mode is probably about 30 Elo weaker than the normal playing mode.

One can compare the Tactical Mode to what a human player does when he/she tries to solve a test position in a chess magazine or website. He/she will scan for tactical, forcing moves, threats, sacrifices etc. That way a lot more tactical solutions can be found than what the player would actually see and decide to play over the board, during a normal game. The "this is a test position" message changes the search strategy.
Houdini's Tactical Mode works exactly the same, very human-like: it will spend a lot more time looking for tactical moves, threats etc. In most positions this doesn't provide any benefit - most of the time there is no tactical solution available and all the focus on tactics is just wasted. But in test positions (selected because there IS a tactical solution) it works extremely well.

Strength
Limit strength from 0 (beginner) to 100 (full strength).
Default is 100 (full strength).

The strength reduction is mostly based on a combination of two techniques:
Limiting the number of positions searched - this reduces mostly the tactical strength of the engine;
Purposely picking a move the engine knows is not optimal - this reduces mostly the positional strength of the engine.
The combination of the two produces a game with both tactical and strategic (positional) flaws.

The following table shows the estimated Elo of Houdini 2 at reduced Strength levels. It is based on the feed-back of several users:

Strength  0 => 1200 Elo
Strength 10 => 1500 Elo
Strength 20 => 1800 Elo
Strength 30 => 2000 Elo
Strength 50 => 2300 Elo

This table is very approximate - we welcome any feedback from rated players that could improve these values.
What is the highest strength level that you can consistently beat?

UCI_Elo
UCI-protocol compliant version of Strength parameter.
Default 3000, min 1200, max 3000.

Internally the UCI_Elo value will be converted to a Strength value according to the table given above.
The UCI_Elo feature is controlled by the chess GUI, and usually doesn't appear in the configuration window.

UCI_LimitStrength (checkbox)
Activate the strength limit specified in the UCI_Elo parameter.
This feature is controlled by the chess GUI, and usually doesn't appear in the configuration window.

MultiPV
Number of principal variations shown.
Default 1, min 1, max 32.
The MultiPV feature is controlled by the chess GUI, and usually doesn't appear in the configuration window.

MultiPV_cp
Limit the multi-PV analysis to moves within a range of the best move.
Default 0, min 0, max 999.
Values are in centipawn. Because of contempt and evaluation corrections in different stages of the game, this value is only approximate.
A value of 0 means that this parameter will not be taken into account.

Ponder (checkbox)
Have the engine think during its opponent's time.
The Ponder feature (sometimes called "Permanent Brain") is controlled by the chess GUI, and usually doesn't appear in the configuration window.

Contempt
Level of contempt to avoid draws in game play.
Default 1, min 0 (none), max 2 (aggressive).

The notion of "contempt" implies that Houdini will try to avoid draws by evaluating its own position slightly too optimistically. The Contempt level can be chosen between 0 (none) and 2 (aggressive), the default value of 1 should be a good compromise in most situations.

0 = No Contempt
The evaluations are accurate and identical for both sides. This is recommended for position analysis in which you analyze alternatively for White and Black. The starting position evaluates as approx. +0.15.

1 = Default Contempt
Contempt 1 is primarily based on piece value imbalance, Houdini will value its own pieces higher than the opponent pieces, so will only exchange them if there’s a clear positional advantage in doing so.
This also means that the score is evaluated optimistically for the side to move (at most 0.15 pawn). For example, the starting position evaluates as approx. +0.30 when analyzing for White and +0.00 when viewed from Black. This is only recommended for position analysis if you always analyze for the same side.

2 = Aggressive
Contempt 2 adds some king safety imbalance, leading to a more attacking style.

The contempt settings are fairly mild and have little impact on the objective strength of the engine. It’s hard to say which will give the best results against a given opponent, it may depend on the style and strength of the opponent. One could envisage more pronounced contempt but this would start to degrade the engine’s objective strength.

By default the contempt is only activated during game play, not during infinite analysis. If you enable the Analysis Contempt checkbox, Houdini will also take into account the contempt for infinite analysis.

Analysis Contempt (checkbox)
Activate Contempt for position analysis.

It is usually not recommended to activate the contempt for analyzing positions.
When contempt is active, the score of the analysis will be optimistic (over-evaluated) for the side that is to move. That means that if you use Analysis Contempt the evaluations will change depending on whether White or Black has the move. For example, from the start position, when you do an analysis with Analysis Contempt (and Contempt value 1) you could find a best move e2-e4 scoring about +0.3 for White. If you then play e2-e4 and analyze for Black you could find a score close to +0.0. If you do the same without Analysis Contempt, you should find a consistent +0.15 score whether it’s White or Black to move.

FiftyMoveDistance
The number of moves after which the 50-move rule will kick in.
Default 50, min 5, max 50.

This setting defines the number of moves after which the 50-move rule will kick in - the default value is 50, i.e. the official 50-moves rule.
Setting this option in the range of 10 to 15 moves can be useful to analyse more correctly blockade or fortress positions:
- Closed positions in which no progress can be made without some sort of sacrifice (blockade);
- End games with a material advantage that is insufficient for winning (fortress).

By setting FiftyMoveDistance to 15, you're telling the engine that if it cannot make any progress in the next 15 moves, the game is a draw. It's a reasonably generic way to decide whether a material advantage can be converted or not.

Mate Search
Maximum search depth for mate search.
Default 0, min 0, max 99.
If set, this option will usually speed-up a mate search.
If you know that a position is "mate in X", you can use X or a value slightly larger than X in the Mate Search option. This will prevent Houdini from going too deep in variations that don't lead to mate in the required number of moves.

UCI_Chess960 (checkbox)
Activate Fischer Random Chess a.k.a. Chess960 games.

retrieved from url
http://www.cruxis.com/chess/manual/index.html?game_play.htm

No comments:

Post a Comment