Первые шахматные машины не могли учиться на опыте, как это делают люди. Дети учатся каждый раз, когда получают мат: несмотря на проигрыш, они накапливают в памяти полезные навыки и знания. Между тем компьютеры снова и снова повторяли одну и ту же ошибку, и их одушевленные соперники быстро это улавливали и начинали использовать. Еще в 1980-е годы можно было, запомнив ходы и хронометраж, повторить всю предыдущую партию с компьютером и обыграть его точно так же, как в прошлый раз.
Хронометраж имеет значение, поскольку в каждую дополнительную микросекунду поиска компьютер может избрать другой ход. Человек, тратящий на ход одну минуту, вряд ли сыграет иначе, если дать ему на обдумывание не 60 секунд, а 61. А вот у компьютера каждая лишняя микросекунда уходит на углубление поиска, и в итоге машина делает более качественные ходы.
Кажущееся сходство между ранними шахматными программами и начинающими игроками — ловушка, частично обусловленная присущим людям желанием наделить компьютеры человеческим мышлением. Согласно парадоксу Моравека, компьютеры очень хорошо справляются с тем, что у людей вызывает больше всего проблем, — с шахматными расчетами. Но в то же время машины слабы в распознавании образов и оценке по аналогии, что, напротив, особенно хорошо удается нам. За исключением мата, почти каждый фактор, учитываемый при оценке позиции, зависит от множества других условий. Это обстоятельство наряду с низкой скоростью ранних компьютеров убедило экспертов в невозможности создания сильной программы типа А, основанной на грубой силе.
Они ошибались, хотя, чтобы понять это, потребовалось некоторое время. Многие первые программы представляли собой попытки использовать стратегию типа B для того, чтобы грамотно сократить дерево поиска так же, как это делают люди. Другие исследовательские группы решили взяться за более конкретную задачу — увеличение скорости поиска и, следовательно, его глубины, что всегда позволяет повысить шахматную силу машины предсказуемым образом.
Первая программа, способная компетентно играть в шахматы, была разработана в Массачусетском технологическом институте в конце 1950-х годов, на несколько лет раньше советской программы, побежденной Бронштейном. Программа Котока — Маккарти работала на машине IBM-7090 и использовала ряд методов, которые стали основой для всех последующих сильных алгоритмов, включая отсекающий алгоритм «альфа-бета» для ускорения поиска.
Ведущая советская команда разработчиков выбрала подход А, что довольно интересно, поскольку, в отличие от американцев, она была окружена сильными шахматистами. Алан Коток и Джон Маккарти оба играли довольно слабо и имели весьма романтические представления о шахматах. Для меня же выбор советскими программистами метода типа А, напротив, отражал глубокое понимание того, как построена сильная игра. Шахматы — очень точная игра, когда в нее играют на высоком уровне. Преимущества в одну пешку, как правило, бывает более чем достаточно для победы в партии между сильными игроками. Слабые игроки смотрят на игру сквозь призму собственных ограничений. Для новичков и профанов игра, с ее неожиданностями и обоюдными ошибками, похожа на американские горки, где маятник фортуны качается то в одну, то в другую сторону.
Если вы разрабатываете шахматную машину с таким романтическим видением игры, научная точность для вас менее важна, чем моменты озарения. Вы считаете, будто случайные промахи не так уж страшны, поскольку противник ответит вам тем же, — предположение, которое может обернуться самореализующимся пророчеством. Подход типа B предполагает, что вся система непредсказуема, поэтому нужно как можно раньше выбрать ходы, на которых следует сосредоточиться. Вместо того чтобы найти 20 или даже десять лучших ходов и исследовать их, программа Котока — Маккарти начинала всего с четырех. То есть она смотрела вперед на один полуход и выбирала четыре лучших варианта, затем находила по три лучших ответа на каждый из этих вариантов; далее искала на них по два лучших ответа и т. д., постепенно углубляя и сужая поиск.
Внешне это похоже на то, каким образом сильный человеческий игрок проводит шахматный анализ, но здесь игнорируется тот факт, что мастер осуществляет данный процесс настолько эффективно лишь потому, что способен мгновенно оценить тысячи образов и благодаря колоссальной вычислительной мощности человеческого мозга с замечательной точностью выбрать три-четыре наиболее перспективных хода-кандидата. Ожидать, что машина сможет выбрать эти несколько наиболее пригодных ходов, опираясь только на расчеты, без вышеупомянутой способности к вычленению и сравнению образов, — это даже не игра в шахматы вслепую, это больше похоже на дартс с завязанными глазами.