Функция оценки - Evaluation function

An функция оценки, также известный как функция эвристической оценки или статическая оценочная функция, это функция, используемая игровыми компьютерными программами для оценки ценности или качества позиции (обычно в листе или оконечном узле) в дереве игры. Дерево таких оценок обычно является частью минимакс или связанная парадигма поиска, которая возвращает конкретный узел и его оценку в результате поочередного выбора наиболее благоприятного хода для стороны, находящейся на ходу, на каждом уровне дерева игры. Значение представляет собой квантованный скаляр, часто в птысяч стоимости игровой фишки, такой как камень в го или пешка в шахматах. п могут быть десятые, сотые или другие удобные дроби.

Предполагается, что значение представляет относительную вероятность выигрыша, если дерево игры было расширено от этого узла до конца игры. Функция смотрит только на текущую позицию (то есть на какие промежутки находятся части и их отношения друг к другу) и не принимает во внимание историю положения или исследует возможные перемещения узла вперед (следовательно, статические). Это означает, что для динамических позиций, где существуют тактические угрозы, функция оценки не будет точной оценкой позиции. Эти должности называются не-неподвижный; им требуется хотя бы ограниченное расширение поиска, называемое поиск покоя устранять угрозы до оценки. Некоторые значения, возвращаемые оценочными функциями, являются абсолютными, а не эвристическими, если на узле происходит выигрыш, проигрыш или ничья.

Аналитических или теоретических моделей оценочных функций для нерешенных игр не существует, и такие функции не являются полностью специальными. Состав оценочных функций определяется эмпирически путем вставки функции-кандидата в автомат и оценки ее последующей работы. В настоящее время существует значительный объем свидетельств для нескольких игр, таких как шахматы, сёги и т.д., в отношении общего состава оценочных функций для них.

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

В функции оценки существует сложная взаимосвязь между поиском и знаниями. Более глубокий поиск способствует меньшему количеству краткосрочных тактических факторов и более тонким долгосрочным позиционным мотивам в оценке. Существует также компромисс между эффективностью закодированных знаний и вычислительной сложностью: вычисление подробных знаний может занять так много времени, что производительность снижается, поэтому приближения к точным знаниям часто лучше. Поскольку функция оценки зависит от номинальной глубины поиска, а также от расширений и сокращений, используемых при поиске, не существует общей или автономной формулировки для функции оценки. Функцию оценки, которая хорошо работает в одном приложении, обычно необходимо существенно перенастроить для эффективной работы в другом приложении.

Компьютеризированные игры с оценочными функциями включают: шахматы, идти, сёги (Японские шахматы), Отелло, шестнадцатеричный, и шашки. Некоторые игры вроде крестики-нолики находятся решительно решено, и не требуют поиска или оценки, поскольку доступно дискретное дерево решений.

В шахматы

Оценочные функции в шахматах состоят из члена материального баланса, который доминирует при оценке, плюс набор позиционных членов, которые обычно составляют не больше, чем стоимость пешки, хотя в некоторых позициях позиционные члены могут быть намного больше, например, когда мат неизбежен . Функция оценки также неявно кодирует значение права на ход, которое может варьироваться от небольшой доли пешки до победы или поражения. В эндшпиле можно построить позиции, в которых кто бы ни пошел, побеждает, хотя в остальном позиция сбалансирована; также возможно построить позиции, где тот, кто должен двигаться, проигрывает (Цугцванг).

Функция оценки для шахматы может принять форму

  • c1 * материал + c2 * мобильность + c3 * безопасность короля + c4 * центр управления + c5 * пешечная структура + c6 * король тропизм + ...

Каждый член представляет собой вес, умноженный на коэффициент различия: значение материала или позиционного балла белых минус баллы черных. Оценка материала определяется путем присвоения каждой фишке стоимости в закладных. Стандартные значения: Ферзь = 9, Ладья = 5; Рыцарь или Слон = 3; Пешка = 1; королю присваивается произвольно большое значение, обычно превышающее общую стоимость всех остальных фигур. Имеет значение не только абсолютная ценность материала, но и соотношение материального материала белых и черных: жертва пешки в дебюте может дать позиционное преимущество (соотношение материалов практически не затронуто), но плюс пешки в короле и Для победы обычно достаточно пешечного эндшпиля (большое соотношение материала). Это соотношение обычно реализуется как бонус за размен в соответствии с практическим правилом: «разменивайте фигуры, но не пешки, когда впереди, и наоборот, когда позади». Оценка мобильности - это количество доступных игроку разрешенных ходов или, альтернативно, сумма количества клеток, атакованных или защищаемых каждой фигурой, включая области, занятые дружественными или противостоящими фигурами. Эффективная мобильность или количество «безопасных» мест, куда может переместиться фигура, также может быть принято во внимание. Эффективная мобильность королевы часто очень мала, хотя количество ее разрешенных ходов может быть довольно большим. Оценка безопасности короля - это набор бонусов и штрафов, оцениваемых в зависимости от местоположения короля и конфигурации пешек и фигур, прилегающих к королю или перед ним, а также противостоящих фигур, расположенных на пространствах вокруг короля. Контроль за центром определяется тем, сколько пешек и фигур занимают или несут на четырех центральных клетках, а иногда и на 12 клетках расширенного центра. Пешечная структура - это набор штрафов и бонусов за различные сильные и слабые стороны пешечной структуры, например, штрафы за сдвоенные и изолированные пешки. Тропизм короля - это бонус за близость (или штраф за расстояние) определенных фигур, особенно ферзей и рыцарей, к противостоящему королю.

Веса c1 и т. Д. Не обязательно постоянны - это коэффициенты приложения, которые могут меняться в зависимости от стадии игры (дебют, середина игры, эндшпиль), фигур на доске (например, наличия или отсутствия ферзей), других характеристик поля. позицию, стратегию или планы высокого уровня (например, назначьте больший вес фигурам, стоящим на полях вокруг противостоящего короля, если план представляет собой атаку на королевском фланге).

Направленность и, следовательно, соответствующие термины и веса оценочной функции различаются в зависимости от стадии игры. В дебюте преобладают развитие легких фигур, рокировка и безопасность короля, а также контроль над центром. Штрафы обычно назначаются за неразвитые фигуры и отложенную рокировку. В эндшпиле доминирующим фактором является либо превращение пешки, либо мат с фигурами. В ситуациях матов важными факторами являются расстояние целевого короля от края или угла доски, а также близость короля и матовых фигур к противоположному королю. Для королевских и пешечных эндшпилей важными факторами являются близость королей к пешкам, продвижение пешек и контроль ферзевого поля (полей).

Уравнение представляет собой концептуальную модель. В конкретной реализации каждый составной псевдочлен может быть представлен от нескольких до, возможно, сотен отдельных терминов, каждый со своим собственным весом или вычисленным значением. Например, пешечная структура может иметь термины для изолированного, удвоенного, обратного, продвинутого, проходного, защищенного прохода, связного прохода, лунок, полуоткрытых и открытых вертикалей, пешечного большинства, фаланг и многих других схем. Другими частными факторами, которые часто учитываются, являются: развитие мелких фигур, ладьи на открытых линиях или седьмой горизонтали, сдвоенные ладьи, кони форпоста (кони в центральных местах, защищенные пешкой и не подверженные атаке пешкой противника), владение пары слонов, слонов на длинных диагоналях, фигур, занимающих или несущих пространство вокруг противостоящего короля, и подвижности королей (короли не должны быть «стесненными», следовательно, могут иметь мат на ходу). Некоторые термины, такие как безопасность короля в эндшпиле с небольшим количеством фигур, можно и нужно игнорировать в зависимости от контекста.

Термины, составляющие некоторые факторы, такие как безопасность короля, комбинируются нелинейно - одна слабость в безопасности короля, такая как открытая линия рядом с королем, может быть оштрафована, например, пешкой 1/4, но может потребоваться штраф за две слабости. одна или даже две полные пешки и три слабости по фигуре, ладье или даже больше, потому что мат становится вероятной возможностью. Факторы, связанные с продвижением пешки и повышением, также сочетаются нелинейно.

Типичные значения нескольких пешек, присваиваемые фигурам, также не являются постоянными, но зависят от контекста: неразвитые фигуры стоят гораздо меньше, как и фигуры с ограниченной подвижностью по любой причине: слоны, ограниченные своими пешками («плохой слон») ; кони теряют ценность, поскольку позиция очищается от фигур, а слоны и ладьи приобретают ценность; ферзи стоят значительно больше, если противостоящий король не защищен от шахов.

Функции оценки обычно содержат от десятков до сотен отдельных терминов, а оценка позиции обычно варьируется от плюс-минус небольшой доли пешки. Более высокие оценки указывают на материальный дисбаланс или на то, что выигрыш материала обычно неизбежен. Очень большие оценки могут указывать на неизбежность мата.

На практике эффективные функции оценки создаются не путем постоянного расширения списка оцениваемых параметров, а путем тщательной настройки весов относительно друг друга для скромного набора параметров, таких как описанные выше. С этой целью используются примерные позиции из мастер-игр, а эффективность функции оценки измеряется процентом выбранных ходов, которые согласуются с выбором мастеров.

Штучно-квадратные столы

Важным методом оценки, по крайней мере, с начала 1990-х годов, является использование для оценки таблиц сдельной стоимости (также называемых таблицами сдельной стоимости). Каждая таблица представляет собой набор из 64 значений, соответствующих квадратам шахматной доски. Для каждой фигуры есть отдельная таблица: король, ферзь, конь, слон, ладья, пешка. Существует отдельный (перевернутый) набор столов для противостоящих фигур. Значения в таблицах - это бонусы / штрафы за расположение каждой части на каждой клетке. Эти значения представляют собой совокупность множества неуловимых факторов, которые трудно количественно оценить аналитически. Базовые столы могут быть построены на основе принципов развития, центрального управления, безопасности короля и т. Д. В программах мастер-уровня и выше, столы строятся из композиции позиций, занимаемых фигурами в мастер-играх, адаптированных для приложения. Например, рыцари редко встречаются на левом и правом краях доски в мастер-играх, поэтому можно назначить значение штрафа этим ячейкам таблицы конь-квадрат пропорционально тому, как редко рыцарь встречается там в мастер-играх. Часто бывает два набора столов: один для дебюта, другой для эндшпиля; позиции средней игры интерполируются между ними. Авторы шахматных программ, как правило, хранят состав своих фигурных таблиц, а также методы, использованные для их создания, в секрете, потому что на их создание и тщательную настройку уходит много времени, усилий, тестирования и игрового опыта. предлагает конкурентное преимущество.

Оценка в поиске по дереву монте-карло

Шахматные автоматы нравятся Лила Чесс Зеро имеют существенно иную парадигму поиска и оценки, чем обычная алфавитно-минимаксная схема с оценкой листового узла. При поиске по дереву Монте-Карло пространство поиска всех вариаций от узла выбирается путем развертывания или прохождения игры до конца, поочередно выбирая случайный ход для каждой стороны. Результат (выигрыш, проигрыш или ничья) сохраняется в стартовом узле. Выбранный ход - это тот, который ведет к позиции с наибольшим количеством побед или наивысшим средним баллом, хотя с этим ходом не связано никакой конкретной линии игры. Аналогичная ситуация - это процент выигрышей / ничьих / поражений, накопленных для различных дебютов, используемых в основных играх. Если кто-то выбирает дебют, он будет склонен выбирать из тех, у которых наибольший процент выигрышей или самый большой процент выигрышей + ничьи. И аналогично для каждого варианта в дебюте, если доступна статистика. Слабость такой схемы в том, что самая сильная линия (линии) игры для каждой стороны может не быть частью этого дебюта - они могут быть узкими возможностями в дебюте, который в противном случае слаб.

Таким образом, «оценка» в реализациях monte-carlo - это скорее вероятность выигрыша, чем числовая оценка позиции.

In Go

Функции оценки в Идти учитывать контролируемую территорию, влияние камней, количество заключенных, а также жизни и смерти групп на доске.

Смотрите также

использованная литература

  • Шеннон, Клод, 1950, "Программирование компьютера для игры в шахматы", Philosophical Magazine, Ser.7, Vol. 41, № 314.
  • Слейт, Д. и Аткин, Л., 1983, «Шахматы 4.5, шахматная программа Северо-Западного университета» в книге «Шахматные навыки человека и машины», 2-е изд., Стр. 93–100. Спрингер-Верлаг, Нью-Йорк, штат Нью-Йорк.
  • Эбелинг, Карл, 1987, Все правильные ходы: Архитектура СБИС для шахмат (выдающаяся диссертация ACM), стр. 56–86. MIT Press, Кембридж, Массачусетс
  • Руководство по оценке Stockfish, [1]

внешние ссылки