Test position

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

User avatar
Eelco de Groot
Posts: 4697
Joined: Sun Mar 12, 2006 2:40 am
Full name:   Eelco de Groot

Re: Test position

Post by Eelco de Groot »

Just one more iteration, depth 22. Test is reasonably succesful. This was really the first build with the new search idea, because I made a mistake with the last post, in the other thread, that was really still build 213, not build 214. Maybe I post some more analysis of that with another version. Build 215 seemed a bit less fast so I tried to expand the idea only in the later iterations, when there is a greater chance you already have found the best move and can concentrate on improving the PV. How this works when the best move is less clearly defined is an open question I think.

22.01 382:15 +2.59 13.Ng5 Bd6 14.Qxg7 Kb8 15.e4 Nb4
16.Be3 Qc7 17.Rad1 Nd3 18.Qxf7 Rde8
19.Qxc7+ Bxc7 20.b3 Ne5 21.Bh3 cxb3
22.axb3 Bc8 23.Bd4 Rhg8 24.f4 h6
25.Nh7 Nd7 (9.364.118.925) 408
Debugging is twice as hard as writing the code in the first
place. Therefore, if you write the code as cleverly as possible, you
are, by definition, not smart enough to debug it.
-- Brian W. Kernighan
Robert Flesher
Posts: 1289
Joined: Tue Aug 18, 2009 3:06 am

Re: Test position

Post by Robert Flesher »

zullil wrote:
yanquis1972 wrote:in terms of both finding & understanding the move, stockfish seems to blow the other engines i've tried out of the water --
Well, "understanding" is an admirable goal, but (whatever it may be) it isn't the first priority of an engine in over-the-board play. If Crafty and Spark both quickly choose the best move (even without "understanding" it fully), then they will be successful in actual games, which is their design goal.

In any case, here's what Crafty finds in an hour at 25.7M nps. Note that Ng5 is found in 24 seconds.

Code: Select all

Crafty v23.2 (8 cpus)

White(1): setboard 2kr1b1r/pb3ppp/1qp1p3/3nQ3/2p1N3/6P1/PP2PPBP/R1B2RK1 w - - 0 13
White(1): st 3600
search time set to 3600.00.
White(1): display stats
display statistics at end of each search.
White(1): display

       +---+---+---+---+---+---+---+---+
    8  |   | . |<K>|<R>|   |<B>|   |<R>|
       +---+---+---+---+---+---+---+---+
    7  |<P>|<B>| . |   | . |<P>|<P>|<P>|
       +---+---+---+---+---+---+---+---+
    6  |   |<Q>|<P>| . |<P>| . |   | . |
       +---+---+---+---+---+---+---+---+
    5  | . |   | . |<N>|-Q-|   | . |   |
       +---+---+---+---+---+---+---+---+
    4  |   | . |<P>| . |-N-| . |   | . |
       +---+---+---+---+---+---+---+---+
    3  | . |   | . |   | . |   |-P-|   |
       +---+---+---+---+---+---+---+---+
    2  |-P-|-P-|   | . |-P-|-P-|-B-|-P-|
       +---+---+---+---+---+---+---+---+
    1  |-R-|   |-B-|   | . |-R-|-K-|   |
       +---+---+---+---+---+---+---+---+
         a   b   c   d   e   f   g   h

White(1): go
              time limit 60:00 (+0.00) (60:00)
              depth   time  score   variation (1)
starting thread 1
starting thread 2
starting thread 3
starting thread 4
starting thread 5
starting thread 6
starting thread 7
                8->   0.04   0.31   1. Bd2 Rd7 2. Rfd1 f5 3. Ng5 Bd6 4.
                                    Qxe6 Qxb2 5. Qxf5
                9     0.08   0.09   1. Bd2 c5 2. Ng5 Nf6 3. Bxb7+ Qxb7
                                    4. Rfd1 Bd6 5. Qc3 Rd7
                9     0.10   0.20   1. Bg5 Rd7 2. Bh4 f5 3. Nd2 Qb4 4.
                                    Rad1 c3 5. bxc3 Nxc3
                9     0.10   0.27   1. Rd1 Qc7 2. Qd4 Ba6 3. Nc5 Bxc5 4.
                                    Qxc5 Ne7 5. Rxd8+ Rxd8
                9->   0.10   0.27   1. Rd1 Qc7 2. Qd4 Ba6 3. Nc5 Bxc5 4.
                                    Qxc5 Ne7 5. Rxd8+ Rxd8 (s=3)
               10     0.12   0.30   1. Rd1 Qc7 2. Qd4 Ba6 3. Nc5 Bxc5 4.
                                    Qxc5 Qb6 5. Qd4 Qxd4 6. Rxd4 (s=2)
               10->   0.13   0.30   1. Rd1 Qc7 2. Qd4 Ba6 3. Nc5 Bxc5 4.
                                    Qxc5 Qb6 5. Qd4 Qxd4 6. Rxd4
               11     0.40   0.12   1. Rd1 Rd7 2. Bd2 c5 3. Bh3 Qc7 4.
                                    Qxc7+ Nxc7 5. Ng5 Nd5 6. Rac1 Nb4 7.
                                    Rxc4 Nxa2
               11->   0.52   0.12   1. Rd1 Rd7 2. Bd2 c5 3. Bh3 Qc7 4.
                                    Qxc7+ Nxc7 5. Ng5 Nd5 6. Rac1 Nb4 7.
                                    Rxc4 Nxa2
               12     0.63   0.12   1. Rd1 Rd7 2. Bd2 c5 3. Bh3 Qc7 4.
                                    Qxc7+ Nxc7 5. Bg2 f5 6. Ng5 Be7 7.
                                    Bf4 Bxg2 8. Kxg2 Bxg5 9. Bxg5
               12->   0.72   0.12   1. Rd1 Rd7 2. Bd2 c5 3. Bh3 Qc7 4.
                                    Qxc7+ Nxc7 5. Bg2 f5 6. Ng5 Be7 7.
                                    Bf4 Bxg2 8. Kxg2 Bxg5 9. Bxg5
               13     0.94   0.06   1. Rd1 Rd7 2. Bd2 c5 3. Bh3 Qc7 4.
                                    Qxc7+ Nxc7 5. Bg2 f5 6. Ng5 Bd6 7.
                                    Rac1 Bd5
               13->   1.20   0.06   1. Rd1 Rd7 2. Bd2 c5 3. Bh3 Qc7 4.
                                    Qxc7+ Nxc7 5. Bg2 f5 6. Ng5 Bd6 7.
                                    Rac1 Bd5
               14     1.57   0.08   1. Rd1 Rd7 2. Bd2 c5 3. Bh3 Qc7 4.
                                    Qxc7+ Nxc7 5. Bg2 f5 6. Ng5 Bd6 7.
                                    Rac1 h6 8. Nf3
               14     2.80   0.17   1. Bh6 Rg8 2. Bg5 Re8 3. Bc1 f6 4.
                                    Qh5 Be7 5. Qf7 Kb8 6. g4 Bc5 7. Nxc5
                                    Qxc5
               14->   2.80   0.17   1. Bh6 Rg8 2. Bg5 Re8 3. Bc1 f6 4.
                                    Qh5 Be7 5. Qf7 Kb8 6. g4 Bc5 7. Nxc5
                                    Qxc5 (s=2)
               15     3.24   0.10   1. Bh6 Rg8 2. Bg5 Re8 3. Bc1 f6 4.
                                    Qh5 Be7 5. Qf7 Kb8 6. Rb1 Qd4 7. Qxe6
                                    Bc5 8. Qf7
               15     4.61   0.14   1. Rd1 Rd7 2. Bd2 c5 3. Nc3 f6 4. Qh5
                                    Bd6 5. Qg4 Be5 6. Qxc4 Qb4 7. Qxb4
                                    cxb4 8. Nxd5 Bxd5 9. Bxd5 Rxd5 10.
                                    Bxb4 Bxb2 11. Rxd5 exd5
               15->   5.12   0.14   1. Rd1 Rd7 2. Bd2 c5 3. Nc3 f6 4. Qh5
                                    Bd6 5. Qg4 Be5 6. Qxc4 Qb4 7. Qxb4
                                    cxb4 8. Nxd5 Bxd5 9. Bxd5 Rxd5 10.
                                    Bxb4 Bxb2 11. Rxd5 exd5
               16    19.46   0.01   1. Rd1 Rd7 2. Ng5 Bc5 3. Ne4 Bf8  
               16    23.58   0.23   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qe7 7.
                                    Be6 Qf6 8. Bxd7+ Nxd7 9. Qe8+ Qd8 10.
                                    Qe6
               16->  23.58   0.23   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qe7 7.
                                    Be6 Qf6 8. Bxd7+ Nxd7 9. Qe8+ Qd8 10.
                                    Qe6 (s=6)
               17    24.17     +1   1. Ng5!                           
               17    24.84   0.47   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qc7 7.
                                    Bxd7+ Nxd7 8. Qe6 Qe5 9. Qxc4 Nb6 10.
                                    Qd3 (s=5)
               17->  26.48   0.47   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qc7 7.
                                    Bxd7+ Nxd7 8. Qe6 Qe5 9. Qxc4 Nb6 10.
                                    Qd3 (s=3)
               18    28.48   0.41   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qc7 7.
                                    Qa5 Kb8 8. Bxd7 Nxd7 9. Bf4 Bd6 10.
                                    Bxd6 Qxd6 (s=2)
               18->  32.24   0.41   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qc7 7.
                                    Qa5 Kb8 8. Bxd7 Nxd7 9. Bf4 Bd6 10.
                                    Bxd6 Qxd6 (s=3)
               19    34.80   0.76   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qc7 7.
                                    Qc3 Kb8 8. Bxd7 Qxd7 9. Bf4+ Ka8 10.
                                    Rfe1 Na4 11. Qe5 (s=2)
               19->  38.12   0.76   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qc7 7.
                                    Qc3 Kb8 8. Bxd7 Qxd7 9. Bf4+ Ka8 10.
                                    Rfe1 Na4 11. Qe5 (s=2)
               20    47.45   0.71   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qc7 7.
                                    Qc3 Bd6 8. Qxg7 Be5 9. Bxd7+ Nxd7 10.
                                    Qe7 Qd6 11. Qf7 Qd3
               20->   1:08   0.71   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qc7 7.
                                    Qc3 Bd6 8. Qxg7 Be5 9. Bxd7+ Nxd7 10.
                                    Qe7 Qd6 11. Qf7 Qd3 (s=2)
               21     1:19   0.81   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qe7 7.
                                    Qa5 c5 8. Bxd7+ Nxd7 9. f3 a6 10. Bf4
                                    Ne5 11. Rad1 Nd3 12. Rd2 Nxf4 13. gxf4
               21->   1:34   0.81   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qe7 7.
                                    Qa5 c5 8. Bxd7+ Nxd7 9. f3 a6 10. Bf4
                                    Ne5 11. Rad1 Nd3 12. Rd2 Nxf4 13. gxf4
                                    (s=2)
               22     1:54   0.84   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qc7 7.
                                    Qc3 Bd6 8. Qxg7 Be5 9. Qe7 c3 10. Bxd7+
                                    Nxd7 11. bxc3 Qd6 12. Qxd6 Bxd6 <HT>
               22->   2:20   0.84   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qc7 7.
                                    Qc3 Bd6 8. Qxg7 Be5 9. Qe7 c3 10. Bxd7+
                                    Nxd7 11. bxc3 Qd6 12. Qxd6 Bxd6 <HT>
                                    (s=2)
               23     3:13   0.84   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qc7 7.
                                    Qc3 Bd6 8. Qxg7 Be5 9. Qe7 Kb8 10.
                                    Bxd7 Nxd7 11. Bf4 Bxf4 12. gxf4 Rg8+
                                    13. Kh1
               23->   4:50   0.84   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qc7 7.
                                    Qc3 Bd6 8. Qxg7 Be5 9. Qe7 Kb8 10.
                                    Bxd7 Nxd7 11. Bf4 Bxf4 12. gxf4 Rg8+
                                    13. Kh1 (s=3)
               24     6:41   0.87   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qc7 7.
                                    Qc3 Bd6 8. Qxg7 Be5 9. Qe7 Kb8 10.
                                    Bxd7 Nxd7 11. f4 Bd4+ 12. Kg2 c3 13.
                                    bxc3 Bxc3 (s=2)
               24->   9:35   0.87   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. Qe5 Qc7 7.
                                    Qc3 Bd6 8. Qxg7 Be5 9. Qe7 Kb8 10.
                                    Bxd7 Nxd7 11. f4 Bd4+ 12. Kg2 c3 13.
                                    bxc3 Bxc3 (s=2)
               25    14:27   1.05   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. a4 Kb8 7. a5
                                    Rd6 8. Qf7 Nc8 9. a6 Ba8 10. Bf4 Be7
                                    11. Bxc8 Kxc8 12. Bxd6 Qxd6 13. Qxg7
                                    Qf6
               25->  25:02   1.05   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. a4 Kb8 7. a5
                                    Rd6 8. Qf7 Nc8 9. a6 Ba8 10. Bf4 Be7
                                    11. Bxc8 Kxc8 12. Bxd6 Qxd6 13. Qxg7
                                    Qf6 (s=2)
               26    34:04   1.09   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. a4 Kb8 7. a5
                                    Rd6 8. Qf7 Nc8 9. a6 Ba8 10. Bf4 Be7
                                    11. Qxc4 Rf8 12. Bf5 Qb6 13. Qe6 Qxb2
                                    14. Bxd6+ Bxd6 15. Bxh7
               26->  48:01   1.09   1. Ng5 Rd7 2. Nxf7 Rxf7 3. Qxe6+ Rd7
                                    4. Bh3 Qd8 5. e4 Nb6 6. a4 Kb8 7. a5
                                    Rd6 8. Qf7 Nc8 9. a6 Ba8 10. Bf4 Be7
                                    11. Qxc4 Rf8 12. Bf5 Qb6 13. Qe6 Qxb2
                                    14. Bxd6+ Bxd6 15. Bxh7 (s=3)
              time=60:00  mat=-1  n=92449868730  fh=78%  nps=25.7M    
              extensions=3640.7M qchecks=3353.3M reduced=349.3M pruned=3012.2M
              predicted=0  evals=948.2M  50move=0  EGTBprobes=0  hits=0
              SMP->  splits=6086444  aborts=853045  data=93/1024  elap=60:00
terminating SMP processes.
White(1): Ng5
              time used:  60:00

I strongly disagree with, "understanding" is an admirable goal, but (whatever it may be) it isn't the first priority of an engine in over-the-board play" . This is seriously flawed, at least from a calculations point of view. For example, if the engine does not see the correct line of play, and finds the move due to a weaker variation, then it will surely fall victim to tactics, or a positional loss in the future. The key is to see the correct variation and see why it wins. This is why Rybka was the strongest engine for a long time. If an engine finds a move, but for the WRONG reason it will fail in other positions and end up lost.
yanquis1972
Posts: 1766
Joined: Wed Jun 03, 2009 12:14 am

Re: Test position

Post by yanquis1972 »

right...as with humans a machine can choose a brilliant or best move for the wrong reasons. crafty's eval climbs but spark's eval was more or less stagnant & it didn't see a win, it just saw Ng5 as best, probably by a few centipawns.

imo at the very top level a computer engines primary purpose these days is not to win games but to serve as an analytical tool for their human masters (and these should come close to going hand-in-hand; i know m ansari at least has advocated for an 'analysis rybka' with extra knowledge but a litte less speed and a 'match rybka' designed for max elo against machines, which i like in theory)...spark is top-notch in this regard in most tactical positions but i disagree that it truly succeeds in this position despite finding Ng5 quickly. better than not finding at all, not nearly as good as finding the proper variation & announcing it to the user.
royb
Posts: 574
Joined: Thu Mar 09, 2006 12:53 am

Re: Test position

Post by royb »

yanquis1972 wrote:in terms of both finding & understanding the move, stockfish seems to blow the other engines i've tried out of the water --



2kr1b1r/pb3ppp/1qp1p3/3nQ3/2p1N3/6P1/PP2PPBP/R1B2RK1 w - -

Engine: Stockfish 1.6.3 JA 64bit (1024 MB)
by Tord Romstad, Marco Costalba, Joona Kii

14.01 0:01 +0.76 1.b3 c3 2.Nxc3 Qc7 3.Qd4 e5 4.Qg4+ Qd7
5.Qxd7+ Kxd7 6.Rd1 Bd6 7.Bb2 Ke6
8.Ne4 Bb4 9.Rac1 f5 10.Nc5+ Bxc5
11.Rxc5 (8.197.383) 4633

14.03 0:01 +0.96++ 1.Ng5 f6 2.Qxe6+ Kb8 3.Nf7 Bc8 4.Qe4 (9.679.119) 5020

15.01 0:02 +0.72 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Rd1 Qe7 7.Be3 Qxe6
8.Bxe6 c5 9.e5 Be7 10.Bxd7+ Nxd7
11.f4 (14.910.352) 5919

16.01 0:03 +0.76 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Rd1 Qe7 7.Be3 Qxe6
8.Bxe6 c5 9.f3 Be7 10.Kf2 Kc7
11.Bxd7 Nxd7 12.Bf4+ Kc6 13.Rac1 g5 (23.144.444) 6783

17.01 0:04 +0.76 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Rd1 Qe7 7.Bf4 Qxe6
8.Bxe6 Bc5 9.Rac1 Rhd8 10.Kg2 Ba6
11.f3 Kb7 12.Bxd7 Nxd7 (37.260.612) 7685

18.01 0:06 +0.96++ 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.a4 Qf6 7.Qe8+ (51.026.198) 8094

19.01 0:08 +1.01 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.a4 Kb8 7.a5 Rd6
8.Qf7 Nc8 9.a6 Ba8 10.Bf4 Be7
11.Bxc8 Kxc8 12.Bxd6 Qxd6 13.Qxg7 Qf6
14.Qxf6 (72.377.318) 8515

20.01 0:14 +1.73++ 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.a4 Kb8 7.a5 Rd6
8.Bf4 Bc8 9.Qf7 Bxh3 10.axb6 axb6
11.Qa7+ Kc8 12.Bxd6 Bxd6 13.Qa8+ Kd7
14.Ra7+ (131.688.303) 8996

21.01 0:35 +2.06 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.a4 Kb8 7.a5 Rd6
8.Bf4 Bc8 9.Qf7 Nd7 10.Qxc4 g5
11.Bxd6+ Bxd6 12.Qxc6 Ne5 13.Qxc8+ Qxc8
14.Bxc8 (316.337.940) 8999

best move: Ne4-g5 time: 1:01.729 min n/s: 9.055.729 nodes: 558.928.673

spark found the move very quickly but failed to produce a winning eval quickly. even rybka dynamic takes a bit on this one, require depth 16(/19) to see Ng5, which it quickly awards a winning score.

just tried latest crafty, same problem it seems as spark, but it does find the move quickly and doesn't drop it...(btw, are crafty's kn/s for real? i always thought it was a slower, knowledge-based program? -- nm, i see now its buggy output, but am i wrong about my conception of it anyway?)

2kr1b1r/pb3ppp/1qp1p3/3nQ3/2p1N3/6P1/PP2PPBP/R1B2RK1 w - -

Engine: Crafty 23.2 (0 MB)
by Robert Hyatt

14.00 0:01 +0.08 1.Rd1 Rd7 2.Bd2 c5 3.Bh3 Qc7 4.Qxc7+ Nxc7
5.Bg2 f5 6.Ng5 Bd6 7.Rac1 h6 8.Nf3 (26.969.420) 17627

14.00 0:01 +0.08 1.Rd1 Rd7 2.Bd2 c5 3.Bh3 Qc7 4.Qxc7+ Nxc7
5.Bg2 f5 6.Ng5 Bd6 7.Rac1 h6 8.Nf3 (35.540.806) 19107

15.00 0:06 +0.01 1.Rd1 Rd7 2.Ng5 Bc5 3.Ne4 Bf8 (131.762.444) 21742

15.00 0:08 +0.12 1.Bh6 Rg8 2.Bg5 Rd7 3.Rad1 c5 4.Bc1 Qa6
5.Bd2 h6 6.a3 f5 7.Nc3 Qd6 8.Bf4 Qxe5
9.Bxe5 Nxc3 10.Bxb7+ Rxb7 11.Bxc3 (33.605.710) 3818

15.00 0:08 +0.12 1.Bh6 Rg8 2.Bg5 Rd7 3.Rad1 c5 4.Bc1 Qa6
5.Bd2 h6 6.a3 f5 7.Nc3 Qd6 8.Bf4 Qxe5
9.Bxe5 Nxc3 10.Bxb7+ Rxb7 11.Bxc3 (198.125.743) 22514

16.00 0:09 +0.12 1.Bh6 Rg8 2.Bg5 Rd7 3.Rad1 c5 4.Bc1 Qa6
5.Bd2 h6 6.a3 f5 7.Nc3 Qd6 8.Bf4 Qxe5
9.Bxe5 Nxc3 10.Bxb7+ Rxb7 11.Bxc3 (215.208.774) 22534

16.00 0:12 +0.46 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Qe5 Qe7 7.Qa5 Qxe4
8.Bf4 Nd5 9.Bxd7+ Kxd7 10.Qxa7 Nxf4
11.Qxb7+ (19.505.876) 1618

16.00 0:12 +0.46 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Qe5 Qe7 7.Qa5 Qxe4
8.Bf4 Nd5 9.Bxd7+ Kxd7 10.Qxa7 Nxf4
11.Qxb7+ (275.966.207) 22901

17.00 0:13 +0.47 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Qe5 Qc7 7.Bxd7+ Nxd7
8.Qe6 Qe5 9.Qxc4 Nb6 10.Qd3 (302.655.029) 23033

17.00 0:15 +0.47 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Qe5 Qc7 7.Bxd7+ Nxd7
8.Qe6 Qe5 9.Qxc4 Nb6 10.Qd3 (355.051.100) 23266

18.00 0:16 +0.72 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Qe5 Qc7 7.Qa5 Kb8
8.Bf4 Rd6 9.Bxd6 Bxd6 10.Rad1 (390.757.547) 23273

18.00 0:18 +0.72 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Qe5 Qc7 7.Qa5 Kb8
8.Bf4 Rd6 9.Bxd6 Bxd6 10.Rad1 (440.712.098) 23517

19.00 0:21 +0.71 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Qe5 Qc7 7.Qc3 Bd6
8.Qxg7 Be5 9.Bxd7+ Nxd7 10.Qf7 c3
11.Rb1 (518.165.873) 23606

19.00 0:31 +0.71 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Qe5 Qc7 7.Qc3 Bd6
8.Qxg7 Be5 9.Bxd7+ Nxd7 10.Qf7 c3
11.Rb1 (759.778.974) 24104

20.00 0:37 +0.71 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Qe5 Qc7 7.Qc3 Bd6
8.Qxg7 Be5 9.Bxd7+ Nxd7 10.Qe7 Qd6
11.Qf7 Qd3 (914.445.048) 24121

20.00 0:55 +0.71 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Qe5 Qc7 7.Qc3 Bd6
8.Qxg7 Be5 9.Bxd7+ Nxd7 10.Qe7 Qd6
11.Qf7 Qd3 (1.350.817.392) 24369

21.00 1:05 +0.83 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Qe5 Qc7 7.Qc3 Kb8
8.Bxd7 Qxd7 9.Bf4+ Ka8 10.Rfd1 Qe6
11.Rd8+ Bc8 12.Bd6 Bxd6 13.Rxh8 Qxe4
14.Qxg7 (1.594.885.602) 24375

21.00 1:24 +0.83 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Qe5 Qc7 7.Qc3 Kb8
8.Bxd7 Qxd7 9.Bf4+ Ka8 10.Rfd1 Qe6
11.Rd8+ Bc8 12.Bd6 Bxd6 13.Rxh8 Qxe4
14.Qxg7 (2.063.907.972) 24517

22.00 1:53 +0.75 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Qe5 Qc7 7.Qc3 Kb8
8.Bxd7 Qxd7 9.Bf4+ Ka8 10.Rfd1 Qe6
11.Be5 Bb4 12.Qxb4 Qxe5 -13374

22.00 3:23 +0.75 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.Qe5 Qc7 7.Qc3 Kb8
8.Bxd7 Qxd7 9.Bf4+ Ka8 10.Rfd1 Qe6
11.Be5 Bb4 12.Qxb4 Qxe5 (746.814.328) 3663

best move: Ne4-g5 time: 3:43.066 min n/s: 3.663.907 nodes: 746.814.328
Curious -- I tried Stockfish-1.6.3 1-cpu on this position on my 3 GHz laptop and it did NOT find Ng5 even after 489 seconds:

1 +1.77 1.Bg5 (1.10)
2 +0.92 1.Bg5 f6 2.Qxe6+ Kb8 (1.10)
3 +0.92 1.Bg5 f6 2.Qxe6+ Kb8 (1.10)
4 +0.48 1.Bg5 f6 2.Qxe6+ Kb8 3.Bc1 (1.10)
4 +0.56 1.b3 Qc7 2.Qxc7+ Kxc7 3.bxc4 (1.10)
5 +0.60 1.b3 Qc7 2.Qxc7+ Nxc7 3.bxc4 Bb4 (1.11)
6 +0.76 1.b3 cxb3 2.axb3 Qc7 3.Qxc7+ Kxc7 4.Rxa7 (1.11)
7 +0.40 1.b3 cxb3 2.axb3 Qc7 3.Qxc7+ Kxc7 4.Rxa7 Be7 (1.11)
8 +0.60 1.b3 c3 2.Nxc3 Qc7 3.Qxc7+ Kxc7 4.Nxd5+ cxd5 5.Be3 d4 6.Rac1+ Kb6 (1.15)
9 +0.68 1.b3 c3 2.Nxc3 Qc7 3.Qxc7+ Kxc7 4.Bd2 Kb8 5.Ne4 Be7 6.Ba5 Nb6 7.Rfc1 (1.23)
10 +0.64 1.b3 c3 2.Nxc3 Qc7 3.Qxc7+ Kxc7 4.Bd2 Kb8 5.Rfd1 Bd6 6.e4 Nf6 7.Be3 Be5 (1.28)
11 +0.72 1.b3 c3 2.Nxc3 Qc7 3.Qxc7+ Kxc7 4.Bd2 Kb8 5.Rfd1 Bd6 6.Rac1 Rhe8 7.e4 Nf6 8.Be3 Be5 (1.55)
12 +0.76 1.b3 c3 2.Nxc3 Qc7 3.Qxc7+ Kxc7 4.Bd2 Kb8 5.Rfd1 Bd6 6.Rac1 Rhe8 7.e4 Nf6 8.Be3 Be5 9.Ne2 Rxd1+ 10.Rxd1 (2.01)
13 +0.56 1.b3 c3 2.Nxc3 Qc7 3.Qxc7+ Kxc7 4.Bd2 Kb8 5.Rfd1 Bb4 6.Nxd5 Bxd2 7.Rxd2 exd5 8.Rc1 Rhe8 (2.63)
14 +0.52 1.b3 cxb3 2.axb3 c5 3.Bb2 f6 4.Qh5 Kb8 5.Rfd1 Be7 6.Qf7 Rhg8 7.Bh3 Bc8 8.e3 Qxb3 (5.99)
15 +0.68 1.b3 c3 2.Nxc3 Qc7 3.Qxc7+ Kxc7 4.Bd2 Kb8 5.Rfd1 Ba3 6.e4 Nb4 7.Bf4+ Kc8 8.Bg5 Bb2 9.Bxd8 Bxa1 10.Bf6 gxf6 11.Rxa1 (28.21)
16 +0.76 1.b3 c3 2.Nxc3 Qc7 3.Qxc7+ Kxc7 4.Bb2 f6 5.Rac1 Nxc3 6.Bxc3 Kb6 7.b4 Be7 8.e3 e5 9.Be4 h5 10.Rfd1 Rxd1+ 11.Rxd1 Rd8 12.Rxd8 Bxd8 (41.00)
17 +0.60 1.b3 c3 2.Nxc3 Qc7 3.Qxc7+ Kxc7 4.Bb2 f6 5.Rac1 Be7 6.Bh3 e5 7.Rfd1 Nxc3 8.Bxc3 Kb6 9.Bf5 Ba3 10.Rb1 h5 11.Rxd8 Rxd8 12.Bg6 h4 13.gxh4 (61.05)
18 +0.76 1.b3 c3 2.Nxc3 Qc7 3.Qxc7+ Kxc7 4.Bd2 Kb8 5.Rfd1 Ba3 6.Ne4 h6 7.Ba5 Nb6 8.e3 f5 9.Nd2 Ba6 10.Bc3 Kb7 11.Nf3 Be2 12.Rxd8 Rxd8 13.Bxg7 (114.51)
19 +0.80 1.b3 c3 2.Nxc3 Qc7 3.Qxc7+ Kxc7 4.Bd2 Kb8 5.Ne4 Ba6 6.Rfe1 Bb4 7.Rad1 Kc7 8.a3 Be7 9.b4 Bb5 10.Nc5 e5 11.e4 Nf6 12.Bc3 Bxc5 13.bxc5 (199.79)
20 +0.80 1.b3 c3 2.Nxc3 Qc7 3.Qxc7+ Kxc7 4.Bd2 Kb8 5.Ne4 Ba6 6.Rfe1 Bb4 7.Rad1 Kc7 8.a3 Be7 9.b4 e5 10.Nc5 Bc4 11.Rc1 Nb6 12.Bc3 f6 13.e3 h6 14.Red1 Rxd1+ 15.Rxd1 Nd5 (295.11)
21 +0.76 1.b3 c3 2.Nxc3 Qc7 3.Qxc7+ Kxc7 4.Bd2 Kc8 5.Ne4 Ba6 6.Bf3 Ba3 7.Ba5 Rdf8 8.Nd2 Bb2 9.Rad1 Bc3 10.Bxd5 Bxa5 11.Bc4 Bb7 12.Nf3 Rd8 13.Ne5 Rxd1 14.Rxd1 Rd8 15.Rxd8+ Kxd8 16.Nxf7+ Kd7 (489.37)

Is this a case of MP vs single processor making a huge difference in how the search works?

Roy
yanquis1972
Posts: 1766
Joined: Wed Jun 03, 2009 12:14 am

Re: Test position

Post by yanquis1972 »

hmm, it could be an -extreme- case of smp luck or i mightve accidently mucked it up somehow (say, loaded & started the engine then rewound the move so it was in the hash). running it again i'm not seeing the same result at all so certainly one of these was the case.

Ng5 is well-liked by stockfish though, & pretty early, & i would guess that in mpv it switches to it very quickly. the difference is that unlike spark, it prefers b3 my a few centipawns in 1-pv mode. this is why i say understanding matters as well...





2kr1b1r/pb3ppp/1qp1p3/3nQ3/2p1N3/6P1/PP2PPBP/R1B2RK1 w - -

Engine: Stockfish 1.6.3 JA 64bit (2048 MB)
by Tord Romstad, Marco Costalba, Joona Kii

14.01 0:01 +0.64 1.b3 c3 2.Nxc3 Qc7 3.Qd4 Qb6 4.Qc4 Kb8
5.Nxd5 cxd5 6.Qf4+ Qc7 7.Qxc7+ Kxc7
8.Bb2 Kd7 9.Rac1 Ba6 10.Bf3 Rc8
11.Rxc8 Bxc8 (6.303.030) 3774

15.01 0:02 +0.84 1.b3 c3 2.Nxc3 Qc7 3.Qd4 Qb6 4.Qc4 Kb8
5.Rd1 Bd6 6.Bb2 Ba6 7.Qg4 Nxc3
8.Bxc3 h5 9.Qxg7 Rhg8 10.Qxf7 Bxe2 (15.675.756) 5807

16.01 0:03 +0.76 1.b3 c3 2.Nxc3 Qc7 3.Qd4 Qb6 4.Qc4 Kb8
5.Bd2 Bd6 6.Rac1 Qa6 7.Rfd1 Rhe8
8.Ne4 Qxa2 9.Nxd6 Rxd6 (21.184.857) 6286

17.01 0:04 +0.68 1.b3 c3 2.Nxc3 Qc7 3.Qd4 Qb6 4.Qc4 Kb8
5.Bd2 Bd6 6.Rac1 Be5 7.Na4 Qa6 8.Nc5 Qxc4
9.bxc4 Nb6 10.Be3 h5 11.Rb1 (36.492.408) 7310

18.01 0:09 +0.80 1.b3 c3 2.Nxc3 Qc7 3.Qd4 Qb6 4.Qc4 Kb8
5.Na4 Qa6 6.Rd1 Bd6 7.Bb2 f6 8.Bh3 Rhe8
9.Qxa6 Bxa6 10.e4 Nb4 11.Rac1 (81.701.981) 8585

19.01 0:16 +0.80 1.b3 c3 2.Nxc3 Qc7 3.Qd4 Qb6 4.Qc4 Kb8
5.Na4 Qa6 6.Rd1 Bd6 7.Bb2 f6 8.Qxa6 Bxa6
9.e4 Nb4 10.Rac1 Be2 11.Rd2 Bd3
12.a3 (153.334.022) 9151

20.01 0:29 +0.76 1.b3 c3 2.Nxc3 Qc7 3.Qd4 Qb6 4.Qc4 Kb8
5.Na4 Qa6 6.Rd1 Bd6 7.Bb2 f6 8.Qc2 e5
9.Rac1 h5 10.Bxd5 cxd5 11.Nc5 Bxc5
12.Qxc5 Qxe2 (275.684.732) 9379

21.01 1:05 +0.88 1.b3 c3 2.Nxc3 Qc7 3.Qd4 Qb6 4.Qc4 Kb8
5.Na4 Qa6 6.Rd1 Bd6 7.Bb2 f6 8.Qc2 Qb5
9.a3 f5 10.Bxg7 Rhg8 11.Nc3 Qb6
12.Nxd5 cxd5 (609.002.473) 9252

22.01 2:05 +0.76 1.b3 c3 2.Nxc3 Qc7 3.Qd4 c5 4.Qc4 Nb6
5.Qb5 a6 6.Qa5 Nd5 7.Qxc7+ Kxc7
8.Ne4 Be7 9.Ba3 Kb6 10.Rfc1 Rc8
11.Bb2 f5 12.Nd2 Bf6 13.Bxf6 Nxf6
14.Nc4+ (1.150.937.451) 9145

22.02 2:24 +1.17++ 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nb6 6.a4 Kb8 7.Bf4+ Bd6
8.a5 Re8 9.Qg4 h5 10.Qf5 Bxf4
11.Qxf4+ Rd6 12.axb6 axb6 13.Rad1 (1.315.815.538) 9119


on the same machine it took 36 seconds in mpv=2, and a little over a minute to favor Ng5 decisively.

but it does appear that stockfish is not the miracle cure to this position that i'd thought it was. makes firebird's result that much more impressive.
yanquis1972
Posts: 1766
Joined: Wed Jun 03, 2009 12:14 am

Re: Test position

Post by yanquis1972 »

btw, here is rybka 3, which in hindsight is better than i realized, but still not close to FB --



2kr1b1r/pb3ppp/1qp1p3/3nQ3/2p1N3/6P1/PP2PPBP/R1B2RK1 w - -

Engine: Rybka 3 (1024 MB)
by Vasik Rajlich, Larry Kaufman

12.01 0:01 +0.66 1.b3 Ba6 2.bxc4 Bxc4 3.Bg5 Rd7
4.Rab1 Qc7 5.Qb2 h6 6.Bh4 f5 (520.690) 359

13.01 0:02 +0.57 1.b3 Ba6 2.bxc4 Bxc4 3.Bg5 Rd7
4.Rab1 Qc7 5.Qb2 h6 6.Bh4 f5 7.Rfc1 (1.147.688) 418

14.01 0:10 +0.63 1.b3 cxb3 2.axb3 Qc7 (4.827.658) 480

15.01 0:15 +0.62 1.b3 cxb3 2.axb3 Qc7 3.Qh5 Kb8 4.Bb2 f6
5.Rfc1 e5 6.Nc3 Nxc3 7.Bxc3 Bc5 8.b4 Bb6 (7.419.598) 490

16.01 0:22 +0.62 1.b3 cxb3 2.axb3 Qc7 3.Qxc7+ Nxc7
4.Rxa7 Nb5 5.Ra2 h6 6.Bf4 f6 7.Rc1 Nd4
8.e3 e5 9.exd4 exf4 10.Ra4 fxg3
11.Nxg3 Kc7 (11.004.826) 490

16.18 0:32 +0.82++ 1.Ng5 (15.725.770) 500

16.01 0:37 +1.02++ 1.Ng5 (17.793.559) 486

16.01 0:47 +1.42++ 1.Ng5 (21.741.687) 472

16.01 1:09 +1.38 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ (31.716.710) 465

17.01 1:17 +1.33 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nc7 6.Qxc4 Kb8 7.Bxd7 Qxd7
8.Bf4 Qe7 9.Rfd1 g5 10.Qd4 Bg7
11.Qd7 Qxd7 12.Rxd7 gxf4 13.Rxg7 Ne6
14.Re7 (35.050.671) 465

18.01 2:02 +1.34 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nc7 6.Qxc4 Kb8 7.Bxd7 Qxd7
8.Bf4 Qe7 9.Rad1 g5 10.Bd6 Qg7 11.a4 Bxd6
12.Rxd6 Qxb2 13.Rfd1 Na6 14.Qe6 (56.477.994) 473

19.01 2:50 +1.34 1.Ng5 Rd7 2.Nxf7 Rxf7 3.Qxe6+ Rd7
4.Bh3 Qd8 5.e4 Nc7 6.Qxc4 Kb8 7.Bxd7 Qxd7
8.Bf4 Qe7 9.Rad1 g5 10.Bd6 Qg7 11.a4 Bxd6
12.Rxd6 Qxb2 13.Rfd1 Na6 14.Qe6 (80.600.302) 485