Computer Chess Club Archives


Search

Terms

Messages

Subject: Crafty: trouble with possible perpetual check positions

Author: Dave Gomboc

Date: 18:44:00 04/20/99


Here's a "real position", that is, one that has actually been reached in games.
It is from the Marshall Gambit in the Ruy Lopez.

[Event "?"]
[Site "?"]
[Date "?"]
[Round "-"]
[White "?"]
[Black "?"]
[Result "*"]

1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 O-O 8.
c3 d5 9. exd5 Nxd5 10. Nxe5 Nxe5 11. Rxe5 c6 12. d4 Bd6 13. Re1 Qh4 14. g3
Qh3 15. Be3 Bg4 16. Qd3 Rae8 17. Nd2 Re6 18. a4 f5 19. Qf1 Qh5 20. f4 bxa4
21. Rxa4 Rb8 22. Bxd5 cxd5 23. Qg2 Qe8 24. Qxd5 Kh8 25. Kf2 g5 26. Rxa6
Rxb2 27. Ra2 gxf4 28. gxf4 Rxa2 29. Qxa2 Bxf4 30. Nf1 Qe7 *

Now, White can (and I think should) play 31. Qxe6 here.  What is Black's best
response?  Well, if 31...Qh4+ leads to perpetual, then it is best, otherwise
31...Qxe6 will probably have to do.

Rebel 9 (PII-300) thinks the position after 31...Qh4+ is +3.xx after under a
second, and holds this score for at least 5 minutes.  It's main line is Qh4+ Kg1
Bxh2 Nxh2 Qg3+ Kh1 Qxe1+ Kg2 ...


Crafty 16.6 (dual PII-300) appears to think that the position is a draw:

max threads set to 2
display PV each time it changes.
display statistics at end of each search.
display extended statistics at end of each search.
display move numbers in variations.
hash table memory = 48M bytes.
pawn hash table memory = 4M bytes.

Crafty v16.6 (2 cpus)

White(1): read test.pgn
middle-game phase
              puzzling over a move to ponder.
              clearing hash tables
              depth   time  score   variation (1)
starting thread 1
                4->   0.09   0.99   31. Qxe6 Qxe6 32. Bxf4 Qd5
                5     0.11   1.03   31. Qxe6 Qxe6 32. Bxf4 Qc4 33. Re3
                5->   0.30   1.03   31. Qxe6 Qxe6 32. Bxf4 Qc4 33. Re3
                6     0.33   1.10   31. Qxe6 Qxe6 32. Bxf4 Qc4 33. Re8+
                                    Kg7 34. Re7+ Kf6
                6->   0.59   1.10   31. Qxe6 Qxe6 32. Bxf4 Qc4 33. Re8+
                                    Kg7 34. Re7+ Kf6
                7     0.76   1.02   31. Qxe6 Qxe6 32. Bxf4 Qc4 33. Re3
                                    Qa2+ 34. Ke1 Qc2
                7->   2.28   1.02   31. Qxe6 Qxe6 32. Bxf4 Qc4 33. Re3
                                    Qa2+ 34. Ke1 Qc2
                8     2.55   0.98   31. Qxe6 Qxe6 32. Bxf4 Qc4 33. Re3
                                    Kg8 34. h3 Bd1
White(31): Qxe6 [pondering]
              clearing hash tables
              time surplus   0.00  time limit 30.00 (3:00) [easy move]
              depth   time  score   variation (1)
                5->   0.09  -1.10   31. ... Qxe6 32. Bxf4 Qc4 33. Re8+
                                    Kg7 34. Re7+ Kf6
                6     0.12  -1.02   31. ... Qxe6 32. Bxf4 Qc4 33. Re3 Qa2+
                                    34. Ke1 Qc2
                6->   0.31  -1.02   31. ... Qxe6 32. Bxf4 Qc4 33. Re3 Qa2+
                                    34. Ke1 Qc2
                7     0.37  -0.98   31. ... Qxe6 32. Bxf4 Qc4 33. Re3 Kg8
                                    34. h3 Bd1
                7->   0.62  -0.98   31. ... Qxe6 32. Bxf4 Qc4 33. Re3 Kg8
                                    34. h3 Bd1
                8     1.30  -1.22   31. ... Qxe6 32. Bxf4 Qb3 33. Re3 Qc2+
                                    34. Kg1 Be2 35. Re8+ Kg7 36. Ng3 Qd1+
                                    37. Kg2
                8     3.50     ++   31. ... Qh4+!!
                8     3.59   0.00   31. ... Qh4+ 32. Kg2 Qh3+ 33. Kf2 Qh4+
                8->   4.01   0.00   31. ... Qh4+ 32. Kg2 Qh3+ 33. Kf2 Qh4+
                9     5.08   0.00   31. ... Qh4+ 32. Kg2 Qh3+ 33. Kf2 Qh4+
                9->   5.80   0.00   31. ... Qh4+ 32. Kg2 Qh3+ 33. Kf2 Qh4+
               10     8.86     --   31. ... Qh4+
               10    31.34     ++   31. ... Qh4+!!
               10    31.36   0.00   31. ... Qh4+ 32. Kg2 Qh3+ 33. Kf2 Qh4+
                                    <HT>
               10->  33.06   0.00   31. ... Qh4+ 32. Kg2 Qh3+ 33. Kf2 Qh4+
                                    <HT>
               11    37.37   0.00   31. ... Qh4+ 32. Kg2 Qh3+ 33. Kf2 Qh4+
               11->  40.87   0.00   31. ... Qh4+ 32. Kg2 Qh3+ 33. Kf2 Qh4+
               12     1:00     --   31. ... Qh4+
               12     4:37     ++   31. ... Qh4+!!
               12     4:37   0.00   31. ... Qh4+ 32. Kg2 Qh3+ 33. Kf2 Qh4+
                                    <HT>
               12->   4:48   0.00   31. ... Qh4+ 32. Kg2 Qh3+ 33. Kf2 Qh4+
                                    <HT>
               13     5:30   0.00   31. ... Qh4+ 32. Kg2 Qh3+ 33. Kf2 Qh4+
               13->   5:48   0.00   31. ... Qh4+ 32. Kg2 Qh3+ 33. Kf2 Qh4+
               14     7:51     --   31. ... Qh4+
White(31): quit
execution complete.

[I typed in quit when the time count was past 30 minutes.  It had not yet
resolved the 14th ply.]

I am not very good with operating crafty from the command line: I could not tell
it to "go to infinite time control mode and think on a move".  But it seems like
this ponder search should be sufficient.

Anyway, once I get to the position after Qh4+, Crafty decides to play 32. Kg1 in
under 3 seconds, with a large score (> 3 pawns).  So why was it taking so long
to see this in the ponder search?  I am not sure if it is a symptom of a search
going haywire, or merely a run-of-the-mill bug. :/

How do other programs handle this position?  Oh, and could someone on the crafty
email list please post this there for Bob, since he doesn't seem to be around on
CCC anymore.

Dave



This page took 0.01 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.