А назавтра с большим удовольствием прочел в газете, что Михаил Таль после сорокаминутного тщательного обдумывания позиции осуществил точно рассчитанную жертву фигуры…»
Таль обладал редким чувством юмора, был человеком исключительной честности и блестящего шахматного ума. Мыслительная дисциплина и способность к концентрации, безусловно, важны для профессионального шахматиста, но я подозреваю, что мы гораздо чаще полагаемся на такие вот интуитивные озарения, чем нам хотелось бы признать.
Игра в шахматы — жесткая борьба, а не лабораторный эксперимент. Колоссальное психологическое давление, неустанное тиканье часов — в таких условиях даже опытным гроссмейстерам трудно сохранять дисциплину мышления. Зрительное воображение слабеет, повышая вероятность серьезных промахов. Иногда вы тратите десять минут на обдумывание основного хода-кандидата и вдруг обнаруживаете, что это роковая ошибка. Паника! Отчаяние! Или же после хода противника вы видите возможность для блестящего победного удара. Восторг! Сделать ход немедленно в надежде на то, что интуиция вас не подвела? Или же потратить десять минут и проверить свою интуицию? Понятно, что компьютеры не переживают подобных психологических драм; это еще одна — наряду со способностью анализировать миллионы позиций в секунду — ключевая причина, объясняющая, почему над машинами так трудно одержать победу.
В 1949 году Клод Шеннон не надеялся на успех программ типа А, предполагающих анализ всех доступных ходов с максимально возможной глубиной. Цифры казались невероятными. Шеннон рассчитал, что даже если машина типа А будет оценивать миллион позиций в секунду (что «очень оптимистично»), на каждый ход потребуется больше 16 минут, а на среднюю партию в 40 ходов — больше десяти с половиной часов{15}. И все равно игра машины будет очень слабой, поскольку исследование дерева вариантов всего на три хода вперед позволяет победить лишь очень слабого человеческого игрока.
Главной проблемой шахматного программирования является великое множество позиций в дереве перебора — мы называем это коэффициентом ветвления. С самого начала количество вариантов было столь огромно, что их перебор мог бы поглотить всю вычислительную мощь самого высокопроизводительного компьютера. Каждая сторона начинает имея 16 боевых единиц: восемь пешек и восемь старших фигур. Число возможных комбинаций первых четырех ходов составляет более 300 млрд, и, хотя 95 % вариантов откровенно плохи, программа типа А будет перебирать их все, чтобы убедиться в этом.
Дальше — хуже. Из начальной позиции можно сделать около 40 допустимых ходов. С учетом ответных ходов мы получаем 1600 позиций — и это всего после двух полуходов, один из которых сделан белыми и один — черными. После двух полных ходов (четырех полуходов) возникает 2,5 млн позиций, а после трех — 4,1 млрд! Поскольку в среднем партия продолжается примерно 40 ходов, число позиций достигает астрономических величин. А общее количество допустимых позиций в шахматах сопоставимо с количеством атомов в Солнечной системе.
Поэтому Шеннон, сам заядлый шахматист, возлагал надежды на стратегию типа Б, которая работает более избирательно и эффективно. Вместо того чтобы просчитывать все возможные ходы и позиции на одинаковую глубину, алгоритм типа Б, как хороший игрок, должен изначально отбросить все плохие и незначительные ходы и сосредоточить внимание на наиболее перспективных вариантах и вынужденных ответах, исследуя их как можно глубже.
Люди быстро учатся тому, что в каждой позиции есть относительно небольшое число разумных ходов, и чем сильнее игрок, тем быстрее и точнее он осуществляет первичную сортировку и отсеивание. Новички больше играют как машины типа А, пытаясь перебрать все доступные варианты и просчитать их последствия. Этот метод грубой силы работает разве что у компьютеров, способных проанализировать миллионы позиций в секунду, но не у людей — даже чемпион мира может оценить не больше двух-трех позиций в секунду.
Если в данной позиции вам удастся найти четыре-пять наиболее разумных ходов и отбросить остальные — что не так-то просто, — дерево вариантов все равно разветвится очень быстро. Следовательно, даже если вы сможете создать алгоритм типа Б, который будет вести более интеллектуальный поиск, все равно потребуется огромная скорость обработки и невероятная память, чтобы оценить эти миллионы позиций.
Я уже упоминал о «бумажной машине Алана Тьюринга», первой работоспособной шахматной программе. Я даже имел честь сыграть с воссозданной версией программы на современном компьютере — это произошло на праздновании столетнего юбилея Тьюринга в Манчестере в 2012 году, куда я был приглашен в качестве выступающего. По современным меркам программа довольно слаба, но ее все равно следует рассматривать как огромное достижение, учитывая тот факт, что Тьюринг не имел возможности протестировать ее на компьютере.