Начало бесконечности. Объяснения, которые меняют мир
Шрифт:
Бэббидж и Лавлейс были людьми Просвещения, и они понимали, что универсальность аналитической машины откроет новую эру технологий. Но даже при этом, несмотря на огромные усилия, им удалось заразить своим энтузиазмом лишь небольшую группу людей, которым тоже не удалось передать его дальше. И аналитическая машина осталась в истории как трагическая память о скачке, который мог бы произойти, но, к сожалению, не произошел. Если бы они поискали другие варианты реализации, то могли бы заметить прекрасную возможность, которая уже ждала своего применения: электрические реле (переключатели, работающие от электрического тока). Это было одно из первых приложений фундаментальных исследований в области электромагнетизма, вот-вот должно было начаться массовое производство таких реле, что в итоге привело к технологической революции в телеграфии. Переработанная аналитическая машина с кодированием двоичных знаков по принципу включения/выключения тока и с использованием электрических реле для осуществления вычислений работала бы быстрее механического компьютера Бэббиджа, и ее было бы дешевле и проще построить. (О двоичных числах уже хорошо знали. В семнадцатом веке математик и философ Готтфрид Вильгельм Лейбниц даже предлагал использовать их для механических
34
Гибсон У., Стерлинг Б. Машина различий. – М.: У-Фактория, 2002.
Бэббидж и Лавлейс также задумывались об одном применении универсальных компьютеров, которое до сих пор еще не осуществлено, а именно о так называемом искусственном интеллекте. Поскольку человеческий мозг – это физический объект, подчиняющийся законам физики, а аналитическая машина – универсальное моделирующее устройство, то его можно запрограммировать так, чтобы оно думало так же, как может думать человек (хотя на это будет уходить очень много времени и запредельное количество перфокарт). Тем не менее Бэббидж и Лавлейс отрицали такую возможность. Лавлейс говорила, что «аналитическая машина не претендует на то, чтобы создавать что-то действительно новое. Машина может выполнить все то, что мы умеем ей предписать. Она может следовать анализу; но она не может предугадать какие-либо аналитические зависимости или истины» [35] .
35
Цит. по: Гутер Р. С., Полунов Ю. Л. Ада Августа Лавлейс и возникновение программирования. В кн.: Кибернетика и логика. – М.: Наука, 1978. – С. 57–102.
Впоследствии математик и пионер вычислительной техники Алан Тьюринг называл эту ошибку «возражением леди Лавлейс». Лавлейс недооценила не столько вычислительную универсальность, сколько универсальность законов физики. В то время наука практически ничего не знала о том, как устроен мозг с физической точки зрения. Теория эволюции Дарвина еще не была опубликована, и преобладали сверхъестественные объяснения природы человека. Сегодня послаблений для той малой части ученых и философов, которые до сих пор считают, что искусственный интеллект недостижим, меньше. Например, философ Джон Серл рассматривает проект создания искусственного интеллекта в следующей исторической перспективе: на протяжении веков люди пытались объяснить разум техническим языком, используя сравнения и метафоры на основе сложнейших механизмов соответствующего времени. Сначала предполагалось, что мозг похож на чрезвычайно сложный набор шестеренок и рычагов. Затем были гидравлические магистрали, паровые двигатели, телефонные коммутаторы, а сегодня, когда самой впечатляющей технологией считаются компьютеры, говорят, что мозг – это компьютер. Но это опять же не более чем сравнение, говорит Серл, и причин считать мозг компьютером не больше, чем паровым двигателем.
В действительности их больше. Паровой двигатель не является универсальным моделирующим устройством, а вот компьютер является, так что ожидать от него, что он сможет делать то же самое, что нейроны, – не метафора: это известное и проверенное свойство законов физики, какими мы их знаем. (И, кстати, из гидравлических контуров тоже можно сделать универсальный классический компьютер и из шестеренок и рычагов, как показал Бэббидж.)
Как это ни парадоксально, но у возражения леди Лавлейс логика та же, что и у довода, который Дуглас Хофштадтер приводит в пользу редукционизма (глава 5), но Хофштадтер – один из активных современных сторонников того, что искусственный интеллект возможен. А все потому, что оба опираются на ошибочное допущение о том, что низкоуровневые вычислительные шаги якобы не могут сложиться в высокоуровневое «Я», которое влияет на все. Разница между ними в том, что они держатся противоположных альтернатив возникающей при этом дилеммы: Лавлейс ошибочно заключила, что искусственный интеллект невозможен, а Хофштадтер – что такого «Я» не существует.
Поскольку Бэббиджу не удалось ни самому построить универсальный компьютер, ни убедить других это сделать, первая подобная машина появилась лишь спустя сто лет. То, что происходило в этот промежуток времени, скорее напоминает древнюю историю универсальности: хотя счетные устройства, похожие на разностную машину, стали создаваться еще до того, как Бэббидж сдался, его идею аналитической машины практически полностью игнорировали даже математики.
В 1936 году Тьюринг разработал исчерпывающую теорию универсальных классических компьютеров. Но он не собирался строить такой компьютер, а только хотел применять теорию абстрактно для изучения природы математических доказательств. И когда через несколько лет были сконструированы первые универсальные компьютеры, то опять в этом не было никакого особого намерения реализовать универсальность. Их построили в Британии и США во время Второй мировой войны для специфичных военных целей. Британские компьютеры под названием Colossus («Колосс»; в их создании принимал участие Тьюринг) использовались для взлома шифров; американский компьютер ENIAC был предназначен для решения уравнений, необходимых для наведения больших орудий. Оба были построены на электронных вакуумных лампах, которые работали как реле, но почти в сто раз быстрее. В то же самое время в Германии инженер Конрад Цузе собирал на релейных схемах
программируемый калькулятор – так, как это должен был бы сделать Бэббидж. Во всех трех применялись технологические решения, необходимые для универсального компьютера, но ни одно из них не было вполне универсальным по своей конфигурации. Машины Colossus применялись только для дешифрации, и после войны большая часть из них была разобрана. Машина Цузе была уничтожена в ходе бомбардировок Германии союзниками. А вот ENIAC’у судьба позволила совершить скачок к универсальности: после войны ему нашли массу применений, для которых он никогда не предназначался, таких как прогнозирование погоды и проект создания водородной бомбы.В истории развития электронных технологий после Второй мировой войны преобладала миниатюризация, и в каждом новом устройстве реализовывались все более и более микроскопические переключатели. Около 1970 года эти усовершенствования вызвали скачок к универсальности, когда несколько компаний независимо друг от друга создали микропроцессор, универсальный классический компьютер на одной кремниевой микросхеме. С этого момента разработчики любого устройства для обработки информации могли взять микропроцессор и настраивать его – программировать – под определенные задачи, которые устройство должно было выполнять. Сегодня стиральная машина, стоящая у вас дома, наверняка управляется компьютером, который можно было бы запрограммировать для решения задач астрофизики или обработки текстов, если бы у него были подходящие устройства ввода-вывода и достаточный объем памяти для хранения необходимых данных.
Удивительно, но в этом смысле (другими словами, если отбросить то, что связано со скоростью, емкостью памяти и устройствами ввода-вывода) «люди-компьютеры» девятнадцатого века, паровая аналитическая машина с ее звонками и свистками, ламповые вычислительные машины времен Второй мировой войны, занимавшие целые комнаты, и современные суперкомпьютеры выполняют один и тот же набор вычислений.
Другая их общая черта – то, что все они цифровые: они работают с информацией в форме дискретных значений физических величин: к примеру, электронный переключатель может быть включен или выключен, а зубец шестеренки находиться в одном из десяти положений. Широко распространенные когда-то альтернативные, «аналоговые», компьютеры, такие как логарифмическая линейка, в которых информация представляется в виде непрерывных физических переменных, сегодня практически не используются [36] . Дело в том, что современный цифровой компьютер можно запрограммировать так, что он сымитирует любое такое устройство и будет работать лучше практически во всех приложениях. В результате скачка к универсальности в цифровых вычислениях аналоговые компьютеры были забыты. И это было неизбежно, ведь универсального аналогового компьютера не существует.
36
Аналоговыми компьютерами чаще называли устройства для решения дифференциальных уравнений и моделирования физических процессов электрическими сигналами. – Прим. ред.
Причина тому – необходимость исправления ошибок: ошибки, накапливающиеся в ходе длинных вычислений из-за неидеальных компонентов, тепловых флуктуаций, случайных внешних воздействий, сбивают аналоговые компьютеры с намеченного пути вычислений. Возможно, это прозвучит как незначительное или парохиальное суждение, но все как раз наоборот. Без исправления ошибок весь процесс обработки информации, а значит, и создания знаний, будет неизбежно ограничен. Исправление ошибок относится к началу бесконечности.
К примеру, система подсчета «палочек» универсальна, только если она цифровая. Представьте себе, что какие-нибудь древние пастухи попытались бы вычислить не количество голов, а общую длину стада. Выпуская козу из загона, они бы отматывали нитку длиной с козу. А потом, по возвращении коз, сматывали бы нитку обратно. Когда весь клубок оказывался бы смотанным, это означало бы, что все козы вернулись в загон. Но на деле из-за накопления ошибок измерения всегда либо оставалась бы лишняя часть нити, либо ее не хватало. Любая заданная точность измерений предполагала бы максимальное число коз, которое можно надежно подсчитать таким «аналоговым» способом. То же будет верно и для всех арифметических операций, производимых с помощью таких «палочек». Каждый раз, когда соединяли нити, представляющие несколько стад, или одну нить разрезали на две части, чтобы отметить разделение стада, когда ее «копировали», отмеряя еще одну такой же длины, появлялись бы ошибки. Их можно было бы сгладить, повторив каждую операцию много раз, а затем взяв среднюю длину. Но операции сравнения и копирования длин сами могут выполняться лишь с конечной точностью, и поэтому с их помощью нельзя сократить темп накопления ошибок в расчете на один шаг, ниже этого уровня погрешности. Таким образом, появилось бы максимальное число последовательных операций, которые можно выполнить, прежде чем результат окажется бесполезен для заданной цели, а значит, аналоговые вычисления никогда не могут быть универсальными.
Нам же нужна система, которая принимает наличие ошибок как должное, но исправляет их при появлении – это случай того, что «проблемы неизбежны, но их можно решить» на самом низшем уровне эмерджентности, связанной с обработкой информации. В аналоговых вычислениях исправление ошибок сталкивается с основной логической проблемой, заключающейся в том, что невозможно сразу отличить значение с ошибкой от правильного, потому что согласно самой природе аналоговых вычислений каждое значение может оказаться правильным. Правильной могла быть любая длина нити.
А в вычислениях, которые ограничиваются целыми числами, это не так. В случае с веревкой мы могли бы представлять целые числа как веревку длиной в целые числа сантиметров. После каждого шага мы обрезаем или удлиняем веревку до ближайшего сантиметра. Тогда ошибки перестанут накапливаться. Предположим, например, что эти измерения можно производить с допустимым отклонением в одну десятую сантиметра. Тогда после каждого шага все ошибки будут обнаружены и устранены, что исключит ограничение на число последовательных шагов.