Enxadrista 1.00 Release - Instructional chess engine

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

Moderators: bob, hgm, Harvey Williamson

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
Post Reply
sedicla
Posts: 146
Joined: Fri Jan 07, 2011 11:51 pm
Location: USA

Enxadrista 1.00 Release - Instructional chess engine

Post by sedicla » Sat Mar 17, 2018 2:38 pm

Hello talkchess enxadristas! (enxadrista is portguese translation for chess player).

This is the release 1.0 of a new chess engine I wrote in C#. The intention is to provide documentation in Portuguese of the techniques in the form of comments in the source code ! I am the author of Tucano chess engine.

I used and documented most of techniques: board representation options, alpha/beta search, null move, transposition table, lmr, futility pruning, evaluation terms, etc.

The idea is to provide this material in Portuguese so other brazilian programmers can also build their own engines, since most of the chess programming information is in English. Let's say this is my "return to community initiative" :)

Enxadrista can be download from https://github.com/alcides-schulz/Xadrez The binary file is in the "release" section. (Xadrez = Chess)
Enxadrista is very weak, if tested it will probably take the last place in the ratings :) I may work on some improvements, but the goal is the documentation. I haven't played against it, but maybe can be a good partner for human players.

Hope it can be useful.

User avatar
CMCanavessi
Posts: 844
Joined: Thu Dec 28, 2017 3:06 pm
Location: Argentina

Re: Enxadrista 1.00 Release - Instructional chess engine

Post by CMCanavessi » Sat Mar 17, 2018 3:03 pm

Any estimation of its strenght? So i can test it with similar engines.
Follow my tournament and some Leela gauntlets live at http://twitch.tv/ccls

sedicla
Posts: 146
Joined: Fri Jan 07, 2011 11:51 pm
Location: USA

Re: Enxadrista 1.00 Release - Instructional chess engine

Post by sedicla » Sat Mar 17, 2018 3:20 pm

Hey Carlos, it is very weak, I only tested against tcsp and lost badly.

User avatar
CMCanavessi
Posts: 844
Joined: Thu Dec 28, 2017 3:06 pm
Location: Argentina

Re: Enxadrista 1.00 Release - Instructional chess engine

Post by CMCanavessi » Sat Mar 17, 2018 4:49 pm

Cool, so we know that it's weaker than 1700. I will make a couple of tests.
Follow my tournament and some Leela gauntlets live at http://twitch.tv/ccls

User avatar
CMCanavessi
Posts: 844
Joined: Thu Dec 28, 2017 3:06 pm
Location: Argentina

Re: Enxadrista 1.00 Release - Instructional chess engine

Post by CMCanavessi » Sat Mar 17, 2018 9:00 pm

Here's a quick gauntlet I did to estimate the strenght:

Code: Select all

-----------------Enxadrista 1.0 x32-----------------
Enxadrista 1.0 x32 - CeruleanJS 0.1.1 x32     : 1,5/4 1-2-1 (100=)  38%   -85
Enxadrista 1.0 x32 - Eden 0.0.13 x32          : 1,5/4 1-2-1 (1=00)  38%   -85
Enxadrista 1.0 x32 - Frank 0.58 x32           : 2,5/4 2-1-1 (11=0)  63%   +92
Enxadrista 1.0 x32 - KillerQueen 2 beta 3 x32 : 1,0/4 0-2-2 (=0=0)  25%  -191
Enxadrista 1.0 x32 - Skaki 1.23 x32           : 3,0/4 3-1-0 (0111)  75%  +191
Enxadrista 1.0 x32 - Tikov 0.6.3 Rev 2 x32    : 3,0/4 3-1-0 (1011)  75%  +191

Rating is around 1300 elo:

Code: Select all

 143 Sabrina 3.1.25 x64                     :  1363.7     218   27   36  155    21    17  1976.3    82    75.8
 144 Project Invincible 2.10 x32            :  1342.6     242  168   20   54    74     8   879.5    35    30.9
 145 T.rex 1.8.5 x32                        :  1318.5      92   30   13   49    40    14  1400.8    23    23.0
 146 Skaki 1.23 x32                         :  1317.8      64   32   13   19    60    20  1236.2    16    16.0
 147 KillerQueen 2 beta 3 x32               :  1311.8      64   28   20   16    59    31  1236.6    16    16.0
 148 Pierre v1.7 x32                        :  1301.6     152   61   18   73    46    12  1335.3    37    36.6
 149 Dragontooth 0.2 Bahamut x64            :  1291.0     368  161   24  183    47     7  1401.7    94    71.9
 150 Enxadrista 1.0 x32                     :  1290.8      24   10    5    9    52    21  1275.1     6     6.0
 151 Virutor Chess 1.1.2 x32                :  1290.0     152   52   32   68    45    21  1335.9    37    36.6
 152 T.rex 1.9 beta x32                     :  1288.2      60   24   20   16    57    33  1234.5    15    15.0
 153 CeruleanJS 0.1.1 x32                   :  1276.8      64   23   24   17    55    38  1238.7    16    16.0
 154 QuteChess 1.0.1t x32                   :  1257.3      60   15   33   12    53    55  1236.6    15    15.0
 155 Nanook v0.17 x32                       :  1257.3      60   15   33   12    53    55  1236.6    15    15.0
 156 Toledo Nanochess Jan/11/2010 x32       :  1240.9     242  142   41   59    67    17   885.4    35    30.9
Follow my tournament and some Leela gauntlets live at http://twitch.tv/ccls

sedicla
Posts: 146
Joined: Fri Jan 07, 2011 11:51 pm
Location: USA

Re: Enxadrista 1.00 Release - Instructional chess engine

Post by sedicla » Sat Mar 17, 2018 10:29 pm

Thank you very much Carlos. I appreciated.
If you don't mind, can I update the documentation and include those results?
I can link to your twitch to give the credits, ok?

User avatar
CMCanavessi
Posts: 844
Joined: Thu Dec 28, 2017 3:06 pm
Location: Argentina

Re: Enxadrista 1.00 Release - Instructional chess engine

Post by CMCanavessi » Sun Mar 18, 2018 12:29 am

sedicla wrote:Thank you very much Carlos. I appreciated.
If you don't mind, can I update the documentation and include those results?
I can link to your twitch to give the credits, ok?
Of course! Feel free to use those results however and wherever you want. Do you want the PGN of all the games? I can upload it.

I did a 2nd gauntlet, this time with 16 opponents ranging from 1200 to 1600 elo, and Enxadrista got around 50% of the points. See below the new rating calculated with all the matches, much more accurate than before:

Code: Select all

-----------------Enxadrista 1.0 x32-----------------
Enxadrista 1.0 x32 - BRAMA 05/12/2004 x32             : 1,0/4 0-2-2 (=0=0)  25%  -191
Enxadrista 1.0 x32 - Dragontooth 0.2 Bahamut x64      : 4,0/4 4-0-0 (1111) 100% +1200
Enxadrista 1.0 x32 - Iota 1.0 x32                     : 3,5/4 3-0-1 (11=1)  88%  +346
Enxadrista 1.0 x32 - Joanna2002 1.06 x32              : 0,5/4 0-3-1 (=000)  13%  -330
Enxadrista 1.0 x32 - Nanook v0.17 x32                 : 1,5/4 0-1-3 (=0==)  38%   -85
Enxadrista 1.0 x32 - Pierre v1.7 x32                  : 3,0/4 3-1-0 (1110)  75%  +191
Enxadrista 1.0 x32 - Project Invincible 2.10 x32      : 1,5/4 1-2-1 (0=10)  38%   -85
Enxadrista 1.0 x32 - QuteChess 1.0.1t x32             : 1,5/4 0-1-3 (===0)  38%   -85
Enxadrista 1.0 x32 - Sabrina 3.1.25 x64               : 0,5/4 0-3-1 (0=00)  13%  -330
Enxadrista 1.0 x32 - Supra 26.0 Pro x64               : 1,0/4 1-3-0 (0100)  25%  -191
Enxadrista 1.0 x32 - T.rex 1.8.5 x32                  : 1,0/4 1-3-0 (0100)  25%  -191
Enxadrista 1.0 x32 - T.rex 1.9 beta x32               : 2,0/4 2-2-0 (1010)  50%    ±0
Enxadrista 1.0 x32 - Talvmenni 0.1 x32                : 1,5/4 1-2-1 (01=0)  38%   -85
Enxadrista 1.0 x32 - Toledo Nanochess Jan/11/2010 x32 : 2,5/4 2-1-1 (110=)  63%   +92
Enxadrista 1.0 x32 - Usurpator II x32                 : 2,5/4 2-1-1 (=011)  63%   +92
Enxadrista 1.0 x32 - Virutor Chess 1.1.2 x32          : 2,0/4 2-2-0 (1010)  50%    ±0

And my current rating list:

Code: Select all

 147 KillerQueen 2 beta 3 x32               :  1307.0      64   28   20   16    59    31  1232.2    16    16.0
 148 Pierre v1.7 x32                        :  1289.3     156   62   18   76    46    12  1328.3    38    37.6
 149 Virutor Chess 1.1.2 x32                :  1283.7     156   54   32   70    45    21  1328.6    38    37.6
 150 T.rex 1.9 beta x32                     :  1283.6      64   26   20   18    56    31  1233.7    16    16.0
 151 CeruleanJS 0.1.1 x32                   :  1272.0      64   23   24   17    55    38  1234.4    16    16.0
 152 Dragontooth 0.2 Bahamut x64            :  1269.4     372  161   24  187    47     6  1394.9    95    72.9
 153 QuteChess 1.0.1t x32                   :  1260.5      64   16   36   12    53    56  1235.1    16    16.0
 154 Nanook v0.17 x32                       :  1260.5      64   16   36   12    53    56  1235.1    16    16.0
 155 Enxadrista 1.0 x32                     :  1246.6      88   32   20   36    48    23  1263.3    22    22.0
 156 Toledo Nanochess Jan/11/2010 x32       :  1229.5     246  143   42   61    67    17   886.8    36    31.8
 157 BRAMA 05/12/2004 x32                   :  1193.8     160   91   46   23    71    29   874.6    38    37.3
 158 Tikov 0.6.3 Rev 2 x32                  :  1167.8      64   21   10   33    41    16  1240.9    16    16.0
 159 Frank 0.58 x32                         :  1112.9      64   11   21   32    34    33  1244.4    16    16.0
 160 Iota 1.0 x32                           :  1085.8     160   77   44   39    62    28   880.0    38    37.3
 161 Talvmenni 0.1 x32                      :  1075.2     100   66   28    6    80    28   660.8    25    25.0
 162 Usurpator II x32                       :  1057.2     160   83   24   53    59    15   881.4    38    37.3
 163 Xadreco 5.83 x32                       :  1043.8     188   81   23   84    49    12  1013.2    46    45.6
~1250 elo
Follow my tournament and some Leela gauntlets live at http://twitch.tv/ccls

tpoppins
Posts: 919
Joined: Tue Nov 24, 2015 8:11 pm
Location: upstate

Re: Enxadrista 1.00 Release - Instructional chess engine

Post by tpoppins » Sun Mar 18, 2018 2:05 am

Four games per opponent is too little to give a meaningful estimate of an engine's rating. You could run four such gauntlets and get completely different results every time; it's like throwing dice.

User avatar
CMCanavessi
Posts: 844
Joined: Thu Dec 28, 2017 3:06 pm
Location: Argentina

Re: Enxadrista 1.00 Release - Instructional chess engine

Post by CMCanavessi » Sun Mar 18, 2018 2:51 am

tpoppins wrote:Four games per opponent is too little to give a meaningful estimate of an engine's rating. You could run four such gauntlets and get completely different results every time; it's like throwing dice.
It won't change much. It could jump to 1300 or go down to 1200, but it's not far off. It was supposed to give us an idea of the playing strenght, not an exact number.
Follow my tournament and some Leela gauntlets live at http://twitch.tv/ccls

sedicla
Posts: 146
Joined: Fri Jan 07, 2011 11:51 pm
Location: USA

Re: Enxadrista 1.00 Release - Instructional chess engine

Post by sedicla » Sun Mar 18, 2018 2:37 pm

Thanks again Carlos, I updated the description in github and included your twitch channel.
I think it is fine to just have an idea of the strength. Enxadrista won't be a competitive engine. I hope it can be a documentation reference for Portuguese speaking programmers.

Post Reply