Игра разума. Как Клод Шеннон изобрел информационный век - Сони Джимми
К 1935 году, за год до прибытия Шеннона в Кембридж, дифференциальный анализатор достиг своих пределов. Будучи механическим устройством, он требовал полной разборки и обратной сборки для решения каждой отдельной задачи. То, что построил Буш и его команда, было не единым механизмом в полном смысле этого слова, но огромной группой машин, объединенных вместе, и их следовало конструировать заново под каждую новую задачу, а затем уничтожать после каждого полученного решения. Это была вынужденная адаптация ради эффективности. И так как назначением анализатора было добиться эффективности расчетов, которые, по крайней мере, в теории могли быть выполнены человеком вручную, то эти повторяющиеся из раза в раз затруднения ставили под сомнение необходимость его использования.
Все это было таким знакомым для Шеннона, еще со времен Гэйлорда и его самодельной телеграфной линии.
Вместо этого Буш мечтал об анализаторе, который мог бы восстанавливать себя сам: аппарат с автоматической системой контроля, позволяющей ему переходить от одного уравнения к другому без всяких пауз или даже решать множественные взаимосвязанные уравнения одновременно. Переключатели должны были прийти на смену отверткам. К тому времени, когда честолюбивые замыслы Буша значительно превысили бюджет МТИ периода Депрессии, он все равно смог получить 265 000 долларов от частных благотворителей фонда Рокфеллера, чтобы заняться разработкой компьютера следующего поколения. И Буш привел Клода Шеннона в МТИ, чтобы тот помог управлять проектом.
Поэтому в последующие три года окружением Шеннона стали серые коридоры и стены гудящей комнаты, и внутри этой комнаты – стенки маленькой коробки, прикрепленной к анализатору, со 100 переключателями, открывающими и закрывающими путь току, – мир внутри мира. В коробке находились мозги мозга, переключатели и реле, которые управляли машиной и перестраивали ее, пока она вращалась. И «каждое реле», как пишет Джеймс Глейк, «электрический переключатель управляется током (идея цикличности)». Разомкнуть. Замкнуть. И так на протяжении недель и месяцев.
Что произошло, когда Клод Шеннон щелкнул выключателем? Представьте себе переключатель или реле в виде разводного моста для электрического тока: опустив его, переключатель позволит току поступать к месту назначения; подняв, переключатель остановит его поток. Пунктом назначения может быть другое реле, которое тогда будет размыкаться или замыкаться на основе полученных вводных данных. Или же это может быть что-то такое же простое, как маленький электрический фонарик. Все это было таким знакомым для Шеннона, еще со времен Гэйлорда и его самодельной телеграфной линии. В Энн-Арбор эти знания были систематизированы: там Шеннон прилежно чертил электрические схемы вместе с остальными инженерами-электриками. Последовательное соединение: ток должен пройти через оба реле, прежде чем он включит свет; параллельное соединение: ток может свободно проходить либо через один, либо через оба реле.
Это были блоки, которые включали в себя логическую схему с сотней переключателей, прикрепленную к дифференциальному анализатору, или электрическую начинку линий сборки, или систему с миллионом реле, которая направляла работу всей национальной телефонной сети. Там были цепи, сконструированные для передачи тока, когда два реле были замкнуты, но не ноль, одно, или три; были цепи, нарисованные в виде ветвистых деревьев или симметричных дельт или плотных ячеек – вся электрическая геометрия, которую Шеннон чувствовал сердцем. И по старой инженерной традиции все это было сделано вручную, нарисовано шаг за шагом на доске или просто соединено вместе в «животе» машины. Единственным доказательством правильности собранной цепи являлись ощутимые результаты: проходил ли звонок, крутилось ли колесо, поставленное ребром на диске, и зажигался ли свет. Электрические цепи до Шеннона были как дифференциальные уравнения до появления аналогового компьютера: ошибки при каждой попытке до тех пор, пока ошибки не прекращались. Построение электрических схем в те времена было ремеслом со всей той путаницей, ошибками и интуитивным подходом, которые подразумевает «ремесло».
Электрические цепи до Шеннона были как дифференциальные уравнения до появления аналогового компьютера: ошибки при каждой попытке до тех пор, пока ошибки не прекращались.
Но здесь Шеннон был один на один в комнате с машиной, построенной для того, чтобы автоматизировать мысль, решать задачи промышленного характера и при этом эффективно функционировать. А еще чтобы отделить ремесло от математики. И в процессе своей работы он пришел к выводу, что знал другой способ, как автоматизировать процесс мышления – тот, который в конечном счете станет гораздо более действенным, чем аналоговая машина.
Что связывает логику и машину? Вот как ответил на этот вопрос один специалист по логике на стыке девятнадцатого и двадцатого столетий: «Точно так же, как материальная машина является инструментом для экономии физических сил, так же и символическое исчисление является инструментом для экономии интеллектуальных усилий». Логика, подобно машине, была инструментом для демократизации силы: построенная с достаточной точностью и умело, она могла многократно увеличить силу как одаренных людей, так и людей со средними способностями.
В 1930-е годы в мире насчитывалась лишь горстка людей, которые одинаково хорошо владели «символическим исчислением», или строго научной математической логикой, и умением собирать электрические цепи. Звучит это и вправду удивительно: до того, как две эти области знаний соединились в голове Шеннона, мало кто представлял, что они могут иметь нечто общее. Одно дело было сравнить логику с машиной – и совсем иное показать, что машины способны действовать логично.
В Мичигане Шеннон узнал (на занятиях по философии, заметьте), что любое логическое утверждение можно представить в символах и уравнениях и что эти уравнения можно решить с помощью ряда простых, похожих на математические, правил. Вы можете доказать, что утверждение истинно или ложно, даже не понимая, что оно означает. На самом деле вы будете меньше отвлекаться, если предпочтете не понимать значения: дедукция может быть автоматизирована. Ключевой фигурой процесса перевода прихотливых слов в точные математические величины стал гений девятнадцатого века по имени Джордж Буль, английский математик-самоучка, чей отец-сапожник смог дать ему образование лишь до шестнадцати лет. Незадолго до того, как Томсон задумал свой первый анализатор, Буль доказал, что он сверходаренный человек, написав книгу, название которой хоть и звучало довольно самонадеянно, но было вполне оправданным: «Законы мышления». Эти законы, показал Буль, основываются всего на нескольких фундаментальных операциях: например, И, ИЛИ, НЕТ и ЕСЛИ.
Скажем, нам нужно определить всех голубоглазых левшей, живущих в Лондоне. Обозначим свойство «голубые глаза» величиной х, а свойство «левша» – у. Пусть функцию умножение обозначает И, сложение – ИЛИ, а простой апостроф (заменяющий знак минус) – НЕТ. Помните, что цель всего этого – доказать верность или неверность утверждения. Поэтому пусть 1 означает «верно», а 0 – «неверно». Все это начальные знания для превращения логики в математику.
Таким образом, группа всех лондонцев, которые одновременно голубоглазы и левши, становится просто ху. А группа всех лондонцев, которые либо голубоглазы, либо левши, это х + у. Теперь представьте, что мы хотим оценить истинность утверждения «этот конкретный житель Лондона голубоглаз и левша». Его верность зависит от верности х и у. И здесь Буль выдвигает принципы для оценки утверждения 1 или 0, учитывая то, что мы знаем о х и у:
0 · 0 = 0
0 · 1 = 0
1 · 0 = 0
1 · 1 = 1
Эти уравнения легко перевести обратно на обычный язык. Если житель Лондона не является ни голубоглазым, ни левшой, то утверждение, которое мы пытаемся оценить, конечно, неверно. Если лондонец только голубоглаз или только левша, утверждение снова неверно. Если лондонец и голубоглаз, и левша, вот тогда утверждение становится верным. Другими словами, знак операции «И» дает «верно», только если все положения, которыми он оперирует, верны.