unbalanced position

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

Moderators: bob, hgm, Harvey Williamson

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
Will Singleton
Posts: 128
Joined: Thu Mar 09, 2006 4:14 pm
Location: Los Angeles, CA

unbalanced position

Post by Will Singleton » Mon Aug 10, 2009 12:20 am

[d]2kr4/2n3b1/pR1p3p/2pqp1p1/8/4R3/P1Q2BPP/6K1 b - - bm e4;

Some programs (Bright 0.2, Glaurung 1.21) think Ne6 works, but don't see the counter Qa4.

yanquis1972
Posts: 1766
Joined: Tue Jun 02, 2009 10:14 pm

Re: unbalanced position

Post by yanquis1972 » Mon Aug 10, 2009 2:17 am

after Ne6, what program can see Qa4 the quickest?

rybka seems to have some trouble w/ it & deep fritz considers it immediately then backs off. ill analyze a bit more when i can free up some time. after playing Qa4 both engines give big jumps for white fairly quickly.

User avatar
Eelco de Groot
Posts: 4265
Joined: Sun Mar 12, 2006 1:40 am
Location: Groningen

Re: unbalanced position

Post by Eelco de Groot » Mon Aug 10, 2009 4:08 am

Will Singleton wrote:[d]2kr4/2n3b1/pR1p3p/2pqp1p1/8/4R3/P1Q2BPP/6K1 b - - bm e4;

Some programs (Bright 0.2, Glaurung 1.21) think Ne6 works, but don't see the counter Qa4.
Will you should upgrade your Glaurung version, Glaurung 1.2.1 is from exactly three years and one month ago, well Glaurung 1.2 was, 1.2.1 from a few days later. Many things have changed :) Tord can tell you, I can't believe recent versions would play Ne6 anymore. I only tried Ancalagon though.

I don't trust my recent development versions of Glaurung derivaat Ancalagon much, they all do extraordinarilly badly on the position from James Duster but having tested the last dozen versions only on that one position it is time to try something else. Like the new testposition! I like it I mean. I don't see Ne6 played but as I said that seems such a dangerous move, abandoning the pawn on a6 I'm happy Ancalagon does not play it.

Branching factor when hash is full is wrecking the new search though... Even with a fail high, ply eleven is out of reach until after an hour or so.

[D]2kr4/2n3b1/pR1p3p/2pqp1p1/8/4R3/P1Q2BPP/6K1 b - -

Engine: Ancalagon 1.3 Weak Squares 180 Board Control middlegame 50 endgame 50 Build 225 (Athlon 2009 MHz, 256 MB)
by Romstad, Costalba, Kiiski, de Groot

2.00 0:00 -0.35 1...Rf8 2.Rd3 Rxf2 3.Kxf2 (43.923) 127

2.00 0:00 +0.05 1...h5 2.Qb1 (81.546) 186

3.01 0:01 -1.94 1...h5 2.Rd3 Qe6 3.Bxc5 dxc5 4.Rxd8+ Kxd8
5.Qd3+ Ke7 6.Rxe6+ Nxe6 7.Kf2 e4
8.Qxe4 Bd4+ 9.Ke2 (573.068) 378

3.02 0:01 -0.35 1...Rf8 2.Rd3 Rxf2 3.Kxf2 (577.228) 381

4.01 0:04 -0.35 1...Rf8 2.Rd3 Rxf2 3.Kxf2 (2.060.198) 451

4.03 0:07 -0.11 1...e4 2.Rxe4 Rf8 3.Qb1 Nb5 4.Rxa6 Qb7 (3.729.165) 497

5.01 0:09 -0.03 1...e4 2.Rxe4 Rf8 3.a4 Be5 4.Qb1 (4.822.829) 498

6.01 0:16 -0.11 1...e4 2.Rxe4 Rf8 3.Qb1 Nb5 4.Rxa6 Qb7 (8.250.993) 502

7.01 0:27 +0.11 1...e4 (14.286.068) 517

8.01 0:40 0.00 1...e4 2.Rxe4 Rf8 3.Qb1 Nb5 4.a4 Nc3
5.Rb8+ Kd7 6.Rb7+ Kc8 7.Rb8+ (21.499.760) 531

9.01 2:36 0.00 1...e4 2.Rxe4 Rf8 3.Qb1 Nb5 4.a4 Nc3
5.Rb8+ Kd7 6.Rb7+ Kc8 7.Rb8+ (82.129.138) 523

10.01 8:50 +0.35 1...e4 (282.029.409) 531

11.01 54:41 -0.27 1...e4 2.Rxe4 Rf8 3.Re7 Bf6 4.Re1 Be5
5.Rd1 Qf7 6.Rbxd6 Bxd6 7.Rxd6 Qf5
8.Qxf5+ Rxf5 9.Rxh6 (1.739.233.882) 530


It's now thinking about Ne6, movenumber 7 on the list at iteration 11 but I don't think it will play that, even with a slightly fallen score for 1... e4. No, now at move 11 out of 34, it has gone past that critical point.

Regards, Eelco

User avatar
Eelco de Groot
Posts: 4265
Joined: Sun Mar 12, 2006 1:40 am
Location: Groningen

Re: unbalanced position

Post by Eelco de Groot » Mon Aug 10, 2009 4:41 am

yanquis1972 wrote:after Ne6, what program can see Qa4 the quickest?

rybka seems to have some trouble w/ it & deep fritz considers it immediately then backs off. ill analyze a bit more when i can free up some time. after playing Qa4 both engines give big jumps for white fairly quickly.
Output if a new search started in this position:

[D]2kr4/6b1/pR1pn2p/2pqp1p1/8/4R3/P1Q2BPP/6K1 w - -

Engine: Ancalagon 1.3 Weak Squares 180 Board Control middlegame 50 endgame 50 Build 225 (Athlon 2009 MHz, 256 MB)
by Romstad, Costalba, Kiiski, de Groot

2.00 0:00 +0.03 2.Reb3 Nd4 3.Bxd4 exd4 (189.154) 288

3.01 0:02 +0.03 2.Reb3 Nd4 3.Bxd4 exd4 (1.201.665) 422

4.01 0:04 +0.56 2.Reb3 Rf8 3.Rb8+ Kc7 4.R3b7+ Qxb7
5.Rxb7+ Kxb7 6.Qb3+ Kc6 7.Qxe6 (2.049.067) 443

4.02 0:09 +1.52 2.Qa4 Rf8 3.Qxa6+ Kd7 4.Qa7+ Nc7
5.Rb7 Qc6 6.a3 c4 7.Re1 (4.539.444) 458

5.01 0:12 +1.39 2.Qa4 Rf8 (5.862.393) 471


5.03 0:13 +2.52 2.Rd3 Qe4 3.Qb3 Kc7 4.Rf3 (6.189.262) 475

6.01 0:22 +0.62 2.Rd3 Qe4 3.Qb3 Kc7 4.Rxa6 Nf4
5.Qb6+ Kc8 6.Qc6+ Qxc6 7.Rxc6+ Kb7
8.Rdxd6 (11.496.538) 504


6.02 0:23 +1.52 2.Qa4 Rf8 3.Qxa6+ Kd7 4.Qa7+ Nc7
5.Rb7 Qc6 6.a3 c4 7.Re2 (11.902.730) 507

7.01 0:52 +2.21 2.Qa4 Rd7 3.Qxa6+ Rb7 4.Rd3 Nc7
5.Rc6 Kb8 6.Rxd5 Nxa6 7.Rxa6 (27.601.671) 524

8.01 2:11 +3.80 2.Qa4 Kc7 3.Rxa6 Rb8 4.Ra7+ Rb7
5.Rxb7+ Qxb7 6.Rb3 Qc8 7.Qa7+ Kd8
8.Rb8 Qxb8 9.Qxb8+ Kd7 (71.037.381) 539

9.01 6:44 +4.21 2.Qa4 Rd7 3.Qxa6+ Kd8 4.Rd3 Nc7
5.Rxd5 Nxa6 6.Rxa6 Ke7 7.Bxc5 dxc5
8.Rxd7+ Kxd7 9.Ra7+ Ke6 10.Rxg7 Kf6 (218.818.609) 541

10.01 12:31 +4.45 2.Qa4 Rd7 3.Qxa6+ Kd8 4.Rd3 Nd4
5.Bxd4 exd4 6.Rb8+ Ke7 7.Qc8 Ke6
8.Qg8+ Rf7 9.Rf3 (413.052.896) 549



Regards, Eelco

Christopher Conkie
Posts: 6072
Joined: Sat Apr 01, 2006 7:34 pm
Location: Scotland
Contact:

Re: unbalanced position

Post by Christopher Conkie » Mon Aug 10, 2009 6:32 am

Always nice to see new "authors".

When are you going to release "Ancalagon 1.3"?

Will there be an Ancalagon "the Killer" version? I do hope so......

http://www.talkchess.com/forum/viewtopi ... 57&t=21397

It is not exactly clear if Stockfish will be renamed, can you help please?

http://www.talkchess.com/forum/viewtopi ... 91&t=23533

I guess i'm just losing track of all these numbers. "I need to exercise my plusses and minuses".

Maybe it's just me.

;-)

Christopher

User avatar
Eelco de Groot
Posts: 4265
Joined: Sun Mar 12, 2006 1:40 am
Location: Groningen

Re: unbalanced position

Post by Eelco de Groot » Mon Aug 10, 2009 7:41 am

Christopher Conkie wrote:Always nice to see new "authors".

When are you going to release "Ancalagon 1.3"?
Hello Christopher, I'm not sure, maybe if Ancalagon has reached an elo of 3028 :) . Rybka 4 is still far away so Rybka 3 is the moving target.. But not really interested in listed elo strength actually, I does not tell me much about how useful for analysis. That is the not moving target. I just read from Werner that Stockfish has now again un-crossed the 3000 barrier...
Updated engines:
22 Stockfish 1.4 x64 4CPU 2999 +17 -17 982 games (-3 and now under 3000 again)
so a 32-bit 1 cpu Ancalagon is not quite there yet. I have no real idea about elo, I have yet to play a single testgame with Ancalagon 1.3. We are following the Chess System Tal approach here :) We don't want to get lost in beancounting...
Will there be an Ancalagon "the Killer" version? I do hope so......

http://www.talkchess.com/forum/viewtopi ... 57&t=21397

It is not exactly clear if Stockfish will be renamed, can you help please?
That I do not know...
Eelco de Groot wrote:
Eelco de Groot wrote:
In Glaurung you seem to be able to get away with just subtracting the full eval! Here in Toga I divided first by 0x28
Sorry about that, that was not really correct and rather misleading, too strange to be true, I need to exercise my plusses and minuses, had to look closer and finally saw in the same modification of Glaurung actually a much smaller fraction of the eval is subtracted, because of a division by 256. The equivalent code in Ancalagon originally looked a bit like this, but the factor 1000 is now I believe 0x300:

Code: Select all

      // Finally, extract the king safety score from the SafetyTable[] array.
      // Add the score to the evaluation, and also to ei.futilityMargin.  The
      // reason for adding the king safety score to the futility margin is
      // that the king safety scores can sometimes be very big, and that
      // capturing a single attacking piece can therefore result in a score
      // change far bigger than the value of the captured piece.
      assert&#40;inc < 100&#41;;
      ei.mgValue -= (&#40;1000 - sign * ei.mgValue&#41; * sign * Value&#40;SafetyTable&#91;inc&#93;)/256&#41;;
      if&#40;c == p.side_to_move&#40;))
        ei.futilityMargin += Value&#40;2 * SafetyTable&#91;inc&#93;);
    &#125;
  &#125;
Eelco
Yes, this is still much the same, the equivalent code now looks like this. King Safety as you can maybe see is now evaluated also for the endgame, but if there are no Queens to lead the attack the computation is aborted so this will not influence endgames very much. The attackUnit numbers do quickly add up though with a factor 1000 or now 0x350, although they are then partially subtracted again. Using ei.futilityMargin not just in the quiescence search is however to be tested further, it is at the moment also used in nullwindow futility pruning. What I would really like is an idea for the standard deviation of eval not just based on King Safety. But that is much harder to think about, let alone to program :)

Code: Select all

      // Finally, extract the king safety score from the SafetyTable&#91;&#93; array.
      // Add the score to the evaluation, and also to ei.futilityMargin.  The
      // reason for adding the king safety score to the futility margin is
      // that the king safety scores can sometimes be very big, and that
      // capturing a single attacking piece can therefore result in a score
      // change far bigger than the value of the captured piece.
      Value v = apply_weight&#40;&#40;Value&#41;((&#40;0x350 - sign * ei.mgValue&#41; * SafetyTable&#91;attackUnits&#93;)/0x100&#41;, WeightKingSafety&#91;us&#93;);
      Value w = apply_weight&#40;&#40;Value&#41;((&#40;0x350 - sign * ei.egValue&#41; * SafetyTable&#91;attackUnits&#93;)/0x100&#41;, WeightKingSafety&#91;us&#93;);
	   
      ei.mgValue -= sign * v;
      ei.egValue -= sign * 2 * w / 4;

      if &#40;us == p.side_to_move&#40;))
          ei.futilityMargin += v;
    &#125;
  &#125;
Eelco

I guess i'm just losing track of all these numbers. "I need to exercise my plusses and minuses".

Maybe it's just me.

;-)

Christopher

User avatar
Eelco de Groot
Posts: 4265
Joined: Sun Mar 12, 2006 1:40 am
Location: Groningen

Re: unbalanced position

Post by Eelco de Groot » Mon Aug 10, 2009 8:36 am

To further clarify, if I do not think it could be useful for analysis for correspondence chess, opening study, maybe even Centaur chess and people might as well use Stockfish for that purpose, I don't see any point in releasing it. Probably no-one does. :( But if I did not think that it could be done I also for sure would have given up long ago.

User avatar
Eelco de Groot
Posts: 4265
Joined: Sun Mar 12, 2006 1:40 am
Location: Groningen

Re: unbalanced position

Post by Eelco de Groot » Mon Aug 10, 2009 8:38 am

Will Singleton wrote:[d]2kr4/2n3b1/pR1p3p/2pqp1p1/8/4R3/P1Q2BPP/6K1 b - - bm e4;

Some programs (Bright 0.2, Glaurung 1.21) think Ne6 works, but don't see the counter Qa4.
This one was slightly worse and plays Ne6 so it is not exempt of such an anti-positional move.


Build 226

2kr4/2n3b1/pR1p3p/2pqp1p1/8/4R3/P1Q2BPP/6K1 b - -

Engine: Ancalagon 1.3 Weak Squares 180 Board Control middlegame 50 endgame 50 Build 226 (Athlon 2009 MHz, 256 MB)

by Romstad, Costalba, Kiiski, de Groot

2.00 0:00 -0.35 1...Rf8 2.Rd3 Rxf2 3.Kxf2 (289.651) 343

2.10 0:02 +0.45 1...Ne6 2.Rd3 Nd4 3.Bxd4 exd4 4.Qa4 (1.073.939) 414

3.01 0:03 +0.45 1...Ne6 2.Rd3 Nd4 3.Bxd4 exd4 4.Qa4 (1.419.557) 426

4.01 0:17 +0.31 1...Ne6 2.Qb1 c4 3.Rf3 Nc5 4.Rb8+ Kd7 (8.417.803) 486

5.01 0:28 -2.62 1...Ne6 2.Qa4 e4 3.Rxe4 Nc7 4.Kh1 (14.113.560) 500


5.02 0:32 -1.17 1...h5 2.Qb1 Nb5 3.a4 Rf8 4.axb5 (16.084.342) 501

5.12 0:35 -0.03 1...e4 2.Rxe4 Rf8 3.a4 Be5 4.Qb1 (17.761.965) 501

6.01 0:54 0.00 1...e4 2.Rxe4 Rf8 3.Qb1 Nb5 4.a4 Nc3
5.Rb8+ Kd7 6.Rb7+ Kc8 7.Rb8+ (28.245.637) 518

7.01 1:54 -0.07 1...e4 2.Rxe4 Rf8 3.Qb1 Kd7 4.Re2 Be5
5.Qh7+ Kc8 6.Qxh6 (59.824.502) 523

8.01 4:14 +0.11 1...e4 (135.691.221) 532

9.01 6:22 0.00 1...e4 2.Rxe4 Rf8 3.Qb1 Nb5 4.a4 Nc3
5.Rb8+ Kd7 6.Rb7+ Kc8 7.Rb8+ (205.817.285) 538


best move: e5-e4 time: 14:14.703 min n/s: 525.445 nodes: 449.100.125

This was looking slightly better though, but needs even more time to go to eleven plies, 78 minutes:

Build 227

2kr4/2n3b1/pR1p3p/2pqp1p1/8/4R3/P1Q2BPP/6K1 b - -

Engine: Ancalagon 1.3 Weak Squares 180 Board Control middlegame 50 endgame 50 Build 227 (Athlon 2009 MHz, 256 MB)

2.00 0:00 -0.35 1...Rf8 2.Rd3 Rxf2 3.Kxf2 (290.146) 325

2.03 0:01 +0.05 1...h5 2.Qb1 (553.650) 372

2.17 0:03 +0.15 1...e4 2.Rxe4 Rf8 3.Qb1 Nb5 4.Rxa6 (1.316.197) 434

3.01 0:04 +0.15 1...e4 2.Rxe4 Rf8 3.Qb1 Nb5 4.Rxa6 (2.101.867) 454

4.01 0:06 +0.15 1...e4 2.Rxe4 Rf8 3.Qb1 Nb5 4.Rxa6 (3.174.425) 462

5.01 0:09 +0.15 1...e4 2.Rxe4 Rf8 3.Qb1 Nb5 4.Rxa6 (4.611.689) 472

6.01 0:22 -0.03 1...e4 2.Rxe4 (11.608.589) 510

7.01 0:46 0.00 1...e4 2.Rxe4 Rf8 3.Qb1 Kd7 4.Qc2 Kc8 (24.821.470) 528

8.01 1:54 0.00 1...e4 2.Rxe4 Rf8 3.Qb1 Nb5 4.a4 Nc3
5.Rb8+ Kd7 6.Rb7+ Kc8 7.Rb8+ (62.435.342) 547

9.01 6:33 +0.23 1...e4 (215.287.714) 547

10.01 26:19 +0.43 1...e4 2.Rxe4 Rf8 3.Re7 Bf6 4.Re2 Bd4
5.Qb1 Rxf2 6.Rxf2 Qf7 7.Qc2 Bxf2+
8.Qxf2 (860.555.028) 544

11.01 78:01 -0.11 1...e4 2.Rxe4 (2.509.641.949) 536


Eelco

User avatar
beachknight
Posts: 3533
Joined: Tue Jan 09, 2007 7:33 pm
Location: Antalya, Turkey
Contact:

Re: unbalanced position

Post by beachknight » Mon Aug 10, 2009 7:35 pm

Following five progs find the bm e4 easily:

DF11, R3x64, DS11x64, DH12, SF14x64

Best,
hi, merhaba, hallo HT

Will Singleton
Posts: 128
Joined: Thu Mar 09, 2006 4:14 pm
Location: Los Angeles, CA

Re: unbalanced position

Post by Will Singleton » Mon Aug 10, 2009 10:08 pm

beachknight wrote:Following five progs find the bm e4 easily:

DF11, R3x64, DS11x64, DH12, SF14x64

Best,
Thanks for testing. I usually post positions I find interesting to the amateur programmer, usually to highlight the issues amateurs have relative to the commercials. Many programs have a hard time seeing the problem with Ne6, perhaps a better problem is to see which program can see the loss after Ne6. And what's SF14x64?

Will

Post Reply