[Из песочницы] Падение последнего интеллектуального бастиона: действительно ли компьютер-шахматист сильнее человека?
На написание этого обзора натолкнул пост, опубликованный 25 мая. В самом посте, и, тем более, в комментариях, было много сказано по поводу компьютерных шахмат вообще и матча Deep Blue — Каспаров (1997) в частности. Понятно, что сейчас, спустя уже без малого двадцать лет, мало кому интересны все подробности того матча: компьютеры развиваются с колоссальной скоростью, современные смартфоны легко дадут фору компьютерам того времени, да и возможно, сами шахматы несколько утратили популярность последнее время — по каким причинам — это уже тема отдельного разговора.Впрочем, некоторые подробности, судя по всему, действительно неизвестны, а подробности эти таковы, что заголовки о «падении последнего интеллектуального бастиона» — не более, чем газетный прием, ибо случившийся по итогам матча, по сути, скандал, в силу своей шахматной специфичности вряд ли был бы интересен широкой публике. Нет, я, несмотря на то, что всегда являлся поклонником Гарри Кимовича Каспарова (исключительно в шахматном плане), не собираюсь его оправдывать за то поражение и пытаться доказать, что все было совсем не так, как сейчас общеизвестно. И уж тем более целью не является опровержение некоторых комментариев на шахматную тему к посту хабраюзера alizar. Единственная цель — рассказать некоторые подробности того, что именно произошло в Нью-Йорке в начале мая 1997 года, и почему результат этого противостояния, по мнению автора, на самом деле никому ничего не доказал.Сразу оговорюсь: автор не является высококвалифицированным шахматистом. Возможно, некоторые, чисто шахматные моменты в данном материале, могут быть раскритикованы людьми, занимающимися шахматами профессионально. Также, увы, автор не силен ни в теории игр, ни в шахматном программировании, и попытается лишь высказать мнение частично шахматиста, частично знакомого с компьютерами, а не создать Всемирную и всемерную энциклопедию Шахматного Программирования.
Недостаточно быть хорошим игроком; вы также должны хорошо играть (З.Тарраш)История шахматного программирования началась, по сути, сразу же с обычным программированием. Искусственный интеллект, возможность его создания, волновали людей издавна, и программируемая вычислительная техника оказалась более подходящим средством для поиска такой возможности, чем человек, который обыгрывал Наполеона, сидя в тумбочке. Первые шахматные программы были, впрочем, соперниками лишь друг другу: в силу огромного количества вариантов шахматных партий, речи о полном переборе не было, и нет, кстати, и по сей день. (И не предвидится © Швондер.) Это не мешало шахматным программам периодически удивлять профессиональных шахматистов как неожиданно лучшими ходами (что объясняется в первую очередь тем, что форсированные варианты компьютер считает все же быстрее и точнее), так и внезапными просмотрами мата в пару-тройку ради спасения ферзя. Однако, если в тактике даже сравнительно слабые компьютеры были вполне себе сильны, то вот в позиционной игре все было очень печально — если еще как-то можно было научить программу, что ферзь дороже пешки (что в некоторых случаях приводило к вышеупомянутым просмотрам мата), то научить оценке позиции, на которой, собственно, вся партия и держится, возможным не представлялось. Это и неудивительно — правильная оценка позиции — это задача непростая даже для шахматистов-разрядников, единого рецепта нет, даже две практически одинаковые позиции, отличающиеся лишь положением одной пешки, могут иметь противоположные оценки.С течением времени, впрочем, прогресс стал брать свое. Дебютные библиотеки позволили программам не «плавать» в начальной стадии партии — такие «плавания» нередко приводили к окончанию партии еще в дебюте — все же, несколько столетий опыта и рост дебютной теории с начала ХХ века давали человеку немалую фору. Дебютные библиотеки эту фору не просто устранили — в отличие от человека, компьютер теперь мог разыграть абсолютно любой дебют, уйти от любой дебютной ловушки, да и сам, соответственно, мог в любую ловушку поймать! Шахматистов, знающих все дебюты, не бывает — есть понятие «дебютный репертуар» — это некоторое количество начал, использующихся шахматистом. Человек может этот репертуар расширять, пополнять, готовить, например, новые дебюты к новому турниру, но с появлением у компьютеров в памяти дебютной энциклопедии человек стал проигрывать в этом компоненте. Кстати, фора тут вышла двойная: в отличие от компьютера, который по сути, играет по дебютной библиотеке, человек в ходе партии подсмотреть в дебютную энциклопедию не может. Единственный вариант уравнять тут шансы — неправильные начала, не внесенные в энциклопедии, причем, максимум шансы получится именно уравнять — человек ведь также не имеет возможности применить багаж своих дебютных знаний.
Надо сказать, что проблема дебютных знаний и их чрезмерной распространенности и доступности волновала и самих шахматистов. Так, совершенно нормальными в профессиональных шахматах стали ситуации, когда игроки сделали по 30–40 ходов, и ничего нового в них не было — все эти ходы уже были в другой партии. (Тут, конечно, дело касается не только дебюта, но, как правило, такие ситуации были связаны в первую очередь с дебютными спорами, и некий вариант мог отстаиваться и в глубоком миттельшпиле, и даже в эндшпиле!) Либо ситуации из партий гросс- и супергросс- мейстеров — партия до 20 ходов, обычно — 16–18, все «из книжки» и соглашение на ничью — потому что позиция теоретически ничейна. Спасением виделись Шахматы Фишера, они же Шахматы-960, где фигуры в начальной позиции могут располагаться произвольным образом. Увы (или к счастью?), обычные шахматы этот вариант вытеснить не смог. Почему — сказать сложно, но рискну предположить, что профессиональным шахматистам он не был вполне интересен, им и в стоковых дебютах хватало, чем заняться, а остальным — не давал никаких преимуществ — см. комментарий Каспарова. В самом деле, дебютные принципы не поменялись — «развивай фигуры как можно быстрее и безопаснее и мешай делать то же самое сопернику», и тот, кто эти принципы понимал в стандартных шахматах — не перестал их понимать и в фишеровских, а кто двигал фигуры исключительно по памяти из справочника и при любом отклонении впадал в панику — стал в эту самую панику впадать гораздо быстрее, на 2–3 ходу.
Гораздо лучше в теории дела обстояли с эндшпилем. Особенно с малофигурными окончаниями — чем меньше фигур — тем лучше. Такие ситуации, в отличие от дебютов, просчитывались куда как проще: фигур-то гораздо меньше! Да и ограничения по количеству ходов способствовали (см. Правило 50 ходов). Так или иначе, компьютеры получили возможность пользоваться Эндшпильными таблицами Налимова и это, пожалуй было еще большей победой, нежели дебютные библиотеки. Впрочем, человек тут имел свои козыри — например то, что множество вариантов шахматных окончаний можно было играть, практически не считая варианты, а пользуясь известными алгоритмами, самый знаменитый пример (первый этюд, вероятность возникновения подобных мотивов в реальной партии достаточно высока).
А вот в миттельшпиле человек оставался хозяином положения. Да, совершенствовались алгоритмы для оценки позиции, да, компьютеры считали все дальше и глубже, но оставалось одно, то, из-за чего компьютеры так пока что и не стали ни писателями, ни композиторами: план. Если в дебюте компьютер мог двигать фигуры исключительно «по книжке», а в эндшпиле — придерживаться неких алгоритмов, то с планом были трудности. Да, очевидно, если при оценке позиции машина находила у соперника слабые места — то могла делать ходы, направленные на их использование. Если слабые места были у машины — то она могла предпринимать действия для защиты. Однако, живой шахматист не будет руководствоваться только своим планом — он попытается определить планы соперника. Замечательная задача для ИИ. Вот только выполнимая ли?
В 1996 году представители компании IBM предложили Гарри Каспарову сыграть матч против их шахматной программы «Дип Блю» с призовым фондом в $500 тыс. «Дип Блю» — суперкомпьютер на базе системы RS6000, состоящий из 32 узлов, каждый из которых состоял из 512 процессоров, аппаратно оптимизированных для шахматной программы. Производительность «Дип Блю» соответствовала 11,38 GFLOPS, и компьютер мог оценивать до 200 млн позиций в секунду (Википедия).
Тринадцатый чемпион мира Гарри Каспаров всегда считал свое занятие прежде всего творчеством. То есть, тем, что машине недоступно и не будет доступно никогда. Каспаров говорил:
«Если компьютер сможет превзойти в шахматах лучшего из лучших, это будет означать, что ЭВМ в состоянии сочинять самую лучшую музыку, писать самые лучшие книги. Не могу в это поверить. Если будет создан компьютер с рейтингом 2800, то есть равным моему, я сам сочту своим долгом вызвать его на матч, чтобы защитить человеческую расу.»
По иронии судьбы, именно Каспаров стал первым чемпионом мира, проигравшим компьютеру. Первая же партия матча Deep Blue — Каспаров (Филадельфия, февраль 1996 г.) принесла сенсацию — Чемпион Мира повержен машиной. Увы для поклонников ИИ — уже во второй партии чемпион мира реваншировался, а после еще двух партий, завершившихся вничью, выиграл дважды, доказав таким образом, что чемпион мира — это чемпион мира. Все же, было уже понятно, что компьютерные шахматы — это реальная сила, и что во втором матче, который IBM предложила спустя чуть более года, чемпиону-человеку придется постараться, чтобы защитить человеческую расу.Второй матч Каспарова с «Темно-синим» начался, наверное, даже с огорчительного для любителей интриги результата — Каспаров выиграл белыми легко, избрав неправильное начало (точнее, этот дебют вполне можно классифицировать, как Дебют Рети). Казалось, все ясно, идея Каспарова проста — лишить соперника первого козыря, дебютной библиотеки, и играть просто в шахматы, что машине не дано. Конечно, отойти от теории при игре черными гораздо сложнее, тон ведь задают белые, и тут Каспаров, вероятно, надеялся на Испанскую партию, ту самую, которую в количестве восемнадцати штук играл сам Остап Бендер — старинный дебют, где отыграть по книжке сам дебют мало, надо уметь играть миттельшпиль. И тут-то и началось.
Тот не шахматист, кто, проиграв партию, не заявляет, что у него было выигрышное положение (И.Ильф) Итак, сначала — только игровые факты. Партии игрались с контролем 2 часа на 40 ходов (классический контроль времени). Играя черными, Каспаров попытался оживить позицию с помощью жертв, машина эти жертвы отклонила, и в итоге, чемпион мира, оказавшийся в сложнейшей позиции, сдался. Все просто и ясно. Далее часть описания и цитат заимствована отсюда (там же можно посмотреть всю партию №2), часть — описана автором.По мнению чемпиона, первый звоночек прозвенел на 35 ходу — суперкомпьютер, до этого тративший не более трех минут на ход, задумался на четверть часа. Еще шесть минут — над следующим ходом. Результат был еще более неожиданным — компьютер отклоняет жертву пешек черными.
По условиям, после каждой партии IBM предоставляла распечатки анализов, которые компьютер производил во время каждой партии. По словам Каспарова, вариант, избранный машиной, ей же был оценен. как неясный, в отличие от принятия жертвы, которое машина оценивала как выгодное для себя. «Очень мило. Мы имеем дело с уникальным событием, Машина отказывается от выигрыша трех пешек, потому что ей якобы «неясно» — Г.Каспаров.
Партия продолжалась, и двигалась к логическому финалу, который в конце концов и наступил — Каспаров сдался. Однако чудеса на этом не закончились. Как выяснилось практически сразу — чемпион мира сдался в ничейной позиции. Казалось бы, обвинять тут некого, кроме самого потерпевшего. Но все не так просто. Каспаров сдался, просто поверив, что машина непогрешима. И ошибся. Своим последним ходом в партии машина допустила грубейшую тактическую ошибку, после чего черные могли закончить партию вничью. Удивление Каспарова после партии вполне понятно: машина, нашедшая сильнейший позиционный ход, который оказался не под силу даже многим белковым шахматистам, то есть, обошедшая людей на их же территории — в позиционной игре, тут же проиграла на своей территории, где она не может ошибаться — допустив элементарный тактический зевок?
Эти вопросы до сих пор остаются вопросами, а матч, тем не менее, продолжался. Три партии завершились вничью. Была ли шестая партия для Каспарова своеобразным финалом? Финалом в матче за честь и ум человеческой расы.
В шахматах выигрывает тот, кто ошибается предпоследним (С.Тартаковер) Пожалуй, с точки зрения компьютерных шахмат, в шестой партии не произошло ничего интересного. Вопросы в этой партии в основном к чемпиону мира — каким образом он мог сделать ход 7.… h6? Компьютер тут же пожертвовал коня и позиция черных покатилась под откос. После 19-го хода белых Каспаров сдался. Единственное его достижение в данной партии — это то, что официально она не стала самым быстрым поражением в его карьере — шахматные статистики не учитывают партии человека с компьютером. Хотя формально, как вы поняли, это именно такая партия.Дальше было менее интересно — якобы, IBM отказалась предоставлять логи анализов этой партии, что, судя по всему, неправда (см. ссылки внизу), а предложение Каспарова сыграть еще один матч было встречено корпорацией оригинально — герой матча (Deep Blue) был демонтирован и сдан в утильмузей. Впрочем, этот как раз легко объяснить тем, что так или иначе, но чемпион мира был побежден, цель достигнута, а выкладывать еще раз круглую сумму для утешения Каспарова в IBM как-то не очень хотели.
И все же, что доказали эти матчи? Что человек повержен? Если брать оба матча Каспарова с DB — то счет остался в пользу Каспарова — 6,5–5,5. Если даже брать только второй — то во-первых, наверное, статистически результат 2–1 в пользу одной стороны (без учета ничьих) ничего не доказывает. Во-вторых, поражение Каспарова в шестой партии — из-за явного зевка — вряд ли на основании такой грубейшей ошибки (я молчу про сдачу Каспаровым второй партии в ничейной позиции) можно доказывать силу шахматной программы.
После переезда Deep Blue в музей, люди, разумеется, не перестали играть в шахматы с компьютером. Однако, о подобных матчах вообще не слышно, гроссмейстеры теперь предпочитают более экзотические виды использования компьютера. Может, ведущие гроссмейстеры просто боятся поражений от машины? Почему тогда владельцы суперкомпьютеров, авторы мощных шахматных программ, не заявляют, мол, вот мы предложили матч, а чемпион мира отказался? Скорее всего дело действительно в падении интереса к шахматам, интереснее сейчас ставить другие задачи перед ИИ, а поражение от машины в шахматы, пусть даже и чемпиона мира — кому оно интересно, ведь «уже давно машина выиграла у чемпиона мира».
Ссылки: Отчет IBM о матче 1997 годаШестая партия матча 1997 года в википедии