Книга Человек и компьютер. Взгляд в будущее, страница 36. Автор книги Гарри Каспаров

Разделитель для чтения книг в онлайн библиотеке

Онлайн книга «Человек и компьютер. Взгляд в будущее»

Cтраница 36

В 1992 году я сыграл длинный неофициальный блицматч с одной из программ нового поколения. Создавшая ее немецкая фирма ChessBase насмешливо окрестила свое детище Fritz, и это название практически стало синонимом шахматных движков для ПК. Разработчиком был голландец Франс Морш — автор программ для настольных электронных шахмат, таких как Mephisto и пр., — привыкший втискивать максимально оптимизированный код в очень ограниченные ресурсы. Он также внедрил несколько методов усиления поиска, которые повысили силу шахматных машин, несмотря на то, что увеличение глубины обычно замедляло их работу.

Одно из этих усовершенствований заслуживает, чтобы ненадолго на нем остановиться, поскольку оно представляет собой интересный пример того, как можно сделать машину умнее с помощью методик, не имеющих ничего общего с работой человеческого разума. Речь идет о так называемой эвристике нулевого хода — методе, заставляющем программу предположить, будто одна из сторон пропускает ход. То есть программа должна прийти к выводу, что один игрок сделал два хода подряд. Если позиция этого игрока не улучшается даже после двух ходов подряд, можно допустить, что первый ход является пустышкой и может быть отсечен от дерева поиска, что сокращает его длину и делает поиск по оставшимся вариантам более эффективным. Эвристика нулевого хода была использована в некоторых самых ранних шахматных программах, в том числе в советской «Каиссе». Это элегантный и немного парадоксальный подход — повышать эффективность алгоритмов, основанных на принципе исчерпывающего поиска, за счет ограничения поиска.

Люди тоже используют при планировании разные эвристические подходы. Например, стратегическое мышление требует от нас определения долгосрочных целей и промежуточных этапов без учета того, как на наши действия может отреагировать оппонент. Я могу посмотреть на позицию на доске и подумать: «Было бы хорошо, если бы мне удалось поставить слона сюда, пешку сюда, а затем подключить к атаке ферзя». Здесь нет никаких расчетов, лишь своего рода список стратегических пожеланий. Только после этого я начинаю думать, возможно ли это на самом деле и что в ответ может предпринять соперник.

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

Более успешным оказался другой метод, который также позволяет машинам анализировать гипотетические позиции за пределами дерева вариантов. В случае применения метода Монте-Карло машина берет все доступные позиции и с каждой разыгрывает большое количество случайных партий, определяя количество возможных побед, ничьих и проигрышей. Таким образом для каждого следующего хода выбирается наиболее удачная позиция. Играть «миллионы партий в рамках одной» оказалось не очень эффективной тактикой в шахматах, но в го и других играх, где точная оценка невероятно трудна для машин, метод Монте-Карло дает хорошие результаты. Он не требует больших знаний или эвристических правил; машина просто отслеживает цифры и ходы — и выбирает лучшие.

Это обилие интересных идей, призванных повысить эффективность интеллектуальных машин, показывает, почему попытки понять, как работает человеческий разум, и проникнуть в тайны мышления были отброшены. Что важнее — процесс или результат? Люди всегда хотят результатов, будь то в инвестировании, сфере безопасности или шахматах. Такое отношение, сокрушались многие программисты, способствовало созданию сильных шахматных машин, но ничего не дало науке и прогрессу в области ИИ. Шахматная машина, которая думает как человек, но проигрывает чемпиону мира, не сделает сенсации. Когда же шахматная машина побеждает чемпиона мира, никого не волнует, как она думает.

И это наконец-то случилось. В мае 1994 года в Мюнхене я проиграл программе Fritz 3 в блицтурнире, организованном при поддержке корпорации Intel Europe. Intel оказала существенную помощь Профессиональной шахматной ассоциации (ПША), созданной годом ранее мной и моим коллегой, претендентом на мировую корону Найджелом Шортом. В турнире участвовали сильнейшие шахматисты мира и программа Fritz 3, работавшая на новом процессоре Pentium. Целью организаторов было помочь шахматам обрести еще бóльшую популярность и потенциальных спонсоров, о чем я мечтал с тех пор, как увидел, насколько широкую известность получил мой матч с Deep Thought в 1989 году.

С предшественником Fritz я уже сталкивался в товарищеском блицматче в Кельне в декабре 1992-го. Я сыграл 37 партий против любимого детища Фредерика Фриделя и, более того, детально проанализировал действия программы, указав, когда та сделала особенно хороший ход и когда играла откровенно слабо. Хотя программа еще не стала диким зверем, но она уже и не была безобидным домашним питомцем. Я проиграл девять партий при двух ничьих и 26 победах.

Но в Мюнхене произошла совсем другая история. Это был серьезный турнир, несмотря на формат блиц, и я не сомневался в победе независимо от того, будет ли в нем участвовать машина или нет. После медленного старта я выиграл восемь партий подряд, но программа Fritz 3 следовала за мной по пятам, и наконец настал наш черед встретиться за доской. Я агрессивно разыграл дебютную стадию и всего после десятка ходов имел подавляющую позицию. Однако затем начал разворачиваться сценарий, который станет типичным для партий между людьми и машинами в течение следующего десятилетия. Я сделал один неточный ход, и машина контратаковала. Раздраженный своим промахом, я решил пожертвовать материал, отдав ладью на слона, чтобы удержать инициативу. Позиция была примерно равной, но в блице я не мог положиться на точность расчетов, чтобы воспользоваться своими возможностями. Несмотря на обоюдные ошибки ближе к концу партии, когда машина дала мне шанс свести партию к ничьей, а я его упустил, Fritz 3 сумела добиться победы.

Хотя мы играли блиц и каждому давалось по пять минут, это была первая победа машины над чемпионом мира по шахматам в официальном соревновании. По значимости ту партию можно было сравнить пусть не с высадкой человека на Луну, но как минимум с запуском небольшой ракеты. Мы c Fritz 3 оказались на вершине турнирной таблицы, что для машины являлось впечатляющим результатом. Мне это было на руку, поскольку давало возможность встретиться с ней в матче за первое место и отыграться. На этот раз мне удалось сосредоточиться и полностью разгромить машину, одержав три победы при двух ничьих. В одной ничейной партии я тоже фактически победил, но мне не хватило времени, чтобы выиграть позицию с ферзем против ладьи.

Но спустя несколько месяцев фортуна повернулась ко мне спиной, когда на очередном турнире, организованном Intel под эгидой ПША в Лондоне, я встретился с другой шахматной программой для ПК — Genius, разработанной Ричардом Лэнгом. Участники играли в быстрые шахматы на выбывание, и каждая сторона имела четверть часа на партию. Мне выпало играть с Genius уже в первом раунде, что, конечно же, привлекло большое внимание. Хотя это все еще не были классические длинные шахматы, ставки поднялись высоко. Игрок, проигравший миниматч из двух партий, выбывал из турнира, который входил в серию Гран-при, — поэтому имело значение каждое очко.

Вход
Поиск по сайту
Ищем:
Календарь
Навигация