Samstag, 26. Dezember 2009

Mac Stockfish 1.6

Unterschiedliche Anzahl an "Nodes searched" je nach verwendetem Compiler. Teilweise auch abhängig von den benutzten Optionen -O2 oder -O3. Ermittelt unter OS X auf einem Intel C2D Mac.

stockfish16 bench 128 1 13 default depth

GCC 4.4.2 64 Bit: Option -O3
===============================
Total time (ms) : 46761
Nodes searched : 47252127
Nodes/second : 1010502

GCC 4.2.1 64 Bit: Option -O3
===============================
Total time (ms) : 44972
Nodes searched : 43975744
Nodes/second : 977847

GCC 4.2.1 64 Bit: Option -O2
===============================
Total time (ms) : 48102
Nodes searched : 43975744
Nodes/second : 914218

GCC 4.2.1 32 Bit: Option -O3
===============================
Total time (ms) : 77110
Nodes searched : 43975744
Nodes/second : 570298

GCC 4.2.1 32 Bit: Option -O2
===============================
Total time (ms) : 81860
Nodes searched : 43975744
Nodes/second : 537206

Intel ICC 64 Bit
===============================
Total time (ms) : 42150
Nodes searched : 42489524
Nodes/second : 1008055

GCC 4.4.2 64 Bit: Option -O2
===============================
Total time (ms) : 42508
Nodes searched : 41780853
Nodes/second : 982893

GCC 4.4.2 32 Bit: Option -O2
===============================
Total time (ms) : 69405
Nodes searched : 41780853
Nodes/second : 601986

GCC 4.4.2 32 Bit: Option -O3
===============================
Bench position: 1/16

Segmentation fault

Mittwoch, 16. Dezember 2009

Luigi Centurini

2KB4/1P6/2k5/8/8/8/7b/8 w - - 0 1

Miniatur von Luigi Centurini, 19. Jahrhundert.

[Event "Miniatur von Luigi Centurini"]
[Site "2/Plan"]
[Date "2009.12.16"]
[White "am Zug gewinnt"]
[Black "19. Jahrhundert"]
[Result "1-0"]
[SetUp "1"]
[FEN "2KB4/1P6/2k5/8/8/8/7b/8 w - - 0 1"]
[PlyCount "53"]


1. Bh4 Kb5 2. Bf2 Ka6 3. Bc5! Bg3 4. Be7 Kb5 5. Bd8 Kc6 6. Bh4!! Bf4 7. Bf2 Be5 (7... Bd6 {lt. Tablebase ein Zug schneller}) 8. Ba7 Bd6 9. Bb8 Bc5 10. Bh2 (10. Be5 {lt. Tablebase ein Zug schneller}) 10... Ba7 11. Bg1! Bxg1 12. b8=Q {weitere Mattführung lt. Tablebase:} Bd4 13. Qc7+ Kd5 14. Kd7 Bc5 15. Qc6+ Kd4 16. Ke6 Bb4 17. Qd5+ Kc3 18. Ke5 Ba3 19. Qd4+ Kb3 20. Kd5 Bc1 21. Qc4+ Kb2 22. Kd4 Bd2 23. Kd3 Bc1 24. Qc2+ Ka1 25. Kc3 Ba3 26. Kb3 Bb2 27. Qxb2# 1-0

Donnerstag, 10. Dezember 2009

OliThink 5.2.3

Die Schachengine OliThink kann man beim Autor Oliver Brausch u.a. auch im Quellcode downloaden. Dieser besteht aus einer einzigen Datei und kommt in der Version 5.2.3 mit weniger als 1600 Zeilen der Programmiersprache C aus.

Nach Abänderung des Variablennamens "time" läßt sich OliThink problemlos unter OS X übersetzen.

gcc-mp-4.4 -O3 -m64 olithink.c -o olithink523

Olis Spielstärke liegt damit fast auf dem Niveau von Phalanx XXII.

xboard -size small -tc 10 -mg 20 -fcp ./olithink523 -scp "../Phalanx-XXII/phalanx22 -t32768" -sd ../Phalanx-XXII/ &




Eine 10 Ply tiefe Suche liefert nachfolgende Ausgabe auf den Zug 1.e4 (MacBook mit Intel C2D 2.4 GHz):
./olithink523 -sd 10
e2e4
1 ____ 1 __0 _____30 e7e6
2 __ -19 __0 ____248 d7d5 d2d3
3 ___ -1 __0 ____955 d7d5 b1c3 g8f6
4 __ -16 __0 ___2798 d7d5 b1c3 d5e4 c3e4
5 ____ 9 __2 __12850 d7d5 e4e5 b8c6 d2d4 c8f5
6 __ -25 __9 __67799 d7d5 e4e5 e7e6 d2d4 f8b4 c2c3 b4e7
7 ___ -6 _41 _352945 e7e6 g1f3 c7c6 b1c3 f8d6 e4e5 d6c5
8 __ -26 123 1142384 e7e5 f1c4 g8f6 b1c3 f8c5 g1f3 b8c6 d2d3
9 __ -11 305 3383908 d7d5 e4d5 d8d5 b1c3 d5e6 d1e2 g8f6 d2d3 e6e2 f1e2 b8c6
10__ -21 697 9337268 d7d5 e4e5 d5d4 f1c4 b8c6 g1f3 e7e6 a2a4 f8b4 c2c3
1. ... d7d5

kibitz W: -21 Nodes: 6678373 QNodes: 2658895 Evals: 4461012 cs: 697 knps: 1339


Gleich die erste Partie eines kleinen Wettkampfes zwischen OliThink und Phalanx verlief überaus spannend. Phalanxs aktive Spielweise (z.B. das Opfer 12. ..Sxf2) traf auf eine solide Verteidigung seitens OliThink.

[Event "MacBook C2D 2.4 GHz, Ponder on"]
[Site "2/Plan"]
[Date "2009.12.10"]
[Round "1"]
[White "OliThink 5.2.3, 48MB Hash"]
[Black "Phalanx XXII, 32MB Hash"]
[Result "1/2-1/2"]
[TimeControl "40/600"]

1. c4 f5 2. Nc3 Nf6 3. d4 g6 4. Nf3 Bg7 5. Bf4 O-O 6. c5 b6 7. Qb3+ Kh8 8.
e3 bxc5 9. dxc5 Nc6 10. Nd4 Nxd4 11. exd4 Ng4 12. h3

oli-p22-1

12. .. Nxf2! 13. Kxf2 Bxd4+ 14. Ke1 e5 15. Qd5 Qh4+ 16. Kd1 Qxf4 17. Qxa8

oli-p22-2

17. .. Bxc5 18. Qd5 d6 19. Bb5 Qf2 20. Be2 Bd7 21. Rf1 c6 22. Qf3 Qd4+ 23. Kc2 Rb8 24. Rab1 Qb4 25. Qd3 d5 26. g4 Bd4 27. Qa6 Qc5 28. Qa3 Rb4 29. Kd2 e4 30. Ra1 Be5 31. Kd1 f4 32. Ba6 Bd6 33. Be2

oli-p22-3

33. .. a5 34. Nxe4 Rd4+ 35. Ke1 Qxa3 36. bxa3 dxe4 37. Rd1

oli-p22-4

37. .. Rxd1+ 38. Bxd1 g5 39. Bb3 Bc8 40. Bc4 Bxa3 41. Ke2 Kg7 42. Rb1 Bb4 43. a3 Bd6 44. Rb6 h5 45. Rxc6 hxg4 46. Kf1 Bxa3 47. Rxc8 gxh3 48. Bd5 e3 49. Bf3 Bb4 50. Kg1 Kf7 51. Kh2 a4 52. Rc4 Bd6 53. Kxh3 a3 54. Bd5+ Kf6 55. Rc6 Ke5 56. Bf3 Bf8 57. Kg4 Be7 58. Be2 Kd5 59. Ra6 Kd4 60. Bf3 Kd3 61. Kf5 e2 62. Bxe2+ Kxe2 63. Re6+ Kd2 64. Rxe7 f3 65. Rd7+ Ke2 66. Re7+ Kf2 67. Kxg5 a2 68. Ra7 Kg1 69. Rxa2 f2 70. Rxf2 Kxf2
{Drawn game} 1/2-1/2

Dienstag, 8. Dezember 2009

Suche und Wissen

8/8/8/6k1/6p1/6Kp/7P/3B4 w - - 0 1

Kann Weiß das Endspiel gewinnen?

Zur Beantwortung dieser Frage ist das Wissen hilfreich, dass der Bauer g4 vorerst keinesfalls geschlagen werden darf, da wegen dem falschfarbigen Läufer nur ein Remis erreichbar ist. Erst die Suche wird jedoch Klarheit darüber verschaffen, ob es Weiß gelingt den gegnerischen König einzusperren und den schwarzen Zug g3 zu erzwingen. Dann schlägt der h-Bauer zurück und marschiert zur Umwandlung.

Die Schach Engines benutzen natürlich keine Endspieldatenbanken; denn diese meinen nur lapidar Matt in 26 Zügen. Getestet mit einem 32-Bit Thread auf Intel C2D mit 2.4 GHz und 256 MB Hash.

Kurios bleibt das Verhalten der Enginetypen C (Junior und Booot) und auch F (Rybka und Twisted Logic). Obwohl Junior weiß, dass die Stellung nach dem Schlagen des g-Bauern nicht zu gewinnen ist, wird selbst bis Tiefe 60 kein anderer Zug gewählt. Fast schon peinlich wird es für Rybka, die selbst nach über 30 minütiger Suche an Lxg4 festhält. Arasan und Colossus zeigen dagegen sehr schön, dass auch ohne Wissen um den falschfarbigen Läufer, die Suche den richtigen Weg schnell finden kann.


Engines mit Remis-Wissen um den falschfarbigen Läufer

Typ A: mit Gewinnbewertung
Analysis by Spark 0.3:
1.Lxg4 Kf6 2.Kf4 Kg6 3.Lf5+ Kf6 4.Lxh3 Kg6 5.Lf5+ Kf6
= (0.04) Tiefe: 9/8 00:00:00
...
1.Lxg4 Kf6 2.Kf4 Kg6 3.Lf5+ Kf6 4.Ld3 Ke6 5.Kg3 Kd6 6.Kxh3 Kd5 7.Lc4+ Ke5 8.Kg4 Kf6 9.Ld3 Ke7 10.Kg5 Kf7
= (0.04) Tiefe: 18/22 00:00:01 2852kN
1.Lc2
= (0.29) Tiefe: 18/22 00:00:01 3521kN
...
1.Lc2 Kh5 2.Kf4 Kh6 3.La4 Kg6 4.Le8+ Kf6 5.Lh5 Ke6 6.Kg5 g3 7.hxg3 Ke5 8.Lf3 Kd4 9.Kf4 Kc5 10.Ke5 Kc4 11.g4 h2 12.g5 Kd3 13.Le4+ Kc3 14.g6 Kb4 15.g7 Ka3 16.g8D h1T
+- (28.16) Tiefe: 36/53 00:01:36 292mN

Analysis by RobboLito 0.085e4:
1.Kf2 Kf6 2.Lxg4 Kg7 3.Lf5 Kh8 4.Le6 Kg7 5.Lg4 Kh8
= (0.05) Tiefe: 9/12 00:00:00 6kN
...
1.Lc2 Kh5 2.Kf4 Kh6 3.La4 Kg6 4.Le8+ Kh6 5.Kf5 Kg7 6.Kg5 Kf8 7.Lh5 Kg7 8.Lg6 Kf8 9.Kf6 Kg8 10.Le4 Kf8 11.Ld5 Ke8 12.Lf7+ Kd8 13.Le6 g3 14.hxg3 h2 15.Ld5 Kd7 16.Ke5 Kd8
+- (7.83) Tiefe: 25/54 00:03:32 673mN
...
1.Lc2 Kh5 2.Kf4 Kh6 3.La4 Kg6 4.Le8+ Kh6 5.Kf5 Kg7 6.Kg5 Kf8 7.Lh5 Kg7 8.Lg6 Kh8 9.Kf6 Kg8 10.Le4 Kf8 11.Ld5 Ke8 12.Lb3 Kf8 13.Lf7 g3 14.hxg3 h2 15.Ld5 Ke8 16.g4 Kf8
+- (8.86) Tiefe: 27/65 00:19:19 3805mN

Typ B: mit Vorteilsbewertung (3..6)
Analysis by Fruit 2.1:
1.Lc2 Kf6 2.Kf4 Kg7 3.Le4
+- (2.99) Tiefe: 6/7 00:00:00
...
1.Lc2 Kh5 2.Kf4 Kh6 3.La4 Kh5 4.Le8+ Kh6 5.Kf5 Kg7 6.Kg5 Kf8 7.Lg6 Kg7 8.Lf5 Kf7 9.Kh6 Kf8 10.Le6 Ke7 11.Lxg4 Kf8 12.Kh7 Kf7 13.Lxh3 Kf6 14.Ld7 Kg5 15.Kg7 Kh5 16.Kf6 Kh6
+- (4.63) Tiefe: 33/64 00:16:49 3551mN

Typ C: mit Remisbewertung nebst Schlagen des Bauern g4
Analysis by Junior 2010:
1.Lxg4 Kg6
= (0.00) Tiefe: 12 00:00:00
...
1.Lxg4 Kg6 2.Kf4 Kf6 3.Ke4 Kg5 4.Lc8 Kf6
= (0.00) Tiefe: 60 00:03:52 53093kN

Analysis by Booot 4.15.0:
1.Lxg4 Kf6 2.Kxh3
+- (5.36) Tiefe: 3 00:00:00
1.Lxg4 Kf6 2.Kxh3 Kg7
= (0.00) Tiefe: 4 00:00:00
...
1.Lxg4 Kf6 2.Kxh3 Kg7 3.Kh4 Kh7 4.Kh5 Kg7 5.Lf3 Kh7
= (0.00) Tiefe: 10 00:00:00 52kN (Berechnungsende!)


Engines ohne Remis-Wissen um den falschfarbigen Läufer

Typ D: mit Gewinnbewertung
Analysis by Arasan 11.6:
1.Lxg4 Kg6 2.Kh4 Kf6 3.Kh5 Kg7 4.Lf5 Kg8 5.Kh6
+- (3.89) Tiefe: 8 00:00:00 17kN
...
1.Lxg4 Kg6 2.Kf4 Kg7 3.Kg5 Kf7 4.Ld7 Kg8 5.Kg6 Kh8 6.Lb5 Kg8 7.Le2 Kh8 8.Lg4 Kg8 9.Lf5 Kh8 10.Kh5 Kg7 11.Kg5 Kg8 12.Kf6 Kh8 13.Le6 Kh7 14.Lc4
+- (4.05) Tiefe: 27 00:00:05 10401kN
1.La4 Kh5 2.Kf4 Kh6 3.Le8 Kg7 4.Kf5 Kf8 5.Lh5 Kg7 6.Kg5 Kh7 7.Kf6 Kg8 8.Kg6 Kh8
+- (4.45) Tiefe: 27 00:00:09 18463kN
...
1.La4 Kf5 2.Lc2+ Kg5 3.Le4 Kh5 4.Kf4 Kh6 5.Kf5 Kh5 6.Lc6 Kh6 7.Lb5 Kg7 8.Kg5 Kf7 9.Lc4+ Kf8 10.Kf6 Ke8 11.Le2 Kd7 12.Lxg4+ Kc7 13.Lxh3 Kc6 14.Le6 Kc7 15.h4 Kb7 16.h5 Ka6
+- (12.16) Tiefe: 33 00:01:36 182mN
...
1.Lc2 Kf6 2.Kf4 Ke6 3.Lg6 Kd5 4.Lf7+ Kd4 5.Lh5 Kd5 6.Kf5 Kd6 7.Kf6 Kc5 8.Lxg4 Kd4 9.Lxh3
+- (#30) Tiefe: 36 00:06:10 677mN (Berechnungsende!)

Analysis by Colossus 2008b:
1.Lxg4 Kf6 2.Lxh3
+- (4.04) Tiefe: 3/4 00:00:00
...
1.Lxg4 Kf6 2.Kh4 Kg6 3.Ld1 Kf7 4.Kh5 Kg7 5.Le2 Kh7 6.Kg5 Kg7 7.Kf5 Kf7 8.Lc4+ Kg7 9.Ld5 Kh7 10.Kg5 Kg7 11.Le6 Kh7 12.Lg4 Kg7
+- (4.37) Tiefe: 23/33 00:00:03 10817kN
1.Lc2 Kh5 2.Kf4 Kh6 3.Le4 Kg7 4.Kg5 Kf7 5.Lf5 Kg7 6.Lg6 Kg8 7.Kf6 Kf8 8.Lf5 g3 9.hxg3 h2 10.Le4 Ke8 11.Ld5 Kd8 12.Ke6 h1D 13.Lxh1
+- (4.40) Tiefe: 23/33 00:00:04 11992kN
...
1.Lc2 Kh5 2.Kf4 Kh6 3.Kf5 Kh5 4.Lb3 Kh6 5.Ld5 Kg7 6.Le6 Kh6 7.Lc4 Kg7 8.Kg5 Kf8
+- (9.29) Tiefe: 28/42 00:00:13 44203kN
...
1.Lc2 Kh5 2.Kf4 Kh6 3.La4 Kh5 4.Le8+ Kh6 5.Kf5 Kg7 6.Ld7 Kf7 7.Le6+ Kg7 8.Kg5 Kh7 9.Kf6
+- (#33) Tiefe: 33/68 00:02:32 458mN

Typ E: mit Vorteilsbewertung (3..6)
Analysis by Phalanx XXII:
1.Lxg4 Kf6 2.Kf4 Kg7 3.Ke5
+- (4.33) Tiefe: 5/7 00:00:00
...
1.Lxg4 Kg6 2.Kxh3 Kg7 3.Le2 Kh7 4.Kg4 Kg7 5.Kg5 Kh7 6.h3 Kg7 7.Lg4
+- (4.46) Tiefe: 22/38 00:01:06 78800kN
1.Le2 Kf6 2.Kf4 Kg6 3.Ld3+ Kh6
+- (4.47) Tiefe: 22/38 00:01:19 93141kN
...
1.La4 Kf5 2.Lc2+ Kg5 3.Le4 Kh5 4.Kf4 Kh6 5.Lc2 Kh5 6.La4
+- (4.75) Tiefe: 27/38 00:10:42 675mN


Typ F: mit Vorteilsbewertung (3..6) trotz Schlagen des Bauern g4
Analysis by Rybka 3:
1.Lxg4 Kf6
+- (4.37) Tiefe: 6 00:00:00
...
1.Lxg4
+- (5.98) Tiefe: 22 00:33:40 281mN

Analysis by Twisted Logic 20090922:
1.Lxg4 Kf6 2.Kf4 Ke7 3.Ke5 Kf7 4.Lxh3 Ke7 5.Le6
+- (4.95) Tiefe: 10/13 00:00:00 8kN
...
1.Lxg4 Kf6 2.Kf4 Kg6 3.Lf5+ Kg7 4.Kg5 Kf7 5.Kh6 Kg8 6.Le6+ Kh8 7.Lc8 Kg8 8.La6 Kh8 9.Kg5 Kg8 10.Lf1 Kg7 11.Lxh3 Kf7 12.Le6+ Kg7 13.h4 Kh7 14.h5 Kg7 15.h6+ Kh8 16.Lf5 Kg8
+- (6.32) Tiefe: 34/58 00:14:45 1778mN

Mittwoch, 2. Dezember 2009

∆25 Top 20 @ 1 CPU & 32 Bit

_1 RobboLito 0.085_______2875 (Sourcecode)
_2 Rybka 3_______________2850
_3 Shredder 12___________2800
_4 Naum 4________________2775
_5 Stockfish 1.5.1_______2750 (Sourcecode)
_6 Fritz 12______________2725
_7 Thinker 5.4D Inert____2700 (Freeware)
_8 Doch 09.980___________2650 (Freeware)
_8 Grapefruit 1.0b_______2650 (Sourcecode)
_8 Hiarcs 12.1___________2650
_8 Onno 1.1.1____________2650
_8 Sjeng WC 2008_________2650
_8 Spark 0.3_____________2650 (Freeware)
_8 Zappa Mexico II_______2650
15 Junior 2010___________2625
16 Ktulu 9.0_____________2600
16 Loop 13.6_____________2600
18 SmarThink 1.20________2575
18 Spike 1.2 Turin_______2575 (Freeware)
18 TwistedLogic 20090922 2575 (Freeware)
-----------------------------
21 Chess Tiger 2007.1____2550
22 Crafty 23.1___________2525 (Sourcecode)
23 Frenzee Feb08_________2525 (Freeware)
---------- OLDIES -----------
-> Fruit 2.1_____________2500 (Sourcecode, Bezugspunkt)
xx Colossus 2008b________2475 (Freeware)
xx Pro Deo 1.6___________2475 (Freeware)
xx The King 3.50_________2475
xx Ruffian 2.1.0_________2450
xx Gandalf 6.01__________2425
xx LG Evolution__________2375 (Freeware)
xx Fritz 5.32____________2350
xx Nimzo 8_______________2350
xx Yace Paderborn________2325 (Freeware)
xx Pepito 1.59___________2300 (Sourcecode)
xx Genius 7______________2250
xx Phalanx XXII__________2200 (Sourcecode)
xx GNU Chess 5.07________2100 (Sourcecode)
xx Beowulf 2.4___________2000 (Sourcecode)