Official Release of OliThink 5.7.5 including a Java-GUI

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

Moderators: hgm, Rebel, chrisw

OliverBr
Posts: 725
Joined: Tue Dec 18, 2007 9:38 pm
Location: Munich, Germany
Full name: Dr. Oliver Brausch

Re: Official Release of OliThink 5.7.5 including a Java-GUI

Post by OliverBr »

mvanthoor wrote: Thu Oct 01, 2020 12:45 am Have you ever thought about adding this? Your engine is already at +/- 2500 Elo without this knowledge. Stuff like passed pawn evaluation is known to add over 100 Elo in some engines. According to MadChess by Eric Madsen:

https://www.madchess.net/

+ 119 for passed pawns.
+ 63 for king safety.
Thank you very much for this tip.

1) Passed Pawns:
OliThink knows about "passed pawns", because it's a part of mobility. Passed Pawns have much more squares to move before being eaten/blocked by an enemy pawn.

2) King safety:
True, this is one of OliThink's weaknesses, because this is not explicitly implemented at all.

Implicitly, though, there are some mobility evaluation which help the poor King a little:
a) The King tends to go to center of board dependent on how many enemy officers are on the board. With many pieces on board this is negative, so he should stay in the corner.
b) The mobility evaluation considers the fact, that attacking big enemy pieces (King, Queen, etc..) do not actually reduce the mobility of minor pieces, because they "have to go out of the way".

Of course, there is some implicit chess knowledge "hidden" in the mobility evaluation.
Chess Engine OliThink: http://brausch.org/home/chess
OliThink GitHub:https://github.com/olithink
OliverBr
Posts: 725
Joined: Tue Dec 18, 2007 9:38 pm
Location: Munich, Germany
Full name: Dr. Oliver Brausch

Re: Official Release of OliThink 5.7.5 including a Java-GUI

Post by OliverBr »

Graham Banks wrote: Thu Oct 01, 2020 12:33 am The same ones are fine. :)
Tourney has been finished after about 8 hours, how much ELO would you think OliThink has with this TC?

Code: Select all

40/900:
   # PLAYER            :  RATING  ERROR  POINTS  PLAYED   (%)    W    D    L  D(%)  CFS(%)
   1 Murka 3 x64       :     172     70    58.0      80  72.5   48   20   12  25.0      89
   2 Weiss 1.0         :     115     68    52.5      80  65.6   40   25   15  31.2      58
   3 Glaurung 2.2      :     105     69    51.5      80  64.4   39   25   16  31.2     100
   4 OliThink 5.8.3    :       0   ----    78.0     240  32.5   43   70  127  29.2     ---

White advantage = -37.01 +/- 19.99
Draw rate (equal opponents) = 32.58 % +/- 3.33
compared to the fast variant:

Code: Select all

40/30:
   # PLAYER             :  RATING  ERROR  POINTS  PLAYED   (%)     W    D     L  D(%)  CFS(%)
   1 Weiss 1.0          :     151     18   984.0    1400  70.3   845  278   277  19.9      94
   2 Murka 3 x64        :     132     17   952.5    1400  68.0   813  279   308  19.9     100
   3 Glaurung 2.2       :      57     17   813.0    1400  58.1   671  284   445  20.3     100
   4 OliThink 5.8.3a    :       0   ----  1450.5    4200  34.5  1030  841  2329  20.0     ---

White advantage = 2.90 +/- 5.14
Draw rate (equal opponents) = 21.54 % +/- 0.68	
It's no surprise that Murka plays better with long time controls and Weiss better with short ones. The ELO difference of Glaurung 2.2 is surprise and very high (+48).

PS: Working already on 5.8.4, found an improvement, but looking for a second one before releasing.
Chess Engine OliThink: http://brausch.org/home/chess
OliThink GitHub:https://github.com/olithink
User avatar
Graham Banks
Posts: 41415
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: Official Release of OliThink 5.7.5 including a Java-GUI

Post by Graham Banks »

OliverBr wrote: Thu Oct 01, 2020 10:21 am
Graham Banks wrote: Thu Oct 01, 2020 12:33 am The same ones are fine. :)
Tourney has been finished after about 8 hours, how much ELO would you think OliThink has with this TC?

Code: Select all

40/900:
   # PLAYER            :  RATING  ERROR  POINTS  PLAYED   (%)    W    D    L  D(%)  CFS(%)
   1 Murka 3 x64       :     172     70    58.0      80  72.5   48   20   12  25.0      89
   2 Weiss 1.0         :     115     68    52.5      80  65.6   40   25   15  31.2      58
   3 Glaurung 2.2      :     105     69    51.5      80  64.4   39   25   16  31.2     100
   4 OliThink 5.8.3    :       0   ----    78.0     240  32.5   43   70  127  29.2     ---

White advantage = -37.01 +/- 19.99
Draw rate (equal opponents) = 32.58 % +/- 3.33
compared to the fast variant:

Code: Select all

40/30:
   # PLAYER             :  RATING  ERROR  POINTS  PLAYED   (%)     W    D     L  D(%)  CFS(%)
   1 Weiss 1.0          :     151     18   984.0    1400  70.3   845  278   277  19.9      94
   2 Murka 3 x64        :     132     17   952.5    1400  68.0   813  279   308  19.9     100
   3 Glaurung 2.2       :      57     17   813.0    1400  58.1   671  284   445  20.3     100
   4 OliThink 5.8.3a    :       0   ----  1450.5    4200  34.5  1030  841  2329  20.0     ---

White advantage = 2.90 +/- 5.14
Draw rate (equal opponents) = 21.54 % +/- 0.68	
It's no surprise that Murka plays better with long time controls and Weiss better with short ones. The ELO difference of Glaurung 2.2 is surprise and very high (+48).

PS: Working already on 5.8.4, found an improvement, but looking for a second one before releasing.
I'd just be guessing. Perhaps just over 2650 Elo in CCRL 40/15 terms.
gbanksnz at gmail.com
OliverBr
Posts: 725
Joined: Tue Dec 18, 2007 9:38 pm
Location: Munich, Germany
Full name: Dr. Oliver Brausch

Re: Official Release of OliThink 5.7.5 including a Java-GUI

Post by OliverBr »

OliThink 5.8.6 has been released.
Except improvement in strength (about ELO 20, without expanding the code, still < 1600 l.o.c.), a bug in playing from an opening bug has been fixed.

This little tournament illustrates the improvement:

Code: Select all

   # PLAYER            :  RATING  ERROR  POINTS  PLAYED   (%)     W     D     L  D(%)  CFS(%)
   1 Weiss 1.0         :     109     16   910.5    1400  65.0   723   375   302  26.8      94
   2 Murka 3 x64       :      91     16   877.5    1400  62.7   704   347   349  24.8     100
   3 Glaurung 2.2      :      11     16   722.5    1400  51.6   563   319   518  22.8      91
   4 OliThink 5.8.6    :       0   ----  1689.5    4200  40.2  1169  1041  1990  24.8     ---
Hash-Size has been increased from 128MB to 192MB, because the struct has been extended by a 2 byte value, so for now there are 6 bytes unused. This is some room for improvement.

Comparison with versions before:

Code: Select all

   # PLAYER            :  RATING  ERROR  POINTS  PLAYED   (%)     W     D     L  D(%)  CFS(%)
   4 OliThink 5.8.6    :       0   ----  1689.5    4200  40.2  1169  1041  1990  24.8     ---
   4 OliThink 5.8.5    :       0   ----  1568.5    4200  37.3  1125  887  2188  21.1     ---
   4 OliThink 5.8.4    :       0   ----  1540.0    4200  36.7  1071  938  2191  22.3     ---
   4 OliThink 5.8.3    :       0   ----  1450.5    4200  34.5  1030  841  2329  20.0     ---
   4 OliThink 5.8.1    :       0   ----  1158.0    4200  27.6  788  740  2672  17.6     ---
Chess Engine OliThink: http://brausch.org/home/chess
OliThink GitHub:https://github.com/olithink
OliverBr
Posts: 725
Joined: Tue Dec 18, 2007 9:38 pm
Location: Munich, Germany
Full name: Dr. Oliver Brausch

Re: Official Release of OliThink 5.7.5 including a Java-GUI

Post by OliverBr »

I am having here a funny phenomena with Strelka 2.0 (and 1.8, too). It looks like it cannot mate, a lot of draws by 50move or insufficant material appear:

Code: Select all

   # PLAYER            :  RATING  ERROR  POINTS  PLAYED   (%)    W    D    L  D(%)  CFS(%)
   1 OliThink 5.8.6    :     150     12   725.5    1034  70.2  421  609    4  58.9     100
   2 Strelka 2.0 B     :       0   ----   308.5    1034  29.8    4  609  421  58.9     ---

White advantage = 8.83 +/- 6.38
Draw rate (equal opponents) = 88.16 % +/- 2.78
Is this a known issue?
Chess Engine OliThink: http://brausch.org/home/chess
OliThink GitHub:https://github.com/olithink
OliverBr
Posts: 725
Joined: Tue Dec 18, 2007 9:38 pm
Location: Munich, Germany
Full name: Dr. Oliver Brausch

Re: Official Release of OliThink 5.7.5 including a Java-GUI

Post by OliverBr »

Hello together,

Olithink 5.8.7 has been released. The size hasn't been increased, but the strength did:

Code: Select all

   # PLAYER            :  RATING  ERROR  POINTS  PLAYED   (%)     W     D     L  D(%)  CFS(%)
   1 Weiss 1.0         :      68     16   834.5    1400  59.6   639   391   370  27.9      87
   2 Murka 3 x64       :      56     16   810.0    1400  57.9   643   334   423  23.9     100
   3 OliThink 5.8.7    :       0   ----  1875.5    4200  44.7  1362  1027  1811  24.5      88
   4 Glaurung 2.2      :     -10     16   680.0    1400  48.6   529   302   569  21.6     ---
It looks as finally it has beaten its idol, Glaurung 2.2.
A nice example is this game of OliThink 5.8.7 (1 CPU) against Glaurung 2.1 (4 CPUs).

[pgn]
[Event "Computer Chess Game"]
[Site "Olivers-MacBook-2.local"]
[Date "2020.10.16"]
[Round "-"]
[White "OliThink 5.8.7"]
[Black "Glaurung 2.1"]
[Result "1-0"]
[TimeControl "40/120"]
[Annotator "8. -0.08 9... +0.31"]

1. d4 Nf6 2. c4 e6 3. Nc3 Bb4 4. Qc2 O-O 5. a3 Bxc3+ 6. Qxc3 b6 7. Bg5 Bb7
8. Qg3 {-0.08/19 2.2} c5 9. e3 {+0.06/20 5} cxd4 {+0.31/15 7} 10. exd4
{-0.05/24 1.0} Be4 {+0.03/15 7} 11. Bd3 {+0.12/21 2.2} Bxd3 {+0.01/17 3}
12. Qxd3 {-0.03/22 0.2} d5 {-0.05/17 5} 13. Qf3 {+0.00/22 5} Nbd7
{-0.01/16 3} 14. cxd5 {+0.00/22 2.5} exd5 {+0.00/16 1.2} 15. Ne2
{+0.14/23 4} Qe8 {+0.00/17} 16. Bf4 {+0.33/20 2.8} Qe6 {+0.00/16 3} 17. O-O
{+0.23/22 3} Rfe8 {+0.01/16 0.7} 18. Ng3 {+0.20/19 2.2} Rac8 {+0.00/16 1.9}
19. Qd3 {+0.17/20 4} Qg4 {-0.11/15 5} 20. Qd2 {+0.25/25 0.7} Ne4
{+0.23/15 3} 21. Nxe4 {-0.03/22 2.6} dxe4 {+0.25/15 0.6} 22. h3
{+0.03/23 3} Qf5 {+0.47/16 2.9} 23. Rfc1 {+0.00/24 3} Nf6 {+0.50/16 3} 24.
Rxc8 {-0.03/25 6} Rxc8 {+0.50/16 2.9} 25. Rc1 {+0.00/24 3} Nd5 {+0.50/17 4}
26. Bg3 {+0.00/22 0.4} Rxc1+ {+0.37/16 6} 27. Qxc1 {+0.10/25 7} Qd7
{+0.43/18} 28. b4 {+0.12/21 4} f6 {+0.39/16 5} 29. Qc2 {+0.05/20 2.9} f5
{+0.37/17 1.7} 30. Be5 {+0.04/20 1.4} g6 {+0.21/16 6} 31. b5 {+0.36/26 3}
Qxb5 {+0.09/16 3} 32. Qc8+ {+0.55/24 6} Kf7 {-0.31/18} 33. Qh8 {+0.66/25 4}
Ne7 {-0.98/17 2.1} 34. Qxh7+ {+1.08/24 3} Ke6 {-1.03/18 1.4} 35. Qg7
{+1.06/26 2.1} Qd7 {-1.07/17 2.3} 36. Bf4 {+1.28/25 6} Qd5 {-1.35/17 0.3}
37. a4 {+1.22/24 6} Qb3 {-1.01/17 9} 38. Bg5 {+1.39/24 3} Qb1+ {-1.47/17 4}
39. Kh2 {+1.69/25 0.8} Qb4 {-1.54/17 7} 40. h4 {+1.78/28 5} Kd7
{-1.29/17 8} 41. g3 {+1.72/25} f4 {-1.66/17 5} 42. gxf4 {+1.78/23 2.5} Qd6
{-2.52/15 6} 43. Kg2 {+2.25/22 2.5} Ke8 {-3.78/15 6} 44. Bxe7 {+2.76/21 9}
Qxf4 {-9.82/27 4} 45. Bg5 {+5.48/21 3} Qf7 {-12.80/29 26} 46. Qe5+
{+5.74/20 2.5} Kd7 {-12.97/26 0.4} 47. Qxe4 {+5.75/20 1.9} Qe8
{-16.55/28 20} 48. Qd5+ {+6.28/20 2.3} Kc8 {-17.10/26 2.2} 49. Qa8+
{+6.43/21 0.6} Kd7 {-12.05/25 1.1} 50. Qxa7+ {+6.64/21 2.5} Kc6
{-16.72/26 1.9} 51. Kg3 {+6.63/21 1.7} Qe6 {-17.99/26 14} 52. Qa8+
{+7.42/21 3} Kd6 {-60.02/25 2.6} 53. Bf4+ {+15.34/21 2.6} Ke7
{-1000.23/28 0.1} 54. d5 {+16.77/22 2.2} Qd7 {-1000.16/35 0.7} 55. Qg8
{+17.32/23 2.7} b5 {-1000.14/39} 56. Qg7+ {+26.29/21 3} Ke8
{-1000.14/39 1.1} 57. Qxg6+ {+25.79/21 1.7} Kd8 {-1000.14/29 1.1} 58. Qg8+
{+26.91/20 1.5} Ke7 {-1000.13/40} 59. d6+ {+1000.12/20 5} Kf6
{-1000.11/39 1.2} 60. h5 {+1000.11/20 3} Qf7 {-1000.09/44} 61. Bg5+
{+1000.10/18 2.6} Ke6 {-1000.08/41 0.8} 62. Qxf7+ {+1000.08/19} Kxf7
{-1000.07/48 1.1} 63. d7 {+1000.07/25 1.0} b4 {-1000.06/53 0.2} 64. d8=Q
{+1000.06/11} Ke6 {-1000.05/70 1.2} 65. h6 {+1000.05/32} b3
{-1000.04/245 1.0} 66. h7 {+1000.04/7} b2 {-1000.03/245} 67. h8=Q
{+1000.03/5} Kf5 {-1000.02/245} 68. Qhf6+ {+1000.02/3} Ke4 {-1000.01/245}
69. Qe6# {+1000.01/1 0.1}
{Xboard adjudication: Checkmate} 1-0
[/pgn]

Note: Glaurung resigned via polyglot at move 44. Stockfish 11 finished the game for Glaurung from that move on:
Chess Engine OliThink: http://brausch.org/home/chess
OliThink GitHub:https://github.com/olithink
adnoh
Posts: 72
Joined: Tue Jun 26, 2007 6:31 am
Full name: Charles Wong

Re: Official Release of OliThink 5.7.5 including a Java-GUI

Post by adnoh »

I am seeing consistent time forfeit with 5.8.7 where OliThink plays a few moves and then times out while searching without making another move. I am using Arena 3.5.1 on Windows 10 playing tournament games at 5+1 seconds.

The previous version I was using is 5.8.0 and it works very well. I see in the readme there were time management changes in 5.8.3.
OliverBr
Posts: 725
Joined: Tue Dec 18, 2007 9:38 pm
Location: Munich, Germany
Full name: Dr. Oliver Brausch

Re: Official Release of OliThink 5.7.5 including a Java-GUI

Post by OliverBr »

adnoh wrote: Fri Oct 16, 2020 6:38 pm I am seeing consistent time forfeit with 5.8.7 where OliThink plays a few moves and then times out while searching without making another move. I am using Arena 3.5.1 on Windows 10 playing tournament games at 5+1 seconds.

The previous version I was using is 5.8.0 and it works very well. I see in the readme there were time management changes in 5.8.3.
Thank you very much for your post! I am very grateful.

I would need some more information:

1) Are the tournaments being played with pondering ("hard")?
2) Are openings books played? If yes, how?
3) How many games out of 100 this does happen?
4) It's always after a few moves or can it happen later in game, too? Could it be after the opening?
5) 5+1 means 5 seconds start + 1 second increment per move, is this correct?
Chess Engine OliThink: http://brausch.org/home/chess
OliThink GitHub:https://github.com/olithink
adnoh
Posts: 72
Joined: Tue Jun 26, 2007 6:31 am
Full name: Charles Wong

Re: Official Release of OliThink 5.7.5 including a Java-GUI

Post by adnoh »

OliverBr wrote: Fri Oct 16, 2020 8:41 pm
adnoh wrote: Fri Oct 16, 2020 6:38 pm I am seeing consistent time forfeit with 5.8.7 where OliThink plays a few moves and then times out while searching without making another move. I am using Arena 3.5.1 on Windows 10 playing tournament games at 5+1 seconds.

The previous version I was using is 5.8.0 and it works very well. I see in the readme there were time management changes in 5.8.3.
Thank you very much for your post! I am very grateful.

I would need some more information:

1) Are the tournaments being played with pondering ("hard")?
2) Are openings books played? If yes, how?
3) How many games out of 100 this does happen?
4) It's always after a few moves or can it happen later in game, too? Could it be after the opening?
5) 5+1 means 5 seconds start + 1 second increment per move, is this correct?
1) Tournament is with pondering on.
2) Using the olibook.pgn that came with the distribution and both 5.8.0 and 5.8.7 make book moves.
3) Effectively it time out every game. With 5.8.0 and a few of the versions before that it was very rare to non-existent.
4) My observation is 2-5 moves out of the book and it just stops playing. I did not see any game where it got to double digit moves. The search appears to be still running because I see the lines being displayed.
5) 5 seconds + 1 second.

If there is any debug mode I can turn on I would be happy to do it.
OliverBr
Posts: 725
Joined: Tue Dec 18, 2007 9:38 pm
Location: Munich, Germany
Full name: Dr. Oliver Brausch

Re: Official Release of OliThink 5.7.5 including a Java-GUI

Post by OliverBr »

adnoh wrote: Fri Oct 16, 2020 9:30 pm 1) Tournament is with pondering on.
2) Using the olibook.pgn that came with the distribution and both 5.8.0 and 5.8.7 make book moves.
3) Effectively it time out every game. With 5.8.0 and a few of the versions before that it was very rare to non-existent.
4) My observation is 2-5 moves out of the book and it just stops playing. I did not see any game where it got to double digit moves. The search appears to be still running because I see the lines being displayed.
5) 5 seconds + 1 second.

If there is any debug mode I can turn on I would be happy to do it.
Thank you. Actually I could need your help, because on my mac there is no Arena and with Xboard this bug is not reproducible.

My first guess is, that it has nothing to do with the time control. It's probably a bug in the transition from book moves to calculation. Have you tried other time controls yet? Is it different with pondering off?

Most helpful would be, if you could run a single game/mini tournament on Arena with OliThink 5.8.7 when this happens and to post the Arena log. Just enabling/displaying the logging in Arena should be enough.

Thank you!
Chess Engine OliThink: http://brausch.org/home/chess
OliThink GitHub:https://github.com/olithink