I am trying to make Scorpio 3.0.8 MCTS NN (no GPU card, just CPU) play against an engine under Winboard, but it seems to crash and lose on time after book moves.
This is my ini config:
Code: Select all
###################################################
# log on/off - turn logging on and off
# resign - resign value in centipawns
# contempt - +ve value discourages drawishness
###################################################
log off
resign 700
contempt 0
##################################################################
# 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.
# frac_freeze_tree [0 - 100] - freeze tree after this percentage of time is spent
# frac_alphabeta [0 - 100] - rollouts alpha-beta search percentage when using AB-rollouts + MCTS with shared tree
# frac_abrollouts [0 - 100] - rollouts alpha-beta search percentage when using AB-rollouts + AB with shared tree
# frac_abprior [0 - 100] - standard alpha-beta search percentage when using AB + MCTS, and AB used as prior
# alphabeta_man_c [0 - 32] - switch to regular alpha-beta search with this many pieces on board
# mcts_strategy_depth [0 - 64] - Lookahead depth for MCTS rollouts
# alphabeta_depth [0 - 64] - Fixed search depth for standard alphabeta searches at the leaves
# evaluate_depth [-4 - 64] - Fixed search depth for evaluation of new children during expansion
# (-4=eval,-3=see,-2=recap qsearch,-1=no-checks qsearch 0=qsearch,x=search)
# backup_type [0 - 7] - minmax = 0, averaging = 1, mixed = 2, for mixing score with
# previous ID use 3,4,5 resp. 6 is classic MCTS, 7 is mixing by visit count
# reuse_tree - reuse MCTS tree between moves
# virtual_loss - virtual loss for parallel search
# visit_threshold - minimum number of visits for minimax backup
# policy_temp - Temperature for move policy
# cpuct_init - Starting cpuct value
# cpuct_base - Denominator of cpuct forumula
# fpu_is_loss - FPU is loss (1=true, 0=false)
# fpu_red - Reduction factor for FPU
##################################################################
montecarlo 1
treeht 12800
frac_freeze_tree 100
frac_alphabeta 0
frac_abrollouts 20
frac_abprior 30
alphabeta_man_c 20
mcts_strategy_depth 30
alphabeta_depth 16
evaluate_depth 0
backup_type 6
reuse_tree 1
virtual_loss 1
visit_threshold 3200
policy_temp 235
cpuct_init 125
cpuct_base 19652
fpu_is_loss 0
fpu_red 33
#############################################################################
# Parallel search setup
# mt - number of processors
# smp_depth - split depth for smp
# cluster_depth - split depth for cluster search
# message_poll_nodes - number nodes to search before checking for message
#############################################################################
mt 1
smp_depth 8
cluster_depth 12
message_poll_nodes 20
smp_type ABDADA
cluster_type YBW
##################################################################
# Hashtable sizes in mb.
# ht - main hash table shared by ALL threads
# eht - evalualtion hash table allocated PER thread
# pht - pawn hash table allocated PER thread
# Usually 1m or 2mb is enough for pawn hash table, but the others
# can be set as high as possible
##################################################################
ht 128
eht 4
pht 1
##########################################################################
# EGBB
# egbb_path - path to dll/so file for probing endgame egbbs
# egbb_files_path - path to endgame egbbs, if not specified it takes
# value of egbb_path
# egbb_cache_size - cache size for egbbs in MBs
# egbb_ply_limit_percent - percent of plies from the root to egbb probing
# egbb_depth_limit - depth from the leaves to egbb probing
# egbb_load_type - egbb load type with the following values
# 0 = none are loaded
# 1 = all 3/4 men are loaded
# 2 = Not implemented yet
# 3 = all 5 men are loaded
##########################################################################
egbb_path /home/daniel/egbb/
egbb_files_path /home/daniel/egbb/
egbb_cache_size 32
egbb_load_type 3
egbb_depth_limit 6
#######################################
# NN
# use_nn - turn off/on neural network
# nn_cache_size - neural network cache size in MBs
# nn_path - path to neural network
# nn_type - type of neural network (0=scorpio, 1=lczero)
# device_type - CPU or GPU
# delay - Sleep threads for this amount. Set this to 1
# if you are using way too many threads than you
# have physical cores (maybe when >16x more).
# float_type - inference precison for tensorrt = FLOAT/HALF/INT8
# wdl_head - network has WDL head (e.g JH networks do)
# win/draw/loss_weight - weights for WDL resp in precent, range is [0...1000]
# min_policy_value - minimum policy value in per mill. For 1%, set to 10
#######################################
use_nn 0
nn_cache_size 200
nn_type 0
wdl_head 0
nn_path C:\WinBoard-4.6.2\Engines\scorpio30-mcts-nn\nets-lczero\nets-lczero\ID-42850.uff
device_type CPU
n_devices 1
delay 0
float_type HALF
win_weight 100
draw_weight 100
loss_weight 100
min_policy_value 10
################################################################
# Multiple nets settings
#------------------------
# The opening is played by default network specified above
# nn_man_m/e -- threshold piece counts for middle/end game
# nn_type_m/e -- neural network type for middle/end game
# >=0 = as specified before
# -1/-2/-3 = used to refer to either opening/midgame/endgame network
# nn_path_m/e -- path to neural networks for middle/end game
# cpuct_init_m/e -- cpuct for middle/endgame
# policy_temp_m/e -- policy temperature for middle/endgame
# wdl_head_m/e -- wdl value head for middle/endgame
# ensemble -- percent of time to use ensembling [0-100]
# ensemble_type -- 0 = arthimetic mean, 1 = root mean cube
################################################################
nn_man_m 24
nn_man_e 14
nn_type_m -1
nn_type_e -1
nn_path_m C:\WinBoard-4.6.2\Engines\scorpio30-mcts-nn\nets-lczero\nets-lczero\ID-42850.uff
nn_path_e C:\WinBoard-4.6.2\Engines\scorpio30-mcts-nn\nets-maddex\ME.uff
cpuct_init_m 125
cpuct_init_e 125
policy_temp_m 235
policy_temp_e 235
wdl_head_m 0
wdl_head_e 0
ensemble 0
ensemble_type 0
"Scorpio 3.0.8 MCTS" -fcp "scorpio.exe" -fd "C:\WinBoard-4.6.2\Engines\scorpio30-mcts-nn\bin\Windows" -fn "Scorpio 3.0.8 MCTS" -fNoOwnBookUCI
What could be wrong?