Охота на электроовец. Большая книга искусственного интеллекта
Шрифт:
И всё же программа для игры в подкидного дурака была слишком локальным явлением. Кронрод предложил использовать другую игру — шахматы, которые пользовались всемирной популярностью [695] . Но для реализации такого амбициозного для того времени проекта мощностей М-2 было явно недостаточно. Поэтому проект стартовал только вслед за появлением в ИТЭФ новой машины — М-20. Созданием шахматной программы занялись Владимир Арлазаров, Георгий Адельсон-Вельский, Александр Животовский и Анатолий Усков.
695
Ландис Е. М., Яглом И. М. (2001). Об Александре Семёновиче Кронроде / Успехи математических наук. Т. 56, вып. 5(341). С. 191–201 // https://doi.org/10.4213/rm448
В 1965 г. в порядке международного обмена группа западных учёных посетила СССР. В составе весьма представительной делегации был и автор термина «искусственный интеллект» Джон Маккарти. Визит начался с участия в III Всесоюзном совещании по автоматическому управлению (технической кибернетике), которое было открыто 20 сентября в Одессе и продолжилось на борту парохода «Адмирал Нахимов» [696] . Затем был организован тур по советским научно-исследовательским институтам. Делегация посетила Киев, где состоялась встреча с академиком Глушковым и профессором Ивахненко, а также с директором Киевского института автоматики Борисом Тимофеевым. Также состоялись
696
Академия наук СССР, Трапезников В.А., Национальный комитет СССР по автоматическому управлению (1967). Оптимальные системы, статистические методы: труды III Всесоюзного совещания по автоматическому управлению (технической кибернетике), Одесса, 20–26 сентября 1965 г. Наука // https://books.google.ru/books?id=S_fmAAAAMAAJ
697
Nelson W. L. (2011). 1965 USSR Trip / MYBELLLABSDAYS // https://mybelllabsdays.wordpress.com/2011/12/04/1965-ussr-trip/
В Москве Джона Маккарти встретил его старый знакомый — академик Андрей Ершов. Ершов и Маккарти познакомились в декабре 1958 г. в Теддингтоне (Великобритания) на конференции по автоматизации мыслительных процессов. Вместе с Ершовым Маккарти отправился в Новосибирск, в Академгородок (Ершову стоило больших трудов согласовать этот визит), откуда через Москву вернулся домой [698] . О тёплых отношениях, сложившихся в ходе этой поездки между Ершовым и Маккарти, свидетельствует их переписка. Например, Маккарти пересылает Ершову слова одной из песен Боба Дилана, а сам просит Ершова прислать ему запись песни «Шла машина из Тамбова» [699] . Спустя три года Маккарти повторно посетит Академгородок, где проведёт два месяца в качестве сотрудника Вычислительного центра, прочитав курс по верификации программ в Новосибирском государственном университете [700] .
698
Маккарти Д. (2006). Вспоминая Андрея Петровича Ершова / Андрей Петрович Ершов — учёный и человек / под ред. А. Г. Марчука. — Новосибирск: Издательство Сибирского отделения РАН // https://www.iis.nsk.su/files/book/file/Ershov_kniga.pdf
699
Маккарти Д. (1965). Письмо Андрею Ершову / Архив академика А. П. Ершова // http://ershov.iis.nsk.su/node/777848
700
Маккарти Д. (2006). Вспоминая Андрея Петровича Ершова / Андрей Петрович Ершов — учёный и человек / под ред. А. Г. Марчука. — Новосибирск: Издательство Сибирского отделения РАН // https://www.iis.nsk.su/files/book/file/Ershov_kniga.pdf
За время поездки Маккарти познакомился с Кронродом и узнал о советских усилиях в области шахматного программирования, тогда же и родилась идея об организации первого международного матча: программа ИТЭФ против детища Маккарти.
Позже Маккарти вспоминал крылатую фразу Кронрода: «Шахматы — это дрозофила искусственного интеллекта». Рассуждая об этой фразе, он заметил, что, с одной стороны, шахматы совершенно очевидно не являются «дрозофилой» для всех областей ИИ, но, с другой стороны, и дрозофила не является «дрозофилой» для всех исследований в области генетики [701] .
701
McCarthy J. (2005). The History of Computer Chess: An AI Perspective (Video). Mountain View, CA, USA: Computer History Museum // https://www.youtube.com/watch?v=AvU_fnLWRRk
Матч между советской и американской шахматными программами начался в ноябре 1966-го и продлился около года: четыре партии игрались одновременно, а ходы программ передавались по телеграфу. Программа ИТЭФ одержала победу в матче со счётом 3 : 1 (две победы и две ничьих).
По оценкам гроссмейстеров Бронштейна и Таля, программа ИТЭФ играла в силу третьего шахматного разряда [702] .
До наших дней сохранился интереснейший документ — исходный код шахматной программы ИТЭФ для машины М-20 [703] : 121 страница бланков, заполненных машинными кодами, снабжёнными загадочными комментариями типа «Таня не журись», «шлёп», «дребедень», «пуп» и даже «ухуду пешки», в полной мере даёт представление о секретных техниках советских программистов 1960-х. На самом деле за этими словами нередко скрывались аббревиатуры названий соответствующих подпрограмм. Например, УХУДУ — подпрограмма упорядочения ходов, удовлетворяющих данному условию, ПУП — подпрограмма переупорядочения ходов [704] , [705] .
702
Кронрод А.С. (2004) Беседы о программировании / Предисл. Л. А. Кронрод. Послесл. В. Л. Арлазарова. Изд. 2-е, стереотипное. — М.: Едиториал УРСС // https://nsu.ru/xmlui/handle/nsu/9050
703
http://greko.su/m20-itef.pdf
704
Рузайкин Г. И., Коновалов С. П. (2005). Рассказ «бабки-повитухи» / Мир ПК. № 10 // https://www.osp.ru/pcworld/2005/10/317270/
705
Адельсон-Вельский Г. М., Арлазаров В. Л., Битман А. Р., Животовский А. А., Усков А. В. (1970). О программировании игры вычислительной машины в шахматы / Успехи математических наук. Т. 25, вып. 2 (152). С. 221—260 // http://mi.mathnet.ru/umn5324
Команда Кронрода придерживалась подхода, который получил название «программирование в содержательных обозначениях». Этот метод, предложенный в 1953 г. Александром Брудно, предполагал использование для написания программ специальных бланков, в правой части которых записывались машинные коды, а в левой — соответствующие им команды в содержательной, удобной для чтения человеком форме [706] . Естественными противниками этого подхода были сторонники языков высокого уровня, таких как алгол, к числу которых относились уже знакомые нам академик Ершов, Владимир Курочкин (между прочим, автор знаменитой реализации Алгол-60 для машин БЭСМ, получившей прозвище «Алгол Курочкина»), а также Константин Семендяев, соавтор «Справочника по математике для инженеров
706
Гутер Р. С., Арлазаров В. Л., Усков А. В. (1965). Практика программирования: Справочник. — М.: Наука.
В 1960-е между сторонниками обоих лагерей разразилось эпическое сражение, выплеснувшееся на страницы периодических изданий в виде ряда писем, рецензий и статей [707] . Сторонники «программирования в содержательных обозначениях» настаивали на неэффективности кода, производимого компиляторами алгола, неудобстве отладки (важно понимать, что в 1960-е отладка программ, написанных на алголе, всё равно происходила в машинных кодах) и на том, что экономия, достигаемая за счёт автоматизации перевода программы из человеко-читаемой формы в машинный код, является эфемерной. Гораздо проще нанять кодировщиц, месячная заработная плата которых сопоставима с себестоимостью часа работы машины, которые будут переводить в машинный код «содержательные обозначения» [708] . В конечном счёте победа досталась сторонникам языков высокого уровня, хотя программирование в машинных кодах иногда применяется и в наши дни там, где важно добиться максимальной производительности программ. В частности, современные шахматные программы нередко содержат вставки на языке ассемблера [709] или напрямую в машинных кодах.
707
Ершов А.П., Лавров С.С., Семендяев К.А. (1966). Письмо в «Литературную газету» / Архив академика А. П. Ершова // http://ershov.iis.nsk.su/node/806835
708
Гутер Р. С., Арлазаров В. Л., Усков А. В. (1965). Практика программирования: Справочник. — М.: Наука.
709
* Язык ассемблера (assembly language) — язык программирования низкого уровня. Он представляет собой систему обозначений, используемую для представления в удобочитаемой форме программ, записанных в машинном коде. Команды языка соответствуют отдельным командам, выполняемым процессором машины, или их коротким последовательностям. Поскольку наборы команд различаются в зависимости от используемой аппаратной платформы, в действительности мы имеем дело не с единым языком, а с классом аппаратно-специфичных языков, хотя и разделяющих обычно некоторые условные обозначения. Например, команда ADD, используемая для сложения чисел, почти во всех этих языках называется именно так.
К сожалению, в развитие шахматного проекта ИТЭФ вмешалась политика, и в этот раз, увы, вовсе не в позитивном ключе. В 1968 г. Кронрод стал одним из подписантов «Письма девяноста девяти» — коллективного открытого письма советских математиков в защиту своего коллеги Александра Есенина-Вольпина, принудительно помещённого в психиатрическую больницу в связи с его диссидентской деятельностью. Вероятно, это и стало причиной увольнения Кронрода и ряда его коллег из ИТЭФ. Адельсон-Вельский, Арлазаров и Усков перешли в Институт проблем управления АН СССР, где спустя некоторое время стартовала работа над новой шахматной программой, основанной на исходных текстах программы ИТЭФ. В её разработке участвовали Михаил Донской, Александр Битман, Андрей Леман, А. М. Бараев и Марианна Розенфельд. Последняя и предложила рабочее название программы: КВО, то есть программа, которая всех обыгрывает [710] .
710
Костинский А. (2002). Компьютерные программы, как конец спортивных шахмат / Радио Свобода // https://www.svoboda.org/a/24203756.html
Аппаратной платформой для новой программы стал один из британских мейнфреймов ICL 4/70, закупленных СССР в начале 1970-х. Эта машина была совместима с IBM 360, при этом на неё не распространялись экспортные торговые ограничения времён холодной войны [711] . В те годы активно обсуждалась возможность широкой программы кооперации с компанией ICL, которая предлагала передачу СССР технической документации на машины, совместную работу над программным обеспечением, а также общий проект по созданию ЭВМ четвёртого поколения [712] .
711
Berenyi I. (1970). Computers in Eastern Europe / Scientific American, Vol. 223, Iss. 4.
712
Малиновский Б. Н. (1995). История вычислительной техники в лицах. — К.: фирма «КИТ», ПТОО «А.С.К.» // http://lib.ru/MEMUARY/MALINOWSKIJ/0.txt
В 1972 г. программа, разработанная сотрудниками Института проблем управления, играла уже весьма неплохо, и газета «Комсомольская правда» предложила организовать на своих страницах товарищеский матч машины против читателей. Именно в ходе подготовки к этому матчу шахматный обозреватель «Комсомолки» Виктор Хенкин предложил дать программе имя «Каисса» в честь богини-покровительницы шахмат [713] .
Забавно, что в некоторых источниках Каиссу называют «древнегреческой богиней шахмат» или «древнегреческой музой шахмат». Разумеется, это нонсенс. Прототип современных шахмат — индийская игра чатуранга (санскр. ???????; caturanga, от названия боевого построения, упоминающегося в Махабхарате), она возникла в Индии во времена правления династии Гуптов примерно в V в., то есть спустя шесть веков после завершения древнегреческого периода. На территории Греции эта игра под названием «затрикион» (z????????) появляется в византийский период, ещё несколькими веками позже [714] . Каисса — героиня одноимённой поэмы английского писателя-востоковеда Уильяма Джонса, написанной в 1763 г. и опубликованной в 1772 г. Сюжет поэмы незатейлив: Марс, пленённый красотой дриады Каиссы, смог добиться её взаимности лишь благодаря изобретению шахмат [715] . Вполне вероятно, что имя Каисса восходит к имени нимфы Скаккии (Scacchia) — героини опубликованной в 1527 г. поэмы Марко Джироламо Виды «Игра в шахматы» (Scacchia, Ludus) (шахматы в средневековой латыни обозначались словом scacci) [716] . Так что, вероятно, «Каисса» — это всё та же многострадальная «чатуранга», совершившая полное приключений лингвистическое путешествие.
713
Донской М. История «Каиссы» / Виртуальный компьютерный музей // http://www.computer-museum.ru/games/kaissa1.htm
714
Chess: Ancient precursors and related games / Encyclopaedia Britannica. 2002 // https://www.britannica.com/topic/chess
715
Chalmers A., Johnson S. (1810). The Works of the English Poets, from Chaucer to Cowper: Including the Series Edited with Prefaces, Biographical and Critical. J. Johnson // https://books.google.ru/books?id=b0LVAAAAMAAJ
716
Murray H. J. R. (2015). A History of Chess. Skyhorse Publishing // https://books.google.ru/books?id=dNSBCgAAQBAJ
Возвышение Меркурия. Книга 4
4. Меркурий
Фантастика:
героическая фантастика
боевая фантастика
попаданцы
рейтинг книги
Отморозок 3
3. Отморозок
Фантастика:
попаданцы
рейтинг книги
Дремлющий демон Поттера
Фантастика:
фэнтези
рейтинг книги
