«Машина Тьюринга» – предок современного компьютера
«Машина Тьюринга» – предок современного компьютера
Внимание Алана давно привлекала новая проблема, находящаяся в самом сердце математики, но что более важно – проблема, которая нашла отклик и в его сердце. Решение этой проблемы не требовало знаний, приобретенных по учебной программе, и затрагивало только всеобщие знания о природе вещей. Но такая, на первый взгляд, крайне заурядная проблема привела его к идее, впечатлившей многих. В 1935 году Алан начал размышлять о машинах.
«Ведь, разумеется, человеческое тело представляет собой машину. Очень сложную машину с намного и намного более сложным устройством, чем любая другая, созданная человеком, но все-таки машина». Такое парадоксальное предположение однажды было высказано Бревстером в его книге «Чудеса природы». С одной стороны, тело является живым существом, точно не машиной. Но с другой стороны, если сместиться на более детальный уровень описания и рассмотреть его с точки зрения «маленьких живых кирпичиков», его по праву можно было назвать машиной.
Люди лишь говорили о неких «механических правилах» для математиков, о вращении ручки какой-то «сверхъестественной машины», но никто так и не принялся за моделирование такой машины. И именно это он и намеревался сделать. И хотя на самом деле его сложно было назвать «неискушенным непрофессионалом», он принялся решать проблему в своей особой безыскусной манере, непоколебимой перед необъятностью и сложностью математики. Свою работу он начал с чистого листа.
Разумеется, уже существовали машины, которые производили операции с символами. Такой машиной была пишущая машинка. Еще в детстве Алан мечтал изобрести пишущую машинку; у миссис Тьюринг имелась печатная машинка; и он в первую очередь задал себе вопрос: что имеется в виду, когда пишущую машинку называют «механическим» устройством? Это означало лишь то, что ее ответ на каждое конкретное действие оператора, был строго определенным. Можно было заранее с предельной точностью сказать, как машина будет вести себя в случае любого непредвиденного обстоятельства. Но даже о скромном устройстве пишущей машинки можно было сказать больше. Ответ механизма должен зависеть от его текущего состояния или того, что сам Алан назвал текущей конфигурацией машины. Так, например, пишущая машинка обладает конфигурацией «нижнего регистра» и конфигурацией «верхнего регистра». Эту идею Алану удалось облечь в более общую и абстрактную форму. Его интересовали такие машины, которые в любой момент времени могли находиться в одной из конечного числа возможных «конфигураций». Таким образом, как и в случае с клавиатурой пишущей машинки, при условии существования конечного числа операций, производимых машиной, появлялась возможность дать полную оценку ее образу действий, которая не может быть изменена.
Тем не менее, пишущая машинка обладала еще одним свойством, необходимым для ее функционирования. Ее каретка могла передвигаться, эти перемещения соотносились с листом бумаги, и печать символов происходила независимо от его положения на странице. Алан включил и эту идею тоже в свое представление машины более общего вида. Она должна была обладать «заложенными» конфигурациями и возможностью перемещать свою позицию на линии печати. Действие машины не зависело от своей позиции.
Не принимая во внимание остальные ненужные детали вроде полей, контроля за линией печати и другие, эти основные идеи давали достаточное представление об устройстве пишущей машинки. Ограниченное количество возможных конфигураций и позиций, и то, каким образом клавиша знака соотносилась с печатным символом, клавиша переключения регистра – смену положения от «нижнего» к «верхнему» регистру, а также клавиша пробела и функция возврата каретки на одну позицию назад, – все эти функции являлись наиболее важными для устройства машинки. Если бы любой инженер получил подобное описание функций устройства, в результате у него получилась бы типичная пишущая машинка, не учитывая ее цвет, вес, форму и другие признаки.
Но пишущая машинка обладала слишком ограниченным набором функций, чтобы служить моделью. Несомненно, она оперировала символами, но могла лишь записывать их, а также требовала присутствия машиниста, отвечающего за выбор символов и изменения конфигураций и позиций устройства, по одному за раз. Так какой же, задавался вопросом Алан Тьюринг, была бы машина наиболее общего вида, которая могла оперировать символами? Чтобы быть машиной, она должна обладать свойством пишущей машинки: иметь заданное количество конфигураций и четко определенное действие, закрепленное за каждой из них. И при этом она должна была иметь возможность выполнять намного больше. Таким образом, он представил в своем воображении машины, которые по сути представляли собой более мощные пишущие машинки.
Для простоты описания он представил машины, имеющие лишь одну рабочую строку. Это было лишь технической особенностью устройства, которая позволяла не учитывать наличие полей и контроля линии письма. Между тем, оставалось важным, чтобы количество поступаемой бумаги было неограниченным в обе стороны. В представлении Алана каретка его супер-пишущей машинки могла перемещаться на неограниченное количество позиций вправо и влево. Для большей определенности он представил бумагу в виде ленты, разделенной на ячейки таким образом, чтобы в каждую ячейку мог записан один символ. Так машины Тьюринга обладали конечным количеством действий, при этом сохраняя возможность работать на неограниченном пространстве.
Следующей необходимой функцией для машины была возможность считывать информацию или, по словам самого Алана, «сканировать» ячейку ленты, на которой остановилось считывающее устройство. Также она должна была обладать функцией не только записи символов, но и уметь их стирать. При этом она могла переместиться только на одну ячейку за раз. В таком случае какие действия оставались для машиниста пишущей машинки? Алан действительно отметил в своей работе возможность того, что он сам называл «машинами выбора», в которых внешний оператор должен принимать решения в определенных моментах работы устройства. Вместе с тем целью его работы было создание именно автоматических машин, для работы которых не потребуется вмешательство человека. С самого начала он хотел всесторонне изучить так называемую «сверхъестественную машину». Существенной идеей для подобного устройства оставалась возможность производить решение без вмешательства человеческого суждения, воображения или интеллекта.
Любая «автоматическая машина» должна была работать сама по себе, производя считывание и запись информации, перемещаясь вперед и назад, в соответствии с тем, как она была задумана. На каждом этапе ее работы действия должны быть строго определены текущей конфигурацией и считанным символом. Для большей точности конструкция машины должна была уметь определять свое действие в случае каждой комбинации конфигурации и считанного символа:
– записать новый (заданный) символ в пустую ячейку, или оставить уже записанный символ в неизменном виде, или стереть символ и оставить ячейку пустой;
– остаться в прежней конфигурации или сменить ее на другую (заданную) конфигурацию;
– переместиться на ячейку влево, или вправо, или остаться в текущей позиции.
Если всю эту информацию, определяющую действия машины, записать, получится «таблица переходов», имеющая конечное количество действий. Такая таблица может полностью описать работу машины, и независимо от того, была ли машина сконструирована или нет, такая таблица могла представить всю необходимую информацию о ее работе. С абстрактной точки зрения, именно таблица и являлась самой машиной.
С изменениями, вносимыми в таблицу, изменялось бы и поведение самой машины. Бесконечное множество таблиц соответствовало бы бесконечному множеству возможных машин. Алану удалось воплотить неясную идею «определенного метода» или «механического процесса» в чем-то более точном – «таблице переходов».
Но даже такая простая машина могла выполнять не только суммирование. Такая машина могла производить действие распознавания, например, «найти первый символ справа». Машина с более сложной программой могла производить умножение, повторяя действие копирования одной группы единиц, при этом стирая по одной единице из другой группы, и распознавая, когда необходимо прекратить производить данные действия. Такая машина могла также производить действие принятия решений, например, она могла решить, является ли число простым или составным, делится ли оно на другое заданное число без остатка. Совершенно очевидно, что этот принцип мог быть использован самыми различными способами, чтобы представить вычисления в механистическом виде.
Более того, Алан пришел к другому важному удивительному выводу: в такой «машине» между «числами» и производимыми с ними операциями не было никакого существенного различия. С точки зрения современной математики, все они представляли собой лишь символы.
Из этого следовало, что одна машина могла воспроизводить действия, выполняемые любой другой машиной. Такое устройство Алан и назвал универсальной машиной. Она должна была считывать дескриптивные числа, зашифровывать их в таблицы, а затем производить действия этих таблиц. Универсальная машина могла выполнять любые действия, которые производила любая другая таблица… Такая машина могла выполнять любые действия, и этого было достаточно, чтобы на время крепко задуматься. Более того, такая машина имела совершенно определенный вид, и Алан разработал соответствующую таблицу для универсальной машины.
И самое главное – Алану удалось доказать, что математика никогда не будет исчерпана никаким конечным множеством операций.
Дальше он выразил наиболее важную идею для своего исследования: «Действия компьютера в любой момент времени строго определены символами, которые он считывает также, как и его «состояние» в текущий момент. Мы можем предположить, что существует некоторый предел B для числа символов или ячеек, которые компьютер может считывать за одну единицу времени. Чтобы считать следующие символы, ему придется сделать шаг к следующей ячейке. Также предположим, что число подобных состояний, которые должны быть приняты во внимание, также конечно. Причины тому по своей природе схожи с теми, что возникают при ограничении количества символов. Если мы допустим бесконечное число состояний, некоторые из них будут «в некоторой степени похожими» и вследствие этого могут быть перепутаны. Следует еще раз подчеркнуть, что подобное ограничение не оказывает серьезного влияния на производимое вычисление, поскольку использования более сложных состояний можно попросту избежать, записав больше символов на рабочую ленту».
Слово «компьютер» здесь использовалось в своем значении, относящемся к 1936 году: лицо, выполняющее вычисления. В другом месте своей работы он обратился к идее, что «человеческая память неизбежно является ограниченным ресурсом», но эту мысль он выразил в ходе своего размышления о природе человеческого разума. Его предположение, на котором основывались его доводы о том, что состояния были исчислимы, было довольно смелым предположением. Особенно примечательно это было тем, что в квантовой механике физические состояния могли быть «в некоторой степени похожими». Далее он продолжил рассуждать о природе вычислений: «Представим, что производимые компьютером операции разложены на «простые операции», настолько элементарные, что невозможно представить дальнейшего их разложения на еще более простые операции. Каждая такая операция несет в себе некоторое изменение в физической системе, которую представляют собой компьютер и его лента. Нам известно состояние системы при условии, что мы знаем последовательность символов на рабочей ленте, которую считывает компьютер (возможно, в особом установленном порядке), а также состояние компьютера. Мы можем предположить, что в ходе простой операции не может быть изменено больше одного символа. Любые другие изменения могут быть разложены на более простые изменения подобного вида. Ситуация относительно ячеек с изменяемыми таким образом символами точно такая же, как и в случае со считанными ячейками. Таким образом, мы можем без ограничения общности предположить, что ячейки с измененными символами равнозначны считанным ячейкам.
Помимо подобных изменений символов простые операции должны включать в себя изменения распределения считанных ячеек. Новые считываемые ячейки должны в тот же момент распознаваться компьютером. Думаю, что разумно будет предположить, что такими могут быть лишь те ячейки, расстояние которых от наиболее близко расположенной к только что мгновенно считанной ячейке не превышает определенное установленное число ячеек. Также предположим, что каждая из новых считанных ячеек находится в пределах L – ячеек последней считанной ячейки.
В связи с «немедленным распознаванием», можно полагать, что существуют другие виды ячеек, которые так же немедленно распознаются компьютером. В частности, отмеченные специальными символами ячейки могут считаться немедленно распознаваемыми компьютером. Теперь, если такие ячейки отмечены одинарными символами, их может быть только конечно количество, и мы не должны разрушать нашу теорию, добавляя отмеченные ячейки к тем, что были считаны. С другой стороны, если они отмечены последовательностью символов, мы не можем рассматривать процесс распознавания в качестве простой операции…»
«Теперь мы можем сконструировать машину, – писал далее Алан, – чтобы выполнить работу этого компьютера». Смысл его рассуждений был очевиден: каждое состояние вычислителя представлялось в виде конфигурации соответствующей машины.
Так, Алан смог разрешить один из ключевых вопросов в математике, с шумом ворвавшись в научный мир будучи еще никому неизвестным молодым ученым. Его решение проблемы касалось не только абстрактной математики или некоторой игры символов, оно также включало в себя рассуждения о природе отношений человека и физического мира. Это нельзя было назвать наукой с точки зрения проводимых наблюдений и предсказаний. Все, что он сделал, – создал новую модель, новую основу. Его методы были сродни той игре воображения, которую использовали Эйнштейн и фон Нейман, ставя под сомнение существующие аксиомы вместо того, чтобы оценивать результаты. Его модель даже не была по-настоящему новой, поскольку раньше уже существовали многие подобные идеи, даже на страницах детской книги «Чудеса природы», представляющие мозг в виде машины, телефонного узла или офисной системы. Ему оставалось лишь объединить такое простое механистичное представление человеческого разума с ясной логикой чистой математики. Его машины – которые в дальнейшем будут называться машинами Тьюринга – стали той самой связью между абстрактными символами и физическим миром. А его образное мышление оказалось, в особенности для Кембриджского университета, пугающим своим индустриальным настроем.
В машине Тьюринга Алану удалось создать свой случай детерминизма в виде автоматической машины, производящей операции в рамках логической системы мышления, которую он считал подходящей для изучения человеческого разума.
Вся работа была выполнена им самостоятельно, ни разу он не обратился с обсуждением строения его машин к Ньюману. Лишь однажды он коротко обсудил теорему Геделя с Ричардом Брейтуэйтом во время ужина за профессорским столом. В другой раз он задал вопрос о методе Кантора молодому члену Совета Кингз-Колледжа Алистеру Уотсону (как оказалось, стороннику коммунистов), который только недавно сменил свою область интересов с математики на философию. Он поведал о своих мыслях Дэвиду Чамперноуну, и тот ухватил суть идеи создания универсальной машины, но с издевкой заметил, что такая машина уместится только в здание Алберт-Холла. Это замечание было довольно справедливым и было принято во внимание, поскольку если у Алана и имелись мысли представить свою идею, предложив практическое ей применение, то в самой статье их уже не было. Его «машина» не имела ни одного очевидного аналога в 1936 году, если только в общих чертах вобрала в себя некоторые черты изобретений, появившихся с развитием электротехнической промышленности: телетайпы, телевизионная разверстка изображения, автоматическая телефонная связь. Это было полностью его собственное изобретение.
Алан доказал, что не существует никакой сверхъестественной машины, которая смогла бы решить все математические проблемы, но в ходе своего доказательства он открыл нечто столь же удивительное – идею универсальной машины, которая могла воспроизвести работу любой другой машины. Также ему удалось доказать, что любое действие, выполняемое человеком за машиной, могло быть произведено самой машиной без вмешательства человека. Таким образом, существовала единая машина, которая путем считывания помещенного на ленту описания работы других машин, могла производить тот же результат, что и умственная деятельность человека. Одна машина могла заменить операциониста! Электрический разум существует!
* * *
Между тем смерть Георга Пятого ознаменовала собой переход от протеста против старого порядка к страху перед тем, что могло ожидать впереди. Германия уже победила новое Просвещение и поставила железное клеймо на идеалистах. В марте 1936 года был снова оккупирован Райнленд, и это означало только одно: будущее теперь зависело от политики усиления военной мощи и подготовки к войне. Кто тогда мог увидеть во всем этом связь с судьбой кембриджского математика? И все же связь была, поскольку однажды Гитлер потеряет Райнленд, и именно тогда универсальная машина сможет найти в мире свое практическое применение. Но между идеей машины Тьюринга и ее воплощением произойдет страшное, в результате чего жертвами станут миллионы людей. И жертв не станет меньше даже после свержения власти Гитлера.
* * *
…Алан представил свою работу для публикации Лондонскому математическому сообществу 28 мая 1936 года. Однако в Англии не нашлось ни одного человека, который смог бы отрецензировать работу Тьюринга для публикации в журнале. Ни один из корифеев науки не удосужился обмолвиться хоть словом. В случае же основного читателя журнала Лондонского математического общества Proceedings существовало сразу несколько причин, почему работа Алана не могла заинтересовать его в полной мере. Математическая логика оставалась отчасти периферийной темой для исследований, в которой сами математики обычно видели или попытку доработать то, что и так всем известно, или попытку создать новые проблемы на пустом месте. Начало работы казалось увлекательным, но после (типичным для Тьюринга образом) текст заводил читателя в непролазные дебри рядов непонятных готических символов, объясняющих устройство таблиц его универсальной машины. И в последнюю очередь этим могли заинтересоваться специалисты прикладной математики, которые обычно прибегают к практическому вычислению в таких областях, как астрофизика и гидроаэромеханика, где уравнения не приводят к решениям в явном виде.
* * *
Позже, в 1943-м, Алан вновь возвращается к идее создания чудо-машины, но уже способной к обучению. Находясь в Блетчли-парке, его в свободное нерабочее время можно было встретить в кафетерии. Разговоры тогда часто вращались вокруг математических и логических головоломок, а Алан был мастак взять какую-то элементарную задачку и показать, какой принципиальный вопрос за ней стоял, или наоборот – проиллюстрировать какое-нибудь математическое доказательство повседневным примером. Так проявлялись его особый интерес к соединению абстрактного и конкретного и удовольствие, которое он находил в демистификации «высокой» математики. Для доказательства симметрии он мог использовать узоры на обоях.
В числе людей, ценивших такой подход, был Дональд Мичи, которому, как классицисту, мысли и идеи Алана импонировали, как свежие и новые. Он очень подружился с Тьюрингом, и они по пятничным вечерам стали встречаться в пабе в Стоуни-Стратфорде, чуть к северу от Блетчли-парка, чтобы поиграть в шахматы и поговорить или – что чаще предпочитал Дональд – послушать. Игра профессора в шахматы всегда была в Блетчли предметом шуток, все чаще сводившихся к пристрастному сравнению с приезжавшими шахматистами. Гарри Голомбек пожертвовал ему королеву и все равно выиграл; а когда ему сдался Алан, профессор перевернул шахматную доску и добился победы из положения почти безнадежного. Он посетовал, что Алан понятия не имел, как заставить части работать вместе, и слишком много раздумывал над своими действиями, чтобы играть свободно (что, может быть, проявлялось и в его социальном поведении). По выражению Джека Гуда, Алан был слишком продуманным, чтобы воспринимать, как очевидные и прозрачные, ходы, которые другие могли делать, не думая. Он всегда все обдумывал с самого начала. Был один замечательный случай, когда Алан вышел в ночную смену (это произошло в конце 1941 г.), а рано утром сел играть партию с Гарри Голомбеком. Заглянувший в комнату Тревис, сильно смешался, увидев это – он подумал, что его старший криптоаналитик играет в рабочее время. «Хм…гм… не думал вас застать за таким занятием, Тьюринг», – сказал он смущенно, как заведующий пансионом при школе, застукавший старшеклассника с сигаретой в туалете. «Надеюсь, вы обыграете его», – добавил он Голомбеку, когда они выходили из комнаты, ошибочно решив, что ас криптоанализа был первоклассным шахматистом. Но молодой Дональд Мичи был игроком под стать Алану.
Эти встречи давали Алану возможность развивать свои идеи об ЭВМ для игры в шахматы, обозначенные в его беседе с Джеком Гудом в 1941 г. Они с профессором часто разговаривали о механизации мыслительных процессов, привлекая теории вероятности и совокупности доказательств, с которыми Дональд Мичи был к тому времени уже знаком. Разработка машин для автоматизированного криптоанализа, естественно, подталкивала к обсуждению математических задач, которые можно было решать с помощью механических устройств. Но Алан частенько переводил разговор в другое русло. Он не проявлял большого интереса к созданию машин, призванных решать ту или иную сложную задачу. Он до страсти был увлечен идеей создания машины, способной к обучению. Если бы машина могла симулировать мозг, то она обладала бы и присущей мозгу способностью к обучению новым навыкам. Алан упорно отвергал возражения, будто машина при всем своем совершенстве могла решать только те задачи, которые ей точно и недвусмысленно задавал человек. В подобных дискуссиях в свободное от работы время они посвящали довольно много времени вопросу, что именно следовало понимать под «обучением».
Характер обсуждений определял материалистическое воззрение о том, что никакого автономного «ума» или «души», использовавшей механизм мозга, не существовало. Избегая философских дискуссий о том, что подразумевалось под понятиями «ум», «мышление» или «свободная воля», Алан апеллировал к идее оценки умственных способностей машины путем простого сравнения ее производительности с таковой человека. Это избирательное предпочтение Аланом операционального определения «мышления» было сродни настойчивому применению Эйнштейном операциональных определений времени и пространства, к которым он прибегал в стремлении освободить свою теорию от априорных предположений. В этом не было ничего нового – совершенно стандартный рационалистический подход.
В 1933 г. Алан видел такую машину на сцене: в пьесе «Назад к Мафусаилу» Бернард Шоу изобразил ученого будущего, создающего искусственный «автомат», способный отображать или, по крайней мере, имитировать ход мыслей и эмоции людей двадцатого века. Шоу показал «человека науки», не способным провести четкую черту между «автоматом и живым организмом». Не то, чтобы это было новацией, но Шоу попытался доказать, что такое представление уже стало атавизмом Викторианской эпохи. Рационалистический взгляд на вещи отличает и другую его книгу «Чудеса природы». В одной из ее глав, озаглавленной «Как думают некоторые животные», мышление, интеллект и обучаемость трактовались, как различающиеся по своей степени, как различаются одноклеточные организмы и люди. Так что, Алан не «открывал Америки», когда рассуждал с позиции принципа имитации: если оказывается, что машина делает что-то так же хорошо, как человек, значит, она действительно делает это так же хорошо, как человек.
* * *
Алан давно хотел «создать мозг». Чтобы понять предложенную Тьюрингом модель «мозга», важно было увидеть, что она рассматривала физику и химию, включая все доводы на основании квантовой механики, как в сущности малозначимые, второстепенные. По его мнению, физика и химия были важны только с той точки зрения, что они служили средством для воплощения дискретных «состояний», «чтения» и «записи». Только логическая структура этих «состояний» имела действительно важное значение. Идея была в следующем: что бы не делал мозг, он делал это благодаря структуре своей логической системы, а не потому что находился внутри человеческой головы или являлся губчатой тканью, созданной из биологических клеток особого типа. И, коль скоро это было так, значит, подобную логическую структуру можно было воспроизвести и в других средствах, воплощенных другими физическими механизмами. Это была материалистическая точка зрения, но при том такая, которая не смешивала логические структуры и связи с физическими веществами и вещами, как то часто делали люди.
В особенности эта идея отличалась от идей некоторых адептов поведенческой психологии, выступавших за сведение физиологии к физике. Модель Тьюринга не стремилась объяснить один вид явления, то есть разум, в ракурсе других. Она не предполагала «сведение» физиологии к чему-то другому. Концепция заключалась в том, что «разум» или физиология можно было адекватно описать с ракурса машин Тьюринга, потому что и «разум», и физиология лежали на том же уровне описания мира, что и дискретные логические системы. Это было не сведение одного к другому, а попытка переноса, когда он представлял соединение таких систем в искусственном «мозгу».
Алан, скорее всего, не знал в 1945 г. многого о физиологии человеческого мозга. Обсуждая «создание мозга», Алан не подразумевал под этим, что компоненты его машины должны были походить на компоненты мозга, а их соединения – имитировать способ, которым связываются между собой зоны мозга. То, что мозг хранил слова, изображения, навыки каким-то определенным образом, связанным с входными сигналами, поступающими от органов чувств, и выходными сигналами, идущими на мышцы, – вот практически и все, что ему требовалось. Но десятью годами ранее Алану пришлось также отстаивать важную идею, которую затушевал Брюстер. Он отверг идею о том, что это «мы» стоим за мозгом, который каким-то образом «осуществляет» передачу сигналов и структурирует память. Передача сигналов и структурирование – вот и все, что в нем происходило.
А в описании машин Тьюринга десятью годами ранее он также обосновал свою формулировку идеи «механического» дополнительным аргументом о «записи инструкций». Акцент ставился не на процессы, происходящие внутри мозга, не на внутреннюю работу мозга, а на ясные инструкции, которым человекработник мог слепо следовать. В 1936 г. на мысль о подобных «записях инструкций» его натолкнули правила Шербонской школы, прочие нормы общения, и, конечно же, математические формулы, которые можно было применять «не думая». Но к 1945 г. многое изменилось, и «записи инструкций», казавшиеся в 1936 г. довольно фантастическими, как и теоретические логические машины, стали весьма конкретными и вошли в практику. Обилие изобилия было одним из посланий, «основанных на машине и вскрываемых машиной», и эти машины были машинами Тьюринга, в которых значение имело логическое преобразование символов, а не физическая сила. И при проектировании таких машин, и при разработке процессов, которые можно было бы поручить людям, действующим, как машины, т. е. «рабам», они эффективно записывали утонченные «инструкции».
Это был другой, но отнюдь не несочетающийся подход к идее «мозга». Именно взаимосвязь между двумя подходами, возможно, более всего воодушевила Алана – совсем как в Блетчли велась постоянная игра между человеческим разумом (агентурной разведкой) и использованием машинных, или «рабских» методов. Его теория «совокупности доказательств» показала, как преобразовывать определенные виды человеческого распознавания, суждений и решений в форму «записи инструкций». Его методы игры в шахматы поднимали вопрос: где можно было бы прочертить линию между «разумным», осмысленным, и «механическим»? Его точка зрения, выраженная с позиции принципа имитации, заключалась в том, что такой линии не было, да и никогда он не проводил резкого различия между «состоянием ума» и «записью инструкций», как двумя подходами к проблеме согласования понятий свободы и детерминированности.
Как писал он позднее в 1948 г., «нам не нужно иметь бесконечное множество разных машин, выполняющих разные задачи. Одной единственной будет достаточно. Инженерно-техническая проблема производства разных машин для разных задач заменяется офисной работой «программирования» универсальной машины для выполнения этих задач».
«Мозг» вырос не из опытного познания вещей, а из осознания основополагающих идей. Универсальная машина должна была быть не просто машиной, а всеми машинами сразу. Она должна была заменить не только физическое оборудование Блетчли, но все рутинные операции – почти все, что эти десять тысяч человек делали. И даже «разумная» работа первоклассных аналитиков должна была лишиться своей сакральности. Так как универсальная машина могла также выполнять работу человеческого мозга. Все, что бы не делал мозг, любой мозг, могло в принципе быть представлено, как «дескриптивное число» на ленте Универсальной машины. Такова была его концепция.
Но в проекте Универсальной машины Тьюринга не было ничего, что бы указывало на ее практическое предложение. В частности, не было информации о ее операционной скорости. Таблицы вычислимых чисел могли быть использованы людьми, посылающими друг другу открытки, без теоретической аргументации. Но коль скоро речь шла о практическом применении универсальной машины, то она должна была выполнять миллионы шагов в рациональном режиме. Эту потребность в скорости могли обеспечить только электронные компоненты.
Он понял, как создать мозг – не электрический мозг, как он, возможно, воображал себе до войны, а электронный мозг. И где-то в 1944 г. мать Алана слышала, как он рассказывает о «своих планах по созданию универсальной машины и о том вкладе, которое такая машина могла бы оказать психологии в изучении человеческого мозга».
Помимо дискретности, надежности и скорости учитывался и еще один важный фактор: величина. На «ленте» универсальной машины должны были поместиться и «дискретные числа» машин, которые она бы имитировала, и ее операции. Абстрактная универсальная машина 1936 г. была оснащена «лентой» бесконечной длины, а это значило, что, несмотря на то, что на любом этапе количество использованной ленты могло быть ограничено, тем не менее, допускалось, что больше места всегда можно было обеспечить.
В реальной, действующей машине место всегда ограничено по объему. И по этой причине ни одна физическая машина не могла на практике выступать действительно универсальной машиной. В «вычислимых числах» Алан выдвинул предположение об ограниченности человеческой памяти в своем объеме. Если это было так, тогда и сам человеческий мозг мог хранить только ограниченное количество моделей поведения – «таблиц», и для записи их всех требовалась достаточно большая лента. В таком случае ограниченность любой реальной машины не могла препятствовать ей быть похожей на мозг. Вопрос заключался в том, насколько большая «лента» потребовалась бы для машины, которую можно было создать на практике: достаточно для того, чтобы она представляла интереса, но не больше того, что было бы технически целесообразно и осуществимо. И как можно было организовать такое хранилище, т. е. «память» машины без неслыханных затрат в виде электронных ламп?
Алан описал своему помощнику универсальную машину и ее «ленту», на которой должны были храниться инструкции. И они вместе начали раздумывать над способами, которые бы позволили получить «ленту», которая могла бы хранить такую информацию. Вот так и случилось, что на этой удаленной станции новой Империи радиотехнической разведки, работая с одним помощником в маленькой хижине и обдумывая свои идеи в свободное время, английский гомосексуалист, атеист и математик замыслил компьютер.
И речь здесь не о том, как мир воспринял его, да и мир не был уж совсем несправедлив. Изобретение Алана Тьюринга должно было занять свое место в историческом контексте, в котором он не был ни первым в числе тех, кому приходила в голову идея создания универсальных машин, ни единственным, кто додумал в 1945 г. электронную версию универсальной машины.
Конечно же, на тот момент уже существовали самые разные машины, сберегающие (сохраняющие) мысли, начиная с древних счет. В общих чертах их можно было классифицировать в две категории, «аналоговые» и «цифровые». Две машины, над которыми работал Алан перед самой войной, были образчиками каждого из этих типов. Алан, разумеется, был предан цифровому подходу, вытекающему из концепции машины Тьюринга, с упором на ее потенциальную универсальность. Ни одна аналоговая машина не могла претендовать на универсальность, такие устройства создавались, чтобы быть физическими аналогами конкретных систем с определенными задачами. Следовательно, его идеи должны были найти свое место среди проектов цифровых вычислительных машин и составить им конкуренцию.
И не успел! Американцы опередили Алана, создав ЭДВАК – Электронный дискретный переменный компьютер. Автором был давний знакомый Алана – Джон фон Нейман.
30 января 1945 г. фон Нейман написал, что ЭДВАК проектировался для решения трехмерных «аэродинамических задач и проблем ударных волн… расчета воздействий снарядов, бомб и ракет… в области метательных и бризантных взрывчатых веществ». Предварительный доклад о машине ЭДВАК пронизывал (отражая интересы фон Неймана) более теоретический рефрен, привлекавший внимание к аналогии между компьютером и нервной системой человека. И одним из инструментов для этого служило слово «память». В таком ключе это действительно оказывалось «созданием мозга». Однако, акцент доклада был сделан не на абстрактном тезисе о «состоянии ума», а на сходствах механизмов ввода/вывода данных и афферентных (чувствительных, центростремительных) нервов и эфферентных (двигательных, центробежных) нервов соответственно. Доклад также апеллировал к статье чикагских неврологов Уоррена Маккалока и Уолта Питтса (1943 г.), в которой активность нейронов анализировалась логическим языком, и использовал их символизм для описания логических связей электронных компонентов.
Так что победу у британского новаторства на самом финише вырвала американская публикация – и это в то время, когда все следили за западом. Американцы победили, и Алан оказался вторым. На этот раз, правда, приоритет американцев обернулся плюсом для его планов – ведь он задал им политический и экономический импульс, который одним умозрительным идеям Тьюринга иначе не видать было бы никогда.
* * *
Но Алана эта неудача не остановила. Вскоре он придумал для нового проекта электронной вычислительной машины Тьюринга более счастливый акроним, в сравнении с бездушным ЭДВАК: АВМ – «Автоматическая вычислительная машина». И она стала более универсальной, чем ЭДВАК.
Ведь Алан начал первым процесс написания программ (таблиц команд), и считал это «очень увлекательным» занятием. Он создал нечто очень оригинальное и при том именно свое. Он изобрел искусство компьютерного программирования. Это был полный разрыв со старомодными арифмометрами. Они объединяли суммирующие и умножающие механизмы, да еще они заправлялись бумажной лентой, без которых они не работали исправно. Они были машинами для совершения арифметических действий, для которых логическая структура была лишь обременением. АВМ была принципиальной иной машиной. Она задумывалась, как машина, выполняющая программы «каждого известного действия». Акцент делался на логическое структурирование и управление процессом работы, а арифметические устройства добавлялась только ради быстрого доступа к наиболее часто использующимся операциям.
На настольных счетных машинах цифры от 0 до 9 становились видны на регистрах и клавиатуре, и у оператора могло возникать ощущение, будто каким-то образом цифры хранятся в самой машине. В действительности, в них не было ничего, кроме колес и рычагов управления, однако иллюзия присутствия цифр в машине была сильна.
Эта иллюзия отличала большие релейные счетные машины. Даже в докладе о машине ЭДВАК сохранялось ощущение, будто импульсы в линиях задержки будут на самом деле числами. Однако концепция Тьюринга несколько отличалась и имела более абстрактный вид. В АВМ импульсы могли восприниматься, как представляющие числа, либо команды. Хотя это все было, конечно, только в уме наблюдателя. Машина работала, как указывал Алан, «не думая», и на самом деле оперировала не числами и не командами, а электронными импульсами. Человек мог «делать вид, будто команда была числом», поскольку сама машина ничего не знала ни об одном, ни о другом. Соответственно, он мог свободно допускать в мыслях соединение данных и команд, управление командами, вводе таблиц команд посредством других команд «высшего порядка».
АВМ не должна была «решать арифметические задачи» так, как их решал бы человек. Она должна была лишь имитировать арифметические действия в том смысле, что при вводе команды, представляющей «67 + 45», можно было гарантированно получить на выходе «112». Но внутри машины не было «чисел», только импульсы.
Как писал Алан, «нам надо только однажды придумать, как это сделать, а потом забыть о том, как это сделано». Тот же принцип был применим и к машине, запрограммированной на игру в шахматы: ей следовало бы пользоваться, как если бы она играла в шахматы. На любом этапе «игры» она бы только внешне имитировала действие мозга. Но тогда, кто бы знал, как мозг делал это? Единственно допустимым использованием языка, по мнению Алана, было применение тех же норм, стандартов внешнего проявления к машине, что и к мозгу. На практике люди ведь говорили совершенно некорректно, что машина «решала арифметические задачи»; точно так же они бы говорили, что машина играет в шахматы, обучается или думает, если бы она могла имитировать функцию мозга, совершенно не считаясь с тем, что «в реальности» происходило внутри машины. Так что даже в его технических предложениях скрывалось философское видение, далеко превосходящее амбициозное желание создать машину для решения больших и сложных (арифметических) задач.
* * *
Алан видел будущее своего детища. Например, так он рассматривал возможность использования удаленных терминалов: «…автоматическая вычислительная машина будет выполнять работу примерно за 10 000 вычислителей (людей). Поэтому логично ожидать, что большой объем вычислений, производимых вручную, сведется к нулю. Вычислители (люди) будут и в дальнейшем выполнять на маленьких счетных машинах такие действия, как подстановка значений в формулы, но, если на одно какое-либо вычисление у вычислителя уходит несколько дней работы, то лучше, чтобы его вместо человека выполняла электронная вычислительная машина. Но при этом совсем необязательно будет, чтобы у всех, кто заинтересован в такой работе, имелся компьютер. Целесообразно и возможно будет наладить управление удаленным компьютером с помощью телефонной связи. Для использования на этих удаленных станциях будут разработаны специальные устройства ввода и вывода информации, которые будут стоить, самое большее, несколько сотен фунтов стерлингов».
Алан также осознал требования к компьютерным программистам: «Основной объем работы, выполняемой этими компьютерами, будет состоять из задач, которые невозможно решить путем вычислений вручную в силу их масштабности. Чтобы загрузить машину такими задачами, нам потребуется большое количество способных математиков. Эти математики нужны будут для предварительной обработки и оформления задач для вычисления…»
И он на самом деле смог предугадать развитие новой отрасли промышленности и занятости:
«Очевидно, что возможности просто огромны. Одной из трудностей для нас будет поддержание соответствующей дисциплины, чтобы мы не потеряли нить того, что мы делаем. Нам потребуется энное число эффективных библиотечных типов для поддержания у нас порядка».
Опередив свое время на двадцать лет в своей концепции организации компьютерных узлов, Алан исходил из опыта, полученного в Блетчли-парке. Там работало десять тысяч человек, операторов, и все они составляли систему, включавшую отдаленные от центра станции, телефонные коммуникации, элиту, которая преобразовывала задачи в программы, и множество «библиотечных типов». Но он никогда не мог сказать об этом прямо, и никто не мог представить себе картину того, что никогда официально не существовало, так что его анализ был сродни вестям ниоткуда.
Доклад о АВМ был также первым отчетом о спектре применения универсальной вычислительной машины. АВМ была призвана решать «такие задачи, которые решаются трудоемкими усилиями клерков, работающих по строгим правилам и без всякого понимания», сталкивающихся с тем, что из-за размера машин «количество письменных материалов, необходимых на каком-либо одном этапе ограничивается… 50 листами бумаги», а «инструкции для оператора», написанные на «обычном» языке, «объемом с обычный роман». АВМ могла бы решать такие задачи за одну стотысячную долю того времени, которое требовалось «оператору-человеку, решающему свои арифметические задачи без помощи технических средств».
АВМ смогла бы выполнить всю рутинную умственную работу для нужд британского фронта. Огласив такой вывод, Алан заработал себе необычно хороший «политический» балл: в перечне возможных приложений «создание таблиц стрельбы» стояло первым. Это была работа, для которой специально спроектировали ЭНИАК (первый электронный цифровой компьютер общего назначения, который можно было перепрограммировать для решения широкого спектра задач. – Ред.). Затем следовали еще четыре примера практического применения АВМ для вычислений, которые на тот момент требовали месяцы, а то и годы работы за арифмометрами. А еще четыре примера были не связаны с численными вычислениями; они отражали более широкий взгляд Алана на сущность компьютера, опыт и спектр интересов Тьюринга.
Первым значился компьютер, интерпретирующий специальный, предметно-ориентированный язык для описания электрических проблем:
«Учитывая сложную электрическую цепь и характеристики ее компонентов, можно было бы рассчитывать ответы на действие входных сигналов. С этой целью можно было бы легко разработать стандартный код для описания этих компонентов, а также код для описания связей».
Это бы означало автоматическое решение таких задач расчета и моделирования электрических схем, за которыми Алан проводил в Хэнслопе целые недели. Второй пример применения был более прозаическим: «Для подсчета количества мясников, должных демобилизоваться в июне 1946 г., по картам, приготовленным на основании армейских списков».
«Машина, – писал Алан, – отлично справилась бы с этим делом; только не подходящее оно для нее. Скорость, с которой это можно было бы сделать, ограничивалась бы скоростью прочитывания карт. Такую работу может и должно делать с помощью обычной счетной машины Холлерита».
Это был не столько доклад, сколько план кампании, в котором тактические и стратегические идеи грудились на бумаге так же тесно, как и в уме Алана Тьюринга. Перспектива создания электронного «мозга» представлялась столь же фантастической, как и путешествие в космос, и этот доклад был сродни объяснению колонизации Марса. Наивный, разговорный стиль не был рассчитан на то, чтобы понравиться руководству, а детализация изложения материала явно превышала потенциал его усвоения. Никто не горел желанием ни прорабатывать примеры программ или коммутационные схемы, ни разрешать плохо сформулированный парадокс машины «без разума» и, тем не менее, «демонстрирующей интеллект».
* * *
Данный текст является ознакомительным фрагментом.