![]() |
Raspberry Pi als Schachengine einbinden
Da ich einen Raspberry hier rumfliegen habe, wollte ich mich die Tage mal damit beschäftigen diesen als Schachengine unter Windows und/oder OSX einzubinden.
Im entferntesten Sinne wäre das dann auch ein Schachcomputer. Falls Interesse bestehen sollte, kann ich gleichzeitig ein Howto verfassen... |
AW: Raspberry Pi als Schachengine einbinden
Hallo Patrick,
schaffst Du evtl auch die Anbindung an den Citrine? Es sind nur eine Handvoll Befehle und zusammen hätte man dann einen schönen Schachcomputer :goldcup: Viele Grüße, Theo |
AW: Raspberry Pi als Schachengine einbinden
N'Abend Theo,
keine Ahnung :) Wird man sehen. Bin aber schon dabei. Nicht an der Citrine-Unterstützung, sondern ob es generell funktioniert. Wenn, dann spiele ich gleich mit der Shredder-GUI auf Windows und einer Engine, die auf dem Pi läuft... |
AW: Raspberry Pi als Schachengine einbinden
Krass, es klappt.
Auf dem Pi ist nun ein aktuelles Stockfish installiert, rennt mit 23kn/s (in der Grundstellung, Pi nicht übertaktet). Es läuft in diesem Moment ein Engine-Enginematch in der Shredder-GUI unter Windows, Stockfish auf dem Pi gegen Shredder Classic 4. Beide pondern und haben jeweils 64MB Hash. Das es so einfach ist :) Machbar ist es also. Morgen schreibe ich zusammen was dafür notwendig ist. |
AW: Raspberry Pi als Schachengine einbinden
Die erste von zwei Partien, je 15s/Zug und beide ohne Buch, ist beendet.
Erst ab dem 60. Zug ging es für Pi/Stockfish bergab, bis dahin war es nahezu ausgeglichen. Also man kann nicht sagen, dass Shredder auf einem P4 mit 2 GHz den kleinen gnadenlos überrannt hat. |
AW: Raspberry Pi als Schachengine einbinden
Es gibt Leute, die das Gerät an ein DGT-Brett zusammen mit einer XL-Uhr, die die Züge anzeigt, angeschlossen haben (s.Youtube etc.). Ob das aber dann ein Schachcomputer im ursprünglichen Sinne ist...
Grüße, Martin |
AW: Raspberry Pi als Schachengine einbinden
Zitieren:
|
AW: Raspberry Pi als Schachengine einbinden
Die 2. Partie endet remis, 1.5:0.5 für Shredder. Im Endspiel hat Stockfish 50-60kn/s erreicht.
Martin, ja richtig, es gibt einige Projekte um den Pi in dieser Richtung. Interessant finde ich es dennoch - muss halt jeder für sich selbst entscheiden. |
AW: Raspberry Pi als Schachengine einbinden
Zitieren:
da wird es verschiedene Auffassungen geben, klar. Ich selbst würde einen Schachcomputer über das englische Wort "dedicated" definieren. Wenn er nur zum Zweck des königlichen Spiels geschaffen wurde, dann ist es ein "Schachcomputer" im alten Sinn. Computer, die unter anderem auch Schach spielen können - wie PCs, Handhelds, Mobiltelefone... - können als Computergegner dienen. Ich nutze sie selbst natürlich auch gerne. "Schachcomputer" sind es aber meines Erachtens nicht. Um keine Missverständnisse aufkommen zu lassen. Die Idee mit dem Pi finde ich klasse und könnte mir ebenfalls vorstellen, so etwas mal zu versuchen. Das liefe aber eher unter der Überschrift "Bastelhobby"... :D Viele Grüße, Martin |
AW: Raspberry Pi als Schachengine einbinden
Ich war gestern erstaunt wie einfach es war. Probleme hatte ich keine, lief alles sofort. Und das eigentlich auch innerhalb weniger Minuten - der Großteil der Zeit ging beim Kompilieren von Stockfish drauf.
|
AW: Raspberry Pi als Schachengine einbinden
Einen ersten Entwurf zur Einrichtung findet ihr hier (PDF)
|
AW: Raspberry Pi als Schachengine einbinden
|
AW: Raspberry Pi als Schachengine einbinden
Hi Bryan,
really nice. :respekt: Which Engine(s) you are running on it? Stunning Regards, Sascha |
AW: Raspberry Pi als Schachengine einbinden
Hi Sascha
Thanks for the kind words, I hope you like the Zagreb chess pieces as they where a present from my two sons this Christmas It uses the Stockfish engine and the project software was written by Matt Shannon from America. The board is press sensory using tactile momentary switches under a semi rigid plastic chess board. Unfortunately, Matt didn't completely finish this project because of pressure at work and therefore didn't release his software publicly. There are a few features still missing but luckily because I worked with him on the project, I was able to build a fully working prototype that I really like minus the missing features. Here's a link to Matt's site. Sish - Computer Interfacing DIY Chessboards Regards Bryan |
AW: Raspberry Pi als Schachengine einbinden
Kurze Info am Rande
Die CPU vom Pi läuft im Standard mit 700MHz. Damit macht der Pi laut Stockfish-Benchmark ca. 32071 nodes/second. Taktet man die CPU auf 800MHz sind es ca. 33205 nodes/second, bei 900MHz ca. 36497. |
AW: Raspberry Pi als Schachengine einbinden
Zitieren:
als ich zuerst vom Raspberry als Engine las, dachte ich erst an eine GUI-Anwendung und konnte daran nichts aufregendes finden. Aber mit dem Photo ist der Groschen gefallen. Jetzt macht es Sinn, schön. :) Gruß Sören |
AW: Raspberry Pi als Schachengine einbinden
Habe soeben festgestellt mit der Angabe "Hash=64" in der .eng-Datei wird die Angabe einer Hashgröße in der Shredder-GUI ignoriert.
Stellt man in der GUI z.B. 128 ein, so wird dennoch mit 64 gespielt. Ich werde später mal prüfen, ob es funktioniert, wenn man keinen Hashparameter in der .eng-Datei angibt. |
AW: Raspberry Pi als Schachengine einbinden
Hier eine Beispielpartie - je 4 Stunden für die gesamte Partie
Nach insgesamt etwa 6 Stunden Spielzeit haben sich die beiden auf Remis geeinigt Pi (Schwarz): CPU @ 900MHz Shredder (Weiß): Pentium 4 @ 2 GHz, Deep Shredder 12 (1 Thread, Position Learning=false, Use Opening Advice=false) - beide haben ohne Eröffnungsbuch und ohne Endspieldaten gespielt - je 128 MB Hash und Ponder=true Partieverlauf als Grafik im Anhang
1. e4 {+0.31/21 6:19m} e5 {+0.39/21 8:02m (c5)} 2. Nf3
{+0.35/20 4:29m} Nf6 {+0.46/20 7s (Sc6)} 3. d4 {+0.21/20 9:14m} Nxe4 {+0.42/22 0s} 4. Bd3 {+0.28/19 4:34m (Sxe5)} d5 {+0.41/19 5:58m} 5. Nxe5 {+0.14/19 50s} Nd7 {+0.24/19 3:16m (Ld6)} 6. Nxd7 {+0.33/18 4:10m} Bxd7 {+0.43/21 0s} 7. O-O {+0.36/17 1:02m} Bd6 {+0.43/22 2:10m} 8. Qh5 {+0.20/19 4:02m (Sc3)} Nf6 {+0.29/22 10:44m} 9. Re1+ {+0.04/19 0s} Be7 {+0.26/24 11:36m (Kf8)} 10. Qf3 {+0.29/20 5:23m (De2)} O-O {+0.35/21 3:25m} 11. Bf4 {+0.25/18 3:07m} c6 {+0.35/21 0s (Te8)} 12. Nd2 {+0.26/19 5:30m} Re8 {+0.27/21 0s} 13. h3 {+0.36/18 3:24m} Qb6 {+0.24/21 7:55m} 14. Nb3 {+0.40/20 2:39m} a5 {+0.35/22 3:08m} 15. a4 {+0.44/18 17s} Be6 {+0.48/22 7:45m} 16. Qg3 {+0.38/20 0s} Nh5 {+0.39/23 10:34m (Db4)} 17. Bc7 {+0.53/18 52s} Qb4 {+0.31/23 1:53m (Sxg3)} 18. Qf3 {+0.42/20 5:29m} g6 {+0.26/22 0s (Sf6)} 19. g4 {+0.30/18 3:50m} Ng7 {+0.32/22 1:39m} 20. Re2 {+0.40/18 2:10m} Bg5 {+0.38/20 3:14m (Ld8)} 21. Qg3 {+0.42/18 6:33m (Ta3)} Bd7 {+0.21/21 3:17m} 22. Bd6 {+0.44/19 1s} Qb6 {+0.25/23 7:25m} 23. Be5 {+0.44/21 0s (Txe8+)} Rxe5 {0.00/21 3:24m (Dd8)} 24. Rxe5 {+0.46/20 4:27m} Ne6 {0.00/24 0s} 25. Ree1 {+0.53/18 3:22m (Df3)} Bf4 {0.00/25 3:53m (Tf8)} 26. Qf3 {+0.47/20 4:21m} Bc7 {0.00/26 21s (Sg5)} 27. Bf1 {+0.63/19 3:54m (De3)} Qb4 {0.00/23 3:36m} 28. Bg2 {+0.66/20 0s (Te3)} Qd6 {0.00/23 4:25m} 29. Qc3 {+0.59/20 0s (Dg3)} Qh2+ {-0.05/19 2:56m} 30. Kf1 {+0.51/21 0s} b6 {-0.15/23 6:03m (b5)} 31. Nd2 {+0.81/20 4:00m} Nf4 {+0.36/24 1:45m} 32. Qg3 {+0.78/21 1:10m} Qxg3 {+0.36/24 1:30m} 33. fxg3 {+0.83/23 0s} Ne6 {+0.34/24 8:19m} 34. c4 {+0.70/23 0s} Bxg3 {+0.44/24 3:43m} 35. cxd5 {+0.63/21 0s} cxd5 {+0.44/23 6:43m} 36. Rec1 {+0.65/22 0s} Nf4 {+0.53/23 8:39m (Td8)} 37. Rc3 {+0.74/21 7:09m} Bh4 {+0.58/24 15s (Sxg2)} 38. Nf3 {+0.71/21 4:35m} Bf6 {+0.69/24 3:35m} 39. Rc7 {+0.67/20 0s (Se5)} Be6 {+0.44/19 3:55m} 40. Rc6 {+0.61/20 2:48m (Se5)} Rb8 {+0.29/19 4:37m} 41. Ra3 {+0.67/22 0s} b5 {+0.14/21 2:58m} 42. Rb3 {+0.54/21 28s} b4 {+0.21/23 1:58m} 43. Rc5 {+0.47/21 2:53m} Rc8 {+0.21/25 0s (Ta8)} 44. Rxc8+ {+0.35/22 4:51m} Bxc8 {+0.25/27 0s} 45. Re3 {+0.36/21 2:18m} Kf8 {+0.25/26 0s} 46. Kf2 {+0.36/21 2:19m} Ne6 {+0.25/25 3:27m (Ld8)} 47. Rd3 {+0.54/22 6:16m} Ba6 {+0.19/25 0s} 48. Rd2 {+0.68/23 2:51m (Td1)} Bc4 {0.00/25 1:43m} 49. Bf1 {+0.71/23 17s (h4)} Bb3 {0.00/24 1:59m (Sg5)} 50. Bb5 {+0.37/23 2:08m} Ke7 {0.00/27 0s} 51. h4 {+0.09/22 5:10m} Bg7 {0.00/27 0s (Kd6)} 52. Ke2 {0.00/21 4:16m (g5)} f6 {0.00/23 3:24m (Kd6)} 53. Ke1 {0.00/23 3:37m (Ke3)} Bh6 {-0.08/22 2:23m} 54. Re2 {0.00/23 0s (Th2)} Bf4 {-0.08/25 1:56m (Kd6)} 55. Kf2 {+0.23/21 2:23m} Kd6 {0.00/25 0s} 56. Re1 {+0.19/20 29s} Bc2 {0.00/25 1:09m} 57. Ba6 {+0.21/22 1:19m} Be4 {0.00/25 47s} 58. Bc8 {+0.26/21 44s} Nd8 {0.00/25 49s} 59. Rd1 {+0.21/21 1:26m} Nc6 {0.00/24 36s (Lh6)} 60. Bb7 {+0.12/21 1:41m} Bc2 {0.00/26 0s (Sd8)} 61. Ra1 {+0.15/22 2:43m} Nd8 {0.00/28 0s} 62. Ba6 {0.00/21 2:15m (Lc8)} Be4 {0.00/21 1:39m} 63. Re1 {0.00/21 1:01m (Td1)} Bh6 {-0.06/21 1:34m} 64. Rd1 {0.00/20 1:30m} f5 {-0.17/22 1:09m} 65. gxf5 {0.00/20 0s} gxf5 {-0.08/23 1:44m} 66. Ne5 {+0.03/21 16s (Sg5)} Bg7 {-0.55/20 1:37m} 67. Bb5 {0.00/22 42s (Sf3)} Bf6 {-0.47/19 2:04m} 68. h5 {0.00/23 0s} Ne6 {-0.50/19 1:53m (f4)} 69. Nc6 {-0.62/22 4:08m} b3 {-0.64/20 0s (Lc2)} 70. Nxa5 {0.00/21 1:30m} Bc2 {-0.61/20 11s (Sxd4)} 71. Rd2 {-0.46/22 3:39m} Bg5 {-1.07/21 30s} 72. Re2 {-1.00/23 3:13m} Nxd4 {-0.99/23 0s} 73. Re8 {-1.08/21 2:33m} Kc7 {-0.93/23 2:03m} 74. Bf1 {-0.95/21 0s} Bc1 {-0.93/23 1:00m} 75. Re7+ {-0.98/20 28s} Kb6 {-0.93/23 29s} 76. Nb7 {-1.76/20 2:10m (Sxb3)} Nc6 {-2.20/21 1:28m} 77. a5+ {-2.35/21 3:33m} Nxa5 {-2.45/25 0s} 78. Nxa5 {-2.36/19 1:56m} Kxa5 {-2.44/25 31s} 79. Bg2 {-2.03/18 43s} Bxb2 {-2.40/25 11s} 80. Bxd5 {-1.78/21 55s} Bd4+ {-2.40/25 2s} 81. Ke2 {-1.60/22 1:08m} b2 {-2.36/27 7s} 82. Ba2 {-1.56/20 9s} Kb4 {-2.36/26 45s} 83. Re8 {-1.37/22 1:35m (Kd2)} Bb6 {-1.90/23 2:35m} 84. Rb8 {-1.31/24 0s} Ka5 {-1.90/25 49s (Kb5)} 85. Re8 {-1.16/21 1:21m (Ta8+)} Ka4 {-1.90/21 2:10m (b1D)} 86. Rb8 {-1.28/22 1:34m} Kb5 {-1.90/27 0s} 87. Re8 {-1.44/21 1:24m} Kc6 {-1.90/25 0s} 88. Kf3 {-1.34/21 49s (Te6+)} Bd1+ {-2.30/18 1:42m (b1D)} 89. Kf4 {-1.19/18 13s} Bxh5 {-2.28/21 1:42m} 90. Re6+ {-1.07/21 0s} Kc5 {-2.18/23 59s} 91. Re3 {-1.07/21 0s (Kxf5)} Bf7 {-2.10/21 4:58m (La5)} 92. Bb1 {-1.01/19 53s} Bc7+ {-1.88/19 23s} 93. Kg5 {-1.01/19 0s} Bd8+ {-1.88/21 32s} 94. Kf4 {-1.00/20 1:21m} Kb4 {-1.80/22 14s} 95. Ke5 {-0.91/20 40s} f4 {-1.80/23 8s (Lg5)} 96. Kxf4 {-0.84/20 1:21m} h6 {-1.52/22 1:13m} 97. Rd3 {-0.73/21 1s (Th3)} Ba5 {-1.19/21 2:05m (Lg5+)} 98. Kf5 {-0.63/19 55s (Th3)} Kc4 {-0.92/22 46s} 99. Rd6 {-0.50/20 4s (Th3)} h5 {-0.37/17 25s} 100. Rc6+ {-0.44/21 1:15m (Td7)} Kb3 {-1.21/17 28s (Kd4)} 101. Rh6 {-0.28/22 53s (Ke4)} Ka3 {0.00/20 49s (Lb4)} 102. Rh7 {-0.04/21 46s (Ta6)} Ba2 {0.00/26 26s (Le8)} 103. Bxa2 {0.00/26 35s} Kxa2 {0.00/32 0s} 104. Rb7 {0.00/26 35s} h4 {0.00/37 0s (Ld8)} 105. Kg4 {0.00/24 25s} 1/2-1/2 |
AW: Raspberry Pi als Schachengine einbinden
...und in den nächsten Tagen wiederhole ich das Ganze auf dem Cubietruck.
|
| Alle Zeitangaben in WEZ +1. Es ist jetzt 08:28 Uhr. |
Powered by vBulletin (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
©Schachcomputer.info