mcostalba wrote:Eelco de Groot wrote:
Werner Schüle has just posted a good result for the single CPU version against Rybka 2.2n2 32-bit on the
CEGT 40/20 Coordination forum
Posted: 09 Jul 2009 19:18 Post subject:
--------------------------------------------------------------------------------
My next result:
Code:
1 Stockfish 1.4 x64 1CPU +12/-11/=27 51.00% 25.5/50 2940
2 Rybka 2.2n2 w32 1CPU +11/-12/=27 49.00% 24.5/50
next: Shredder WM Edition 1CPU
Werner
It starts to be scaring
None of us was expecting something like this....perhaps the hype in the announcement bring good luck
Marco or Joona,
A question about the code. Because I just discovered that "Space" is not really used by both Stockfish 1.3 or Stockfish 1.4, although I have not looked at the older Stockfish versions, but that it is not working is easily verified when you make a version with Space set at 200 instead of the normal 100. It gives the same output, well I only did the check with an Ancalagon version, output is posted below, but it should be similar in Stockfish?
My question is did you have bad testresults with Space, I remember that Tord thought it really helped playing the opening phase in Glaurung with the new computations of safe squares behind own pawns. So I did not really expect this part of the code to be disabled in Stockfish
And I did not check until today. There is no comment in the code about disabling the computation of space, but because
is initialized in material.h by
Code: Select all
class MaterialInfo {
friend class MaterialInfoTable;
public:
Value mg_value() const;
Value eg_value() const;
ScaleFactor scale_factor(const Position& pos, Color c) const;
int space_weight() const;
bool specialized_eval_exists() const;
Value evaluate(const Position& pos) const;
but not given any value in material.cpp as far as I can see,
then in evaluate.cpp in the following lines the function evaluate_space()
Code: Select all
// Evaluate space for both sides
if (ei.mi->space_weight() > 0)
{
evaluate_space(pos, WHITE, ei);
evaluate_space(pos, BLACK, ei);
}
}
will not be executed because ei.mi->space_weight() is I think indeterminate, the value is to be decided by the compiler because undefined so it is maybe not even certain that it is zero?
Was this intentional? Is the code then left as it is because for further experimentation you might want to use 'space' again, or is it maybe a bug that it is not working now? Because I would have at least expected some comments in the code...
In Ancalagon I had made a slightly different computation of the safe squares quite some time ago, but I must admit I had not tested yet whether this was actually working, it now seems it never did anything at all...
Regards, Eelco
STS 4.0 Square Vacancy position 001
[D]6k1/p2pp2p/bp4n1/q1r4R/1RP1P3/2P2B2/P2Q2P1/4K3 w - - bm Rd5; c0 "Rd5=10, Rf5=6, g4=7";
id "STS(v4.0) Square Vacancy.001";
Not a very fast result
6k1/p2pp2p/bp4n1/q1r4R/1RP1P3/2P2B2/P2Q2P1/4K3 w - -
Engine: Ancalagon 1.3 WS180 Build 181 (256 MB)
by Romstad, Costalba, Kiiski, de Groot
2.00 0:00 +1.90 1.Rxc5 Qxc5 2.Qxd7 Bxc4 3.Qxa7 (4.436) 18
3.00 0:00 +1.90 1.Rxc5 Qxc5 2.Qxd7 Bxc4 3.Qxa7 (188.989) 345
3.00 0:00 +3.41 1.Rh3 Rxc4 2.Qh6 Nf8 3.Rxc4 Bxc4 (412.224) 432
4.01 0:01 +3.41 1.Rh3 Rxc4 2.Qh6 Nf8 3.Rxc4 Bxc4 (588.125) 482
5.01 0:01 +3.41 1.Rh3 Rxc4 2.Qh6 Nf8 3.Rxc4 Bxc4 (623.602) 492
6.01 0:02 +2.60 1.Rh3 Rxc4 2.Be2 Qc5 3.Bxc4+ Bxc4
4.Qd4 Bxa2 5.Qxc5 bxc5 (1.456.005) 544
7.01 0:03 +2.60 1.Rh3 Rxc4 2.Be2 Qc5 3.Bxc4+ Bxc4
4.Qd4 Bxa2 5.Qxc5 bxc5 (2.092.824) 574
8.01 0:10 +1.23 1.Rh3 Bxc4 2.Qh6 Nf8 3.Bh5 Rxh5
4.Qxh5 Qxa2 5.Rxc4 Qxc4 (6.485.576) 601
8.03 0:15 +2.11 1.Rxc5 Qxc5 2.Qxd7 Ne5 3.Qe6+ Kf8
4.Be2 Nd3+ 5.Bxd3 Qe3+ 6.Kf1 Qxd3+
7.Kg1 Qxc3 8.Rb3 Qe1+ 9.Kh2 Qh4+
10.Rh3 (9.110.243) 606
8.13 0:22 +2.54 1.Rd5 Rxd5 2.exd5 Qc5 3.Qd4 Qa5
4.Bd1 e5 5.dxe6 dxe6 (13.993.697) 617
9.01 0:25 +2.39 1.Rd5 Rxd5 2.exd5 d6 3.Bg4 Qc5 4.Qd4 Ne5
5.Qxc5 bxc5 6.Be6+ Kg7 (15.967.293) 630
10.01 1:58 +2.07 1.Rd5 Rxd5 2.exd5 d6 3.Kd1 Bc8 4.Be4 Qc5
5.Qd4 Ne5 6.Qxc5 dxc5 7.Ra4 (74.784.560) 633
11.01 3:20 +2.21 1.Rd5 Rxd5 2.Qxd5+ Qxd5 3.exd5 Ne5
4.Be2 Bb7 5.a4 Kg7 6.a5 Ba6 7.axb6 axb6 (131.039.443) 652
12.01 5:52 +2.35 1.Rd5 Rxd5 2.Qxd5+ Qxd5 3.exd5 Ne5
4.Be2 Bb7 5.Ra4 a5 6.c5 bxc5 7.Rxa5 d6
8.c4 (234.360.397) 665
13.01 18:16 +2.50 1.Rd5 Rxd5 2.Qxd5+ Qxd5 3.exd5 Ne5
4.Be2 Bb7 5.a4 Kf7 6.a5 Ba6 7.axb6 axb6
8.Kd2 Kg7 (698.649.230) 637
best move: Rh5-d5 time: 30:13.453 min n/s: 604.288 nodes: 1.095.840.322
Build 171 is still the better version and finds Rd5 a ply earlier.
Same version, build 181 but Space now at 200 from 100, gives identical nodenumbers and lines:
6k1/p2pp2p/bp4n1/q1r4R/1RP1P3/2P2B2/P2Q2P1/4K3 w - -
Engine: Ancalagon 1.3 WS180
Sp200 (Athlon 2009 Mhz, 256 MB)
by Romstad, Costalba, Kiiski, de Groot
2.00 0:00 +1.90 1.Rxc5 Qxc5 2.Qxd7 Bxc4 3.Qxa7 (4.436) 18
3.00 0:00 +1.90 1.Rxc5 Qxc5 2.Qxd7 Bxc4 3.Qxa7 (188.989) 345
3.00 0:00 +3.41 1.Rh3 Rxc4 2.Qh6 Nf8 3.Rxc4 Bxc4 (412.224) 432
4.01 0:01 +3.41 1.Rh3 Rxc4 2.Qh6 Nf8 3.Rxc4 Bxc4 (588.125) 482
5.01 0:01 +3.41 1.Rh3 Rxc4 2.Qh6 Nf8 3.Rxc4 Bxc4 (623.602) 492
6.01 0:02 +2.60 1.Rh3 Rxc4 2.Be2 Qc5 3.Bxc4+ Bxc4
4.Qd4 Bxa2 5.Qxc5 bxc5 (1.456.005) 544
7.01 0:03 +2.60 1.Rh3 Rxc4 2.Be2 Qc5 3.Bxc4+ Bxc4
4.Qd4 Bxa2 5.Qxc5 bxc5 (2.092.824) 574
8.01 0:10 +1.23 1.Rh3 Bxc4 2.Qh6 Nf8 3.Bh5 Rxh5
4.Qxh5 Qxa2 5.Rxc4 Qxc4 (6.485.576) 600
8.03 0:15 +2.11 1.Rxc5 Qxc5 2.Qxd7 Ne5 3.Qe6+ Kf8
4.Be2 Nd3+ 5.Bxd3 Qe3+ 6.Kf1 Qxd3+
7.Kg1 Qxc3 8.Rb3 Qe1+ 9.Kh2 Qh4+
10.Rh3 (9.110.243) 605
8.13 0:22 +2.54 1.Rd5 Rxd5 2.exd5 Qc5 3.Qd4 Qa5
4.Bd1 e5 5.dxe6 dxe6 (13.993.697) 616
9.01 0:25 +2.39 1.Rd5 Rxd5 2.exd5 d6 3.Bg4 Qc5 4.Qd4 Ne5
5.Qxc5 bxc5 6.Be6+ Kg7 (15.967.293) 630
10.01 1:57 +2.07 1.Rd5 Rxd5 2.exd5 d6 3.Kd1 Bc8 4.Be4 Qc5
5.Qd4 Ne5 6.Qxc5 dxc5 7.Ra4 (74.784.558) 633
11.01 3:19 +2.21 1.Rd5 Rxd5 2.Qxd5+ Qxd5 3.exd5 Ne5
4.Be2 Bb7 5.a4 Kg7 6.a5 Ba6 7.axb6 axb6 (131.039.441) 656
12.01 5:50 +2.35 1.Rd5 Rxd5 2.Qxd5+ Qxd5 3.exd5 Ne5
4.Be2 Bb7 5.Ra4 a5 6.c5 bxc5 7.Rxa5 d6
8.c4 (234.360.397) 669