Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: The readme file for Rybka 1.01 beta 12

Author: Wayne Lowrance

Date: 17:55:06 01/24/06

Go up one level in this thread


On January 24, 2006 at 20:15:31, Graham Banks wrote:

>Rybka 1.01 Beta 12
>January 23, 2006
>
>
>Brief Overview
>
>Disclaimer
>
>This is an unpolished, untested release of the program. If you are a casual
>user, we suggest that you save yourself potential trouble and continue using
>Rybka 1.01 Preview 2 until the next more widely tested release is made.
>
>Release Audience
>
>Rybka Beta testers.
>
>Release Features
>
>1)	Search changes (search work is now finished for the Rybka 1.2 release)
>2)	New settings for adaptive search outlook
>3)	Some bug fixes
>
>Updates about Configurable Search Parameters
>
>The brief conclusions about Rybka search parameters to date are:
>
>1)	The Seach Focus parameter seems to have little impact on playing strength
>(oddly enough), and the default setting of 2 has indeed performed the best
>overall (also quite odd, it was a wild guess on my part).
>2)	The Search Soundness parameter should either be "solid" or "ultrasolid".
>Currently "ultrasolid" scores slightly better, but I'd like to collect more
>data. The other two settings are now out of the running for default.
>3)	The Search Direction parameter will continue to have the "slightly
>positional" default, which has performed slightly stronger than the
>alternatives.
>4)	The Search Outlook parameter is very interesting and will now be investigated
>in more detail. The potential for improvement is large, but a more properly
>adaptive approach appears to be called for.
>
>Please see the section below for more details.
>
>
>Search Outlook
>
>Background
>
>Of the parameters exposed for testing in the Beta 10 release, the Search Outlook
>parameter has been the most productive. Under some conditions, optimistic
>settings appear to give a marked improvement; under other conditions, neutral
>and even pessimistic settings appear to be better.
>
>As a result, Beta 12 contains a greatly expanded set of configurable parameters
>for playing around with this aspect of search.
>
>Disclaimer: these parameters are (at the moment) quite complicated, and if a
>user doesn't know what he's doing, he can create some configurations which will
>seriously harm the playing level of the engine. If you are not an expert in
>these settings, I suggest that you leave them at their default settings until
>more experienced testers have had a chance to determine which combination is the
>best.
>
>Optimism and Pessimism
>
>The Rybka search has a concept of optimism and pessimism. To put this concept
>into lay terms, a more optimistic search will look harder at alternatives for
>the side to move which have been previously dismissed, while a more pessimistic
>search will look harder at alternatives for the opponent. Inside the Rybka
>search, these two concepts are already handled in a naturally  asymmetric
>manner, and this setting allows the user to control the extent of this
>asymmetry.
>
>The practical effect is that optimistic settings are more likely to quickly find
>resources for the side-to-move which increase the advantage, while pessimtic
>settings are more likely to quickly find resources for the opponent which refute
>the currently intended move (and force the player-to-move to look for a better
>one).
>
>Adaptiveness of Optimism
>
>The initial data has suggested that a blanket optimism or pessimism is not the
>best way. Rather, the search should be optimistic in some settings, and
>pessimistic in others. Of course, this is done inside the search naturally. The
>question for these settings is if we can make a global suggestion based on the
>situation which is known before the search even begins.
>
>The following hypothesis currently exist:
>
>1)	Weaker opponents call for more optimism
>2)	Good positions call for more optimism
>3)	Good positions call for more pessimism :
>4)	Improving positions call for more optimism
>5)	Fast time control games call for more pessimism
>
>As you can see, at least one of the above hypothesis is guaranteed to be wrong.
>This investigation is in the early stages.
>
>A Bit More Technical
>
>The current implementation of the Search Outlook control is complicated enough
>that I have to go a bit deeper. Rybka has an "iterative" search. That is, it
>does a pass #1 of the root position, then a pass #2 (which takes longer and
>comes to a better conclusion), then a pass #3, etc. Almost every engine works
>iteratively, although the quantities being iterated over may differ.
>
>There is always a point where the engine is about to start pass #x of the
>current position. This is the point at which we compute the level of optimism
>for that pass (or "iteration"). At the next pass, we compute the level of
>optimism again - it may be different.
>
>The optimism is calculated as follows:
>
>1)	Start with the basic optimism value, according to the "Outlook" setting,
>using the following translation:
>
>Very pessimistic: -2
>Slightly pessimistic: -1
>Neutral: 0
>Slightly optimistic: 1
>Very optimistic 2
>
>2)	Adjust the optimism based on the level of the opponent, taken from the
>"Opponent Level" parameter.
>(If "slightly strong" or "much stronger", we use the adaptation from the
>"Stronger Opponent Adjustment" setting. If "slighty weaker" or "much weaker", we
>use the adaptation from the "Weaker Opponent Setting". If "equal", we do not
>adjust the optimism based on the level of the opponent.)
>
>An adaptation of "much more pessimistic" subtracts two from the optimism.
>An adaptation of "slightly more pessimistic" subtracts one from the optimism
>An adaptation of "none" does not change the optimism
>An adaptation of "slightly more optimistic" adds one to the optimism
>An adaptation of "much more optimistic" adds two to the optimism
>
>3)	Adjust the optimism based on the latest search score for the position. This
>is controlled via the "Good Position Adjustment" and "Bad Position Adjustment"
>parameters. (A good position is considered one with a score of >20 centipawns, a
>bad one is <-20 centipawns.)
>4)	Adjust the optimism based on the latest improvement of the position. This is
>controlled via the "Improving Position Adjustment" and "Deteriorating Position
>Adjustment" parameter. (A position is improving if twice in a row the search
>score increased, or if the search score increased by >35 centipawns over the lat
>three "iterations")
>5)	Adjust the optimism based on the time control. This is controlled via the
>"Very Fast Time Control" parameter. (A time control is considered "very fast" if
>the search allocates less than 8 seconds for the upcoming move.)
>
>The final optimism calculated using the above algorithm is used in the search
>for that pass (or "iteration").
>
>Search Parameters related to Outlook
>
>The following parameters are used to control the outlook (more details are found
>in the "A Bit More Technical" section above.)
>
>1)	Opponent Level
>2)	Outlook
>3)	Stronger Opponent Adjustment
>4)	Weaker Opponent Adjustment
>5)	Good Position Adjustment
>6)	Bad Position Adjustment
>7)	Improving Position Adjustment
>8)	Deteriorating Position Adjustment
>9)	Very Fast Time Control Adjustment
>
>Final Notes
>
>I have left the default configuration to be the "neutral" state, with no
>adjustments. This is done to make sure that the default Rybka Beta 12
>configuration is well-tested before release. The hypotheses listed above must be
>set by users manually.
>
>Other Configurable Search Parameters
>
>This section deals with configurable search parameters other than "Search
>Outlook". These are at the moment a bit less important.
>
>Search Soundness
>
>Values: Ultrasolid, Solid, Speculative, Ultraspeculative
>Default: Solid
>Confidence in default: Medium to High
>Overview: Similar in concept to "search focus". Solid values make fewer
>assumptions about the position and are less likely to make a really serious
>search mistake. Speculative values attempt to guess more.
>Background: As in the case of "search focus", an intelligent search would use an
>"ultraspeculative" approach. Unfortunately, Rybka's current heuristics don't
>appear to justify it. Of the four values, probably the "ultrasolid" and "solid"
>are the best choices at present.
>Summary of Test Data: Ultrasolid and Solid are both candidates to be the default
>setting in Rybka 1.2. Ultrasolid leads slightly, and my own intuition is quite
>neutral between these two. The more speculative settings don't perform well and
>they are now out of the running to be the default setting.
>
>Search Focus
>
>Values: #s from 1 to 6
>Default: 2
>Confidence in default: Medium to high
>Overview: Small values instruct the search to emphasize searching broadly at the
>expense of not searching as deeply. Larger values instruct the search to try to
>look deeply, at the risk of overlooking (or underestimating) moves which are
>improbable.
>Background: I have been trying and trying to organize my search in such a way
>that it can ignore looking at "stupid" variations and concentrate on the
>important ones. Unfortunately, it has not been easy to do this. The heuristics
>that I have come up with are controlled by this parameter. A value of 1 uses
>these heuristics very modestly and continues to spend considerable resources
>even on moves which are deemed unlikely, while a value of 6 uses them very
>aggressively. The values of 1 and 6 are unlikely to be best. If I had to guess,
>it would be that the modest settings of 2 or 3 are actually the strongest.
>Summary of Test Data: The default has performed the best by a slightly margin,
>but none of the other settings drops playing strength significantly. The
>sligthly weird conclusion at the moment is that there is not much to gain by
>twiddling with this parameter.
>
>Search Direction
>
>Values: Very Positional, Slightly Positional, Slightly Tactical, Very Tactical
>Default: Slightly Positional
>Confidence in default: High
>Overview: Positional settings are more likely to find good quiet continuations,
>tactical settings are more likely to find forcing continuations.
>Background: Unlike the other parameters, this one controls the behavior of the
>search "at the tips". The more tactical settings perform (or extend) additional
>tactical investigations into tip positions. There are two types of
>investigations: slightly positional is conservative is both, very tactical is
>aggressive with both, while slightly positional is conservative with one and
>aggressive with the other and slightly tactical is vice-versa.
>Summary of Test Data: This setting has been included since the very first Beta
>release and has been thoroughly tested. The original default was "very
>positional", but slightly positional performed a bit better and I have since
>aligned my thinking with the data :) The two tactical settings perform
>noticeably worse than the two positional settings.
>
>
>FAQ
>
>Is the Rybka search now complete?
>
>Yes - 100.0% complete for the Rybka 1.2 release. I am now satisfied that more
>basic (and more time consuming) investigations are needed to continue this work
>and that this is the right moment to stop.
>
>Which versions of Rybka feature playing strength improvements?
>
>Unfortunately testing has shown that the improvements in Beta 11 were minimal as
>compared to Beta 10d, and the same applies to Beta 12. I do believe in these
>changes, but facts are facts. Hence, existing Rybka versions have the following
>three basic playing levels:
>
>1) Rybka Beta 1 through Rybka Beta 7 - same strength
>2) Rybka Beta 9 - first of the search changes, first improvement in playing
>strength
>3) Rybka Beta 10, Rybka Beta 10d, Rybka Beta 11, Rybka Beta 12 - further search
>changes and further improvement in playing strength
>
>What can we expect from Beta 13, and when can we expect it?
>
>Beta 13 should have the following features:
>
>1) EGTB access
>2) Bug fixes
>
>It should be ready within 3 days.
>
>What about the actual endgame knowledge?
>
>This is being worked on in parallel and is going through an offline process. It
>looks to be roughly on schedule for integration into a released version of Rybka
>sometime around Feb 1.


wow thank you
Wayne



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.