В численном анализе полиномиальная интерполяция — это интерполяция данного двумерного набора данных полиномом наименьшей возможной степени , который проходит через точки набора данных. [1]
Учитывая набор из n + 1 точек данных , в которых нет двух одинаковых, говорят , что полиномиальная функция интерполирует данные, если для каждой .
В компьютерной графике полиномы можно использовать для аппроксимации сложных плоских кривых по нескольким заданным точкам, например формы букв в типографике . Обычно это делается с помощью кривых Безье , которые представляют собой простое обобщение интерполяционных полиномов (имеющих заданные касательные, а также заданные точки).
В численном анализе полиномиальная интерполяция необходима для выполнения субквадратного умножения и возведения в квадрат, например умножения Карацубы и умножения Тума – Кука , где интерполяция через точки на полиноме произведения дает конкретный требуемый продукт. Например, учитывая a = f ( x ) = a 0 x 0 + a 1 x 1 + ··· и b = g ( x ) = b 0 x 0 + b 1 x 1 + ···, произведение ab равно конкретное значение W ( x ) = f ( x ) g ( x ). Можно легко найти точки вдоль W ( x ) при малых значениях x , и интерполяция на основе этих точек даст члены W ( x ) и конкретное произведение ab . Как сформулировано в умножении Карацубы, этот метод существенно быстрее, чем квадратичное умножение, даже для входных данных скромного размера, особенно на параллельном оборудовании.
Для любых двумерных точек данных , где нет двух одинаковых, существует уникальный полином не более степени, который интерполирует эти точки, т.е. [2]
Эквивалентно, для фиксированного выбора узлов интерполяции полиномиальная интерполяция определяет линейную биекцию между ( n +1)-кортежами значений действительных чисел и векторным пространством действительных полиномов степени не более n :
Это разновидность теоремы о неразрешимости . Теорема также справедлива для любого бесконечного поля вместо действительных чисел , например рациональных или комплексных чисел.
Обратите внимание, что это полином степени , и у нас есть для каждого , в то время как . Отсюда следует, что линейная комбинация:
Для доказательства единственности предположим, что существует другой интерполяционный полином степени не выше , так что для всех . Тогда – многочлен степени не выше , имеющий различные нули ( ). Но ненулевой полином не более степени может иметь не более нулей, [a] так же должен быть нулевой многочлен, т.е. [3]
Второе доказательство
Запишите интерполяционный полином в виде
Подставив это в уравнения интерполяции , получим систему линейных уравнений в коэффициентах , которая в матрично-векторной форме читается как следующее умножение :
Интерполянт соответствует решению приведенного выше матричного уравнения . Матрица X слева представляет собой матрицу Вандермонда , определитель которой, как известно, не равен нулю, поскольку все узлы различны. Это гарантирует, что матрица обратима и уравнение имеет единственное решение ; то есть существует и уникален.
Следствие
Если является многочленом степени не более , то интерполяционным многочленом в различных точках является он сам.
Для полинома степени меньше или равной n, который интерполируется в узлах, где . Позвольте быть полиномом степени меньше или равной n+1, который интерполирует в узлах, где . Тогда дается:
Доказательство:
Это можно показать для случая, когда :
Полиномиальные коэффициенты
Чтобы найти , нам нужно решить нижнюю треугольную матрицу , образованную преобразованием приведенного выше уравнения в матричную форму:
Полином Ньютона можно выразить в упрощенной форме, если они расположены последовательно с одинаковым интервалом.
Если они расположены последовательно и на равном расстоянии от i = 0, 1, ..., k и некоторая переменная x выражается как , то разницу можно записать как . Таким образом, полином Ньютона становится
Поскольку связь между разделенными разностями и прямыми разностями определяется как: [4]
формула прямой интерполяции Ньютона
Обратная формула Ньютона
Если узлы переупорядочить как , полином Ньютона станет
Если они расположены на одинаковом расстоянии от i = 0, 1, ..., k и , то
Поскольку связь между разделенными различиями и обратными различиями определяется как :
формула обратной интерполяции Ньютона
Ромбическая диаграмма
Ромбическая диаграмма — это диаграмма, которая используется для описания различных формул интерполяции, которые можно построить для заданного набора данных. Линия, начинающаяся с левого края и проходящая через диаграмму вправо, может использоваться для представления формулы интерполяции, если соблюдаются следующие правила: [5]
Шаги слева направо указывают на сложение, тогда как шаги справа налево указывают на вычитание.
Если наклон ступеньки положительный, то термин, который следует использовать, представляет собой произведение разницы и коэффициента, находящегося непосредственно под ней. Если наклон ступеньки отрицательный, то термин, который следует использовать, представляет собой произведение разницы и коэффициента, находящегося непосредственно над ней.
Если шаг горизонтален и проходит через фактор, используйте произведение фактора и среднее значение двух членов непосредственно выше и ниже него. Если шаг горизонтален и проходит через разницу, используйте произведение разницы и среднего значения двух членов непосредственно выше и ниже него.
Коэффициенты выражаются по формуле:
Доказательство эквивалентности
Если путь идет из в , он может соединяться через три промежуточных шага: (a) через , (b) через или (c) через . Доказательство эквивалентности этих трех двухшаговых путей должно доказать, что все (n-шаговые) пути могут быть преобразованы с одинаковым началом и концом, и все они представляют собой одну и ту же формулу.
Путь (а):
Путь (б):
Путь (с):
Вычитая вклады от путей a и b:
Таким образом, вклад пути (а) или пути (б) одинаков. Поскольку путь (c) является средним значением путей (a) и (b), он также вносит в полином идентичную функцию. Таким образом, доказывается эквивалентность путей с одинаковыми начальной и конечной точками. Чтобы проверить, можно ли сместить пути на разные значения в крайнем левом углу, достаточно сделать всего два шага пути: (а) до сквозного или (б) фактор между и , до сквозного или (в) начиная с .
Путь (а)
Путь (б)
Путь (с)
Поскольку подстановка в приведенные выше уравнения показывает, что все приведенные выше члены сводятся к и, следовательно, эквивалентны. Следовательно, эти пути можно трансформировать, чтобы они начинались с крайнего левого угла и заканчивались в общей точке. [5]
Формула Ньютона
Если взять трансверсальный наклон с отрицательным наклоном от до, получим формулу интерполяции всех последовательно расположенных точек, эквивалентную формуле прямой интерполяции Ньютона:
тогда как, принимая трансверсальный положительный наклон от до , дает формулу интерполяции всех последовательно расположенных точек, эквивалентную формуле обратной интерполяции Ньютона:
где – число, соответствующее введенному в интерполяции Ньютона.
Формула Гаусса
Проведя зигзагообразную линию вправо, начиная с отрицательного наклона, мы получаем формулу форварда Гаусса:
тогда как, начиная с положительного наклона, мы получаем обратную формулу Гаусса:
Формула Стирлинга
Пройдя горизонтальный путь вправо, начиная с , мы получаем формулу Стирлинга:
Формула Стирлинга представляет собой среднее арифметическое прямой и обратной формул Гаусса.
Формула Бесселя
Пройдя горизонтальный путь вправо, начиная с множителя между и , мы получаем формулу Стирлинга:
Алгоритмы Вандермонда
Матрица Вандермонда во втором доказательстве выше может иметь большое число обусловленности [6] , что приводит к большим ошибкам при вычислении коэффициентов a i , если система уравнений решается методом исключения Гаусса .
Поэтому несколько авторов предложили алгоритмы , которые используют структуру матрицы Вандермонда для вычисления численно устойчивых решений за O( n2 ) операций вместо O( n3 ) , требуемых методом исключения Гаусса. [7] [8] [9] Эти методы основаны на построении сначала интерполяции Ньютона полинома, а затем на преобразовании его в мономиальную форму .
Алгоритмы, не относящиеся к Вандермонду
Чтобы найти интерполяционный полином p ( x ) в векторном пространстве P ( n ) полиномов степени n , мы можем использовать обычный мономиальный базис для P ( n ) и инвертировать матрицу Вандермонда методом исключения Гаусса, что дает вычислительные затраты O ( n 3 ) операций. Чтобы улучшить этот алгоритм, более удобный базис для P ( n ) может упростить вычисление коэффициентов, которые затем необходимо перевести обратно в термины мономиального базиса .
Один из методов состоит в том, чтобы записать интерполяционный полином в форме Ньютона (т.е. использовать базис Ньютона) и использовать метод разделенных разностей для построения коэффициентов, например алгоритм Невилла . Стоимость составляет O( n 2 ) операций. Более того, вам нужно выполнить дополнительную работу O( n ) только в том случае, если к набору данных добавляется дополнительная точка, тогда как для других методов вам придется переделать все вычисления.
Другой метод предпочтителен, когда целью является вычисление не коэффициентов p ( x ) , а только одного значения p ( a ) в точке x = a, отсутствующей в исходном наборе данных. Форма Лагранжа вычисляет значение p ( a ) со сложностью O( n2 ) . [10]
Учитывая набор точек данных (положение, значение), в которых нет двух одинаковых позиций , интерполирующий полином можно рассматривать как линейную комбинацию значений с использованием коэффициентов, которые являются полиномами в зависимости от . Например, интерполяционный полином в форме Лагранжа представляет собой линейную комбинацию
Поскольку коэффициенты зависят только от позиций , а не от значений , мы можем использовать те же коэффициенты, чтобы найти интерполяционный полином для второго набора точек данных в тех же позициях:
Более того, коэффициенты зависят только от относительных промежутков между позициями. Таким образом, учитывая третий набор данных, точки которого задаются новой переменной ( аффинное преобразование , инвертированное ) :
мы можем использовать преобразованную версию предыдущих полиномов коэффициентов:
и запишите интерполяционный полином как:
Точки данных часто имеют равноотстоящие друг от друга позиции , которые можно нормализовать с помощью аффинного преобразования в . Например, рассмотрим точки данных
.
Интерполяционный полином в форме Лагранжа представляет собой линейную комбинацию
Например, и .
Случай равноотстоящих друг от друга точек также можно рассматривать методом конечных разностей . Первое отличие последовательности значений — это последовательность, определяемая . Итерация этой операции дает n- ю разностную операцию , определяемую явно следующим образом:
Кроме того, существует форма остатка Лагранжа ошибки для функции f , которая n + 1 раз непрерывно дифференцируется на замкнутом интервале , и полином степени не выше n , который интерполирует f в n + 1 различных точках . Для каждого существует такое, что
Эта граница ошибки предполагает выбор точек интерполяции x i для минимизации произведения , что достигается с помощью узлов Чебышева .
Доказательство остатка Лагранжа
Установите термин ошибки как и определите вспомогательную функцию:
Но поскольку – многочлен степени не выше n , мы имеем , и:
Теперь, поскольку x i являются корнями и , мы имеем , что означает, что Y имеет по крайней мере n + 2 корня. По теореме Ролля имеет не менее n + 1 корней и итеративно имеет хотя бы один корень ξ в интервале I . Таким образом:
и:
Это соответствует рассуждениям, лежащим в основе остаточного члена Лагранжа в теореме Тейлора ; Фактически, остаток Тейлора представляет собой частный случай ошибки интерполяции, когда все узлы интерполяции x i идентичны. [11] Обратите внимание, что ошибка будет равна нулю при любом i . Таким образом, максимальная ошибка возникнет в какой-то момент интервала между двумя последовательными узлами.
Равноотстоящие интервалы
В случае равноотстоящих друг от друга узлов интерполяции где , для и где член произведения в формуле ошибки интерполяции может быть связан как [12]
Таким образом, граница ошибки может быть задана как
Однако при этом предполагается, что преобладает , т.е. В некоторых случаях это не так, и ошибка фактически увеличивается при n → ∞ (см. феномен Рунге ). Этот вопрос рассматривается в разделе «Свойства сходимости».
Константы Лебега
Фиксируем узлы интерполяции x 0 , ..., x n и интервал [ a , b ], содержащий все узлы интерполяции. Процесс интерполяции отображает функцию f в полином p . Это определяет отображение X из пространства C ([ a , b ]) всех непрерывных функций на [ a , b ] в себя. Отображение X линейно и является проекцией на подпространство многочленов степени n или меньше.
Константа Лебега L определяется как операторная норма X . Имеет место (частный случай леммы Лебега ):
Другими словами, интерполяционный полином не более чем в раз ( L + 1) хуже наилучшего возможного приближения. Это предполагает, что мы ищем набор узлов интерполяции, который делает L маленьким. В частности, для узлов Чебышева имеем :
Мы снова заключаем, что узлы Чебышева являются очень хорошим выбором для полиномиальной интерполяции, поскольку рост n является экспоненциальным для эквидистантных узлов. Однако эти узлы не являются оптимальными.
Свойства сходимости
Естественно задаться вопросом, для каких классов функций и для каких узлов интерполяции последовательность интерполяционных полиномов сходится к интерполируемой функции при n → ∞ ? Сходимость можно понимать по-разному, например, поточечно, равномерно или в некоторой интегральной норме.
Ситуация довольно плохая для эквидистантных узлов, поскольку равномерная сходимость не гарантируется даже для бесконечно дифференцируемых функций. Одним из классических примеров, принадлежащих Карлу Рунге , является функция f ( x ) = 1/(1 + x 2 ) на интервале [−5, 5] . Ошибка интерполяции || ж - п п || ∞ неограниченно растет при n → ∞ . Другой пример — функция f ( x ) = | х | на интервале [−1, 1] , для которого интерполяционные полиномы даже не сходятся поточечно, за исключением трех точек x = ±1, 0. [13]
Можно подумать, что лучшие свойства сходимости можно получить, выбирая разные узлы интерполяции. Следующий результат, кажется, дает весьма обнадеживающий ответ:
Теорема . Для любой функции f ( x ), непрерывной на интервале [ a , b ], существует таблица узлов, для которой последовательность интерполирующих полиномов сходится к f ( x ) равномерно на [ a , b ].
Доказательство
Понятно, что последовательность полиномов наилучшего приближения сходится к f ( x ) равномерно (в силу аппроксимационной теоремы Вейерштрасса ). Теперь нам осталось только показать, что каждое из них можно получить интерполяцией на определенных узлах. Но это справедливо благодаря особому свойству полиномов наилучшего приближения, известному из теоремы об эквиколебаниях . В частности, мы знаем, что такие многочлены должны пересекать f ( x ) не менее n + 1 раз. Выбирая точки пересечения в качестве узлов интерполяции, получаем интерполяционный полином, совпадающий с полиномом наилучшего приближения.
Однако недостатком этого метода является то, что узлы интерполяции должны рассчитываться заново для каждой новой функции f ( x ), но алгоритм трудно реализовать численно. Существует ли единая таблица узлов, для которой последовательность интерполирующих полиномов сходится к любой непрерывной функции f ( x )? Ответ, к сожалению, отрицательный:
Теорема . Для любой таблицы узлов существует непрерывная функция f ( x ) на интервале [ a , b ], для которой последовательность интерполирующих полиномов расходится на [ a , b ]. [14]
Доказательство по существу использует оценку нижней оценки константы Лебега, которую мы определили выше как операторную норму X n (где X n — оператор проектирования на Π n ). Теперь ищем таблицу узлов, для которых
Согласно теореме Банаха–Штайнхауза это возможно только тогда, когда нормы X n равномерно ограничены, что не может быть правдой, поскольку мы знаем, что
Например, если в качестве узлов интерполяции выбраны равноудаленные точки, функция из явления Рунге демонстрирует расхождение такой интерполяции. Обратите внимание, что эта функция не только непрерывна, но даже бесконечно дифференцируема на [−1, 1] . Однако для лучших узлов Чебышева такой пример найти гораздо сложнее из-за следующего результата:
Теорема . Для каждой абсолютно непрерывной функции на [−1, 1] последовательность интерполяционных многочленов, построенных на узлах Чебышёва, сходится к f ( x ) равномерно. [15]
Связанные понятия
Феномен Рунге показывает, что при высоких значениях n интерполяционный полином может сильно колебаться между точками данных. Эту проблему обычно решают с помощью сплайн-интерполяции . Здесь интерполянтом является не многочлен, а сплайн : цепочка из нескольких многочленов более низкой степени.
Задачи интерполяции Эрмита — это задачи, в которых заданы не только значения многочлена p в узлах, но и все производные до заданного порядка. Это оказывается эквивалентным системе одновременных сравнений полиномов и может быть решено с помощью китайской теоремы об остатках для многочленов. Интерполяция Биркгофа — это дальнейшее обобщение, в котором назначаются только производные некоторых порядков, а не обязательно всех порядков от 0 до k .
Коллокационные методы решения дифференциальных и интегральных уравнений основаны на полиномиальной интерполяции.
^ Тиманн, Джером Дж. (май – июнь 1981 г.). «Полиномиальная интерполяция». Новости ввода/вывода . 1 (5): 16. ISSN 0274-9998 . Проверено 3 ноября 2017 г.
^ Хамферис, Джеффри; Джарвис, Тайлер Дж. (2020). «9.2 – Интерполяция». Основы прикладной математики Том 2: Алгоритмы, приближение, оптимизация . Общество промышленной и прикладной математики. п. 418. ИСБН978-1-611976-05-2.
^ аб Эпперсон, Джеймс Ф. (2013). Введение в численные методы и анализ (2-е изд.). Хобокен, Нью-Джерси: Уайли. ISBN978-1-118-36759-9.
^ Берден, Ричард Л.; Фейрес, Дж. Дуглас (2011). Численный анализ (9-е изд.). п. 129. ИСБН9780538733519.
^ аб Хэмминг, Ричард В. (1986). Численные методы для ученых и инженеров (Полная республика 2-го изд. (1973) изд.). Нью-Йорк: Дувр. ISBN978-0-486-65241-2.
^ Хайэм, Нью-Джерси (1988). «Быстрое решение систем типа Вандермонда, включающих ортогональные полиномы». Журнал IMA численного анализа . 8 (4): 473–486. дои : 10.1093/иманум/8.4.473.
^ Бьорк, Å; В. Перейра (1970). «Решение систем уравнений Вандермонда». Математика вычислений . 24 (112). Американское математическое общество: 893–903. дои : 10.2307/2004623. JSTOR 2004623.
^ Кальветти, Д .; Райхель, Л. (1993). «Быстрое обращение матриц типа Вандермонда с использованием ортогональных полиномов». КУСОЧЕК . 33 (3): 473–484. дои : 10.1007/BF01990529. S2CID 119360991.
^ Р.Бевилаква, Д. Бини, М.Каповани и О. Менчи (2003). Appunti ди Calcolo Numerico . Глава 5, с. 89. Servizio Editoriale Universitario Pisa - Azienda Regionale Diritto allo Studio Universitario.
^ «Ошибки полиномиальной интерполяции» (PDF) .
^ «Заметки о полиномиальной интерполяции» (PDF) .
^ Уотсон (1980, стр. 21) приписывает последний пример Бернштейну (1912).
^ Уотсон (1980, стр. 21) приписывает эту теорему Фаберу (1914).
^ Крылов, В.И. (1956). «Сходимость алгебраической интерполирования покорням многочленов Чебышева для абсолютно непрерывных и функций с ограниченным изменением». Доклады Академии наук СССР . Новая серия (на русском языке). 107 : 362–365.МР 18-32.
Рекомендации
Бернштейн, Сергей Н. (1912). «Sur l'ordre de la meilleure des functions continue par les Polynômes de degré donné» [О порядке наилучшего приближения непрерывных функций полиномами заданной степени]. Память акад. Рой. Бельг. (На французском). 4 : 1–104.
Фабер, Георг (1914). «Über die interpolatorische Darstellung stetiger Funktionen» [Об интерполяции непрерывных функций]. Немецкая математика. Яр. (на немецком). 23 : 192–210.
Уотсон, Г. Алистер (1980). Теория приближений и численные методы . Джон Уайли. ISBN 0-471-27706-1.
дальнейшее чтение
Аткинсон, Кенделл А. (1988). "Глава 3.". Введение в численный анализ (2-е изд.). Джон Уайли и сыновья. ISBN 0-471-50023-2.
Брутман, Л. (1997). «Функции Лебега для полиномиальной интерполяции — обзор». Анна. Число. Математика . 4 : 111–127.
Пауэлл, MJD (1981). "Глава 4". Теория и методы приближения . Издательство Кембриджского университета. ISBN 0-521-29514-9.