Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Pawn Majorities : some working examples...

Author: Ricardo Gibert

Date: 22:04:28 09/21/99

Go up one level in this thread


On September 21, 1999 at 09:52:02, Robert Hyatt wrote:

>On September 21, 1999 at 02:23:38, Ricardo Gibert wrote:
>
>>On September 20, 1999 at 14:42:27, Robert Hyatt wrote:
>>
>>>
>>>
>>>OK... I now have some working code.  It is not perfected, by any stretch yet,
>>>but it works in two pieces, and one of the two pieces is really good, from an
>>>accuracy point of view.  Here is what I have done:
>>>
>>>1.  I have written a piece of code that is very good at enumerating candidate
>>>passers in a possition.  Nothing fancy except that bitboards help a lot in
>>>discovering which pawns are candidate passers.  I produce an 8-bit vector for
>>>each side with a 1 on a file for a candidate passer being present, a 0 if no
>>>candidate is on that file...
>>>
>>>2.  I am using this in a way that is conservative at present, but which works
>>>pretty well.  If white has a candidate, I compare the 'outsideness' of that
>>>candidate against real passers and candidate passers for the other side, and
>>>give a bonus (that is bigger as material comes off) if it has an outside
>>>candidate passer.
>>>
>>>Here are a couple of examples:
>>>
>>>       +---+---+---+---+---+---+---+---+
>>>    8  |   |   |   |   |   |   | *K|   |
>>>       +---+---+---+---+---+---+---+---+
>>>    7  | *P| *P|   |   |   | *P| *P| *P|
>>>       +---+---+---+---+---+---+---+---+
>>>    6  |   |   |   |   |   |   |   |   |
>>>       +---+---+---+---+---+---+---+---+
>>>    5  |   |   |   |   |   |   |   |   |
>>>       +---+---+---+---+---+---+---+---+
>>>    4  |   |   |   |   |   |   |   |   |
>>>       +---+---+---+---+---+---+---+---+
>>>    3  |   |   |   |   |   |   | P |   |
>>>       +---+---+---+---+---+---+---+---+
>>>    2  | P | P | P |   |   |   | P |   |
>>>       +---+---+---+---+---+---+---+---+
>>>    1  |   |   |   |   |   |   | K |   |
>>>       +---+---+---+---+---+---+---+---+
>>>         a   b   c   d   e   f   g   h
>>>
>>>
>>>(fen  6k1/pp3ppp/8/8/8/6P1/PPP3P1/6K1/ w)
>>>
>>>old (16.18 crafty) evaluates this as -36 (black is better) because of
>>>those two doubled kingside pawns.  new crafty says +.36 because white has
>>>a potential outside passer on the c file, black can't force a passer without
>>>the king helping.  Better...
>>>
>>>Here is a test of that code, as it is not very well known that two doubled
>>>pawns can stop a majority, when a duo can't, as in the previous example.
>>>       +---+---+---+---+---+---+---+---+
>>>    8  |   |   |   |   |   |   | *K|   |
>>>       +---+---+---+---+---+---+---+---+
>>>    7  | *P| *P|   |   |   | *P| *P| *P|
>>>       +---+---+---+---+---+---+---+---+
>>>    6  |   |   |   |   |   |   |   |   |
>>>       +---+---+---+---+---+---+---+---+
>>>    5  |   |   |   |   |   |   |   |   |
>>>       +---+---+---+---+---+---+---+---+
>>>    4  |   |   |   |   |   | *B|   |   |
>>>       +---+---+---+---+---+---+---+---+
>>>    3  |   |   |   |   |   |   | N |   |
>>>       +---+---+---+---+---+---+---+---+
>>>    2  | P | P | P |   |   | P | P | K |
>>>       +---+---+---+---+---+---+---+---+
>>>    1  |   |   |   |   |   |   |   |   |
>>>       +---+---+---+---+---+---+---+---+
>>>         a   b   c   d   e   f   g   h
>>>
>>>This is the position prior to the last one.  I (as black) played Bxg3.  Old
>>>crafty promptly plays Kxg3 and now it has to watch out for the passed black
>>>pawn on the h file (eventually).  new crafty plays fxg3 and black isn't going
>>>to make any passer.
>>
>>Be careful! It makes a difference where the g-pawn is. In the example I gave
>>earlier (W: Pa3, b2 ,c2 B: Pb5, b7) both sides get a Q with white just ahead of
>>black at the cost of a pawn. In your example (disregarding the Ks for the
>>moment), after the move f5 the position is effectively moved up one rank so
>>black is one rank closer from getting his Q AND white is one rank further away.
>>White will be several tempi slower then. In this particular example, the move
>>fxg3 appears to be fine despite this. Kxg3 allows black to get the better of it
>>due the quality of his candidate (further from the center). I'm too lazy to
>>figure out the evaluations more precisely. The "branching factor" is too high
>>for me at this hour. Interesting example though.
>
>
>this is caught separately, as there is code to evaluate whether _any_ passer
>can 'run' and not be stopped by the opposing king...
>
>
>
>>
>>>
>>>How this is going to work in games is anybody's guess...  the outside passed
>>>pawn code has pretty well stood the test of time, this is just taking in one
>>>level more abstract.
>>>
>>>More after I run it a while to see how it behaves.  BTW, as I mentioned, this
>>>has not slowed me down one bit.  In fact, in adding this, I consolidated several
>>>flags into one pawn hash entry to make room for the two new bitmaps (8 bits
>>>each) and actually the new code is a bit faster than the old (without this
>>>majority stuff)...
>>>
>>>If you have a position you'd like to see it evaluate, let me know.  Best kinds
>>>are those that don't need a search, so we can see what it understands or doesn't
>>>understand with pure evaluation.
>>>
>>>Maybe its endgame strength will increase a little more with this.  It certainly
>>>seems reasonable at present to assume so...
>>
>>How does Crafty cope with: 5k2/8/pppppppp/8/PPPPPPPP/8/8/5K2 w - - 0 0
>>Which move by white does Crafty examine first? A human can find the best first
>>move without "calculating" if he/she knows his stuff. A very instructive
>>position though maybe not so practical ;-)
>
>
>this is based on the 'sneaker' from fine's book I believe.  IE you are looking
>for b5, and by sacrificing a pawn, white gets a passer.  However in this
>position it doesn't seem to work and the evaluation I have done doesn't worry
>about such positions at all.  I am really only trying to recognize an off-side
>majority that will turn into a distant passed pawn and win the game..
>

Eventually b5. The key move is d5 which works. The way to "picture" the position
is to remove the e-pawns from the board. With the 4 vs 4, to obtain the Leftmost
passer, action is initiated on the right. The leftmost passer will then be the
b-pawn. With b5 you are effectively "picturing" the position with the d-pawns
removed, then the b5 move is the way to obtain a passer in 3 vs 3. Leftmost
passer is then determined by the defender and of course he will choose rightmost
passer, which will be the c-pawn. Concrete variations will illustrate all this
better:

1 d5 cxd5 2 a5 bxa5 3 b5
Only now. The leftmost passer will be the b-pawn. At the moment the pawn leaves
the black K "outside the square of the pawn", so black has no time for anything
else. This is VERY important as will be seen later.

3...axb5 4 cxb5 Ke7 5 b6 Kd7 6 b7 Kc7
Advancing the pawn to the 7th sets up a tempo gaining trick, which is seen
often. Remember to "picture" the position with the e-pawns removed. Now is the
time to activate the 3 vs 3 on the k-side. Note that 7 b8Q is a mistake here.

7 g5 fxg5 8 h5 gxh5 9 f5 exf5 10 exf5 a4
Will black now Q with check?

11 f6 a3 12 f7 a2 13 b8Q Kxb8 14 f8Q
No. It is white who Qs with check and he wins.

1 b5? cxb5 2 a5? bxa5 3 c5 dxc5 4 dxc5
A passed c-pawn rather than a passed b-pawn. VERY important. Here black is
already "in the square of the pawn", so he gets an extra move...

4...a4 5 c6 Ke8! 6 c7 Kd7 7 e5 a3 8 ef6 a2
And wins, since white is a tempo short.

Now things should be clear why d5 would be the first move a strong player would
look at. Naturally, he wants to form the leftmost passer and (s)he knows (s)he
can make the b-pawn the one by "picturing" the position with the e-pawns
removed. Then, by experience, (s)he knows that to form the leftmost passer,
(s)he must initiate action on right (a rule of thumb for 4 vs 4), hence d5. Of
course, it would be crazy to play the move "blind".

As I noted, this is NOT a practical position. The particular 4 vs 4 situation
that arises in the above position is pretty rare (forming a passed pawn from a
"quart-grip" is more common W: Pa5, b4, c4, d5; B: Pa6, b7, c7, d6) and it would
be pointless to include it in a program unless you can figure out a way "to do
it for free". All the same, the position is instructive.

>
>
>
>>
>>>
>>>Bob



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.