Как не использовать шахматный движок?

13

Как не использовать шахматный движок? Какие плохие практики при использовании шахматного движка и хорошие? Насколько достоверны их предложения и оценки?

Ferit
источник

Ответы:

20

Какова цель этого вопроса и ответа?

Я вижу много злоупотреблений движками в этом сообществе. Я вижу темы, в которых люди открывают «анализ» путем копирования результатов работы двигателя. Еще хуже, я видел открытие "анализа" путем вставки копии в первый ход!

Многие новички в этом сообществе считают, что двигатели дают наилучший ход в каждой позиции, потому что они бьют игроков.

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

Примечания: это очень длинный ответ. У меня, вероятно, много грамматических ошибок и опечаток. Также может быть возможно объяснить это более бегло или кратко. Итак, если вы считаете, что можете улучшить этот ответ, пожалуйста, предложите изменения, я был бы очень признателен.

Как работает двигатель? Что это за цифры в окне анализа?

Двигатели оценивают все позиции, используя разные метрики (что очень тесно связано с силой игры двигателей)

Например: двигатели имеют предопределенные значения для материалов, например, 1 балл за пешку, 3 балла за слона и т. Д.

Но это еще не все, они также используют более сложные метрики. Например: пройденная пешка 0,2 балла, пара слонов 0,1 балла и т. Д.

Таким образом, он оценивает все позиции, как это, и вставляет в дерево (если вы хотите узнать больше о дереве, пожалуйста, посмотрите на эту статью ).

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

Самый длинный путь в дереве - это глубина анализа. Поскольку каждый узел представляет позицию, глубина 2 равна 1 ходу.

Каковы сильные и слабые стороны двигателей по сравнению с людьми?

Двигатели абсолютно лучше в тактике по сравнению с людьми. Потому что тактика

  • преобразуются в бетон (материал, включая мат) преимущества в краткосрочной перспективе (как правило, менее чем за 10 ходов)
  • у компьютеров гораздо больше памяти по сравнению с людьми (может ли любой шахматист запомнить и оценить 10 ^ 3 различных продолжений в любой позиции за 1 минуту? Нет. Но компьютеры сегодня могут делать это более 10 ^ 12)
  • Компьютеры не делают ошибок вычислений (практически), но люди делают.

Люди абсолютно лучше в стратегии и позиционных оценках. Потому что:

  • в конце концов, движки используют метрики для оценки, которые абсолютно открыты для вопроса, например, нет правильной метрики для пары слонов или пешки.

  • мастер шахматистов гораздо лучше оценивает метрики (машины глупы)

  • люди гораздо сильнее подрезают, наше дерево поиска намного меньше (мы можем устранить множество ненужных позиций, в этом компьютеры не справляются)

Позвольте мне продемонстрировать это в этой позиции, которую 1200 игроков Эло может оценить ничью (по праву) за 3 секунды.

Комодо-9,3 глубина = 48, -17,61

Двигатель говорит, что это -17,61, увидев 24 движения вперед. Почему? Это так глупо? Разве он не может понять, что черный не может прогрессировать?

Да! Это так глупо! И вам нужно понять, что это ничья, а не двигатель, это инструмент для вас!

-17.61 является результатом оценки показателей. Является ли оценка неправильной? Нет, оценка правильная, если вы правильно ее интерпретируете . Движок суммирует метрики, которые дают -17,61, потому что у черного есть много материальных преимуществ. Интересно, что в этой позиции не хватает большого материального преимущества, и это та часть, которой вы должны помочь двигателю своим интеллектом.

Оценочные баллы не являются оценками позиции !!!

Есть только две вещи, которые можно рассматривать как оценку в выходе двигателя:

  • Мате в х
  • Ничья на 0,00

За исключением этих двух, все результаты оценки оценки основаны на мнении. Как и в позиции выше -17, оценка может быть оценена как ничья, это очень маловероятно, но возможно.

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

Как интерпретировать оценочные баллы?

Как я упоминал ранее, движки делают все возможное, чтобы использовать ограниченную память и вычислительную мощность. Поскольку они ограничены, движки говорят пользователям, насколько глубоко они зашли.

Представьте, что вы командир (двигатель) армии, и вы находитесь на открытой местности. В вашей армии 10 тысяч солдат. У вас есть 10 км (глубина поиска) прямой видимости, и вы видите вражеские силы на 9 км впереди, вы предполагаете (оцениваете) их количество как приблизительно 100 солдат, и вы решаете атаковать. Вы и ваша армия начинаете бежать к врагу. Но, приблизившись на 3 км к вражеским силам (получив на 3 км больше прямой видимости), вы внезапно видите на 100 000 больше противника и вдруг решаете, что эта битва проиграна.

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

Давайте вернемся к позиции выше и выясним, почему мы можем так легко оценить это как ничью, но компьютер не дает 0,00?

Двигатель рассчитал 24 хода глубоко, приятно. Но мы рассчитываем все возможные продолжения, до конца! Мы не быстрее компьютеров, но мы быстрее их. Потому что мы понимаем, что после проверки нескольких ходов все продолжения тривиальны, и сокращаем их все. Мы рассчитываем только несколько позиций и оцениваем их как ничью. Но двигатель рассчитывает тонны, потому что он не достаточно умен, чтобы понять его тривиальным для расчета всех этих позиций.

Теперь, как не использовать шахматные движки?

  • Как эндшпиль бог, как он все это знает
  • Как бог открытия, как он знает все это
  • Как бог стратегии, как он все это знает
  • Как тактический бог, он все это знает (как правило, все это знает, но есть исключения из-за эффекта горизонта)

Но использовать как:

  • Надежный помощник по поиску
  • Лучший тактик в мире
  • Сомнительный советник в стратегических / позиционных оценках

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

Читайте также


Примеры отказов двигателя для неудовлетворенных читателей

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

Топалов, Веселин - Широв, Алексей, Линарес
1 ... Bh3 !! - +
( 1 ... a3? )

Анализ игры Широва

Ferit
источник
1
@ Твои претензии точно не верны. Пожалуйста, поищите в Интернете свои претензии, вы увидите. Все, что я написал в этом ответе, относится к сегодняшним шахматам. В любом случае, я собираюсь дополнить свой ответ, покрывающий ваши претензии, конкретными ссылками, чтобы удовлетворить вас. Спасибо, что сообщили мне, что мне нужно обновить мой ответ.
Ferit
2
Я прочитал ваш пост полностью. Например, когда вы говорите об эффекте горизонта; в современном компьютере этого не произойдет. Конечно, эффект горизонта все еще присутствует, но он настолько далек, что по всем масштабам и целям игрока-человека (или, по крайней мере, игрока в возрасте до 2500 человек) он в основном отсутствует. Так что, если вы используете шахматный движок с 3000 с чем-то, а вы игроком до 2500, вы можете относиться к компьютеру как к эндшпилю, стратегическому и позиционному богу, как будто он все это знает. Компьютеры не решают шахматы, но они настолько сильны, что большинство из нас не может понять разницу
Муравей
2
Была игра So - Nakamura в последнем Кубке Sinquefield, где So выпал на подготовленную линию в King's Indian, которые (текущие) двигатели оценивают как +1, но на самом деле проигрывают белым.
Шут
3
Это вопрос-ответ вещь отличная. Почему все так без ума от этого? Парусник, я нашел этот пост действительно полезным. Спасибо чувак.
Джозеф Фара
2
Хороший ответ. Эффект горизонта все еще там. Многие проблемы с анализом двигателя, такие как распознавание минных полей, которые люди никогда не пересекают. Лучше, когда наша позиция защищена от патцеров (а у противника нет), чем получить таинственные 0,2 балла. Даже если бы они были богами, вы все равно не должны играть часто, это первая линия, поскольку это может быть крайне непрактично для людей. Также ужасная игра в эндшпиле при приближении к позициям в таблице. chess.stackexchange.com/questions/16461/…
hoacin