Discussion of anything and everything relating to chess playing software and machines.
Moderators: hgm , Rebel , chrisw
Evert
Posts: 2929 Joined: Sat Jan 22, 2011 12:42 am
Location: NL
Post
by Evert » Fri Nov 10, 2017 7:43 am
Xann wrote: The code looks all different because I started from my draughts program, but it's actually still Senpai inside. I prefer having a consistent codebase for multiple games (also Shogi and Othello).
Good man.
I have a (private) version of Senpai 1.0 that plays Makruk; as I recall the changes were not too hard to make, so hopefully I can port those over easily.
Xann
Posts: 127 Joined: Sat Jan 22, 2011 7:14 pm
Location: Lille, France
Post
by Xann » Fri Nov 10, 2017 7:53 am
Evert wrote: I have a (private) version of Senpai 1.0 that plays Makruk; as I recall the changes were not too hard to make, so hopefully I can port those over easily.
More painful, I guess, but doable. However reusing eval parts would be more difficult with this version, maybe much more. The weights are probably very specific.
And (say) with your own eval, switching to version 2.0 doesn't make much sense.
Guenther
Posts: 4606 Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon
Post
by Guenther » Fri Nov 10, 2017 8:29 am
Xann wrote: Hi all,
After a few years in computer draughts, I am back to chess for a little while. I see too many draws at top level, and am afraid that it will be too late in a couple of years. Big hardware and large opening books are also not helping IMO.
So I'm here to announce Senpai 2.0.
...
Fabien.
Thanks a lot Fabien and all who helped with this release!
Guenther
Evert
Posts: 2929 Joined: Sat Jan 22, 2011 12:42 am
Location: NL
Post
by Evert » Fri Nov 10, 2017 10:17 am
Xann wrote: Evert wrote: I have a (private) version of Senpai 1.0 that plays Makruk; as I recall the changes were not too hard to make, so hopefully I can port those over easily.
More painful, I guess, but doable. However reusing eval parts would be more difficult with this version, maybe much more. The weights are probably very specific.
And (say) with your own eval, switching to version 2.0 doesn't make much sense.
Oh, I didn't tune the evaluation (apart from a few very specific things), I made it mainly to have a larger variety of opponents (and as a proof-of-concept that just modifying the move generator of a reasonably strong engine to play a different variant doesn't automatically give you a very strong engine without redoing the evaluation).
From what I remember, most of the work was converting from UCI to CECP (there is some de-facto standard for handling variants with UCI now, but there was nothing back then), which was pretty straightforward.
Michel
Posts: 2272 Joined: Mon Sep 29, 2008 1:50 am
Post
by Michel » Fri Nov 10, 2017 10:34 am
Thanks!
Ideas=science. Simplification=engineering.
Without ideas there is nothing to simplify.
Lion
Posts: 531 Joined: Fri Mar 31, 2006 1:26 pm
Location: Switzerland
Post
by Lion » Fri Nov 10, 2017 10:39 am
Welcome back!
Volker Pittlik
Posts: 619 Joined: Wed Mar 08, 2006 9:10 pm
Location: Murten / Morat, Switzerland
Full name: Volker Pittlik
Post
by Volker Pittlik » Fri Nov 10, 2017 1:43 pm
One of the longest non-draw games ever seen on my computers:
[pgn]
[Event "?"]
[Site "?"]
[Date "2017.11.10"]
[Round "2"]
[White "Senpai 2.0"]
[Black "Texel 1.07"]
[Result "1-0"]
[ECO "B10"]
[Opening "Caro-Kann defense"]
[PlyCount "562"]
[Termination "adjudication"]
[TimeControl "40/180"]
1. e4 {book} 1. ... c6 {book} 2. Nc3 {book} 2. ... d5 {book} 3. d3 {book}
3. ... e5 {book} 4. Nf3 {+0.24/18 2.3s} 4. ... Nf6 {+0.36/17 5.1s} 5. exd5
{+0.02/19 2.0s} 5. ... cxd5 {+0.49/18 5.0s} 6. d4 {-0.26/19 5.9s} 6. ...
e4 {+0.49/18 4.8s} 7. Ne5 {-0.39/18 4.4s} 7. ... a6 {+0.52/18 4.9s} 8. Be2
{-0.47/19 6.0s} 8. ... Bd6 {+0.51/17 4.2s} 9. Bg5 {-0.38/20 2.2s} 9. ...
Be6 {+0.57/17 4.2s} 10. f4 {-0.17/18 3.2s} 10. ... Nc6 {+0.51/16 4.9s} 11.
O-O {-0.22/17 1.6s} 11. ... Qb6 {+0.65/16 4.7s} 12. Nxc6 {-0.37/15 1.8s}
12. ... Qxc6 {+0.76/18 4.9s} 13. Bxf6 {-0.46/18 2.8s} 13. ... gxf6 {
+1.01/19 4.9s} 14. a3 {-0.46/20 5.6s} 14. ... f5 {+1.22/20 6.5s} 15. Qd2 {
-0.35/20 2.5s} 15. ... h5 {+1.11/19 5.9s} 16. h4 {-0.46/19 3.2s} 16. ...
Rc8 {+1.10/17 4.8s} 17. g3 {-0.39/19 2.2s} 17. ... Be7 {+1.05/19 4.8s} 18.
Qe3 {-0.39/20 2.6s} 18. ... Kf8 {+1.77/17 5.9s} 19. Rad1 {-0.41/19 3.6s}
19. ... Kg7 {+1.56/18 5.8s} 20. Ra1 {-0.41/21 2.4s} 20. ... Rh6 {+1.71/18
4.0s} 21. Rfd1 {-0.39/21 3.6s} 21. ... Bf6 {+1.56/17 5.8s} 22. Rd2 {
-0.32/18 2.6s} 22. ... Rch8 {+1.49/20 4.8s} 23. Kh2 {-0.20/18 6.2s}
23. ... Rg6 {+1.53/20 4.6s} 24. Re1 {-0.26/20 9.3s} 24. ... Kh6 {+1.49/18
4.2s} 25. Rdd1 {-0.25/20 4.3s} 25. ... Kg7 {+1.49/19 11s} 26. Rd2 {0.00/32
3.0s} 26. ... Bd8 {+1.49/19 4.5s} 27. Nd1 {-0.19/19 4.2s} 27. ... Kf8 {
+1.20/17 3.8s} 28. Bf1 {+0.10/21 8.9s} 28. ... Ke8 {+0.75/17 4.3s} 29. c3
{+0.11/21 2.6s} 29. ... Rhg8 {+1.04/18 5.1s} 30. Rg2 {0.00/24 3.5s}
30. ... Bf6 {+0.97/18 4.8s} 31. Kh3 {+0.19/20 4.3s} 31. ... Kd8 {+0.94/19
6.9s} 32. Be2 {+0.19/22 5.4s} 32. ... Rh8 {+0.89/18 3.7s} 33. Qd2 {
+0.17/23 3.3s} 33. ... Kc7 {+0.79/18 4.0s} 34. Ne3 {+0.09/25 4.5s} 34. ...
Kb8 {+0.66/17 3.8s} 35. Bd1 {+0.09/25 7.8s} 35. ... Qc7 {+0.87/18 7.1s}
36. Bb3 {+0.12/24 4.8s} 36. ... Qd6 {+0.83/18 3.1s} 37. Qe2 {+0.12/25 6.9s
} 37. ... Rhg8 {+0.83/18 3.1s} 38. Ba2 {+0.12/24 5.5s} 38. ... Qd8 {
+0.82/18 3.1s} 39. Qd1 {+0.12/26 8.6s} 39. ... Ka7 {+0.81/18 3.1s} 40. Qd2
{+0.12/26 8.5s} 40. ... Qb8 {+0.81/18 3.1s} 41. Rf1 {+0.12/23 3.8s}
41. ... Qd8 {+0.78/19 5.4s} 42. Bb3 {+0.12/24 3.5s} 42. ... Kb8 {+0.79/19
4.9s} 43. Qe2 {+0.12/25 5.5s} 43. ... Be7 {+0.78/19 4.9s} 44. Rb1 {
+0.12/24 2.5s} 44. ... Qe8 {+0.77/18 4.7s} 45. Re1 {+0.12/23 3.7s} 45. ...
Qd8 {+0.74/18 4.0s} 46. Rf1 {+0.12/24 3.1s} 46. ... Ka7 {+0.74/19 4.6s}
47. Rd1 {+0.12/24 3.8s} 47. ... Qd6 {+0.74/18 5.1s} 48. Rdg1 {+0.12/22
2.7s} 48. ... Rh8 {+0.74/17 4.4s} 49. Rf1 {+0.12/22 4.3s} 49. ... Rgg8 {
+0.79/17 5.4s} 50. Kh2 {+0.12/24 2.7s} 50. ... Bf6 {+0.72/18 4.4s} 51.
Rgg1 {+0.12/22 2.4s} 51. ... Qc6 {+0.70/16 4.9s} 52. Ra1 {+0.12/20 3.2s}
52. ... Rd8 {+0.71/17 4.4s} 53. Rge1 {+0.12/19 4.7s} 53. ... Qc7 {+0.73/17
4.9s} 54. Rf1 {+0.12/20 2.6s} 54. ... Rh6 {+0.73/17 3.9s} 55. Rf2 {
+0.12/21 2.5s} 55. ... Rg6 {+0.72/18 4.7s} 56. Rg1 {+0.12/23 2.7s} 56. ...
Rdg8 {+0.72/18 4.5s} 57. Kh3 {+0.12/21 2.2s} 57. ... Qd7 {+0.72/17 4.4s}
58. Rfg2 {+0.12/23 2.5s} 58. ... Be7 {+0.69/18 4.4s} 59. Kh2 {+0.12/23
3.3s} 59. ... Qd8 {+0.68/18 4.4s} 60. Qe1 {+0.12/24 2.4s} 60. ... Bf6 {
+0.68/18 7.1s} 61. Kh3 {+0.12/23 2.9s} 61. ... Qd6 {+0.71/17 4.2s} 62. Qe2
{+0.12/23 3.3s} 62. ... Bd8 {+0.69/18 4.5s} 63. Rf1 {+0.12/22 3.3s}
63. ... Bc7 {+0.68/19 4.2s} 64. Qxh5 {+0.67/20 4.4s} 64. ... Qd7 {+0.45/18
4.2s} 65. Qe2 {+0.75/21 7.7s} 65. ... Rh8 {+0.36/19 4.3s} 66. Kh2 {
+0.69/19 6.2s} 66. ... Bd8 {+0.32/18 10s} 67. Kh1 {+0.69/20 5.9s} 67. ...
Be7 {+0.32/17 5.9s} 68. Bd1 {+0.74/21 7.8s} 68. ... Rgg8 {+0.30/17 3.8s}
69. Rfg1 {+0.76/18 5.9s} 69. ... Rc8 {+0.36/17 3.6s} 70. h5 {+0.88/21 2.9s
} 70. ... Bf8 {+0.09/17 3.6s} 71. Rh2 {+0.90/23 4.0s} 71. ... Bh6 {
+0.11/19 5.1s} 72. Qg2 {+0.90/26 4.7s} 72. ... Qb5 {+0.16/16 4.4s} 73. Re1
{+0.90/22 3.7s} 73. ... Rcg8 {+0.13/17 4.1s} 74. Qh3 {+0.90/25 4.3s}
74. ... Rh7 {+0.40/17 3.2s} 75. Rd2 {+0.90/22 5.8s} 75. ... Qd7 {+0.38/18
3.2s} 76. Ree2 {+0.90/25 11s} 76. ... Bg7 {+0.44/17 3.8s} 77. Rf2 {
+0.89/22 11s} 77. ... Qc8 {+0.52/17 3.0s} 78. Rf1 {+0.89/26 6.2s} 78. ...
Bf6 {+0.42/17 4.4s} 79. Re1 {+0.89/27 8.3s} 79. ... Rhg7 {+0.43/17 2.5s}
80. Rg2 {+0.89/28 8.2s} 80. ... Qd7 {+0.41/17 2.6s} 81. Kg1 {+0.89/26 5.1s
} 81. ... Bd8 {+0.13/19 18s} 82. Kh2 {+0.89/24 2.8s} 82. ... Bc7 {+0.36/18
6.5s} 83. Kh1 {+0.89/21 2.7s} 83. ... f6 {+0.46/19 4.4s} 84. Qh4 {+0.94/20
2.6s} 84. ... Rh7 {+0.46/18 4.3s} 85. Kg1 {+0.92/22 7.7s} 85. ... Bd8 {
+0.46/19 4.2s} 86. Qh3 {+0.86/21 4.8s} 86. ... Rgh8 {+0.46/20 4.1s} 87.
Rh2 {+0.92/21 3.6s} 87. ... Be7 {+0.04/19 14s} 88. Kg2 {+0.92/21 2.4s}
88. ... Rg7 {+0.33/17 3.9s} 89. Kh1 {+0.92/23 2.8s} 89. ... Rhg8 {+0.26/16
3.8s} 90. Rg2 {+0.92/23 2.5s} 90. ... Bf8 {+0.25/17 3.9s} 91. Kg1 {
+0.92/20 3.0s} 91. ... Rh8 {0.00/17 3.9s} 92. Be2 {+0.92/23 4.1s} 92. ...
Rg6 {0.00/17 3.8s} 93. Qh4 {+0.92/22 2.5s} 93. ... Rgh6 {+0.38/18 9.0s}
94. Rf2 {+0.92/23 3.0s} 94. ... Bf7 {+0.46/17 3.6s} 95. Rh2 {+0.92/23 2.7s
} 95. ... Qe6 {+0.33/17 3.6s} 96. Rd1 {+0.92/21 2.6s} 96. ... Bg6 {
+0.16/15 3.4s} 97. Qh3 {+1.15/16 2.4s} 97. ... a5 {0.00/16 3.7s} 98. Rc1 {
+1.31/17 8.1s} 98. ... Be7 {-0.17/14 4.3s} 99. Rf1 {+1.28/17 6.9s} 99. ...
a4 {+0.19/15 3.1s} 100. Re1 {+1.15/18 8.2s} 100. ... Rg8 {0.00/16 3.6s}
101. Kf2 {+1.36/19 9.3s} 101. ... Rgh8 {-0.40/17 7.3s} 102. Reh1 {+1.59/18
3.0s} 102. ... Bf8 {-0.67/17 3.3s} 103. hxg6 {+2.61/22 2.3s} 103. ... Rxh3
{-1.52/21 6.2s} 104. Rxh3 {+2.52/24 2.8s} 104. ... Rxh3 {-1.36/22 3.2s}
105. Rxh3 {+2.66/25 3.9s} 105. ... Qg8 {-1.39/21 3.9s} 106. Rh5 {+2.57/25
3.6s} 106. ... Qxg6 {-1.19/22 3.2s} 107. Rxf5 {+2.33/25 3.9s} 107. ... Bd6
{-1.22/21 2.8s} 108. Rxd5 {+2.33/21 0.86s} 108. ... Bc7 {-0.91/19 3.1s}
109. Rh5 {+2.33/25 3.7s} 109. ... Kb8 {-1.05/19 2.9s} 110. Nd5 {+2.27/25
6.3s} 110. ... Bd6 {-1.07/20 3.2s} 111. Bd1 {+2.23/26 4.6s} 111. ... Ka7 {
-0.97/19 3.2s} 112. Ne3 {+2.18/24 5.1s} 112. ... Qe8 {-1.08/19 5.4s} 113.
Be2 {+2.43/25 11s} 113. ... Qf7 {-1.19/20 2.9s} 114. Ra5+ {+2.27/23 5.3s}
114. ... Kb8 {-1.21/20 4.7s} 115. Rf5 {+2.40/25 6.5s} 115. ... Qb3 {
-1.29/20 6.4s} 116. Rb5 {+2.42/25 5.3s} 116. ... Qg8 {-0.93/19 2.3s} 117.
Bc4 {+2.24/27 21s} 117. ... Qh7 {-0.83/18 1.5s} 118. Kg2 {+2.24/27 3.1s}
118. ... Bc7 {-0.83/19 1.6s} 119. Rf5 {+2.09/26 5.8s} 119. ... Ka7 {
-0.75/20 1.9s} 120. Be2 {+1.98/25 8.0s} 120. ... Qg6 {-0.85/20 1.9s} 121.
Bd1 {+1.99/25 13s} 121. ... Qf7 {-0.75/19 6.1s} 122. Rd5 {+1.81/27 17s}
122. ... Qg8 {-0.46/20 5.0s} 123. Kf2 {+1.98/28 6.7s} 123. ... Kb8 {
-0.87/21 11s} 124. Rb5 {+1.72/27 28s} 124. ... Qh7 {-0.71/21 5.5s} 125.
Kg2 {+1.78/26 3.7s} 125. ... Qg7 {-0.72/21 4.3s} 126. Nd5 {+1.78/23 3.3s}
126. ... Qf7 {-0.67/19 6.8s} 127. Be2 {+1.88/23 4.9s} 127. ... Qg6 {
0.00/20 4.0s} 128. Nxc7 {+1.17/22 6.9s} 128. ... Kxc7 {-0.11/19 4.1s} 129.
Ra5 {+1.03/24 6.9s} 129. ... e3 {0.00/21 4.1s} 130. Rc5+ {+0.49/29 45s}
130. ... Kd6 {0.00/22 4.1s} 131. f5 {+0.71/23 2.1s} 131. ... Qh7 {0.00/23
4.1s} 132. Bf3 {+1.40/23 2.1s} 132. ... Qf7 {+0.53/20 3.8s} 133. c4 {
0.00/22 3.2s} 133. ... Qe8 {+0.41/20 3.7s} 134. Kf1 {0.00/24 1.9s}
134. ... e2+ {+0.45/19 4.3s} 135. Bxe2 {0.00/24 1.3s} 135. ... Qe3 {
+0.32/20 3.9s} 136. Rb5 {0.00/26 2.0s} 136. ... Qxg3 {+0.32/19 4.2s} 137.
Rxb7 {0.00/26 1.9s} 137. ... Qf4+ {+0.31/19 4.0s} 138. Ke1 {0.00/27 1.3s}
138. ... Qxd4 {+0.31/20 4.2s} 139. Rb5 {0.00/28 1.4s} 139. ... Ke7 {
+0.20/18 4.2s} 140. Rb8 {0.00/23 1.1s} 140. ... Qg1+ {+0.52/19 4.2s} 141.
Kd2 {0.00/23 0.93s} 141. ... Qg5+ {+0.52/19 4.3s} 142. Kc2 {0.00/24 1.1s}
142. ... Qxf5+ {+0.54/20 4.2s} 143. Bd3 {0.00/27 1.1s} 143. ... Qf2+ {
+0.54/20 5.1s} 144. Kc3 {0.00/26 0.82s} 144. ... Qg1 {+0.54/20 4.1s} 145.
Rb5 {0.00/25 1.1s} 145. ... Qc1+ {+0.42/20 6.2s} 146. Kd4 {0.00/27 1.5s}
146. ... Qd1 {+0.42/17 7.6s} 147. c5 {0.00/22 1.1s} 147. ... f5 {+0.64/16
3.8s} 148. Rb4 {0.00/19 0.85s} 148. ... f4 {+1.18/15 3.3s} 149. Rb7+ {
-0.27/19 2.6s} 149. ... Ke6 {+1.53/16 3.8s} 150. Rb6+ {-0.55/17 0.93s}
150. ... Kd7 {+1.59/16 3.8s} 151. Ke4 {-0.90/18 5.4s} 151. ... Qc1 {
+1.73/15 3.8s} 152. Bb5+ {-0.53/16 0.79s} 152. ... Ke7 {+1.82/15 3.3s}
153. Rb7+ {-0.67/18 0.76s} 153. ... Kf6 {+1.84/17 3.8s} 154. Rb6+ {
-0.55/16 1.3s} 154. ... Kg5 {+1.85/17 6.2s} 155. Ba6 {-0.94/19 2.3s}
155. ... Qh1+ {+1.85/16 6.1s} 156. Ke5 {-0.80/18 1.3s} 156. ... f3 {
+1.94/17 4.3s} 157. Kd6 {-1.39/18 1.9s} 157. ... f2 {+1.85/16 2.5s} 158.
Kc7 {-1.39/19 0.66s} 158. ... Qa8 {+1.38/14 2.6s} 159. Bf1 {-0.78/17 0.56s
} 159. ... Qa7+ {+1.50/16 3.1s} 160. Kd6 {-0.65/19 0.77s} 160. ... Kf6 {
+1.34/16 2.0s} 161. Kd5+ {-0.98/24 19s} 161. ... Ke7 {+1.53/17 4.7s} 162.
Re6+ {-0.70/23 10s} 162. ... Kf7 {+1.53/18 5.0s} 163. Re2 {-0.74/24 7.4s}
163. ... Qd7+ {+1.53/19 5.2s} 164. Ke5 {-0.74/23 6.2s} 164. ... Qc7+ {
+1.53/18 4.5s} 165. Ke4 {-0.84/25 5.8s} 165. ... Qg3 {+1.54/18 4.8s} 166.
c6 {-0.62/22 12s} 166. ... Ke6 {+1.43/17 4.5s} 167. Rd2 {-0.62/23 4.1s}
167. ... Qg4+ {+1.40/18 4.5s} 168. Ke3 {-0.33/20 4.2s} 168. ... Qg5+ {
+1.40/18 4.5s} 169. Ke2 {-0.34/20 5.5s} 169. ... Qc5 {+1.25/18 14s} 170.
Kd1 {-0.14/22 5.2s} 170. ... Qh5+ {+1.31/18 4.4s} 171. Kc1 {0.00/25 3.9s}
171. ... Qa5 {+1.14/18 11s} 172. Bh3+ {0.00/26 3.3s} 172. ... Ke7 {
+1.02/18 3.9s} 173. Bf1 {-0.14/22 3.6s} 173. ... Ke8 {+0.97/18 3.7s} 174.
Kd1 {-0.23/23 4.3s} 174. ... Qh5+ {+1.15/19 3.9s} 175. Kc1 {-0.25/27 3.7s}
175. ... Qh2 {+1.12/18 3.9s} 176. Kd1 {-0.25/26 4.0s} 176. ... Qg1 {
+1.20/17 3.6s} 177. Ke2 {-0.24/25 3.8s} 177. ... Qg3 {+1.05/17 4.0s} 178.
Rd3 {-0.21/21 2.6s} 178. ... Qb8 {+1.05/17 4.0s} 179. Rd2 {-0.21/23 3.5s}
179. ... Qf4 {+1.00/17 3.5s} 180. Bg2 {-0.22/23 3.3s} 180. ... Ke7 {
+1.00/17 4.6s} 181. c7 {-0.18/22 2.5s} 181. ... Qxc7 {+1.01/17 3.9s} 182.
Kxf2 {-0.14/21 2.4s} 182. ... Qb6+ {+0.96/17 3.9s} 183. Ke2 {-0.15/22 2.5s
} 183. ... Kf6 {+0.83/16 3.8s} 184. Kd1 {0.00/25 2.0s} 184. ... Qb3+ {
+0.76/17 3.9s} 185. Kc1 {0.00/28 2.7s} 185. ... Qc4+ {+0.68/15 4.8s} 186.
Kb1 {+0.16/23 4.1s} 186. ... Qf4 {+0.63/17 3.8s} 187. Rc2 {+0.24/24 2.0s}
187. ... Ke5 {+0.26/15 3.7s} 188. Rc5+ {+0.09/25 4.1s} 188. ... Ke6 {
+0.26/17 3.8s} 189. Rc3 {+0.29/26 2.3s} 189. ... Qf5+ {+0.26/17 3.8s} 190.
Ka1 {+0.36/24 2.0s} 190. ... Kd6 {+0.26/16 4.1s} 191. Bf3 {+0.29/27 2.8s}
191. ... Qe5 {+0.15/18 3.8s} 192. Bd1 {+0.30/27 2.4s} 192. ... Qe1 {
+0.08/16 3.8s} 193. Rc1 {+0.29/30 2.9s} 193. ... Ke5 {+0.08/17 3.6s} 194.
Kb1 {+0.33/26 3.0s} 194. ... Qa5 {+0.08/18 3.8s} 195. Bc2 {+0.37/24 3.9s}
195. ... Kf4 {0.00/18 3.9s} 196. Rh1 {+0.57/22 3.1s} 196. ... Kf3 {0.00/18
3.8s} 197. Rd1 {+0.38/24 3.9s} 197. ... Qa7 {0.00/18 3.9s} 198. Ka1 {
+0.33/25 4.4s} 198. ... Qc7 {0.00/17 3.5s} 199. Bxa4 {+1.99/22 4.8s}
199. ... Qc4 {0.00/16 3.4s} 200. Be8 {+2.12/21 3.3s} 200. ... Ke2 {0.00/18
4.5s} 201. Bh5+ {+2.25/22 7.4s} 201. ... Ke3 {-0.28/18 5.1s} 202. Bg6 {
+2.35/25 8.7s} 202. ... Qe2 {-0.35/16 5.0s} 203. Rd8 {+2.35/19 6.5s}
203. ... Kf2 {-0.39/17 4.9s} 204. Rf8+ {+2.52/25 7.9s} 204. ... Kg3 {
-0.42/18 4.7s} 205. Rc8 {+2.35/22 12s} 205. ... Qe1+ {-0.48/16 4.4s} 206.
Bb1 {+2.47/24 7.0s} 206. ... Kf2 {-0.59/15 5.1s} 207. Rf8+ {+2.46/20 5.5s}
207. ... Kg2 {-0.60/17 4.2s} 208. Rd8 {+2.50/20 6.3s} 208. ... Qh4 {
-0.57/17 4.4s} 209. Rd2+ {+2.57/20 7.7s} 209. ... Kg3 {-0.71/16 5.9s} 210.
Rd3+ {+2.61/21 7.4s} 210. ... Kg2 {-0.66/17 8.4s} 211. Bc2 {+2.76/19 5.3s
} 211. ... Qc4 {-0.65/18 4.3s} 212. Rc3 {+2.86/19 4.1s} 212. ... Qd4 {
-0.76/17 4.4s} 213. Bb3 {+2.91/24 4.6s} 213. ... Kf1 {-0.82/18 4.3s} 214.
a4 {+2.91/24 4.8s} 214. ... Qb6 {-0.83/16 3.7s} 215. Rc1+ {+2.91/24 3.1s}
215. ... Kf2 {-0.83/17 4.3s} 216. Ka2 {+2.91/26 5.5s} 216. ... Qf6 {
-0.87/16 4.3s} 217. Rc5 {+2.91/23 5.8s} 217. ... Qd4 {-0.89/17 4.3s} 218.
Rf5+ {+2.94/24 3.7s} 218. ... Ke3 {-1.08/17 6.4s} 219. a5 {+2.95/25 4.8s}
219. ... Qd6 {-1.29/16 5.3s} 220. Rd5 {+3.14/21 5.8s} 220. ... Qc6 {
-0.91/18 4.1s} 221. Ka3 {+2.94/23 2.9s} 221. ... Qc8 {-1.08/16 9.1s} 222.
Ba4 {+3.35/21 3.0s} 222. ... Ke4 {-1.03/15 4.0s} 223. Rd1 {+3.47/21 2.3s}
223. ... Qh3+ {-1.00/16 3.6s} 224. Bb3 {+3.48/21 2.4s} 224. ... Qc8 {
-1.05/15 3.9s} 225. Bd5+ {+3.48/21 1.7s} 225. ... Kf4 {-1.16/14 3.5s} 226.
b4 {+3.51/21 1.8s} 226. ... Qc3+ {-1.17/16 3.4s} 227. Ka4 {+3.51/22 2.9s}
227. ... Qc2+ {-1.28/17 3.9s} 228. Bb3 {+3.51/23 1.5s} 228. ... Qc6+ {
-1.30/16 3.4s} 229. Ka3 {+3.51/25 2.7s} 229. ... Qc3 {-1.30/16 4.0s} 230.
Rf1+ {+3.34/22 7.6s} 230. ... Kg3 {-1.22/16 3.9s} 231. Rg1+ {+3.34/22 2.4s
} 231. ... Kf3 {-1.30/17 4.0s} 232. Rb1 {+3.41/24 2.0s} 232. ... Kg3 {
-1.63/17 14s} 233. Rf1 {+3.39/23 2.1s} 233. ... Kg4 {-1.26/16 5.0s} 234.
Rh1 {+3.34/24 3.8s} 234. ... Kg3 {-1.30/16 2.3s} 235. Rb1 {+3.34/24 2.2s}
235. ... Kf3 {-1.35/16 2.4s} 236. Rb2 {+3.34/22 3.7s} 236. ... Ke3 {
-1.39/16 2.4s} 237. Rc2 {+3.63/23 2.6s} 237. ... Qa1+ {-1.52/16 2.3s} 238.
Ba2 {+3.61/25 2.7s} 238. ... Qf6 {-1.39/15 2.5s} 239. Rc4 {+3.67/24 3.6s}
239. ... Qe5 {-1.52/15 2.4s} 240. Rc1 {+3.87/23 3.1s} 240. ... Kd2 {
-1.52/15 2.4s} 241. Rc6 {+3.71/24 7.0s} 241. ... Qb5 {-1.76/15 6.0s} 242.
Rc4 {+3.56/24 9.0s} 242. ... Ke3 {-1.77/16 5.0s} 243. Bb3 {+3.90/24 5.7s}
243. ... Qe5 {-1.73/16 4.8s} 244. Bc2 {+3.90/22 6.1s} 244. ... Qf6 {
-1.78/15 16s} 245. Kb3 {+4.02/23 10s} 245. ... Kf2 {-1.71/15 7.3s} 246.
Be4 {+3.76/24 19s} 246. ... Qa1 {-1.54/15 4.0s} 247. Bf5 {+3.76/23 9.4s}
247. ... Qh1 {-1.39/14 4.0s} 248. Bc2 {+3.76/21 4.1s} 248. ... Qe1 {
-1.56/15 4.0s} 249. Rc5 {+3.91/22 6.1s} 249. ... Qe7 {-1.38/15 5.3s} 250.
Bd3 {+3.88/20 4.2s} 250. ... Qe6+ {-1.85/15 4.0s} 251. Ka3 {+4.70/20 5.8s}
251. ... Qd6 {-1.87/15 4.0s} 252. Bc4 {+4.94/20 3.5s} 252. ... Qd1 {
-2.07/15 4.0s} 253. a6 {+4.92/20 3.6s} 253. ... Ke3 {-2.14/15 4.0s} 254.
Re5+ {+4.81/20 3.2s} 254. ... Kf4 {-2.11/17 4.0s} 255. Rd5 {+4.81/22 4.6s}
255. ... Qc2 {-2.11/16 4.0s} 256. Bb3 {+4.82/21 3.4s} 256. ... Qc1+ {
-1.99/16 3.5s} 257. Ka4 {+4.84/21 3.0s} 257. ... Qa1+ {-2.15/16 7.0s} 258.
Kb5 {+4.86/22 3.7s} 258. ... Qg7 {-2.29/15 4.6s} 259. Rc5 {+4.89/22 3.9s}
259. ... Qd7+ {-2.27/16 3.8s} 260. Rc6 {+4.85/23 3.0s} 260. ... Ke3 {
-2.15/16 3.8s} 261. Be6 {+4.89/23 3.9s} 261. ... Qe7 {-2.19/15 4.3s} 262.
Ka4 {+4.87/21 3.0s} 262. ... Qf6 {-2.35/13 3.8s} 263. Bd5 {+4.82/21 2.9s}
263. ... Qd8 {-2.20/16 3.8s} 264. Rc5 {+4.88/21 2.2s} 264. ... Qd7+ {
-2.11/17 3.8s} 265. Bc6 {+5.01/22 3.0s} 265. ... Qd3 {-2.13/14 3.4s} 266.
Ka5 {+4.98/22 1.9s} 266. ... Qd8+ {-2.28/17 3.8s} 267. Kb5 {+5.06/24 2.6s}
267. ... Qb8+ {-2.43/17 13s} 268. Bb7 {+4.91/22 3.0s} 268. ... Qe8+ {
-2.47/14 4.5s} 269. Kc4 {+5.52/16 2.3s} 269. ... Qa4 {-2.32/14 3.0s} 270.
Rd5 {+5.93/17 2.1s} 270. ... Kf4 {-2.25/14 3.0s} 271. Kc5 {+6.10/17 2.1s}
271. ... Qc2+ {-2.53/14 3.2s} 272. Kd6 {+6.10/21 3.0s} 272. ... Qf2 {
-2.89/12 3.9s} 273. b5 {+6.05/20 2.8s} 273. ... Kg3 {-3.04/13 5.9s} 274.
Ke6 {+6.25/20 3.4s} 274. ... Kg4 {-3.33/13 5.3s} 275. Bc6 {+7.48/18 7.3s}
275. ... Qa7 {-3.58/14 1.9s} 276. Rd8 {+7.50/18 3.9s} 276. ... Kf4 {
-3.41/11 1.8s} 277. Kd6 {+10.99/14 2.6s} 277. ... Qg7 {-8.86/11 1.9s} 278.
b6 {+15.43/13 3.0s} 278. ... Kf5 {-13.82/11 4.0s} 279. a7 {+20.92/11 3.9s
} 279. ... Kf6 {-15.01/10 2.0s} 280. a8=Q {+21.83/14 3.7s} 280. ... Qg3+ {
-15.72/8 0.099s} 281. Kd7 {+M27/13 9.1s} 281. ... Qg7+ {-M36/11 5.1s,
White wins by adjudication} 1-0
[/pgn]
Volker
P.S. I had problems to post this games with my original "Site" and "Event" tags. After replacing them with "?" it works fine.
lucasart
Posts: 3232 Joined: Mon May 31, 2010 1:29 pm
Full name: lucasart
Post
by lucasart » Fri Nov 10, 2017 2:02 pm
Xann wrote: Hi all,
After a few years in computer draughts, I am back to chess for a little while. I see too many draws at top level, and am afraid that it will be too late in a couple of years. Big hardware and large opening books are also not helping IMO.
So I'm here to announce Senpai 2.0. The code looks all different because I started from my draughts program, but it's actually still Senpai inside. I prefer having a consistent codebase for multiple games (also Shogi and Othello).
As a rewrite it's hard to list changes, but here is an attempt:
- Chess960 is baked in, not an add-on; Senpai 2 plays chess only as a special case!
- search: restricted singular extensions
- search: additional reduction/pruning of "losing" moves (SEE < 0)
- eval: tempo bonus (it seems I forgot in 1.0 ...)
- eval: "space" (glorified pawn-chain PST); this changes playing style a lot
- eval: scoring by logistic regression; this gives me more freedom for eval features
- board: copy/make (customary in games with fewer piece types than chess)
- board: optional PEXT bitboards (BMI2)
As I recall, no single change brought more than 10 Elo. So it's more a sum of small (IMO) things.
This release has been rushed a little, so it's still lacking UCI options and multi-PV; sorry about that.
Official website:
http://www.amateurschach.de/main/_senpai.htm
Direct link:
http://www.amateurschach.de/download/senpai_20.zip
Expected level: Texel/Protector (again)
Thanks to everybody who helped with this release:
- Graham Banks
- Michael Byrne
- Wilhelm Hudetz
- Daniel Jose
- Steve Maughan (
https://www.chessprogramming.net )
- Frank Quisinsky (
http://www.amateurschach.de )
- XXX (<- this line for people I forgot, sorry in advance).
That's all for now,
Fabien.
Nice work.
I haven't really looked at the code, just tried to compile it.
What I can say regarding compilation is:
* indeed gcc is significantly slower than clang, which is very unusual (normally it's the other way around). I discovered a gcc bug recently, perhaps it's the same. Try using 'static const' instead of 'const' where you have compile time constant (eg. eval weights or material values in SEE, anything on the 'hot path' of the program). Perhaps that will fix the gcc perf issue.
* Use O3 instead of O2 in the Makefile. It's measurably faster (with clang or gcc).
Theory and practice sometimes clash. And when that happens, theory loses. Every single time.
Guenther
Posts: 4606 Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon
Post
by Guenther » Fri Nov 10, 2017 2:08 pm
Guenther wrote: Xann wrote: Hi all,
After a few years in computer draughts, I am back to chess for a little while. I see too many draws at top level, and am afraid that it will be too late in a couple of years. Big hardware and large opening books are also not helping IMO.
So I'm here to announce Senpai 2.0.
...
Fabien.
Thanks a lot Fabien and all who helped with this release!
Guenther
Oops, now I realized I cannot even use it :(
Any chance for a non popcount build for older 64 bit hardware?
Xann
Posts: 127 Joined: Sat Jan 22, 2011 7:14 pm
Location: Lille, France
Post
by Xann » Fri Nov 10, 2017 2:44 pm
Guenther wrote: Oops, now I realized I cannot even use it
Any chance for a non popcount build for older 64 bit hardware?
Yes, when someone builds one.