Интерполяция

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
О функции, см.: Интерполянт.

Интерполя́ция, интерполи́рование (от лат. inter–polis — «разглаженный, подновлённый, обновлённый; преобразованный») — в вычислительной математике нахождение неизвестных промежуточных значений некоторой функции, по имеющемуся дискретному набору её известных значений, определенным способом. Термин «интерполяция» впервые употребил Джон Валлис в своём трактате «Арифметика бесконечных» (1656).

В функциональном анализе интерполяция линейных операторов представляет собой раздел, рассматривающий банаховы пространства как элементы некоторой категории[1].

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

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

Следует также упомянуть и совершенно другую разновидность математической интерполяции, известную под названием «интерполяция операторов». К классическим работам по интерполяции операторов относятся теорема Рисса — Торина и теорема Марцинкевича[en], являющиеся основой для множества других работ.

Определения

Рассмотрим систему несовпадающих точек [math]\displaystyle{ x_i }[/math] ([math]\displaystyle{ i\in{0,1,\dots,N} }[/math]) из некоторой области [math]\displaystyle{ D }[/math]. Пусть значения функции [math]\displaystyle{ f }[/math] известны только в этих точках:

[math]\displaystyle{ y_i = f(x_i),\quad i=1,\ldots,N. }[/math]

Задача интерполяции состоит в поиске такой функции [math]\displaystyle{ F }[/math] из заданного класса функций, что

[math]\displaystyle{ F(x_i) = y_i,\quad i=1,\ldots,N. }[/math]
  • Точки [math]\displaystyle{ x_i }[/math] называют узлами интерполяции, а их совокупность — интерполяционной сеткой.
  • Пары [math]\displaystyle{ (x_i,y_i) }[/math] называют точками данных или базовыми точками.
  • Разность между «соседними» значениями [math]\displaystyle{ \Delta x_i=x_i-x_{i-1} }[/math] — шагом интерполяционной сетки. Он может быть как переменным, так и постоянным.
  • Функцию [math]\displaystyle{ F(x) }[/math] — интерполирующей функцией или интерполянтом.

Пример

1. Пусть мы имеем табличную функцию, наподобие описанной ниже, которая для нескольких значений [math]\displaystyle{ x }[/math] определяет соответствующие значения [math]\displaystyle{ f }[/math]:

[math]\displaystyle{ x }[/math] [math]\displaystyle{ f(x) }[/math]
0 0
1 0,8415
2 0,9093
3 0,1411
4 −0,7568
5 −0,9589
6 −0,2794

Интерполяция помогает нам узнать, какое значение может иметь такая функция в точке, отличной от указанных точек (например, при x = 2,5).

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

2. Найти промежуточное значение (способом линейной интерполяции).

6000 15.5
6378 ?
8000 19.2

[math]\displaystyle{ ?=15.5+\frac{(6378-6000)}{8000-6000}* \frac{(19.2-15.5)}{1}=16.1993 }[/math]

Способы интерполяции

Интерполяция методом ближайшего соседа

Простейшим способом интерполяции является интерполяция методом ближайшего соседа.

Интерполяция многочленами

На практике чаще всего применяют интерполяцию многочленами. Это связано прежде всего с тем, что многочлены легко вычислять, легко аналитически находить их производные и множество многочленов плотно в пространстве непрерывных функций (теорема Вейерштрасса).

Обратное интерполирование (вычисление x при заданной y)

Интерполяция функции нескольких переменных

Другие способы интерполяции

Смежные концепции

См. также

Примечания

  1. Берг, 1980, с. 6—7.

Литература

  • Й. Берг, Й. Лёфстрём. Интерполяционные пространства. Введение. — М.: Мир, 1980. — 264 с.
  • Ибрагимов И. И. Методы интерполяций функций и некоторые их применения. — М.: Высшая школа, 1971. — 520 c.
  • Уолш Дж. Л.?! Интерполяция и аппроксимация рациональными функциями в комплексной области. — М.: Иностранная литература, 1961. — 508 c.
  • Трибель Х. Теория интерполяции, функциональные пространства, дифференциальные операторы. — М.: Мир, 1980. — 664 c.