Ввод и вывод выделяйте в подпрограммы.
Второй принцип отражен в следующей максиме:
Выбирайте такое представление данных, которое упрощает программу[96].
Керниган и Плоджер приводят пример программы, которая считывает строку текста, а потом должна распечатать ее с выравниванием по центру. Строка текста может храниться в разных форматах (как последовательность знаков, как список координат и т. д.), но только один из форматов делает центрирование по-настоящему простой задачей: выделение в памяти восьмидесяти последовательных слотов, отражающих восемьдесят возможных положений символа на дисплее ввода-вывода. В этом случае центрирование может быть безошибочно выполнено в несколько шагов для входных данных любого объема; при использовании любого другого формата потребуется гораздо более сложная программа. Предположительно, разные форматы репрезентации, используемые человеческим мозгом, – изображения, фонологические петли, иерархические структуры, мыслекод – сформировались в процессе эволюции потому, что они позволяют простым программам (глупым демонам или гомункулам) получать полезные для них результаты.
А если вас привлекает интеллектуальная стратосфера, в которой объединены «сложные системы» всех типов, вас, вероятно, заинтересует аргумент Герберта Саймона о том, что модульная структура компьютера и мозга – это лишь частный случай модульной, иерархической организации всех сложных систем. Тела состоят из тканей, сделанных из клеток, состоящих из органелл; вооруженные силы включают в себя армии, каждая из которых состоит из дивизий, разделенных на батальоны, состоящие из взводов; книги состоят из глав, разделенных на части, разделы, абзацы и предложения; империи состоят из стран, областей и территорий. Эти «почти разложимые» системы определяются масштабными взаимодействиями между элементами одного и того же компонента и менее многочисленными взаимодействиями между элементами разных компонентов. Сложные системы представляют собой иерархии модулей, потому что только элементы, увязанные друг с другом в пределах одного модуля, могут оставаться стабильными достаточно долго, чтобы монтироваться в более крупные и еще более крупные модули[97]. Саймон приводит аналогию с двумя часовщиками, которых звали Хора и Темпус:
Каждые часы, изготовленные мастерами, состояли примерно из 1000 деталей. Темпус сконструировал свои таким образом, что если одни часы были частично собраны и ему приходилось отложить их – скажем, чтобы ответить на звонок, – они тут же рассыпались на части, и приходилось собирать их сначала…
Часы, которые изготавливал Хора, были не менее сложными, чем у Темпуса. Но он спроектировал их таким образом, что мог собирать узлы, состоящие примерно из десяти элементов каждый. Десять таких узлов, опять же, можно было объединить в более крупный узел, а система из десяти больших узлов составляла готовые часы. Таким образом, когда Хора был вынужден отложить незаконченные часы, чтобы ответить на телефонный звонок, он терял лишь малую часть своей работы, и на сборку у него уходила лишь часть того времени, которое затрачивал Темпус[98].
Наша сложная умственная деятельность подобна мудрости Хоры. Проживая свою жизнь, нам совсем не нужно продумывать каждую закорючку и планировать каждое сокращение мышц. Благодаря словесным символам, любой шрифт может пробудить в сознании какой угодно элемент знаний. Благодаря символам целей, любой признак опасности может активизировать любой способ защиты.
Смею надеяться, что вознаграждением за долгие рассуждения о ментальных вычислениях и ментальных репрезентациях, через которые я вас провел, стало понимание того, на какую сложность, тонкость и гибкость способен человеческий разум, даже если он – всего лишь машина, всего-навсего бортовой компьютер робота, сделанного из живых тканей. Нам не нужны духи или оккультные силы, чтобы объяснить интеллект. Не нужно нам и игнорировать очевидное в надежде сделать свое объяснение более научным, утверждая, что человек – всего лишь куча обусловленных ассоциаций, марионетка генов или раб примитивных инстинктов. Мы можем совместить живость и проницательность человеческого ума с механистической основой, без которой сложно его объяснить. Последующие главы, в которых предпринимается попытка дать объяснение здравому смыслу, эмоциям, общественным отношениям, юмору, искусству, основаны на фундаменте представлений о сложной вычислительной психике.
Действующий чемпион
Конечно, если бы никто не взялся оспаривать истинность вычислительной теории, это означало бы, что она бессодержательна. На самом деле она подвергалась самой жесткой критике. Как в случае с любой теорией, которая стала столь незаменимой, обыкновенных придирок было недостаточно; чтобы разрушить ее, нужно было подорвать ее основания, никак не меньше. За эту задачу решили взяться два ярких автора. Оба выбрали оружие вполне подходящее для такого случая, но совершенно разное: один решил прибегнуть к здравому смыслу; второй – к понятным лишь посвященным физике и математике.
Первым с критикой выступил философ Джон Серль. Серль считает, что опроверг вычислительную теорию сознания еще в 1980 году с помощью мысленного эксперимента, который он с небольшими изменениями позаимствовал у другого философа, Неда Блока (который, как ни парадоксально, был одним из наиболее активных сторонников вычислительной теории). Версия Серля стала известна под названием «китайская комната». Человека, который не знает китайского языка, помещают в комнату. Под дверь подсовывают листки бумаги с какими-то закорючками. Человеку дают целый список сложных указаний вроде следующего: «Если увидите надпись [закорючка закорючка закорючка], напишите [каракули каракули каракули]». Некоторые из этих правил предписывают подсовывать написанные им каракули обратно под дверь. Он достаточно прилежно выполняет инструкции, не подозревая, что закорючки и каракули – это китайские иероглифы, а инструкции – это программа искусственного интеллекта, предназначенная для того, чтобы отвечать на вопросы о рассказах на китайском языке. Человек, находящийся по другую сторону двери, делает вывод, что в комнате находится человек, владеющий китайским как родным. Так вот, если понимание заключается в том, чтобы запустить подходящую компьютерную программу, значит, участник эксперимента понимает китайский, потому что он как раз использует подходящую программу. Но этот человек не понимает ни слова по-китайски; он просто манипулирует символами. Следовательно, понимание – и, если уж на то пошло, любой другой аспект интеллекта – не то же самое, что манипуляция символами или вычисление[99].
Серль утверждает, что программе не хватает интенциональности: связи между символом и тем, что он обозначает. Многие интерпретировали его слова так, будто программе не хватает сознания. Действительно, Серль считает, что сознание и интенциональность тесно связаны, ведь мы осознаем, что мы имеем в виду, когда думаем о чем-то или используем какое-либо слово. Интенциональность, сознание, другие явления мыслительной деятельности обусловлены не обработкой информации, заключает Серль, а «реальными физико-химическими свойствами реального человеческого мозга» (хотя что это за свойства, он так и не уточняет)[100].
«Китайский эксперимент» вызвал поистине невообразимые дебаты. В ответ на него было опубликовано более сотни статей, и для меня это стало прекрасной причиной удалить свое имя из всех списков участников интернет-обсуждений. Тем, кто утверждает, что вся комната в целом (человек плюс список инструкций) понимает китайский язык, Серль отвечает: ладно, представим, что этот парень выучил наизусть все правила, теперь он производит все вычисления в уме и работает вне комнаты. Комнаты больше нет, но наш с вами манипулятор символами по-прежнему не понимает по-китайски. Тем, кто заявляет, что у этого человека нет никакой сенсорно-двигательной связи с миром, и что именно это – главное недостающее звено, Серль отвечает: предположим, что поступающие в комнату каракули – выходной сигнал телевизионной камеры, а закорючки, поступающие из комнаты, – команды роботизированной руке. Теперь у него есть связь с миром, но он по-прежнему не говорит на китайском языке. Тем, кто говорит, что эта программа не отражает деятельность мозга, Серль приводит аналог «китайской комнаты», придуманный Блоком, – «китайский спортзал»: миллионы людей в огромном спортзале ведут себя так, словно они – нейроны; они кричат друг другу по рации сообщения, воспроизводя работу нейронной сети, которая отвечает на вопросы к рассказам на китайском языке. Но и люди в этом спортзале понимают по-китайски не больше, чем тот парень в закрытой комнате.
Тактика Серля заключается в том, чтобы вновь и вновь обращаться к нашему здравому смыслу. Так и кажется, что он говорит: «Эй, да ладно! Вы что, хотите сказать, что этот парень понимает по-китайски??!!! Да хватит вам! Он не понимает ни слова! Он всю жизнь прожил в Бруклине!!» и так далее. И все же история доказывает, что наука, мягко говоря, не слишком снисходительно относится к простодушной интуиции здравого смысла. Философы Патриция и Пол Черчленд предлагают нам представить, как аргумент Серля можно использовать против теории Максвелла о том, что свет состоит из электромагнитных волн. Человек держит в руке магнит и машет им вверх-вниз. Человек создает электромагнитное излучение, но никакого света не видно; следовательно, свет – это не электромагнитные волны. Мысленный эксперимент замедляет волны до такого диапазона, при котором мы, люди, уже не видим их как свет. Доверяя своему восприятию в ходе мысленного эксперимента, мы можем прийти к ложным выводам о том, что