Чарльз Бэбидж (1791—1871) - страница 14

стр.

Рис. 1. Разностная машина (1822)


Основное назначение разностной машины Бэбидж видел в составлении таблиц. Машина позволяла также проверять таблицы, составленные ранее. Для этого операции должны были производиться в обратном порядке, т. е. от полинома к конечным разностям. К примеру, если в табл. 2 при х=4 ошибочно рассчитан y (получилось 70 вместо 69), то вместо постоянных конечных разностей Δ>3=6 получится массив не равных друг другу разностей, и ошибка может быть легко замечена.

Операция проверки таблиц могла быть выполнена и другим путем. Бэбидж писал: «Если соответствующие числа размещены на выходе машины, и она завершила расчет одной страницы таблицы любого типа, то следует провести сравнение последнего табличного числа страницы с заранее рассчитанными. Если различие существует, то наиболее эффективное решение заключается в пересчете целой страницы, т. е. потере всего лишь нескольких часов работы» [83, с. 125].

В общем случае область применения разностной машины Бэбиджа сводилась к вычислению значений функций вида

y = a + bx + cx>2+ ... + mx>n-1.

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


Таблица 2. Значения функции y = x>3 + x + 1 и конечных разностей (при ошибочном подсчете x>4 = 70)
XYКонечные разности
  Δ>1Δ>2Δ>3
01266
138127
2И20193
33139229
4706131 
513192  
6223   
Таблица 3. Значения функции (способ задания которой требуется определить) и конечных разностей
XYΔ>1Δ>2
0202
1224
246б
31066
416128
528208
64828 
776  

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

Наряду с возможностью табулирования важным свойством машины, как писал Бэбидж, явилась «возможность ее использования, при небольших изменениях в конструкции, для расчета таблиц, чьи аналитические законы неизвестны» [85, с. 299].

Рассмотрим пример: в табл. 3 х представляет номер члена последовательности, а у — его значение. С помощью конечных разностей можно определить формулу задания данной функции целочисленного аргумента, затем ее вычисление продолжить на разностной машине. Бэбидж находит первые и вторые разности функции (см. табл. 3). Затем, анализируя таблицу, он выявляет, что величины вторых разностей, соответствующих последовательным значениям функции, всегда равны единицам этих значений (в таблице 3, во втором и четвертом столбцах, подчеркнуты равные между собой однозначные величины 2, 4, а также единицы двузначных чисел: 0 от 10; 6 от 16; 8 от 28 и т. д., соответственно равные вторым разностям 0, 6, 8 и т. д.).

На разностной машине можно рассчитать таблицу значений этой функции, но чтобы получить, скажем, ее значение при x=50, необходимо рассчитать все предыдущие значения. Бэбидж предлагает другой путь — аналитическое задание функции.

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

Возможности разностной машины были достаточно широки. При использовании некоторых дополнительных несложных узлов машина могла извлекать корни из чисел. Точность результата могла быть тем выше, чем больше было счетных колес в машине, т. е. зависела только от ее конструкции.

Работать над созданием разностной машины Бэбидж начал вскоре после 1812 г. Разработка и постройка механической вычислительной машины представляла в то время сложную проблему. Многое из того, что было необходимо Бэбиджу, не существовало. Он должен был изобретать не только узлы и механизмы, но и в отдельных случаях — средства для их изготовления. Инженерную помощь получить было трудно и дорого, квалифицированных рабочих также было нелегко найти. Проблемой являлось и достижение требуемой точности обработки металла.