Koivisto 7.0

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

Moderator: Ras

Damir
Posts: 2885
Joined: Mon Feb 11, 2008 3:53 pm
Location: Denmark
Full name: Damir Desevac

Re: Koivisto 7.0

Post by Damir »

matejst wrote: Sun Oct 31, 2021 9:12 pm I played a short match between Koivisto and SlowChess at 1'+1", using Frank Quisinsky's Feobos opening book. The result was 9,5-6,5 for SlowChess, and while the result is obviously not very important, what was obvious is that the endgame net SC uses gives it a huge advantage in balanced positions. In the last game, e.g., there was a very long combination which ended in a pawn endgame -- SC immediately knew it was won, while K. did not. Watching the games, time and time again K. had a pawn more, better pawns in the ending, but still SC managed draw.

I think that gambit line that Ed uses for the GRL will be better for Koivisto than the balanced openings I chose for this testing, but, nonetheless, endings are a point that can be improved. I give here the game with the queen sac and the resulting lost pawn endgame.


[pgn]
[Event "1 Minutes/Game + 1 Seconds/Move"]
[Site "Engine Match"]
[Date "2021.10.31"]
[Round "10"]
[White "SlowChess Blitz 2.7"]
[Black "Koivisto 7.0"]
[Result "1-0"]

1. c4 {book 0s} Nc6 {book 0s} 2. d4 {book 0s} d5 {book 0s}
3. Nc3 {book 0s} e6 {book 0s} 4. Nf3 {book 0s} Bb4 {book
0s} 5. e3 {book 0s} Nf6 {book 0s} 6. Bd3 {book 0s} O-O
{book 0s} 7. O-O {book 0s} dxc4 {book 0s} 8. Bxc4 {book 0s}
Bd6 {book 0s} 9. e4 {book 0s} e5 {book 0s} 10. d5 {+0.52/17
3s} Ne7 {+0.92/18 2s} 11. h3 {+0.40/16 2s} Ng6 {+1.22/19
6s} 12. Be3 {+0.36/17 4s} Nh5 {+0.86/18 2s (Bd7)} 13. Re1
{+0.72/16 2s} Nhf4 {+0.75/19 2s} 14. Bf1 {+0.56/15 2s} f5
{+0.52/17 3s} 15. Rc1 {+0.72/17 3s} fxe4 {+1.25/18 5s
(Qe7)} 16. Nxe4 {+0.80/16 3s} b6 {+0.89/18 3s (Qe7)} 17. a3
{+0.76/15 2s} h6 {+0.88/16 2s (Bf5)} 18. Kh2 {+0.92/15 5s}
Bb7 {+1.06/19 2s} 19. Bxf4 {+0.88/18 2s} Rxf4 {+0.94/19 1s
(Nxf4)} 20. Bb5 {+0.88/17 2s} Qe7 {+0.97/18 3s} 21. Bc6
{+0.92/16 2s} Bxc6 {+1.05/18 2s} 22. dxc6 {+0.96/16 2s} Qe6
{+1.17/19 2s (Rd8)} 23. Rc3 {+0.92/17 2s} Rf7 {+1.05/18 2s
(Rd8)} 24. Qc2 {+0.88/17 2s} Nf4 {+1.11/19 2s (Raf8)}
25. Rd1 {+0.80/15 2s} Rd8 {+1.18/19 4s} 26. Re3 {+0.76/16
4s} Be7 {+1.23/19 2s} 27. Rxd8+ {+0.92/15 0s} Bxd8
{+1.26/19 1s} 28. b4 {+0.72/16 5s} Be7 {+1.12/19 1s}
29. Qb2 {+0.96/16 2s} Nd5 {+1.36/21 2s (Bf6)} 30. Qb3
{+1.84/16 1s} Qxc6 {+0.77/19 0s (Rf8)} 31. Rd3 {+1.08/18
6s} Nf4 {+1.42/24 1s} 32. Nxe5 {+1.38/16 1s} Qxe4 {+2.08/23
2s} 33. Qxf7+ {+1.88/14 0s} Kh7 {+1.86/22 1s} 34. Rf3
{+1.40/16 7s} Qxe5 {+1.63/23 0s} 35. Rxf4 {+0.56/13 0s}
Qxf4+ {+1.90/22 2s} 36. Qxf4 {+0.64/13 1s} Bd6 {+1.71/22
0s} 37. Qxd6 {+2.29/14 6s} cxd6 {+0.80/20 0s} 38. Kg3
{+2.48/14 1s} Kg6 {+0.60/21 1s} 39. Kf4 {+2.88/15 5s} Kf6
{+0.72/21 0s} 40. Ke4 {+2.76/13 1s} Ke6 {+0.92/21 1s}
41. f4 {+3.16/13 1s} d5+ {+1.63/21 4s (g6)} 42. Ke3
{+3.59/14 1s} b5 {+1.54/19 2s (h5)} 43. g3 {+5.04/13 0s}
Kf6 {+2.60/21 2s (Kf5)} 44. Kd4 {+3.52/15 1s} Ke6 {+4.40/20
2s} 45. Kc5 {+5.76/14 1s} h5 {+2.26/18 1s (a6)} 46. g4
{+8.01/15 1s} g6 {+5.42/20 2s} 47. Kd4 {+5.53/15 1s} h4
{+6.15/19 1s} 48. Kc5 {+10.24/16 1s} 1-0
[/pgn]
Sorry matejst,

I can hardly take a person too seriously who test at 1m+1s time control...

I think Ed's testing is more relevant than yours is.
Madeleine Birchfield
Posts: 512
Joined: Tue Sep 29, 2020 4:29 pm
Location: Dublin, Ireland
Full name: Madeleine Birchfield

Re: Koivisto 7.0

Post by Madeleine Birchfield »

Congrats to the Koivisto team on the new release! Progress seems to be extremely fast lately in Koivisto. Koivisto 7.0 might now be the third strongest unique CPU-only engine behind Stockfish and Dragon, and it happens to be both free and open source as well.
Luecx
Posts: 138
Joined: Thu Jun 18, 2020 9:20 pm
Full name: Finn Eggers

Re: Koivisto 7.0

Post by Luecx »

Rebel wrote: Sun Oct 31, 2021 8:00 pm
Luecx wrote: Sun Oct 31, 2021 5:32 pm Koivisto 7.0
Howdy fellow chess enthusiasts,

It's been a while since we released 6.0, but now it's finally time for another release. Just a few days ago we passed the usual 100 stc self-play Elo we aim for for every release. Most of the gains come from search patches, although the embedded network is also significantly stronger.

....
You keep on surprising us.

For the GRL -

Games : 2400

Elo pool : 3480 :!:

http://rebel13.nl/a/grl.htm

I am using the AVX2 version but I noticed there hardly is any difference in speed in comparison with the SSE2 version. The same counts for Stockfish and Komodo. It seems that some profit and others don't, or that it is a matter of engineering, or that AVX2 is overrated. Maybe you can shed some light on the matter.
I do not think AVX is overrated at all.considering the fact that engines use AVX to a different extent, it is expected to see different speed ups across engines. Beside the coding of the engine, the cpu architecture should have a major role. Testing speeds on a local machine is very often highly inaccurate. If I run it locally, I run it like 50 times which takes a couple of minutes and average that. I observed moderate improvements inside Koivisto with AVX over SSE ranging from +50 knps to + 400knps. You can also use the bench command inside the engine. This will run a search on 50 positions and average the result.
The ability to speak does not make you intelligent. https://github.com/Luecx/Koivisto

Image
Luecx
Posts: 138
Joined: Thu Jun 18, 2020 9:20 pm
Full name: Finn Eggers

Re: Koivisto 7.0

Post by Luecx »

Rebel wrote: Sun Oct 31, 2021 8:00 pm
Luecx wrote: Sun Oct 31, 2021 5:32 pm Koivisto 7.0
Howdy fellow chess enthusiasts,

It's been a while since we released 6.0, but now it's finally time for another release. Just a few days ago we passed the usual 100 stc self-play Elo we aim for for every release. Most of the gains come from search patches, although the embedded network is also significantly stronger.

....
You keep on surprising us.

For the GRL -

Games : 2400

Elo pool : 3480 :!:

http://rebel13.nl/a/grl.htm

I am using the AVX2 version but I noticed there hardly is any difference in speed in comparison with the SSE2 version. The same counts for Stockfish and Komodo. It seems that some profit and others don't, or that it is a matter of engineering, or that AVX2 is overrated. Maybe you can shed some light on the matter.
AVX surely isn’t overrated. Many things factor in here. Namely the cpu architecture, the sample size, other processes running in the background and much more. To get reliable results I usually run hundreds of searches to get a feeling for speeds up. You can use the bench command inside Koivisto to get a slightly more accurate result. I usually run the bench command 50 times and then take the average of 2500 searches. I observed moderate nps improvements in koivisto ranging from 50-500knps when using AVX over SSE. Also note that not every engine is the same. Some use AVX more than others.
Last edited by Luecx on Sun Oct 31, 2021 10:12 pm, edited 1 time in total.
The ability to speak does not make you intelligent. https://github.com/Luecx/Koivisto

Image
matejst
Posts: 368
Joined: Mon May 14, 2007 8:20 pm
Full name: Boban Stanojević

Re: Koivisto 7.0

Post by matejst »

Damir wrote: Sun Oct 31, 2021 9:33 pm Sorry matejst,

I can hardly take a person too seriously who test at 1m+1s time control...

I think Ed's testing is more relevant than yours is.
Sorry, Damir, but I can hardly take seriously a person who hurries to comment a post without making the effort to read it correctly. Here the point was not about testing, but about endgame play: the endgame net used in SlowChess 2.7 gave valuable Elo points against Koivisto. I thought I was clear enough.
User avatar
Graham Banks
Posts: 44573
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: Koivisto 7.0

Post by Graham Banks »

Luecx wrote: Sun Oct 31, 2021 5:32 pm Koivisto 7.0
Howdy fellow chess enthusiasts,

It's been a while since we released 6.0, but now it's finally time for another release. Just a few days ago we passed the usual 100 stc self-play Elo we aim for for every release. Most of the gains come from search patches, although the embedded network is also significantly stronger.

This milestone also marks the end of simplistic neural network architectures inside Koivisto. More complex architectures are planned and there may even be neural networks used apart from evaluation. We have a number of ideas, and we look forward to seeing their results inside Koivisto.

```
STC:
ELO | 107.31 +- 3.91 (95%)
CONF | 8.0+0.08s Threads=1 Hash=8MB
GAMES | N: 13120 W: 4896 L: 968 D: 7256

LTC:
ELO | 89.39 +- 4.86 (95%)
CONF | 60.0+0.60s Threads=1 Hash=8MB
GAMES | N: 6256 W: 1857 L: 282 D: 4117
```

Koivisto 7.0 will play in the upcoming TCEC swizz.
Compiles for Windows and Linux can be found on our github page.

With love,
Finny & Kimmy
Thanks, and congrats on the progress. :)
gbanksnz at gmail.com
User avatar
Rebel
Posts: 7381
Joined: Thu Aug 18, 2011 12:04 pm
Full name: Ed Schröder

Re: Koivisto 7.0

Post by Rebel »

matejst wrote: Sun Oct 31, 2021 9:12 pm I think that gambit line that Ed uses for the GRL will be better for Koivisto than the balanced openings I chose for this testing, but, nonetheless, endings are a point that can be improved. I give here the game with the queen sac and the resulting lost pawn endgame.
Slowchess has special bitbase tables for most common endgame types. He put time in that and is frequently rewarded for that during endings.

Koivisto is also doing well in normal balanced opening. I am in the process to create a new rating list, the BRL, Bullet Rating List. Time control 40/10 repeating and a minimum number of 10,000 games. So far I have:

Code: Select all

   # PLAYER                 :  RATING  ERROR  POINTS  PLAYED   (%)  CFS(%)     W      D     L  D(%)  OppAvg
   1 Stockfish 14           :  3839.6    4.9  8027.5   10000    80     100  6450   3155   395    32  3574.4
   2 Komodo-Dragon 2.5      :  3770.7    7.0  9075.5   12000    76     100  6864   4423   713    37  3549.2
   3 Koivisto 6.23          :  3563.0    5.1  6562.0   10000    66      98  4140   4844  1016    48  3446.3
   4 Koivisto 6.16          :  3552.9    8.7  1799.5    6000    30      89   497   2605  2898    43  3719.1
   5 Ethereal 13.25-NNUE    :  3546.9    2.7  6205.0   12000    52     100  3329   5752  2919    48  3542.0
   6 SlowChess 2.7          :  3506.9    2.7  8238.5   18000    46     100  4008   8461  5531    47  3548.4
   7 RubiChess 2.2          :  3494.7    3.0  9355.0   20000    47      99  4846   9018  6136    45  3528.5
   8 Berserk 6              :  3490.4    5.0  8397.5   14000    60      98  5234   6327  2439    45  3416.5
   9 Ethereal 13-NNUE       :  3472.1   13.8   312.0    2000    16     100    31    562  1407    28  3770.7
  10 Igel 3.0.5             :  3429.2    5.0  9870.5   22000    45      60  4790  10161  7049    46  3473.3
  11 Pedone 3.1             :  3428.6    3.4  4739.5   12000    39     100  1749   5981  4270    50  3505.2
  12 Nemorino 6.00          :  3372.2    6.9  3331.5   10000    33     100  1137   4389  4474    44  3496.8
  13 Weiss 2.0              :  3348.8    6.7   777.0    2000    39      80   379    796   825    40  3429.2
  14 rofChade 2.3           :  3346.5    5.6  1385.5    4000    35      99   658   1455  1887    36  3459.8
  15 Seer 2.3.0             :  3337.5    4.2  1923.5    6000    32     ---   591   2665  2744    44  3471.4v
As you can see Koivisto is doing fine with normal balanced openings.
90% of coding is debugging, the other 10% is writing bugs.
matejst
Posts: 368
Joined: Mon May 14, 2007 8:20 pm
Full name: Boban Stanojević

Re: Koivisto 7.0

Post by matejst »

Ed,

If I understood well SlowChess has a special NN for endings -- I think it was the first NN Jonathan trained. In my testing, both engines were using 5-men syzygy bases, so SlowChess did not have an advantage on this specific point. It is not a question if Koivisto is doing fine in the endings, but if it is a possible point for improvement. I watched the games and time and time again Koivisto had a clear advantage in the ending just to draw against an engine of similar strength - but with an added endgame NN.

Endings are the weakest point of engine development at this moment, imho, although "weakest" does not mean it is "weak", of course. Achieving depths between 40-50 plies in a short time even on my slow laptop allows for very decent play, but when analyzing it becomes clear that there is room left for improvement. E.g. in the same match between Koivisto and SlowChess, in a closed position, K. exchanged both bishops for knights and ended in a rook ending that finished in a draw, instead of opening the position. I don't know if the BB vs KK ending would have been won -- humans do change their understanding of chess under the influence of engines in the last years and I did not analyze that ending -- but it is worth exploring.

In that match of 16 games, btw, all the games Koivisto lost were in closed positions: Old Indian, French defense, succumbing to vicious attacks, so perhaps another field of possible improvements.

On another point, about the BRL: why not using the time controls you use for the GRL? It would be a good mean to compare on several point -- I think that most developers already test at bullet TC, so an intermediate TC could give more interesting data for further work.
tmokonen
Posts: 1362
Joined: Sun Mar 12, 2006 6:46 pm
Location: Kelowna
Full name: Tony Mokonen

Re: Koivisto 7.0

Post by tmokonen »

Archimedes wrote: Sun Oct 31, 2021 5:53 pm Koivisto 7.0 for Android:
https://app.box.com/s/bebtvgxzqmy6rcvxmx0o29wi7d42m40s
I am not having any luck downloading from this link, either from my laptop nor my Android phone. On the phone, it says Sorry, we couldn't find that page when I click on the download button, and on the laptop it says your download is in progress, but nothing happens.
User avatar
Rebel
Posts: 7381
Joined: Thu Aug 18, 2011 12:04 pm
Full name: Ed Schröder

Re: Koivisto 7.0

Post by Rebel »

matejst wrote: Mon Nov 01, 2021 4:03 am Ed,

If I understood well SlowChess has a special NN for endings -- I think it was the first NN Jonathan trained. In my testing, both engines were using 5-men syzygy bases, so SlowChess did not have an advantage on this specific point. It is not a question if Koivisto is doing fine in the endings, but if it is a possible point for improvement. I watched the games and time and time again Koivisto had a clear advantage in the ending just to draw against an engine of similar strength - but with an added endgame NN.

Endings are the weakest point of engine development at this moment, imho, although "weakest" does not mean it is "weak", of course. Achieving depths between 40-50 plies in a short time even on my slow laptop allows for very decent play, but when analyzing it becomes clear that there is room left for improvement. E.g. in the same match between Koivisto and SlowChess, in a closed position, K. exchanged both bishops for knights and ended in a rook ending that finished in a draw, instead of opening the position. I don't know if the BB vs KK ending would have been won -- humans do change their understanding of chess under the influence of engines in the last years and I did not analyze that ending -- but it is worth exploring.

In that match of 16 games, btw, all the games Koivisto lost were in closed positions: Old Indian, French defense, succumbing to vicious attacks, so perhaps another field of possible improvements.

On another point, about the BRL: why not using the time controls you use for the GRL? It would be a good mean to compare on several point -- I think that most developers already test at bullet TC, so an intermediate TC could give more interesting data for further work.
The idea behind the GRL and a future BRL is simple, do something different, don't do what others already succesfully are doing for years. Besides of that, the base for most engine developers is self-play.
90% of coding is debugging, the other 10% is writing bugs.