Короче говоря, стандартный подход к настройке параметров шахматного движка заключается в следующем:
- Определите параметры
- Дайте параметрам номинальные (стартовые) значения
- Запустите двигатель, чтобы увидеть, как он работает
- Настройте значения параметра, чтобы попытаться улучшить его производительность
Затем повторяйте шаги 3 и 4, пока не достигнете своей цели в производительности.
Обычный подход к этому - создать лабораторию, в которой двигатели сталкиваются на турнирах по двигателям. Используются несколько игр, в которых движок воспроизводит оба цвета. Основные интересные турниры включают в себя запуск двигателя со значением параметра A против того же двигателя со значением параметра B.
Как вы, вероятно, можете догадаться, результаты этого подхода сильно зависят от:
- Параметры выбраны
- Как указаны параметры
- Как значения параметров меняются на протяжении всего тестирования
- Как работают двигатели (ограниченная глубина слоя, ограниченное время, чувствительность и т. Д.)
Этот подход также занимает много времени.
Более свежий (и инновационный подход) был разработан в 2010 году исследователями, использующими методы Генетического алгоритма, чтобы а) задавать параметры и б) настраивать значения параметров. Исследователи сначала запустили движок со стартовым номинальным набором значений параметров в сравнении с набором игр гроссмейстера, чтобы посмотреть, сможет ли он эффективно выбрать «лучший ход». «Лучший ход» был определен как ход гроссмейстера *. Везде, где это не удалось сделать, это было записано. Затем был опробован другой набор значений параметров и определена относительная производительность по сравнению с предыдущим прогоном.
Затем был применен программный подход к объединению значений параметров с использованием принципа генетического алгоритма выживания наиболее приспособленных. Здесь «наиболее подходящий» означает тот, который генерирует продукцию, которая наиболее близко соответствует идеалу. (Также случается, что это каламбур на статистическом методе регрессии по методу наименьших квадратов, который используется для оценки качества аппроксимации.)
Только после того, как будут найдены параметры двигателя, которые могут достаточно хорошо имитировать GM, начинается настоящая фаза турнира. На этом этапе различные наборы значений параметров снова сопоставляются друг с другом, на этот раз напрямую . Методы улучшения генетического алгоритма применяются для генерации последовательно лучших поколений двигателя.
В этом исследовательском проекте было использовано 36 параметров, включая все материальные значения фигур и многие из наиболее распространенных критериев стратегической оценки, таких как обратные пешки, слабые квадраты, слон и т.д. Однако исследователи добавили некоторые новые параметры, такие как «давление короля», значения «подвижности» для каждого вида фигуры, ладья на файле рядом с королем, ладья на полуоткрытом файле, ладья, атакующая короля на - / b- / g- / h-file, разделение между пройденной пешкой и защищающимся королем и многое другое.
К сожалению, исследователи не уточняют, как они придумали этот набор параметров, и какие альтернативные параметры они могли проверить и отклонить. Было бы разумно предположить, что они начали с гораздо большего набора и определили (методом проб и ошибок), какие из них оказали наибольшее влияние на производительность, а какие были незначительными или производными, и поэтому их можно было бы отбросить.
Если это звучит , как это могло бы быть полезным, вы можете найти исследования здесь .
* Протест о фазе подхода, исследователи использовали в порядке. В своем введении к Понимание шахматной ход за ходом , Джон Нанн выбрал «... трудно бороться игры между сильными гроссмейстерами ...» , чтобы проиллюстрировать свои темы. Затем он добавляет:
Читатели могут быть весьма удивлены, увидев количество знаков вопроса, которые украшают игры в этой книге. Конечно, вы могли бы подумать, с помощью всего тридцать игр, чтобы выбрать, это должно было легко найти некоторые звуковые игры. Тем не менее, я могу заверить вас, что это не так. ... можно придраться практически в любой сложной, упорной игре ... Я никогда не чувствовал, что моя игра была где-нибудь рядом с абсолютно точной, поэтому лично я не нахожу эти откровения тревожных. Однако некоторым может быть трудно признать, что шахматы, в которые играют люди, менее точны, чем считалось ранее.
Вопрос, который поднимает доктор Нанн, предполагает, что первоначальный подход исследователей к настройке параметров двигателя, требуя, чтобы они имитировали движения гроссмейстера, может быть ошибочным, потому что человеческая игра несовершенна . На самом деле хорошо известно, что двигатели уже играют лучше, чем люди .
Поэтому, возможно , лучший подход к установлению исходных параметров будет соответствовать новому двигателю от вышестоящего существующего двигателя .