Это не реально, просто представьте, что это происходит.
Computer A
это суперкомпьютер. Он может рассчитать 30 слоев в течение 20 секунд.
Computer B
это суперкомпьютер. Он может рассчитать 15 слоев в течение 20 секунд.
Они играют друг против друга в шахматы.
Эти 15 глубин действительно имеют значение? Я предполагаю, что в пределах этих 15 глубин может быть триллион способов избежать поражения или захвата важной части. Конечно, Computer A
знает больше. Но Computer B
, на мой взгляд, способен предсказать будущее достаточно далеко, чтобы достаточно хорошо защищаться.
engines
calculation
ply
RikTelner
источник
источник
Ответы:
Да, эти 15 глубин очень важны.
Рассмотрим эту позицию, которая произошла в « Бессмертной игре» Каспарова против Топалова.
Я проверил эту позицию с несколькими двигателями. Некоторые двигатели на глубине 15 не смогли обнаружить, что 24 ... cxd4 - проигрышный ход, и думали, что они выигрывают. Те же двигатели, на большей глубине, сыграли правильный ход 24 ... Kb6!
Например, даже такой мощный двигатель, как Stockfish 4, изначально на глубине 21, считает, что проигрышный ход 24 ... cxd4 является правильным.
Тот же самый двигатель, если его удерживать немного глубже, показывает 24 ... Kb6 на правильный ход.
Fritz 11 SE, на глубине 15, тоже провалился. Но он нашел правильный ход на глубине 16!
Также рассмотрим эту невероятную проблему, как положение, которое я нашел здесь .
Stockfish не смог найти выигрышную линию 1. Be2 +! до глубины 31 и до тех пор он думал, что это плохой ход. Я демонстрирую победу здесь. Дело в том, что черные находятся в цугсванге из-за угроз спаривания и должны либо отказаться от ферзя, либо переместить пешку, которая позволит белым создать проходную пешку и выиграть.
( 4 ... Qxe4 5. Nf6 + )
5. Nf4 Qg7 6. Nd3! Qxd4 7. c6! a5
( 7 ... Qxe4 8. Nf2 + Kf3 9. Nxe4 Kxe4 10. Kg2 Kd4 11. g4 hxg4 12. h5 Ke5 13. h6 Kf6 14. Kg3 Kg6 15. Kxg4 Kxh6 16. Kf5 Kg7 17. Ke6 Kf8 18. Kd7 Kf7 19. Kxc7 )
8. b5! а4 9. б6 cxb6 10. c7 Qxe4
( 10 ... Qc3 11. Nf2 # )
11. Nf2 + Kf3 12. Nxe4 1-0
Вот журнал движка от Stockfish 4. Как видите, он обнаруживает, что 1. Be2 + выигрывает, только на глубине 31!
источник
Взаимосвязь между повышением производительности и глубиной поиска в течение довольно долгого времени была активной областью исследований в сообществах компьютерных шахматных программистов. Была теория, что увеличение глубины поиска приводило к уменьшению отдачи в силе ... это, казалось, было подтверждено экспериментальными результатами.
С моей точки зрения, для этого есть интуитивная основа. Представьте себе ваше гипотетическое совпадение между двумя суперкомпьютерами, начиная с позиций в таблице конечных игр. Большинство принудительных побед в настольных базах происходят на горизонте менее (например) 50 слоев. Большинство оставшихся позиций разыгрывается, только небольшая часть решает выиграть на более высокой глубине. Компьютер, выполняющий поиск на 100 слоев, имел бы ограниченное преимущество перед компьютером с 50 слоями, потому что (как вы упоминаете) более слабая программа способна перемещаться практически по всем проигрышным линиям, причем все они происходят на более ограниченной глубине. Программа с 50 слоями фактически имела бы намного большее преимущество перед программой с 25 слоями ... как и программа с 4 слоями имеет еще большее преимущество перед программой с двумя слоями.
Впервые я столкнулся с этой концепцией около 15 лет назад, в серии статей о Темной Мысли , экспериментируя в глубоких поисках. Это отличное чтиво, если вы заинтересованы в компьютерных шахматах.
Хотя я не смог найти онлайн-ссылку, есть статья прошлого года на эту тему ...
Диого Р. Феррейра (2013). Влияние глубины поиска на силу игры в шахматы. ICGA Journal, Vol. 36, № 2
источник
Вопрос в следующем: вы имеете в виду 15/30 сгибов исчерпывающего поиска или номинальную глубину / итерацию 15/30 современного шахматного движка, такого как Stockfish?
Если вы имели в виду последнее, 15 слой не обязательно много значит. Современные шахматные движки сильно сокращают и уменьшают ходы, которые якобы плохие, поэтому может случиться так, что жертва, которая кажется плохой на первый взгляд, на номинальной глубине / итерации 15, фактически ищется только до глубины, например, 5-10. На глубине / итерации 30 движение, вероятно, все еще ищется только на уменьшенную глубину, но тогда это может быть эффективная глубина 15-20, которая может быть достаточной для определения того, что жертва действительно хороша, и как только двигатель обнаруживает, что перемещение является многообещающим, оно уменьшит уменьшение, так что перемещение ищется на глубину ближе к 30 слоям (или даже глубже из-за расширений и поиска покоя). Так что да, я думаю, что это может иметь значение, даже если комбинация находится в пределах номинального горизонта 15 слоев.
Если бы вы имели в виду исчерпывающий поиск, то я думаю, что механизм с глубиной 15 будет очень сильным, если у него будет хорошая функция оценки и какой-то поиск покоя (после оставленных узлов на глубине 15). Из-за уменьшения отдачи, я думаю, что выигрыш от удвоения глубины будет намного меньше, чем тот, который вы получили бы за матч между двумя современными двигателями с глубиной 15 и глубиной 30. Но это, конечно, только теоретический, поскольку исчерпывающий поиск Глубина 15 будет занимать на несколько порядков больше, чем обычно используют двигатели для достижения глубины / итерации 15, поэтому такой эксперимент будет возможен только на более низких глубинах.
источник
FWIW Когда ARM был новым, я написал оптимизированную программу исчерпывающего поиска ARM с оценкой позиции только материала после сгиба 1.
Я использовал приемы с оптимизированным машинным кодом, итеративным углублением, альфа-бета-окном на отсортированных ходах (почти все позиции имели значение 0, поэтому получили почти оптимальное альфа-бета-сокращение) и хэш-таблицы, которые уменьшали коэффициент ветвления до гораздо меньшего, чем теоретический квадратный корень для альфа-беты, обычно около 4 в худшей части игры.
В то время, когда я боролся со стандартными программами, моя E6P-программа оказалась в ужасных позициях, но с дополнительным или двукратным полным поиском по сравнению с профессиональным программным обеспечением того времени (то есть, как правило, 6-слойным исчерпывающим + бездействующим поиском в худшей стадии, с до 12 сгибов по мере упрощения игры), она продолжала извиваться из фактической потери, несмотря на доверие своих противников. Почти все игры прошли через несколько часов, потому что противоборствующие программы не смогли победить.
Позже я оптимизировал его для StrongARM, где он перешел на 10 сгибов. Эта версия могла легко победить всех игроков, не являющихся шахматами, хотя, очевидно, ей не хватало какой-либо осведомленности о стратегии, поэтому известный комментарий применялся: да, это шахматные ходы, но это не шахматы!
Это было несколько лет назад, но я испытываю соблазн попробовать еще раз с более стратегической оценкой позиции на уровне 1 - и с Intel XEON теоретически в 10 000-100 000 раз быстрее (и с памятью хеш-таблицы в 30 раз больше), чем 4MIPS ARM2 Желудь Архимед.
По общему признанию не главное, но забавно играть.
источник
+1 слой оценивается + 55..70 ELO усиление (много исследований на эту тему)
Дело в том, что все эти «триллионы» были вычислены как A @ D = 30, и если A выбирает ход с выигрышным eval, это означает, что он вычислил все эти «триллионы», и независимо от того, какой из «триллионов» перемещает оппонент, ответьте - переместите все еще выигрывает
источник