English version | Русская версия  
 
Кветка логотип
Кветка

Программа для анализа шахматных партий
 
 

Настройки движка Critter.

Critter - один из сильнейших бесплатных шахматных движков. Он использует протокол UCI. То есть, сам движок представляет из себя консольное приложение, а для комфортной работы с ним необходима графическая оболочка, поддерживающая этот протокол (подойдёт, например, Кветка или Chessbase).

Здесь мы приведём все настройки, предоставляемые движком Critter версии 1.6. В будущих версиях они могут поменяться. К сожалению, авторы движка не публикуют их описания. Поэтому информация о некоторых настройках может быть приблизительной или неполной.

Движок может использовать дебютные книги как в своём собственном формате (.cbk) так и в формате Polyglot. К нему также можно подключить эндшпильные базы Гавиоты. Они существуют для 3-х, 4-х и 5-ти фигурных окончаний.

Одной из особенностей движка является то, что он может самообучаться на определённых позициях. Для этого он использует сессионный файл (Session File), куда, как я понимаю, он записывает информацию о просчитанном рейтинге отдельных позиций. Рейтинг при этом мог вычисляться достаточно долго.

Для изменения конкретной настройки движку необходимо передать команду

setoption name <имя_настройки> value <новое значение>
Подробнее про это можно прочитать в описании команды setoption протокола UCI.

Настройки

Большинство настроек движка подробно описаны в

OwnBook. Возможные значения: true, false.
Если настройка включена, то Critter будет использовать свою дебютную книгу. Она располагается в отдельном файле, путь к которому задаётся в настройке Book File. Значение по умолчанию: true.

Book File.
Имя файла с дебютной книгой. Critter поддерживает как свой собственный формат .cbk, так и формат дебютных книг от Polyglot (расширение .bin). Значение по умолчанию: book.cbk

Tablebase Usage. Возможные значения: Disable, Only At Root, Everywhere.
Указывает, в каких случаях будут использоваться эндшпильные базы.

  • Disable - базы никогда не используются.
  • Only At Root - поиск по базам производится только для текущей позиции на доске. В ходе дальнейшего анализа базы не используются. Из-за того, что доступ к базам занимает довольно долгое время, анализ с этой опцией зачастую работает быстрее.
  • Everywhere - поиск по базам производится на протяжении всего анализа. В среднем эта опция делает движок слабее. Однако она может быть полезна в режиме анализа позиции, когда время обдумывания хода не так важно.
Прежде чем движок сможет воспользоваться эндшпильными базами, их надо подключить, указав в настройке GaviotaTbPath путь к базам. Значение по умолчанию: Only At Root.

GaviotaTbPath.
Путь к папке, в которой расположены эндшпильные базы Гавиоты. Значение по умолчанию: \gtb.

GaviotaTbCompression. Возможные значения: uncompressed, cp1, cp2, cp3, cp4.
Метод, которым сжаты эндшпильные базы Гавиоты. Несжатые базы занимают гораздо больше места на диске, однако доступ к ним производится быстрее. В этом параметре необходимо указать тот метод сжатия, который используется в установленных базах, иначе движок не сможет к ним подключиться. Значение по умолчанию: cp4.

GaviotaTbCache. Возможные значения от 4 до 256.
Размер кэша в мегабайтах, который будет использоваться для хранения информации из эндшпильных баз Гавиоты. Чем больше значение GaviotaTbCache, тем быстрее в среднем будет производиться доступ к базам. Однако и памяти движок будет потреблять больше. Значение по умолчанию: 32.

Use Session File. Возможные значения: true, false.
Указывает, будет ли использоваться сессионный файл, который движок использует для самообучения. В него будет записываться информация об анализе позиций. Таким образом если эти позиции встретятся во время анализа в будущем, движок сможет воспользоваться уже просчитанными данными, что существенно усилит его игру. Значение по умолчанию: false.

Session File.
Имя сессионного файла. Значение по умолчанию: session.csf.

SF Size. Возможные значения от 2 до 1024.
Максимальный возможный размер сессионного файла. Измеряется в мегабайтах. Оптимальное значение этой настройки на разных системах может быть разным. При слишком маленьком значении сила игры может снизиться из-за того, что в файл способно поместиться не очень много информации. С другой стороны, при слишком большом значении сила игры снова может снизиться из-за медленного доступа к конкретной информации в файле. Некоторые пользователи рекомендуют устанавливать значение параметра SF Size в 16. Значение по умолчанию: 32.

SF Write Depth. Возможные значения от 2 до 32.
Указывает, какой глубины в полуходах должен достичь анализ позиции, прежде чем информация о ней начнёт записываться в сессионный файл. Чем больше значение, тем дольше придётся ждать. С другой стороны, оценка позиции при этом получится сильнее. Некоторые пользователи рекомендуют устанавливать параметр SF Write Depth следующим образом: если глубина, до которой вы собираетесь анализировать позицию, не выше 16, то параметр SF Write Depth должен быть равным половине этой глубины. В противном случае параметр SF Write Depth стоит указать на 8 ниже, чем глубина анализа. Значение по умолчанию: 8.

SF Material Limit. Возможные значения от 0 до 32.
Отключает запись в сессионный файл, когда материала в позиции становится меньше указанного значения. Если параметр равен нулю, то он игнорируется. Фигуры прибавляют следующие значения к материалу: конь/слон - 1, ладья - 3, ферзь - 6. Значение по умолчанию: 0.

SF Move Limit. Возможные значения от 0 до 999.
Отключает запись в сессионный файл после того, как в партии сделано указанное число ходов. Если параметр равен нулю, то он игнорируется. Значение по умолчанию: 0.

Resolve Score Drop. Возможные значения: true, false.
Эта настройка решает проблемы, связанные с тем, что в сессионный файл не записываются позиции со слишком высокими и слишком низкими оценками. Из-за этого каждый раз при анализе одной и той же позиции Critter может пересчитывать плохие ходы. Также он никогда не перезапишет информацию о слабом ходе, если сначала в анализе этот ход считался наилучшим.
Поскольку подобного рода проблемы могут возникнуть только при повторном анализе позиции, то настройку Resolve Score Drop не рекомендуется включать во время игры. Она имеет смысл только при анализе позиций. Значение по умолчанию: false.

Clear SF.
Эта команда используется для очищения сессионного файла.

King Safety Weight. Возможные значения от 0 до 100.
Этот параметр каким-то образом влияет на оценку безопасности короля при анализе позиции. Значение по умолчанию: 32.

Threads. Возможные значения от 1 до 32.
Число потоков, которые будут параллельно производить анализ. Чем больше значение настройки, тем быстрее анализируется позиция, а следовательно возрастает сила игры. С другой стороны, большое число потоков может "тормозить" систему. Также не имеет смысла устанавливать значение больше, чем число ядер в процессоре. По умолчанию число потоков устанавливается равным числу ядер процессора, на котором запущен движок.

Split Depth. Возможные значения от 4 до 15.
При использовании нескольких процессоров Critter ведёт себя следующим образом. Сначала анализ проводится одним потоком. Далее, через какое-то время анализ распараллеливается на несколько потоков. Параметр Split Depth указывает движку, когда анализ должен распараллелиться. Для достижения оптимальной силы игры на разных процессорах этот параметр может отличаться. Автор движка рекомендует придерживаться следующего правила: для двухъядерных процессоров установить параметр в 4, для 4-х ядерных - в 5 и далее с добавлением двух новых ядер параметр Split Depth следует увеличить на 1. Значение по умолчанию: 5.

UCI_Chess960. Возможные значения: true, false.
Если настройка включена, то Critter будет анализировать игру для шахмат Фишера.

MultiPV Возможные значения от 1 до 100.
Указывает, сколько рекомендуемых ходов должен выводить движок. Значение по умолчанию: 1.

Ponder Возможные значения: true, false.
Если настройка включена, движок переключается в режим, когда он может думать над позицией во время хода противника. В этом режиме Critter не начинает анализ сам по себе, для этого ему должна быть послана команда "go ponder" (см. описание команды go).

Hash Возможные значения от 8 до 1024.
Размер памяти, выделяемой для хранения хеш таблиц. Косвенно влияет на силу игры (больше памяти - сильнее игра). Измеряется в мегабайтах. Значение по умолчанию: 64.

Clear Hash.
Эта команда используется для очищения памяти, используемой для хранения хеш таблиц.

Бодягин Дмитрий (c) 2013
Если у вас есть какие-то дополнения или комментарии к тексту - пишите на info@kvetka.org.