Вундеркинд двадцатого века

We use cookies. Read the Privacy and Cookie Policy

С течением времени все ярче проявляет себя тенденция к замене человеческого труда работой машин и механизмов. Еще совсем недавно человечество могло лишь мечтать о том, что благодаря машинам оно сможет наконец освободиться от бремени тяжелого и однообразного труда. Сегодня же без машин трудно представить себе как домашнее хозяйство с привычными уже пылесосами и стиральными и посудомоечными машинами, так и промышленное производство, где машины с успехом заменяют человека на различных монотонных операциях — обертывании конфет, например. В последнее же время ученые и инженеры все чаще и чаще направляют свои усилия на то, чтобы машины заменили человека и в интеллектуальной сфере. Появление компьютерной техники — типичный пример результатов подобных разработок, хотя, разумеется, способности компьютеров к подлинной мыслительной деятельности зачастую сильно переоценивают. Все, кто занимается программированием, знают, насколько тупа на самом деле машина, не способная устранить даже простейшие ошибки, не будучи предварительно запрограммированной на это. Служащие различных контор, занимающиеся, к примеру, ведением бухгалтерского учета на компьютерах, наверное, уже понимают, о чем идет речь: процесс внезапно прерывается, и все расчеты бесследно исчезают. После того как это произошло, никто и ничто не убедит компьютер вернуть пропавшие данные, если в соответствующую программу не были изначально включены подробнейшие инструкции на случай именно такого отказа. Однако к вопросу о разумности компьютеров мы намерены обратиться в этой главе несколько позднее; отложим его до тех пор.

И все же компьютеры, несмотря на все существующие у них пока недостатки, — представляют собой нечто поразительное. По всей видимости, компьютер можно считать величайшим достижением технического прогресса двадцатого века. Если раньше мы лишь слышали об использовании компьютеров в научных исследованиях (и в частности, в области космонавтики), то теперь мы сталкиваемся с ними буквально на каждом шагу. Нужно ли купить билет на поезд, или забронировать себе место в самолете, или узнать о результатах выборов, или даже найти спутника жизни — мы всякий раз можем обратиться за помощью к компьютерам. Компьютеры теперь повсюду: не только в учреждениях и конторах, но все чаще и в наших квартирах, где наши же дети привязываются к ним всей душой. Там, где раньше была необходима логарифмическая таблица или длинные столбцы цифр, теперь достаточно лишь нажатия на пару клавиш. Будучи встроенными в автомобили, компьютеры помогают сэкономить бензин или даже отыскать путь в нужное место; их применение в телекоммуникациях обеспечивает оптимальную загруженность линий. Компьютеры — верные помощники конструкторов; например, при проектировании домов они не только расставят по местам двери, розетки и прочее, но еще и начертят готовый проект во всех мыслимых перспективах, оживив при этом чертежи изображением деревьев и т. п., компьютеры рассчитывают конструкции мостов, проектируют города и системы химической очистки. Компьютеры открыли для нас мир «виртуальной реальности», в котором при помощи специальных перчаток и экранов, встроенных в особые очки, мы можем участвовать в подвижных трехмерных сценах, вступая в кажущийся реальным искусственно созданный мир. Скоро наверняка появятся программы, которые будут способны обеспечить поддержание разговора на волнующую нас тему с искусственным собеседником, глядящим с экрана, или же — для душ попроще, чьи устремления не настолько высоки, — организовать боксерский бой с виртуальным противником.

Компьютеры применяются в полетных симуляторах, предназначенных для профессионального обучения пилотов и космонавтов, и в системах управления полетами ракет к Луне и внешним планетам Солнечной системы. Компьютеры управляют не только отдельными инструментами и станками, но и целыми сложными производственными процессами; мечтой экономической системы с централизованным управлением был бы, вероятно, такой суперкомпьютер, который занимался бы управлением и планированием абсолютно всех экономических процессов. Однако именно здесь и становятся очевидными границы возможностей компьютеров, каковые границы компьютерные специалисты характеризуют словосочетанием «информационное бутылочное горлышко». Для объяснения этого понятия обратимся к простому примеру.

В большинстве квартир температура воздуха регулируется автоматически. С этой целью на термостате устанавливается некоторое номинальное значение температуры; термометр постоянно замеряет комнатную температуру, определяя ее так называемое действительное значение. Если эти два значения перестают совпадать, термостат подает в центральную котельную определенный сигнал, в соответствии с которым температура подаваемой в батареи горячей воды увеличивается или уменьшается.

В результате переноса такого принципа в область производственных процессов или даже на экономическую систему в целом возникает следующая принципиальная проблема: для того чтобы компьютер смог принять решение о необходимости тех или иных действий, требуется измерение очень большого количества действительных величин, которые затем необходимо сопоставить с соответствующими номинальными значениями. Вся эта деятельность сопряжена с весьма громоздкими вычислениями, на выполнение которых затрачивается довольно значительное количество времени, в результате чего компьютер оказывается не в состоянии вовремя подавать необходимые управляющие команды — и вся система управления обрушивается. Причина заключается в том, что информация не может, образно говоря, протекать через «бутылочное горлышко» с необходимой скоростью. Решением этой проблемы в отдельных случаях могут стать более быстродействующие компьютеры; в общем же случае решение видится в самоорганизации отдельных процессов, что позволило бы процессу в целом протекать самостоятельно и естественно уже в таких условиях, когда предварительно заданы только те или иные релевантные величины.

С проблемами самоорганизации применительно к самим компьютерам мы еще встретимся. Однако чтобы разобраться в том, каковы возможности компьютеров и где находятся потенциальные границы этих возможностей, мы сначала поближе познакомимся с принципами функционирования компьютера. Каким образом мы используем его для своих целей? Иными словами: как программируют компьютеры? Начнем с последнего.