Senpai 2.0
Moderators: hgm, Harvey Williamson, bob
Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
Senpai 2.0
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.
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.
-
Dann Corbit
- Posts: 8662
- Joined: Wed Mar 08, 2006 7:57 pm
- Location: Redmond, WA USA
- Contact:
Re: Senpai 2.0
Fabulous news.
Perhaps it will be world champion soon
Perhaps it will be world champion soon
Taking ideas is not a vice, it is a virtue. We have another word for this. It is called learning.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.
But sharing ideas is an even greater virtue. We have another word for this. It is called teaching.
-
BrendanJNorman
- Posts: 964
- Joined: Sun Feb 07, 2016 11:43 pm
Re: Senpai 2.0
Great news from a computer chess legend.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.
Will test Senpai A.S.A.P.
*Hoping the playing style is lovely!*
-
Frank Quisinsky
- Posts: 4819
- Joined: Wed Nov 18, 2009 6:16 pm
- Location: Trier, Germany
- Contact:
Re: Senpai 2.0
Hi Brendan,
and on other legend made the graphics (Wilhelm Hudetz, Austria).
Both, Fabien & John on one site ...
A good day for computer chess in my humble opinion!
Of course, not important that it's the own site!
After a longer time slower downloads on www.amateurschach.de it's solved since yesterday. My provider found & fixed a defect patch cable.
Downloads now with full speed ...
Best
Frank
I had here again a lot of fun with Fabien ...
Fabien is really a very interesting person.
I wish me to have 0.1% from his programming knowledge only and I am an expert. But unfortunately ... maybe 0.001% ...
and on other legend made the graphics (Wilhelm Hudetz, Austria).
Both, Fabien & John on one site ...
A good day for computer chess in my humble opinion!
Of course, not important that it's the own site!
After a longer time slower downloads on www.amateurschach.de it's solved since yesterday. My provider found & fixed a defect patch cable.
Downloads now with full speed ...
Best
Frank
I had here again a lot of fun with Fabien ...
Fabien is really a very interesting person.
I wish me to have 0.1% from his programming knowledge only and I am an expert. But unfortunately ... maybe 0.001% ...
Last edited by Frank Quisinsky on Fri Nov 10, 2017 6:46 am, edited 3 times in total.
I like computer chess!
Re: Senpai 2.0
Good job Frank, you do nice work! 👊Frank Quisinsky wrote:Hi Brendan,
and on other legend made the graphics (Wilhelm Hudetz, Austria).
Both, Fabien & John on one site ...
A good day for computer chess!
Of course, not important that it's the own site!
After a longer time slower downloads on www.amateurschach.de it's solved since yesterday. My provider found & fixed a defect patch cable.
Downloads now with full power ...
Best
Frank
Re: Senpai 2.0
Good man.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).
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.
Re: Senpai 2.0
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.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.
And (say) with your own eval, switching to version 2.0 doesn't make much sense.
Re: Senpai 2.0
Thanks a lot Fabien and all who helped with this release!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.
Guenther
Guenther Simon
http://rwbc-chess.de/
http://rwbc-chess.de/
Re: Senpai 2.0
Thank you Fabien, that's marvellous news.
Gauntlet in progress although I don't think I can reach this week's update.
Gauntlet in progress although I don't think I can reach this week's update.
Gabor Szots
CCRL testing group
CCRL testing group
Re: Senpai 2.0
First game, first surprise: instead of agreeing to a draw Senpai goes into a lost endgame.
[Event "40 Moves in 2 min"]
[Site "Senpai 2.0 64-bit - Nov 10, LUCIFER"]
[Date "2017.11.09"]
[Round "1.1"]
[White "Senpai 2.0 64-bit"]
[Black "Arasan 20.3 64-bit"]
[ECO "E20"]
[Result "0-1"]
1. d4 {book 0s} Nf6 {book 0s} 2. c4 {book 0s} e6 {book 0s}
3. g3 {book 0s} d5 {book 0s} 4. Nf3 {book 0s} Bb4+ {book
0s} 5. Nc3 {book 0s} O-O {book 0s} 6. Bg2 {book 0s} c6
{book 0s} 7. O-O {0.00/15 2s} Nbd7 {book 0s (dxc4)} 8. Qd3
{+0.23/16 2s} b6 {book 0s} 9. cxd5 {+0.13/17 3s} cxd5 {book
0s (exd5)} 10. Bf4 {+0.45/17 2s} Bxc3 {+0.51/21 3s}
11. Qxc3 {+0.73/17 3s} Ba6 {+0.62/22 3s (Ne4)} 12. Rfe1
{+0.44/18 1s} Qe7 {+0.57/23 3s} 13. Qc6 {+0.46/20 1s} Rfc8
{+0.69/25 3s} 14. Qa4 {+0.34/19 1s} Bb7 {+0.49/24 3s}
15. Rac1 {+0.33/20 3s} a5 {+0.46/23 3s} 16. Rxc8+ {+0.31/19
2s} Rxc8 {+0.71/24 3s} 17. Rc1 {+0.29/20 1s} Rxc1+
{+0.70/22 3s (Qd8)} 18. Bxc1 {+0.41/19 0s} h6 {+0.71/22 3s
(Qd8)} 19. h4 {+0.36/19 4s} Ne4 {+0.63/19 3s (Qd8)} 20. a3
{+0.51/20 7s} Ndf6 {+0.58/19 3s (Ba6)} 21. Ne5 {+0.48/22
4s} Nd6 {+0.61/21 3s (Qc7)} 22. Qc2 {+0.55/19 1s} Nf5
{+0.46/21 3s (Nfe4)} 23. e3 {+0.54/20 6s} Ne4 {+0.56/19 3s
(Nd7)} 24. Bxe4 {+0.37/20 5s} dxe4 {+0.18/22 3s} 25. Bd2
{+0.11/20 4s} f6 {+0.04/22 3s (Kh7)} 26. Ng6 {+0.46/18 1s}
Qd7 {+0.18/23 3s} 27. h5 {+0.20/20 5s} Nd6 {+0.18/24 3s}
28. Be1 {+0.21/22 3s} Bd5 {+0.18/24 3s} 29. Kg2 {+0.21/23
6s} a4 {+0.18/27 3s (Kf7)} 30. Bb4 {+0.40/20 2s} Nc4
{+0.18/29 3s} 31. Ne7+ {+0.40/22 3s} Kh7 {+0.18/30 3s
(Kf7)} 32. Qd1 {+0.41/23 2s} f5 {+0.18/29 3s} 33. Ng6
{+0.41/25 2s} Qe8 {0.00/29 3s} 34. Qc2 {+0.41/24 3s} Qb5
{+0.18/31 3s (Kg8)} 35. Kg1 {+0.32/24 12s} Qe8 {+0.18/33
3s} 36. Nf4 {+0.31/24 2s} Qd7 {0.00/30 3s (Kg8)} 37. Kh2
{+0.31/24 2s} Kg8 {+0.18/29 3s (Qd8)} 38. Kg2 {+0.32/24 1s}
Kh7 {+0.18/31 3s} 39. Kg1 {+0.31/23 3s} Kg8 {+0.18/28 3s
(Qe8)} 40. Kh2 {+0.25/22 4s} Kh7 {+0.18/30 3s (Qe8)}
41. Kg2 {+0.32/26 3s} Qc6 {0.00/31 3s (Qe8)} 42. Qc3
{+0.25/22 2s} Qd7 {+0.18/32 3s (Qb5)} 43. b3 {+0.32/24 2s}
axb3 {0.00/27 3s} 44. Qxb3 {+0.32/25 3s} Na5 {+0.18/28 3s
(Nd2)} 45. Qc3 {+0.32/26 4s} Nc4 {+0.18/31 3s} 46. Qc2
{+0.32/27 3s} Qb5 {+0.18/28 3s (Qe8)} 47. Kg1 {+0.32/25 2s}
Kg8 {0.00/28 3s (Qc6)} 48. Kh2 {+0.32/23 3s} Kh7 {0.00/30
3s (Qd7)} 49. Kg2 {+0.32/23 2s} Qc6 {+0.18/31 3s (Qe8)}
50. Qe2 {+0.14/24 8s} Qa4 {0.00/28 3s (e5)} 51. g4
{+0.32/21 2s} Qd7 {+0.22/23 3s (Qc6)} 52. Ng6 {+0.42/20 6s}
Qa4 {+0.18/28 3s (Qf7)} 53. Kh2 {+0.45/19 2s} Nxa3
{+0.18/26 3s (Qc6)} 54. Bxa3 {+0.57/21 2s} Qxa3 {+0.18/30
3s} 55. gxf5 {+0.20/22 2s} exf5 {+0.15/29 10s} 56. Qb5
{+0.16/24 7s} Qb3 {+0.18/28 2s} 57. Qd7 {0.00/24 2s} Bg8
{+0.25/28 2s} 58. Nf8+ {0.00/26 2s} Kh8 {+0.49/2 0s}
59. Qxf5 {0.00/26 2s} Qf7 {+0.18/30 2s} 60. Ng6+ {0.00/25
1s} Kh7 {+0.18/29 2s} 61. Nf8+ {0.00/28 2s} Kh8 {0.00/2 0s}
62. Ng6+ {0.00/30 1s} Kh7 {+0.18/31 3s} 63. Qf4 {0.00/26
1s} Qxf4+ {+0.14/27 2s (b5)} 64. Nxf4 {-0.56/23 7s} Bf7
{-0.27/28 2s (Bb3)} 65. Kg1 {-0.45/24 3s} Bc4 {-0.25/30 2s
(b5)} 66. d5 {-1.17/22 3s} Kg8 {-0.62/32 2s} 67. Ng6
{-1.07/24 2s} b5 {-0.53/32 2s} 68. d6 {-1.16/25 1s} Be6
{-0.79/32 2s} 69. Kf1 {-1.22/23 1s} Kf7 {-1.00/31 2s}
70. Ke1 {-1.50/23 2s} Bd7 {-1.18/30 2s} 71. Kd2 {-1.59/24
2s} Ke6 {-1.67/30 2s} 72. Kc3 {-2.44/21 4s} Be8 {-1.53/33
2s (Kxd6)} 73. d7 {-1.90/22 2s} Bxd7 {-2.18/27 2s (Kxd7)}
74. Nf8+ {-2.66/18 1s} Kd6 {-3.26/30 2s} 75. Ng6 {-3.83/22
6s} Be8 {-3.21/33 2s} 76. Nf4 {-4.45/19 3s} Ke5 {-3.28/30
2s} 77. Kd2 {-4.54/18 1s} Kf5 {-3.76/31 2s} 78. Ne2
{-4.62/17 0s} Kg4 {-3.51/29 2s} 79. Nd4 {-4.55/17 0s} Kxh5
{-4.03/29 2s} 80. Nc2 {-4.97/17 0s} Bf7 {-4.98/29 2s (Kg4)}
81. Nd4 {-9.60/24 58s} Bc4 {-5.42/30 3s} 82. f4 {-9.75/20
17s} exf3 {-5.83/29 3s} 0-1
[Event "40 Moves in 2 min"]
[Site "Senpai 2.0 64-bit - Nov 10, LUCIFER"]
[Date "2017.11.09"]
[Round "1.1"]
[White "Senpai 2.0 64-bit"]
[Black "Arasan 20.3 64-bit"]
[ECO "E20"]
[Result "0-1"]
1. d4 {book 0s} Nf6 {book 0s} 2. c4 {book 0s} e6 {book 0s}
3. g3 {book 0s} d5 {book 0s} 4. Nf3 {book 0s} Bb4+ {book
0s} 5. Nc3 {book 0s} O-O {book 0s} 6. Bg2 {book 0s} c6
{book 0s} 7. O-O {0.00/15 2s} Nbd7 {book 0s (dxc4)} 8. Qd3
{+0.23/16 2s} b6 {book 0s} 9. cxd5 {+0.13/17 3s} cxd5 {book
0s (exd5)} 10. Bf4 {+0.45/17 2s} Bxc3 {+0.51/21 3s}
11. Qxc3 {+0.73/17 3s} Ba6 {+0.62/22 3s (Ne4)} 12. Rfe1
{+0.44/18 1s} Qe7 {+0.57/23 3s} 13. Qc6 {+0.46/20 1s} Rfc8
{+0.69/25 3s} 14. Qa4 {+0.34/19 1s} Bb7 {+0.49/24 3s}
15. Rac1 {+0.33/20 3s} a5 {+0.46/23 3s} 16. Rxc8+ {+0.31/19
2s} Rxc8 {+0.71/24 3s} 17. Rc1 {+0.29/20 1s} Rxc1+
{+0.70/22 3s (Qd8)} 18. Bxc1 {+0.41/19 0s} h6 {+0.71/22 3s
(Qd8)} 19. h4 {+0.36/19 4s} Ne4 {+0.63/19 3s (Qd8)} 20. a3
{+0.51/20 7s} Ndf6 {+0.58/19 3s (Ba6)} 21. Ne5 {+0.48/22
4s} Nd6 {+0.61/21 3s (Qc7)} 22. Qc2 {+0.55/19 1s} Nf5
{+0.46/21 3s (Nfe4)} 23. e3 {+0.54/20 6s} Ne4 {+0.56/19 3s
(Nd7)} 24. Bxe4 {+0.37/20 5s} dxe4 {+0.18/22 3s} 25. Bd2
{+0.11/20 4s} f6 {+0.04/22 3s (Kh7)} 26. Ng6 {+0.46/18 1s}
Qd7 {+0.18/23 3s} 27. h5 {+0.20/20 5s} Nd6 {+0.18/24 3s}
28. Be1 {+0.21/22 3s} Bd5 {+0.18/24 3s} 29. Kg2 {+0.21/23
6s} a4 {+0.18/27 3s (Kf7)} 30. Bb4 {+0.40/20 2s} Nc4
{+0.18/29 3s} 31. Ne7+ {+0.40/22 3s} Kh7 {+0.18/30 3s
(Kf7)} 32. Qd1 {+0.41/23 2s} f5 {+0.18/29 3s} 33. Ng6
{+0.41/25 2s} Qe8 {0.00/29 3s} 34. Qc2 {+0.41/24 3s} Qb5
{+0.18/31 3s (Kg8)} 35. Kg1 {+0.32/24 12s} Qe8 {+0.18/33
3s} 36. Nf4 {+0.31/24 2s} Qd7 {0.00/30 3s (Kg8)} 37. Kh2
{+0.31/24 2s} Kg8 {+0.18/29 3s (Qd8)} 38. Kg2 {+0.32/24 1s}
Kh7 {+0.18/31 3s} 39. Kg1 {+0.31/23 3s} Kg8 {+0.18/28 3s
(Qe8)} 40. Kh2 {+0.25/22 4s} Kh7 {+0.18/30 3s (Qe8)}
41. Kg2 {+0.32/26 3s} Qc6 {0.00/31 3s (Qe8)} 42. Qc3
{+0.25/22 2s} Qd7 {+0.18/32 3s (Qb5)} 43. b3 {+0.32/24 2s}
axb3 {0.00/27 3s} 44. Qxb3 {+0.32/25 3s} Na5 {+0.18/28 3s
(Nd2)} 45. Qc3 {+0.32/26 4s} Nc4 {+0.18/31 3s} 46. Qc2
{+0.32/27 3s} Qb5 {+0.18/28 3s (Qe8)} 47. Kg1 {+0.32/25 2s}
Kg8 {0.00/28 3s (Qc6)} 48. Kh2 {+0.32/23 3s} Kh7 {0.00/30
3s (Qd7)} 49. Kg2 {+0.32/23 2s} Qc6 {+0.18/31 3s (Qe8)}
50. Qe2 {+0.14/24 8s} Qa4 {0.00/28 3s (e5)} 51. g4
{+0.32/21 2s} Qd7 {+0.22/23 3s (Qc6)} 52. Ng6 {+0.42/20 6s}
Qa4 {+0.18/28 3s (Qf7)} 53. Kh2 {+0.45/19 2s} Nxa3
{+0.18/26 3s (Qc6)} 54. Bxa3 {+0.57/21 2s} Qxa3 {+0.18/30
3s} 55. gxf5 {+0.20/22 2s} exf5 {+0.15/29 10s} 56. Qb5
{+0.16/24 7s} Qb3 {+0.18/28 2s} 57. Qd7 {0.00/24 2s} Bg8
{+0.25/28 2s} 58. Nf8+ {0.00/26 2s} Kh8 {+0.49/2 0s}
59. Qxf5 {0.00/26 2s} Qf7 {+0.18/30 2s} 60. Ng6+ {0.00/25
1s} Kh7 {+0.18/29 2s} 61. Nf8+ {0.00/28 2s} Kh8 {0.00/2 0s}
62. Ng6+ {0.00/30 1s} Kh7 {+0.18/31 3s} 63. Qf4 {0.00/26
1s} Qxf4+ {+0.14/27 2s (b5)} 64. Nxf4 {-0.56/23 7s} Bf7
{-0.27/28 2s (Bb3)} 65. Kg1 {-0.45/24 3s} Bc4 {-0.25/30 2s
(b5)} 66. d5 {-1.17/22 3s} Kg8 {-0.62/32 2s} 67. Ng6
{-1.07/24 2s} b5 {-0.53/32 2s} 68. d6 {-1.16/25 1s} Be6
{-0.79/32 2s} 69. Kf1 {-1.22/23 1s} Kf7 {-1.00/31 2s}
70. Ke1 {-1.50/23 2s} Bd7 {-1.18/30 2s} 71. Kd2 {-1.59/24
2s} Ke6 {-1.67/30 2s} 72. Kc3 {-2.44/21 4s} Be8 {-1.53/33
2s (Kxd6)} 73. d7 {-1.90/22 2s} Bxd7 {-2.18/27 2s (Kxd7)}
74. Nf8+ {-2.66/18 1s} Kd6 {-3.26/30 2s} 75. Ng6 {-3.83/22
6s} Be8 {-3.21/33 2s} 76. Nf4 {-4.45/19 3s} Ke5 {-3.28/30
2s} 77. Kd2 {-4.54/18 1s} Kf5 {-3.76/31 2s} 78. Ne2
{-4.62/17 0s} Kg4 {-3.51/29 2s} 79. Nd4 {-4.55/17 0s} Kxh5
{-4.03/29 2s} 80. Nc2 {-4.97/17 0s} Bf7 {-4.98/29 2s (Kg4)}
81. Nd4 {-9.60/24 58s} Bc4 {-5.42/30 3s} 82. f4 {-9.75/20
17s} exf3 {-5.83/29 3s} 0-1
Gabor Szots
CCRL testing group
CCRL testing group

