Upload default_gtp.cfg
Browse files- default_gtp.cfg +730 -0
default_gtp.cfg
ADDED
|
@@ -0,0 +1,730 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Configuration for KataGo C++ GTP engine
|
| 2 |
+
|
| 3 |
+
# Run the program using: `./katago.exe gtp`
|
| 4 |
+
|
| 5 |
+
# In this example config, when a parameter is given as a commented out value,
|
| 6 |
+
# that value also is the default value, unless described otherwise. You can
|
| 7 |
+
# uncomment it (remove the pound sign) and change it if you want.
|
| 8 |
+
|
| 9 |
+
# ===========================================================================
|
| 10 |
+
# Running on an online server or in a real tournament or match
|
| 11 |
+
# ===========================================================================
|
| 12 |
+
# If you plan to run online or in a tournament, read through the "Rules"
|
| 13 |
+
# section below for proper handling of komi, handicaps, end-of-game cleanup,
|
| 14 |
+
# and other details.
|
| 15 |
+
|
| 16 |
+
# ===========================================================================
|
| 17 |
+
# Notes about performance and memory usage
|
| 18 |
+
# ===========================================================================
|
| 19 |
+
# Important: For good performance, you will very likely want to tune the
|
| 20 |
+
# "numSearchThreads" parameter in the Search limits section below! Run
|
| 21 |
+
# "./katago benchmark" to test KataGo and to suggest a reasonable value
|
| 22 |
+
# of this parameter.
|
| 23 |
+
|
| 24 |
+
# For multi-GPU systems, read "OpenCL GPU settings" or "CUDA GPU settings".
|
| 25 |
+
#
|
| 26 |
+
# When using OpenCL, verify that KataGo picks the correct device! Some systems
|
| 27 |
+
# may have both an Intel CPU OpenCL and GPU OpenCL. If # KataGo picks the wrong
|
| 28 |
+
# one, correct this by specifying "openclGpuToUse".
|
| 29 |
+
#
|
| 30 |
+
# Consider adjusting "maxVisits", "ponderingEnabled", "resignThreshold", and
|
| 31 |
+
# other parameters depending on your intended usage.
|
| 32 |
+
|
| 33 |
+
# ===========================================================================
|
| 34 |
+
# Command-line usage
|
| 35 |
+
# ===========================================================================
|
| 36 |
+
# All of the below values may be set or overridden via command-line arguments:
|
| 37 |
+
#
|
| 38 |
+
# -override-config KEY=VALUE,KEY=VALUE,...
|
| 39 |
+
|
| 40 |
+
# ===========================================================================
|
| 41 |
+
# Logs and files
|
| 42 |
+
# ===========================================================================
|
| 43 |
+
# This section defines where and what logging information is produced.
|
| 44 |
+
|
| 45 |
+
# Each run of KataGo will log to a separate file in this dir.
|
| 46 |
+
# This is the default.
|
| 47 |
+
logDir = gtp_logs
|
| 48 |
+
# Uncomment and specify this instead of logDir to write separate dated subdirs
|
| 49 |
+
# logDirDated = gtp_logs
|
| 50 |
+
# Uncomment and specify this instead of logDir to log to only a single file
|
| 51 |
+
# logFile = gtp.log
|
| 52 |
+
|
| 53 |
+
# Logging options
|
| 54 |
+
logAllGTPCommunication = true
|
| 55 |
+
logSearchInfo = true
|
| 56 |
+
logSearchInfoForChosenMove = false
|
| 57 |
+
logToStderr = false
|
| 58 |
+
|
| 59 |
+
# KataGo will display some info to stderr on GTP startup
|
| 60 |
+
# Uncomment the next line and set it to false to suppress that and remain silent
|
| 61 |
+
# startupPrintMessageToStderr = true
|
| 62 |
+
|
| 63 |
+
# Write information to stderr, for use in things like malkovich chat to OGS.
|
| 64 |
+
# ogsChatToStderr = false
|
| 65 |
+
|
| 66 |
+
# Uncomment and set this to a directory to override where openCLTuner files
|
| 67 |
+
# and other cached data is written. By default it saves into a subdir of the
|
| 68 |
+
# current directory on windows, and a subdir of ~/.katago on Linux.
|
| 69 |
+
# homeDataDir = PATH_TO_DIRECTORY
|
| 70 |
+
|
| 71 |
+
# ===========================================================================
|
| 72 |
+
# Analysis
|
| 73 |
+
# ===========================================================================
|
| 74 |
+
# This section configures analysis settings.
|
| 75 |
+
#
|
| 76 |
+
# The maximum number of moves after the first move displayed in variations
|
| 77 |
+
# from analysis commands like kata-analyze or lz-analyze.
|
| 78 |
+
# analysisPVLen = 15
|
| 79 |
+
|
| 80 |
+
# Report winrates for chat and analysis as (BLACK|WHITE|SIDETOMOVE).
|
| 81 |
+
# Most GUIs and analysis tools will expect SIDETOMOVE.
|
| 82 |
+
# reportAnalysisWinratesAs = SIDETOMOVE
|
| 83 |
+
|
| 84 |
+
# Extra noise for wider exploration. Large values will force KataGo to
|
| 85 |
+
# analyze a greater variety of moves than it normally would.
|
| 86 |
+
# An extreme value like 1 distributes playouts across every move on the board,
|
| 87 |
+
# even very bad moves.
|
| 88 |
+
# Affects analysis only, does not affect play.
|
| 89 |
+
# analysisWideRootNoise = 0.04
|
| 90 |
+
|
| 91 |
+
# Try to limit the effect of possible bad or bogus move sequences in the
|
| 92 |
+
# history leading to this position from affecting KataGo's move predictions.
|
| 93 |
+
# analysisIgnorePreRootHistory = true
|
| 94 |
+
|
| 95 |
+
# ===========================================================================
|
| 96 |
+
# Rules
|
| 97 |
+
# ===========================================================================
|
| 98 |
+
# This section configures the scoring and playing rules. Rules can also be
|
| 99 |
+
# changed mid-run by issuing custom GTP commands.
|
| 100 |
+
#
|
| 101 |
+
# See https://lightvector.github.io/KataGo/rules.html for rules details.
|
| 102 |
+
#
|
| 103 |
+
# See https://github.com/lightvector/KataGo/blob/master/docs/GTP_Extensions.md
|
| 104 |
+
# for GTP commands.
|
| 105 |
+
|
| 106 |
+
# Specify the rules as a string.
|
| 107 |
+
# Some legal values include:
|
| 108 |
+
# chinese, japanese, korean, aga, chinese-ogs, new-zealand, stone-scoring,
|
| 109 |
+
# ancient-territory, bga, aga-button
|
| 110 |
+
#
|
| 111 |
+
# For some human rulesets that require complex adjudication in tricky cases
|
| 112 |
+
# (e.g. japanese, korean) KataGo may not precisely match the ruleset in such
|
| 113 |
+
# cases but will do its best.
|
| 114 |
+
rules = tromp-taylor
|
| 115 |
+
|
| 116 |
+
# By default, the "rules" parameter is used, but if you comment it out and
|
| 117 |
+
# uncomment one option in each of the sections below, you can specify an
|
| 118 |
+
# arbitrary combination of individual rules.
|
| 119 |
+
|
| 120 |
+
# koRule = SIMPLE # Simple ko rules (triple ko = no result)
|
| 121 |
+
# koRule = POSITIONAL # Positional superko
|
| 122 |
+
# koRule = SITUATIONAL # Situational superko
|
| 123 |
+
|
| 124 |
+
# scoringRule = AREA # Area scoring
|
| 125 |
+
# scoringRule = TERRITORY # Territory scoring (special computer-friendly territory rules)
|
| 126 |
+
|
| 127 |
+
# taxRule = NONE # All surrounded empty points are scored
|
| 128 |
+
# taxRule = SEKI # Eyes in seki do NOT count as points
|
| 129 |
+
# taxRule = ALL # All groups are taxed up to 2 points for the two eyes needed to live
|
| 130 |
+
|
| 131 |
+
# Is multiple-stone suicide legal? (Single-stone suicide is always illegal).
|
| 132 |
+
# multiStoneSuicideLegal = false
|
| 133 |
+
# multiStoneSuicideLegal = true
|
| 134 |
+
|
| 135 |
+
# "Button go" - the first pass when area scoring awards 0.5 points and does
|
| 136 |
+
# not count for ending the game.
|
| 137 |
+
# Allows area scoring rulesets that have far simpler rules to achieve the same
|
| 138 |
+
# final scoring precision and reward for precise play as territory scoring.
|
| 139 |
+
# hasButton = false
|
| 140 |
+
# hasButton = true
|
| 141 |
+
|
| 142 |
+
# Is this a human ruleset where it's okay to pass before having physically
|
| 143 |
+
# captured and removed all dead stones?
|
| 144 |
+
# friendlyPassOk = false
|
| 145 |
+
# friendlyPassOk = true
|
| 146 |
+
|
| 147 |
+
# How handicap stones in handicap games are compensated
|
| 148 |
+
# whiteHandicapBonus = 0 # White gets no compensation for black's handicap stones (Tromp-taylor, NZ, JP)
|
| 149 |
+
# whiteHandicapBonus = N-1 # White gets N-1 points for black's N handicap stones (AGA)
|
| 150 |
+
# whiteHandicapBonus = N # White gets N points for black's N handicap stones (Chinese)
|
| 151 |
+
|
| 152 |
+
# ------------------------------
|
| 153 |
+
# Other rules hacks
|
| 154 |
+
# ------------------------------
|
| 155 |
+
# Uncomment and change to adjust what board size KataGo uses upon startup
|
| 156 |
+
# by default when GTP doesn't specify.
|
| 157 |
+
# defaultBoardSize = 19
|
| 158 |
+
|
| 159 |
+
# By default, Katago will use the komi that the GUI or GTP controller tries to set.
|
| 160 |
+
# Uncomment and set this to have KataGo ignore the controller and always use this komi.
|
| 161 |
+
# ignoreGTPAndForceKomi = 7
|
| 162 |
+
|
| 163 |
+
# ===========================================================================
|
| 164 |
+
# Bot behavior
|
| 165 |
+
# ===========================================================================
|
| 166 |
+
|
| 167 |
+
# ------------------------------
|
| 168 |
+
# Resignation
|
| 169 |
+
# ------------------------------
|
| 170 |
+
|
| 171 |
+
# Resignation occurs if for at least resignConsecTurns in a row, the
|
| 172 |
+
# winLossUtility (on a [-1,1] scale) is below resignThreshold.
|
| 173 |
+
allowResignation = true
|
| 174 |
+
resignThreshold = -0.90
|
| 175 |
+
resignConsecTurns = 3
|
| 176 |
+
|
| 177 |
+
# By default, KataGo may resign games that it is confidently losing even if they
|
| 178 |
+
# are very close in score. Uncomment and set this to avoid resigning games
|
| 179 |
+
# if the estimated difference is points is less than or equal to this.
|
| 180 |
+
# resignMinScoreDifference = 10
|
| 181 |
+
|
| 182 |
+
# Disallow resignation if turn number < resignMinMovesPerBoardArea * area of board.
|
| 183 |
+
# e.g 0.25 would prohibit resignation on 19x19 until after turn 361 * 0.25 ~= 90.
|
| 184 |
+
# resignMinMovesPerBoardArea = 0.00
|
| 185 |
+
|
| 186 |
+
# ------------------------------
|
| 187 |
+
# Handicap
|
| 188 |
+
# ------------------------------
|
| 189 |
+
# Assume that if black makes many moves in a row right at the start of the
|
| 190 |
+
# game, then the game is a handicap game. This is necessary on some servers
|
| 191 |
+
# and for some GUIs and also when initializing from many SGF files, which may
|
| 192 |
+
# set up a handicap game using repeated GTP "play" commands for black rather
|
| 193 |
+
# than GTP "place_free_handicap" commands; however, it may also lead to
|
| 194 |
+
# incorrect understanding of komi if whiteHandicapBonus is used and a server
|
| 195 |
+
# does not have such a practice. Uncomment and set to false to disable.
|
| 196 |
+
# assumeMultipleStartingBlackMovesAreHandicap = true
|
| 197 |
+
|
| 198 |
+
# Makes katago dynamically adjust in handicap or altered-komi games to assume
|
| 199 |
+
# based on those game settings that it must be stronger or weaker than the
|
| 200 |
+
# opponent and to play accordingly. Greatly improves handicap strength by
|
| 201 |
+
# biasing winrates and scores to favor appropriate safe/aggressive play.
|
| 202 |
+
# Does NOT affect analysis (lz-analyze, kata-analyze, used by programs like
|
| 203 |
+
# Lizzie) so analysis remains unbiased. Uncomment and set this to 0 to disable
|
| 204 |
+
# this and make KataGo play the same always.
|
| 205 |
+
# dynamicPlayoutDoublingAdvantageCapPerOppLead = 0.045
|
| 206 |
+
|
| 207 |
+
# Instead of "dynamicPlayoutDoublingAdvantageCapPerOppLead", you can comment
|
| 208 |
+
# that out and uncomment and set "playoutDoublingAdvantage" to a fixed value
|
| 209 |
+
# from -3.0 to 3.0 that will not change dynamically.
|
| 210 |
+
# ALSO affects analysis tools (lz-analyze, kata-analyze, used by e.g. Lizzie).
|
| 211 |
+
# Negative makes KataGo behave as if it is much weaker than the opponent.
|
| 212 |
+
# Positive makes KataGo behave as if it is much stronger than the opponent.
|
| 213 |
+
# KataGo will adjust to favor safe/aggressive play as appropriate based on
|
| 214 |
+
# the combination of who is ahead and how much stronger/weaker it thinks it is,
|
| 215 |
+
# and report winrates and scores taking the strength difference into account.
|
| 216 |
+
#
|
| 217 |
+
# If this and "dynamicPlayoutDoublingAdvantageCapPerOppLead" are both set
|
| 218 |
+
# then dynamic will be used for all games and this fixed value will be used
|
| 219 |
+
# for analysis tools.
|
| 220 |
+
# playoutDoublingAdvantage = 0.0
|
| 221 |
+
|
| 222 |
+
# Uncomment one of these when using "playoutDoublingAdvantage" to enforce
|
| 223 |
+
# that it will only apply when KataGo plays as the specified color and will be
|
| 224 |
+
# negated when playing as the opposite color.
|
| 225 |
+
# playoutDoublingAdvantagePla = BLACK
|
| 226 |
+
# playoutDoublingAdvantagePla = WHITE
|
| 227 |
+
|
| 228 |
+
# ------------------------------
|
| 229 |
+
# Passing and cleanup
|
| 230 |
+
# ------------------------------
|
| 231 |
+
# Make the bot never assume that its pass will end the game, even if passing
|
| 232 |
+
# would end and "win" under Tromp-Taylor rules. Usually this is a good idea
|
| 233 |
+
# when using it for analysis or playing on servers where scoring may be
|
| 234 |
+
# implemented non-tromp-taylorly. Uncomment and set to false to disable.
|
| 235 |
+
# conservativePass = true
|
| 236 |
+
|
| 237 |
+
# When using territory scoring, self-play games continue beyond two passes
|
| 238 |
+
# with special cleanup rules that may be confusing for human players. This
|
| 239 |
+
# option prevents the special cleanup phases from being reachable when using
|
| 240 |
+
# the bot for GTP play. Uncomment and set to false to enable entering special
|
| 241 |
+
# cleanup. For example, if you are testing it against itself, or against
|
| 242 |
+
# another bot that has precisely implemented the rules documented at
|
| 243 |
+
# https://lightvector.github.io/KataGo/rules.html
|
| 244 |
+
# preventCleanupPhase = true
|
| 245 |
+
|
| 246 |
+
# ------------------------------
|
| 247 |
+
# Miscellaneous behavior
|
| 248 |
+
# ------------------------------
|
| 249 |
+
# If the board is symmetric, search only one copy of each equivalent move.
|
| 250 |
+
# Attempts to also account for ko/superko, will not theoretically perfect for
|
| 251 |
+
# superko. Uncomment and set to false to disable.
|
| 252 |
+
# rootSymmetryPruning = true
|
| 253 |
+
|
| 254 |
+
# Uncomment and set to true to avoid a particular joseki that some networks
|
| 255 |
+
# misevaluate, and also to improve opening diversity versus some particular
|
| 256 |
+
# other bots that like to play it all the time.
|
| 257 |
+
# avoidMYTDaggerHack = false
|
| 258 |
+
|
| 259 |
+
# Prefer to avoid playing the same joseki in every corner of the board.
|
| 260 |
+
# Uncomment to set to a specific value. See "Avoid SGF patterns" section.
|
| 261 |
+
# By default: 0 (even games), 0.005 (handicap games)
|
| 262 |
+
# avoidRepeatedPatternUtility = 0.0
|
| 263 |
+
|
| 264 |
+
# Experimental logic to fight against mirror Go even with unfavorable komi.
|
| 265 |
+
# Uncomment to set to a specific value to use for both playing and analysis.
|
| 266 |
+
# By default: true when playing via GTP, but false when analyzing.
|
| 267 |
+
# antiMirror = true
|
| 268 |
+
|
| 269 |
+
# Enable some hacks that mitigate rare instances when passing messes up deeper searches.
|
| 270 |
+
# enablePassingHacks = true
|
| 271 |
+
|
| 272 |
+
# Uncomment and set this to true to prevent bad or bogus move sequences
|
| 273 |
+
# in the history leading to this position from affecting KataGo's move choices.
|
| 274 |
+
# Same as analysisIgnorePreRootHistory (see above) but applies to actual play.
|
| 275 |
+
# You can enable this if KataGo is being asked to play from positions that it did not
|
| 276 |
+
# choose the moves to reach.
|
| 277 |
+
# ignorePreRootHistory = false
|
| 278 |
+
|
| 279 |
+
# ===========================================================================
|
| 280 |
+
# Search limits
|
| 281 |
+
# ===========================================================================
|
| 282 |
+
|
| 283 |
+
# Terminology:
|
| 284 |
+
# "Playouts" is the number of new playouts of search performed each turn.
|
| 285 |
+
# "Visits" is the same as "Playouts" but also counts search performed on
|
| 286 |
+
# previous turns that is still applicable to this turn.
|
| 287 |
+
# "Time" is the time in seconds.
|
| 288 |
+
|
| 289 |
+
# For example, if KataGo searched 200 nodes on the previous turn, and then
|
| 290 |
+
# after the opponent's reply, 50 nodes of its search tree was still valid,
|
| 291 |
+
# then a visit limit of 200 would allow KataGo to search 150 new nodes
|
| 292 |
+
# (for a final tree size of 200 nodes), whereas a playout limit of of 200
|
| 293 |
+
# would allow KataGo to search 200 nodes (for a final tree size of 250 nodes).
|
| 294 |
+
|
| 295 |
+
# Additionally, KataGo may also move before than the limit in order to
|
| 296 |
+
# obey time controls (e.g. byo-yomi, etc) if the GTP controller has
|
| 297 |
+
# told KataGo that the game has is being played with a given time control.
|
| 298 |
+
|
| 299 |
+
# Limits for search on the current turn.
|
| 300 |
+
# If commented out or unspecified, the default is to have no limit.
|
| 301 |
+
maxVisits = 500
|
| 302 |
+
# maxPlayouts = 300
|
| 303 |
+
# maxTime = 10.0
|
| 304 |
+
|
| 305 |
+
# Ponder on the opponent's turn?
|
| 306 |
+
ponderingEnabled = false
|
| 307 |
+
|
| 308 |
+
# Limits for search when pondering on the opponent's turn.
|
| 309 |
+
# If commented out or unspecified, the default is to have no limit.
|
| 310 |
+
# Limiting the maximum time is recommended so that KataGo won't burn CPU/GPU
|
| 311 |
+
# forever and/or run out of RAM if left unattended while pondering is enabled.
|
| 312 |
+
# maxVisitsPondering = 5000
|
| 313 |
+
# maxPlayoutsPondering = 3000
|
| 314 |
+
maxTimePondering = 60.0
|
| 315 |
+
|
| 316 |
+
|
| 317 |
+
# ------------------------------
|
| 318 |
+
# Other search limits and behavior
|
| 319 |
+
# ------------------------------
|
| 320 |
+
|
| 321 |
+
# Approx number of seconds to buffer for lag for GTP time controls - will
|
| 322 |
+
# move a bit faster assuming there is this much lag per move.
|
| 323 |
+
lagBuffer = 1.0
|
| 324 |
+
|
| 325 |
+
# YOU PROBABLY WANT TO TUNE THIS PARAMETER!
|
| 326 |
+
# The number of threads to use when searching. On powerful GPUs the optimal
|
| 327 |
+
# threads may be much higher than the number of CPU cores you have because
|
| 328 |
+
# many threads are needed to feed efficient large batches to the GPU.
|
| 329 |
+
#
|
| 330 |
+
# Run "./katago benchmark" to tune this parameter and test the effect
|
| 331 |
+
# of changes to any of other parameters.
|
| 332 |
+
numSearchThreads = 32
|
| 333 |
+
|
| 334 |
+
# Play a little faster if the opponent is passing, for human-friendliness.
|
| 335 |
+
# Comment these out to disable them, such as if running a controlled match
|
| 336 |
+
# where you are testing KataGo with fixed compute per move vs other bots.
|
| 337 |
+
searchFactorAfterOnePass = 0.50
|
| 338 |
+
searchFactorAfterTwoPass = 0.25
|
| 339 |
+
|
| 340 |
+
# Play a little faster if super-winning, for human-friendliness.
|
| 341 |
+
# Comment these out to disable them, such as if running a controlled match
|
| 342 |
+
# where you are testing KataGo with fixed compute per move vs other bots.
|
| 343 |
+
searchFactorWhenWinning = 0.40
|
| 344 |
+
searchFactorWhenWinningThreshold = 0.95
|
| 345 |
+
|
| 346 |
+
# ===========================================================================
|
| 347 |
+
# GPU settings
|
| 348 |
+
# ===========================================================================
|
| 349 |
+
# This section configures GPU settings.
|
| 350 |
+
#
|
| 351 |
+
# Maximum number of positions to send to a single GPU at once. The default
|
| 352 |
+
# value is roughly equal to numSearchThreads, but can be specified manually
|
| 353 |
+
# if running out of memory, or using multiple GPUs that expect to share work.
|
| 354 |
+
# nnMaxBatchSize = <integer>
|
| 355 |
+
|
| 356 |
+
# Controls the neural network cache size, which is the primary RAM/memory use.
|
| 357 |
+
# KataGo will cache up to (2 ** nnCacheSizePowerOfTwo) many neural net
|
| 358 |
+
# evaluations in case of transpositions in the tree.
|
| 359 |
+
# Increase this to improve performance for searches with tens of thousands
|
| 360 |
+
# of visits or more. Decrease this to limit memory usage.
|
| 361 |
+
# If you're happy to do some math - each neural net entry takes roughly
|
| 362 |
+
# 1.5KB, except when using whole-board ownership/territory
|
| 363 |
+
# visualizations, where each entry will take roughly 3KB. The number of
|
| 364 |
+
# entries is (2 ** nnCacheSizePowerOfTwo). (E.g. 2 ** 18 = 262144.)
|
| 365 |
+
# You can compute roughly how much memory the cache will use based on this.
|
| 366 |
+
# nnCacheSizePowerOfTwo = 20
|
| 367 |
+
|
| 368 |
+
# Size of mutex pool for nnCache is (2 ** this).
|
| 369 |
+
# nnMutexPoolSizePowerOfTwo = 16
|
| 370 |
+
|
| 371 |
+
# Randomize board orientation when running neural net evals? Uncomment and
|
| 372 |
+
# set to false to disable.
|
| 373 |
+
# nnRandomize = true
|
| 374 |
+
|
| 375 |
+
# If provided, force usage of a specific seed for nnRandomize.
|
| 376 |
+
# The default is to use a randomly generated seed.
|
| 377 |
+
# nnRandSeed = abcdefg
|
| 378 |
+
|
| 379 |
+
# Uncomment and set to true to force GTP to use the maximum board size for
|
| 380 |
+
# internal buffers for the neural net. This will make KataGo slower when
|
| 381 |
+
# evaluating small boards, but will avoid a lengthy initialization time on every
|
| 382 |
+
# change of board size due to having to re-size the neural net buffers on the GPU.
|
| 383 |
+
# This can be useful for example, for OGS's persistent bot mode that uses a single
|
| 384 |
+
# bot instance to handle multiple games and may thrash between different board sizes
|
| 385 |
+
# if there are concurrent games of multiple sizes.
|
| 386 |
+
# gtpForceMaxNNSize = false
|
| 387 |
+
|
| 388 |
+
# ------------------------------
|
| 389 |
+
# Multiple GPUs
|
| 390 |
+
# ------------------------------
|
| 391 |
+
# Set this to the number of GPUs to use or that are available.
|
| 392 |
+
# IMPORTANT: If more than 1, also uncomment the appropriate TensorRT
|
| 393 |
+
# or CUDA or OpenCL section.
|
| 394 |
+
numNNServerThreadsPerModel = 8
|
| 395 |
+
|
| 396 |
+
# ------------------------------
|
| 397 |
+
# TENSORRT GPU settings
|
| 398 |
+
# ------------------------------
|
| 399 |
+
# These only apply when using the TENSORRT version of KataGo.
|
| 400 |
+
|
| 401 |
+
# For one GPU: optionally uncomment this option and change if the GPU to
|
| 402 |
+
# use is not device 0.
|
| 403 |
+
# trtDeviceToUse = 0
|
| 404 |
+
|
| 405 |
+
# For two GPUs: Uncomment these options, AND set numNNServerThreadsPerModel above.
|
| 406 |
+
# Also, change their values if the devices you want to use are not 0 and 1.
|
| 407 |
+
# trtDeviceToUseThread0 = 0
|
| 408 |
+
# trtDeviceToUseThread1 = 1
|
| 409 |
+
|
| 410 |
+
# For three GPUs: Uncomment these options, AND set numNNServerThreadsPerModel above.
|
| 411 |
+
# Also, change their values if the devices you want to use are not 0 and 1 and 2.
|
| 412 |
+
# trtDeviceToUseThread0 = 0
|
| 413 |
+
# trtDeviceToUseThread1 = 1
|
| 414 |
+
# trtDeviceToUseThread2 = 2
|
| 415 |
+
|
| 416 |
+
# The pattern continues for additional GPUs.
|
| 417 |
+
|
| 418 |
+
# ------------------------------
|
| 419 |
+
# CUDA GPU settings
|
| 420 |
+
# ------------------------------
|
| 421 |
+
# These only apply when using the CUDA version of KataGo.
|
| 422 |
+
|
| 423 |
+
# For one GPU: optionally uncomment and change this if the GPU you want to
|
| 424 |
+
# use is not device 0
|
| 425 |
+
# cudaDeviceToUse = 0
|
| 426 |
+
|
| 427 |
+
# For two GPUs: Uncomment these options, AND set numNNServerThreadsPerModel above.
|
| 428 |
+
# Also, change their values if the devices you want to use are not 0 and 1.
|
| 429 |
+
# cudaDeviceToUseThread0 = 0
|
| 430 |
+
# cudaDeviceToUseThread1 = 1
|
| 431 |
+
|
| 432 |
+
# For three GPUs: Uncomment these options, AND set numNNServerThreadsPerModel above.
|
| 433 |
+
# Also, change their values if the devices you want to use are not 0 and 1 and 2.
|
| 434 |
+
cudaDeviceToUseThread0 = 0
|
| 435 |
+
cudaDeviceToUseThread1 = 1
|
| 436 |
+
cudaDeviceToUseThread2 = 2
|
| 437 |
+
cudaDeviceToUseThread3 = 3
|
| 438 |
+
cudaDeviceToUseThread4 = 4
|
| 439 |
+
cudaDeviceToUseThread5 = 5
|
| 440 |
+
cudaDeviceToUseThread6 = 6
|
| 441 |
+
cudaDeviceToUseThread7 = 7
|
| 442 |
+
|
| 443 |
+
# The pattern continues for additional GPUs.
|
| 444 |
+
|
| 445 |
+
# KataGo will automatically use FP16 or not based on the compute capability
|
| 446 |
+
# of your NVIDIA GPU. If you want to try to force a particular behavior
|
| 447 |
+
# you can uncomment these lines and change them to "true" or "false".
|
| 448 |
+
# cudaUseFP16 = auto
|
| 449 |
+
# cudaUseNHWC = auto
|
| 450 |
+
|
| 451 |
+
# ------------------------------
|
| 452 |
+
# OpenCL GPU settings
|
| 453 |
+
# ------------------------------
|
| 454 |
+
# These only apply when using the OpenCL version of KataGo.
|
| 455 |
+
|
| 456 |
+
# Uncomment and set to true to tune OpenCL for every board size separately,
|
| 457 |
+
# rather than only the largest possible size.
|
| 458 |
+
# openclReTunePerBoardSize = false
|
| 459 |
+
|
| 460 |
+
# For one GPU: optionally uncomment and change this if the best device to use is guessed incorrectly.
|
| 461 |
+
# The default behavior tries to guess the 'best' GPU or device on your system to use, usually it will be a good guess.
|
| 462 |
+
# openclDeviceToUse = 0
|
| 463 |
+
|
| 464 |
+
# For two GPUs: Uncomment these two lines and replace X and Y with the device ids of the devices you want to use.
|
| 465 |
+
# It might NOT be 0 and 1, some computers will have many OpenCL devices. You can see what the devices are when
|
| 466 |
+
# KataGo starts up - it should print or log all the devices it finds.
|
| 467 |
+
# (AND also set numNNServerThreadsPerModel above)
|
| 468 |
+
# openclDeviceToUseThread0 = X
|
| 469 |
+
# openclDeviceToUseThread1 = Y
|
| 470 |
+
|
| 471 |
+
# For three GPUs: Uncomment these three lines and replace X and Y and Z with the device ids of the devices you want to use.
|
| 472 |
+
# It might NOT be 0 and 1 and 2, some computers will have many OpenCL devices. You can see what the devices are when
|
| 473 |
+
# KataGo starts up - it should print or log all the devices it finds.
|
| 474 |
+
# (AND also set numNNServerThreadsPerModel above)
|
| 475 |
+
# openclDeviceToUseThread0 = X
|
| 476 |
+
# openclDeviceToUseThread1 = Y
|
| 477 |
+
# openclDeviceToUseThread2 = Z
|
| 478 |
+
|
| 479 |
+
# The pattern continues for additional GPUs.
|
| 480 |
+
|
| 481 |
+
# KataGo will automatically use FP16 or not based on testing your GPU during
|
| 482 |
+
# tuning. If you want to try to force a particular behavior though you can
|
| 483 |
+
# uncomment this option and change it to "true" or "false". This is a fairly
|
| 484 |
+
# blunt setting - more detailed settings are testable by rerunning the tuner
|
| 485 |
+
# with various arguments (./katago tuner).
|
| 486 |
+
# openclUseFP16 = auto
|
| 487 |
+
|
| 488 |
+
# ------------------------------
|
| 489 |
+
# Eigen-specific settings
|
| 490 |
+
# ------------------------------
|
| 491 |
+
# These only apply when using the Eigen (pure CPU) version of KataGo.
|
| 492 |
+
|
| 493 |
+
# Number of CPU threads for evaluating the neural net on the Eigen backend.
|
| 494 |
+
#
|
| 495 |
+
# Default: numSearchThreads
|
| 496 |
+
# numEigenThreadsPerModel = X
|
| 497 |
+
|
| 498 |
+
# ===========================================================================
|
| 499 |
+
# Root move selection and biases
|
| 500 |
+
# ===========================================================================
|
| 501 |
+
# Uncomment and edit any of the below values to change them from their default.
|
| 502 |
+
|
| 503 |
+
# If provided, force usage of a specific seed for various random things in
|
| 504 |
+
# the search. The default is to use a random seed.
|
| 505 |
+
# searchRandSeed = hijklmn
|
| 506 |
+
|
| 507 |
+
# Temperature for the early game, randomize between chosen moves with
|
| 508 |
+
# this temperature
|
| 509 |
+
# chosenMoveTemperatureEarly = 0.5
|
| 510 |
+
|
| 511 |
+
# Decay temperature for the early game by 0.5 every this many moves,
|
| 512 |
+
# scaled with board size.
|
| 513 |
+
# chosenMoveTemperatureHalflife = 19
|
| 514 |
+
|
| 515 |
+
# At the end of search after the early game, randomize between chosen
|
| 516 |
+
# moves with this temperature
|
| 517 |
+
# chosenMoveTemperature = 0.10
|
| 518 |
+
|
| 519 |
+
# Subtract this many visits from each move prior to applying
|
| 520 |
+
# chosenMoveTemperature (unless all moves have too few visits) to downweight
|
| 521 |
+
# unlikely moves
|
| 522 |
+
# chosenMoveSubtract = 0
|
| 523 |
+
|
| 524 |
+
# The same as chosenMoveSubtract but only prunes moves that fall below
|
| 525 |
+
# the threshold. This setting does not affect chosenMoveSubtract.
|
| 526 |
+
# chosenMovePrune = 1
|
| 527 |
+
|
| 528 |
+
# Number of symmetries to sample (without replacement) and average at the root
|
| 529 |
+
# rootNumSymmetriesToSample = 1
|
| 530 |
+
|
| 531 |
+
# Using LCB for move selection?
|
| 532 |
+
# useLcbForSelection = true
|
| 533 |
+
|
| 534 |
+
# How many stdevs a move needs to be better than another for LCB selection
|
| 535 |
+
# lcbStdevs = 5.0
|
| 536 |
+
|
| 537 |
+
# Only use LCB override when a move has this proportion of visits as the
|
| 538 |
+
# top move.
|
| 539 |
+
# minVisitPropForLCB = 0.15
|
| 540 |
+
|
| 541 |
+
# ===========================================================================
|
| 542 |
+
# Internal params
|
| 543 |
+
# ===========================================================================
|
| 544 |
+
# Uncomment and edit any of the below values to change them from their default.
|
| 545 |
+
|
| 546 |
+
# Scales the utility of winning/losing
|
| 547 |
+
# winLossUtilityFactor = 1.0
|
| 548 |
+
|
| 549 |
+
# Scales the utility for trying to maximize score
|
| 550 |
+
# staticScoreUtilityFactor = 0.10
|
| 551 |
+
# dynamicScoreUtilityFactor = 0.30
|
| 552 |
+
|
| 553 |
+
# Adjust dynamic score center this proportion of the way towards zero,
|
| 554 |
+
# capped at a reasonable amount.
|
| 555 |
+
# dynamicScoreCenterZeroWeight = 0.20
|
| 556 |
+
# dynamicScoreCenterScale = 0.75
|
| 557 |
+
|
| 558 |
+
# The utility of getting a "no result" due to triple ko or other long cycle
|
| 559 |
+
# in non-superko rulesets (-1 to 1)
|
| 560 |
+
# noResultUtilityForWhite = 0.0
|
| 561 |
+
|
| 562 |
+
# The number of wins that a draw counts as, for white. (0 to 1)
|
| 563 |
+
# drawEquivalentWinsForWhite = 0.5
|
| 564 |
+
|
| 565 |
+
# Exploration constant for mcts
|
| 566 |
+
# cpuctExploration = 1.0
|
| 567 |
+
# cpuctExplorationLog = 0.45
|
| 568 |
+
|
| 569 |
+
# Parameters that control exploring more in volatile positions, exploring
|
| 570 |
+
# less in stable positions.
|
| 571 |
+
# cpuctUtilityStdevPrior = 0.40
|
| 572 |
+
# cpuctUtilityStdevPriorWeight = 2.0
|
| 573 |
+
# cpuctUtilityStdevScale = 0.85
|
| 574 |
+
|
| 575 |
+
# FPU reduction constant for mcts
|
| 576 |
+
# fpuReductionMax = 0.2
|
| 577 |
+
# rootFpuReductionMax = 0.1
|
| 578 |
+
# fpuParentWeightByVisitedPolicy = true
|
| 579 |
+
|
| 580 |
+
# Parameters that control weighting of evals based on the net's own
|
| 581 |
+
# self-reported uncertainty.
|
| 582 |
+
# useUncertainty = true
|
| 583 |
+
# uncertaintyExponent = 1.0
|
| 584 |
+
# uncertaintyCoeff = 0.25
|
| 585 |
+
|
| 586 |
+
# Explore using optimistic policy
|
| 587 |
+
# rootPolicyOptimism = 0.2
|
| 588 |
+
# policyOptimism = 1.0
|
| 589 |
+
|
| 590 |
+
# Amount to apply a downweighting of children with very bad values relative
|
| 591 |
+
# to good ones.
|
| 592 |
+
# valueWeightExponent = 0.25
|
| 593 |
+
|
| 594 |
+
# Slight incentive for the bot to behave human-like with regard to passing at
|
| 595 |
+
# the end, filling the dame, not wasting time playing in its own territory,
|
| 596 |
+
# etc., and not play moves that are equivalent in terms of points but a bit
|
| 597 |
+
# more unfriendly to humans.
|
| 598 |
+
# rootEndingBonusPoints = 0.5
|
| 599 |
+
|
| 600 |
+
# Make the bot prune useless moves that are just prolonging the game to
|
| 601 |
+
# avoid losing yet.
|
| 602 |
+
# rootPruneUselessMoves = true
|
| 603 |
+
|
| 604 |
+
# Apply bias correction based on local pattern keys
|
| 605 |
+
# subtreeValueBiasFactor = 0.45
|
| 606 |
+
# subtreeValueBiasWeightExponent = 0.85
|
| 607 |
+
|
| 608 |
+
# Use graph search rather than tree search - identify and share search for
|
| 609 |
+
# transpositions.
|
| 610 |
+
# useGraphSearch = true
|
| 611 |
+
|
| 612 |
+
# How much to shard the node table for search synchronization
|
| 613 |
+
# nodeTableShardsPowerOfTwo = 16
|
| 614 |
+
|
| 615 |
+
# How many virtual losses to add when a thread descends through a node
|
| 616 |
+
# numVirtualLossesPerThread = 1
|
| 617 |
+
|
| 618 |
+
# Improve the quality of evals under heavy multithreading
|
| 619 |
+
# useNoisePruning = true
|
| 620 |
+
|
| 621 |
+
# ===========================================================================
|
| 622 |
+
# Automatic avoid patterns
|
| 623 |
+
# ===========================================================================
|
| 624 |
+
# The parameters in this section provide a way to bias away from moves that match
|
| 625 |
+
# patterns that this instance of KataGo has played in previous games, by auto-saving
|
| 626 |
+
# moves to a directory and then auto-loading and biasing against them each new game.
|
| 627 |
+
# Uncomment them to use them. When using this feature, all parameters must be specified.
|
| 628 |
+
|
| 629 |
+
# Different board sizes are tracked separately, but all board sizes share the same
|
| 630 |
+
# parameters by default. Every parameter *except* for autoAvoidRepeatDir and
|
| 631 |
+
# autoAvoidRepeatSaveChunkSize can be overridden per board size,
|
| 632 |
+
# e.g. "autoAvoidRepeatMinTurnNumber13x13". You must ALSO specify the
|
| 633 |
+
# defaults even if you have specified board-size-specific values.
|
| 634 |
+
|
| 635 |
+
# Directory to auto-save moves KataGo plays, to avoid them in future games.
|
| 636 |
+
# You can create a new empty directory and put its path here.
|
| 637 |
+
# If you run parallel instances of KataGo, use different directories if you
|
| 638 |
+
# want them not to share their biases, use the same directory if you want
|
| 639 |
+
# all of them to bias away from past moves that any of them have played.
|
| 640 |
+
# KataGo will also automatically DELETE old data in this directory, so it is
|
| 641 |
+
# recommended that if you do share the same directory between parallel instances,
|
| 642 |
+
# that they all use the same settings that affect data saving/deletion.
|
| 643 |
+
# autoAvoidRepeatDir = PATH_TO_NEW_DIRECTORY
|
| 644 |
+
|
| 645 |
+
# Penalize this much utility per matching move.
|
| 646 |
+
# Values that are too large may lead to bad play. The value of 0.004 is fairly large
|
| 647 |
+
# and might be large enough to result in some early weird/bad moves when trying
|
| 648 |
+
# to avoid past games' moves if enough games begin the same way. You can experiment with it.
|
| 649 |
+
# autoAvoidRepeatUtility = 0.004
|
| 650 |
+
|
| 651 |
+
# Per each new move saved, exponentially decay prior saved moves by this factor.
|
| 652 |
+
# This way, the bias against moves from many games ago is gradually phased out.
|
| 653 |
+
# For example, 0.9995 = 1 - 1/2000, so would be roughly 2000 prior moves worth of
|
| 654 |
+
# penalty weight remembered, in steady state. Depending on what turn number range
|
| 655 |
+
# you are saving, this might equate to a different number of games For example
|
| 656 |
+
# saving the first 50 moves per game would make this roughly 2000 / 50 = 40 games
|
| 657 |
+
# worth of memory.
|
| 658 |
+
# autoAvoidRepeatLambda = 0.9995
|
| 659 |
+
|
| 660 |
+
# Affects data saving/deletion.
|
| 661 |
+
# When the number of saved moves exceeds this, outright delete them to avoid too many
|
| 662 |
+
# files and disk space building up. Also may affect the speed of saving/loading on start
|
| 663 |
+
# of each game if this is set large and a lot of data builds up.
|
| 664 |
+
# autoAvoidRepeatMaxPoses = 10000
|
| 665 |
+
|
| 666 |
+
# Affects data saving/deletion.
|
| 667 |
+
# Only save data for moves within this turn number range of those games.
|
| 668 |
+
# E.g. setting autoAvoidRepeatMinTurnNumber to a number like 4 or 5 would tend to make
|
| 669 |
+
# KataGo not develop a bias against the initial 3-4 and 4-4 corner moves in almost every game.
|
| 670 |
+
# autoAvoidRepeatMinTurnNumber = 0
|
| 671 |
+
# autoAvoidRepeatMaxTurnNumber = 50
|
| 672 |
+
|
| 673 |
+
# Affects data saving/deletion.
|
| 674 |
+
# Within a single run of a program, wait to accumulate this many samples
|
| 675 |
+
# (possibly across multiple clear_boards/games) before saving the data.
|
| 676 |
+
# Can help to avoid writing too many small files to disk, especially when GTP is used
|
| 677 |
+
# in a way that clears the board very frequently (e.g. gtp2ogs pooled manager).
|
| 678 |
+
# autoAvoidRepeatSaveChunkSize = 200
|
| 679 |
+
|
| 680 |
+
# ===========================================================================
|
| 681 |
+
# Avoid SGF patterns
|
| 682 |
+
# ===========================================================================
|
| 683 |
+
# The parameters in this section provide a way to avoid moves that follow
|
| 684 |
+
# specific patterns based on a set of SGF files loaded upon startup.
|
| 685 |
+
# This is basically the same as the above "Automatic avoid patterns" section
|
| 686 |
+
# above except you supply your own SGF files to avoid moves from.
|
| 687 |
+
# Uncomment them to use this feature. Additionally, if the SGF file
|
| 688 |
+
# contains the string %SKIP% in a comment on a move, that move will be
|
| 689 |
+
# ignored for this purpose.
|
| 690 |
+
|
| 691 |
+
# Load SGF files from this directory when the engine is started
|
| 692 |
+
# (only on startup, will not reload unless engine is restarted)
|
| 693 |
+
# avoidSgfPatternDirs = path/to/directory/with/sgfs/
|
| 694 |
+
# You can also surround the file path in double quotes if the file path contains trailing spaces or hash signs.
|
| 695 |
+
# Within double quotes, backslashes are escape characters.
|
| 696 |
+
# avoidSgfPatternDirs = "path/to/directory/with/sgfs/"
|
| 697 |
+
|
| 698 |
+
# Penalize this much utility per matching move.
|
| 699 |
+
# Set this negative if you instead want to favor SGF patterns instead of
|
| 700 |
+
# penalizing them. This number does not need to be large, even 0.001 will
|
| 701 |
+
# make a difference. Values that are too large may lead to bad play.
|
| 702 |
+
# avoidSgfPatternUtility = 0.001
|
| 703 |
+
|
| 704 |
+
# Optional - load only the newest this many files
|
| 705 |
+
# avoidSgfPatternMaxFiles = 20
|
| 706 |
+
|
| 707 |
+
# Optional - Penalty is multiplied by this per each older SGF file, so that
|
| 708 |
+
# old SGF files matter less than newer ones.
|
| 709 |
+
# avoidSgfPatternLambda = 0.90
|
| 710 |
+
|
| 711 |
+
# Optional - pay attention only to moves made by players with this name.
|
| 712 |
+
# For example, set it to the name that your bot's past games will show up
|
| 713 |
+
# as in the SGF, so that the bot will only avoid repeating moves that itself
|
| 714 |
+
# made in past games, not the moves that its opponents made.
|
| 715 |
+
# avoidSgfPatternAllowedNames = my-ogs-bot-name1,my-ogs-bot-name2
|
| 716 |
+
|
| 717 |
+
# Optional - Ignore moves in SGF files that occurred before this turn number.
|
| 718 |
+
# avoidSgfPatternMinTurnNumber = 0
|
| 719 |
+
|
| 720 |
+
# For more avoid patterns:
|
| 721 |
+
# You can also specify a second set of parameters, and a third, fourth,
|
| 722 |
+
# etc. by numbering 2,3,4,...
|
| 723 |
+
#
|
| 724 |
+
# avoidSgf2PatternDirs = ...
|
| 725 |
+
# avoidSgf2PatternUtility = ...
|
| 726 |
+
# avoidSgf2PatternMaxFiles = ...
|
| 727 |
+
# avoidSgf2PatternLambda = ...
|
| 728 |
+
# avoidSgf2PatternAllowedNames = ...
|
| 729 |
+
# avoidSgf2PatternMinTurnNumber = ...
|
| 730 |
+
|