Разностная машина Чарльза Бэббиджа
![](http://upload.wikimedia.org/wikipedia/commons/thumb/5/53/BabbageDifferenceEngine.jpg/350px-BabbageDifferenceEngine.jpg)
Ра́зностная маши́на Чарльза Бэббиджа — механический аппарат, изобретённый английским математиком Чарльзом Бэббиджем, предназначенный для автоматизации вычислений путём аппроксимации функций многочленами и вычисления конечных разностей. Возможность приближённого представления в многочленах логарифмов и тригонометрических функций позволяет рассматривать эту машину как довольно универсальный вычислительный прибор.
История создания
[править | править код]Первая идея разностной машины была выдвинута немецким инженером Иоганном Мюллером в книге, изданной в 1788 году.
Бэббидж был знаком со статьёй Мюллера в переводе Джона Гершеля, но поскольку дата перевода неизвестна — было ли это до постройки Бэббиджем машины или уже после, — то остаётся неизвестным, находился ли Бэббидж под влиянием работ Мюллера.
Считается, что основные идеи для создания своего проекта Бэббидж почерпнул из работ Гаспара де Прони, занимавшего должность руководителя бюро переписи при французском правительстве с 1790 по 1800 год.
Прони, которому было поручено выверить и улучшить логарифмические тригонометрические таблицы для подготовки к введению метрической системы, предложил распределить работу по трём уровням. На верхнем уровне группа крупных математиков занималась выводом математических выражений, пригодных для численных расчётов. Вторая группа вычисляла значения функций для аргументов, отстоящих друг от друга на пять или десять интервалов. Подсчитанные значения входили в таблицу в качестве опорных. После этого формулы отправляли третьей, наиболее многочисленной группе, члены которой проводили рутинные расчёты и именовались «вычислителями». От них требовалось только аккуратно складывать и вычитать в последовательности, определённой формулами, полученными от второй группы.
Работы де Прони (так и не законченные ввиду революционного времени), с которыми Бэббидж познакомился, находясь во Франции, навели Бэббиджа на мысль о возможности создания машины, способной заменить третью группу — вычислителей. В 1822 году Бэббидж опубликовал статью с описанием такой машины, а вскоре приступил к её практическому созданию. Как математику, Бэббиджу был известен метод аппроксимации функций многочленами и вычислением конечных разностей. С целью автоматизации этого процесса он начал проектировать машину, которая так и называлась — ра́зностная (англ. difference engine). Эта машина должна была уметь вычислять значения многочленов до шестой степени с точностью до 18-го знака.
В том же 1822 году Бэббиджем была построена модель разностной машины, состоящая из валиков и шестерней, вращаемых вручную при помощи специального рычага. Заручившись поддержкой Королевского общества, посчитавшего его работу «в высшей степени достойной общественной поддержки», Бэббидж обратился к правительству Великобритании с просьбой о финансировании полномасштабной разработки. В 1823 году правительство Великобритании предоставило ему субсидию в размере 1500 фунтов стерлингов (общая сумма правительственных субсидий, полученных Бэббиджем на реализацию проекта, составила в конечном счёте 17 000 фунтов стерлингов).
Разрабатывая машину, Бэббидж и не представлял всех трудностей, связанных с её реализацией, и не только не уложился в обещанные три года, но и спустя девять лет вынужден был приостановить свою работу. Однако часть машины все же начала функционировать и производила вычисления даже с большей точностью, чем ожидалось.
![](http://upload.wikimedia.org/wikipedia/commons/thumb/0/09/050114_2529_difference.jpg/350px-050114_2529_difference.jpg)
Конструкция разностной машины основывалась на использовании десятичной системы счисления. Механизм приводился в действие специальными рукоятками. Когда финансирование создания разностной машины прекратилось, Бэббидж занялся проектированием гораздо более общей аналитической машины, но затем всё-таки вернулся к первоначальной разработке. Улучшенный проект, над которым он работал между 1847 и 1849 годами, носил название «Разностная машина № 2» (англ. Difference Engine No. 2).
В период с 1989 по 1991 год к двухсотлетию со дня рождения Чарльза Бэббиджа на основе его оригинальных работ в лондонском Музее науки была собрана работающая копия разностной машины № 2. В 2000 году в том же музее заработал принтер, также придуманный Бэббиджем для своей машины. После устранения обнаруженных в старых чертежах небольших конструктивных неточностей обе конструкции заработали безупречно. Эти эксперименты подвели черту под долгими дебатами о принципиальной работоспособности конструкций Чарльза Бэббиджа (некоторые исследователи полагают, что Бэббидж умышленно вносил неточности в свои чертежи, пытаясь таким образом защитить свои творения от несанкционированного копирования).
Аналитическая машина
[править | править код]Несмотря на то, что разностная машина не была построена её изобретателем, для будущего развития вычислительной техники главным явилось другое: в ходе работы у Бэббиджа возникла идея создания универсальной вычислительной машины, которую он назвал аналитической и которая стала прообразом современного цифрового компьютера. В единую логическую схему Бэббидж увязал арифметическое устройство (названное им «мельницей»), регистры памяти, объединённые в единое целое («склад»), и устройство ввода-вывода, реализованное с помощью перфокарт трёх типов. Перфокарты операций переключали машину между режимами сложения, вычитания, деления и умножения. Перфокарты переменных управляли передачей данных из памяти в арифметическое устройство и обратно. Числовые перфокарты могли быть использованы как для ввода данных в машину, так и для сохранения результатов вычислений, если памяти было недостаточно.
В своем окончательном виде машина Бэббиджа должна была быть не меньше паровоза и должна была приводиться в действие паровым двигателем. Только зубчатых колес для нее понадобилось бы более пятидесяти тысяч. Бэббидж говорил: «Вероятно, пройдет половина столетия, прежде чем кто-нибудь возьмется за такую малообещающую задачу без тех указаний, которые я оставил после себя. И если некто, не предостереженный моим примером, возьмет на себя эту задачу и достигнет цели в реальном конструировании машины, воплощающей в себя всю исполнительную часть математического анализа с помощью простых механических или других средств, я не побоюсь поплатиться своей репутацией в его пользу, так как только он один полностью сможет понять характер моих усилий и ценность их результатов». Но идеи Бэббиджа, относящиеся к устройству полностью автоматизированной счетной машины и принципам ее работы, удалось реализовать лишь в середине XX века при появлении ЭВМ[1].
Бэббидж разрабатывал конструкцию аналитической машины в одиночку, его очень близким другом, помощником и единственным единомышленником стала Ада Августа Лавлейс (дочь Джорджа Байрона). В 1840 году Бэббидж ездил по приглашению итальянских математиков в Турин, где читал лекции о своей машине. Луиджи Менабреа, преподаватель туринской артиллерийской академии, создал и опубликовал конспект лекций на французском языке. Позже Ада Лавлейс перевела эти лекции на английский язык, дополнив их комментариями, по объёму превосходящими исходный текст. В комментариях Ада сделала описание машины и инструкции по программированию к ней. Это были первые в мире программы. Именно поэтому Аду Лавлейс справедливо называют первым программистом.
Последователи
[править | править код]Основываясь на работах и советах Бэббиджа, шведский издатель, изобретатель и переводчик Георг Шутц (швед. Georg Scheutz) начиная с 1854 года сумел построить несколько разностных машин и даже сумел продать одну из них канцелярии английского правительства в 1859 году. В 1855 году разностная машина Шутца получила золотую медаль Всемирной выставки в Париже. Спустя некоторое время другой шведский изобретатель, Мартин Виберг (швед. Martin Wiberg), улучшил конструкцию машины Шутца и использовал её для расчёта и публикации печатных логарифмических таблиц.
Влияние на культуру
[править | править код]В 1972 году Гарри Гаррисоном в романе «Да здравствует Трансатлантический туннель! Ура!», написанном в жанре стимпанк, была упомянута «компьютерная машина Бэббиджа, занимавшая почти четверть объёма субмарины», использовавшаяся для анализа состояния тросов и регулирования их натяжения во время транспортировки строительных секций Трансатлантического туннеля, а также для калибровки курса «Наутилуса II».
В 1990 году Майклом Флинном был написан фантастический роман «В стране слепых» (англ. In the Country of the Blind). Некая тайная организация с помощью усовершенствованных аналитических машин Чарльза Бэббиджа математически рассчитывает возможное развитие событий и таким образом получает возможность влиять на ход истории.
В 1990 году Брюсом Стерлингом и Уильямом Гибсоном написан фантастический роман «Машина различий» (англ. The Difference Engine). Роман выдержан в стилистике стимпанка и также описывает разностную машину.
В 2005 Джон Краули опубликовал книгу «Роман лорда Байрона». Это вымышленная история о находке и расшифровке рукописи единственного прозаического произведения Байрона — романа «Вечерняя земля». Чтобы спасти роман от уничтожения, дочь Байрона Ада Лавлейс зашифровала его так, чтобы прочитать текст могли только потомки с помощью счётных машин, восходящих к разностной машине Бэббиджа.
В онлайн-проекте «Рука Ориона» описываются созданные на основе идей Бэббиджа полностью разумные и автономные механические ИИ величиной с крупный астероид.
Машина Бэббиджа упоминается в фентезийном романе Андрея Уланова «На всех хватит». По версии романа, машина Бэббиджа была успешно воплощена в металле британскими гномами и активно использовалась для расчета заклинаний криптомагии.
В игре Star Citizen существует планета с космопортом под названием New Babbage.
Примечания
[править | править код]- ↑ История вычислительной техники . Дата обращения: 16 октября 2023. Архивировано 8 декабря 2022 года.
См. также
[править | править код]- Метод конечных разностей
- Вычислительная машина
- Калькулятор Лейбница
- Суммирующая машина Паскаля
- Жаккардовый ткацкий станок
Литература
[править | править код]- На русском
- Петренко А. К., Петренко О. Л. Машина Беббиджа и возникновение программирования // Историко-математические исследования. — 1979. — Т. 24. — С. 340.
- Шилов В. В. Удивительная история информатики и автоматики. — Москва : ЭНАС, 2011. — 214 с. — (О чём умолчали учебники).; ISBN 978-5-4216-0007-7
- Пер. с англ. К. Г. Батаев, ред. В. М. Курочкин. Знакомьтесь: компьютер = Understanding computers. — М.: Мир, 1989. — 240 с. — (Знакомство с компьютером). — ISBN 5-03-001147-1.
- На других языках
- Doron Swade. The difference engine: Charles Babbage and the quest to build the first computer. — 2001. — ISBN 0-670-91020-1.
Ссылки
[править | править код]- Georgi Dalakov. The calculating machines of Johann Helfrich Müller (англ.). Дата обращения: 25 января 2012. Архивировано 4 февраля 2012 года.
- Онлайн-выставка лондонского Музея науки (англ.)
- Модель первой разностной машины Чарльза Бэббиджа, собранная из элементов детского конструктора Meccano (англ.)
- Сборка разностной машины из элементов конструктора LEGO (англ.)
- Протокомпьютер Бэббиджа — Разностная машина № 2