Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Let's back off for a minute from Rc6

Author: Albert Silver

Date: 07:02:01 10/22/00

Go up one level in this thread


On October 21, 2000 at 02:59:53, Ratko V Tomic wrote:

>>That was my point.  If we both make errors at the same frequency, but yours
>>cost you 10 times as much as mine, you go broke first, assuming we start with
>>the same amount of money.
>>
>
>The problem with optimum bet size is a bit trickier. If gambler's odds of
>winning single game (e.g. a coin toss or dice roll) are P and if P>0.5, then the
>optimum bet he should place is C*(2P-1), where C is his current total capital,
>i.e. he should always bet 2P-1 fraction of his current net worth. If P<0.5 then
>player should bet 0 (i.e. if odds are against you, don't bet at all).
>
>Now suppose GT has specialized, very finely tuned king-attack tactics
>algorithms. It can compute in these situations faster, thus deeper and more
>accurately than a program without this specialized code. Since the truncated
>minimax will make errors, the more the shallower its search, the situation is
>similar to gambling. The deeper program will make errors, too, but its odds of
>error are smaller than of the shallower program.
>
>So, if in a double-edged king-side attack GT, due to its specialized king-side
>tactics code, has odds of 55% of outcomputing program X in each step, its
>optimum bet would be about 2*0.55-1=0.10, i.e. it should bet 1/10th of its
>current value. The total (approx) material value GT initially has is, say, (8*1
>+ 4*3 + 2*5 + 10)=40. If some exchanges took place, say 2 pieces and 4 pawns per
>side, the total material capital is around 30 per side. Now if GT can get at
>this point into the kind of position where its odds of outwitting X are 55%, it
>should start betting about 3 pawns, a full piece. The greater its odds of
>outcomputing X on each step, the more it should bet. For example if its odds are
>60% instead of 55%, it should bet 2*0.6-1=20%, i.e. with total capital 30, it
>should bet 6 pawns or 2 pieces worth.

So you are proposing the program play the opponent as opposed to the position.
An interesting idea, but I think it might be almost impossible to apply without
enormously detailed information on the opponent, and even then with no
guarantees that this will produce more dangerous moves (for the opponent). For
one, you have the rating of the opponent, which must be correct in relation to
your program and not be an absolute rating (SSDF or FIDE for example). Why?
Because the rating is being used to determine how your program responds to the
opponent, and even if the opponent has an absolute rating that is 50 points
higher, if it typically performs on an equal footing with your program, that is
what counts. The there is the matter of the types of position that favour your
program and those that favour the opponent. Without detailed advance
information, this is almost impossible, because you would need to be certain
that changing certain eval parameters according to this opponent will truly
produce more dangerous moves.

As for using the probability of outwitting your opponent, which I'm defining as
"playing a superior move whatever the reason", to justify sacrificing material,
well, remember that your superior moves will have to turn up at least as much
material or mate. Are you confident that those 10% in your favour are
sufficient? I prefer to have the program play the position (in general cases, as
CC tournaments or special events are special cases) here. In this case, it would
be safe to have the program steer the game into positions that favour its
particular style or knowledge, though it won't do so in relation to its
opponent.

Bob mentioned that it doesn't matter whether you tell the program to attack
because the attack is worth +0.3, +3, or +100, as in all cases it will attack,
but there is the element of worth still. Afterall, the question isn't only in
how much the program evaluates its attack, but what this eval causes, and here
it will be telling the program that a certain amount of material is expendable.
I don't think one should simply tell the program to go gung-ho (line 20: When
Attack, Eval = Eval +2), but rather determine what characteristics or
combination of characteristics justify special eval changes. Ex: Doubled
isolated pawns are bad; Doubled isolated pawns around the king are worst; and
doubled isolated pawns around the king with all hell about to break loose are
VERY VERY bad. :-)  That's what I meant when I said I didn't think there were
set patterns that one can say are worth a piece. It isn't that there aren't
attacks that are worth a piece (of course there are - many), only it isn't a
single set pattern. It's an evaluation of all the position's characteristics as
a whole.

                                         Albert


>
>The trigger condition for a program to start gambling profitably is that its
>odds of outcomputing its opponent in a given type of position are better than
>even. In practice one doesn't know what are the odds of outcomputing opponent in
>a given position. So the way one would tune it in practice is to set the risk
>aversion to increase against the better tactician.
>
>Since in computer chess the rating is fairly well correlated with tactical
>abilities of the programs, in absence of any other information besides rating,
>GT should bet less against the higher rated programs. If more specific
>information is available on its next round opponent, it should bet less against
>programs which are good tacticians in king-attack positions. I suspect
>Christophe is already tuning GT's gambling affinity along these lines.
>
>For longer matches against the same opponent, GT could even automate this
>adjustment as a part of its regular learning, e.g. by increasing or decreasing
>the P after each game based on accumulated results so far. Unlike learning of
>the opening lines, where all lines learned are stored in a single data-base,
>this one (the value P or the optimum bet size) has to be opponent specific.
>
>A special case of the match here is GT playing against regular Tiger. Since both
>probably have the same specialized king-attack search code, the odds P are 0.5,
>hence GT should not gamble at all against Tiger, and if it does, it will not
>fare too well. Since it does appear (from reports here) that GT is weaker than
>Tiger in matches against it, it would follow that Christophe doesn't have the
>opponent specific learning (or even hand tuning) of GT's risk aversion (optimum
>bet size) for matches with a fixed opponent.
>
>Although the above dealt with king-side attack and risk taking, the relation of
>risk taking and existence of some kind of edge holds for any other type of edge.
>For example a program which has some special/unique endgame heuristics should
>take risks to steer the game into such endgames, and the greater the edge the
>greater bets it should place. Any other aspect of middlegame would work, too.
>For example some program may have special heuristics for blocked positions, the
>notoriously weak area of most programs. I think Junior has something of this
>sort, since it seems to like to get into blocked positions, more than other
>programs, so I suspect Amir has some special secret heuristics for these
>positions. Now, he only needs to up Junior's risk-taking drive to get into such
>positions (if playing against programs, not against humans). I haven't noticed
>in Junior any risk taking behavior, though.



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.