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

УДК 517.5:519.65 DOI 10.21661/r-130275

И.А. Пахнутов

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

Аннотация

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

| Ключевые слова: многомерная интерполяция, полиномы, сплайны.

I.A. Pakhnutov

Multivariate interpolation

Abstract

The paper deals with iterative interpolation methods in forms of similar recursive procedures defined by a sort of simple functions (interpolation basis) not necessarily real valued. These basic functions are kind of arbitrary type being defined just by wish and considerations of user. The studied interpolant construction shows virtue of versatility: it may be used in a wide range of vector spaces endowed with scalar product, no dimension restrictions, both in Euclidean and Hilbert spaces. The choice of basic interpolation functions is as wide as possible since it is subdued nonessential restrictions. The interpolation method considered in particular coincides with traditional polynomial interpolation (mimic of Lagrange method in real unidimensional case) or rational, exponential etc. in other cases. The interpolation as iterative process, in fact, is fairly flexible and allows one procedure to change the type of interpolation, depending on the node number in a given set. Linear interpolation basis options (perhaps some nonlinear ones) allow to interpolate in noncommutative spaces, such as spaces of nondegenerate matrices, interpolated data can also be relevant elements of vector spaces over arbitrary numeric field. By way of illustration, the author gives the examples of interpolation on the real plane, in the separable Hilbert space and the space of square matrices with vektorvalued source data.

| Keywords: multivariate interpolation, polynomials, splines.

1. Введение

Задача многомерной интерполяции будет рассматриваться в следующей частной постановке: пусть Х - произвольное линейное векторное пространство со скалярным произведением и функцио-

нал £ X —» М. задан на некотором конечном множестве О. = {и е X, { = 1, .... т} своими значениями у = {у1 е : у1 = f (.V). 1 < 1 < т}, необходимо построить гладкое отображение Б: 0./\/Х —» М., удовлетворяющее требованиям Б (О., у х;) = у. V .у = О..

Технические науки

При решении задачи в такой частной постановке преобладают, в основном, два направления. Первое - это явная конструкция интерполирующего агрегата (интерполянта F) с конкретным указанием методов оценки параметров и выписыванием единой окончательной формулы [1-3]. Второе - неявная конструкция, точнее, итерационная схема, которая возвращает результат интерполяции системы данных в конкретной точке без выписывания окончательной формулы. Это так называемые рекурсивные процессы, введенные в практику интерполяции Эйткеном и Невилем [4-5].

Первое направление, в основном, опирается на аппарат многочленов в различной модификации (многочлены Лагранжа, Ганкеля, рациональные дроби, полиномиальные сплайны и др.) и базисных функций подходящего вида, сдвижки которых всюду плотны на классе рассматриваемых функций [6-8].

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

В евклидовом пространстве полином Рк(х) степени к определяется т = 11 ^ | коэффициентами, и, в общем,

8=1.

для интерполяции таким полиномом следует иметь т точек х' в области £2 с

, т, не вполне произвольно расположенных

в которых заданы значения (1 < э < т), подлежащих интерполяции [1]. От взаимного распо-(8) Уъ. зависит корректность определения коэффициентов и поведение полинома. Это накладывает

ложения узлов х

ограничения на объем и структуру данных для интерполяции, для малого объема таблиц узлов возникает проблема выбора полинома, при больших таблицах затруднительно построить единый интерполирующий агрегат для всей системы данных. Интерполянты, отличные от полиномов, встречают при своем применении не меньше трудностей. Исключение составляют линейные методы, основанные на сдвижках базисных функций (многомерные В-сплайны и им подобные [9]).

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

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

Рассмотрим произвольную функцию ф: YxYxX ^ Y, где X, Y - множества действительных или комплексных чисел, обладающую свойствами:

(а), ф (а, а 0 = а (^Ч),

(б), ф (а, (3, 0) = а, ф(а (3, 1) = (3 (Усц (3).

Пусть также для х = {хк Е

f (х,у,т,гД) =

, к=о, ..., s}, х ф х а Ф д у={ук

|Ут При Г = 0,

| ф|Дх,у,т,г-1Д), Дх,у,т+1,г-1Д),

, к = 0, ., s} рекурсивно определена функция:

^Хт

Хт+г - Хт

при г > 0.

Справедливо следующее утверждение.

Теорема 1. Рекурсия (1) определяет интерполяционный процесс (порядка г) на (х, у), т.е. f (х, у, т, г, х) = у, } = т, ..., т+г.

Доказательство легко получается по индукции. Очевидно, достаточно считать т = 0. При г = 0 утверждение выполняется по условию. Если оно верно при некотором г > 0, то для t = х0 из (1) в силу предположения и свойств функции ф получаем f (х, у, т, г, 1) = f (х, у, т, г-1, t) = ут. Если же t = х (0 < V < г), то по предположению индукции f (х, у, т, г-1, 1) = у = f (х, у, т+1, г-1, t). Но тогда по свойству (а) функции ф имеем f (х, у, т, г, 1) = yш+v. Наконец, при t = хт+г из (1) и свойства (б) функции ф следует, что f (х, у, т, г, t) = ут+г, что и завершает индукцию.

Легко заметить, что единственным препятствием к использованию (1) в случае многих переменных является последняя дробь £ - хш Проблема может быть снята применением (левого) обобщенного обращения матриц полного

Хш+г ~ Хщ

ранга: А+ = (АТА)-1АТ. Для векторов (т.е. (п*1)-матриц) можно также рассматривать «обобщенное отношение»

<1 - х<т>, х<т+г> - х<т>>

х

<т>

(хт+г -хт) (1 - хт) =

< х<т+г> - х<т> х<т+г> ,

где <•,•>- скалярное произведение, а верхний индекс (в угловых скобках) - номер столбца - матрицы узлов интерпо-> и

ляции (в М , например). В таком контексте формула (1) принимает вид:

F(x,y,m^,t) =

(уш при г = 0,

(

Ф

F(x,y,ш,г-1,t), F(x,y,ш+1,г-1,t).

<t-x<ш> х<ш+г>-х<ш>>

<х<ш+г>-х<ш> х<ш+г>-х<ш>>

при г > 0.

Теорема 2. Пусть ф удовлетворяет указанным выше условиям, х = {х'к

k = 0, 1, ..., s} - упорядочен-

ный набор точек, у = {ук с II. . к = 0. 1, ....в}, тогда рекурсия (2) осуществляет интерполяцию данных (х, у) при I е [р>и. т.е. для всех х'к' е х выполняются равенства Б(х, у, т, г, х'к ) = ук.

Доказательство повторяет предыдущее с несущественными изменениями.

Замечание 1. Формула (2) (как и теорема 2) не использует по существу конечномерности пространства узлов интерполяции, так что размерность его произвольна. В качестве ^ может быть взято произвольное поле.

Замечание 2. Если ф линейна, то (2) можно расширить до интерполяции в пространстве, например, однотипных матриц.

Функция ф, определяющая описанный интерполяционный процесс (базис интерполяции) в значительной мере произвольна и определяется лишь задачами потребителя. Рассмотрим несколько примеров таких функций.

(а) ф (а, (3,0 = а +1-((3 - а) порождает линейный интерполяционный процесс с помощью многочленов. В частном случае действительных х, у, I результат совпадает с интерполяцией полиномом Лагранжа (степени г). В ][т>11 формула Лагранжа может быть записана в соответствии с обобщенной инверсией векторов в виде:

т , m „ <t - X*1*, X<J - Xa>>

Lm (X, y, t) = ^  = „У1 П -:-т-:-—

1 = 0 0 <J < m< x^J> - X°> X<J> - X<1>> J Ф 1

но результат интерполяции, как правило, отличается от (2), особенно вне области узлов (при экстраполировании). Итерации (2) ведут себя значительно «спокойнее».

ав

(b) ф (а, в, t) =

порождает рациональную интерполяцию с полиномом в знаменателе. Никакой гарантии

в - (в - а* отсутствия нулей в знаменателе.

(с) ф (а. р, 0 = ^ГТтИ^Г'Р инициирует рациональную интерполяцию с полиномами как в числителе, так и в знаменателе.

«0ф (а, р, t) =

ye - 1 л/е - 1

а)е 2 - линейный процесс без особенностей.

(е) Ф(а. р, t) =

2аР 1 - экспоненциально-рациональная интерполяция с возможными особенностями в знаменателе. 2аг

где r =

r = 3(exp(-a)+exp(-3)) (а, в > 0) , и др.

Ю ф(а, р, = -(-а)+ехрШ— 2а

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

3. Примеры

Рассмотрим в качестве иллюстрации три примера интерполяции, демонстрирующие универсальность метода (все вычисления выполнены в MathCad-15).

1. Интерполяция на плоском квадрате, где данные определены в вершинах (0, 0), (0, 1), (1, 0), (1, 1) значениями у1 = 1 и в центре квадрата (0.5, 0.5) значением у = 2. Определим массив узлов интерполяции ма-'0011 0.5'1

трицеи x

0 10 1 0.5.

и данных значений у = (1, 1, 1, 1, 2)Т. Интерполянт z(u, V) определим равенством

z (и, V) = F (х, у, 0, 4, (и, V)!'). На рис. 1 представлена диаграмма исходных данных (Н) и результат интерполяции многочленом Лагранжа (А) по формуле (3). На рис. 2 изображены графики интерполянтов /(и. у) для полиномов Ф (а, (3,1) = а + ((3 - и)[ (часть В) и дроби ф (а, р, I) = ^ ^ (часть С).

2. Интерполяции функционала ВД - ^ I (1-| tdt с заранее известным правильным результатом по его

значениям на системе косинусов. Точнее, пусть ск = - / (1-1)-аж(к1) (II - коэффициенты Фурье для С (I) = 1-Й

к о

на [-п, п]. Попробуем восстановить интерполяцией значение X (cos(4•t)) по известным ск, к = 0, 1, 2, 3, 5, 6, 7, 8 (с4 = 0 пропущено). Определим узлы интерполяции F(t) = {1, cos(t), cos(2t), cos(3t), cos(5t), cos(6t), ^(7^, cos(8t)} и соответствующие значения функционала у = (-1.14159, 1.27324, 0, 0.14147, 0.05093, 0, 0.02598, 0)т. Запишем в соответствии с (2) для выбранной функции ф интерполянт, полагая:

Технические науки

На в 0) = со5(4Ч) и ф (а, (3,0 = а +1 ((3 - а) (полиномиальная интерполяция) (4) возвращает результат 1 = 0.091, а для ф (а, (3,1) = ^р'ф")'^ (РаЦиональная дробь) - значение X = 0 (точное). На функции в = с"1 имеем X (в) ~

0.086. В этом случае приемлемый результат 0.217, 0, 0, 0 возвращается при использовании функции ф типа (а), (Ь), (с) и (е) (см. конец п. 2) соответственно.

3. Полиномиальная интерполяция векторных данных на пространстве матриц. Пусть узлы интерпо-

| т 2) ' Х1 = (2 О '' = (О )' Х3 = (Л 2 )' 3 значения искомой функции

ляции задана! матрицами х0

в этих узлах - столбцами матрицы у = I 3 ^ ^ Построим «полиномиальный» интерполянт по функции ф (а, в, 1) = а + 1 (в - а) типа (1), а именно, положим:

МШ[х,у,0,3,( ^ 1 )]

Тогда на единичной матрице можно ожидать результат интерполяции

-7.95 -0.567/

Очевидно, в этом контексте можно рассматривать и матричнозначные функции (опустив в (5) верхний индекс

Замечание 3. Точная интерполяция, как можно убедиться, далеко не всегда приводит к желаемым результатам, особенно если принять во внимание естественную погрешность исходных данных. Улучшить ситуацию можно, аппроксимируя данные подходящим образом. Следует помнить, что аппроксимация всегда интерполирует некоторое подмножество данных. Поэтому если Б(х, у, 1) возвращает результат интерполяции данных у по сетке х = {х(1>, ..., хж} в точке 1, то можно выбрать некоторое множество узлов интерполяции г = {г(1>, ..., г<к>}, к < 8, не обязательно пересекающееся с данным, и определить в точках гш, [ = 1, ..., к, значения ъ (1 < 1 < к) так, чтобы функционал:

Рис. 1. Н - диаграмма исходных данных, А - результат интерполяции многочленом Лагранжа

Рис. 2. В - полиномиальная рекурсивная интерполяция, С - рациональная интерполяция

принимал минимальное по ъ значение (МНК (Метод наименьших квадратов) -аппроксимация). Так, если в по-

следнем примере провести «линеиную» интерполяцию по узлам r0

наилучшую в смысле

(6) для данных (х, у) этого примера, то получим / (г0) = и / (г^ = | ~| (сравните с приведенным выше

результатом примера 3). Но тогда прогнозируемые значения у в узлах х становятся равными

с отклонениями (по евклидовой норме) от исходных значений 1.582, 0.29, 0.346 и 1.745 соответственно.

Замечание 4. Рассмотренная интерполяция не предполагает использования всех узлов исходных данных (параметры т и г указывают на выбор узлов с номерами т, т+1, ..., т + г исходной сетки). При большой рабочей таблице следует выбрать г + 1 узлов, ближайших к точке интерполяции ^ и выполнить итерационный процесс г-го порядка по выбранной подсетке.

4. Обсуждение

В определении ф: YxYxX ^ Y свойства (а)-(б) не очень обременительны, и они наследуются при суперпозиции по параметрам. Так, если ф и у - две такие функции, то f (а, в, ^ = ф (у (а, в, в, ^ и g (а, в, ^ = ф (а, у (а, в, ^ - функции с такими же свойствами. Это позволяет строить различные типы интерполяционных процессов (некоторые примеры рассмотрены выше) произвольной сложности.

В линейном варианте множество Х может обладать лишь свойствами группы, а Y достаточно быть моноидом. При этом следует иметь в распоряжении отображение т: Х*Х*Х ^ X такое, что т (а, а, Ь) = 0, т (Ь, а, Ь) = е (соответственно ноль и единица X), V а, Ь е X (например, обобщенное обращение в векторном пространстве со скалярным произведением), и с: ХхУ —» У такое, что с (0, у) = 0, с (е, у) = у, V у е У (действие группы на моноид, например, умножение).

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

Литература

1. Бахвалов Н.С. Численные методы / Н.С. Бахвалов, Н.П. Жидков, Г.М. Кобельков. - М.: Бином, 2011. - 636 с.

2. Hildebrand F.B. Introduction to numerical analysis. Dover Publications, Inc. - New York, 1987. - 515 p.

3. Тараник В.А. Применение «интерполяционных многочленов Лагранжа» для функций со многими переменными // Scientific Journal «Science Rise». - 2015. - №8/2 (13). - P. 69-76.

4. Aitken A.C. On interpolation by proportional parts, without the use of differences // Proceedings of Edinburgh Mathematical Society. - 1932. - №3. - Р. 56-84.

5. Neville E.H. Iterative interpolation // Journal of Indian Mathematical Society. - 1934. - №20. - Р. 87-120.

6. Kramer H.K., Lane R.N. Decomposition of a function into a weighted sum of shifted replicas of another function // Journal of Mathematical Analysis and Applications - 1974. - V. 46. - №3. - Р. 395-608.

7. Rong Quing Jia. Linear independence of translates of a box spline //Journal of Approximatin Theory. - 1984. -V. 40. - №2. - Р. 158-160.

8. Утешев А.Ю. Решение задачи рациональной интерполяции с использованием ганкелевых полиномов / А.Ю. Утешев, И.И. Боровой // Вестник Санкт-Петербургского университета. Сер. 10. Прикладная математика. Информатика. Процессы управления. - 2016. - Вып. 4. - С. 31-43.

9. Бор К.де. Практическое руководство по сплайнам. - М: Радио и связь, 1985. - 303 c.

10. Wynn P. The calculus of finite differences over certain systems of numbers // Calcolo. - 1977. - V. 14. - №4. -Р. 303-341.