Охота на электроовец. Большая книга искусственного интеллекта
Шрифт:
Долгое время о биографии Алекса Бернстайна, несмотря на его весомый вклад в историю развития шахматного программирования, было известно немного. Некоторые подробности удалось установить в результате переписки с его ныне здравствующими родственниками. Отец Бернстайна — математик Владимир Бернштейн, уроженец Санкт-Петербурга, был учеником профессора Якова Успенского. В 1919 г. Владимир решает покинуть разорённую Гражданской войной Советскую Россию. Во время пересечения советско-финской границы в районе Выборга он получил серьёзное пулевое ранение, которое стоило ему потери лёгкого. В эмиграции Владимир Бернштейн сменил несколько стран пребывания. Какое-то время он жил в Лондоне, а в середине 1920-х перебрался во Францию, где поступил в Сорбонну и в 1930-м защитил докторскую диссертацию, посвящённую проблеме единственности для рядов Дирихле. Опубликованная в 1933 г. монография Бернштейна, посвящённая этим рядам, получила очень высокую оценку от знаменитого французского математика Жака Адамара. В 1931 г. Бернштейн получил итальянское гражданство и преподавал аналитическую геометрию в Павии и математический анализ в Милане. Именно в Милане и родился Алекс Бернстайн. К сожалению, здоровье Владимира было серьёзно подорвано из-за ранения, и в 1936 г. он скоропостижно скончался в Милане от пневмонии, не дожив до своего 36-летия. Примерно в 1940 г. юный Алекс с матерью и её вторым мужем перебираются в Нью-Йорк. Здесь он окончил школу, колледж, а затем Колумбийский университет, где изучал математику и средневековую французскую литературу [667] , [668] . Во время Корейской войны его призывают в армию. Благодаря познаниям в области математики он попадает в специальное техническое подразделение, где получает первые знания в области компьютерной техники. Сын Алекса, Макс Бернстайн, так описывает историю знакомства своего отца с компьютерами: «Когда его призвали в армию (это была война в Корее), он упомянул свои познания в области математики, и его пригласила на собеседование женщина, которая создавала специальное техническое подразделение и искала новобранцев, хорошо разбирающихся в математике. Сама она была русской и когда увидела его фамилию, то спросила: „Бернштейн? Вы случайно не в родстве с Владимиром Бернштейном?“ Когда он сказал, что является сыном Владимира, она ответила: „Пойдём, я научу тебя компьютеру“. Таким образом, именно армия дала ему образование в области компьютеров. Я не знаю подробностей его работы в армии, но она была весьма разнообразной, мне смутно помнится, как он рассказывал о попытках оптимизировать оборонительные позиции США на континенте (в случае авианалётов? ракетных атак?) и про использование полиномов Чебышёва для чего-то связанного с кораблями для военно-морского флота» [669] .
667
Mazliak L., Perfettini T. (2019). Under the protection of alien wings. Mathematicians in the Russian emigration in inter war France // https://hal.archives-ouvertes.fr/hal-02280296/document
668
Элизабет Рэнд, личные коммуникации.
669
Макс Бернстайн, личные коммуникации.
Идея создания шахматной программы принадлежала изначально товарищу Алекса Бернстайна Хэлу Джадду и была поддержана Чарльзом ДеКарло — главой отдела прикладной науки компании [670] . Бернстайн в итоге возглавил команду по созданию шахматной программы, в которую помимо него вошли Майкл де Ван Робертс, Тимоти Арбакл и Мартин Бельски. Артур Бисгайер стал шахматным советником проекта. Разработанная программа относилась к типу B по терминологии Шеннона, выполняя перебор на четыре полухода в глубину и рассматривая по семь наиболее перспективных альтернатив на каждом уровне дерева перебора.
670
McCorduck P. (2004). Machines who think: a personal inquiry into the history and prospects of artificial intelligence. A. K. Peters // https://books.google.ru/books?id=aH9QAAAAMAAJ
Эти ограничения были связаны со временем, необходимым для выбора хода: обычно машина затрачивала на принятие решения около восьми минут, а если на каждом уровне дерева перебора анализировалось не семь, а восемь вариантов, то этот интервал возрастал бы до 15 минут. При этом увеличение глубины перебора на один полуход приводило бы к увеличению времени расчёта до шести с половиной часов. Современному компьютеру на те же вычисления потребовались бы доли секунды [671] , [672] .
671
Bernstein A., Van Roberts R. (1958). Computer V. Chess player / Scientific American 198, pp. 96—105.
672
Muller K., Schaeffer J. (2018). Man Vs. Machine: Challenging Human Supremacy at Chess. New York, NY, USA: Russell Enterprises, Incorporated // https://books.google.ru/books?id=0GV2DwAAQBAJ
Несмотря на то что команда Бернстайна получила уникальные результаты, знаем мы о ней сегодня очень мало. Биографические данные участников команды крайне скудны, неизвестны даже годы жизни авторов первой в мире шахматной программы. О самом Бернстайне известно, что он научился играть в шахматы в девять или десять лет. Он не проиграл ни одной партии своей программе, но, отзываясь о её игре, однажды заметил, что «один или два раза она сыграла так хорошо, что это вызвало у меня волненье» [673] . Многие источники по истории программирования сообщают, что Бернстайн был межуниверситетским чемпионом страны, но в шахматных источниках отсутствуют подтверждения этого факта. Хотя Бернстайн начал работу над шахматной программой только в 1956 г., он успел поучаствовать в знаменитой Дартмутской конференции, куда прибыл вместе со своими коллегами по IBM — уже знакомым нам Артуром Сэмюэлом и Эдвардом Муром [674] . «Алекс Бернстайн, приехавший из Нью-Йорка, чтобы поговорить о шахматной программе, сразился в шахматы с Маккарти, что эквивалентно индивидуальному поединку (mano-a-mano) в мире науки. Бернстайн победил, несмотря на то, что предоставил противнику фору, играя вслепую. После этого, по возвращении в Нью-Йорк, он создал программу, чтобы окончательно победить Маккарти. Поскольку его визит в Дартмут не совпал с визитом Ньюэлла и Саймона, Бернстайн лишь позже узнал о том, что они независимо пришли к некоторым идеям в отношении одной и той же задачи», — пишет упоминавшаяся нами в первой части писательница и специалистка по истории ИИ Памела Маккордак [675] . Сам Маккарти в своих воспоминаниях немного более скуп: «Алекс Бернстайн из IBM представил свою шахматную программу на стадии разработки. Моей реакцией было изобрести и порекомендовать ему альфа-бета-отсечение. Его это не убедило» [676] . Работа Бернстайна так и не получила продолжения, и эстафета перешла к другим командам. Шахматный проект изначально развивался по остаточному принципу, во всяком случае в интервью The New Yorker Бернстайн сетовал на занятость в других проектах IBM [677] . Изначальным или по крайней мере официальным оправданием менеджеров IBM, позволивших Бернстайну использовать первые IBM 704 для столь несерьёзной вещи, как программирование шахмат, была надежда на то, что в случае успеха это послужит демонстрацией того, что компьютеры могут решать задачи, сопоставимые по сложности с теми, с которыми сталкивается бизнес. Однако акционеры не оценили достижения Бернстайна и Сэмюэла и были не в восторге от того, что ресурсы фирмы тратились на игры [678] .
673
Logan A., Gill B. (1958). Runner-up / The New Yorker, November 29, p. 43 // https://www.newyorker.com/magazine/1958/11/29/runner-up-4
674
Solomonof G. (2006). Ray Solomonoff and the Dartmouth Summer Research Project in Artificial Intelligence, 1956 // http://raysolomonoff.com/dartmouth/dartray.pdf
675
McCorduck P. (2004). Machines who think: a personal inquiry into the history and prospects of artificial intelligence. A. K. Peters // https://books.google.ru/books?id=aH9QAAAAMAAJ
676
McCarthy J. (2006). The Dartmouth Workshop--as planned and as it happened // http://www-formal.stanford.edu/jmc/slides/dartmouth/dartmouth/node1.html
677
Logan A., Gill B. (1958). Runner-up / The New Yorker, November 29, p. 43 // https://www.newyorker.com/magazine/1958/11/29/runner-up-4
678
McCorduck P. (2004). Machines who think: a personal inquiry into the history and prospects of artificial intelligence. A. K. Peters // https://books.google.ru/books?id=aH9QAAAAMAAJ
В наследие от Бернстайна нам осталось несколько статей, фотографий и даже короткое видео, демонстрирующее игру Бернстайна со своим детищем.
Рис. 67. Алекс Бернстайн демонстрирует, как компьютер IBM 704 играет в шахматы
4.5.4 СССР и США — творческая атмосфера созидания
В 1958 г. уже упоминавшиеся нами Аллен Ньюэлл, Герберт Саймон и Клифф Шоу разработали собственную шахматную программу в Институте технологий Карнеги (Carnegie Institute of Technology, CIT). Обычно её называют NSS — по первым буквам фамилий создателей, либо просто CP (Chess Program, «шахматная программа»), или даже CP-1. Это была первая шахматная программа, написанная на языке высокого уровня. Этим языком был язык IPL (Information Processing Language, «язык обработки информации»), созданный Шоу и ставший одним из предшественников языка Lisp.
Как и программа Бернстайна, NSS относилась к шенноновскому типу B, однако число рассматриваемых вариантов на каждом из уровней дерева перебора не было фиксированным. Вместо этого программа содержала несколько генераторов ходов, каждый из которых предлагал список ходов, соответствующих определённой цели. Важным нововведением стало использование одного из ранних вариантов альфа-бета-отсечения. NSS работала на компьютере JOHNNIAC (JOHn von Neumann Numerical Integrator and Automatic Computer, «Численный интегратор и автоматический компьютер Джона фон Неймана») и была способна обыграть в шахматы новичка.
В 1959 г. первокурсники Массачусетского технологического института Алан Коток, Элвин Берлекэмп, Майкл Либерман, Чарльз Ниссен и Роберт Вагнер, будучи студентами Джона Маккарти, начали собственный шахматный проект. В качестве отправной точки они выбрали программу Бернстайна, добавив к ней альфа-бета-отсечение. Программа Котока — Маккарти была написана на фортране, работала на мейнфрейме (мощном сервере) IBM 7090 и была способна анализировать около 1100 позиций в минуту. Программа была готова в 1962 г. и легла в основу дипломной работы Котока.
Примерно в то же время задачей создания полноценной шахматной программы озаботились советские программисты. Как и в США, в конце 1950-х — начале 1960-х гг. такие проекты появлялись в первую очередь в коллективах, связанных с разработкой вычислительных машин, и так же, как и в США, выполнялись энтузиастами в условиях, когда руководство не испытывало большого восторга от подобного нецелевого использования дефицитных вычислительных ресурсов. Однако стоило таким проектам получить хотя бы минимальную поддержку со стороны руководства, хотя бы в форме непротивления, как увлечённые программисты были готовы буквально свернуть горы.
Одним из покровителей шахматного программирования в это время стал Михаил Шура-Бура — один из ведущих проектировщиков машины М-20. С 1953 г. Шура-Бура работал в отделении прикладной математики Математического института АН СССР (МИАН), на основе которого в середине 1950-х гг. был создан Институт прикладной математики АН СССР (сокращённо — ИПМ). Под руководством академика Келдыша Шура-Бура работал во главе отдела программирования ИПМ над задачами расчёта траекторий искусственных спутников Земли. Первые программы для решения этих задач были разработаны для ЭВМ «Стрела», а позже расчёты продолжились на вступившей в строй в 1958 г. машине М-20.
По одной из распространённых легенд, Шура-Бура стал прототипом персонажа романа братьев Стругацких «Понедельник начинается в субботу» по имени Роман Петрович Ойра-Ойра. Существовали и иные предположения. Например, авторы русскоязычной «Википедии» считают (без указания источника), что этим прототипом был другой известный советский учёный — математик Сергей Новиков [679] . Борис Стругацкий, однако, отрицал обе версии, сообщив, что Роман Ойра-Ойра — герой без прототипа [680] .
679
Википедия //(версия от 29.05.2019).
680
OFF-LINE интервью с Борисом Стругацким. Сентябрь 2009 / Аркадий и Борис Стругацкие: официальный сайт // http://www.rusf.ru/abs/int0132.htm
Братьям Стругацким, безусловно, удалось создать на страницах «Понедельника» целый ряд архетипических образов советских учёных. Их произведение передаёт дух, настроения, привычки и проблемы, характерные для научно-технической интеллигенции середины XX в., именно поэтому людей и коллективы, которые теоретически могли бы быть прототипами персонажей «Понедельника», мы можем найти где угодно. Быть может, НИИЧАВО — это лебедевская Феофания? В конце концов, она находилась неподалёку от Лысой Горы, а отчество смотрительницы музея Наины Киевны Горыныч является отсылкой к Киеву, в предместьях которого и располагалась обитель создателей МЭСМ! Высказываются и такие предположения [681] , [682] .
681
Глушкова А., Жабин С. (2019). Виртуальная страна Кибертония — субкультура советских программистов / Спильне. 8 апреля // https://commons.com.ua/uk/virtualnaya-strana-kibertoniya/
682
Игорь Осипчук (2013). Дочь академика Глушкова: «Прочтя 20 страниц математического текста, отец запоминал его наизусть» / Факты // https://fakty.ua/169041-prochtya-20-stranic-matematicheskogo-teksta-otec-zapominal-ego-naizust