Scorpio 2.8

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

Moderators: hgm, Rebel, chrisw

Daniel Shawul
Posts: 4185
Joined: Tue Mar 14, 2006 11:34 am
Location: Ethiopia

Scorpio 2.8

Post by Daniel Shawul »

Hi all,

I have released new version of Scorpio 2.8. The major change is that ScorpioMCTS is now greatly improved thanks to alpha-beta rollouts. From the readme:

MCTS
The montecarlo tree search engine uses alpha-beta rollouts according to Huang paper. This is much stronger than standard MCTS in games like chess which ar full of tactics. ScorpioMCTS storing all the tree in memory has become very close in strength to the standard alpha-beta searcher due to alpha-beta rollouts. It can actually become same strength as the standard if we limit the amount of tree stored in memory via "treeht" parameter in the scorpio.in. When the MCTS search runs out memory, it will spawn standard recursive alpha-beta search at the leaves so setting treeht = 0 stores only root node and its children, effectively becoming same strength as the standard alpha-beta method. If we set treeht = 128 MB, upper parts of the tree will be stored in memory and MCTS used there. Note that 128MB of memory are not allocated immediately at start up; it only specifies the maximum memory to use for storing tree. Don't forget to set montecarlo=1 if you want to experiment with MCTS.

Code: Select all

##################################################################
# montecarlo - Use montecarlo tree search (MCTS) if set to 1
# treeht - Maximum size of tree to store in memory given in MB.
#          Note that this memory is not allocated at start up; it only
#          specifies the maximum limit the tree could grow to.
#          Note: Don't think you are making scorpio weak by not setting
#          this memory to high value, infact treeht=0 is the strongest 
#          MCTS setting.
##################################################################
montecarlo            0
treeht              128
The parallel search for MCTS uses virtual loss to distribute work among threads in standard MCTS rollouts, and ABDADA like BUSY flag for alpha-beta rollouts. ABDADA and parallel MCTS from the Go world are very similar in nature.

Standard
The standard search is also improved (which btw is still the default) with regard to search parameters tuning with CLOP, fixing ABDADA bug, turning on singular extensions etc. No evaluation changes, but I plan to couple Leela Chess neural nets with ScorpioMCTS if I can find someone to work with me.

regards,
Daniel
jd1
Posts: 269
Joined: Wed Oct 24, 2012 2:07 am

Re: Scorpio 2.8

Post by jd1 »

Congratulations, very interesting work.
Dokterchen
Posts: 133
Joined: Wed Aug 15, 2007 12:18 pm
Location: Munich

Re: Scorpio 2.8

Post by Dokterchen »

Sounds excellent.
User avatar
CMCanavessi
Posts: 1142
Joined: Thu Dec 28, 2017 4:06 pm
Location: Argentina

Re: Scorpio 2.8

Post by CMCanavessi »

Damn! It was just a couple of hours late to make it into Season 2 of my tournament. Will have to Season 3 to be tested.

Any estimations of ELO gain in both classic and MCTS mode?
Damir
Posts: 2801
Joined: Mon Feb 11, 2008 3:53 pm
Location: Denmark
Full name: Damir Desevac

Re: Scorpio 2.8

Post by Damir »

Thanks for new Scorpio Daniel. :) Yes I too want to know estimated elo gain. Is this version of Scorpio able to perform at the highest level, against other top engines ? :? 8-) 8-)
Daniel Shawul
Posts: 4185
Joined: Tue Mar 14, 2006 11:34 am
Location: Ethiopia

Re: Scorpio 2.8

Post by Daniel Shawul »

Thanks, it definately was the most fun i had with chess programming lately.
Daniel Shawul
Posts: 4185
Joined: Tue Mar 14, 2006 11:34 am
Location: Ethiopia

Re: Scorpio 2.8

Post by Daniel Shawul »

I only did self play with previous version and it seems +40 but I am sure it will come out to much less than that, maybe +20 or less. Damir, why you care so much about elo anyway? :lol:
Good that A0 came into picture and showed the value of thinking outside the box. If you chase that elo aggresively and have a tunnel vision, you might be stuck in a local optima, plus it is not fun atleast not for me...
I appreciate it if someone can test the MCTS version instead of the standard branch with "montecarlo 1" and "treeht" not set to 0.

Daniel
User avatar
Graham Banks
Posts: 41415
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

Re: Scorpio 2.8

Post by Graham Banks »

Thanks Daniel. :)
gbanksnz at gmail.com
User avatar
Marek Soszynski
Posts: 581
Joined: Wed May 10, 2006 7:28 pm
Location: Birmingham, England

Re: Scorpio 2.8

Post by Marek Soszynski »

In infinite analysis in Scid on this position:

[d]r4r1k/ppq4p/2n1bppP/2P1p3/2B2n2/1N3Q2/PBP2PP1/3RR1K1 w - - 0 1

with these settings:

montecarlo 1; treeht 512; mt 4; egbb_load_type 0

I got this:

Image
Marek Soszynski
Damir
Posts: 2801
Joined: Mon Feb 11, 2008 3:53 pm
Location: Denmark
Full name: Damir Desevac

Re: Scorpio 2.8

Post by Damir »

I can not create Scorpio as new engine in Fritz GUI. The engine field is empty... :( :(