Охота на электроовец. Большая книга искусственного интеллекта - Марков Сергей Николаевич
Вот как вспоминал сам Ботвинник состоявшийся между ними диалог: «Цель игры — выигрыш материала. Это хорошо, — сказал Заде. — Но ведь целей и траекторий, по которым можно пробиться к этим целям, превеликое множество! Как же вы собираетесь ограничить информацию об этом?..
Я сказал Заде, что давно уже об этом думаю, даже знаю, как назвать это ограничение — „горизонт“ (Заде одобрил термин), но ещё его не формализовал…» [750]

Идея траекторий всерьёз увлекла Ботвинника. Вскоре он дал формальное определение «горизонта» (не путать с «эффектом горизонта»!) как предельно допустимого времени (в полуходах), которое дано для взятия неприятельской фигуры. Статья Ботвинника с описанием его идей после долгих споров была опубликована в «Бюллетене Центрального шахматного клуба СССР» в порядке обсуждения [751]. Идеи Ботвинника встретили достаточно жёсткую оппозицию со стороны математиков и программистов. Позже в своих воспоминаниях Михаил Донской назовёт поставленную Ботвинником задачу научить компьютер мыслить как человек безумной и неконструктивной [752]. Градус споров был вполне понятен — речь шла о том, на что следует расходовать машинное время, ценившееся в те годы на вес золота. Недостаточно формализованные идеи Ботвинника вызывали раздражение у большинства программистов: им было понятно, что для того, чтобы превратить идеи Ботвинника в чёткий алгоритм и работающий машинный код, нужно потратить много времени и сил, причём положительный исход этого вовсе не гарантирован.
Впрочем, сам Ботвинник был полон энтузиазма. Вот как вспоминает свою первую встречу с ним будущий двенадцатый чемпион мира по шахматам Анатолий Карпов:
На первом же занятии он как бы между прочим сообщил нам, что начал работать над шахматной программой для ЭВМ, которая через несколько лет начнёт обыгрывать не только мастеров, но и гроссмейстеров, а со временем не оставит шансов и чемпиону мира. Говорил он спокойно, убеждённо и аргументированно. Мы — дети — поняли только одно: мэтр сошёл с дистанции, но вместо себя готовит бездушного шахматного киборга, который расправится со всеми и снова возвысит имя своего создателя. Шокированные, мы на несколько секунд притихли, а мастер, заметив произведённое впечатление, окинул нас сильным, холодным и уверенным взглядом и сказал:
— Не волнуйтесь, ребята! Сама по себе моя машина не заработает. В неё надо вдохнуть жизнь, вложить душу, а сделать это смогут только талантливые шахматисты — программисты. Вот вы и будете первыми [753].
В 1968 г. в издательстве «Наука» вышла книга Ботвинника, название которой — «Алгоритм игры в шахматы» — звучало как ответ критикам, однако, вопреки заголовку, книга не содержала законченного алгоритма шахматной программы. В предисловии к английскому изданию книги её переводчик Артур Браун, научный обозреватель газеты The New York Times, высказался о содержании следующим образом: «Я думаю, что эта книга является фундаментальной [seminal] работой. Как и все начала [seeds], она компактна, безотлагательна [urgent] и загадочна [cryptic]» [754]. Впрочем, в среде математиков и программистов нашлись и те, кто по крайней мере с осторожным энтузиазмом встретил идеи Ботвинника. К ним относились, например, выступивший в роли редактора книги уже знакомый нам Николай Криницкий [755], соавтор Анатолия Китова, а также новосибирский программист Владимир Бутенко, позже создавший собственную шахматную программу «Эврика» [756].
В числе тех, кто проявил интерес к идеям Ботвинника, был также член-корреспондент АН СССР Алексей Ляпунов, один из основоположников кибернетики, который пригласил Ботвинника выступить на семинаре в Новосибирском государственном университете. Вот что пишет об этой истории сам Ботвинник:
Каким образом узнал Алексей Андреевич о моей работе по шахматной программе — не знаю, скорей всего, от нашего общего друга Н. А. Криницкого. После того как в 1968 году вышла книжка «Алгоритм игры в шахматы», Ляпунов прислал письмо, где настаивал, чтобы я сделал доклад на его семинаре.
Это было весьма неожиданно. Большинство математиков относилось к моей работе с вполне обоснованным скепсисом: личность как шахматиста-профессионала, так и «электротехника-любителя» казалась им неподходящей для исследований в области кибернетики, а необычные идеи — более чем сомнительными. Лишь профессор Криницкий занимал чёткую и благожелательную позицию, но сколько часов мы затратили с ним на жаркие споры, прежде чем стали единомышленниками!.. И вот сам Ляпунов приглашает приехать в Новосибирск!
Доклад на семинаре был в сентябре 1969 года.
Дальнейшее развитие идей Ботвинника было связано (во многом под влиянием замечаний Ляпунова, сделанных им на семинаре) с введением понятия зоны игры [757]. Она включала в себя атакующую фигуру (для неё был придуман специальный термин — «комлевая», «комель» — это часть растения, рога, пера или волоса, прилегающая к корню), перемещающуюся по комлевой траектории с целью забрать фигуру-мишень, а также две команды «отрицающих фигур», действующих по «траекториям отрицания» и старающихся соответственно помочь либо помешать комлевой фигуре выполнить её задачу.
Как и в случае со многими другими эвристиками, расставить точки над i при оценке разумности применения эвристики может только вычислительный эксперимент. Конечно, при скрупулёзном анализе эвристик Ботвинника у программиста-практика неизбежно возникнет ряд вопросов. Например: если вариант в усечённом дереве игры заканчивается взятием фигуры-мишени, можем ли мы быть уверены в стабильности терминальной позиции? Что, если за этим взятием следует ответное взятие фигуры или даже хуже — мат? Как быть, если комлевая фигура в процессе перемещения по своей траектории перестала, например, защищать другую фигуру, будет ли взятие этой фигуры противником включено в зону игры? Работы Ботвинника не содержат ответов на эти вопросы, как и на многие другие. Но, быть может, при попытке практической реализации подхода Ботвинника можно было найти на все эти вопросы вполне разумные ответы?
В январе 1972 г. академик Аксель Берг помог с открытием научной темы по работе над программой во ВНИИЭ (Всесоюзный научно-исследовательский институт электроэнергетики), где Ботвинник руководил одной из лабораторий. Вопрос с выделением машинного времени был решён, вскоре нашлись и программисты. Ими стали Борис Штильман и Александр Юдин, позже к команде подключились также Михаил Цфасман и Александр Резницкий.
В работе над программой сразу же возник целый ряд трудностей, и набор эвристик стал быстро разрастаться. В то время как Юдин был занят созданием библиотек дебютов и эндшпилей, Штильман пытался воплотить в жизнь идеи Ботвинника о траекториях и зоне игры.
В 1976 г., зная о работе группы Ботвинника, организаторы II чемпионата мира среди шахматных программ прислали ему приглашение, при составлении ответа на которое родилось название программы — «Пионер», предложенное Штильманом (сам Ботвинник предлагал назвать программу «Человек»).
Однако путь к созданию полноценной шахматной программы, основанной на радикальных идеях, был долгим и тернистым. В качестве промежуточной цели Ботвинник хотел добиться того, чтобы программа была способна решать шахматные этюды, и даже отчитался о некоторых успехах в этой области. Например, «Пионер», по заявлению Ботвинника, мог решить сложный шахматный этюд авторства Гии Надареишвили. Описание того, каким образом было получено решение, вышедшее из-под пера Михаила Моисеевича, внушало сторонним наблюдателям ужас: «Штильман действовал решительно. Как аэронавт, он стал сбрасывать „балласт“, то есть выключать подпрограммы, не имеющие прямого отношения к этому этюду. Правда, Боря немного увлёкся, он отключал и нужные подпрограммы, так что полного авторского решения получить не удалось. Из-за неведомой технической ошибки никак не удавалось закончить одно поддерево (правда, когда я сообщил Г. Надареишвили об этом казусе, он очень удивился: оказывается, ПИОНЕР формировал важное поддерево, о наличии которого не подозревал сам автор!), и я дал указание запретить ПИОНЕРу его анализировать. Пришлось вновь вводить паллиативные правила, заменявшие отсутствующую позиционную оценку, и в итоге, когда уже и не надеялись на благополучное окончание эксперимента, произошло чудо».
Похожие книги на "Охота на электроовец. Большая книга искусственного интеллекта", Марков Сергей Николаевич
Марков Сергей Николаевич читать все книги автора по порядку
Марков Сергей Николаевич - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки mir-knigi.info.