Minic version 2

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

Moderators: Harvey Williamson, Dann Corbit, hgm

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
User avatar
mvanthoor
Posts: 546
Joined: Wed Jul 03, 2019 2:42 pm
Full name: Marcel Vanthoor

Re: Minic version 2

Post by mvanthoor » Thu Apr 30, 2020 11:22 am

Have you also been looking into speeding up make() and unmake() in Minic?

When I last tried it, it ran perft 7 at around 120 seconds on my computer. As it uses magic bitboards, it should be able to reach 80 seconds for perft 7 on my system. That would be a 33% speedup. Even though the evaluation function dwarfs make/unmake, the speedup should account for a few ELO-points.

User avatar
xr_a_y
Posts: 1337
Joined: Sat Nov 25, 2017 1:28 pm
Location: France

Re: Minic version 2

Post by xr_a_y » Thu Apr 30, 2020 4:53 pm

Not yet. On the todo list ;)

User avatar
xr_a_y
Posts: 1337
Joined: Sat Nov 25, 2017 1:28 pm
Location: France

Re: Minic version 2

Post by xr_a_y » Sun May 03, 2020 5:08 pm

I'm currently working on some kind of "personality" feature for Minic.
But I don't want to expose many parameters as I did in Weini (https://github.com/tryingsomestuff/Wein ... onfig.json, everything tunable was maybe too much !).
This time, I'd love to provide only 3 or 4 clear parameters (like attack/defense, positional, ...).

After looking at other engines that have some kind of personality, I came to the decision of using some part of Shashin theory like Shashchess, but in a much simpler form. A side effect of given access to some parameters to the users maybe to try to automatically determine the "type" of the position and scale score accordingly hoping for some strength.

The idea is as follows :
- change almost nothing to eval
- but during eval, collect the following things : material advantage, mobility advantage, forwardness.
- I now "divide" eval score in the following sub score : materialScore, developmentScore, positionalScore, mobilityScore, pawnStructScore, and attackScore
- before using those score, scale them according to the Shashin category of the position (or the one of initial search position, or the use type of personality forced by the user).

I manage to collect everything needed, and make some room for those score scaling. I know wonder how to scale them properly.

My first idea, based on ShashChess, is to :
- verify that materialScore is between -150 .. 150, (if not just don't bother) and use a continuous factor like (max(0,1-(materialScore/150)^2) to scale everything next
- compute a mobility ratio from 0.5 to 2, to get the style of the position : Tal (>1.2), Capablanca or Petrosian (<0.8)
- find a continuous scaling function between those personalities :
* if Tal : scale up attack and positional
* if Capablanca : scale up positional, pawn structure, add a forwardness bonus
* if Petrosian : scale up mobility, add a forwardness malus

What do you think of this plan ? Any inputs ? ideas ?

Jamal Bubker
Posts: 314
Joined: Mon May 24, 2010 2:32 pm

Re: Minic version 2

Post by Jamal Bubker » Mon May 04, 2020 11:01 pm

Hi Vivien,
It sounds like a great project !!
I ve understood the concept but i don't have any skills in this field ...
But i think it's a good idea !

User avatar
xr_a_y
Posts: 1337
Joined: Sat Nov 25, 2017 1:28 pm
Location: France

Re: Minic version 2

Post by xr_a_y » Sun May 10, 2020 11:14 am

Minic 2.21 is available with some little speed up and fixes for FRC.

Also, the github repository history has been re-written (to delete big files from it, that has been moved to "Minic-Book_and_Test" repository), so as a consequence, do not try to simply pull Minic, you'd better clone a fresh new copy of it.

Maybe, if CCRL FRC testers have some resources available, it is worth testing as it shall be a lot better than the old 1.15 :D

Code: Select all

Score of minic_1.15 vs minic_2.21: 10 - 69 - 21 [0.205]
Elo difference: -235.4 +/- 71.3, LOS: 0.0 %, DrawRatio: 21.0 %

User avatar
xr_a_y
Posts: 1337
Joined: Sat Nov 25, 2017 1:28 pm
Location: France

Re: Minic version 2

Post by xr_a_y » Mon May 11, 2020 7:16 pm

xr_a_y wrote:
Sun May 10, 2020 11:14 am
Minic 2.21 is available with some little speed up and fixes for FRC.

Also, the github repository history has been re-written (to delete big files from it, that has been moved to "Minic-Book_and_Test" repository), so as a consequence, do not try to simply pull Minic, you'd better clone a fresh new copy of it.

Maybe, if CCRL FRC testers have some resources available, it is worth testing as it shall be a lot better than the old 1.15 :D

Code: Select all

Score of minic_1.15 vs minic_2.21: 10 - 69 - 21 [0.205]
Elo difference: -235.4 +/- 71.3, LOS: 0.0 %, DrawRatio: 21.0 %
Ooops, this release suffer from a threading bug and is only able to play single-threaded :oops: :oops: :oops: :oops: :oops:

User avatar
xr_a_y
Posts: 1337
Joined: Sat Nov 25, 2017 1:28 pm
Location: France

Re: Minic version 2

Post by xr_a_y » Tue May 12, 2020 12:30 pm

Fixed in 2.22 with some additional strength also ... :D

Modern Times
Posts: 2612
Joined: Thu Jun 07, 2012 9:02 pm

Re: Minic version 2

Post by Modern Times » Tue May 12, 2020 3:49 pm

xr_a_y wrote:
Sun May 10, 2020 11:14 am

Maybe, if CCRL FRC testers have some resources available, it is worth testing as it shall be a lot better than the old 1.15 :D
Some interim results are on the site now.
.

Opinions expressed here are my own, and not necessarily those of the CCRL Group.

User avatar
xr_a_y
Posts: 1337
Joined: Sat Nov 25, 2017 1:28 pm
Location: France

Re: Minic version 2

Post by xr_a_y » Tue May 12, 2020 4:42 pm

Modern Times wrote:
Tue May 12, 2020 3:49 pm
xr_a_y wrote:
Sun May 10, 2020 11:14 am

Maybe, if CCRL FRC testers have some resources available, it is worth testing as it shall be a lot better than the old 1.15 :D
Some interim results are on the site now.
So quick ! Thanks a lot !
Can you please just correct the version from 2.2.1 to 2.21 ;)

Modern Times
Posts: 2612
Joined: Thu Jun 07, 2012 9:02 pm

Re: Minic version 2

Post by Modern Times » Wed May 13, 2020 11:17 am

xr_a_y wrote:
Tue May 12, 2020 4:42 pm

So quick ! Thanks a lot !
Can you please just correct the version from 2.2.1 to 2.21 ;)
Done, and testing is complete.
.

Opinions expressed here are my own, and not necessarily those of the CCRL Group.

Post Reply