Перейти к содержанию

3.5.6 Рассуждения о теоретической основе шахматного программирования и идеи Ботвинника

Материал из Охота на электроовец: Большая Книга Искусственного Интеллекта


С 1970-х гг. создатели шахматных программ постепенно отходят от парадигмы, предложенной Шенноном. Можно ли сказать, что «Каисса» была программой шенноновского типа A, как её предшественница из ИТЭФ, или же она относилась к типу B? Ответ на этот вопрос не так прост.

С одной стороны, благодаря эвристике пустого хода или «модели активной игры», при использовании которой в некоторых узлах дерева перебора анализировались только «активные» ходы, программа исключала часть ветвей дерева из рассмотрения. В принципе, исключение ветвей происходит и при альфа-бета-отсечении, но оно, в отличие от упомянутых ранее эвристик, является «безопасным», то есть не может изменить оценку программой позиции по сравнению с полным перебором вариантов. Казалось бы, в силу селективности перебора «Каиссы» её следовало бы отнести к типу B, однако использование метода «итеративного углубления» приводит к тому, что ходы, отброшенные при анализе позиции на n-й итерации, могут быть изучены на (n+1)-й. В зависимости от особенностей реализации эвристика пустого хода может исключить некоторые ходы из перебора «безвозвратно», но это происходит не всегда. Словом, программы второго поколения, такие как «Каисса», активно использовали подход, при котором более перспективные варианты рассматривались более глубоко. Целый сонм правил управлял в таких программах принятием решений о сокращении или же, наоборот, продлении перебора для тех или иных ходов. Например, шахи, ходы пешек на предпоследнюю горизонталь, размены, взятия, приводившие к переходу в пешечный эндшпиль, иногда даже просто взятия могли увеличивать глубину перебора на один полуход или даже на нецелое количество полуходов, скажем на ½ полухода (к примеру, два взятия приводят к продлению перебора на один полуход). С другой стороны, для бесперспективных ходов глубина рассмотрения уменьшалась — под «сокращение» могли попадать «тихие» ходы в позициях с нехваткой материала (обычно трудно отыграть материал, совершая пассивные ходы — не совершая взятий, шахов или ходов проходных пешек), просто предположительно слабые ходы (например, помещённые в конец списка ходов эвристиками, отвечающими за упорядочивание ходов на основе статистических данных о том, как часто те или иные ходы становились лучшими в процессе перебора) и так далее. Второе поколение шахматных программ стало золотым веком изобретателей эвристических правил. Их создание часто ограничивалось только полётом фантазии: творческое озарение, поспешная реализация, несколько десятков (в лучшем случае) тестовых партий — и вот уже программа оснащена новым, доселе невиданным знанием. Этот подход не был уникальной чертой шахматного программирования — он был распространён в самых разных областях ИИ вплоть до конца 1980-х или даже до 1990-х. Сегодня мы часто называем этот период временем GOFAI — Good Old-Fashioned Artificial Intelligence (Старого доброго искусственного интеллекта). Этот термин был предложен профессором Джоном Хогландом в книге «Символьные вычисления. Искусственный интеллект: сама идея» (Symbolic Computation. Artificial Intelligence: The Very Idea, 1985) для обозначения символьного подхода в ИИ, доминировавшего в эти годы[1]. Сторонники этого подхода стремились изложить человеческие знания в виде наборов правил и алгоритмов.

На заре шахматного программирования бытовало забавное заблуждение о том, что программист не может создать программу, которая будет играть в шахматы сильнее своего создателя. Тьюринг сравнивал это с утверждением, что ни одно животное не может проглотить животное тяжелее себя[2]. Возражения Тьюринга, в его время разумеется, могли носить только теоретический характер — на протяжении многих десятилетий машины играли в шахматы на любительском уровне, выполняя для шахматных экспертов роль безропотных учеников, в точности следующих рекомендациям учителей. Проблема, как и в случае процесса обучения людей, заключается в том, что рассказ эксперта о своём методе вовсе не равен самому методу. Обычно человек способен отличить на картинке хрен от пальца, но стоит вам попросить его объяснить, как именно он это делает, а потом начать следовать описанному способу, как вы немедленно запутаетесь и в хрене, и в пальцах.

Однако вплоть до 1990-х гг. преимущество «человеческого» способа игры в шахматы было очевидным, а возможность изобретения принципиально иного подхода — нет. Именно поэтому, создавая шахматные программы, их авторы в той или иной мере пытались подражать в них игре людей. Шахматный мастер тоже просчитывает варианты, оценивает позиции. Более того, люди попытались разложить эту оценку на отдельные элементы задолго до появления даже проектов первых шахматных программ. Уже в XVII–XVIII вв. в работах мастеров итальянской шахматной школы, таких как Пьетро Каррера[3] и Джамбаттиста Лолли[4], мы встречаем попытки численной оценки относительной силы шахматных фигур. Задачу формализации оценки позиции и способа отбора вариантов для анализа нужно было выполнить для того, чтобы обучать начинающих шахматистов, и неудивительно, что наработанные методы легли в основу алгоритмов первых шахматных программ. Однако пионеры шахматного программирования немедленно столкнулись с тем, что многие, казалось бы, самоочевидные для людей понятия были определены недостаточно строго. Если с материалом всё было более-менее ясно, то понятия слабого поля, слабой пешки, защищённости короля, активности фигур было непросто переложить на язык строгой математической логики. Ещё хуже дело обстояло с отбором перспективных вариантов для анализа. Как выяснилось, этот процесс шахматные мастера осознают весьма слабо — выбор основывается на интуиции, являющейся порождением опыта, и эта самая интуиция оказалась совершенно неуловимой и каждый раз, подобно солнечному зайчику, ускользала от попыток описания на не терпящем неоднозначностей и сомнений языке математических формул. Впрочем, в те годы никто не знал наперёд, что эти отважные донкихотские попытки обречены на неудачу. Тем более что во главе этого направления стоял один из патриархов советской шахматной школы — Михаил Ботвинник, шестой чемпион мира по шахматам.

Интерес к компьютерным шахматам развился у Михаила Моисеевича довольно рано. В 1958 г. по приглашению гроссмейстера Макса Эйве, пятого чемпиона мира по шахматам, Ботвинник посетил Нидерланды, где стал гостем телепередачи, посвящённой компьютерам и перспективам их применения. На вопрос Эйве «Будет ли машина играть в шахматы сильнее человека?» Ботвинник не задумываясь ответил: «Да!»[5], [6]

Эйве был не только блестящим шахматистом, но и специалистом в области компьютерных технологий. В 1956 г. он занял пост консультанта в нидерландском отделении компании Remington Rand — одного из ведущих разработчиков первых ЭВМ[7]. Тремя годами позже Эйве стал директором Исследовательского центра по автоматической обработке данных, а ещё через два года — главой созданной Евратомом[8] комиссии, изучавшей шахматный потенциал компьютеров[9].

Вспоминая в книге «От шахматиста к машине» телеинтервью 1958 г., Ботвинник писал: «Известно, что всё начинается от Евы… Но в моей творческой деятельности многое начиналось не от Евы, а от Эйве. Именно он осенью 1934 года выхлопотал приглашение на рождественский турнир в Гастингс — это был мой первый международный турнир. И вот теперь после вопроса Эйве я стал думать, как же обучить компьютер хорошо играть в шахматы?»

В ноябре 1960 г. с подачи директора XIV шахматной олимпиады Герберта Гретца Ботвинник прочитал лекцию в Университете Гумбольдта[10], которая позже была опубликована в советской прессе под названием «Люди и машины за шахматной доской»[11]. В начале 1960-х активно обсуждался вопрос о том, можно ли создать машину, способную играть в шахматы на гроссмейстерском уровне. Первые программы играли на уровне слабых любителей, и было неясно, что именно нужно сделать для того, чтобы преодолеть этот разрыв. Было ясно, что задачу нельзя решить при помощи полного перебора (пусть даже и с альфа-бета-отсечениями) — количество рассматриваемых вариантов нужно было сокращать самым радикальным образом. При этом было понятно, что подобное агрессивное сокращение дерева перебора возможно лишь ценой заведомо «некорректных», потенциально опасных отсечений. Именно такого рода ошибки допускают люди-шахматисты, упуская в своём анализе тот или иной важный вариант. Гроссмейстер, рассчитывающий комбинацию из двадцати полуходов, анализирует разве что несколько десятков позиций. Но это значит, что его анализ включает лишь порядка одной из 1028 возможных альтернатив. Лучшие шахматные программы начала 2010-х гг., несмотря на все достижения в области селективного перебора, рассматривали примерно в миллион раз больше позиций для достижения того же результата.

Впрочем, в этих сравнениях есть достаточно много условностей. Под рассмотрением шахматистом той или иной позиции в ходе расчёта вариантов мы понимаем только сознательное рассмотрение, дипломатично умалчивая о том, что часть анализа происходит и на бессознательном уровне. Если шахматист оценил последовательность из нескольких взятий на некотором поле, значит ли это, что он рассмотрел соответствующее число позиций? Так же и при подсчёте количества позиций, принятых в рассмотрение машиной, существует множество разночтений в способах такого подсчёта. В зависимости от принятых соглашений число вариантов, рассматриваемых машиной, можно уменьшить или увеличить на несколько порядков. Кроме того, в определённых ситуациях оценочная функция может успешно подменять собой рассмотрение конкретных вариантов. Оценочные функции шахматных программ второго поколения могли включать в себя, например, «правило квадрата» — простой геометрический принцип, позволяющий оценить, успевает ли король перехватить проходную пешку в пешечном эндшпиле. Тот же результат мог быть получен анализом конкретных вариантов, причём в ряде случаев этот анализ нужно было бы осуществить на достаточно большую глубину. То же самое можно сказать о таблицах окончаний: программа просто извлекает из базы точную оценку позиции без всякого перебора. Обладая некоторой фантазией, можно представить себе сложную оценочную функцию, позволяющую эффективно заменить перебор вариантов. Например, в современных программах оценочная функция может ценить сильную атаку на короля или сильные проходные пешки куда выше, чем несколько лишних пешек или даже лишнюю фигуру, благодаря чему программа способна без глубокого перебора принять решение об осуществлении вполне «талевской жертвы» (Михаил Таль, восьмой чемпион мира по шахматам, любил острую игру и часто осуществлял некорректные жертвы. Однако при этом Таль часто побеждал, потому что противнику при ограниченном временном контроле и волнении опровергнуть такую жертву было непросто. Тогда говорили: «У соперников Таля всегда находится выигрыш, причём всегда… лишь в анализе после партии!»). Сам Таль относился к этому с присущим ему юмором: «Есть два вида жертв: корректные и мои!»[12] Также программы второго поколения могли включать в рассмотрение довольно длинные цепочки «форсированных» ходов, например шахов, взятий, превращений пешек и так далее. Поэтому даже программа ИТЭФ вполне могла найти сравнительно длинную выигрывающую комбинацию при глубине перебора всего в три полухода, если, например, после трёх «тихих» ходов следовала цепочка из десяти форсированных[13].

Однако Ботвинник был сторонником более решительного подхода. Будучи шахматным профессионалом высочайшего уровня, он был убеждён в том, что сможет изложить методы, применяемые шахматными мастерами, в виде соответствующих алгоритмов. Однако уже после первых шагов, сделанных в этом направлении, Ботвинник натолкнулся на целый ряд сложностей. Одной из первых его идей стало выделение «главного участка боя» (ГУБ) — множества фигур и полей, на которых идёт игра. Эту идею Ботвинник изложил Баширу Рамееву, главному конструктору ЭВМ «Урал», и в ответ на свои соображения получил убийственный вопрос: «А как вы будете определять этот самый ГУБ?»

Несмотря на первое разочарование, Ботвинник не был намерен сдаваться — предмет исследований решительно увлёк его. Ознакомившись с принципами работы ранних шахматных программ, он выдвинул ряд нетривиальных идей. Первой стало замечание о том, что шахматные программы ведут перебор вариантов, не имеющих определённой цели. Программа обрывает перебор варианта механически, достигая его максимальной длины, в то время как анализ варианта шахматным мастером обычно завершается позицией, в которой была достигнута или не достигнута изначально сформулированная промежуточная цель. В качестве такой промежуточной цели Ботвинник предлагал использовать выигрыш материала (т. е. фигур или пешек). Соответственно, идея в общих чертах заключалась в том, чтобы анализировать варианты, представляющие собой траектории перемещения атакующих фигур и «фигур-мишеней».

В 1965 г. во время визита в Москву Клода Шеннона, ставшего к тому времени знаменитостью среди советских математиков, Ботвинник встретился с американским учёным и сыграл с ним партию в шахматы[14]. Переводчиком на этой встрече был Лотфи Заде — американский математик и логик азербайджанского происхождения, автор термина «нечёткая логика» и один из основателей теории нечётких множеств. Москва 1965-го была полна американских информатиков.

Рис. 71. Встреча Шеннона (за шахматной доской слева) и Ботвинника (за шахматной доской справа), 1965 г.

Вот как вспоминал сам Ботвинник состоявшийся между ними диалог: «Цель игры — выигрыш материала. Это хорошо, — сказал Заде. — Но ведь целей и траекторий, по которым можно пробиться к этим целям, превеликое множество! Как же вы собираетесь ограничить информацию об этом?..

Я сказал Заде, что давно уже об этом думаю, даже знаю, как назвать это ограничение — „горизонт“ (Заде одобрил термин), но ещё его не формализовал…»[15]

Идея траекторий всерьёз увлекла Ботвинника. Вскоре он дал формальное определение «горизонта» (не путать с «эффектом горизонта»!) как предельно допустимого времени (в полуходах), которое дано для взятия неприятельской фигуры. Статья Ботвинника с описанием его идей после долгих споров была опубликована в «Бюллетене Центрального шахматного клуба СССР» в порядке обсуждения[16]. Идеи Ботвинника встретили достаточно жёсткую оппозицию со стороны математиков и программистов. Позже в своих воспоминаниях Михаил Донской назовёт поставленную Ботвинником задачу научить компьютер мыслить как человек безумной и неконструктивной[17]. Градус споров был вполне понятен — речь шла о том, на что следует расходовать машинное время, ценившееся в те годы на вес золота. Недостаточно формализованные идеи Ботвинника вызывали раздражение у большинства программистов: им было понятно, что для того, чтобы превратить идеи Ботвинника в чёткий алгоритм и работающий машинный код, нужно потратить много времени и сил, причём положительный исход этого вовсе не гарантирован.

Впрочем, сам Ботвинник был полон энтузиазма. Вот как вспоминает свою первую встречу с ним будущий двенадцатый чемпион мира по шахматам Анатолий Карпов:

На первом же занятии он как бы между прочим сообщил нам, что начал работать над шахматной программой для ЭВМ, которая через несколько лет начнёт обыгрывать не только мастеров, но и гроссмейстеров, а со временем не оставит шансов и чемпиону мира. Говорил он спокойно, убеждённо и аргументированно. Мы — дети — поняли только одно: мэтр сошёл с дистанции, но вместо себя готовит бездушного шахматного киборга, который расправится со всеми и снова возвысит имя своего создателя. Шокированные, мы на несколько секунд притихли, а мастер, заметив произведённое впечатление, окинул нас сильным, холодным и уверенным взглядом и сказал:

— Не волнуйтесь, ребята! Сама по себе моя машина не заработает. В неё надо вдохнуть жизнь, вложить душу, а сделать это смогут только талантливые шахматисты — программисты. Вот вы и будете первыми[18].

В 1968 г. в издательстве «Наука» вышла книга Ботвинника, название которой — «Алгоритм игры в шахматы» — звучало как ответ критикам, однако, вопреки заголовку, книга не содержала законченного алгоритма шахматной программы. В предисловии к английскому изданию книги её переводчик Артур Браун, научный обозреватель газеты The New York Times, высказался о содержании следующим образом: «Я думаю, что эта книга является фундаментальной [seminal] работой. Как и все начала [seeds], она компактна, безотлагательна [urgent] и загадочна [cryptic]»[19]. Впрочем, в среде математиков и программистов нашлись и те, кто по крайней мере с осторожным энтузиазмом встретил идеи Ботвинника. К ним относились, например, выступивший в роли редактора книги уже знакомый нам Николай Криницкий[20], соавтор Анатолия Китова, а также новосибирский программист Владимир Бутенко, позже создавший собственную шахматную программу «Эврика»[21].

В числе тех, кто проявил интерес к идеям Ботвинника, был также член-корреспондент АН СССР Алексей Ляпунов, один из основоположников кибернетики, который пригласил Ботвинника выступить на семинаре в Новосибирском государственном университете. Вот что пишет об этой истории сам Ботвинник:

Каким образом узнал Алексей Андреевич о моей работе по шахматной программе — не знаю, скорей всего, от нашего общего друга Н. А. Криницкого. После того как в 1968 году вышла книжка «Алгоритм игры в шахматы», Ляпунов прислал письмо, где настаивал, чтобы я сделал доклад на его семинаре.

Это было весьма неожиданно. Большинство математиков относилось к моей работе с вполне обоснованным скепсисом: личность как шахматиста-профессионала, так и «электротехника-любителя» казалась им неподходящей для исследований в области кибернетики, а необычные идеи — более чем сомнительными. Лишь профессор Криницкий занимал чёткую и благожелательную позицию, но сколько часов мы затратили с ним на жаркие споры, прежде чем стали единомышленниками!.. И вот сам Ляпунов приглашает приехать в Новосибирск!

Доклад на семинаре был в сентябре 1969 года.

Дальнейшее развитие идей Ботвинника было связано (во многом под влиянием замечаний Ляпунова, сделанных им на семинаре) с введением понятия зоны игры[22]. Она включала в себя атакующую фигуру (для неё был придуман специальный термин — «комлевая», «комель» — это часть растения, рога, пера или волоса, прилегающая к корню), перемещающуюся по комлевой траектории с целью забрать фигуру-мишень, а также две команды «отрицающих фигур», действующих по «траекториям отрицания» и старающихся соответственно помочь либо помешать комлевой фигуре выполнить её задачу.

Как и в случае со многими другими эвристиками, расставить точки над i при оценке разумности применения эвристики может только вычислительный эксперимент. Конечно, при скрупулёзном анализе эвристик Ботвинника у программиста-практика неизбежно возникнет ряд вопросов. Например: если вариант в усечённом дереве игры заканчивается взятием фигуры-мишени, можем ли мы быть уверены в стабильности терминальной позиции? Что, если за этим взятием следует ответное взятие фигуры или даже хуже — мат? Как быть, если комлевая фигура в процессе перемещения по своей траектории перестала, например, защищать другую фигуру, будет ли взятие этой фигуры противником включено в зону игры? Работы Ботвинника не содержат ответов на эти вопросы, как и на многие другие. Но, быть может, при попытке практической реализации подхода Ботвинника можно было найти на все эти вопросы вполне разумные ответы?

В январе 1972 г. академик Аксель Берг помог с открытием научной темы по работе над программой во ВНИИЭ (Всесоюзный научно-исследовательский институт электроэнергетики), где Ботвинник руководил одной из лабораторий. Вопрос с выделением машинного времени был решён, вскоре нашлись и программисты. Ими стали Борис Штильман и Александр Юдин, позже к команде подключились также Михаил Цфасман и Александр Резницкий.

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

В 1976 г., зная о работе группы Ботвинника, организаторы II чемпионата мира среди шахматных программ прислали ему приглашение, при составлении ответа на которое родилось название программы — «Пионер», предложенное Штильманом (сам Ботвинник предлагал назвать программу «Человек»).

Однако путь к созданию полноценной шахматной программы, основанной на радикальных идеях, был долгим и тернистым. В качестве промежуточной цели Ботвинник хотел добиться того, чтобы программа была способна решать шахматные этюды, и даже отчитался о некоторых успехах в этой области. Например, «Пионер», по заявлению Ботвинника, мог решить сложный шахматный этюд авторства Гии Надареишвили. Описание того, каким образом было получено решение, вышедшее из-под пера Михаила Моисеевича, внушало сторонним наблюдателям ужас: «Штильман действовал решительно. Как аэронавт, он стал сбрасывать „балласт“, то есть выключать подпрограммы, не имеющие прямого отношения к этому этюду. Правда, Боря немного увлёкся, он отключал и нужные подпрограммы, так что полного авторского решения получить не удалось. Из-за неведомой технической ошибки никак не удавалось закончить одно поддерево (правда, когда я сообщил Г. Надареишвили об этом казусе, он очень удивился: оказывается, ПИОНЕР формировал важное поддерево, о наличии которого не подозревал сам автор!), и я дал указание запретить ПИОНЕРу его анализировать. Пришлось вновь вводить паллиативные правила, заменявшие отсутствующую позиционную оценку, и в итоге, когда уже и не надеялись на благополучное окончание эксперимента, произошло чудо».

В Канаду на чемпионат мира среди шахматных программ 1977 г. Ботвинник отправился не в роли участника, а в роли почётного гостя. Два года спустя он, не теряя оптимизма, писал: «Итак, остался один шаг до практической игры…»[23]

Оставаясь верным выбранному направлению, Ботвинник упорно работал над совершенствованием эвристик. На смену «зонам» пришли «цепочки», у фигур появились «пятнышки», присваиваемые на основе анализа «пучков траекторий», как отдельный элемент анализа появилась Mg* — жертвенная комбинация Греко. На непосвящённого читателя нарратив Ботвинника производил впечатление тягостной алхимии. Нарастало напряжение и внутри команды — после ряда конфликтов в конце 1980-х команду покинули Штильман и Резницкий, после чего проект «Пионер» был закрыт, чтобы затем возродиться с другой командой программистов под названием Chess Computer Sapiens («Разумный шахматный компьютер»). Работа над программой продолжалась до самой смерти Ботвинника в 1995 г. К сожалению, единственным непосредственным продуктом работы Ботвинника и его коллег стали статьи, книги, а также заявления о решении нескольких шахматных этюдов.

Перебравшийся в США Борис Штильман стал сотрудником Университета Колорадо в Денвере (University of Colorado, Denver), где продолжил изыскания в области решения сложных переборных задач, опубликовав компендиум своих идей под названием «Лингвистическая геометрия: от перебора к построению». Штильман постарался обобщить конструктивную часть идей, выработанных в работе над «Пионером», рассматривая возможность декомпозиции поисковой задачи на несколько независимых компонентов. Он пришёл к выводу, что некоторые задачи, подобные этюду Рети[24], могут быть решены при помощи предлагаемого подхода более эффективно, чем при использовании классических подходов.

  1. Haugeland J. (1985). Symbolic Computation. Artificial Intelligence: The Very Idea. MIT Press // https://books.google.ru/books?id=UuQbnAEACAAJ
  2. Turing A. (1953). Digital computers applied to games. n.d. Turing's contribution to “Faster than thought”, ed. B. V. Bowden, London 1953. Published by Pitman Publishing. TS with MS corrections. R.S. 1953b / The Turing digital archive // http://www.turingarchive.org/viewer/?id=461&title=1
  3. Carrera P., Cherubino G., Tortelli M., Rossi G. d., Romano G. (1617). Il gioco de gli scacchi di D. Pietro Carrera diuiso in otto libri, ne' quali s'insegnano i precetti, le vscite, e i tratti posticci del gioco, e si discorre della vera origine di esso. Con due discorsi, l'vno del padre D. Gio. Battista Chèrubino, l'altro del dottor Mario Tortelli, opera non meno vtile a' professori del gioco, che diletteuole a' gli studiosi per la varieta' della eruditione cauata dalle tenebre dell'antichita'. per Giouanni de' Rossi da Trento // https://books.google.ru/books?id=RPvGROWRIikC
  4. Lolli G. (1763). Osservazioni teorico-pratiche sopra il giuoco degli scacchi ossia il Giuoco degli Scacchi: esposto nel sus miglian lume. Stamp. di S. Tommaso d'Aquino // https://books.google.ru/books?id=zych5drFRuQC
  5. Ботвинник М. (1979). От шахматиста — к машине. М.: Физкультура и спорт // https://books.google.ru/books?id=W8aptgEACAAJ
  6. Phony Benoni. Wageningen Caltex (1958) / Chessgames.com: online chess database and community // http://www.chessgames.com/perl/chesscollection?cid=1026124
  7. Мюннингхофф А. (1979). Макс Эйве / Пер. с нидерландского В. И. Мурахвери — М.: Физкультура и спорт.
  8. * Европейское сообщество по атомной энергии.
  9. O'Connor J. J., Robertson E. F. (2003). Machgielis Euwe. School of Mathematics and Statistics University of St Andrews // http://www-history.mcs.st-andrews.ac.uk/history/Biographies/Euwe.html
  10. Ботвинник М. (1979). От шахматиста — к машине. М.: Физкультура и спорт // https://books.google.ru/books?id=W8aptgEACAAJ
  11. Ботвинник М. М. (1961). Люди и машины за шахматной доской / Шахматы в СССР. № 3.
  12. Жанна Михайловна Таль, персональные коммуникации.
  13. В шахматы «играет» ЭВМ. Телевизионные новости. Эфир 24.11.1968 // https://www.youtube.com/watch?v=LZEd6ZtSxCo
  14. Goodman R., Soni J. (2017). The Man Who Built The Chess Machine / Chess.com // https://www.chess.com/article/view/the-man-who-built-the-chess-machine
  15. Ботвинник, М. (1979). От шахматиста — к машине. М.: Физкультура и спорт // https://books.google.ru/books?id=W8aptgEACAAJ
  16. Ботвинник М. М. (1966). Математическое отображение шахматной игры (Пособие для шахматного анализа) / Бюллетень центрального шахматного клуба СССР. № 3.
  17. Кухарева А. (2003). Михаил Донской: Я Билла Гейтса ни в чем не виню. ИД «Компьютерра, 2003. Сайт «Домашний компьютер» — приложение к интернет-изданию «Компьюлента» / Сайт Александра Тимофеева // http://atimopheyev.narod.ru/AfterPIONEER/info/PIONEER/2.htm
  18. Карпов А. (2022). «Мальчик понятия не имеет о шахматах». Гроссмейстер Карпов — о школе, первых деньгах и знакомстве с Ботвинником / Мел, 25.01.2022 // https://mel.fm/zhizn/knigi/4218760-malchik-ponyatiya-ne-imeyet-o-shakhmatakh-grossmeyster-karpov--o-shkole-pervykh-dengakh-i-znakomstve
  19. Botvinnik M., Brown A. (1970). Computers, chess and long-range planning. Springer-Verlag // https://books.google.ru/books?id=ZYxRAAAAMAAJ
  20. Ботвинник М. М. (1968). Алгоритм игры в шахматы. — М. // http://whychess.ru/776algoritm-igru-v-shahmatu.html
  21. Книжник С. (2009). Наставник для компьютера / Наука в Сибири. № 17 (2702), 30 апреля // http://www.nsc.ru/HBC/hbc.phtml?5+500+1
  22. Ботвинник М. М. (1987). Аналитические и критические работы. Статьи и воспоминания // http://whychess.ru/botvinnik-stati-vospominaniua.html
  23. Ботвинник, М. (1979). От шахматиста — к машине. М.: Физкультура и спорт // https://books.google.ru/books?id=W8aptgEACAAJ
  24. * Этюд Рети — знаменитый этюд (белые: Крh8, пешка с6, чёрные: Крa6, пешка h5), в котором используется неевклидова геометрия шахматной доски: движение короля по диагонали занимает столько же ходов, сколько движение по прямой.

Loading comments...