Рис. 16.12. Часть дерева вероятностей для шахматной игры
Конечно, нельзя изобразить возможные ходы для всей партии, поскольку такая диаграмма содержит около 10120 различных путей. Чтобы представить себе это огромное число возможных ходов, вообразите пространство, необходимое для отображения всех этих перестановок. Если все возможные пути закодировать в виде мельчайших точек, они многократно заполнят все библиотеки мира! Тем не менее алгоритмический поиск, при котором исследуются все варианты, неизбежно привел бы к ряду вариантов игры с выигрышем, проигрышем или ничьей. Не только люди, но даже самые сложные компьютеры из всех, которые только можно вообразить, неспособны воспользоваться этим методом. Вместо него и люди и компьютеры используют эвристические методы поиска, при которых важной является стратегия игры, — например, атака на ферзя, контроль над центром доски, блокирование главных фигур противника, обмен с получением преимущества в позиции или фигурах и т. д.
Насколько хорошо компьютер может играть в шахматы? Как мы видели, лучший компьютер и программа Deep Blue выиграли у Гарри Каспарова, которого многие считают лучшим игроком всех времен. Теперь существует сколько угодно компьютеров, которые могут выиграть у кого угодно, кроме лучших игроков, один из таких компьютеров — мой собственный Pentium, и можно смело предположить, что и у вас есть такой же. Чем полезно наблюдение за машиной, обучающейся играть в шахматы? Прежде всего мы можем узнать, что на основе анализа паттернов машина способна делать только грубые суждения о том, какие признаки важны. Компьютеру не хватает именно проницательности, однако он компенсирует это способностью к быстрой и объемной математической деятельности типа «поиск и сравнение». Человеческая способность извлекать значимые признаки из чрезвычайно сложного мира сенсорной информации, чтобы формировать абстракции этих признаков, преобразовывать эти абстракции в ассоциативные структуры более высокого уровня и строить сложные когнитивные планы, в то же время согласуя эти внутренние действия с внешней реальностью, может быть лишь приблизительно реализована в компьютере. Но даже эта обширная способность к поиску недостаточна, чтобы предусмотреть все возможные случайности, поэтому развитие стратегий игры — важная часть современных программ.
За три года до конца XX столетия случилось «невозможное». Deep Blue, самый быстрый в мире играющий в шахматы компьютер, созданный Чанг-Джен Таном в IBM, выиграл у обладателя титула чемпиона мира по шахматам Гарри Каспарова. Deep Blue смог победить, потому что был способен искать до 200 млн шахматных позиций в секунду. Но он выиграл также и потому, что мог лучше «продумать» стратегию. Машины следующего поколения, вероятно, будут способны учиться на собственном опыте и улучшать свои результаты за короткий период, как это делают люди, только быстрее и лучше.
Компьютерные шахматы
Выше мы описывали, как при помощи оптимального сканера, работающего с компьютером, можно было бы разобрать смысл простого паттерна методом сравнения матриц. Обсуждая анализ паттернов, мы выяснили, что паттерны сложны и что модель распознавания паттернов человеком, основанная только на сопоставлении матриц, неспособна имитировать разнообразие, сложность и экономичность, характерные для человеческой способности к распознаванию паттернов при кратком предъявлении.
Если для распознавания каждого из разнообразных паттернов, встречающихся в повседневной жизни, потребовалась бы отдельная матрица, они переполнили бы память даже самого большого компьютера. Но давайте выберем для сопоставления матриц умеренно простой паттерн — что-нибудь среднее между опознанием вашей бабушки и считыванием стоимости фунта масла (код напечатан на упаковке). В шахматах мы имеем схожие паттерны: простая сетка 8x8 попеременно окрашенных клеток; ходы четко определяются (например, ладья может ходить на любое количество клеток по вертикали или горизонтали при условии, что на ее пути нет других фигур, пешка может ходить на одно поле вперед, за исключением... и т. д.); ходы можно выбирать путем грубого поиска, а количество перестановок конечно, хотя и огромно. При условии очень большого объема хранения и такого же запаса времени можно для каждого хода определить вероятность, с которой он приближает выигрыш. Компьютеры изучают потрясающее количество возможных ходов, однако модель, которая будет просчитывать все ходы, построить технически невозможно; кроме того, это не говорит ничего о том, как играют в шахматы люди и, что более важно, как при этом воспринимаются, кодируются, преобразуются и приводятся в действие сложные паттерны.