Pedantic Developer's Log Stardate...

Discussion of chess software programming and technical issues.

Moderator: Ras

adnoh
Posts: 76
Joined: Tue Jun 26, 2007 6:31 am
Full name: Charles Wong

Re: Pedantic Developer's Log Stardate...

Post by adnoh »

Hi JoAnn,

I cannot get Pedantic v0.2 to start in Cute Chess GUI. Pedantic 0.1 works fine.

With Engine Debug on, I get this.

Code: Select all

<Pedantic 0.2.0(3): Pedantic v0.2.0
<Pedantic 0.2.0(3): id name Pedantic v0.2.0
<Pedantic 0.2.0(3): id author JoAnn D. Peeler
<Pedantic 0.2.0(3): option name OwnBook type check default true
<Pedantic 0.2.0(3): option name Ponder type check default true
<Pedantic 0.2.0(3): option name Hash type spin default 64 min 1 max 2048
<Pedantic 0.2.0(3): option name Clear Hash type button
<Pedantic 0.2.0(3): option name MaxThreads type spin default 1 min 1 max 18
<Pedantic 0.2.0(3): option name UCI_EngineAbout type string default Pedantic v0.2.0 by JoAnn D. Peeler, see https://github.com/JoAnnP38/Pedantic
<Pedantic 0.2.0(3): option name Evaluation_ID type string default <empty>
<Pedantic 0.2.0(3): option name Random_Search type check default false
<Pedantic 0.2.0(3): option name Collect_Stats type check default false
<Pedantic 0.2.0(3): uciok
>Pedantic 0.2.0(3): setoption name Collect_Stats value false
>Pedantic 0.2.0(3): setoption name Evaluation_ID value <empty>
>Pedantic 0.2.0(3): setoption name Hash value 64
>Pedantic 0.2.0(3): setoption name MaxThreads value 1
>Pedantic 0.2.0(3): setoption name OwnBook value false
>Pedantic 0.2.0(3): setoption name Random_Search value false
>Pedantic 0.2.0(3): isready
<Pedantic 0.2.0(3): info string Fatal error occurred in Pedantic: 'Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).'.
JoAnnP38
Posts: 253
Joined: Mon Aug 26, 2019 4:34 pm
Location: Clearwater, Florida USA
Full name: JoAnn Peeler

Re: Pedantic Developer's Log Stardate...

Post by JoAnnP38 »

adnoh wrote: Tue May 02, 2023 1:10 am Hi JoAnn,

I cannot get Pedantic v0.2 to start in Cute Chess GUI. Pedantic 0.1 works fine.

With Engine Debug on, I get this.

Code: Select all

<Pedantic 0.2.0(3): Pedantic v0.2.0
<Pedantic 0.2.0(3): id name Pedantic v0.2.0
<Pedantic 0.2.0(3): id author JoAnn D. Peeler
<Pedantic 0.2.0(3): option name OwnBook type check default true
<Pedantic 0.2.0(3): option name Ponder type check default true
<Pedantic 0.2.0(3): option name Hash type spin default 64 min 1 max 2048
<Pedantic 0.2.0(3): option name Clear Hash type button
<Pedantic 0.2.0(3): option name MaxThreads type spin default 1 min 1 max 18
<Pedantic 0.2.0(3): option name UCI_EngineAbout type string default Pedantic v0.2.0 by JoAnn D. Peeler, see https://github.com/JoAnnP38/Pedantic
<Pedantic 0.2.0(3): option name Evaluation_ID type string default <empty>
<Pedantic 0.2.0(3): option name Random_Search type check default false
<Pedantic 0.2.0(3): option name Collect_Stats type check default false
<Pedantic 0.2.0(3): uciok
>Pedantic 0.2.0(3): setoption name Collect_Stats value false
>Pedantic 0.2.0(3): setoption name Evaluation_ID value <empty>
>Pedantic 0.2.0(3): setoption name Hash value 64
>Pedantic 0.2.0(3): setoption name MaxThreads value 1
>Pedantic 0.2.0(3): setoption name OwnBook value false
>Pedantic 0.2.0(3): setoption name Random_Search value false
>Pedantic 0.2.0(3): isready
<Pedantic 0.2.0(3): info string Fatal error occurred in Pedantic: 'Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).'.
I updated the release binaries yesterday with a fix for this. You can either download the new binaries OR blank out the Evaluation_ID parameter in the pedantic configuration from the cute chess gui. Once you have done either you should have no problems, but please let me know if you do.
adnoh
Posts: 76
Joined: Tue Jun 26, 2007 6:31 am
Full name: Charles Wong

Re: Pedantic Developer's Log Stardate...

Post by adnoh »

Thanks. I downloaded the 0.2.1 binaries and they work fine.
JoAnnP38
Posts: 253
Joined: Mon Aug 26, 2019 4:34 pm
Location: Clearwater, Florida USA
Full name: JoAnn Peeler

Re: Pedantic Developer's Log Stardate...

Post by JoAnnP38 »

adnoh wrote: Tue May 02, 2023 4:20 am Thanks. I downloaded the 0.2.1 binaries and they work fine.
:D
JoAnnP38
Posts: 253
Joined: Mon Aug 26, 2019 4:34 pm
Location: Clearwater, Florida USA
Full name: JoAnn Peeler

Re: Pedantic Developer's Log Stardate...

Post by JoAnnP38 »

Development on release v0.3 of Pedantic is ongoing and its strength continues to grow. Perhaps not at the pace I might hope, but it is still significant all the same. After augmenting its evaluation to include center-control based on actual square control, improved king safety (castling & keeping clear of open files), an update to search to include static null move pruning, and a couple of important bug fixes it is currently playing about 100 Elo stronger based on self-play against version 0.2.

Code: Select all

Score of Pedantic 0.3 vs Pedantic 0.2: 796 - 228 - 976  [0.642] 2000
...      Pedantic 0.3 playing White: 416 - 103 - 481  [0.656] 1000
...      Pedantic 0.3 playing Black: 380 - 125 - 495  [0.627] 1000
...      White vs Black: 541 - 483 - 976  [0.514] 2000
Elo difference: 101.5 +/- 10.9, LOS: 100.0 %, DrawRatio: 48.8 %
I still have three items in my release plan left to complete that should also increase its strength:
  • Tiered/staged quiescence search
  • Multi-level PST based on enemy kings position in 4x4 grid
  • Internal iterative deepening
If those items can produce another 60 Elo or so in strength, perhaps Pedantic will be in the 2600 range by the time it is released. Not awe-inspiring by today's standards, but still I would have never imagined being able to create a chess program that could play at strengths competitive with human grandmasters. Such a wonderful hobby this is!

I've pushed endgame tablebase support to 0.4 so I can replan how I am going to support this in C#. Originally, I was going to just convert the existing C code for probing the syzygy tables, but I think that is a bigger nut to crack than I originally anticipated. If there are any other .NET developers who want to join forces to create the probing code for EGTB support then PM me.
User avatar
lithander
Posts: 890
Joined: Sun Dec 27, 2020 2:40 am
Location: Bremen, Germany
Full name: Thomas Jahn

Re: Pedantic Developer's Log Stardate...

Post by lithander »

JoAnnP38 wrote: Sun May 14, 2023 6:34 pm I've pushed endgame tablebase support to 0.4 so I can replan how I am going to support this in C#. Originally, I was going to just convert the existing C code for probing the syzygy tables, but I think that is a bigger nut to crack than I originally anticipated. If there are any other .NET developers who want to join forces to create the probing code for EGTB support then PM me.
I wanted to add EGTB support to Leorik but realized I didn't understand it well enough to do it from scratch. I then looked at Fathom but abandoned the port to C# when I realized that even if I'd get it working I would still not understand it.

I was about 50% done and some code paths were complete to the point where a correct probe result was returned. Maybe you can use some of the code to bootstrap your own progress: https://github.com/lithander/Leorik/com ... r...syzygy
Minimal Chess (simple, open source, C#) - Youtube & Github
Leorik (competitive, in active development, C#) - Github & Lichess
JoAnnP38
Posts: 253
Joined: Mon Aug 26, 2019 4:34 pm
Location: Clearwater, Florida USA
Full name: JoAnn Peeler

Re: Pedantic Developer's Log Stardate...

Post by JoAnnP38 »

lithander wrote: Mon May 15, 2023 6:11 pm
JoAnnP38 wrote: Sun May 14, 2023 6:34 pm I've pushed endgame tablebase support to 0.4 so I can replan how I am going to support this in C#. Originally, I was going to just convert the existing C code for probing the syzygy tables, but I think that is a bigger nut to crack than I originally anticipated. If there are any other .NET developers who want to join forces to create the probing code for EGTB support then PM me.
I wanted to add EGTB support to Leorik but realized I didn't understand it well enough to do it from scratch. I then looked at Fathom but abandoned the port to C# when I realized that even if I'd get it working I would still not understand it.

I was about 50% done and some code paths were complete to the point where a correct probe result was returned. Maybe you can use some of the code to bootstrap your own progress: https://github.com/lithander/Leorik/com ... r...syzygy
That sounds awesome! Thank you!!

After I release 0.3 I'm going to try and take a week or two break just to read and hopefully generate ideas for 0.4. I think I have grabbed most of the low hanging fruit. I can probably optimize what I have for more strength, but I'm currently shooting for 2600 in 0.3 and need something significant for 0.4. I may end up just taking the C code for syzygy probing and turn it into a Windows DLL callable from C# (and other languages as well if needed.) This way I don't have to maintain much if they introduce new probing code for 9-10 piece tablebases! LOL Unfortunately, I'm not sure what to do for my planned linux support. I know nothing about that OS and even less about linux programming.
JoAnnP38
Posts: 253
Joined: Mon Aug 26, 2019 4:34 pm
Location: Clearwater, Florida USA
Full name: JoAnn Peeler

Re: Pedantic Developer's Log Stardate...

Post by JoAnnP38 »

I got a kick out of this. I setup a small gauntlet in Arena with my development version of Pedantic against Herman 2.8 64 bit and Spike 1.4. Pedantic has never so much as drawn against Spike 1.4 given its Elo of 2910 using a single thread. However, you know what they say about blind squirrels...

Code: Select all

-----------------Hermann 2.8 64 bit-----------------
Hermann 2.8 64 bit - Pedantic : 4.5/8 3-2-3 (=101==10)  56%   +42
-----------------Pedantic-----------------
Pedantic - Hermann 2.8 64 bit : 3.5/8 2-3-3 (=010==01)  44%   -42
Pedantic - Spike 1.4          : 1.5/8 1-6-1 (=0000010)  19%  -252
-----------------Spike 1.4-----------------
Spike 1.4 - Pedantic          : 6.5/8 6-1-1 (=1111101)  81%  +252
rdhoffmann
Posts: 46
Joined: Fri Apr 21, 2023 3:46 pm
Full name: Richard Hoffmann

Re: Pedantic Developer's Log Stardate...

Post by rdhoffmann »

Great! :D

I believe Spike 1.4 may have a bug as every now and then my engine can beat it too. Spike then makes a weak losing move somewhere for some strange reason. The move is not reproducible outside of that particular game though. Not saying that happened in your particular game, just something to watch out for.

And btw looking forward to 0.3! For some reason the current build on Github doesn't work for me, neither in CuteChess nor in Arena.
JoAnnP38
Posts: 253
Joined: Mon Aug 26, 2019 4:34 pm
Location: Clearwater, Florida USA
Full name: JoAnn Peeler

Re: Pedantic Developer's Log Stardate...

Post by JoAnnP38 »

rdhoffmann wrote: Tue May 16, 2023 2:21 pm And btw looking forward to 0.3! For some reason the current build on Github doesn't work for me, neither in CuteChess nor in Arena.
On the details tab of manage engines, did you set "Command Line Parameters" to "uci"?