Среди различных методов прогнозирования нельзя не выделить аппроксимацию. С её помощью можно производить приблизительные подсчеты и вычислять планируемые показатели, путем замены исходных объектов на более простые. В Экселе тоже существует возможность использования данного метода для прогнозирования и анализа. Давайте рассмотрим, как этот метод можно применить в указанной программе встроенными инструментами.
Наименование данного метода происходит от латинского слова proxima – «ближайшая» Именно приближение путем упрощения и сглаживания известных показателей, выстраивание их в тенденцию и является его основой. Но данный метод можно использовать не только для прогнозирования, но и для исследования уже имеющихся результатов. Ведь аппроксимация является, по сути, упрощением исходных данных, а упрощенный вариант исследовать легче.
Главный инструмент, с помощью которого проводится сглаживания в Excel – это построение линии тренда. Суть состоит в том, что на основе уже имеющихся показателей достраивается график функции на будущие периоды. Основное предназначение линии тренда, как не трудно догадаться, это составление прогнозов или выявление общей тенденции.
Но она может быть построена с применением одного из пяти видов аппроксимации:
- Линейной;
- Экспоненциальной;
- Логарифмической;
- Полиномиальной;
- Степенной.
Рассмотрим каждый из вариантов более подробно в отдельности.
Способ 1: линейное сглаживание
Прежде всего, давайте рассмотрим самый простой вариант аппроксимации, а именно с помощью линейной функции. На нем мы остановимся подробнее всего, так как изложим общие моменты характерные и для других способов, а именно построение графика и некоторые другие нюансы, на которых при рассмотрении последующих вариантов уже останавливаться не будем.
Прежде всего, построим график, на основании которого будем проводить процедуру сглаживания. Для построения графика возьмем таблицу, в которой помесячно указана себестоимость единицы продукции, производимой предприятием, и соответствующая прибыль в данном периоде. Графическая функция, которую мы построим, будет отображать зависимость увеличения прибыли от уменьшения себестоимости продукции.
Сглаживание, которое используется в данном случае, описывается следующей формулой:
В конкретно нашем случае формула принимает такой вид:
y=-0,1156x+72,255
Величина достоверности аппроксимации у нас равна 0,9418 , что является довольно приемлемым итогом, характеризующим сглаживание, как достоверное.
Способ 2: экспоненциальная аппроксимация
Теперь давайте рассмотрим экспоненциальный тип аппроксимации в Эксель.
Общий вид функции сглаживания при этом такой:
где e – это основание натурального логарифма.
В конкретно нашем случае формула приняла следующую форму:
y=6282,7*e^(-0,012*x)
Способ 3: логарифмическое сглаживание
Теперь настала очередь рассмотреть метод логарифмической аппроксимации.
В общем виде формула сглаживания выглядит так:
где ln – это величина натурального логарифма. Отсюда и наименование метода.
В нашем случае формула принимает следующий вид:
y=-62,81ln(x)+404,96
Способ 4: полиномиальное сглаживание
Настал черед рассмотреть метод полиномиального сглаживания.
Формула, которая описывает данный тип сглаживания, приняла следующий вид:
y=8E-08x^6-0,0003x^5+0,3725x^4-269,33x^3+109525x^2-2E+07x+2E+09
Способ 5: степенное сглаживание
В завершении рассмотрим метод степенной аппроксимации в Excel.
Данный способ эффективно используется в случаях интенсивного изменения данных функции. Важно учесть, что этот вариант применим только при условии, что функция и аргумент не принимают отрицательных или нулевых значений.
Общая формула, описывающая данный метод имеет такой вид:
В конкретно нашем случае она выглядит так:
y = 6E+18x^(-6,512)
Как видим, при использовании конкретных данных, которые мы применяли для примера, наибольший уровень достоверности показал метод полиномиальной аппроксимации с полиномом в шестой степени (0,9844 ), наименьший уровень достоверности у линейного метода (0,9418 ). Но это совсем не значит, что такая же тенденция будет при использовании других примеров. Нет, уровень эффективности у приведенных выше методов может значительно отличаться, в зависимости от конкретного вида функции, для которой будет строиться линия тренда. Поэтому, если для этой функции выбранный метод наиболее эффективен, то это совсем не означает, что он также будет оптимальным и в другой ситуации.
Если вы пока не можете сразу определить, основываясь на вышеприведенных рекомендациях, какой вид аппроксимации подойдет конкретно в вашем случае, то есть смысл попробовать все методы. После построения линии тренда и просмотра её уровня достоверности можно будет выбрать оптимальный вариант.
Как и предыдущие, этот урок с аналогичным текстом лучше смотреть не листе Excel (см. Уроки аппроксимации.xls, Лист1)
Аппроксимация в Excel проще всего реализуется с помощью программы построения трендов. Для выяснения особенностей аппроксимации возьмем какой-либо конкретный пример. Например, энтальпию насыщенного пара по книге С.Л.Ривкина и А.А.Александрова "Теплофизические свойства воды и водяного пара", М., "Энергия", 1980г. В колонке P поместим значения давления в кгс/см2, в колонке i" - энтальпию пара на линии насыщения в ккал/кг и построим график с помощью опции или кнопки "Мастер диаграмм".
Щелкнем правой кнопкой по линии на рисунке, затем левой кнопкой по опции "Добавить линию тренда" и смотрим - какие услуги предлагаются нам этой опцией в части реализации аппроксимации в Excel.
Нам предлагается на выбор пять типов аппроксимации: линейная, степенная, логарифмическая, экспоненциальная и полиноминальная. Чем они хороши и чем могут нам помочь? - Нажимаем кнопку F1, затем щелкаем по опции "Мастер ответов" и в появившееся окошко вводим нужное нам слово "аппроксимация", после чего щелкаем по кнопке "Найти". Выбираем в появившемся списке раздел "Формулы для построения линий тренда".
Получаем следующую информацию в несколько измененной нами
редакции:
Линейная:
где b - угол наклона и a - координата пересечения оси абсцисс (свободный член).
Степенная:
Используется для аппроксимации данных по методу наименьших квадратов в соответствии с уравнением:
где c и b - константы.
Логарифмическая:
Используется для аппроксимации данных по методу наименьших квадратов в соответствии с уравнением:
где a и b - константы.
Экспоненциальная:
Используется для аппроксимации данных по методу наименьших квадратов в соответствии с уравнением:
где b и k - константы.
Полиноминальная:
Используется для аппроксимации данных по методу наименьших квадратов в соответствии с уравнением:
y=a+b1*x+b2*x^2+b3*x^3+...b6*x^6
где a, b1, b2, b3,... b6 - константы.
Снова щелкаем по линии рисунка, затем по опции "Добавить линию тренда", далее по опции "Параметры" и ставим флажки в окошках слева от записей: "показывать уравнение на диаграмме" и "поместить на диаг- рамму величину достоверности аппроксимации R^2, после чего щелкаем по кнопке OK. Пробуем все варианты аппроксимации по порядку.
Линейная аппроксимация дает нам R^2=0.9291 - это низкая достоверность и плохой результат.
Для перехода к степенной аппроксимации щелкаем правой кнопкой по линии тренда, затем левой кнопкой - по опции "Формат линии тренда", далее по опциям "Тип" и "Степенная". На этот раз получили R^2=0.999.
Запишем уравнение линии тренда в виде, пригодном для расчетов на листе Excel:
y=634.16*x^0.012
В результате имеем:
Максимальная погрешность аппроксимации получилась на уровне 0.23 ккал/кг. Для аппроксимации экспериментальных данных такой результат был бы чудесным, но для аппроксимации справочной таблицы это не слишком хороший результат. Поэтому попробуем проверить другие варианты аппроксимации в Excel посредством программы построения трендов.
Логарифмическая аппроксимация дает нам R^2=0.9907 - несколько хуже, чем по степенному варианту. Экспоненнта в том варианте, который предлагает программа построения трендов, вообще не подошла - R^2=0.927.
Полиноминальная аппроксимация со степенью 2 (это y=a+b1*x+b2*x^2) обеспечила R^2=0.9896. При степени 3 получили R^2=0.999, но с явным искажением аппроксимируемой кривой, в особенности при P>0.07 кгс/см2. Наконец, пятая степень нам дает R^2=1 - это, как утверждается, максимально тесная связь между исходными данными и их аппроксимацией.
Перепишем уравнение полинома в пригодном для расчетов на листе Excel виде:
y=1E+07*x^5-4E+06*x^4+469613*x^3-27728*x^2+1020.8*x+592.44
и сравним результат аппроксимации с исходной таблицей:
Оказалось, что R^2=1 в данном случае лишь блестящая ложь. Реально, самый лучший результат полиноминальной аппроксимации дал самый простой полином вида y=a+b1*x+b2*x^2. Но его результат хуже, чем в варианте степенной аппроксимации y=634.16*x^0.012, где максимальная погрешность аппроксимации находилась на уровне 0.23 ккал/кг. Это все, что мы можем выжать из программы построения трендов. Посмотрим, что мы можем выжать из функции Линейн. Для нее попробуем вариант степенной аппроксимации.
Примечание. Обнаруженный дефект связан с работой программы построения трендов, но не с методом МНК.
Иногда возникает необходимость аппроксимации данной функции другими функциям, которые легче вычислить. В частности, рассматривается задача о наилучшем приближении в нормированном пространстве Н, когда заданную функцию f требуется заменить линейной комбинацией заданных элементов из Н так, чтобы отклонение ||f - || было минимальным.
Метод наименьших квадратов
Mетод наименьших квадратов был предложен Гауссом и Лежандром в конце XVIII - начале XIX веков в связи с проблемой обработки экспериментальных данных. В этом случае задача построения функции непрерывного аргумента по дискретной информации, характеризуется двумя особенностями:
- 1. Число точек, в которых проводятся измерения, обычно бывает достаточно большим.
- 2. Значения функции в точках сетки определяются приближенно в связи с неизбежными ошибками измерения.
С учетом этих обстоятельств строить функцию в виде суммы большого числа слагаемых и добиваться ее точного равенства в точках сетки величинам, как это делалось при интерполировании, становится нецелесообразным.
В методе наименьших квадратов аппроксимирующая функция ищется в виде суммы, аналогичной, но содержащей сравнительно небольшое число слагаемых
погрешность уравнение интерполяция
в частности, возможен вариант.
Предположим, что мы каким-то образом выбрали коэффициенты, тогда в каждой точке сетки, можно подсчитать погрешность
Сумма квадратов этих величин называется суммарной квадратичной погрешностью
Она дает количественную оценку того, насколько близки значения функции в точках сетки к величинам.
Меняя значения коэффициентов, мы будем менять погрешность, которая является их функцией. В результате естественно возникает задача:
Найти такой, набор коэффициентов, при которых суммарная квадратичная погрешность оказывается минимальной.
Функцию с набором коэффициентов, удовлетворяющих этому требованию, называют наилучшим приближением по методу наименьших квадратов.
Построение наилучшего приближения сводится к классической задаче математического анализа об экстремуме функции нескольких переменных. Метод решения этой задачи известен.
Необходимым условием экстремума является равенство нулю в экстремальном точке всех первых частных производных рассматриваемой функции. В случае это дает
Оставим члены, содержащие, слева и поменяем в них порядок суммирования по индексам и. Члены, содержащие, перенесем направо. В результате уравнения примут вид
Мы получили систему линейных алгебраических уравнений, в которой роль неизвестных играют искомые коэффициенты разложения. Число уравнении и число неизвестных в этой системе совпадает и равно. Матрица коэффициентов системы Г состоит из элементов, которые определяются формулой. Ее называют матрицей Грама для системы функций на сетке. Отметим, что матрица Грама является симметричной: для ее элементов, согласно, справедливо равенство. Числа, стоящие в правой части уравнений, вычисляются по формуле через значения сеточной функции.
Предположим, что функции выбраны такими, что определитель матрицы Грама, отличен от нуля:
В этом случае при любой правой части система имеет единственное решение
Рассмотрим наряду с набором коэффициентов, полученных в результате решения системы, любой другой набор коэффициентов. Представим числа в виде
и сравним значения суммарной квадратичной погрешности для функций, построенных с помощью коэффициентов и.
Квадрат погрешности и точке для функции с коэффициентами можно записать в виде
Здесь в среднем слагаемом мы заменили в одной из сумм индекс суммирования на, чтобы не использовать один и тот же индекс в двух разных суммах и иметь возможность перемножить их почленно.
Чтобы получить суммарную квадратичную погрешность, нужно просуммировать выражения для по индексу Первые слагаемые не содержат. Их сумма дает погрешность, вычисленную для функции с коэффициентами.
Рассмотрим теперь сумму вторых слагаемых, которые зависят от линейно:
Здесь мы поменяли местами порядок суммирования и воспользовались тем, что коэффициенты, удовлетворяют системе уравнений.
С учетом будем иметь
Формула показывает, что функция с коэффициентами, полученными в результате решения уравнений, действительно минимизирует суммарную квадратичную погрешность. Если мы возьмем любой другой набор коэффициентов, отличный от, то согласно формуле к погрешности добавится положительное слагаемое и она увеличится.
Итак, чтобы построить наилучшее приближение сеточной функции, по методу наименьших квадратов, нужно взять в качестве коэффициентов разложения решение системы линейных уравнений.
АППРОКСИМАЦИЯ ФУНКЦИЙ
Информатика, кибернетика и программирование
Как упростить вычисление известной функции fx или же ее характеристик если fx слишком сложная Ответы на эти вопросы даются теорией аппроксимации функций основная задача которой состоит в нахождении функции y=x близкой т. Обоснование способов нахождения удачного вида функциональной зависимости и подбора параметров составляет задачу теории аппроксимации функций. В зависимости от способа подбора параметров получают различные методы аппроксимации; наибольшее распространение среди них получили интерполяция и среднеквадратичное...
ТЕМА 3. АППРОКСИМАЦИЯ ФУНКЦИЙ
3.1. Зачем нужна аппроксимация функций?
В окружающем нас мире все взаимосвязано, поэтому одной из наиболее часто встречающихся задач является установление характера зависимости между различными величинами, что позволяет по значению одной величины определить значение другой. Математической моделью зависимости одной величины от другой является понятие функции y=f(x) .
В практике расчетов, связанных с обработкой экспериментальных данных, вычислением f(x), разработкой вычислительных методов, встречаются следующие две ситуации:
1. Как установить вид функции y=f(x), если она неизвестна? Предполагается при этом, что задана таблица ее значений, которая получена либо из экспериментальных измерений, либо из сложных расчетов.
2. Как упростить вычисление известной функции f(x) или же ее характеристик, если f(x) слишком сложная?
Ответы на эти вопросы даются теорией аппроксимации функций, основная задача которой состоит в нахождении функции y= (x) , близкой (т.е. аппроксимирующей) в некотором нормированном пространстве к исходной функции y=f(x). Функцию (x) при этом выбирают такой, чтобы она была максимально удобной для последующих расчетов.
Основной подход к решению этой задачи заключается в том, что (x) выбирается зависящей от нескольких свободных параметров, т.е. , значения которых подбираются из некоторого условия близости f(x) и (x) .
Обоснование способов нахождения удачного вида функциональной зависимости и подбора параметров составляет задачу теории аппроксимации функций .
В зависимости от способа подбора параметров получают различные методы аппроксимации; наибольшее распространение среди них получили интерполяция и среднеквадратичное приближение, частным случаем которого является метод наименьших квадратов.
Наиболее простой, хорошо изученной и нашедшей широкое применение в настоящее время является линейная аппроксимация , при которой выбирают функцию, линейно зависящую от параметров, т.е. в виде обобщенного многочлена:
. (3.1)
Здесь известная система линейно независимых (базисных) функций. В качестве в принципе могут быть выбраны любые элементарные функции, например: тригонометрические, экспоненты, логарифмические или комбинации таких функций. Важно, чтобы система базисных функций была полной , т.е. обеспечивающей аппроксимацию f(x) многочленом (3.1) с заданной точностью при.
Приведем хорошо известные и часто используемые системы. При интерполяции обычно используется система линейно независимых функций. Для среднеквадратичной аппроксимации удобнее в качестве брать ортогональные на интервале [ 1, 1] многочлены Лежандра:
Заметим, что если функция задана на отрезке [ a, b ] , то при использовании этой системы необходимо предварительно осуществить преобразование координат, приводящее интервал к интервалу.
Для аппроксимации периодических функций используют ортогональную на [ a, b ] систему тригонометрических функций. В этом случае обобщенный многочлен (3.1) записывается в виде.
3.2. Что такое интерполяция?
Интерполяция является одним из способов аппроксимации функций. Суть ее состоит в следующем. В области значений x a, b ], где функции f и должны быть близки, выбирают упорядоченную систему точек (узлов) (обозначим), число которых равно количеству искомых параметров. Далее параметры подбирают такими, чтобы функция совпадала с f(x) в этих узлах, (рис.3.1), для чего решают полученную систему из n алгебраических в общем случае нелинейных уравнений.
В случае линейной аппроксимации (3.1) система для нахождения коэффициентов линейна и имеет следующий вид:
(3.2)
Система базисных функций, используемых для интерполяции, должна быть чебышевской , т.е. такой, чтобы определитель матрицы системы (3.2) был отличен от нуля и, следовательно, задача интерполяции имела единственное решение.
Для большинства практически важных приложений при интерполяции наиболее удобны обычные алгебраические многочлены, ибо они легко обрабатываются.
Интерполяционным многочленом называют алгебраический многочлен степени n-1 , совпадающий с аппроксимируемой функцией в выбранных n точках.
Общий вид алгебраического многочлена
. (3.3)
Матрица системы (3.2) в этом случае имеет вид
, (3.4)
и ее определитель (это определитель Вандермонда) отличен от нуля, если точки x i разные. Поэтому задача (3.2) имеет единственное решение, т.е. для заданной системы различных точек существует единственный интерполяционный многочлен.
Погрешность аппроксимации функции f(x) интерполяционным многочленом степени, построенным по n точкам, можно оценить, если известна ее производная порядка n, по формуле
(3.5)
Из (3.5) следует, что при h 0 порядок погрешности p (см. подразд. 1.4) при интерполяции алгебраическим многочленом равен количеству выбранных узлов p=n. Величина может быть сделана малой как за счет увеличения n, так и уменьшения h. В практических расчетах используют, как правило, многочлены невысокого порядка (n 6 ) , в связи с тем что с ростом n резко возрастает погрешность вычисления самого многочлена из-за погрешностей округления.
3.3. Какие бывают многочлены и способы интерполяции?
Один и тот же многочлен можно записать по-разному, например. Поэтому в зависимости от решаемых задач применяют различные виды представления интерполяционного многочлена и соответственно способы интерполяции.
Наряду с общим представлением (3.3) наиболее часто в приложениях используют интерполяционные многочлены в форме Лагранжа и Ньютона. Их особенность в том, что не надо находить параметры, так как многочлены в этой форме прямо записаны через значения таблицы.
Интерполяционный многочлен Ньютона (PN)
. (3.6)
Здесь текущая точка, в которой надо вычислить значение многочлена, разделенные разности порядка k, которые вычисляются по следующим рекуррентным формулам:
Схема расчета многочлена Ньютона представлена на рис. 3.2.
Линейная (PNL) и квадратичная(PNS) интерполяция
Вычисления по интерполяционной формуле (3.6) для n > 3 используют редко. Обычно при интерполяции по заданной таблице из m>3 точек применяют квадратичную n=3 или линейную n=2 интерполяцию. В этом случае для приближенного вычисления значения функции f в точке x находят в таблице ближайший к этой точке i -узел из общей таблицы, строят интерполяционный многочлен Ньютона первой или второй степени по формулам
(3.7)
и за значение f(x) принимают (линейная интерполяция ) или (квадратичная интерполяция ). Схема расчета для линейной и квадратичной интерполяции приведена на рис. 3.3.
Интерполяционный многочлен Лагранжа (PL)
(3.8)
Многочлены выбраны так, что во всех узлах, кроме k -го, они обращаются в ноль, в k -м узле они равны единице:
Поэтому из выражения (3.8) видно, что.
Схема расчета интерполяционного многочлена Лагранжа представлена на рис. 3.4.
Интерполяция общего вида, использующая прямое решение системы (3.2) методом Гаусса (POG)
Следует отметить, что ввиду громоздкости многочлены Ньютона и Лагранжа уступают по эффективности расчета многочлену общего вида (3.3), если предварительно найдены коэффициенты.
Поэтому когда требуется производить много вычислений многочлена, построенного по одной таблице, оказывается выгодно вначале один раз найти коэффициенты и затем использовать формулу (3.3). Коэффициенты находят прямым решением системы (3.2) c матрицей (3.4), затем вычисляют его значения по экономно программируемой формуле (алгоритм Горнера)
. (3.9)
Схема расчета интерполяционного многочлена общего вида по формуле (3.9) с прямым решением системы (3.2) приведена на рис.3.5.
Интерполяция общего вида, использующая расчет коэффициентов многочлена (3.3) через многочлен Лагранжа (POL)
Находить коэффициенты многочлена (3.3) можно, не решая прямо систему (3.2), а используя разложение коэффициентов Лагранжа (3.8):
. (3.10)
Рекуррентные формулы для нахождения коэффициентов:
(3.11)
получаются из вида многочленов, если использовать очевидное представление
Схема алгоритма вычисления коэффициентов многочлена общего вида по формулам (3.10), (3.11) представлена на рис. 3.6.
3.4. Что такое среднеквадратичная аппроксимация?
Суть среднеквадратичной аппроксимации заключается в том, что параметры функции подбираются такими, чтобы обеспечить минимум квадрата расстояния между функциями f(x) и в пространстве (см. подразд. 1.3), т.е. из условия
. (3.12)
В случае линейной аппроксимации (3.1) задача (3.12) сводится к решению СЛАУ для нахождения необходимых коэффициентов:
(3.13)
Здесь скалярные произведения в L 2.
Матрица системы (3.13) симметричная, и ее следует решать методом квадратного корня.
Особенно просто эта задача решается, если выбрана ортогональная система функций , т.е. такая, что
Тогда матрица СЛАУ (3.13) диагональная и параметры находятся по формуле
В этом случае представление (3.1) называется обобщенным рядом Фурье , а называются коэффициентами Фурье .
Метод наименьших квадратов (МНК)
МНК является частным случаем среднеквадратичной аппроксимации. При использовании МНК в области значений x , представляющей некоторый интервал [ a, b ] , где функции f и должны быть близки, выбирают систему различных точек (узлов) x 1 , ..., x m , число которых обычно больше, чем количество искомых параметров, Далее, потребовав, чтобы сумма квадратов невязок во всех узлах была минимальна (рис. 3.7):
находим из этого условия параметры. В общем случае эта задача сложная и требует применения численных методов оптимизации. Однако в случае линейной аппроксимации (3.1), составляя условия минимума суммы квадратов невязок во всех точках (в точке минимума все частные производные должны быть равны нулю):
(3.14)
получаем систему n линейных уравнений относительно n неизвестных следующего вида:
Или. (3.15)
Здесь векторы-таблицы функ-ций. Элементы матрицы G и вектора в (3.15) определяются выражениями
скалярные произведения векторов.
Система (3.15) имеет симметричную матрицу G и решается методом квадратного корня.
При аппроксимации по МНК обычно применяют такие функции, которые используют особенности решаемой задачи и удобны для последующей обработки.
Схема расчета коэффициентов многочлена вида (3.3) по методу наименьших квадратов представлена на рис. 3.8.
Приведем пример аппроксимации по МНК. Предположим, что известна таблица значений f(x) : { x 1 = 1 , y 1 = 0.5 , x 2 = 2 , y 2 =1.2 , x 3 =3 , y 3 =0.8}, т.е. m =3. Требуется найти параметры аппроксимирующей функции вида, ( n =2).
Составляем сумму квадратов невязок
Условия минимума (3.1 4 ):
Приводя подобные члены, получим окончательно систему двух уравнений с симметричной матрицей относительно неизвестных c 1 и c 2 :
Решая ее, находим.
На рис. 3.9 приведена таблица функции f(x) и полученная по МНК функция (x ).
Порядок расчета по МНК следующий. Вначале по исходной таблице формируется матрица G и рассчитываются коэффициенты (см. рис. 3.8) (в качестве j k (x ) здесь берется функция x k - 1 ). Затем, используя полученные коэффициенты, рассчитывается значение функции в искомой точке (см. рис. 3.5, б).
3.5. Варианты заданий
Во всех вариантах (табл. 3.1.) требуется аппроксимировать заданную исходную функцию f(x) многочленом на интервале [ a, b ] . Задано количество неизвестных параметров n , вид аппроксимации и m количество точек, в которых задана функция. Таблица исходной функции y i = f (x i ) вычисляется в точках Используя полученную таблицу требуется вычислить значения функций и погрешность в точках, построить графики и проанализировать качество полученной аппроксимации.
Таблица 3 . 1
N вар. |
Функция f(x) |
Вид аппроксимации |
||||
МНК |
||||||
Ньютона PN |
||||||
Лагранжа PL |
||||||
Общего вида POG |
||||||
Общего вида POL |
||||||
Линейная PNL |
||||||
МНК |
||||||
Квадратичная PNS |
||||||
Ньютона PN |
||||||
Лагранжа PL |
||||||
Общего вида POG |
||||||
Общего вида POL |
||||||
МНК |
||||||
Квадратичная PNS |
||||||
Линейная PNL |
3.6. Контрольные вопросы
1. Как ставится задача линейной аппроксимации функций?
2. Что такое интерполяция, ее геометрическая интерпретация?
3. Напишите интерполяционный многочлен Ньютона 2-го порядка.
4. Напишите интерполяционный многочлен Лагранжа 2-го порядка.
5. Как осуществляется аппроксимация по методу наименьших квадратов и его геометрическая интерпретация?
6. Выведите СЛАУ относительно коэффициентов функции по МНК для таблицы.
PAGE 30
А также другие работы, которые могут Вас заинтересовать |
|||
33218. | Классификация режимов работы судового электрооборудования в зависимости от продолжительности рабочего цикла | 83.58 KB | |
Судовое электрооборудование будет работать надежно, если оно не только правильно сконструировано, но и правильно используется. СЭО используется правильно, если оно соответствует условиям работы судового механизма, устройства и т.п. | |||
33224. | Электромагнитные измерительные приборы | 13.15 KB | |
Магнитоэлектрический прибор измерительный прибор непосредственной оценки для измерения силы электрического тока напряжения или количества электричества в цепях постоянного тока Электри́ческая мо́щность физическая величина характеризующая скорость передачи или преобразования электрической энергии. Ток изменяющийся во времени по значению и направлению называется переменным. В практике применяют периодически изменяющийся по синусоидальному закону переменный ток. | |||
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ
ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
«ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»
(ФГБОУ ВПО «ВГТУ», ВГТУ)
Факультет радиотехники и электроники
Кафедра высшей математики и физико-математического моделирования
КУРСОВАЯ РАБОТА
по дисциплине: Математика
Тема: «Методы аппроксимации функций»
Разработал студент группы КП-121
И.С. Кононученко
Руководитель Кострюков С.А
ЗАДАНИЕ на курсовую работу
Тема: «Методы аппроксимации функций».
Студент группы КП-121 Кононученко Илья Сергеевич
1. Методы аппроксимации функций.
1.1. Непрерывная аппроксимация.
2. Точечная аппроксимация.
3. Интерполяционный полином Лагранжа.
4. Интерполяционный полином Ньютона.
5. Погрешность глобальной интерполяции.
6. Метод наименьших квадратов.
7. Подбор эмпирических формул.
8. Кусочно-постоянная интерполяция
9. Кусочно-линейная интерполяция.
2.1. Построить интерполяционный многочлен для функции f(x)=lnx- по узлам х=2; 4; 6; 8; 10; 12. Вычислить приближенное значение логарифма от 5,75. Получить оценку погрешности остаточного члена.
2.2. Функцию f(x), заданную таблицей, аппроксимировать линейной зависимостью ??(х)=Ах2+Вх+С. Найти х, для которого f(x)=10.
1. Методы аппроксимации функций
1.1 Непрерывная аппроксимация
1.2 Точечная аппроксимация
4 Интерполяционный полином Ньютона
8 Кусочно-постоянная интерполяция
9 Кусочно-линейная интерполяция
Практическая часть
2.1 Построить интерполяционный многочлен для функции f(x)=lnx-по узлам х=2; 4; 6; 8; 10; 12. Вычислить приближенное значение логарифма от 5,75. Получить оценку погрешности остаточного члена
2.2 Функцию f(x), заданную таблицей, аппроксимировать линейной зависимостью ?(х)=Ах+В, квадратичной зависимостью ?(х)=Ах2+Вх+С. Найти х, для которого f(x)=10
Список литературы
1.МЕТОДЫ АППРОКСИМАЦИИ ФУНКЦИЙ
1.1Непрерывная аппроксимация
Если исходная функция f(x) задана аналитическим выражением, то при построении аппроксимирующей функции возможно требовать минимальности отклонения одной функции от другой на некотором непрерывном множестве точек, например, на отрезке. Такой вид аппроксимации называется непрерывным или интегральным.
Теоретически для наилучшего приближения целесообразно требовать, чтобы во всех точках некоторого отрезка отклонения аппроксимирующей функции от функции f(x) было по абсолютной величине меньше заданной величины:
В этом случае говорят, что функция равномерно приближает функцию f(x) с точностью e на интервале. Практическое получение равномерного приближения представляет большие трудности, и поэтому этот способ применяется главным образом в теоретических исследованиях.
Наиболее употребительным является так называемое среднеквадратичное приближение, для которого наименьшее значение имеет величина
Потребовав обращения в нуль частных производных от М по параметрам, определяющим функцию, получают уравнения, позволяющие найти наилучшие значения этих параметров.
2 Точечная аппроксимация
Аппроксимация, при которой приближение строится на заданном дискретном множестве точек, называется точечной.
Для получения точечного среднеквадратичного приближения функции y=f(x), заданной таблично, аппроксимирующую функцию строят из условия минимума величины
где yi - значения функции f(x) в точках xi.
Основная сфера применения среднеквадратичного приближения - обработка экспериментальных данных (построение эмпирических формул).
Другим видом точечной аппроксимации является интерполирование, при котором аппроксимирующая функция принимает в заданных точках xi, те же значения yi , что и функция f(x), т.е. .
Рисунок 1
В этом случае, близость интерполирующей функции к заданной функции состоит в том, что их значения совпадают на заданной системе точек.
На рис. 1 показаны качественные графики интерполяционной функции (сплошная линия) и результаты среднеквадратичного приближения (пунктирная линия). Точками отмечены табличные значения функции f(x).
3 Интерполяционный полином Лагранжа
Лагранж предложил строить интерполяционный полином в виде разложения
где li(x) - базисные функции.
Для того, чтобы полином удовлетворял условиям Лагранжа, т.е. был бы интерполяционным, базисные функции li(x) должны обладать следующими свойствами:
) быть полином степени n
) удовлетворять условию
Лагранж показал, что функции, обладающие указанными свойствами, должны иметь следующий вид
С учетом этого выражения интерполяционный полином Лагранжа может быть записан в виде
В отличие от интерполяционного полинома в канонической форме для вычисления значений полинома Лагранжа не требуется предварительно определять коэффициенты полинома путем решения системы уравнений. Однако для каждого значения аргумента x полином Лагранжа приходится пересчитывать вновь, коэффициенты же канонического полинома вычисляются только один раз. Поэтому практическое применение полинома Лагранжа оправдано только в том случае, когда интерполяционная функция вычисляется в сравнительно небольшом количестве точек x.
Интерполяционный полином Лагранжа оказывается очень удобным для приближенного вычисления определенных интегралов. Если, например, некоторую функцию заменить интерполяционным полином Лагранжа, то определенный интеграл от нее может быть вычислен следующим образом
Значения интегралов от не зависят от f(x) и могут быть легко вычислены аналитически.
1.4 Интерполяционный полином Ньютона
Рассмотрим еще одну форму записи интерполяционного полинома
Требования совпадения значений полинома с заданными значения функции в узловых точках Ni(xi)=yi, i=0,1,…,n приводит к системе линейных уравнений с треугольной матрицей для неизвестных коэффициентов:
решить которую не составляет труда.
Интерполяционный полином называется полиномом Ньютона. Интересная особенность полинома Ньютона состоит в том, что каждая частичная сумма его первых (m+1) слагаемых представляет собой интерполяционный полином степени m, построенный по первым (m+1) табличным данным.
5 Погрешность глобальной интерполяции
Ошибка приближения функции f(x) интерполяционным полиномом n-й степени Ln(x) в точке x определяется разностью
Можно показать, что погрешность Rn(x) определяется следующим выражением
Здесь - производная (n+1) порядка функции f(x) в некоторой точке, а функция определена как
Если максимальное значение производной f (n+1)(x) равно
то для погрешности интерполяции следует оценка
Конкретная величина погрешности в точке x зависит, очевидно, от значения функции в этой точке. Качественный характер зависимости показан на рис. 2.
Рисунок 2
Вследствие описанного поведения погрешности, глобальная интерполяция в некоторых случаях может давать совершенно неудовлетворительный результат. Из рисунка видно, что погрешность интерполяции тем выше, чем ближе точка x лежит к концам отрезка. За пределами отрезка интерполяции (т.е. при экстраполяции) быстро растет, поэтому погрешность возрастает существенно.
1.6 Метод наименьших квадратов
Пусть для исходных данных xi, fi, i=1,…,N (нумерацию лучше начинать с единицы), выбран вид эмпирической зависимости: y=?(a0,a1,…,am) с неизвестными коэффициентами a0,a1,…,am . Запишем сумму квадратов отклонений между вычисленными по эмпирической формуле и заданными опытными данными:
S(a0,a1,…,am)=(?(x1,a0,a1,…,am)-fi)2
Параметры a0,a1,…,am будем находить из условия минимума функции S(a0,a1,…,am). В этом состоит метод наименьших квадратов (МНК).
Известно, что в точке минимума все частные производные от S по равны нулю:
Рассмотрим применение МНК для частного случая, широко используемого на практике. В качестве эмпирической функции рассмотрим полином
?(x)=a0+a1x+a2x2+…+amxm
Формула (1) для определения суммы квадратов отклонений примет вид:
S(a0,a1,…,am)=(a0+a1x+a2x2+…+amxm-fi)2 (2)
Вычислим производные
Приравнивая эти выражения к нулю и собирая коэффициенты при неизвестных a0,a1,…,am , получим следующую систему линейных уравнений
Данная система уравнений называется нормальной. Решая эту систему линейных уравнений, получаем коэффициенты.
В случае полинома первого порядка m=1, т.е. , система нормальных уравнений примет вид
При m=2 имеем:
Как правило, выбирают несколько эмпирических зависимостей. По МНК находят коэффициенты этих зависимостей и среди них находят наилучшую по минимальной сумме отклонений.
1.7 Подбор эмпирических формул
При интерполировании функций мы использовали условие равенства значений интерполяционного полинома и данной функции в узлах интерполяции. Если же исходные данные получены в результате опытных измерений, то требование точного совпадения не нужно, так как данные не получены точно. В этих случаях можно требовать лишь приближенного выполнения условий интерполяции. Это условие означает, что интерполирующая функция F(x) проходит не точно через заданные точки, а в некоторой их окрестности, так, например, как это показано на рис.
аппроксимация полином интерполяция формула
Рисунок 3
Тогда говорят о подборе эмпирических формул. Построение эмпирической формулы состоит из двух этапов подбора вида этой формулы, содержащей неизвестные параметры a0,a1,…,am, и определение наилучших в некотором смысле этих параметров. Вид формулы иногда известен из физических соображений (для упругой среды связь между напряжением и деформацией) или выбираются из геометрических соображений: экспериментальные точки наносятся на график и примерно угадывается общий вид зависимости путем сравнения полученной кривой с графиками известных функций. Успех здесь в значительной степени определяется опытом и интуицией исследователя.
Для практики важен случай аппроксимации функции многочленами, т.е. F(x)=a0+a1x+a2x2+…+amxm .
После того, как выбран вид эмпирической зависимости степень близости к эмпирическим данным определяется, используя минимум суммы квадратов отклонений вычисленных и экспериментальных данных.
1.8 Кусочно-постоянная интерполяция
На каждом отрезке интерполяционный многочлен равен константе, а именно левому или правому значению функции.
Для левой кусочно-линейной интерполяции
F(x)= fi-1, если xi-1 ?x Для правой кусочно-линейной интерполяции F(x)= fi-1, если xi-1 Легко понять, что условия интерполяция выполняются. Построенная функция является разрывной, что ограничивает ее применение. Для левой кусочно-линейной интерполяции имеем графическое представление Рисунок 4 1.9 Кусочно-линейная интерполяция На каждом интервале функция является линейной Fi(x)=kix+li. Значения коэффициентов находятся из выполнения условий интерполяции в концах отрезка: Fi(xi-1)=fi-1, Fi(xi-1)=fi . Получаем систему уравнений: kixi-1+ li= fi-1, kixi+ li= fi , откуда находим ki=li= fi- kixi . Следовательно, функцию F(x) можно записать в виде: F(x)= x+ fi- kixi , если, т.е. Или F(x)=ki ·(x-xi-1)+fi-1, ki = (fi - fi-1) / (xi - xi-1), xi-1 ? x ? xi, i=1,2,...,N-1 При использовании линейной интерполяции сначала нужно определить интервал, в который попадает значение x, а затем подставить его в формулу. Итоговая функция будет непрерывной, но производная будет разрывной в каждом узле интерполяции. Погрешность такой интерполяции будет меньше, чем в случае кусочно-постоянной интерполяции. Иллюстрация кусочно-линейной интерполяции приведена на рисунке Рисунок 5 2. ПРАКТИЧЕСКАЯ ЧАСТЬ 2.1 Построим интерполяционный многочлен для функции f(x)=lnx- по узлам х=2; 4; 6; 8; 10; 12. Формула для вычисления данного многочлена выглядит следующим образом: где n- количество узлов. Рассчитаем значения базисных полиномов. Формула для расчета базисных полиномов: Запишем значения узлов функции: Вычислим значения функций f(x) в соответствующих узлах: f(x0)==0.6931471805599453-1.5=-0.8068528194400547(x1)= =1.386294361119891-1.25=0.136294361119891(x2)= =1.791759469228055-1.1666666666666667=0.625092802561388(x3)= =2,079441541679835-1.125=0.954441541679835(x4)= =2.302585092994045-1.1=1.202585092994045(x5)= =2.484906649788-1.083333333333333=1.401573316454667 Рассчитаем значения соответствующих базисных полиномов: Запишем формулу вычисления многочлена f(x)=lnx- по полученным данным: L(x)=f(x0)·l0(x)+ f(x1)·l1(x)+ f(x2)·l2(x)+ f(x3)·l3(x)+ f(x4)·l4(x)+ f(x5)·l5(x). Подставим в формулу полученные значения: L(x)=((- 0.8068528194400547) ·(x-4)(x-6)(x-8)(x-10)(x-12)+ +0.136294361119891·5(x-2)(x-6)(x-8)(x-10)(x-12)- 0.625092802561388·10· · (x-2)(x-4)(x-8)(x-10)(x-12)+ 0.954441541679835·10(x-2)(x-4)(x-6)(x-10)(x-12)-1.202585092994045·5(x-2)(x-4)(x-6)(x-8)(x-12)+ 1.401573316454667· ·(x-2)(x-4)(x-6)(x-8)(x-10)=0,000443792912875·x5-0.001895922201567·x4+ 032520620421826·x3-0.289410042490318·x2+1.50294940468648·x-2.886362165898854 Рисунок 6 L(x)= 0.000443792912875·x5-0.001895922201567·x4+ 032520620421826·x3-0.289410042490318·x2+ 50294940468648·x-2.886362165898854 Из рисунка видно, что графики функций совпадают. Вычислим приближенное значение логарифма от 5,75 с точностью до 0,001. Воспользуемся разложением Пользуясь формулой посчитаем приближенное значение логарифма: Получим оценку погрешности остаточного члена: Формула нахождения остаточного члена в других точках: Rn(x)=f(x)-Ln(x). Подставим значения и вычислим остаточный член: Rn(x)= -0.234721044665224-(-0.149875603361276)= 0.0122 Для абсолютной погрешности интерполяционной формулы Лагранжа можно получить следующую оценку: 0122374?9.9512361 Из оценки следует, что выбирая достаточно большое число точек разбиения можно получить результат с необходимой точностью. Функцию f(x), заданную таблицей аппроксимируем линейной зависимостью ?(х)=Ах+В, квадратичной зависимостью ?(х)=Ах2+Вх+С.
x10151720f(x)371117Решение:
Для решения этой задачи воспользуемся методом наименьших квадратов. Система нормальных уравнений для линейной зависимости (x)=Ax+B: Учитывая, что n=4: ; Решаем систему линейных уравнений: Следовательно, линейная зависимость будет иметь вид: Рассмотрим квадратичную зависимость?(х)=Ах2+Вх+С. Система нормальных уравнений имеет вид: Найдем не подсчитанные суммы: Следовательно, квадратичная зависимость будет иметь вид: Рисунок 7 Функция, заданная таблицей. Линейная зависимость Квадратичная зависимость По графику найдем значение х, для которого f(x)=10. Список литературы 1. Кириллова С.Ю. Вычислительная математика/Кириллова С.Ю. Изд-во Владим. гос. ун-та, 2009. -102с. 2. Справочное пособие по приближенным методам решения задач высшей математики/ Л.И. Бородич, А.И. Герасимович, Н.П. Кеда и др.; под ред. Л.И. Бородич.- М.: Высшая школа, 1986. -189с. 3. Тюканов, А.С. Основы численных методов: учеб. пособие для студентов. Изд-во РГПУ им. А.И. Герцена, 2007. -226с. Нужна помощь по изучению какой-либы темы?
Наши специалисты проконсультируют или окажут репетиторские услуги по интересующей вас тематике.Репетиторство
Отправь заявку
с указанием темы прямо сейчас, чтобы узнать о возможности получения консультации.