Есть ли двигатель, который находит лучший «практичный» ход?


25

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


5
Очень интересный вопрос, но я думаю, что реализовать что-то подобное может быть сложно, потому что «практический» может сильно отличаться в зависимости от ситуации. Например, будет ли такой же ход одинаково практичным против соперника на 200 очков выше и на 200 очков ниже? А как насчет классической игры против блиц-игры?
Akavall

Кажется, вы хотите что-то ближе к expectimax, чем минимакс?
Мердад

Это напоминает мне о покере. Я думаю, что большинство покер-ботов всегда делают практические ходы, вместо того, чтобы принимать равновесие Нэша и пытаться делать теоретически лучшие ходы.
Пол

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

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

Ответы:


22

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

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


1
Спасибо, это похоже на то, что я ищу, но мой вопрос даже к игрокам с такими же способностями. Например, один ход может привести к победе 9/10 раз с учетом вероятных ходов, которые сделает противник.
Ари

3
@ Ари, это похоже. Сделайте два хода, один из которых приведет к ничьей, а другой может привести к победе в 90% случаев и проигрышу в оставшихся 10% времени. Двигатель с очень высокой настройкой презрения может выбрать последний (и проиграть против идеальной защиты).
Очарование

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

1
Может быть очень хорошо, если у другого игрока заканчивается время на их часах.
Ян Рингроз

@Ari Если ваш оппонент находится на том же уровне, что и вы, тогда, если вы можете выполнить мета-анализ линии (то есть не только решить, является ли она выигрышной, но и оценить, насколько вероятно, что ваш оппонент увидит, что она выигрывает), тогда они Возможно, я смогу проанализировать это.
накопление

6

Я понял, что этот вопрос относится в основном к стандартным шахматным движкам, которые используют минимаксные функции для оценки ходов. Однако такие шахматные движки, как alphazero, используют поиск по дереву Монте-Карло для имитации множества различных игр, поэтому они не только смотрят на лучшие возможные ходы. Вполне возможно, что они уже могут быть использованы, чтобы найти лучший «практический» ход, или что они могут быть адаптированы для этой цели. Например, алгоритм поиска Монте-Карло может быть обновлен, чтобы посмотреть на «разумные» ходы и смоделировать, что происходит.


2
Соответствующая ссылка en.chessbase.com/post/komodo-mcts-the-boa-constrictor-approach
JollyJoker

Но тогда вы должны запрограммировать «разумный» в алгоритм.
Инерционное невежество

1

На самом деле, нет.

Базы данных полезны, потому что они могут сказать вам, что ход часто разыгрывается, и каков результат, однако они не идеальны по разным причинам.

Fritz 12 (не уверен в более поздних версиях) имеет измеритель «жаркости», который говорит вам, насколько сложен вариант.

Нижняя граница. это сочетание вещей. Вы ищете ходы, где самые принципиальные ходы оказываются плохими. Ни один двигатель не может сказать вам это.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.