Когда данные зашумлены т е полны случайных ошибок тогда аппроксимация данных простой функцией

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

Линейная аппроксимация комбинации линий по набору зашумленных точек

Reading time
3 min

Views 6.9K

Постановка задачи

Рассмотрим задачу аппроксимации комбинации прямых линий по набору зашумленных координат точек, находящихся на данной комбинации линий (см. Рис. 1 и Рис. 2). Обычная формула линейной аппроксимации здесь не подойдет, так как точки перемешаны и результат будет некая усредненная линия между ними (см. Рис. 3).

Рис. 1 Комбинация линий и зашумленный набор координат

Рис. 2 Комбинация линий и зашумленный набор координат в увеличенном масштабе

Рис. 3 Результат линейной аппроксимации

Алгоритм

Единственный способ, который пришел в голову, это перебирать разные варианты линий. Т.е. перебираем все возможные углы, естественно на ограниченной сетке, от -90 градусов до +90 градусов (от -180 до 180 бессмысленно, т.к. линия симметрична относительно центра координат).

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

Для нахождения следующей линии, из рассмотрения убираются точки, использованные на предыдущем этапе. Таким образом, линия за линией, аппроксимируем все линии.

1. Набор рассматриваемых углов

На данном этапе необходимо разобраться какой набор углов будет перебираться. Зная особенности конкретной задачи можно подкорректировать данный набор углов, тем самым ускорив процесс детектирования линий. Так же можно учесть особенности угла наклона между линиями, то есть на каждом следующем шаге сужать диапазон перебираемых углов. В данной задаче будем использовать в лоб равномерный набор углов от -90 до 90 градусов с шагом 0.1 градуса.

2. Определение расстояния от точки до прямой

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

Пусть уравнение линии и координаты точки, расстояние от которой измеряем, принимают следующие обозначения:

$y = kx + b, x_p, y_p$

Тогда, так как кратчайшее расстояние от точки до линии это перпендикуляр к этой линии, получаем уравнение перпендикуляра, проходящего через заданную точку следующего вида:

$y-y_p=-(x-x_p)/k =>y= -x/k+ x_p/k+y_p$

Тогда, точка пересечения этих двух прямых:

$-x/k+ x_p/k+y_p=kx+b => -x+ x_p+ky_p= k^2 x+bk$

$-bk+ x_p+ky_p= k^2 x+x => x= (x_p+ky_p-bk)/(k^2+1)$

$y= k (x_p+ky_p-bk)/(k^2+1)+b= (〖kx〗_p+k^2 y_p-bk^2+bk^2+b)/(k^2+1)=(〖kx〗_p+k^2 y_p+b)/(k^2+1)$

Получаем расстояние от интересующей точки до точки пересечения:

$dist= √((x_p- (x_p+ky_p-bk)/(k^2+1))^2+(y_p- (〖kx〗_p+k^2 y_p+b)/(k^2+1))^2 )$

3. Построение гистограммы расстояний

Если мы построим просто гистограмму расстояний, она будет малоинформативной, поэтому нам необходимо построить гистограмму по скользящему окну, таким образом она будет более плавной и результат мы получим с меньшей ошибкой (см. Рис. 4-6).

По построенной гистограмме определяем расстояние с максимальным количеством точек. По полученному набору максимального количества точек для каждого угла, строим зависимость количества точек и угла наклона линии (см. Рис. 7, 8). На Рис. 7 видно четких два пика, данные пики и есть углы наклона интересующих нас линий.

Рис. 4 Гистограмма расстояний (ошибочная линия)

Рис. 5 Гистограмма расстояний (правильная линия)

Рис. 6 Увеличенная гистограмма расстояний (правильная линия)

Рис. 7 Гистограмма распределения максимального количества равноудаленных точек в зависимости от угла наклона рассматриваемой линии (Шаг 1)

Рис. 8 Гистограмма распределения максимального количества равноудаленных точек в зависимости от угла наклона рассматриваемой линии (Шаг 2)

4. Построение линейной аппроксимации

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

$k= (N∑_1^N(xy)- ∑_1^Nx ∑_1^Ny)/(N∑_1^Nx^2 - (∑_1^Nx)^2 ); b =(∑_1^Ny-k∑_1^Nx)/N$

Рис. 9 Результат аппроксимации первой линии

Рис. 10 Результат аппроксимации второй линии

Примеры использования

Приведем примеры распознавания линий на произвольных наборах точек (см. Рис 11-13).

Рис. 11 Результат работы на произвольной выборке точек

Рис. 12 Результат работы на произвольной выборке точек

Рис. 13 Результат работы на произвольной выборке точек

Вывод

С помощью приведенного алгоритма можно детектировать прямые линии с относительно высокой скоростью и определять их параметры (наклон и смещение). Количество линий при этом может быть неограниченное количество.

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

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

Линейная аппроксимация комбинации линий по набору зашумленных точек

Постановка задачи

Рассмотрим задачу аппроксимации комбинации прямых линий по набору зашумленных координат точек, находящихся на данной комбинации линий (см. Рис. 1 и Рис. 2). Обычная формула линейной аппроксимации здесь не подойдет, так как точки перемешаны и результат будет некая усредненная линия между ними (см. Рис. 3).

Рис. 1 Комбинация линий и зашумленный набор координат

Рис. 2 Комбинация линий и зашумленный набор координат в увеличенном масштабе

Рис. 3 Результат линейной аппроксимации

Алгоритм

Единственный способ, который пришел в голову, это перебирать разные варианты линий. Т.е. перебираем все возможные углы, естественно на ограниченной сетке, от -90 градусов до +90 градусов (от -180 до 180 бессмысленно, т.к. линия симметрична относительно центра координат).

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

Для нахождения следующей линии, из рассмотрения убираются точки, использованные на предыдущем этапе. Таким образом, линия за линией, аппроксимируем все линии.

1. Набор рассматриваемых углов

На данном этапе необходимо разобраться какой набор углов будет перебираться. Зная особенности конкретной задачи можно подкорректировать данный набор углов, тем самым ускорив процесс детектирования линий. Так же можно учесть особенности угла наклона между линиями, то есть на каждом следующем шаге сужать диапазон перебираемых углов. В данной задаче будем использовать в лоб равномерный набор углов от -90 до 90 градусов с шагом 0.1 градуса.

2. Определение расстояния от точки до прямой

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

Пусть уравнение линии и координаты точки, расстояние от которой измеряем, принимают следующие обозначения:

$y = kx + b, x_p, y_p$

Тогда, так как кратчайшее расстояние от точки до линии это перпендикуляр к этой линии, получаем уравнение перпендикуляра, проходящего через заданную точку следующего вида:

$y-y_p=-(x-x_p)/k =>y= -x/k+ x_p/k+y_p$

Тогда, точка пересечения этих двух прямых:

$-x/k+ x_p/k+y_p=kx+b => -x+ x_p+ky_p= k^2 x+bk$

$-bk+ x_p+ky_p= k^2 x+x => x= (x_p+ky_p-bk)/(k^2+1)$

$y= k (x_p+ky_p-bk)/(k^2+1)+b= (〖kx〗_p+k^2 y_p-bk^2+bk^2+b)/(k^2+1)=(〖kx〗_p+k^2 y_p+b)/(k^2+1)$

Получаем расстояние от интересующей точки до точки пересечения:

$dist= √((x_p- (x_p+ky_p-bk)/(k^2+1))^2+(y_p- (〖kx〗_p+k^2 y_p+b)/(k^2+1))^2 )$

3. Построение гистограммы расстояний

Если мы построим просто гистограмму расстояний, она будет малоинформативной, поэтому нам необходимо построить гистограмму по скользящему окну, таким образом она будет более плавной и результат мы получим с меньшей ошибкой (см. Рис. 4-6).

По построенной гистограмме определяем расстояние с максимальным количеством точек. По полученному набору максимального количества точек для каждого угла, строим зависимость количества точек и угла наклона линии (см. Рис. 7, 8). На Рис. 7 видно четких два пика, данные пики и есть углы наклона интересующих нас линий.

Рис. 4 Гистограмма расстояний (ошибочная линия)

Рис. 5 Гистограмма расстояний (правильная линия)

Рис. 6 Увеличенная гистограмма расстояний (правильная линия)

Рис. 7 Гистограмма распределения максимального количества равноудаленных точек в зависимости от угла наклона рассматриваемой линии (Шаг 1)

Рис. 8 Гистограмма распределения максимального количества равноудаленных точек в зависимости от угла наклона рассматриваемой линии (Шаг 2)

4. Построение линейной аппроксимации

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

$k= (N∑_1^N(xy)- ∑_1^Nx ∑_1^Ny)/(N∑_1^Nx^2 - (∑_1^Nx)^2 ); b =(∑_1^Ny-k∑_1^Nx)/N$

Рис. 9 Результат аппроксимации первой линии

Рис. 10 Результат аппроксимации второй линии

Примеры использования

Приведем примеры распознавания линий на произвольных наборах точек (см. Рис 11-13).

Рис. 11 Результат работы на произвольной выборке точек

Рис. 12 Результат работы на произвольной выборке точек

Рис. 13 Результат работы на произвольной выборке точек

Вывод

С помощью приведенного алгоритма можно детектировать прямые линии с относительно высокой скоростью и определять их параметры (наклон и смещение). Количество линий при этом может быть неограниченное количество.

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

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

Мо1ег, 8. 1)ахи С «Хцтег1са1 МейосЬ апс1 дойч аге’» С Ргеп1г:е-На11, 1988 С С Версия для вещественной арифметики одинарной точности. С С С С С С С С С А — КЕА1 С Нижний предел интегрирования. С В КЕА1. С Верхний предел интегрирования С Выходные параметры: С КЕБ1’1 Т вЂ” КЕА1 С Приближение к ингегралу 1. С Вычисляется с помощью 15-ТОЧЕ Ч НОГО П РАВИС ЛА КРОНРОДА 1КЕЯК), полученного оптимальным С добавлением абсцисс к 7-ТОЧЕЧНОМУ ПРАВИЛУ С ГАУССА (КЕМ). С С С С С С КЕВАВБ -КЕАЕ С Приближение к интегралу 3. С КЕ8АЯС вЂ” К ЕА1. С Приближение к интегралу для АВ8(Š— 1,/( — А)). С*»» ССЫЛКИ. Р1ЕББЕХ8 К ЕТ А1 111))АОРАСК- А 81 ВКОСЬ!Т11~Е С РАСКАС~Е РОК АЬТОМАТ1С 1ХТЕ(лКАТ1ОЧ~, С 8РК11~ОЕК, ВЕК1.1М, 1983 С ВЫЗЫВАЕМЫЕ ПОДПРОГРАММЫ: К1МАСН I’лава 5 КОНЕЦ ПРОЛОГА () К! 5 8(1ВКО()Т!ХЕ 9!Г)А(А,В,ЕРБ,К.Е,КЕ,!Н АО) НАЧАЛО ПРОЛОГА 010А Из книги: Р.

КаЬапег, С. Мо1сг, 8. Хачим «о!шпет(са! Ме!!1ойв апс! 8ойъагс» Ргспг(се-На!1, 1988 Описание параметров: А В ЕР8 (на входе) пределы интегрирования. (на входе) допустимая погрешность вычисления интеграла. чтобы получить точность до двух знаков, задайтс ЕРВ = .01, до трех знаков- ЕР8 = .001 и т.д. значение ЕР8 должно быть положительным, К (на выходе) наиболее точное из вычисленных программой 11!ПА значений вашего интеграла. Е (на выходе) оценка АВБ (интеграл — К). КЕ (на выходе) мера трудоемкости: количество вычислений вашей подынтегральной функции. КЕ всегда ке меньше ЗО.

1ЕЕА(з (на выходе) признак ошибки. Принимает значения: 0 Нормальное завершение, выполняются неравенсгва Е < ЕРВ и Е < ЕР8 е АВЯ(К). 1 Нормальное завершение, выполняются неравенства Е < ЕРБ, но Е > ЕР8~ АВБ(К). 2 Нормальное завершение, выполняются неравенства Е < ЕРБ ~ АВ8(К), но Е > ЕР8. 3 Нормальное завершение„но значение ЕР8 задано слишком малым, чтобы можно было удовлетворить требованиям абсолютной или относительной ДАТА НАПИСАНИЯ 821018 (ГГММДД) ДАТА ПЕРЕСМОТРА 870525 (ГГММДД) КАТЕГОРИЯ МО. Н2А1А1 КЛЮЧЕВЫЕ СЛОВА: адаптивная квадратура, автоматическая квадратура АВТОР: КАНА!ЧЕК О. К., 8С1ЕХТ1Г1С СОМР()Т1МСг Р1’Л81ОХ, ХВ8. НАЗНАЧЕНИЕ: 91ЭА находит приближение к одномерному интегралу для заданной пользователем подынтег ральной функции (простая в использовании программа).

ОПИСАНИЕ О10А вычисляет определенный интеграл для заданной пользователем функции одной переменной. с С с С С С С с с с с С С с с с с С с с с с С С с С С с с с С с С с с с с С С С с С С С с с Замечание. Если 1Г1.А(3 = 3, 4, 5 или 6, попробуйте вместо (~1РА воспользоваться Я11УАХ. Вы должны написать фортранную подпрограмму-функцию с именем Г, вычисляющую подынтегральную функцию. Обычно она выглядит так: ГГЧСТ1ОМ Г(Х) Е-(вычисление подынтегральной функции в точке Х) КЕТ1)КХ ЕМЭ погрешности.

4 Вычисления не завершены из-за больших ошибок округления. По-видимому, Е и К не далеки от истинных. 5 Вычисления не завершены из-за нехватки памяти. К и Е не далеки от истинных. 6 Вычисления не завершены из-за трудностей, вызванных слишком жесткими требованиями к погрешности. 7 Вычисления не завершены из-за того, что значение ЕРЯ задано с =0.0.

ИЛЛЮСТРИРУЮЩАЯ ПРОГРАММА А=00 В = 1.0 (ЗАДАНИЕ КОНЦОВ ОТРЕЗКА ИНТЕГРИРОВАНИЯ 10, Ц) ЕРЯ = 0.001 (ЗАДАНИЕ ДОПУСТИМОЙ ПОГРЕШНОСТИ) СА1.1. (~11УА (А,В,ЕРБ,К,Е,КЕ,1Г1 АС) ЕХ1:У Н1ХСТ1ОМ Г(Х) Е = 511’1(2.* Х) — Я 1КТ(Х) (НАПРИМЕР) КЕТ1)КХ Е1М1У ВЫХОДНЫЕ ДАННЫЕ ДЛЯ ЭТОГО ПРИМЕРА 0.0 1.0 .001 .041406750 .69077Š— 07 30 0 Замечание 1. Программа содержит небольшой элемент случайности. При нескольких последовательных обращениях к ней с одними и с С С с с с с С с с с с с с с с С с с С с с с с с с с С с с С С с с с с с с теми же входными параметрами результаты окажутся разными, по, как правило, близкими дру~ к другу.

Замечание 2. Программа предназначена для интегрирования по конечному отрезку. Поэтому входные параметры А и В должны быть вещественными числами из диапазона„который допустим на вашем компьютере. Если требуется произвести интегрирование по бесконечному отрезку, то задайте А или В или оба этих параметра такими, чтобы интеграл по отрезку [А, В) почти не отличался от интеграла по бесконечному отрезку. Здесь, однако, необходима осторожность. Например, чтобы проинтегрировать ЕХР( — Х*Х) по вещественной прямой, можно положить А = — 20., В = 20. или присвоить этим параметрам сходные значения, которые обеспечат хороший результат, Если вы выберете А = — 1.Е10 и В = + 1,Е10, то вы столкнетесь с двумя неприятными явлениями.

Во-первых, вы обязательно получите сообщение об ошибке из программы ЕХР, так как обращаться к ней придется при слишком малых значениях аргумента. Возможны и другие неприятности, например, произойдет исчезновение порядка. Во-вторых„даже если арифметика будет работать должным образом, О1РА, скорее всего, выдаст неверный результат, потому что по сравнению со столь большим отрезком интегрирования отрезок ( — 20., 201. который вносит основной вклад в значение интеграла.

почти «бесконечно мал», и вряд ли точки, в которых будет вычисляться подынтегральная функция, попадут в этот отрезок. Более гибкая программа О1РА представляет собой простой в использовании драйвер для другой программы (~1РАХ. (~1РАХ обладает по сравнению с О1РА дополнительными возможностями. Ссылки: нет ВЫЗЫВАЕМЫЕ ПОДПРОГРАММЫ: 01РАХ КОНЕЦ ПРОЛОГА Я1РА КЕА1 ЕСХСТ10)Х1 РСН(;1А(М.Х,Г,Р,А,В,1Е1хК) НАЧАЛО ПРОЛОГА РСНЯА ДАТА НАГ1ИСАНИЯ 870829 (ГГММДД) ДАТА ПЕРЕСМОТРА 870829 (ГГММДД) КАТЕГОРИЯ ХО. ЕЗ,Н2А2 КЛЮЧЕВЫЕ СЛОВА: простое в использовании эрмитово кубическое или сплайн-интегрирование, численное интегрирование, квадратура С*** АВТОР: КАНАХЕК 1Э К„(ХВК) С С С С С С*** НАЗНАЧЕНИЕ: РСНЯА вычисляет определенный интеграл для С кусочно-полиномиальной эрмитовой кубической С функции или сплайна по произвольному отрезку С (простая в использовании программа).

С*~* ОПИСАНИЕ 1ХТЕОЕК Х, 1ЕКК КЕА1. Х(Х), Г(Х), ЩХ), А, В С С С С С С С С С С С С С С С С С С С С С С С С С С С С С С С С С С С ЯС1ЕХТ1Г1С СОМР1)Т1ХС~ Е)171ЯОХ ХАТ10ХА1. ВБКЕАБ ОГ ЯТАХОАКОЯ КООМ А161, ТЕСНХО(.ОСУ ВШ1.ШХО ОА1ТНЕКЯВ1)КСх, МАКУ1 АМЭ, 20899 (301) 975-3808 РСНЯА: Кусочно-полиномиальное эрмитово ‘ кубическое или сплайн-интегрирование, произвольные пределы интегрирования, простота в использовании. Из книги: Р. КаЬапег, С, Мо1ег, Б.

Хаий «Хшпег)са1 МейосЬ апй Бочаге» Ргеп6се-На11, 1988 РСНЯА вычисляет по отрезку 1А, В1 определенный интеграл для кусочно-полиномиальной эрмитовой кубической функции или сплайна, заданных параметрами Х, Х, Г, В. Представляет собой простой в использовании драйвер для программы РСН1А Ф.Н. Фритча, описание которой приведено в указанной ниже работе (2). Программа обладает также другими возможностями, Обращение к подпрограмме: Ъ’А1Л.!Е = РСНЯА (Х, Х, Г, Р, А, В, 1ЕКК) Описание параметров: ЧАВ)Е-(на выходе) ЗНАЧЕНИЕ интеграла. — (на входе) число заданных точек.

(Сообщение об ошибке, если Х.1 Т.2.) -(на входе) вещественный массив значений независимой переменной. Элементы массива Х должны быть заданы в строго возрастающем порядке: Х(1 — 1) .1-Т. Х(1), 1 = 2(1) Х. (Сообщение об ошибке в противном случае.) 1ЕКК С*** ССЫЛКИ: 1. Г.Х. ГК1ТБСН, К,Е. САКЬБОХ, МОХОТОХЕ С С С С С С С С С КОНЕЦ ПРОЛОГА РСНЯА С С с С С с с с с С С С с С с С с С С С с С с с С с С с С С С С С С С с à — (на входе) вещественный массив значений функции.

Значение Г(1) соответствует Х(1). Π— (на входе) вещественный массив значений производной, Значение О(1) соответствует Х(1). А, В -(на входе) пределы интегрирования. Замечание. Здесь не требуется, чтобы отрезок (А, В) принадлежал отрезку (Х(1), Х(ХЦ. Однако если это не так, к результату нужно относиться с большой долей недоверия, — (на выходе) признак ошибки.

Нормальный выход: 1ЕКК = 0 (нет ошибок). Предупреждения: 1ЕКК = 1, если А не принадлежит отрезку (Х(1), Х(ХЦ. 1ЕКК = 2, если В не принадлежит отрезку (Х(1), Х(Х)1. 1ЕКК = 3, если выполняются оба вышеуказанных условия. (Отсюда следует, что либо отрезок [А, В | содержит отрезок (Х(1), Х(Х)3, либо эти отрезки не пересекаются.) Устранимые ошибки: 1ЕКК = — 1, если Х,ЬТ,2. 1ЕКК = — 3, если элементы массива Х заданы не в строго возрастающем порядке.

(В каждом из этих случаев интеграл не вычисляется.) Замечание, Проверка параметров осуществляется в указанном выше порядке; при обнаружении ошибки остальные параметры не проверяются. Р1ЕСЕ%1$Е С11В1С 1ХТЕКРО1.АТ1ОХ, $1АМ Я. ХБМЕК, АХА1.

17, 2 (АРК11. 1980), 238 — 24б 2. Г. Х. ГК1ТБСН, Р1ЕСЕ%1БЕ СБВ1С НЕКМ1ТЕ 1ХТЕКРОЬАТ1ОХ РАСКАБЕ, Г|ХАЬ ЯРЕС1. Г|САТ10ХБ, 1 АЮКЕХСЕ Ь|УЕКМОКЕ ХАТ1ОХА1. ЬАВОКАТОКЪ’, СОМРЬ1ТЕК РОС(3 МЕХТАТ1ОХ 13С11)-30194, А|АСЯТ 1982 ВЫЗЫВАЕМЫЕ ПОДПРОГРАММЫ: РСН1А Глава 6 Аппроксимация данных методом наименьших квадратов б.1. Введение Рассмотрим следующий эксперимент: воду прогоняют сквозь контейнер, в который добавлено некоторое количество краски. Через каждые несколько секунд измеряется концентрация ° краски в воде, вытекающей из контейнера.

Ожидается, что концентрация краски будет линейно уменьшаться со временем. Результаты измерений показаны на рис. б.!. Заметим, что точки данных не лежат на прямой линии. Это не так уж неожиданно. Измерительные приборы могут быть не совсем точными, может оказаться невозможным точно интерпретировать измерения, а смешивание может происходить не совсем так, как предсказано. Чтобы определить скорость, с которой убывает концентрация, экспериментатору следовало бы аппроксимировать данные прямой линией, которая в некотором смысле «наилучшим образом» аппроксимирует данные. На рис. б.! вычерчена одна из таких аппроксимаций. Ситуации такого типа встречаются весьма часто. Одна из причин, по которой требуется знать скорость смешивания, заключается в том, что 7.0 6.5 6.0 5.5 5.0 45 4,0 3.5 3.0 2.5 2.0 1.5 1.0 0.5 0 0 1 2 3 4 5 6 7 8 8 10 !1 12 13 Рис.

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

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

Если информации
о моделируемом объекте (процессе)
недостаточно или он настолько сложен
(имеет случайный характер), что невозможно
составить его детерминированную модель,
используют стохастические модели и
соответствующие экспериментально-статистические
методы.

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

Простейшим
случаем интерполяции является определение
вида функции f(x)
одной переменной, проходящей через
заданные точки (xi,
yi),
т.е. f(xi)=yi
,
i=1,…,N
(рис.19а).


y
y


x

x

а) б)

Рис.
19. Виды аппроксимации

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

1)
данные (xi,
yi)
сами по себе не могут определить
интерполянт, и для фиксированного набора
данных существует бесконечное множество
интерполянтов;

2)
интерполяция может быть полезна только
в том случае, если данные не содержат
ошибок, если же, например, yi
содержит погрешности, данные необходимо
аппроксимировать как-то по-другому.

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

В общем случае
задача аппроксимации данных решается
для нелинейной функции многих переменных.

Так
как в реальном процессе всегда существуют
неуправляемые и неконтролируемые
переменные, результат эксперимента
есть случайная величина. Пусть, например,
требуется исследовать зависимость
y(x1,
x2,…xm),
причем величины y
и Х={x1,
x2,…xm}
измеряются в одних и тех же экспериментах.
Будем считать, что погрешность измерения
величин xj
пренебрежимо мала по сравнению с
погрешностью измерения величины y,
т.е. величины xj
измеряются точно, в то время как измерение
величины y
содержит случайные погрешности. Таким
образом, результаты эксперимента можно
рассматривать как выборочные значения
случайной величины (X),
зависящей от X
, как от параметра.

Регрессией
называют зависимость

условного математического ожидания
величины (X)
от переменной X
, т.е.
.
Задача регрессионного анализа состоит
в этом случае в восстановлении
функциональной зависимости

по результатам измерений (Xi,
yi),
i=1,2,…,
N.
Аппроксимируем неизвестную зависимость

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


неизвестные параметры регрессии, i

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

как оценок теоретических (0=f(X0),
1=
f(X0)/
x1,…)
уравнение регрессии можно записать в
следующем общем виде [8]

,
(86)

где
b0
– свободный член уравнения регрессии;
bj
– линейные эффекты; bjj

квадратичные эффекты; bjk
— эффекты взаимодействия.

Коэффициенты
уравнения (86) определяются методом
наименьших квадратов из условия

,
(87)

где
N
– объем выборки.

Необходимым
условием минимума

является равенство нулю соответствующих
частных производных
,
,…
Тогда после преобразования получим

.
(88)

Система
(88) содержит столько же уравнений, сколько
неизвестных коэффициентов

входит в уравнение регрессии и называется
в математической статистике системой
нормальных уравнений
.
Для решения системы (52) необходимо задать
конкретный вид функции
.

Линейная
регрессия одного параметра.

Определим по методу наименьших квадратов
коэффициенты линейного уравнения
.
Тогда с учетом

и

для системы (3) можно записать

или
.
(89)

Решая
данную систему относительно

и
,
получим при помощи определителей
следующие выражения:

, .

Коэффициент

проще найти по известному

из первого уравнения системы (53)

, где


средние значения x
и y
().

Для
оценки силы линейной связи вычисляется
выборочный коэффициент корреляции r*

.
(89)

Чем
ближе r*
к единице, тем выше линейность зависимости
между x
и y.

Параболическая
регрессия одного параметра

определяется коэффициентами параболического
уравнения
.
Тогда для параболы второго порядка
система
нормальных уравнений (88) имеет вид


(90)

Аналогично
могут быть определены коэффициенты

для параболы любого порядка.

Трансцендентная
регрессия одного параметра

определяется коэффициентами уравнений
показательного
,
дробно-степенного типа

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

Пусть


и

Пусть


и

Коэффициенты

или

определяются методом наименьших
квадратов, значения которых используются
для нахождения
.

Для
оценки силы (тесноты) нелинейной связи
(проведения корреляционного
анализа
)
вычисляется корреляционное
отношение

,
(91)

где
f1=N1,
f2=Nl
– числа степеней свободы; l
– число связей, наложенных на выборку
(для уравнения регрессии это число
определяемых коэффициентов);


остаточная дисперсия;

— дисперсия относительно среднего.

Чем
больше ,
тем сильнее связь (01).
При =0
однозначное отсутствие связи между
случайными величинами возможно только
для нормального распределения. В случае
линейной регрессии (l=2)
корреляционное отношение равно
коэффициенту корреляции =|r*
|.

Множественная
регрессия

предполагает определение коэффициентов
(исследование корреляционной связи)
для многофакторного уравнения. Например,
для линейного случая уравнение
множественной регрессии имеет вид
.
Здесь, следовательно, требуется определить
не линию регрессии, а поверхность (m=2)
или гиперповерхность (m>2).

Статистический
анализ результатов (
регрессионный
анализ
)
проводится после определения уравнения
регрессии и включает: оценку адекватности
уравнения; проверку значимости всех
коэффициентов

в сравнении с ошибкой воспроизводимости;
расчет доверительных интервалов для
параметров модели

и выходной переменной
.

При
отсутствии параллельных опытов и,
следовательно, дисперсии воспроизводимости,
а также нормальном распределении
случайных величин yi
качество аппроксимации (адекватность)
можно оценить по критерию
Фишера


[4]. В данном случае он показывает, во
сколько раз уменьшается рассеяние
относительно полученного уравнения
регрессии по сравнению с рассеянием
относительно среднего. Чем больше
значение F
превышает табличное

для выбранного уровня вероятности
(значимости, надежности) p
(обычно
p=0.95)
и чисел
,
тем эффективнее уравнение регрессии.

При
одинаковом числе параллельных опытов
(каждый i
опыт с объемом выборки N
()
проводится U
раз
)
выборочные дисперсии

должны быть однородны. Последнее
выполняется если справедливо условие
Gmax<GpТАБ(N,U-1),
где GpТАБ(N,U1)
– табличное значение критерия
Кохнера

при уровне значимости p;

;



максимальное значение выборочной
дисперсии. Для однородных выборочных
дисперсий рассчитываются дисперсия
воспроизводимости

и дисперсия адекватности
,
которые необходимы для определения
критерия Фишера
.
Если расчетное значение меньше табличного
,
то уравнение адекватно.

Оценка
значимости коэффициентов уравнения
регрессии проводится по критерию
Стьюдента

,
где


h
коэффициент уравнения;


среднее квадратичное отклонение h-го
коэффициента. Если

больше табличного

для выбранного уровня значимости p
и степени свободы f=N(U–1),
то коэффициент

значимо отличается от нуля. Незначимые
коэффициенты из уравнения исключаются
с последующим пересчетом оставшихся.
Чтобы не проводить повторных расчетов
модели, при отбрасывании (включении)
отдельных факторов применяют регрессионные
уравнения в форме ортогональных полиномов
(ортогональные многочлены Чебышева)
[4, 8]. Для уравнения регрессии

, .

Определив

и табличные значения величины t
корня уравнения FN-2()=1–0.5,
функции распределения Стьюдента (t
– распределение) с N-2
степенями свободы можно найти доверительные
интервалы параметров модели

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

получим

для
параметров

и
:

,

,

где
0,
1

половина ширины доверительного интервала
для

и
;

для
определения концов доверительных
интервалов (доверительной полосы или
коридора) выходной переменной

при каждом конкретном значении

(доказано, что доверительный интервал
накрывает истинное значение

с вероятностью 1-):

;

для
определения доверительной области всей
линии регрессии соответственно нижней
(left)
и верхней (right)
границ полосы:

,

где


корень уравнения F2,N-2()=1–;
F2,N-2(x)
– функция распределения Фишера (F

распределение) с 2 и N–2
степенями свободы.

Использование
модели

за пределами исследуемого диапазона
не обосновано.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

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

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

Рис. 3.6 Метод Лагранжа

Концепция аппроксимации

Близость исходной и аппроксимирующей функций определяется числовой мерой

критерием аппроксимации (близости). Наибольшее распространение получил квадратичный критерий, равный сумме квадратов отклонений расчетных значений от «экспериментальных» (т.е. заданных), — критерий близости в заданных точках:

Здесь уi — заданные табличные значения функции; уiрасч — расчетные значения по аппроксимирующей функции; bi — весовые коэффициенты, учитывающие относительную важность i-и точки (увеличение b,. приводит при стремлении уменьшить R к уменьшению, прежде всего отклонения в iй точке, так как это отклонение искусственно увеличено за счет относительно большого значения весового коэффициента).

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

Другим распространенным критерием близости является следующий:

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

Выделяют две основные задачи:

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

2)    получение аппроксимирующей функции заданной структуры с наилучшей возможной погрешностью.

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

Метод наименьших квадратов

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

Запишем выражение критерия аппроксимации при bi =1 (i=1, 2,…, n) для полиномиального уiрасч (х):

Искомые переменные аj можно найти из необходимого условия минимума R по этим переменным, т.е. dR / dар = 0 (для р =0, 1,2,…,k). Продифференцируем по ар (р — текущий индекс):

После очевидных преобразований (сокращение на два, раскрытие скобок, изменение порядка суммирования) получим

Перепишем последние равенства

Получилась система n+1 уравнений с таким же количеством неизвестных аj, причем линейная относительно этих переменных. Эта система называется системой нормальных уравнений. Из ее решения находятся параметры аj аппроксимирующей функции, обеспечивающие minR, т.е. наилучшее возможное квадратичное приближение. Зная коэффициенты, можно (если нужно) вычислить и величину R (например, для сравнения различных аппроксимирующих функций). Следует помнить, что при изменении даже одного значения исходных данных (или пары значений хi, уi, или одного из них) все коэффициенты изменят в общем случае свои значения, так как они полностью определяются исходными данными. Поэтому при повторении аппроксимации с несколько изменившимися данными (например, вследствие погрешностей измерения, помех, влияния неучтенных факторов и т.п.) получится другая аппроксимирующая функция, отличающаяся коэффициентами. Обратим внимание на то, что коэффициенты аj полинома находятся из решения системы уравнений, т.е. они связаны между собой. Это приводит к тому, что если какой-то коэффициент вследствие его малости захочется отбросить, придется пересчитывать заново оставшиеся. Можно рассчитать количественные оценки тесноты связи коэффициентов. Существует специальная теория планирования экспериментов, которая

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

Рис. 3.7 Влияние степени аппроксимирующего полинома М на точность аппроксимации

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

Рассмотрим решение задачи аппроксимации и интерполяции с шумом в

программе MathCAD (рисунок 3.8).

Пример 3.1. В ходе проведения эксперимента были получены данные, представленные в таблице 3.1. Необходимо способом наименьших квадратов подобрать для заданных значений x и y квадратичную функцию . Построить на одной координатной плоскости экспериментальные данные и аппроксимирующую функцию.

Таблица 3.1 Данные эксперимента

х

80,5

77,0

70,8

56,7

39,7

29,9

у

281

272

259

224

186

170

Решение. Для определения коэффициентов  квадратичной функции построим дополнительную таблицу 3.2.

Таблица 3.2 Дополнительная таблица

1

80,5

6480,25

521660,13

41993640,0625

281

22620,5

1820950,25

2

77

5929

456533

35153041,0000

272

20944

1612688,00

3

70,8

5012,64

354894,91

25126559,7696

259

18337,2

1298273,76

4

56,7

3214,89

182284,26

10335517,7121

224

12700,8

720135,36

5

39,7

1576,09

62570,773

2484059,6881

186

7384,2

293152,74

6

29,9

894,01

26730,899

799253,8801

170

5083

151981,70

Σ

354,6

23106,88

1604673,972

115892072,1124

1392

87069,7

5897181,81

Строим систему уравнений

В нашем случае она будет иметь вид:

Из полученной системы уравнений находим

Искомая зависимость

Строим график экспериментальных данных и найденной зависимости.

Рис.3.8 Аппроксимация и интерполяция в задаче с помехами

Если требуется построить зависимость в виде показательной функции , то необходимо составить систему:

   (3.7)

Для этого строится таблица

1

n

Σ

Из системы 3.7 находим коэффициенты  и  (необходимо выразить ).

Если требуется построить зависимость в виде степенной функции , то составляется система:

   (3.8)

Для этого строится таблица

1

n

Σ

Из системы 3.8 находим коэффициенты  и  (необходимо выразить ).

Содержание

  • Выполнение аппроксимации
    • Способ 1: линейное сглаживание
    • Способ 2: экспоненциальная аппроксимация
    • Способ 3: логарифмическое сглаживание
    • Способ 4: полиномиальное сглаживание
    • Способ 5: степенное сглаживание
  • Вопросы и ответы

Аппроксимация в Microsoft Excel

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

Выполнение аппроксимации

Наименование данного метода происходит от латинского слова proxima – «ближайшая» Именно приближение путем упрощения и сглаживания известных показателей, выстраивание их в тенденцию и является его основой. Но данный метод можно использовать не только для прогнозирования, но и для исследования уже имеющихся результатов. Ведь аппроксимация является, по сути, упрощением исходных данных, а упрощенный вариант исследовать легче.

Главный инструмент, с помощью которого проводится сглаживания в Excel – это построение линии тренда. Суть состоит в том, что на основе уже имеющихся показателей достраивается график функции на будущие периоды. Основное предназначение линии тренда, как не трудно догадаться, это составление прогнозов или выявление общей тенденции.

Но она может быть построена с применением одного из пяти видов аппроксимации:

  • Линейной;
  • Экспоненциальной;
  • Логарифмической;
  • Полиномиальной;
  • Степенной.

Рассмотрим каждый из вариантов более подробно в отдельности.

Урок: Как построить линию тренда в Excel

Способ 1: линейное сглаживание

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

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

  1. Для построения графика, прежде всего, выделяем столбцы «Себестоимость единицы продукции» и «Прибыль». После этого перемещаемся во вкладку «Вставка». Далее на ленте в блоке инструментов «Диаграммы» щелкаем по кнопке «Точечная». В открывшемся списке выбираем наименование «Точечная с гладкими кривыми и маркерами». Именно данный вид диаграмм наиболее подходит для работы с линией тренда, а значит, и для применения метода аппроксимации в Excel.
  2. Построение диаграммы в Microsoft Excel

  3. График построен.
  4. График построен в Microsoft Excel

  5. Для добавления линии тренда выделяем его кликом правой кнопки мыши. Появляется контекстное меню. Выбираем в нем пункт «Добавить линию тренда…».
    Добавление линии тренда через контекстное меню в Microsoft Excel

    Существует ещё один вариант её добавления. В дополнительной группе вкладок на ленте «Работа с диаграммами» перемещаемся во вкладку «Макет». Далее в блоке инструментов «Анализ» щелкаем по кнопке «Линия тренда». Открывается список. Так как нам нужно применить линейную аппроксимацию, то из представленных позиций выбираем «Линейное приближение».

  6. Добавление линии тренда через блок инструментов на ленте в Microsoft Excel

  7. Если же вы выбрали все-таки первый вариант действий с добавлением через контекстное меню, то откроется окно формата.

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

    Также в нашем случае для сравнения различных вариантов аппроксимации важно установить галочку около пункта «Поместить на диаграмму величину достоверной аппроксимации (R^2)». Данный показатель может варьироваться от 0 до 1. Чем он выше, тем аппроксимация качественнее (достовернее). Считается, что при величине данного показателя 0,85 и выше сглаживание можно считать достоверным, а если показатель ниже, то – нет.

    Lumpics.ru

    После того, как провели все вышеуказанные настройки. Жмем на кнопку «Закрыть», размещенную в нижней части окна.

  8. Включение линейной аппроксимации в Microsoft Excel

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

Линия тренда построена с помощью линейной аппроксимации в Microsoft Excel

Сглаживание, которое используется в данном случае, описывается следующей формулой:

y=ax+b

В конкретно нашем случае формула принимает такой вид:

y=-0,1156x+72,255

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

Способ 2: экспоненциальная аппроксимация

Теперь давайте рассмотрим экспоненциальный тип аппроксимации в Эксель.

  1. Для того, чтобы изменить тип линии тренда, выделяем её кликом правой кнопки мыши и в раскрывшемся меню выбираем пункт «Формат линии тренда…».
  2. Переход в формат лини тренда в Microsoft Excel

  3. После этого запускается уже знакомое нам окно формата. В блоке выбора типа аппроксимации устанавливаем переключатель в положение «Экспоненциальная». Остальные настройки оставим такими же, как и в первом случае. Щелкаем по кнопке «Закрыть».
  4. Построение экспоненциальной линии тренда в Microsoft Excel

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

Экспоненциальная линия тренда построена в Microsoft Excel

Общий вид функции сглаживания при этом такой:

y=be^x

где e – это основание натурального логарифма.

В конкретно нашем случае формула приняла следующую форму:

y=6282,7*e^(-0,012*x)

Способ 3: логарифмическое сглаживание

Теперь настала очередь рассмотреть метод логарифмической аппроксимации.

  1. Тем же способом, что и в предыдущий раз через контекстное меню запускаем окно формата линии тренда. Устанавливаем переключатель в позицию «Логарифмическая» и жмем на кнопку «Закрыть».
  2. Включение логарифмической аппроксимации в Microsoft Excel

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

Логарифмическая линия тренда построена в Microsoft Excel

В общем виде формула сглаживания выглядит так:

y=a*ln(x)+b

где ln – это величина натурального логарифма. Отсюда и наименование метода.

В нашем случае формула принимает следующий вид:

y=-62,81ln(x)+404,96

Способ 4: полиномиальное сглаживание

Настал черед рассмотреть метод полиномиального сглаживания.

  1. Переходим в окно формата линии тренда, как уже делали не раз. В блоке «Построение линии тренда» устанавливаем переключатель в позицию «Полиномиальная». Справа от данного пункта расположено поле «Степень». При выборе значения «Полиномиальная» оно становится активным. Здесь можно указать любое степенное значение от 2 (установлено по умолчанию) до 6. Данный показатель определяет число максимумов и минимумов функции. При установке полинома второй степени описывается только один максимум, а при установке полинома шестой степени может быть описано до пяти максимумов. Для начала оставим настройки по умолчанию, то есть, укажем вторую степень. Остальные настройки оставляем такими же, какими мы выставляли их в предыдущих способах. Жмем на кнопку «Закрыть».
  2. Включение полиномиальной аппроксимации в Microsoft Excel

  3. Линия тренда с использованием данного метода построена. Как видим, она ещё более изогнута, чем при использовании экспоненциальной аппроксимации. Уровень достоверности выше, чем при любом из использованных ранее способов, и составляет 0,9724.
    Полиномиальная линия тренда в Microsoft Excel

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

    y=a1+a1*x+a2*x^2+…+an*x^n

    В нашем случае формула приняла такой вид:

    y=0,0015*x^2-1,7202*x+507,01

  4. Теперь давайте изменим степень полиномов, чтобы увидеть, будет ли отличаться результат. Возвращаемся в окно формата. Тип аппроксимации оставляем полиномиальным, но напротив него в окне степени устанавливаем максимально возможное значение – 6.
  5. Включение полиномиальной аппроксимации в шестой степени в Microsoft Excel

  6. Как видим, после этого наша линия тренда приняла форму ярко выраженной кривой, у которой число максимумов равно шести. Уровень достоверности повысился ещё больше, составив 0,9844.

Полиномиальная линия тренда в шестой степени в Microsoft Excel

Формула, которая описывает данный тип сглаживания, приняла следующий вид:

y=8E-08x^6-0,0003x^5+0,3725x^4-269,33x^3+109525x^2-2E+07x+2E+09

Способ 5: степенное сглаживание

В завершении рассмотрим метод степенной аппроксимации в Excel.

  1. Перемещаемся в окно «Формат линии тренда». Устанавливаем переключатель вида сглаживания в позицию «Степенная». Показ уравнения и уровня достоверности, как всегда, оставляем включенными. Жмем на кнопку «Закрыть».
  2. Полиномиальная линия тренда в шестой степени в Microsoft Excel

  3. Программа формирует линию тренда. Как видим, в нашем случае она представляет собой линию с небольшим изгибом. Уровень достоверности равен 0,9618, что является довольно высоким показателем. Из всех вышеописанных способов уровень достоверности был выше только при использовании полиномиального метода.

Степенная линия тренда построена в Microsoft Excel

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

Общая формула, описывающая данный метод имеет такой вид:

y=bx^n

В конкретно нашем случае она выглядит так:

y = 6E+18x^(-6,512)

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

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

Построить аппроксимацию входных данных с учётом их погрешностей

04.03.2021, 02:16. Показов 687. Ответов 9


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

Пример такого набора , а так же график (рис.1), который, возможно, прояснит ситуацию лучше:

Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
clear
clc
 
%Задаём
func = @(x) (150.*x + 20);
x = [0:1:5]';
y = func(x);
 
%Зашумляем
to_approx_x = x + (rand([size(x, 1), 1]).*(0.7 + 0.2)) + (-0.2);
to_approx_y = y + ((rand([size(y, 1), 1]).*(50 + 14)) + (-14)).*rand([size(y, 1), 1]).*5;
 
%Задаём вектор "измернной погрешности"
sigma_x = abs((rand([size(x, 1), 1]).*(0.7 + 0.2)) + (-0.2));
sigma_y = abs((rand([size(y, 1), 1]).*(50 + 14)) + (-14)).*5;
 
%Демонстрируем, что имеем с "эксперимента": 
figure
hold on
err = errorbar(to_approx_x, to_approx_y, -sigma_y, sigma_y, -sigma_x, sigma_x, '.');
h = plot(to_approx_x, to_approx_y, 'r.');
grid on
 
xlabel ('Ось данных х');
ylabel ('Ось данных y');

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

Итак, после того, как описаны начальные условия задачи, переходим к сути вопроса.
Необходимо построить аппроксимацию данных с учётом их погрешностей.
То есть, например, известно, что данные в теории ложатся на кривую, описываемую функцией: f(x) = a/x + b. Или, например, строится калибровочная кривая при помощи полинома (рис.2). Все эти построения производятся с помощью аппроксимации заданного набора какой-то заданной функцией.

Лично я делаю это в cftool. Но, к сожалению, он делает это по МНК. А в этот метод никак (как я смог понять) нельзя передать погрешности измерений, только измерения. При этом манящий раздел параметров weights — всего лишь возможность после первой аппроксимации минимизировать сумму вида:

https://www.cyberforum.ru/cgi-bin/latex.cgi?sum (W(i) * (y(i) - y_{fit}(i))^2)

Загнав во второй проход в графу weights вектор W.
(источник: https://www.mathworks.com/supp… ion&page=1)

То есть никакого обозримого учёта погрешности исходных данных нет, что влияет на выдаваемую матлабом погрешность вычисления параметров a и b или погрешность определённых по калибровочной кривой данных.

Соответственно, стоит вопрос — как учесть погрешность исходных данных при построении аппроксимационной модели?

И теперь коротко для тех, кто потерялся:
1. Есть данные x, y определённые с погрешностью.
2. Нужно построить аппроксимацию какой-то заданной функцией f(x) этих y и х.
3. Как при аппроксимации учесть погрешность исходных данных?

P.S.: Если это делается какой-то одной командой или чем-то красивым, как cftool, то будет вообще здорово

Миниатюры

Построить аппроксимацию входных данных с учётом их погрешностей
 

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь

0

From Wikipedia, the free encyclopedia

Stochastic approximation methods are a family of iterative methods typically used for root-finding problems or for optimization problems. The recursive update rules of stochastic approximation methods can be used, among other things, for solving linear systems when the collected data is corrupted by noise, or for approximating extreme values of functions which cannot be computed directly, but only estimated via noisy observations.

In a nutshell, stochastic approximation algorithms deal with a function of the form {textstyle f(theta )=operatorname {E} _{xi }[F(theta ,xi )]}
which is the expected value of a function depending on a random variable {textstyle xi }. The goal is to recover properties of such a function {textstyle f} without evaluating it directly. Instead, stochastic approximation algorithms use random samples of {textstyle F(theta ,xi )} to efficiently approximate properties of {textstyle f} such as zeros or extrema.

Recently, stochastic approximations have found extensive applications in the fields of statistics and machine learning, especially in settings with big data. These applications range from stochastic optimization methods and algorithms, to online forms of the EM algorithm, reinforcement learning via temporal differences, and deep learning, and others.[1]
Stochastic approximation algorithms have also been used in the social sciences to describe collective dynamics: fictitious play in learning theory and consensus algorithms can be studied using their theory.[2]

The earliest, and prototypical, algorithms of this kind are the Robbins–Monro and Kiefer–Wolfowitz algorithms introduced respectively in 1951 and 1952.

Robbins–Monro algorithm[edit]

The Robbins–Monro algorithm, introduced in 1951 by Herbert Robbins and Sutton Monro,[3] presented a methodology for solving a root finding problem, where the function is represented as an expected value. Assume that we have a function {textstyle M(theta )}, and a constant {textstyle alpha }, such that the equation {textstyle M(theta )=alpha } has a unique root at {textstyle theta ^{*}}. It is assumed that while we cannot directly observe the function {textstyle M(theta )}, we can instead obtain measurements of the random variable {textstyle N(theta )} where {textstyle operatorname {E} [N(theta )]=M(theta )}. The structure of the algorithm is to then generate iterates of the form:

{displaystyle theta _{n+1}=theta _{n}-a_{n}(N(theta _{n})-alpha )}

Here, a_{1},a_{2},dots is a sequence of positive step sizes. Robbins and Monro proved[3], Theorem 2 that theta_n converges in L^{2} (and hence also in probability) to theta^*, and Blum[4] later proved the convergence is actually with probability one, provided that:

qquad sum _{{n=0}}^{{infty }}a_{n}=infty quad {mbox{ and }}quad sum _{{n=0}}^{{infty }}a_{n}^{2}<infty quad

A particular sequence of steps which satisfy these conditions, and was suggested by Robbins–Monro, have the form: {textstyle a_{n}=a/n}, for {textstyle a>0}. Other series are possible but in order to average out the noise in {textstyle N(theta )}, the above condition must be met.

Complexity results[edit]

  1. If {textstyle f(theta )} is twice continuously differentiable, and strongly convex, and the minimizer of {textstyle f(theta )} belongs to the interior of {textstyle Theta }, then the Robbins–Monro algorithm will achieve the asymptotically optimal convergence rate, with respect to the objective function, being {textstyle operatorname {E} [f(theta _{n})-f^{*}]=O(1/n)}, where {textstyle f^{*}} is the minimal value of {textstyle f(theta )} over {textstyle theta in Theta }.[5][6]
  2. Conversely, in the general convex case, where we lack both the assumption of smoothness and strong convexity, Nemirovski and Yudin[7] have shown that the asymptotically optimal convergence rate, with respect to the objective function values, is {textstyle O(1/{sqrt {n}})}. They have also proven that this rate cannot be improved.

Subsequent developments and Polyak–Ruppert averaging[edit]

While the Robbins–Monro algorithm is theoretically able to achieve {textstyle O(1/n)} under the assumption of twice continuous differentiability and strong convexity, it can perform quite poorly upon implementation. This is primarily due to the fact that the algorithm is very sensitive to the choice of the step size sequence, and the supposed asymptotically optimal step size policy can be quite harmful in the beginning.[6][8]

Chung (1954)[9] and Fabian (1968)[10] showed that we would achieve optimal convergence rate {textstyle O(1/{sqrt {n}})} with {textstyle a_{n}=bigtriangledown ^{2}f(theta ^{*})^{-1}/n} (or {textstyle a_{n}={frac {1}{(nM'(theta ^{*}))}}}). Lai and Robbins[11][12] designed adaptive procedures to estimate {textstyle M'(theta ^{*})} such that {textstyle theta _{n}} has minimal asymptotic variance. However the application of such optimal methods requires much a priori information which is hard to obtain in most situations. To overcome this shortfall, Polyak (1991)[13] and Ruppert (1988)[14] independently developed a new optimal algorithm based on the idea of averaging the trajectories. Polyak and Juditsky[15] also presented a method of accelerating Robbins–Monro for linear and non-linear root-searching problems through the use of longer steps, and averaging of the iterates. The algorithm would have the following structure:

{displaystyle theta _{n+1}-theta _{n}=a_{n}(alpha -N(theta _{n})),qquad {bar {theta }}_{n}={frac {1}{n}}sum _{i=0}^{n-1}theta _{i}}

The convergence of {displaystyle {bar {theta }}_{n}} to the unique root theta^* relies on the condition that the step sequence {a_{n}} decreases sufficiently slowly. That is

A1)

{displaystyle a_{n}rightarrow 0,qquad {frac {a_{n}-a_{n+1}}{a_{n}}}=o(a_{n})}

Therefore, the sequence {textstyle a_{n}=n^{-alpha }} with {textstyle 0<alpha <1} satisfies this restriction, but {textstyle alpha =1} does not, hence the longer steps. Under the assumptions outlined in the Robbins–Monro algorithm, the resulting modification will result in the same asymptotically optimal convergence rate {textstyle O(1/{sqrt {n}})} yet with a more robust step size policy.[15] Prior to this, the idea of using longer steps and averaging the iterates had already been proposed by Nemirovski and Yudin[16] for the cases of solving the stochastic optimization problem with continuous convex objectives and for convex-concave saddle point problems. These algorithms were observed to attain the nonasymptotic rate {textstyle O(1/{sqrt {n}})}.

A more general result is given in Chapter 11 of Kushner and Yin[17] by defining interpolated time {textstyle t_{n}=sum _{i=0}^{n-1}a_{i}}, interpolated process {textstyle theta ^{n}(cdot )} and interpolated normalized process {textstyle U^{n}(cdot )} as

{displaystyle theta ^{n}(t)=theta _{n+i},quad U^{n}(t)=(theta _{n+i}-theta ^{*})/{sqrt {a_{n+i}}}quad {mbox{for}}quad tin [t_{n+i}-t_{n},t_{n+i+1}-t_{n}),igeq 0}

Let the iterate average be {displaystyle Theta _{n}={frac {a_{n}}{t}}sum _{i=n}^{n+t/a_{n}-1}theta _{i}} and the associate normalized error to be {displaystyle {hat {U}}^{n}(t)={frac {sqrt {a_{n}}}{t}}sum _{i=n}^{n+t/a_{n}-1}(theta _{i}-theta ^{*})}.

With assumption A1) and the following A2)

A2) There is a Hurwitz matrix {textstyle A} and a symmetric and positive-definite matrix {textstyle Sigma } such that {textstyle {U^{n}(cdot )}} converges weakly to {textstyle U(cdot )}, where {textstyle U(cdot )} is the statisolution to

{displaystyle dU=AU,dt+Sigma ^{1/2},dw}

where {textstyle w(cdot )} is a standard Wiener process.

satisfied, and define {textstyle {bar {V}}=(A^{-1})'Sigma (A')^{-1}}. Then for each {textstyle t},

{displaystyle {hat {U}}^{n}(t){stackrel {mathcal {D}}{longrightarrow }}{mathcal {N}}(0,V_{t}),quad {text{where}}quad V_{t}={bar {V}}/t+O(1/t^{2}).}

The success of the averaging idea is because of the time scale separation of the original sequence {textstyle {theta _{n}}} and the averaged sequence {textstyle {Theta _{n}}}, with the time scale of the former one being faster.

Application in stochastic optimization[edit]

Suppose we want to solve the following stochastic optimization problem

{displaystyle g(theta ^{*})=min _{theta in Theta }operatorname {E} [Q(theta ,X)],}

where {textstyle g(theta )=operatorname {E} [Q(theta ,X)]} is differentiable and convex, then this problem is equivalent to find the root theta^* of {displaystyle nabla g(theta )=0}. Here {displaystyle Q(theta ,X)} can be interpreted as some «observed» cost as a function of the chosen theta and random effects X. In practice, it might be hard to get an analytical form of {displaystyle nabla g(theta )}, Robbins–Monro method manages to generate a sequence {displaystyle (theta _{n})_{ngeq 0}} to approximate theta^* if one can generate {displaystyle (X_{n})_{ngeq 0}} , in which the conditional expectation of {displaystyle X_{n}} given {displaystyle theta _{n}} is exactly {displaystyle nabla g(theta _{n})}, i.e. X_{n} is simulated from a conditional distribution defined by

{displaystyle operatorname {E} [H(theta ,X)|theta =theta _{n}]=nabla g(theta _{n}).}

Here {displaystyle H(theta ,X)} is an unbiased estimator of {displaystyle nabla g(theta )}. If X depends on theta, there is in general no natural way of generating a random outcome {displaystyle H(theta ,X)} that is an unbiased estimator of the gradient. In some special cases when either IPA or likelihood ratio methods are applicable, then one is able to obtain an unbiased gradient estimator {displaystyle H(theta ,X)}. If X is viewed as some «fundamental» underlying random process that is generated independently of theta, and under some regularization conditions for derivative-integral interchange operations so that {displaystyle operatorname {E} {Big [}{frac {partial }{partial theta }}Q(theta ,X){Big ]}=nabla g(theta )}, then {displaystyle H(theta ,X)={frac {partial }{partial theta }}Q(theta ,X)} gives the fundamental gradient unbiased estimate. However, for some applications we have to use finite-difference methods in which {displaystyle H(theta ,X)} has a conditional expectation close to {displaystyle nabla g(theta )} but not exactly equal to it.

We then define a recursion analogously to Newton’s Method in the deterministic algorithm:

{displaystyle theta _{n+1}=theta _{n}-varepsilon _{n}H(theta _{n},X_{n+1}).}

Convergence of the algorithm[edit]

The following result gives sufficient conditions on {displaystyle theta _{n}} for the algorithm to converge:[18]

C1) {displaystyle varepsilon _{n}geq 0,forall ;ngeq 0.}

C2) {displaystyle sum _{n=0}^{infty }varepsilon _{n}=infty }

C3) {displaystyle sum _{n=0}^{infty }varepsilon _{n}^{2}<infty }

C4) {displaystyle |X_{n}|leq B,{text{ for a fixed bound }}B.}

C5) {displaystyle g(theta ){text{ is strictly convex, i.e.}}}

{displaystyle inf _{delta leq |theta -theta ^{*}|leq 1/delta }langle theta -theta ^{*},nabla g(theta )rangle >0,{text{ for every }}0<delta <1.}

Then {displaystyle theta _{n}} converges to {displaystyle theta ^{*}} almost surely.

Here are some intuitive explanations about these conditions. Suppose {displaystyle H(theta _{n},X_{n+1})} is a uniformly bounded random variables. If C2) is not satisfied, i.e. {displaystyle sum _{n=0}^{infty }varepsilon _{n}<infty } , then

{displaystyle theta _{n}-theta _{0}=-sum _{i=0}^{n-1}varepsilon _{i}H(theta _{i},X_{i+1})}

is a bounded sequence, so the iteration cannot converge to {displaystyle theta ^{*}} if the initial guess {displaystyle theta _{0}} is too far away from {displaystyle theta ^{*}}. As for C3) note that if {displaystyle theta _{n}} converges to {displaystyle theta ^{*}} then

{displaystyle theta _{n+1}-theta _{n}=-varepsilon _{n}H(theta _{n},X_{n+1})rightarrow 0,{text{ as }}nrightarrow infty .}

so we must have {displaystyle varepsilon _{n}downarrow 0} ,and the condition C3) ensures it. A natural choice would be {displaystyle varepsilon _{n}=1/n}. Condition C5) is a fairly stringent condition on the shape of g(theta); it gives the search direction of the algorithm.

Example (where the stochastic gradient method is appropriate)[8][edit]

Suppose {displaystyle Q(theta ,X)=f(theta )+theta ^{T}X}, where f is differentiable and {displaystyle Xin mathbb {R} ^{p}} is a random variable independent of theta. Then {displaystyle g(theta )=operatorname {E} [Q(theta ,X)]=f(theta )+theta ^{T}operatorname {E} X} depends on the mean of X, and the stochastic gradient method would be appropriate in this problem. We can choose {displaystyle H(theta ,X)={frac {partial }{partial theta }}Q(theta ,X)={frac {partial }{partial theta }}f(theta )+X.}

Kiefer–Wolfowitz algorithm[edit]

The Kiefer–Wolfowitz algorithm was introduced in 1952 by Jacob Wolfowitz and Jack Kiefer,[19] and was motivated by the publication of the Robbins–Monro algorithm. However, the algorithm was presented as a method which would stochastically estimate the maximum of a function. Let M(x) be a function which has a maximum at the point theta. It is assumed that M(x) is unknown; however, certain observations N(x), where {displaystyle operatorname {E} [N(x)]=M(x)}, can be made at any point x. The structure of the algorithm follows a gradient-like method, with the iterates being generated as follows:

{displaystyle x_{n+1}=x_{n}+a_{n}{bigg (}{frac {N(x_{n}+c_{n})-N(x_{n}-c_{n})}{2c_{n}}}{bigg )}}

where {displaystyle N(x_{n}+c_{n})} and {displaystyle N(x_{n}-c_{n})} are independent, and the gradient of M(x) is approximated using finite differences. The sequence {c_{n}} specifies the sequence of finite difference widths used for the gradient approximation, while the sequence {a_{n}} specifies a sequence of positive step sizes taken along that direction. Kiefer and Wolfowitz proved that, if M(x) satisfied certain regularity conditions, then x_{n} will converge to theta in probability as {displaystyle nto infty }, and later Blum[4] in 1954 showed x_{n} converges to theta almost surely, provided that:

A suitable choice of sequences, as recommended by Kiefer and Wolfowitz, would be a_{n}=1/n and c_{n}=n^{{-1/3}}.

Subsequent developments and important issues[edit]

  1. The Kiefer Wolfowitz algorithm requires that for each gradient computation, at least d+1 different parameter values must be simulated for every iteration of the algorithm, where d is the dimension of the search space. This means that when d is large, the Kiefer–Wolfowitz algorithm will require substantial computational effort per iteration, leading to slow convergence.
    1. To address this problem, Spall proposed the use of simultaneous perturbations to estimate the gradient. This method would require only two simulations per iteration, regardless of the dimension d.[20]
  2. In the conditions required for convergence, the ability to specify a predetermined compact set that fulfills strong convexity (or concavity) and contains the unique solution can be difficult to find. With respect to real world applications, if the domain is quite large, these assumptions can be fairly restrictive and highly unrealistic.

Further developments[edit]

An extensive theoretical literature has grown up around these algorithms, concerning conditions for convergence, rates of convergence, multivariate and other generalizations, proper choice of step size, possible noise models, and so on.[21][22] These methods are also applied in control theory, in which case the unknown function which we wish to optimize or find the zero of may vary in time. In this case, the step size a_{n} should not converge to zero but should be chosen so as to track the function.[21], 2nd ed., chapter 3

C. Johan Masreliez and R. Douglas Martin were the first to apply
stochastic approximation to robust estimation.[23]

The main tool for analyzing stochastic approximations algorithms (including the Robbins–Monro and the Kiefer–Wolfowitz algorithms) is a theorem by Aryeh Dvoretzky published in the proceedings of the third Berkeley symposium on mathematical statistics and probability, 1956.[24]

See also[edit]

  • Stochastic gradient descent
  • Stochastic variance reduction

References[edit]

  1. ^ Toulis, Panos; Airoldi, Edoardo (2015). «Scalable estimation strategies based on stochastic approximations: classical results and new insights». Statistics and Computing. 25 (4): 781–795. doi:10.1007/s11222-015-9560-y. PMC 4484776. PMID 26139959.
  2. ^ Le Ny, Jerome. «Introduction to Stochastic Approximation Algorithms» (PDF). Polytechnique Montreal. Teaching Notes. Retrieved 16 November 2016.
  3. ^ a b Robbins, H.; Monro, S. (1951). «A Stochastic Approximation Method». The Annals of Mathematical Statistics. 22 (3): 400. doi:10.1214/aoms/1177729586.
  4. ^ a b Blum, Julius R. (1954-06-01). «Approximation Methods which Converge with Probability one». The Annals of Mathematical Statistics. 25 (2): 382–386. doi:10.1214/aoms/1177728794. ISSN 0003-4851.
  5. ^ Sacks, J. (1958). «Asymptotic Distribution of Stochastic Approximation Procedures». The Annals of Mathematical Statistics. 29 (2): 373–405. doi:10.1214/aoms/1177706619. JSTOR 2237335.
  6. ^ a b Nemirovski, A.; Juditsky, A.; Lan, G.; Shapiro, A. (2009). «Robust Stochastic Approximation Approach to Stochastic Programming». SIAM Journal on Optimization. 19 (4): 1574. doi:10.1137/070704277.
  7. ^ Problem Complexity and Method Efficiency in Optimization, A. Nemirovski and D. Yudin, Wiley -Intersci. Ser. Discrete Math 15 John Wiley New York (1983) .
  8. ^ a b Introduction to Stochastic Search and Optimization: Estimation, Simulation and Control, J.C. Spall, John Wiley Hoboken, NJ, (2003).
  9. ^ Chung, K. L. (1954-09-01). «On a Stochastic Approximation Method». The Annals of Mathematical Statistics. 25 (3): 463–483. doi:10.1214/aoms/1177728716. ISSN 0003-4851.
  10. ^ Fabian, Vaclav (1968-08-01). «On Asymptotic Normality in Stochastic Approximation». The Annals of Mathematical Statistics. 39 (4): 1327–1332. doi:10.1214/aoms/1177698258. ISSN 0003-4851.
  11. ^ Lai, T. L.; Robbins, Herbert (1979-11-01). «Adaptive Design and Stochastic Approximation». The Annals of Statistics. 7 (6): 1196–1221. doi:10.1214/aos/1176344840. ISSN 0090-5364.
  12. ^ Lai, Tze Leung; Robbins, Herbert (1981-09-01). «Consistency and asymptotic efficiency of slope estimates in stochastic approximation schemes». Zeitschrift für Wahrscheinlichkeitstheorie und Verwandte Gebiete. 56 (3): 329–360. doi:10.1007/BF00536178. ISSN 0044-3719. S2CID 122109044.
  13. ^ Polyak, B T (1990-01-01). «New stochastic approximation type procedures. (In Russian.)». 7 (7).
  14. ^ Ruppert, D. «Efficient estimators from a slowly converging robbins-monro process».
  15. ^ a b Polyak, B. T.; Juditsky, A. B. (1992). «Acceleration of Stochastic Approximation by Averaging». SIAM Journal on Control and Optimization. 30 (4): 838. doi:10.1137/0330046.
  16. ^ On Cezari’s convergence of the steepest descent method for approximating saddle points of convex-concave functions, A. Nemirovski and D. Yudin, Dokl. Akad. Nauk SSR 2939, (1978 (Russian)), Soviet Math. Dokl. 19 (1978 (English)).
  17. ^ Kushner, Harold; George Yin, G. (2003-07-17). Stochastic Approximation and Recursive Algorithms and | Harold Kushner | Springer. www.springer.com. ISBN 9780387008943. Retrieved 2016-05-16.
  18. ^ Bouleau, N.; Lepingle, D. (1994). Numerical Methods for stochastic Processes. New York: John Wiley. ISBN 9780471546412.
  19. ^ Kiefer, J.; Wolfowitz, J. (1952). «Stochastic Estimation of the Maximum of a Regression Function». The Annals of Mathematical Statistics. 23 (3): 462. doi:10.1214/aoms/1177729392.
  20. ^ Spall, J. C. (2000). «Adaptive stochastic approximation by the simultaneous perturbation method». IEEE Transactions on Automatic Control. 45 (10): 1839–1853. doi:10.1109/TAC.2000.880982.
  21. ^ a b Kushner, H. J.; Yin, G. G. (1997). Stochastic Approximation Algorithms and Applications. doi:10.1007/978-1-4899-2696-8. ISBN 978-1-4899-2698-2.
  22. ^ Stochastic Approximation and Recursive Estimation, Mikhail Borisovich Nevel’son and Rafail Zalmanovich Has’minskiĭ, translated by Israel Program for Scientific Translations and B. Silver, Providence, RI: American Mathematical Society, 1973, 1976. ISBN 0-8218-1597-0.
  23. ^ Martin, R.; Masreliez, C. (1975). «Robust estimation via stochastic approximation». IEEE Transactions on Information Theory. 21 (3): 263. doi:10.1109/TIT.1975.1055386.
  24. ^ Dvoretzky, Aryeh (1956-01-01). «On Stochastic Approximation». The Regents of the University of California.

From Wikipedia, the free encyclopedia

Stochastic approximation methods are a family of iterative methods typically used for root-finding problems or for optimization problems. The recursive update rules of stochastic approximation methods can be used, among other things, for solving linear systems when the collected data is corrupted by noise, or for approximating extreme values of functions which cannot be computed directly, but only estimated via noisy observations.

In a nutshell, stochastic approximation algorithms deal with a function of the form {textstyle f(theta )=operatorname {E} _{xi }[F(theta ,xi )]}
which is the expected value of a function depending on a random variable {textstyle xi }. The goal is to recover properties of such a function {textstyle f} without evaluating it directly. Instead, stochastic approximation algorithms use random samples of {textstyle F(theta ,xi )} to efficiently approximate properties of {textstyle f} such as zeros or extrema.

Recently, stochastic approximations have found extensive applications in the fields of statistics and machine learning, especially in settings with big data. These applications range from stochastic optimization methods and algorithms, to online forms of the EM algorithm, reinforcement learning via temporal differences, and deep learning, and others.[1]
Stochastic approximation algorithms have also been used in the social sciences to describe collective dynamics: fictitious play in learning theory and consensus algorithms can be studied using their theory.[2]

The earliest, and prototypical, algorithms of this kind are the Robbins–Monro and Kiefer–Wolfowitz algorithms introduced respectively in 1951 and 1952.

Robbins–Monro algorithm[edit]

The Robbins–Monro algorithm, introduced in 1951 by Herbert Robbins and Sutton Monro,[3] presented a methodology for solving a root finding problem, where the function is represented as an expected value. Assume that we have a function {textstyle M(theta )}, and a constant {textstyle alpha }, such that the equation {textstyle M(theta )=alpha } has a unique root at {textstyle theta ^{*}}. It is assumed that while we cannot directly observe the function {textstyle M(theta )}, we can instead obtain measurements of the random variable {textstyle N(theta )} where {textstyle operatorname {E} [N(theta )]=M(theta )}. The structure of the algorithm is to then generate iterates of the form:

{displaystyle theta _{n+1}=theta _{n}-a_{n}(N(theta _{n})-alpha )}

Here, a_{1},a_{2},dots is a sequence of positive step sizes. Robbins and Monro proved[3], Theorem 2 that theta_n converges in L^{2} (and hence also in probability) to theta^*, and Blum[4] later proved the convergence is actually with probability one, provided that:

qquad sum _{{n=0}}^{{infty }}a_{n}=infty quad {mbox{ and }}quad sum _{{n=0}}^{{infty }}a_{n}^{2}<infty quad

A particular sequence of steps which satisfy these conditions, and was suggested by Robbins–Monro, have the form: {textstyle a_{n}=a/n}, for {textstyle a>0}. Other series are possible but in order to average out the noise in {textstyle N(theta )}, the above condition must be met.

Complexity results[edit]

  1. If {textstyle f(theta )} is twice continuously differentiable, and strongly convex, and the minimizer of {textstyle f(theta )} belongs to the interior of {textstyle Theta }, then the Robbins–Monro algorithm will achieve the asymptotically optimal convergence rate, with respect to the objective function, being {textstyle operatorname {E} [f(theta _{n})-f^{*}]=O(1/n)}, where {textstyle f^{*}} is the minimal value of {textstyle f(theta )} over {textstyle theta in Theta }.[5][6]
  2. Conversely, in the general convex case, where we lack both the assumption of smoothness and strong convexity, Nemirovski and Yudin[7] have shown that the asymptotically optimal convergence rate, with respect to the objective function values, is {textstyle O(1/{sqrt {n}})}. They have also proven that this rate cannot be improved.

Subsequent developments and Polyak–Ruppert averaging[edit]

While the Robbins–Monro algorithm is theoretically able to achieve {textstyle O(1/n)} under the assumption of twice continuous differentiability and strong convexity, it can perform quite poorly upon implementation. This is primarily due to the fact that the algorithm is very sensitive to the choice of the step size sequence, and the supposed asymptotically optimal step size policy can be quite harmful in the beginning.[6][8]

Chung (1954)[9] and Fabian (1968)[10] showed that we would achieve optimal convergence rate {textstyle O(1/{sqrt {n}})} with {textstyle a_{n}=bigtriangledown ^{2}f(theta ^{*})^{-1}/n} (or {textstyle a_{n}={frac {1}{(nM'(theta ^{*}))}}}). Lai and Robbins[11][12] designed adaptive procedures to estimate {textstyle M'(theta ^{*})} such that {textstyle theta _{n}} has minimal asymptotic variance. However the application of such optimal methods requires much a priori information which is hard to obtain in most situations. To overcome this shortfall, Polyak (1991)[13] and Ruppert (1988)[14] independently developed a new optimal algorithm based on the idea of averaging the trajectories. Polyak and Juditsky[15] also presented a method of accelerating Robbins–Monro for linear and non-linear root-searching problems through the use of longer steps, and averaging of the iterates. The algorithm would have the following structure:

{displaystyle theta _{n+1}-theta _{n}=a_{n}(alpha -N(theta _{n})),qquad {bar {theta }}_{n}={frac {1}{n}}sum _{i=0}^{n-1}theta _{i}}

The convergence of {displaystyle {bar {theta }}_{n}} to the unique root theta^* relies on the condition that the step sequence {a_{n}} decreases sufficiently slowly. That is

A1)

{displaystyle a_{n}rightarrow 0,qquad {frac {a_{n}-a_{n+1}}{a_{n}}}=o(a_{n})}

Therefore, the sequence {textstyle a_{n}=n^{-alpha }} with {textstyle 0<alpha <1} satisfies this restriction, but {textstyle alpha =1} does not, hence the longer steps. Under the assumptions outlined in the Robbins–Monro algorithm, the resulting modification will result in the same asymptotically optimal convergence rate {textstyle O(1/{sqrt {n}})} yet with a more robust step size policy.[15] Prior to this, the idea of using longer steps and averaging the iterates had already been proposed by Nemirovski and Yudin[16] for the cases of solving the stochastic optimization problem with continuous convex objectives and for convex-concave saddle point problems. These algorithms were observed to attain the nonasymptotic rate {textstyle O(1/{sqrt {n}})}.

A more general result is given in Chapter 11 of Kushner and Yin[17] by defining interpolated time {textstyle t_{n}=sum _{i=0}^{n-1}a_{i}}, interpolated process {textstyle theta ^{n}(cdot )} and interpolated normalized process {textstyle U^{n}(cdot )} as

{displaystyle theta ^{n}(t)=theta _{n+i},quad U^{n}(t)=(theta _{n+i}-theta ^{*})/{sqrt {a_{n+i}}}quad {mbox{for}}quad tin [t_{n+i}-t_{n},t_{n+i+1}-t_{n}),igeq 0}

Let the iterate average be {displaystyle Theta _{n}={frac {a_{n}}{t}}sum _{i=n}^{n+t/a_{n}-1}theta _{i}} and the associate normalized error to be {displaystyle {hat {U}}^{n}(t)={frac {sqrt {a_{n}}}{t}}sum _{i=n}^{n+t/a_{n}-1}(theta _{i}-theta ^{*})}.

With assumption A1) and the following A2)

A2) There is a Hurwitz matrix {textstyle A} and a symmetric and positive-definite matrix {textstyle Sigma } such that {textstyle {U^{n}(cdot )}} converges weakly to {textstyle U(cdot )}, where {textstyle U(cdot )} is the statisolution to

{displaystyle dU=AU,dt+Sigma ^{1/2},dw}

where {textstyle w(cdot )} is a standard Wiener process.

satisfied, and define {textstyle {bar {V}}=(A^{-1})'Sigma (A')^{-1}}. Then for each {textstyle t},

{displaystyle {hat {U}}^{n}(t){stackrel {mathcal {D}}{longrightarrow }}{mathcal {N}}(0,V_{t}),quad {text{where}}quad V_{t}={bar {V}}/t+O(1/t^{2}).}

The success of the averaging idea is because of the time scale separation of the original sequence {textstyle {theta _{n}}} and the averaged sequence {textstyle {Theta _{n}}}, with the time scale of the former one being faster.

Application in stochastic optimization[edit]

Suppose we want to solve the following stochastic optimization problem

{displaystyle g(theta ^{*})=min _{theta in Theta }operatorname {E} [Q(theta ,X)],}

where {textstyle g(theta )=operatorname {E} [Q(theta ,X)]} is differentiable and convex, then this problem is equivalent to find the root theta^* of {displaystyle nabla g(theta )=0}. Here {displaystyle Q(theta ,X)} can be interpreted as some «observed» cost as a function of the chosen theta and random effects X. In practice, it might be hard to get an analytical form of {displaystyle nabla g(theta )}, Robbins–Monro method manages to generate a sequence {displaystyle (theta _{n})_{ngeq 0}} to approximate theta^* if one can generate {displaystyle (X_{n})_{ngeq 0}} , in which the conditional expectation of {displaystyle X_{n}} given {displaystyle theta _{n}} is exactly {displaystyle nabla g(theta _{n})}, i.e. X_{n} is simulated from a conditional distribution defined by

{displaystyle operatorname {E} [H(theta ,X)|theta =theta _{n}]=nabla g(theta _{n}).}

Here {displaystyle H(theta ,X)} is an unbiased estimator of {displaystyle nabla g(theta )}. If X depends on theta, there is in general no natural way of generating a random outcome {displaystyle H(theta ,X)} that is an unbiased estimator of the gradient. In some special cases when either IPA or likelihood ratio methods are applicable, then one is able to obtain an unbiased gradient estimator {displaystyle H(theta ,X)}. If X is viewed as some «fundamental» underlying random process that is generated independently of theta, and under some regularization conditions for derivative-integral interchange operations so that {displaystyle operatorname {E} {Big [}{frac {partial }{partial theta }}Q(theta ,X){Big ]}=nabla g(theta )}, then {displaystyle H(theta ,X)={frac {partial }{partial theta }}Q(theta ,X)} gives the fundamental gradient unbiased estimate. However, for some applications we have to use finite-difference methods in which {displaystyle H(theta ,X)} has a conditional expectation close to {displaystyle nabla g(theta )} but not exactly equal to it.

We then define a recursion analogously to Newton’s Method in the deterministic algorithm:

{displaystyle theta _{n+1}=theta _{n}-varepsilon _{n}H(theta _{n},X_{n+1}).}

Convergence of the algorithm[edit]

The following result gives sufficient conditions on {displaystyle theta _{n}} for the algorithm to converge:[18]

C1) {displaystyle varepsilon _{n}geq 0,forall ;ngeq 0.}

C2) {displaystyle sum _{n=0}^{infty }varepsilon _{n}=infty }

C3) {displaystyle sum _{n=0}^{infty }varepsilon _{n}^{2}<infty }

C4) {displaystyle |X_{n}|leq B,{text{ for a fixed bound }}B.}

C5) {displaystyle g(theta ){text{ is strictly convex, i.e.}}}

{displaystyle inf _{delta leq |theta -theta ^{*}|leq 1/delta }langle theta -theta ^{*},nabla g(theta )rangle >0,{text{ for every }}0<delta <1.}

Then {displaystyle theta _{n}} converges to {displaystyle theta ^{*}} almost surely.

Here are some intuitive explanations about these conditions. Suppose {displaystyle H(theta _{n},X_{n+1})} is a uniformly bounded random variables. If C2) is not satisfied, i.e. {displaystyle sum _{n=0}^{infty }varepsilon _{n}<infty } , then

{displaystyle theta _{n}-theta _{0}=-sum _{i=0}^{n-1}varepsilon _{i}H(theta _{i},X_{i+1})}

is a bounded sequence, so the iteration cannot converge to {displaystyle theta ^{*}} if the initial guess {displaystyle theta _{0}} is too far away from {displaystyle theta ^{*}}. As for C3) note that if {displaystyle theta _{n}} converges to {displaystyle theta ^{*}} then

{displaystyle theta _{n+1}-theta _{n}=-varepsilon _{n}H(theta _{n},X_{n+1})rightarrow 0,{text{ as }}nrightarrow infty .}

so we must have {displaystyle varepsilon _{n}downarrow 0} ,and the condition C3) ensures it. A natural choice would be {displaystyle varepsilon _{n}=1/n}. Condition C5) is a fairly stringent condition on the shape of g(theta); it gives the search direction of the algorithm.

Example (where the stochastic gradient method is appropriate)[8][edit]

Suppose {displaystyle Q(theta ,X)=f(theta )+theta ^{T}X}, where f is differentiable and {displaystyle Xin mathbb {R} ^{p}} is a random variable independent of theta. Then {displaystyle g(theta )=operatorname {E} [Q(theta ,X)]=f(theta )+theta ^{T}operatorname {E} X} depends on the mean of X, and the stochastic gradient method would be appropriate in this problem. We can choose {displaystyle H(theta ,X)={frac {partial }{partial theta }}Q(theta ,X)={frac {partial }{partial theta }}f(theta )+X.}

Kiefer–Wolfowitz algorithm[edit]

The Kiefer–Wolfowitz algorithm was introduced in 1952 by Jacob Wolfowitz and Jack Kiefer,[19] and was motivated by the publication of the Robbins–Monro algorithm. However, the algorithm was presented as a method which would stochastically estimate the maximum of a function. Let M(x) be a function which has a maximum at the point theta. It is assumed that M(x) is unknown; however, certain observations N(x), where {displaystyle operatorname {E} [N(x)]=M(x)}, can be made at any point x. The structure of the algorithm follows a gradient-like method, with the iterates being generated as follows:

{displaystyle x_{n+1}=x_{n}+a_{n}{bigg (}{frac {N(x_{n}+c_{n})-N(x_{n}-c_{n})}{2c_{n}}}{bigg )}}

where {displaystyle N(x_{n}+c_{n})} and {displaystyle N(x_{n}-c_{n})} are independent, and the gradient of M(x) is approximated using finite differences. The sequence {c_{n}} specifies the sequence of finite difference widths used for the gradient approximation, while the sequence {a_{n}} specifies a sequence of positive step sizes taken along that direction. Kiefer and Wolfowitz proved that, if M(x) satisfied certain regularity conditions, then x_{n} will converge to theta in probability as {displaystyle nto infty }, and later Blum[4] in 1954 showed x_{n} converges to theta almost surely, provided that:

A suitable choice of sequences, as recommended by Kiefer and Wolfowitz, would be a_{n}=1/n and c_{n}=n^{{-1/3}}.

Subsequent developments and important issues[edit]

  1. The Kiefer Wolfowitz algorithm requires that for each gradient computation, at least d+1 different parameter values must be simulated for every iteration of the algorithm, where d is the dimension of the search space. This means that when d is large, the Kiefer–Wolfowitz algorithm will require substantial computational effort per iteration, leading to slow convergence.
    1. To address this problem, Spall proposed the use of simultaneous perturbations to estimate the gradient. This method would require only two simulations per iteration, regardless of the dimension d.[20]
  2. In the conditions required for convergence, the ability to specify a predetermined compact set that fulfills strong convexity (or concavity) and contains the unique solution can be difficult to find. With respect to real world applications, if the domain is quite large, these assumptions can be fairly restrictive and highly unrealistic.

Further developments[edit]

An extensive theoretical literature has grown up around these algorithms, concerning conditions for convergence, rates of convergence, multivariate and other generalizations, proper choice of step size, possible noise models, and so on.[21][22] These methods are also applied in control theory, in which case the unknown function which we wish to optimize or find the zero of may vary in time. In this case, the step size a_{n} should not converge to zero but should be chosen so as to track the function.[21], 2nd ed., chapter 3

C. Johan Masreliez and R. Douglas Martin were the first to apply
stochastic approximation to robust estimation.[23]

The main tool for analyzing stochastic approximations algorithms (including the Robbins–Monro and the Kiefer–Wolfowitz algorithms) is a theorem by Aryeh Dvoretzky published in the proceedings of the third Berkeley symposium on mathematical statistics and probability, 1956.[24]

See also[edit]

  • Stochastic gradient descent
  • Stochastic variance reduction

References[edit]

  1. ^ Toulis, Panos; Airoldi, Edoardo (2015). «Scalable estimation strategies based on stochastic approximations: classical results and new insights». Statistics and Computing. 25 (4): 781–795. doi:10.1007/s11222-015-9560-y. PMC 4484776. PMID 26139959.
  2. ^ Le Ny, Jerome. «Introduction to Stochastic Approximation Algorithms» (PDF). Polytechnique Montreal. Teaching Notes. Retrieved 16 November 2016.
  3. ^ a b Robbins, H.; Monro, S. (1951). «A Stochastic Approximation Method». The Annals of Mathematical Statistics. 22 (3): 400. doi:10.1214/aoms/1177729586.
  4. ^ a b Blum, Julius R. (1954-06-01). «Approximation Methods which Converge with Probability one». The Annals of Mathematical Statistics. 25 (2): 382–386. doi:10.1214/aoms/1177728794. ISSN 0003-4851.
  5. ^ Sacks, J. (1958). «Asymptotic Distribution of Stochastic Approximation Procedures». The Annals of Mathematical Statistics. 29 (2): 373–405. doi:10.1214/aoms/1177706619. JSTOR 2237335.
  6. ^ a b Nemirovski, A.; Juditsky, A.; Lan, G.; Shapiro, A. (2009). «Robust Stochastic Approximation Approach to Stochastic Programming». SIAM Journal on Optimization. 19 (4): 1574. doi:10.1137/070704277.
  7. ^ Problem Complexity and Method Efficiency in Optimization, A. Nemirovski and D. Yudin, Wiley -Intersci. Ser. Discrete Math 15 John Wiley New York (1983) .
  8. ^ a b Introduction to Stochastic Search and Optimization: Estimation, Simulation and Control, J.C. Spall, John Wiley Hoboken, NJ, (2003).
  9. ^ Chung, K. L. (1954-09-01). «On a Stochastic Approximation Method». The Annals of Mathematical Statistics. 25 (3): 463–483. doi:10.1214/aoms/1177728716. ISSN 0003-4851.
  10. ^ Fabian, Vaclav (1968-08-01). «On Asymptotic Normality in Stochastic Approximation». The Annals of Mathematical Statistics. 39 (4): 1327–1332. doi:10.1214/aoms/1177698258. ISSN 0003-4851.
  11. ^ Lai, T. L.; Robbins, Herbert (1979-11-01). «Adaptive Design and Stochastic Approximation». The Annals of Statistics. 7 (6): 1196–1221. doi:10.1214/aos/1176344840. ISSN 0090-5364.
  12. ^ Lai, Tze Leung; Robbins, Herbert (1981-09-01). «Consistency and asymptotic efficiency of slope estimates in stochastic approximation schemes». Zeitschrift für Wahrscheinlichkeitstheorie und Verwandte Gebiete. 56 (3): 329–360. doi:10.1007/BF00536178. ISSN 0044-3719. S2CID 122109044.
  13. ^ Polyak, B T (1990-01-01). «New stochastic approximation type procedures. (In Russian.)». 7 (7).
  14. ^ Ruppert, D. «Efficient estimators from a slowly converging robbins-monro process».
  15. ^ a b Polyak, B. T.; Juditsky, A. B. (1992). «Acceleration of Stochastic Approximation by Averaging». SIAM Journal on Control and Optimization. 30 (4): 838. doi:10.1137/0330046.
  16. ^ On Cezari’s convergence of the steepest descent method for approximating saddle points of convex-concave functions, A. Nemirovski and D. Yudin, Dokl. Akad. Nauk SSR 2939, (1978 (Russian)), Soviet Math. Dokl. 19 (1978 (English)).
  17. ^ Kushner, Harold; George Yin, G. (2003-07-17). Stochastic Approximation and Recursive Algorithms and | Harold Kushner | Springer. www.springer.com. ISBN 9780387008943. Retrieved 2016-05-16.
  18. ^ Bouleau, N.; Lepingle, D. (1994). Numerical Methods for stochastic Processes. New York: John Wiley. ISBN 9780471546412.
  19. ^ Kiefer, J.; Wolfowitz, J. (1952). «Stochastic Estimation of the Maximum of a Regression Function». The Annals of Mathematical Statistics. 23 (3): 462. doi:10.1214/aoms/1177729392.
  20. ^ Spall, J. C. (2000). «Adaptive stochastic approximation by the simultaneous perturbation method». IEEE Transactions on Automatic Control. 45 (10): 1839–1853. doi:10.1109/TAC.2000.880982.
  21. ^ a b Kushner, H. J.; Yin, G. G. (1997). Stochastic Approximation Algorithms and Applications. doi:10.1007/978-1-4899-2696-8. ISBN 978-1-4899-2698-2.
  22. ^ Stochastic Approximation and Recursive Estimation, Mikhail Borisovich Nevel’son and Rafail Zalmanovich Has’minskiĭ, translated by Israel Program for Scientific Translations and B. Silver, Providence, RI: American Mathematical Society, 1973, 1976. ISBN 0-8218-1597-0.
  23. ^ Martin, R.; Masreliez, C. (1975). «Robust estimation via stochastic approximation». IEEE Transactions on Information Theory. 21 (3): 263. doi:10.1109/TIT.1975.1055386.
  24. ^ Dvoretzky, Aryeh (1956-01-01). «On Stochastic Approximation». The Regents of the University of California.

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

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


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

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

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

Отличие апроксимации от интерполяции.

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

Интерпояция — в вычислительной математике способ нахождения промежуточных значений величины по имеющемуся дискретному набору известных значений.

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

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

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

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

Аппроксимация — замена одних математических объектов другими, имеющие похожие и близкие свойства для последующего использования в
прикладной задаче. Аппроксимация позволяет исследовать различные числовые характеристики или качественные свойства объекта изучения. Таким образом мы
можем свести задачу к исследованию более элементарных или удобных для вычислений объектов, характеристики которых известны или легко вычисляются.
Приближение имеет схожий смысл что и аппроксимация, термин «приближение» иногда употребляется в смысле приближающего объекта. Приближение функций
— нахождение для данной функции f функции g из некоторого определенного класса (например, среди полиномов заданной степени), в том или ином смысле близкой к f , дающей ее приближенное представление» .
Модель — любой образ какого-либо объекта, процесса или явления, используемый в качестве его аналога. Математическая модель — приближенное
описание какого-либо класса явлений из внешнего мира, выраженное с помощью математической символики и математического языка. Физическая модель —
приближенное описание некоторого объекта или явления с помощью образа, имеющего ту же физическую природу .
Один из самых важных этапов в изучении какого-либо объекта на основе математической модели данного объекта – удовлетворяет ли наша модель
нескольким критериям: соответствие изучаемому явлению и процессу, согласование результаты наблюдений и экспериментов с теоретическими
прогноза работы модели с учетом погрешности наблюдений. Поэтому необходима проверка модели на адекватность, то есть соответствие свойствам
реального объекта, при условии, что точность модели, должна быть больше точности наблюдений (ошибка модели должна быть меньше ошибки наблюдений).
Адекватность — соответствие, верность, точность. Точность измерения —
характеристика измерения, отражающая степень близости его результатов к
истинному значению измеряемой величины» .
Аппроксимация бывает двух видов:

  • математическая или строгая;
  • физическая или техническая аппроксимация.

Математическая аппроксимация в свою очередь подразделяется на несколько методов:

  • полиномами (многочленами);
  • сплайнами;
  • отрезками ряда Фурье;
  • полиномами по ортогональным многочленам;
  • собственными функциями краевых задач.

«Менее строгая аппроксимация — физическая или техническая аппроксимация, или математическая модель физического явления, процесса и его
физической модели, технического устройства и его характеристик, сигнала и его параметров, среды, материи и т.п. Физическая (техническая) аппроксимация
включает в себя множество способов приближения функций, которые выбирают, руководствуясь конкретно поставленной задачей. В итоге, с помощью физической
(технической) аппроксимации легко решается широкий спектр задач, актуальных на данный момент времени, связанных с конкретными проблемами и вопросами
прикладного (технического) характера. Строгая теория математической аппроксимации строится как фундаментальная, глобальная теория
аппроксимации, которая для решения текущих прикладных практических задач может и не пригодиться. Это может произойти вследствие либо потери с течением
времени актуальности решаемой задачи, либо сложности теории (аппроксимирующей функции), либо большого количества коэффициентов
аппроксимации» .
В основном, характеристические данные большинства сложных реальных процессов и явлений получают в результате опыта или эксперимента, очень редко
удается получить или вывести зависимость в виде аналитической. Для изучения явлений и процессов нужно для начала представить характеристики в формальной
математической форме, в которой их можно использовать для вычислений и расчетов . Простым и наглядным способом будет представление характеристик
в виде таблицы. Этот способ удобен для анализа при помощи ЭВМ, аргументы и функции образуют массивы данных. В ряде случаев характеристики реальных
процессов и явлений имеют сложный вид и нагляднее представить их в виде графиков, диаграмм или других графических изображений.
Применение экспериментальных данных в виде таблиц или графиков иногда оказывается не слишком удобным, и данные описывают при помощи
элементарных аналитических зависимостей, которые с достаточной точностью качественно отражают характер рассматриваемых соотношений [10]. В данном
случае возникает потребность в нахождении функции, наиболее близкой к исследуемой, таким образом мы сформулируем задачу аппроксимации.
Необходимо построить функцию по экспериментальным данным, приближенными аналитическими выражениями.
Для решения поставленной задачи необходимо получить аналитическую зависимость, то есть подобрать аппроксимирующую функцию, которая бы
удовлетворяла условиям достаточной простоты и отражала бы ключевые особенности экспериментально полученной функции с заранее заданной
степенью точности [11].
«Общая задача аппроксимации включает в себя две самостоятельные задачи:

  • выбор класса подходящей аппроксимирующей функции;
  • определение коэффициентов аппроксимирующей функции (определение коэффициентов аппроксимации).

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

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

Исходя из этого, функцию, которая будет приближать характеристику какоголибо объекта, выбирают руководствуясь физическими представлениями о
природе изучаемого явления или процесса. Выбор проходит, основываясь на внешнем сходстве исследуемой характеристики с графическим изображением
выбранной функции . К функции, которая является решением поставленной задачи предъявляются уже известные требования: обеспечивая хорошее качество
приближения с низкой среднеквадратической ошибкой, она должна быть простой и удобной для дальнейшего использования при решении на ЭВМ [10].
Аналитические выражения, отображающие характеристики реальных процессов должны как можно лучше соответствовать реальности. Однако
повышение точности аппроксимации приводит, как правило, к усложнению аппроксимирующих выражений и увеличению их количества, что затрудняет
определение и вычисление коэффициентов и применение этих выражений для анализа процессов .
Способов решения данной задачи существует большое количество, как и аналитических выражений, для которых необходимо найти значения
коэффициентов. Может быть нецелесообразно и не иметь смысла, стараться получить аппроксимирующие выражения, дающие наибольшую точность, чем
точность отдельных методов или конкретных характеристик процесса .
При решении задачи аппроксимации так же, как и при решении любой задачи, человек сталкивается с проблемой построения математической модели и поиска
компромисса в соотношении с точностью результатов и сложностью вычислений и самой модели .
«Определение коэффициентов аппроксимации наиболее плотно связано с запрашиваемой точностью. Точность определяется критериями приближения,
обычно применяют критерии равномерного, среднеквадратичного и интерполяционного или точечного приближений» [11]. Если число заданных
точек превышает число определяемых коэффициентов аппроксимации, то лучшим путем будет использовать
метод наименьших квадратов
, при котором
среднеквадратичная ошибка минимальна, так как прямое решение данной системы может не дать ответа. «Метод наименьших квадратов применяется, когда
необходима регулируемая и достаточно высокая точность аппроксимации. Для данного метода требуются громоздкие вычисления, что заставляет решать данную
задачу только при использовании компьютера, но имеется конструктивный подход для аналитического определения коэффициентов модели аппроксимации.
Метод наименьших квадратов обеспечивает наименьшую среднюю квадратическую ошибку аппроксимирующей функции от значений исходной
функции на заданном множестве точек, большим, чем число неизвестных коэффициентов» .
Необходимо отметить, что точность аналитического представления изучаемого явления будет тем выше, чем точнее выбранная нами математическая
модель, описывающая данное явление. Определимся с требованиями, которые нужно предъявить к выбору модели, описывающей явление или процесс при
одинаковой ее точности — наименьшее количество коэффициентов модели и ее простота, выполнение данных требований способствует уменьшению
систематической ошибки и времени обработки экспериментальных данных.

1. Методы аппроксимации функций.

  • 1.1.
    непрерывная аппроксимация
    .
  • 1.2.
    точечная аппроксимация
    .
  • 1.3.
    интерполяционный полином лагранжа
    .
  • 1.4.
    интерполяционный полином ньютона
    .
  • 1.5.
    погрешность глобальной интерполяции
    .
  • 1.6. Метод наименьших квадратов.
  • 1.7.
    подбор эмпирических формул
    .
  • 1.8.
    кусочно-постоянная интерполяция
  • 1.9.
    кусочно-линейная интерполяция
    .

Виды интерполяции

  • Локальная интерполяция:
  • Кусочно–постоянная интерполяция
  • Кусочно–линейная интерполяция
  • Кубический интерполяционный сплайн
  • Глобальная интерполяция:
  • Полином Лагранжа
  • Подбор эмпирических формул
  • Метод наименьших квадратов
  • Алгебраическая интерполяция
    • Табличное задание функции
    • Простейшие способы интерполяции
    • Интерполяционные полиномы
    • Сплайн-интерполяция
  • Тригонометрическая интерполяция
  • Неклассические методы интерполяции
    • Реконструкция функций
    • Всюду гладкая интерполяция

Постановка задачи интерполяции

На интервале [a, b] заданы точки xi, i=0, 1,…, N; a ≤ x i ≤ b, и значения неизвестной функции в этих точках fi, i=0, 1,…., N. Требуется найти функцию F(x), принимающую в точках xi те же значения fi. Точки называются узлами интерполяции, а условия F(xi)= fi. – условиями интерполяции. При этом F(x) ищем только на отрезке [a,b]. Если необходимо найти функцию вне отрезка, то — это задачаэкстраполяции. Пока мы будем рассматривать только интерполяционные задачи.

Задача имеет много решений, т.к. через заданные точки (xi, fi), i=0, 1,…, N, можно провести бесконечно много кривых, каждая из которых будет графиком функции, для которой выполнены все условия интерполяции. Для практики важен случай аппроксимации функции многочленами, т.е. .

Все методы интерполяции можно разделить на локальные и глобальные. В случае локальной интерполяции на каждом интервале [xi–1, xi] строится отдельный полином. В случае глобальной интерполяции отыскивается единый полином на всем интервале [a, b]. При этом искомый полином называется интерполяционным полиномом.

Пример интерполяции

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

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

Точки x1,x2,xn называются узлами интерполяции, их совокупность — интерполяционной сеткой, а расстояние между ее соседними узлами — шагом интерполяции, который может быть как равномерным, так и неравномерным. Задача заключается в поиске интерполирующей функции F(xi)=yi. Иными словами, интерполяция позволяет узнать, какие значения принимает функция в точках, не являющихся ее узлами.

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

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

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация

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

Термин «интерполяция» впервые ввел английский математик Джон Валлис в 1656 году.

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

МЕТОДЫ АППРОКСИМАЦИИ ФУНКЦИЙ

1 Непрерывная аппроксимация

Если исходная функция f(x) задана аналитическим выражением, то при построении аппроксимирующей функции возможно требовать минимальности отклонения одной функции от другой на некотором непрерывном множестве точек, например, на отрезке [a,b]. Такой вид аппроксимации называется непрерывным или интегральным.

Теоретически для наилучшего приближения целесообразно требовать, чтобы во всех точках некоторого отрезка [a,b] отклонения аппроксимирующей функции от функции f(x) было по абсолютной величине меньше заданной величины :

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация

В этом случае говорят, что функция равномерно приближает функцию f(x) с точностью ε на интервале [a,b] . Об этом говорит сайт https://intellect.icu . Практическое получение равномерного приближения представляет большие трудности, и поэтому этот способ применяется главным образом в теоретических исследованиях.

Наиболее употребительным является так называемое среднеквадратичное приближение, для которого наименьшее значение имеет величина

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация

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

1.2 Точечная аппроксимация

Аппроксимация, при которой приближение строится на заданном дискретном множестве точек , называется точечной.

Для получения точечного среднеквадратичного приближения функции y=f(x), заданной таблично, аппроксимирующую функцию строят из условия минимума величины

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация

где yi – значения функции f(x) в точках xi.

Основная сфера применения среднеквадратичного приближения – обработка экспериментальных данных (построение эмпирических формул).

Другим видом точечной аппроксимации является интерполирование, при котором аппроксимирующая функция принимает в заданных точках xi, те же значения yi , что и функция f(x), т.е. 3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация .

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация

Рисунок 1 Среднеквадратическое приближение

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

На рис. 1 показаны качественные графики интерполяционной функции (сплошная линия) и результаты среднеквадратичного приближения (пунктирная линия). Точками отмечены табличные значения функции f(x).

1.3 Интерполяционный полином Лагранжа

Лагранж предложил строить интерполяционный полином в виде разложения

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация ,

где li(x) – базисные функции.

Для того, чтобы полином удовлетворял условиям Лагранжа, т.е. был бы интерполяционным, базисные функции li(x) должны обладать следующими свойствами:

1) быть полином степени n

2) удовлетворять условию

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация

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

.

С учетом этого выражения интерполяционный полином Лагранжа может быть записан в виде

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация

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

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

.

Значения интегралов от не зависят от f(x) и могут быть легко вычислены аналитически.

1.4 Интерполяционный полином Ньютона

Рассмотрим еще одну форму записи интерполяционного полинома

Требования совпадения значений полинома с заданными значения функции в узловых точках Ni(xi)=yi, i=0,1,…,n приводит к системе линейных уравнений с треугольной матрицей для неизвестных коэффициентов :

,

решить которую не составляет труда.

Интерполяционный полином называется полиномом Ньютона. Интересная особенность полинома Ньютона состоит в том, что каждая частичная сумма его первых (m+1) слагаемых представляет собой интерполяционный полином степени m, построенный по первым (m+1) табличным данным.

1.5 Погрешность глобальной интерполяции

Ошибка приближения функции f(x) интерполяционным полиномом n-й степени Ln(x) в точке x определяется разностью

.

Можно показать, что погрешность Rn(x) определяется следующим выражением

.

Здесь – производная (n+1) порядка функции f(x) в некоторой точке , а функция определена как

Если максимальное значение производной равно

,

то для погрешности интерполяции следует оценка

.

Конкретная величина погрешности в точке x зависит, очевидно, от значения функции в этой точке. Качественный характер зависимости показан на рис. 2.

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация

Рисунок 2 Погрешность интерполяции

Вследствие описанного поведения погрешности, глобальная интерполяция в некоторых случаях может давать совершенно неудовлетворительный результат. Из рисунка видно, что погрешность интерполяции тем выше, чем ближе точка x лежит к концам отрезка . За пределами отрезка интерполяции (т.е. при экстраполяции) быстро растет, поэтому погрешность возрастает существенно.

1.6 Метод наименьших квадратов

Пусть для исходных данных xi, fi, i=1,…,N (нумерацию лучше начинать с единицы), выбран вид эмпирической зависимости: y=φ(a0,a1,…,am) с неизвестными коэффициентами a0,a1,…,am . Запишем сумму квадратов отклонений между вычисленными по эмпирической формуле и заданными опытными данными:

Параметры a0,a1,…,am будем находить из условия минимума функции S(a0,a1,…,am). В этом состоит метод наименьших квадратов (МНК).

Известно, что в точке минимума все частные производные от S по равны нулю:

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация

Рассмотрим применение МНК для частного случая, широко используемого на практике. В качестве эмпирической функции рассмотрим полином

Формула (1) для определения суммы квадратов отклонений примет вид:

Вычислим производные

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация

Приравнивая эти выражения к нулю и собирая коэффициенты при неизвестных a0,a1,…,am , получим следующую систему линейных уравнений

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация

Данная система уравнений называется нормальной. Решая эту систему линейных уравнений, получаем коэффициенты 3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация .

В случае полинома первого порядка m=1, т.е. 3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация , система нормальных уравнений примет вид

При m=2 имеем:

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

1.7 Подбор эмпирических формул

При интерполировании функций мы использовали условие равенства значений интерполяционного полинома и данной функции в узлах интерполяции. Если же исходные данные получены в результате опытных измерений, то требование точного совпадения не нужно, так как данные не получены точно. В этих случаях можно требовать лишь приближенного выполнения условий интерполяции 3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация . Это условие означает, что интерполирующая функция F(x) проходит не точно через заданные точки, а в некоторой их окрестности, так, например, как это показано на рис.

аппроксимация полином интерполяция формула

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация

Рисунок 3

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

Для практики важен случай аппроксимации функции многочленами, т.е. F(x)=a0+a1x+a2x2+…+amxm .

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

1.8 Кусочно–постоянная интерполяция

На каждом отрезке [xi-1,xi] интерполяционный многочлен равен константе, а именно левому или правому значению функции.

Для левой кусочно-линейной интерполяции

F(x)= fi-1, если xi-1 ≤x

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация

Для правой кусочно-линейной интерполяции F(x)= fi-1, если xi-1

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

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация

Рисунок 4 Кусочно-постоянная интерполяция

1.9 Кусочно–линейная интерполяция

На каждом интервале [xi–1, xi] функция является линейной Fi(x)=kix+li. Значения коэффициентов находятся из выполнения условий интерполяции в концах отрезка:

Получаем систему уравнений:

откуда находим

Следовательно, функцию F(x) можно записать в виде:

F(x)= 3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация x+ fi- kixi , если , т.е.

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация

Или 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, а затем подставить его в формулу.

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

3. Интерполяция и Аппроксимация функций, непрерывная и точечная аппроксимация

Рисунок 5 Кусочно-линейная интерполяция

Локальная интерполяция

Кусочно–постоянная интерполяция

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

Для левой кусочно-линейной интерполяции , т.е.

Для правой кусочно-линейной интерполяции , т.е.

Легко понять, что условия интерполяция выполняются. Построенная функция является разрывной), что ограничивает ее применение. Для левой кусочно-линейной интерполяции имеем графическое представление:

Кусочно–линейная интерполяция

На каждом интервале [xi–1, xi] функция является линейной . Значения коэффициентов находятся из выполнения условий интерполяции в концах отрезка: . Получаем систему уравнений: , откуда находим . Следовательно, функцию F(z) можно записать в виде:

, т.е.

Или 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, а затем подставить его в формулу.

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

Пример: Заданы значений некоторой функции:

x 0 2 3 3.5
f -1 0.2 0.5 0.8

Требуется найти значение функции при z=1 и z=3.2 по кусочно–постоянной и кусочно–линейной интерполяции.

Решение. Точка z=1 принадлежит первому локальному отрезку [0, 2], т.е. и, следовательно, по формулам левой кусочно–постоянной интерполяции F(1) = f0 =1, по формулам правой кусочно–постоянной интерполяции F(1)=f1=0.2. Воспользуемся формулами кусочно–линейной интерполяции:

.

Точка z=3.2 принадлежит третьему интервалу [3, 3.5], т.е. и, следовательно, по формулам левой кусочно – постоянной интерполяции F(3.2)==0.5, по формулам правой кусочно – постоянной интерполяции F(3.2)= =0.8. Воспользуемся формулами кусочно–линейной интерполяции:

Кубический интерполяционный сплайн

Слово сплайн (английское слово «spline») означает гибкую линейку, используемую для проведения гладких кривых через заданные точки на плоскости. Форма этого универсального лекала на каждом отрезке описывается кубической параболой. Сплайны широко используются в инженерных приложениях, в частности, в компьютерной графике. Итак, на каждом i–м отрезке [xi–1, xi], i=1, 2,…, N, решение будем искать в виде полинома третьей степени:

Si(x)=ai+bi(x–xi)+ci(xxi)2/2+di(x–xi)3/6

Неизвестные коэффициенты ai, bi, ci, di, i=1, 2,…, N, находим из:

• условий интерполяции: Si(xi)=fi, i=1, 2,…, N; S1(x0)=f0,

• непрерывности функции Si(xi–1)=Si–1(xi–1), i=2, 3,…, N,

• непрерывности первой и второй производной:

S /i(xi–1)=S /i–1(xi–1), S //i(xi–1)=S //i–1(x i–1), i=2, 3,…, N.

Учитывая, что , для определения 4N неизвестных получаем систему 4N–2 уравнений:

ai=fi, i=1, 2,…, N,

bi hi – cihi2/2 + di hi3/6=fi – fi–1, i=1, 2,…, N,

bi – bi–1 = ci hi – di hi2/2, i=2, 3,…, N,

di hi = ci – ci–1 , i=2, 3,…, N.

где hi=xi – xi–1. Недостающие два уравнения выводятся из дополнительных условий: S //(a)=S //(b)=0. Можно показать, что при этом . Из системы можно исключить неизвестные bi , di , получив систему N+1 линейных уравнений (СЛАУ) для определения коэффициентов ci:

c0 =0, cN =0,

hici–1+2(hi+hi+1)ci+h i+1ci+1=6, i=1, 2,…, N–1. (1)

После этого вычисляются коэффициенты bi, di:

, i=1, 2,…, N. (2)

В случае постоянной сетки hi=h эта система уравнений упрощается.

Данная CЛАУ имеет трехдиагональную матрицу и решается методом прогонки.

Коэффициенты определяются из формул:

Для вычисления значения S(x) в произвольной точке отрезка z∈[a, b] необходимо решить систему уравнений на коэффициенты ci, i=1,2,…, N–1, затем найти все коэффициенты bi, di. Далее, необходимо определить, на какой интервал [xi0, xi0–1] попадает эта точка, и, зная номер i0, вычислить значение сплайна и его производных в точке z

S(z)=ai0 +bi0(z–xi0)+ci0(z–xi0)2/2+di0(z–x i0)3/6

S /(z)=bi0+ci0(z–xi0)+di0(z–x i0)2/2, S //(z)=ci0+di0(z–x i0).

Пример.

x0,f0

x1,f1

x2,f2

x3,f3

x4,f4

х

0

¼

1/2

3/4

1

f

1

2

1

0

1

Требуется вычислить значения функции в точках 0.25 и 0.8, используя сплайн – интерполяцию.

В нашем случае: hi=1/4, .

Выпишем систему уравнений для определения :

Решая эту систему линейных уравнений, получим: .

Рассмотрим точку 0.25, которая принадлежит первому отрезку, т.е. . Следовательно, получим,

Рассмотрим точку 0.8, которая принадлежит четвертому отрезку, т.е. .

Следовательно,

Глобальная интерполяция

В случае глобальной интерполяции отыскивается единый полином на всем интервале [a, b], т.е. строится полином, который используется для интерполяции функции f(x) на всем интервале изменения аргумента x. Будем искать интерполирующую функцию в виде полинома (многочлена) m–ой степени Pm(x)=a0+a1x+a2x2+a3x3+…+am xm. Какова должна быть степень многочлена, чтобы удовлетворить всем условиям интерполяции? Допустим, что заданы две точки: (x0, f0) и (x1, f1), т.е. N=1. Через эти точки можно провести единственную прямую, т.е. интерполирующей функцией будет полином первой степениP1(x)=a0+a1x. Через три точки (N=2) можно провести параболу P2(x)=a0+a1x+a2x2 и т.д. Рассуждая таким способом, можно предположить, что искомый полином должен иметь степень N .

Для того, чтобы доказать это, выпишем систему уравнений на коэффициенты. Уравнения системы представляют собой условия интерполяции в при каждом x=xi:

Данная система является линейной относительно искомых коэффициентов a0, a1, a2,…, aN. Известно, что СЛАУ имеет решение, если ее определитель отличен от нуля. Определитель данной системы

носит имя определителя Вандермонда. Из курса математического анализа известно, что он отличен от нуля, если xk xm (т.е. все узлы интерполяции различные). Таким образом, доказано, что система имеет решение.

Мы показали, что для нахождения коэффициентов
a0, a1, a2,…, aN надо решить СЛАУ, что является сложной задачей. Но есть другой способ построения полинома N–й степени, который не требует решения такой системы.

Полином Лагранжа

Решение ищем в виде , где li(z) базисные полиномы N–й степени, для которых выполняется условие: . Убедимся в том, что если такие полиномы построены, то LN(x) будет удовлетворять условиям интерполяции:

.

Каким образом построить базисные полиномы? Определим

, i=0, 1,…, N.

Легко понять, что

, и т.д.

Функция li(z) является полиномом N–й степени от z и для нее выполняются условия «базисности»:

=0, ik;, т. k=1,…,i-1 или k=i+1,…,N.

.

Таким образом, нам удалось решить задачу о построении интерполирующего полинома N– й степени, и для этого не нужно решать СЛАУ. Полином Лагранжа можно записать в виде компактной формулы: . Погрешность этой формулы можно оценить, если исходная функция g(x) имеет производные до N+1 порядка:

.

Из этой формулы следует, что погрешность метода зависит от свойств функции g(x), а также от расположения узлов интерполяции и точки z. Как показывают расчетные эксперименты, полином Лагранжа имеет малую погрешность при небольших значениях N<20. При бόльших N погрешность начинает расти, что свидетельствует о том, что метод Лагранжа не сходится (т.е. его погрешность не убывает с ростом N).

Рассмотрим частные случаи. Пусть N=1, т.е. заданы значения функции только в двух точках. Тогда базовые полиномы имеют вид:

, т.е. получаем формулы кусочно–линейной интерполяции.

Пусть N=2. Тогда:

В результате мы получили формулы так называемой квадратичной или параболической интерполяции.

Пример: Заданы значений некоторой функции:

x 0 2 3 3.5
f -1 0.2 0.5 0.8

Требуется найти значение функции при z=1, используя интерполяционный полином Лгранжа. Для этого случая N=3, т.е. полином Лагранжа имеет третий порядок. Вычислим значения базисных полиномов приz=1:

Подбор эмпирических формул

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

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

Для практики важен случай аппроксимации функции многочленами, т.е. .

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

Метод наименьших квадратов

Пусть для исходных данных xi, fi, i=1,…,N (нумерацию лучше начинать с единицы), выбран вид эмпирической зависимости: с неизвестными коэффициентами . Запишем сумму квадратов отклонений между вычисленными по эмпирической формуле и заданными опытными данными:

.

Параметры будем находить из условия минимума функции . В этом состоит метод наименьших квадратов (МНК).

Известно, что в точке минимума все частные производные от по равны нулю:

(1)

Рассмотрим применение МНК для частного случая, широко используемого на практике. В качестве эмпирической функции рассмотрим полином

.

Формула (1) для определения суммы квадратов отклонений примет вид:

(2)

Вычислим производные:

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

Данная система уравнений называется нормальной. Решая эту систему линейных уравнений, получаем коэффициенты .

В случае полинома первого порядка m=1, т.е. , система нормальных уравнений примет вид:

При m=2 имеем:

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

Пример. Заданы координаты точек:

x

-5

-3.5

-2

1.5

3.25

5

f

0.5

1.2

1.4

1.6

1.7

1.5

т.е. N=6. Требуется найти эмпирические зависимости: линейную , квадратичную , гиперболическую по методу МНК и выбрать среди них наилучшую по наименьшей сумме квадратов отклонений.

Система нормальных уравнений для линейной зависимости:

Учитывая, что N=6, , получим

Решая систему линейных уравнений, получим . Следовательно, линейная зависимость имеет вид: .

Вычислим сумму квадратов отклонений: .

Рассмотрим квадратичную зависимость. Система нормальных уравнений имеет вид

Найдем неподсчитанные суммы:

Решая СЛАУ, получим

Следовательно, квадратичная зависимость имеет вид: .

Вычислим сумму квадратов отклонений: .

Выпишем систему нормальных уравнений для гиперболической зависимости. Согласно МНК находим сумму квадратов отклонений:

. Составляем систему нормальных уравнений:

Или

Учитывая, что , получим

Сумма квадратов отклонений:

Из трех зависимостей выбираем наилучшую, т.е. квадратичную.

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

  • Экстраполяция — методы нахождения точек за пределами заданного интервала (продление кривой)
  • Аппроксимация — методы построения приближенных кривых

См. также

  • Интерполяционные формулы
  • Регрессия (математика)
  • Метод наименьших квадратов
  • Сглаживание данных эксперимента
  • Абстрагирование
  • Моделирование
  • Экстраполяция
  • Теорема Ока об аппроксимации
  • интерполяционный поиск , интерполирующий поиск ,

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

Если информации
о моделируемом объекте (процессе)
недостаточно или он настолько сложен
(имеет случайный характер), что невозможно
составить его детерминированную модель,
используют стохастические модели и
соответствующие экспериментально-статистические
методы.

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

Простейшим
случаем интерполяции является определение
вида функции f(x)
одной переменной, проходящей через
заданные точки (xi,
yi),
т.е. f(xi)=yi
,
i=1,…,N
(рис.19а).


y
y


x

x

а) б)

Рис.
19. Виды аппроксимации

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

1)
данные (xi,
yi)
сами по себе не могут определить
интерполянт, и для фиксированного набора
данных существует бесконечное множество
интерполянтов;

2)
интерполяция может быть полезна только
в том случае, если данные не содержат
ошибок, если же, например, yi
содержит погрешности, данные необходимо
аппроксимировать как-то по-другому.

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

В общем случае
задача аппроксимации данных решается
для нелинейной функции многих переменных.

Так
как в реальном процессе всегда существуют
неуправляемые и неконтролируемые
переменные, результат эксперимента
есть случайная величина. Пусть, например,
требуется исследовать зависимость
y(x1,
x2,…xm),
причем величины y
и Х={x1,
x2,…xm}
измеряются в одних и тех же экспериментах.
Будем считать, что погрешность измерения
величин xj
пренебрежимо мала по сравнению с
погрешностью измерения величины y,
т.е. величины xj
измеряются точно, в то время как измерение
величины y
содержит случайные погрешности. Таким
образом, результаты эксперимента можно
рассматривать как выборочные значения
случайной величины (X),
зависящей от X
, как от параметра.

Регрессией
называют зависимость

условного математического ожидания
величины (X)
от переменной X
, т.е.
.
Задача регрессионного анализа состоит
в этом случае в восстановлении
функциональной зависимости

по результатам измерений (Xi,
yi),
i=1,2,…,
N.
Аппроксимируем неизвестную зависимость

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


неизвестные параметры регрессии, i

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

как оценок теоретических (0=f(X0),
1=
f(X0)/
x1,…)
уравнение регрессии можно записать в
следующем общем виде [8]

,
(86)

где
b0
– свободный член уравнения регрессии;
bj
– линейные эффекты; bjj

квадратичные эффекты; bjk
— эффекты взаимодействия.

Коэффициенты
уравнения (86) определяются методом
наименьших квадратов из условия

,
(87)

где
N
– объем выборки.

Необходимым
условием минимума

является равенство нулю соответствующих
частных производных
,
,…
Тогда после преобразования получим

.
(88)

Система
(88) содержит столько же уравнений, сколько
неизвестных коэффициентов

входит в уравнение регрессии и называется
в математической статистике системой
нормальных уравнений
.
Для решения системы (52) необходимо задать
конкретный вид функции
.

Линейная
регрессия одного параметра.

Определим по методу наименьших квадратов
коэффициенты линейного уравнения
.
Тогда с учетом

и

для системы (3) можно записать

или
.
(89)

Решая
данную систему относительно

и
,
получим при помощи определителей
следующие выражения:

, .

Коэффициент

проще найти по известному

из первого уравнения системы (53)

, где


средние значения x
и y
().

Для
оценки силы линейной связи вычисляется
выборочный коэффициент корреляции r*

.
(89)

Чем
ближе r*
к единице, тем выше линейность зависимости
между x
и y.

Параболическая
регрессия одного параметра

определяется коэффициентами параболического
уравнения
.
Тогда для параболы второго порядка
система
нормальных уравнений (88) имеет вид


(90)

Аналогично
могут быть определены коэффициенты

для параболы любого порядка.

Трансцендентная
регрессия одного параметра

определяется коэффициентами уравнений
показательного
,
дробно-степенного типа

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

Пусть


и

Пусть


и

Коэффициенты

или

определяются методом наименьших
квадратов, значения которых используются
для нахождения
.

Для
оценки силы (тесноты) нелинейной связи
(проведения корреляционного
анализа
)
вычисляется корреляционное
отношение

,
(91)

где
f1=N1,
f2=Nl
– числа степеней свободы; l
– число связей, наложенных на выборку
(для уравнения регрессии это число
определяемых коэффициентов);


остаточная дисперсия;

— дисперсия относительно среднего.

Чем
больше ,
тем сильнее связь (01).
При =0
однозначное отсутствие связи между
случайными величинами возможно только
для нормального распределения. В случае
линейной регрессии (l=2)
корреляционное отношение равно
коэффициенту корреляции =|r*
|.

Множественная
регрессия

предполагает определение коэффициентов
(исследование корреляционной связи)
для многофакторного уравнения. Например,
для линейного случая уравнение
множественной регрессии имеет вид
.
Здесь, следовательно, требуется определить
не линию регрессии, а поверхность (m=2)
или гиперповерхность (m>2).

Статистический
анализ результатов (
регрессионный
анализ
)
проводится после определения уравнения
регрессии и включает: оценку адекватности
уравнения; проверку значимости всех
коэффициентов

в сравнении с ошибкой воспроизводимости;
расчет доверительных интервалов для
параметров модели

и выходной переменной
.

При
отсутствии параллельных опытов и,
следовательно, дисперсии воспроизводимости,
а также нормальном распределении
случайных величин yi
качество аппроксимации (адекватность)
можно оценить по критерию
Фишера


[4]. В данном случае он показывает, во
сколько раз уменьшается рассеяние
относительно полученного уравнения
регрессии по сравнению с рассеянием
относительно среднего. Чем больше
значение F
превышает табличное

для выбранного уровня вероятности
(значимости, надежности) p
(обычно
p=0.95)
и чисел
,
тем эффективнее уравнение регрессии.

При
одинаковом числе параллельных опытов
(каждый i
опыт с объемом выборки N
()
проводится U
раз
)
выборочные дисперсии

должны быть однородны. Последнее
выполняется если справедливо условие
Gmax<GpТАБ(N,U-1),
где GpТАБ(N,U1)
– табличное значение критерия
Кохнера

при уровне значимости p;

;



максимальное значение выборочной
дисперсии. Для однородных выборочных
дисперсий рассчитываются дисперсия
воспроизводимости

и дисперсия адекватности
,
которые необходимы для определения
критерия Фишера
.
Если расчетное значение меньше табличного
,
то уравнение адекватно.

Оценка
значимости коэффициентов уравнения
регрессии проводится по критерию
Стьюдента

,
где


h
коэффициент уравнения;


среднее квадратичное отклонение h-го
коэффициента. Если

больше табличного

для выбранного уровня значимости p
и степени свободы f=N(U–1),
то коэффициент

значимо отличается от нуля. Незначимые
коэффициенты из уравнения исключаются
с последующим пересчетом оставшихся.
Чтобы не проводить повторных расчетов
модели, при отбрасывании (включении)
отдельных факторов применяют регрессионные
уравнения в форме ортогональных полиномов
(ортогональные многочлены Чебышева)
[4, 8]. Для уравнения регрессии

, .

Определив

и табличные значения величины t
корня уравнения FN-2()=1–0.5,
функции распределения Стьюдента (t
– распределение) с N-2
степенями свободы можно найти доверительные
интервалы параметров модели

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

получим

для
параметров

и
:

,

,

где
0,
1

половина ширины доверительного интервала
для

и
;

для
определения концов доверительных
интервалов (доверительной полосы или
коридора) выходной переменной

при каждом конкретном значении

(доказано, что доверительный интервал
накрывает истинное значение

с вероятностью 1-):

;

для
определения доверительной области всей
линии регрессии соответственно нижней
(left)
и верхней (right)
границ полосы:

,

где


корень уравнения F2,N-2()=1–;
F2,N-2(x)
– функция распределения Фишера (F

распределение) с 2 и N–2
степенями свободы.

Использование
модели

за пределами исследуемого диапазона
не обосновано.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

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

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

Рис. 3.6 Метод Лагранжа

Концепция аппроксимации

Близость исходной и аппроксимирующей функций определяется числовой мерой

критерием аппроксимации (близости). Наибольшее распространение получил квадратичный критерий, равный сумме квадратов отклонений расчетных значений от «экспериментальных» (т.е. заданных), — критерий близости в заданных точках:

Здесь уi — заданные табличные значения функции; уiрасч — расчетные значения по аппроксимирующей функции; bi — весовые коэффициенты, учитывающие относительную важность i-и точки (увеличение b,. приводит при стремлении уменьшить R к уменьшению, прежде всего отклонения в iй точке, так как это отклонение искусственно увеличено за счет относительно большого значения весового коэффициента).

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

Другим распространенным критерием близости является следующий:

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

Выделяют две основные задачи:

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

2)    получение аппроксимирующей функции заданной структуры с наилучшей возможной погрешностью.

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

Метод наименьших квадратов

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

Запишем выражение критерия аппроксимации при bi =1 (i=1, 2,…, n) для полиномиального уiрасч (х):

Искомые переменные аj можно найти из необходимого условия минимума R по этим переменным, т.е. dR / dар = 0 (для р =0, 1,2,…,k). Продифференцируем по ар (р — текущий индекс):

После очевидных преобразований (сокращение на два, раскрытие скобок, изменение порядка суммирования) получим

Перепишем последние равенства

Получилась система n+1 уравнений с таким же количеством неизвестных аj, причем линейная относительно этих переменных. Эта система называется системой нормальных уравнений. Из ее решения находятся параметры аj аппроксимирующей функции, обеспечивающие minR, т.е. наилучшее возможное квадратичное приближение. Зная коэффициенты, можно (если нужно) вычислить и величину R (например, для сравнения различных аппроксимирующих функций). Следует помнить, что при изменении даже одного значения исходных данных (или пары значений хi, уi, или одного из них) все коэффициенты изменят в общем случае свои значения, так как они полностью определяются исходными данными. Поэтому при повторении аппроксимации с несколько изменившимися данными (например, вследствие погрешностей измерения, помех, влияния неучтенных факторов и т.п.) получится другая аппроксимирующая функция, отличающаяся коэффициентами. Обратим внимание на то, что коэффициенты аj полинома находятся из решения системы уравнений, т.е. они связаны между собой. Это приводит к тому, что если какой-то коэффициент вследствие его малости захочется отбросить, придется пересчитывать заново оставшиеся. Можно рассчитать количественные оценки тесноты связи коэффициентов. Существует специальная теория планирования экспериментов, которая

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

Рис. 3.7 Влияние степени аппроксимирующего полинома М на точность аппроксимации

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

Рассмотрим решение задачи аппроксимации и интерполяции с шумом в

программе MathCAD (рисунок 3.8).

Пример 3.1. В ходе проведения эксперимента были получены данные, представленные в таблице 3.1. Необходимо способом наименьших квадратов подобрать для заданных значений x и y квадратичную функцию . Построить на одной координатной плоскости экспериментальные данные и аппроксимирующую функцию.

Таблица 3.1 Данные эксперимента

х

80,5

77,0

70,8

56,7

39,7

29,9

у

281

272

259

224

186

170

Решение. Для определения коэффициентов  квадратичной функции построим дополнительную таблицу 3.2.

Таблица 3.2 Дополнительная таблица

1

80,5

6480,25

521660,13

41993640,0625

281

22620,5

1820950,25

2

77

5929

456533

35153041,0000

272

20944

1612688,00

3

70,8

5012,64

354894,91

25126559,7696

259

18337,2

1298273,76

4

56,7

3214,89

182284,26

10335517,7121

224

12700,8

720135,36

5

39,7

1576,09

62570,773

2484059,6881

186

7384,2

293152,74

6

29,9

894,01

26730,899

799253,8801

170

5083

151981,70

Σ

354,6

23106,88

1604673,972

115892072,1124

1392

87069,7

5897181,81

Строим систему уравнений

В нашем случае она будет иметь вид:

Из полученной системы уравнений находим

Искомая зависимость

Строим график экспериментальных данных и найденной зависимости.

Рис.3.8 Аппроксимация и интерполяция в задаче с помехами

Если требуется построить зависимость в виде показательной функции , то необходимо составить систему:

   (3.7)

Для этого строится таблица

1

n

Σ

Из системы 3.7 находим коэффициенты  и  (необходимо выразить ).

Если требуется построить зависимость в виде степенной функции , то составляется система:

   (3.8)

Для этого строится таблица

1

n

Σ

Из системы 3.8 находим коэффициенты  и  (необходимо выразить ).

Краткие сообщения

УДК 517.977.58 DOI: 10.14529/ctcr210314

ИССЛЕДОВАНИЕ ПАРАМЕТРОВ ЗАДАЧИ СПЛАЙНОВОЙ АППРОКСИМАЦИИ ЗАШУМЛЕННЫХ ДАННЫХ ЧИСЛЕННЫМИ МЕТОДАМИ ОПТИМАЛЬНОГО УПРАВЛЕНИЯ

И.П. Болодурина, Л.С. Гришина, Л.Ф. Анциферова

Оренбургский государственный университет, г. Оренбург, Россия

В настоящее время проблемы искажения данных измерений шумом и появления неопределенностей в критериях качества послужили причиной повышенного интереса к исследованиям в области сплайновой аппроксимации. При этом существующие методы минимизации эмпирического риска, предполагая, что шум является равномерным распределением с более тяжелыми хвостами, чем гауссов, ограничивают области применения данных исследований. Проблема оценки искаженных шумом данных, как правило, основывается на решении оптимизационной задачи с функцией, содержащей неопределенность, возникающей на основе задачи поиска оптимальных параметров. В связи с этим оценка искаженных шумов не может быть разрешена классическими методами. Цель исследования. Данное исследование направлено на решение и анализ задачи сплайновой аппроксимации данных в условиях неопределённости на основе параметризации управления и алгоритма проекции градиента. Методы. Исследование задачи сплайновой аппроксимации зашумленных данных проведено методом приближения кусочно-постоянной функции управления. При этом параметризация управления возможна только при конечном числе точек разрыва первого рода. В рамках экспериментального исследования применен алгоритм метода проекции градиента для численного решения задачи сплайновой аппроксимации. Предложенные методы применены для исследования параметров задачи сплайновой аппроксимации данных в условиях неопределённости. Результаты. Численное исследование подхода к параметризации управления и алгоритма проекции градиента проведено на основе разработанного программно-алгоритмического средства для решения задачи сплайновой модели аппроксимации в условиях неопределенности. Для оценки искаженных шумом данных проведены численные эксперименты по исследованию параметров модели и установлено, что повышение значения параметра а ведёт к увеличению точности, но к потере гладкости. Кроме того, проведенный анализ показал, что рассмотренные законы распределения не изменили точность и скорость сходимости алгоритма. Заключение. Предложенный подход для решения задачи сплайновой аппроксимации в условиях неопределенности позволяет определить проблемы искажения данных измерений шумом и появления неопределенностей в критериях качества. Исследование параметров модели показало, что построенная система устойчива к ошибке начального приближения, а законы распределения не оказывают существенного влияния на точность и сходимость метода проекции градиента.

Ключевые слова: цитирования, наукометрические методы, агрегирование библиографической информации, модификация метода Winnowing, метод Левенштейна, метод шинглов.

Введение

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

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

Основные недостатки исправляет теория сплайнов, в связи с этим рассмотрение вопросов применения сплайнов в различных областях является актуальным вопросом.

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

1. Обзор исследований

Исследованиями и разработкой методов аппроксимации сплайн-функций с целью моделирования взаимосвязи между целевым откликом и несколькими переменными предикторами занимаются по всему миру.

Сплайн широко используется в обработке сигналов, дискретных вычислениях, статистике и, в частности, сплайн сглаживания позволят получить гладкую кривую, которая наилучшим образом подходит для аппроксимации данных с шумом [1, 2]. Теоретический сглаживающий сплайн в работе [3] является обобщением сглаживающего сплайна с использованием новых подходов управления, с помощью которых кривая сплайна определяется выходом линейной динамической системы.

В исследовании [4] показано, что управляющие теоретические сплайны относительно полиномиальных позволяют построить более широкий набор сглаживающих кривых. Кроме того, теоретический сплайн управления доказал свою полезность для планирования траектории мобильных роботов [5], контурного моделирования изображений [6], оценки распределения вероятностей [7] и других. Дополнительные приложения и наиболее обширные сведения о теории управления сплайнами представлены в исследовании [8].

Традиционный вид теоретических сплайнов управления основан на оптимизации ¿2 и имеет два основных недостатка. Во-первых, данный подход требует количество параметров, равное размерности данных, чтобы представить подобранную кривую.

Оператор наименьшей абсолютной усадки и выбора LASSO представлен в работах [9, 10]. Методы минимизации эмпирического риска, предполагая, что шум является равномерным распределением, представлены в исследовании [11]. Затем проблема описывается в выпуклой оптимизации, которая может быть эффективно решена с помощью численных методов.

В исследовании [12] рассматривается подход к решению задачи ОУ с априорными знаниями и предположениями о распределении шума на входных данных. Данную проблему оценки параметров авторы сформулировали в виде стохастической задачи выбора оптимального параметра.

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

Данная работа направлена на исследование задачи сплайновой аппроксимации данных в условиях неопределённости на основе параметризации управления и алгоритма метода проекции градиента.

2. Постановка задачи сплайновой аппроксимации данных

Рассмотрим задачу сплайновой аппроксимации данных, если входные данные представляют собой зафиксированные значения функции в конкретные моменты времени с применением метода интерполяции сплайнами [13].

Пусть D = (ti,аг-):i = 1,…, nj — набор данных в момент времени ti и значением аг-, а

F = {f е C2 [0,Г]| f (ti ) = ai} — множество дважды непрерывно дифференцируемых функций, которые интерполируют данные.

Рассмотрим задачу сплайновой аппроксимации данных:

T N

Ju (t)2 dt + Х^(у (t, ))2 , (1)

[о,г ] о ,=1

= Ах ^) + Ви ), (2)

х ( 0 ) = хо, (3)

У(0 = Сх(^). (4)

Пусть / : [0,Т] ^ Е» — функция, которую необходимо аппроксимировать. После проведения эксперимента данные измерений /при …, могут отличаться от реальных значений из-за шума или погрешности измерения. Тогда значения измерений в каждый момент времени имеют вид Р, = /(4 ) + <, / = 1, …, N. (5)

где si =

■ случайные отклонения, генерируемые наложенным шумом и соответствующей

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

N ■ „2 T

g(хо, и)=&|| у (^ )-Р,|| +[|Iй (‘I (6)

1=1 о

где wг, г = 1,…, N — весовые коэффициенты, X — константа для регулирования гладкости кривой аппроксимации х ((| хо, и) , || . || — Евклидова норма.

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

Таким образом, задача состоит в отыскании начального условия Хо е X и управляющей функции и(t)еи для целевого функционала

О ( Хо, и ) = аМ{я ( Хо, и)) + (1 -а)Уаг ^ ( Хо, и)), (7)

минимизируемого по Хо е X и и(t)еи, где М{.} — математическое ожидание, Уаг {.} — дисперсия, а а е [о,1] — весовой коэффициент.

Функцию О (Хо,и) можно преобразовать в детерминированную и задача ОУ будет иметь вид:

N N N Т 2

О(Хо,и) = а{^г(у (^))т у (^)-2^,(у(^))т М{р, } + М{(Рг)тРг} + Х|||иА) +

,=1 ,=1 i=1

N N I N

+(1 -«){4ZZ( y () )т Cov {(Р, )т Р/} y ()+Var (Р, )т р,

i=1 /=1 l i =1

-4Xl1mCov {(Р, )2,Р/} y (t[)}, (8)

г=11=1

где и ^) :[о,Т] ^ и — функция управления, где и — компактное выпуклое множество в Ег, у ^)е Е» — результирующая функция, а Хо е X — неизвестное начальное состояние, где X является компактным подмножеством Е .

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

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

s

s

Болодурина И.П., Гришина Л.С., Исследование параметров задачи сплайновой

Анциферова Л.Ф. аппроксимации зашумленных данных…

3. Методы решения задачи сплайновой аппроксимации данных

Для численного решения задачи (2)-(4), (8) представим управление кусочно-постоянной функцией с конечным числом переключений методом параметризации управления.

Для каждого i = 1,…, N +1 разобьем интервал ti] на р, подинтервалов, а граничные

точки обозначим как х’у, где у = 1, …, pi _1. Последовательность

горизонта, а хм 1

N+1 i = 1

г1 ^ +1

Г1, 1 PN+1 _1

хУ_1 ,хУ |, i=1, …, N+1; у = 1,…, р1 называется разделом временного е Вм_1 — вектором допустимого времени переключения при

м = У р, .

i = 1

Для некоторого управления и(t)еи определим конечномерное приближение

N+1 р,

КО*им ^)=ЦуЦуХг, ^(0,tе[0Т], (9)

,=1 ,=1 Iх у_1 7

— у=

,_1

р/ +

/=1

где С’у = УрI + у — метка подинтервала, у’ = у1,…, у’г е Rr, у’ еи, I = 1,…, г — допустимый

вектор управления и % 1 ^) — индикаторная функция вида 1, если t е I, [0, иначе.

При подстановке приближения (9) в уравнение (2) получим систему, которая определена на

%1 ^ )={0;

подинтервале

хУ_1 , хУ):

= Ах ^ ) + Ву , (10)

у^) = Сх (t). (11)

Детерминированная задача выбора оптимального параметра

Для динамической системы (10)—(11) найти Хо еX и уе Г, соответствующие минимуму функции:

Г N N N Т 2

х0,и) = а Ущ (у (t;))т у (^ ) _ 2У щ,- (у (t;))т М{Р, 1 + У щ,.М {(Р,)тР, 1 + X Г||и (t)|| Л} +

( Х0, и) = аУщ, (у (^) )т у (^ )_ 2Ущ’ (у (^) )т М {Р, } + Ущ М {(Р, )т Р, } + х|| |и Л}-

I’=1 ‘=1 ‘=1 0

NN . , Г N ]

+ (1 _а){4уу( у (и) )т Соу {(Р, )т Р1} у (^ ) + Varу>щ (Р, )т р, 1_

,=11=1 [,=1 ]

N N ]

_ 4УУГС^ {(р, )2, Р1} у (^ )1 (12)

Метод проекции градиента

Для решения поставленной задачи (12) в рамках данной работы рассмотрен алгоритм метода проекции градиента [14, 15], основная идея которого состоит в поиске экстремума функции в направлении антиградиента функции. В данной работе антиградиент функции сформирован таким образом, чтобы выполнялось свойство допустимости значений траектории движения.

4. Вычислительные эксперименты

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

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

Для проведения численных экспериментов были зафиксированы следующие параметры задачи: А = 1,8, В = о,2, С = 2, q = 10 000, хо =-о,5, и = о,5, М(р,) = -о,528,

Уаг (р, ) = 3,4483, а = о,5, рг = 1оо.

Исходные данные содержат 1о6 измерений, имеющие нормальный закон распределения, и с наложенным шумом в виде функции / (t) :

-0,2074х2 + о,5584х — о,2321, ift е[0;0,5713],

/ (^ = <|о,02х3 — о,224х2 + о,562х — о,2323, ift е [0,5713;7,8013], (13)

о,2815х2 -3,7729х +12,137, ift е [7,8013;10].

Отметим, что погрешности полученных значений тах(у (^)- С * /(^ )) = 0,074,

тах (х ) — / (^ )) = 0,037 первого порядка и соответствуют устойчивой модели с достаточно высокой точностью.

Проведём исследование влияния параметра весового коэффициента а между математическим ожиданием и дисперсией исходной функции при следующих значениях а = 0,2; 0,5; 0,7 (рис. 1, 2).

Рис. 1. Траектория x(t) и управление u(t) при различных значениях весового коэффициента а Fig. 1. Trajectory x(t) and control u(t) at different values of the weight coefficient а

Рис. 2. Траектория y(t) при различных значениях весового коэффициента а Fig. 2. Trajectory y(t) at different values of the weight coefficient а

Болодурина И.П., Гришина Л.С., Исследование параметров задачи сплайновой

Анциферова Л.Ф. аппроксимации зашумленных данных…

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

Таблица 1

Результаты исследования параметра а

Table 1

Results of the study of the parameter а

а _ 0,2 0 5 _ 0,8

J 34,02 1,2 0,34

Count 11 235 13 101 12 540

IU x ( h )-f (t,)) N 0,068 0,037 0,021

zNx( > (t,)-f (t/)) N 0,079 0,044 0,027

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

снижается, а точность решения значительно увеличивается.

На основании полученных результатов можно сделать вывод о том, что при а = 0,5 решение задачи соответствует достаточно высокой точности и не имеет больших потерь в гладкости функций.

Исследование влияния закона распределения шумов

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

Нормальный закон распределения шумов:

(*i -ц)

Р/ =( ti ) + -7S=

—V 2 л

2—2

1 2— ^, / = 1,…, N, ц = 5, a2 = 0,0001. (14)

Равномерный закон распределения шумов:

Р, = f (ti) +

0, ti < a,

t■ — а

-*3, а < ti <Ь, i = 1,…, И, а = 0, Ь = 10. (15)

Ь — а

0, ^ > ь.

Экспоненциальный закон распределения шумов:

Г0, t¡ < 0,

Р, = /(tiН, Л i = 1,И, Х = 3. (16)

[1 — е ‘, ti > 0,

На рис. 3, 4 представлены графики х(0 и и(^), полученные при наложении шумов с разными законами распределения.

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

Траектори и xft) Траектории u(t)

Рис. 3. Траектория x(t) и управление u(t) при различных законах распределения шумов Fig. 3. Trajectory x(t) and control u(t) under different noise distribution laws

Траектории y(t)

4————-

5J———-

0 123J 567в9Ю

Рис. 4. Траектория y(t) при различных законах распределения шумов Fig. 4. Trajectory y(t) under different noise distribution laws

Таблица 2

Результаты анализа изменения закона распределения шумов

Table 2

Results of the analysis of changes in the noise distribution law

Закон распределения Экспоненциальный Нормальный Равномерный

J 0,61 0,58 0,563

Count 12 351 11 927 11 468

I N=1( — (t,)-f (t)) N 0,031 0,024 0,021

I N=1( у (t,)-f (t,)) N 0,06 0,049 0,044

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

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

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

Заключение

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

С использованием численного метода проекции градиента разработано программное обеспечение для решения задачи сплайновой аппроксимации на зашумленных данных.

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

Исследование выполнено при финансовой поддержке РФФИ в рамках научного проекта № 20-07-01065, а также гранта Президента Российской Федерации для государственной поддержки ведущих научных школ Российской Федерации (НШ-2502.2020.9).

Литература

1. Lai, M.J. Scattered data interpolation with nonnegative preservation using bivariate splmes and its apphcation /M.J. Lai, C. Meile // Computer Aided Geometric Design. — 2015. — Vol. 34. — P. 37-49. DOI: 10.1016/j.cagd.2015.02.004

2. A comparative study on apphcation of Chebyshev and spline methods for geometrically non-hnear analysis of truss structures / S.H. Mahdavi, H.A. Razak, S. Shojaee, M.S. Mahdavi // International Journal of Mechanical Sciences. — 2015. — Vol. 101. — P. 241-251. DOI: 10.1016/j.ijmecsci.2015.08.001

3. Inversion of top of atmospheric reflectance values by conic multivariate adaptive regression splmes / S. Kuter, G.W. Weber, Z. Akyurek, A. Ozmen // Inverse Problems in Science and Engineering. -2015. — Vol. 23, iss. 4. — P. 651-669. DOI: 10.1080/17415977.2014.933828

4. Agwu, N.N. Optimal control of dynamic systems: apphcation to splme approximations / N.N. Agwu, C.F. Martin // ApphedMathematics and Computation. — 1998. — Vol. 97, iss. 2. — P. 99-138. DOI: 10.1016/S0096-3003(97)10101 -1

5. Burt, P.J. A multiresolution sphne with apphcation to mage mosaics / P.J. Burt, E.H. Adelson // ACM Transactions on Graphics. — 1983. — Vol. 2, iss. 4. — P. 217-236. DOI: 10.1145/245.247

6. A Distributionally robust hnear receiver design for multi-access space-time block coded MIMO systems / B. Li, Y. Rong, J. Sun, K.L. Teo //IEEE Transactions on Wireless Communications. — 2016. -Vol. 16, iss. 1. — P. 464-474. DOI: 10.1109/TWC.2016.2625246

7. Some characterizations of robust optimal solutions for uncertain fractional optimization and applications / X.K. Sun, X.J. Long, H.Y. Fu, X.B. Li // Journal of Industrial & Management Optimization. -2017. — Vol. 13, iss. 2. — pp. 803-824. DOI: 10.3934/jimo.2016047

8. Wang, J. Data-driven tight frame for multi-channel images and its application to joint color-depth image reconstruction / J. Wang, J.F. Cai // Journal of the Operations Research Society of China. -2015. — Vol. 3. — P. 99-115. DOI: 10.1007/s40305-015-0074-2

9. Yan, H.Y. A linear-quadratic control problem of uncertain discrete-time switched systems / H.Y. Yan, Y. Sun, Y.G. Zhu // Journal of Industrial & Management Optimization. — 2017. — Vol. 13, iss. 1. — P. 267-282. DOI: 10.3934/jimo.2016016

10. A sequential regression model for big data with attributive explanatory variables / Q.T. Zhang, Y. Liu, W. Zhou, Z. W. Yang // Journal of the Operations Research Society of China. — 2015. — Vol. 3. -P. 475-488. DOI: 10.1007/s40305-015-0109-8

11. Friedman, J.H. Multivariate adaptive regression splines / J.H. Friedman // The Annals of Statistics. — 1991. — Vol. 19, iss. 1. — P. 1-141. DOI: 10.1214/aos/1176347963

12. Taylan, P. New approaches to regression by generalized additive models and continuous optimization for modern applications in finance, science and technology / P. Taylan, G.W. Weber, A. Beck // Optimization — 2007. — Vol. 56, iss. 6. — P. 675-698. DOI: 10.1080/02331930701618740

13. Исаков, В.Н. Оптимальная регулярная локальная сплайновая интерполяция сигналов / В.Н. Исаков // Вестник Концерна ВКО Алмаз-Антей. — 2016. — Т. 19, № 4. — С. 24-31. DOI: 10.38013/2542-0542-2016-4-24-31

14. Новиков, М. Ю. Конечномерная оптимизация. Алгоритм метода проекции градиента / М.Ю. Новиков // Устойчивое развитие российских регионов: экономическая политика в условиях внешних и внутренних шоков: сб. науч. тр. — Екатеринбург: УрФУ, 2015. — С. 781-785.

15. Голубев, М.О. Метод проекции градиента для сильно выпуклого множества /М.О. Голубев // Известия Саратовского университета. Серия Математика. Механика. Информатика. -2013. — № 13 (2). — С. 33-38.

Болодурина Ирина Павловна, д-р техн. наук, профессор, заведующий кафедрой прикладной математики, Оренбургский государственный университет, г. Оренбург; prmat@mail.osu.ru.

Гришина Любовь Сергеевна, аспирант кафедры прикладной математики, Оренбургский государственный университет, г. Оренбург; grishina_ls@inbox.ru.

Анциферова Лариса Михайловна, канд. пед. наук, доцент кафедры прикладной математики, Оренбургский государственный университет, г. Оренбург; antsiferova_68@mail.ru.

Поступила в редакцию 21 июня 2021 г

DOI: 10.14529/ctcr210314

INVESTIGATION OF PARAMETERS OF THE PROBLEM OF SPLINE APPROXIMATION OF NOISY DATA BY NUMERICAL METHODS OF OPTIMAL CONTROL

I.P. Bolodurina, prmat@mail.osu.ru, L.S. Grishina, grishina_ls@inbox.ru, L.M. Antsiferova, antsiferova_68@mail.ru Orenburg State University, Orenburg, Russian Federation

Currently, the problems of distortion of measurement data by noise and the appearance of uncertainties in quality criteria have caused increased interest in research in the field of spline approximation. At the same time, existing methods of minimizing empirical risk, assuming that the noise is a uniform distribution with heavier tails than Gaussian, limit the scope of application of these studies. The problem of estimating noise-distorted data is usually based on solving an optimization problem with a function containing uncertainty arising from the problem of finding optimal parameters. In this regard, the estimation of distorted noise cannot be solved by classical methods. Aim. This study is aimed at solving and analyzing the problem of spline approximation

of data under uncertainty conditions based on the parametrization of control and the gradient projection algorithm. Methods. The study of the problem of spline approximation of noisy data is carried out by the method of approximation of the piecewise constant control function. In this case, parametrization of the control is possible only for a finite number of break points of the first kind. In the framework of the experimental study, the gradient projection algorithm is used for the numerical solution of the spline approximation problem. The proposed methods are used to study the parameters of the problem of spline approximation of data under conditions of uncertainty. Results. The numerical study of the control parametrization approach and the gradient projection algorithm is based on the developed software and algorithmic tool for solving the problem of the spline approximation model under uncertainty. To evaluate the noise-distorted data, numerical experiments were conducted to study the model parameters and it was found that increasing the value of the parameter a leads to an increase in accuracy, but a loss of smoothness. In addition, the analysis showed that the considered distribution laws did not change the accuracy and convergence rate of the algorithm. Conclusion. The proposed approach for solving the problem of spline approximation under uncertainty conditions allows us to determine the problems of distortion of measurement data by noise and the appearance of uncertainties in the quality criteria. The study of the model parameters showed that the constructed system is stable to the error of the initial approximation, and the distribution laws do not significantly affect the accuracy and convergence of the gradient projection method.

Keywords: citation system, scientometric methods, aggregation of bibliographic information, modification of the Winnowing method, Levenshtein method, shingle method.

References

1. Lai M.J., Meile C. Scattered data interpolation with nonnegative preservation using bivariate splines and its application Computer Aided Geometric Design, 2015, vol. 34, pp. 37-49. DOI: 10.1016/j.cagd.2015.02.004

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

2. Mahdavi S.H., Razak H.A., Shojaee S., Mahdavi M.S. A comparative study on application of Chebyshev and spline methods for geometrically non-linear analysis of truss structures International Journal of Mechanical Sciences, 2015, vol. 101, pp. 241-251. DOI: 10.1016/j.ijmecsci.2015.08.001

3. Kuter S., Weber G.W., Akyurek Z., Ozmen A. Inversion of top of atmospheric reflectance values by conic multivariate adaptive regression splines Inverse Problems in Science and Engineering, 2015, vol. 23, iss. 4, pp. 651-669. DOI: 10.1080/17415977.2014.933828

4. Agwu N.N., Martin C.F. Optimal control of dynamic systems: application to spline approximations Applied Mathematics and Computation, 1998, vol. 97, iss. 2, pp. 99-138. DOI: 10.1016/S0096-3003(97)10101-1

5. Burt P.J., Adelson E.H. A multiresolution spline with application to image mosaics ACM Transactions on Graphics, 1983, vol. 2, iss. 4, pp. 217-236. DOI: 10.1145/245.247

6. Li B., Rong Y., Sun J., Teo K.L. A Distributionally robust linear receiver design for multi-access space-time block coded MIMO systems IEEE Transactions on Wireless Communications, 2016, vol. 16, iss. 1, pp. 464-474. DOI: 10.1109/ TWC.2016.2625246

7. Sun X.K., Long X.J., Fu H.Y., Li X.B. Some characterizations of robust optimal solutions for uncertain fractional optimization and applications Journal of Industrial & Management Optimization, 2017, vol. 13, iss. 2, pp. 803-824. DOI: 10.3934/ jimo.2016047

8. Wang J., Cai J.F. Data-driven tight frame for multi-channel images and its application to joint color-depth image reconstruction Journal of the Operations Research Society of China, 2015, vol. 3, pp. 99-115. DOI: 10.1007/s40305-015-0074-2

9. Yan H.Y., Sun Y., Zhu Y.G. A linear-quadratic control problem of uncertain discrete-time switched systems Journal of Industrial & Management Optimization, 2017, vol. 13, iss. 1, pp. 267-282. DOI: 10.3934/jimo.2016016

10. Zhang Q.T., Liu Y., Zhou W., Yang Z.W. A sequential regression model for big data with attributive explanatory variables Journal of the Operations Research Society of China, 2015, vol. 3, pp. 475-488. DOI: 10.1007/s40305-015-0109-8

11. Friedman J.H. Multivariate adaptive regression splines The Annals of Statistics, 1991, vol. 19, iss. 1, pp. 1-141. DOI: 10.1214/aos/ 1176347963

12. Taylan P., Weber G.W., Beck A. New approaches to regression by generalized additive models and continuous optimization for modern applications in finance, science and technology Optimization, 2007, vol. 56, iss. 6, pp. 675-698. DOI: 10.1080/02331930701618740

13. Isakov V.N. [Optimal regular local spline signal interpolation]. Bulletin of Koncern VKO Almaz-Antey, 2016, vol. 19, no. 4. — pp. 24-31. (in Russ.)

14. Novikov M.Yu. [Finite-dimensional optimization. Algorithm of the gradient projection method ]. Ustoychivoye razvitiye rossiyskikh regionov: ekonomicheskaya politika v usloviyakh vneshnikh i vnut-rennikh shokov: sb. nauch. tr. [Sustainable development of Russian Regions: Economic Policy in the conditions of external and internal shocks: collection of scientific papers], Yekaterinburg: Ural Federal University Publ., 2015, pp. 781-785. (in Russ.)

15. Golubev M.O. [The gradient projection method for a strongly convex set]. Izvestiya Saratov-skogo universiteta. SeriyaMatematika. Mekhanika. Informatika, 2013, vol. 13, no. 2, pp. 33-38. (in Russ.)

Received 21 June 2021

ОБРАЗЕЦ ЦИТИРОВАНИЯ

FOR CITATION

Болодурина, И.П. Исследование параметров задачи сплайновой аппроксимации зашумленных данных численными методами оптимального управления / И.П. Болодурина, Л.С. Гришина, Л.Ф. Анциферова // Вестник ЮУрГУ. Серия «Компьютерные технологии, управление, радиоэлектроника». — 2021. — Т. 21, № 3. —

С. 138-148. DOI: 10.14529/ctcr210314

Bolodurina I.P., Grishina L.S., Antsiferova L.M. Investigation of Parameters of the Problem of Spline Approximation of Noisy Data by Numerical Methods of Optimal Control. Bulletin of the South Ural State University. Ser. Computer Technologies, Automatic Control, Radio Electronics, 2021, vol. 21, no. 3, pp. 138-148. (in Russ.) DOI: 10.14529/ctcr210314

Построить аппроксимацию входных данных с учётом их погрешностей

04.03.2021, 02:16. Показов 723. Ответов 9


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

Пример такого набора , а так же график (рис.1), который, возможно, прояснит ситуацию лучше:

Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
clear
clc
 
%Задаём
func = @(x) (150.*x + 20);
x = [0:1:5]';
y = func(x);
 
%Зашумляем
to_approx_x = x + (rand([size(x, 1), 1]).*(0.7 + 0.2)) + (-0.2);
to_approx_y = y + ((rand([size(y, 1), 1]).*(50 + 14)) + (-14)).*rand([size(y, 1), 1]).*5;
 
%Задаём вектор "измернной погрешности"
sigma_x = abs((rand([size(x, 1), 1]).*(0.7 + 0.2)) + (-0.2));
sigma_y = abs((rand([size(y, 1), 1]).*(50 + 14)) + (-14)).*5;
 
%Демонстрируем, что имеем с "эксперимента": 
figure
hold on
err = errorbar(to_approx_x, to_approx_y, -sigma_y, sigma_y, -sigma_x, sigma_x, '.');
h = plot(to_approx_x, to_approx_y, 'r.');
grid on
 
xlabel ('Ось данных х');
ylabel ('Ось данных y');

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

Итак, после того, как описаны начальные условия задачи, переходим к сути вопроса.
Необходимо построить аппроксимацию данных с учётом их погрешностей.
То есть, например, известно, что данные в теории ложатся на кривую, описываемую функцией: f(x) = a/x + b. Или, например, строится калибровочная кривая при помощи полинома (рис.2). Все эти построения производятся с помощью аппроксимации заданного набора какой-то заданной функцией.

Лично я делаю это в cftool. Но, к сожалению, он делает это по МНК. А в этот метод никак (как я смог понять) нельзя передать погрешности измерений, только измерения. При этом манящий раздел параметров weights — всего лишь возможность после первой аппроксимации минимизировать сумму вида:

https://www.cyberforum.ru/cgi-bin/latex.cgi?sum (W(i) * (y(i) - y_{fit}(i))^2)

Загнав во второй проход в графу weights вектор W.
(источник: https://www.mathworks.com/supp… ion&page=1)

То есть никакого обозримого учёта погрешности исходных данных нет, что влияет на выдаваемую матлабом погрешность вычисления параметров a и b или погрешность определённых по калибровочной кривой данных.

Соответственно, стоит вопрос — как учесть погрешность исходных данных при построении аппроксимационной модели?

И теперь коротко для тех, кто потерялся:
1. Есть данные x, y определённые с погрешностью.
2. Нужно построить аппроксимацию какой-то заданной функцией f(x) этих y и х.
3. Как при аппроксимации учесть погрешность исходных данных?

P.S.: Если это делается какой-то одной командой или чем-то красивым, как cftool, то будет вообще здорово

Миниатюры

Построить аппроксимацию входных данных с учётом их погрешностей
 

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь



0



Полиномиальная аппроксимация непрерывной на отрезке функции.

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

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

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

Поэтому важно считывать, насколько существенны и чем обусловлены отклонения конкретных значений от получаемого тренда. При описании зависимости эмпирически определенных значений можно добиться и гораздо большей точности, используя какое-либо более сложное, много параметрическое уравнение. Однако нет никакого смысла стремиться с максимальной точностью передать случайные отклонения величин в конкретных рядах эмпирических данных. Гораздо важнее уловить общую закономерность, которая в данном случае наиболее логично и с приемлемой точностью выражается именно двухпараметрическим уравнением степенной функции. Таким образом, выбирая метод аппроксимации, исследователь всегда идет на компромисс: решает, в какой степени в данном случае целесообразно и уместно «пожертвовать» деталями и, соответственно, насколько обобщенно следует выразить зависимость сопоставляемых переменных. Наряду с выявлением закономерностей, замаскированных случайными отклонениями эмпирических данных от общей закономерности, аппроксимация позволяет также решать много других важных задач: формализовать найденную зависимость; найти неизвестные значения зависимой переменной путем интерполяции или, если это допустимо, экстраполяции.

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

Наиболее популярным методом полиномиальной аппроксимации является метод наименьших квадратов. В Excel он реализуется при помощи диаграммы и линии тренда.

Разберем данный метод в Excel.

Начальные данные:

Сначала нам необходимо разбить данный отрезок при помощи «Чебышевского» разбиения, т.к. данный вид разбиения всегда дает более точный результат.

В колонке I(рис. 1) записываем числа от 0 до 8, т.к. отрезок разбиваем на 8 частей.

В колонке z ячейки вычисляем по формуле: COS(3,141593*I/8). Для вычисления каждой ячейки используем соответствующее ей I.

Значение каждого x находим по формуле: 2*z + 1.

В колонке F(x) вычисляем значение данной функции для каждого x.


Рисунок 1


Далее в ячейках H2,I2,J2 задаем начальные значения коэффициентов a, b и c в искомом полиноме (рис. 2).


Рисунок 2


В столбце F со 2 по 10 ячейки вычисляем значения отклонений, т.е. модуль разности между значением начальной функции и найденным полиномом.

Формула: ABS((1+x^2)^0,5+2^(-x)-($H$2*x^2+$I$2*x+$J$2)).

В ячейке B11 вычисляется сумма отклонений, а в ячейке B12 среднее отклонение (рис. 3).


Рисунок 3


С помощью «Мастера диаграмм» строим точечную диаграмму, исходя из данных столбцов x и F(x). Теперь во вкладке «Диаграмма» выбираем «Добавить линию тренда» и устанавливаем необходимый флажок для того, чтобы показать уравнение на диаграмме (рис. 4).


Рисунок 4


Теперь подставляем коэффициенты из полученного уравнения в ячейки H2, I2 и J2 (рис. 5).


Рисунок 5


Как видно, среднее отклонение равно 0,117006252.

Найденный полином: 0,363*x² — 0,6901*x + 2,2203.

Предложим иной метод полиномиальной аппроксимации.

Открываем вкладку «Сервис» и выбираем «Поиск решений». В появившемся окне целевой ячейкой указываем F11, причем равной минимальному значению. В поле «изменяя ячейки» указываем H2, I2 и J2.

Нажимаем кнопку «Выполнить». После выполнения процедуры мы видим, что результаты изменились (рис. 6).


Рисунок 6


На этот раз среднее отклонение равно 0,106084329.

Найденный полином: 0,35724*x² — 0,702*x + 2,259158.

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

ЗАВИСИМОСТЕЙ

Excel
располагает средствами, позволяющими прогнозировать процессы. Задача
аппроксимации возникает в случае необходимости аналитически описать явления,
имеющие место в жизни и заданные в виде таблиц, содержащих значения аргумента
(аргументов) и функции. Если зависимость удается найти, можно сделать прогноз о
поведении исследуемой системы в будущем и, возможно, выбрать оптимальное
направление ее развития. Такая аналитическая функция (называемая еще трендом)
может иметь разный вид и разный уровень сложности в зависимости от сложности
системы и желаемой точности представления.

10.1. Линейная регрессия

Самый
простой и популярной является аппроксимация прямой линией – линейная регрессия.

Пусть мы
имеем фактическую информацию об уровнях прибыли Y в зависимости от размера X
капиталовложений – Y(X). На рис. 10.1-1 показаны четыре такие точки М(Y,X).
Пусть также у нас имеются основания предполагать, что зависимость эта линейная,
т.е. имеет вид Y=А+ВX.
Если бы нам удалось найти коэффициенты A и B и
по ним построить прямую (например, такую, как на рисунке), в дальнейшем мы
могли бы сделать осознанные предположения о динамике бизнеса и возможном
коммерческом состоянии предприятия в будущем. Очевидно, что нас бы устроила
прямая, находящаяся как можно ближе к известным точкам М(Y,X), т.е. имеющая
минимальную сумму отклонений или сумму ошибок (на рисунке отклонения показаны
пунктирными линиями). Известно, что существует только одна такая прямая.

Для решения этой задачи используют метод наименьших
квадратов ошибок. Разность (ошибка) между известным значением Y1 точки М1(Y1,X1) и значением Y(X1), вычисленным по уравнению прямой для того же
значения X1, составит

D1 = Y1 – A – B X1.

Такая же разность

для X=X2 составит D2 = Y2 – A – B X2;

для X=X3 D3 = Y3 – A – B X3;

и для X=X4 D4 = Y4 – A – B X4.

Запишем
выражение для суммы квадратов этих ошибок

Ф(A,В)=(Y1–A–B X1) 2 +(Y2–A–B X2) 2 +(Y3–A–B X3) 2 +(Y4–A–B X4) 2

или
сокращенно Ф(B,A) = å(Yi – A – BXi) 2 .

Здесь нам
известны все X и Y и неизвестны коэффициенты A и B. Проведем искомую прямую так
(т.е. выберем A и B такими), чтобы эта сумма квадратов ошибок Ф(A,B) была
минимальной. Условиями минимальности являются известные соотношения

¶Ф(A,B)/¶A=0 и ¶Ф(A,B)/¶B=0.

Выведем эти выражения (индексы при знаке суммы опускаем):

¶[å(Yi–A–B Xi) 2 ]/¶A = å(Yi–A–B Xi)(–1)

¶[å(Yi–A–B Xi) 2 ]/¶B = å(Yi–A–B Xi)(–Xi).

Преобразуем полученные формулы и приравняем их нулю

Microsoft Excel (также иногда называется Microsoft Office Excel) — программа для работы с электронными таблицами, созданная корпорацией Microsoft для Microsoft Windows, Windows NT и Mac OS. Она предоставляет возможности экономико-статистических расчетов, графические инструменты и, за исключением Excel 2008 под Mac OS X, язык макропрограммирования VBA (Visual Basic для приложений). Microsoft Excel входит в состав Microsoft Office и на сегодняшний день Excel является одним из наиболее популярных приложений в мире.

В MS Excel аппроксимация экспериментальных данных осуществляется путем построения их графика (x — отвлеченные величины) или точечного графика (x — имеет конкретные значения) с последующим подбором подходящей аппроксимирующей функции (линии тренда).

Возможны следующие варианты функций:

· Линейная — y=ax+b. Обычно применяется в простейших случаях, когда экспериментальные данные возрастают или убывают с постоянной скоростью.

· Полиномиальная — y=a 0 +a 1 x+a 2 x 2 +…+a n x n , где до шестого порядка включительно (n?6), a i — константы. Используется для описания экспериментальных данных, попеременно возрастающих и убывающих. Степень полинома определяется количеством экстремумов (максимумов или минимумов) кривой. Полином второй степени можно описать только один максимум или минимум, полином третьей степени может иметь один или два экстремума, четвертой степени — не более трех экстремумов и т.д.

· Логарифмическая — y=a·lnx+b, где a и b — константы, ln — функция натурального логарифма. Функция применяется для описания экспериментальных данных, которые вначале быстро растут или убывают, а затем постепенно стабилизируются.

· Степенная — y=b·x a , где a и b — константы. Аппроксимация степенной функцией используется для экспериментальных данных с постоянно увеличивающейся (или убывающей) скоростью роста. Данные не должны иметь нулевых или отрицательных значений.

· Экспоненциальная — y=b·e ax , a и b — константы, e — основание натурального логарифма. Применяется для описания экспериментальных данных, которые быстро растут или убывают, а затем постепенно стабилизируются. Часто ее использование вытекает из теоретических соображений.

Степень близости аппроксимации экспериментальных данных выбранной функцией оценивается коэффициентом детерминации (R 2). Таким образом, если есть несколько подходящих вариантов типов аппроксимирующих функций, можно выбрать функцию с большим коэффициентом детерминации (стремящимся к 1).

Аппроксимация экспериментальных данных в программе MathCAD

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

В MathCAD совсем немного типов данных по сравнению с универсальными языками программирования — всего три. Кратко охарактеризуем их (более детально они будут описаны позже).

Числа (как действительные, так и комплексные): все числа MathCAD хранит в одном формате (с плавающей точкой двойной точности), не разделяя их на целые и действительные. На одно число выделяется 64 бита. При этом десятичная часть не может превышать по длине 17 знаков, а порядок должен лежать между -307 и 307. Комплексные числа на уровне реализации представляют собой пару действительных чисел. При этом во многих видах расчетов число воспринимается как комплексное, даже если у него нет мнимой части. Описанные особенности чисел в MathCAD касаются только численных расчетов. При работе в символьном режиме совершенно другие уровни точности.

Строки: в общем случае любой текст, заключенный в кавычки. На практике строки используются в основном для задания сообщений об ошибках, возникших при работе программ на языке MathCAD.

Массивы: к ним относятся матрицы, векторы, тензоры, таблицы — любые упорядоченные последовательности элементов произвольного типа. К данным этого типа можно отнести и ранжированные переменные. В отдельную группу следует выделить так называемые размерные переменные, то есть единицы измерения, имеющие огромное значение в науке и технике. В MathCAD нет логического типа данных. Для обозначения истины и лжи логическими операторами и функциями используются числа — 0 и 1.

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

· expfit(vx,vy,vg) — регрессия экспоненциальной функцией y = a*e b*x +c.

· sinfit(vx,vy,vg) — регрессия синусоидальной функцией y = a*sin(x+b)+c.

· pwrfit(vx,vy,vg) — регрессия степенной функцией e = a*x b +c.

Перечисленные функции используют трехпараметрическую аппроксимирующую функцию, нелинейную по параметрам. При вычислении оптимальных значений трех параметров регрессионной функции по методу наименьших квадратов возникает необходимость в решении сложной системы из трех нелинейных уравнений. Такая система часто может иметь несколько решений. Поэтому в функциях MathCAD, которые проводят регрессию трехпараметрическими зависимостями, введен дополнительный аргумент vg. Данный аргумент — это трехкомпонентный вектор, содержащий приблизительные значения параметров a,b и c, входящих в аппроксимирующую функцию. Неправильный выбор элементов вектора vg может привести к неудовлетворительному результату регрессии. В MathCAD существуют средства для проведения регрессии самого общего вида. Это означает, что можно использовать любые функции в качестве аппроксимирующих и находить оптимальные значения любых их параметров, как линейных, так и нелинейных. В том случае, если регрессионная функция является линейной по всем параметрам, т.е. представляет линейную комбинацию жестко заданных функций, провести регрессию можно с помощью встроенной функции linfit(vx,vy,F). Аргумент F — это векторная функция, из элементов которой должна быть построена линейная комбинация, наилучшим образом аппроксимирующая заданную последовательность точек. Результатом работы функции linfit является вектор линейных коэффициентов. Каждый элемент этого вектора — коэффициент при функции, стоящей на соответствующем месте в векторе F. Таким образом, для того чтобы получить регрессионную функцию, достаточно скалярно перемножить эти два вектора.

Средняя ошибка аппроксимации
— среднее отклонение расчетных значений от фактических:

Где y x — расчетное значение по уравнению.

Значение средней ошибки аппроксимации до 15% свидетельствует о хорошо подобранной модели уравнения.

По семи территориям Уральского района за 199Х г. известны значения двух признаков.

Требуется:

1. Для характеристики зависимости у от х рассчитать параметры следующих функций:

а) линейной;

б) степенной;

в) показательной;

г) равносторонней гиперболы (так же нужно придумать как предварительно линеаризовать данную модель).

2. Оценить каждую модель через среднюю ошибку аппроксимации
А ср и F-критерий Фишера.

Решение проводим при помощь онлайн калькулятора Линейное уравнение регрессии .

а) линейное уравнение регрессии;

Использование графического метода
.

Этот метод применяют для наглядного изображения формы связи между изучаемыми экономическими показателями. Для этого в прямоугольной системе координат строят график, по оси ординат откладывают индивидуальные значения результативного признака Y, а по оси абсцисс — индивидуальные значения факторного признака X.

Совокупность точек результативного и факторного признаков называется полем корреляции
.

На основании поля корреляции можно выдвинуть гипотезу (для генеральной совокупности) о том, что связь между всеми возможными значениями X и Y носит линейный характер.

Линейное уравнение регрессии имеет вид y = bx + a + ε

Здесь ε — случайная ошибка (отклонение, возмущение).

Причины существования случайной ошибки:

1. Невключение в регрессионную модель значимых объясняющих переменных;

2. Агрегирование переменных. Например, функция суммарного потребления – это попытка общего выражения совокупности решений отдельных индивидов о расходах. Это лишь аппроксимация отдельных соотношений, которые имеют разные параметры.

3. Неправильное описание структуры модели;

4. Неправильная функциональная спецификация;

5. Ошибки измерения.

Так как отклонения ε i для каждого конкретного наблюдения i – случайны и их значения в выборке неизвестны, то:

1) по наблюдениям x i и y i можно получить только оценки параметров α и β

2) Оценками параметров α и β регрессионной модели являются соответственно величины а и b, которые носят случайный характер, т.к. соответствуют случайной выборке;

Тогда оценочное уравнение регрессии (построенное по выборочным данным) будет иметь вид y = bx + a + ε, где e i – наблюдаемые значения (оценки) ошибок ε i , а и b соответственно оценки параметров α и β регрессионной модели, которые следует найти.

Для оценки параметров α и β — используют МНК (метод наименьших квадратов).

Получаем b = -0.35, a = 76.88

Уравнение регрессии:

y = -0.35 x + 76.88

x y x 2 y 2 x y y(x) (y i -y cp) 2 (y-y(x)) 2 |y — y x |:y
45,1 68,8 2034,01 4733,44 3102,88 61,28 119,12 56,61 0,1094
59 61,2 3481 3745,44 3610,8 56,47 10,98 22,4 0,0773
57,2 59,9 3271,84 3588,01 3426,28 57,09 4,06 7,9 0,0469
61,8 56,7 3819,24 3214,89 3504,06 55,5 1,41 1,44 0,0212
58,8 55 3457,44 3025 3234 56,54 8,33 2,36 0,0279
47,2 54,3 2227,84 2948,49 2562,96 60,55 12,86 39,05 0,1151
55,2 49,3 3047,04 2430,49 2721,36 57,78 73,71 71,94 0,172
384,3 405,2 21338,41 23685,76 22162,34 405,2 230,47 201,71 0,5699

Примечание: значения y(x) находятся из полученного уравнения регрессии:


y(45.1) = -0.35*45.1 + 76.88 = 61.28

y(59) = -0.35*59 + 76.88 = 56.47

… … …

Ошибка аппроксимации


Оценим качество уравнения регрессии с помощью ошибки абсолютной аппроксимации. Средняя ошибка аппроксимации
— среднее отклонение расчетных значений от фактических:

Поскольку ошибка меньше 15%, то данное уравнение можно использовать в качестве регрессии.

F-статистики. Критерий Фишера.

3. Табличное значение определяется по таблицам распределения Фишера для заданного уровня значимости, принимая во внимание, что число степеней свободы для общей суммы квадратов (большей дисперсии) равно 1 и число степеней свободы остаточной суммы квадратов (меньшей дисперсии) при линейной регрессии равно n-2.

4. Если фактическое значение F-критерия меньше табличного, то говорят, что нет основания отклонять нулевую гипотезу.

В противном случае, нулевая гипотеза отклоняется и с вероятностью (1-α) принимается альтернативная гипотеза о статистической значимости уравнения в целом.

< Fkp, то коэффициент детерминации статистически не значим (Найденная оценка уравнения регрессии статистически не надежна).

б) степенная регрессия ;

Решение проводится с помощью сервиса Нелинейная регрессия . При выборе укажите Степенная y = ax b

в) показательная регрессия;

г) модель равносторонней гиперболы.

Система нормальных уравнений.

Для наших данных система уравнений имеет вид

7a + 0.1291b = 405.2

0.1291a + 0.0024b = 7.51

Из первого уравнения выражаем а и подставим во второе уравнение

Получаем b = 1054.67, a = 38.44

Уравнение регрессии:

y = 1054.67 / x + 38.44

Ошибка аппроксимации.


Оценим качество уравнения регрессии с помощью ошибки абсолютной аппроксимации.

Поскольку ошибка меньше 15%, то данное уравнение можно использовать в качестве регрессии.

Критерий Фишера.

Проверка значимости модели регрессии проводится с использованием F-критерия Фишера, расчетное значение которого находится как отношение дисперсии исходного ряда наблюдений изучаемого показателя и несмещенной оценки дисперсии остаточной последовательности для данной модели.

Если расчетное значение с k1=(m) и k2=(n-m-1) степенями свободы больше табличного при заданном уровне значимости, то модель считается значимой.

где m – число факторов в модели.

Оценка статистической значимости парной линейной регрессии производится по следующему алгоритму:

1. Выдвигается нулевая гипотеза о том, что уравнение в целом статистически незначимо: H 0: R 2 =0 на уровне значимости α.

2. Далее определяют фактическое значение F-критерия:

где m=1 для парной регрессии.

Табличное значение критерия со степенями свободы k1=1 и k2=5, Fkp = 6.61

Поскольку фактическое значение F < Fkp, то коэффициент детерминации статистически не значим (Найденная оценка уравнения регрессии статистически не надежна).

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

Наименование данного метода происходит от латинского слова 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
). Но это совсем не значит, что такая же тенденция будет при использовании других примеров. Нет, уровень эффективности у приведенных выше методов может значительно отличаться, в зависимости от конкретного вида функции, для которой будет строиться линия тренда. Поэтому, если для этой функции выбранный метод наиболее эффективен, то это совсем не означает, что он также будет оптимальным и в другой ситуации.

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

Содержание

  • Выполнение аппроксимации
    • Способ 1: линейное сглаживание
    • Способ 2: экспоненциальная аппроксимация
    • Способ 3: логарифмическое сглаживание
    • Способ 4: полиномиальное сглаживание
    • Способ 5: степенное сглаживание
  • Вопросы и ответы

Аппроксимация в Microsoft Excel

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

Выполнение аппроксимации

Наименование данного метода происходит от латинского слова proxima – «ближайшая» Именно приближение путем упрощения и сглаживания известных показателей, выстраивание их в тенденцию и является его основой. Но данный метод можно использовать не только для прогнозирования, но и для исследования уже имеющихся результатов. Ведь аппроксимация является, по сути, упрощением исходных данных, а упрощенный вариант исследовать легче.

Главный инструмент, с помощью которого проводится сглаживания в Excel – это построение линии тренда. Суть состоит в том, что на основе уже имеющихся показателей достраивается график функции на будущие периоды. Основное предназначение линии тренда, как не трудно догадаться, это составление прогнозов или выявление общей тенденции.

Но она может быть построена с применением одного из пяти видов аппроксимации:

  • Линейной;
  • Экспоненциальной;
  • Логарифмической;
  • Полиномиальной;
  • Степенной.

Рассмотрим каждый из вариантов более подробно в отдельности.

Урок: Как построить линию тренда в Excel

Способ 1: линейное сглаживание

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

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

  1. Для построения графика, прежде всего, выделяем столбцы «Себестоимость единицы продукции» и «Прибыль». После этого перемещаемся во вкладку «Вставка». Далее на ленте в блоке инструментов «Диаграммы» щелкаем по кнопке «Точечная». В открывшемся списке выбираем наименование «Точечная с гладкими кривыми и маркерами». Именно данный вид диаграмм наиболее подходит для работы с линией тренда, а значит, и для применения метода аппроксимации в Excel.
  2. Построение диаграммы в Microsoft Excel

  3. График построен.
  4. График построен в Microsoft Excel

  5. Для добавления линии тренда выделяем его кликом правой кнопки мыши. Появляется контекстное меню. Выбираем в нем пункт «Добавить линию тренда…».
    Добавление линии тренда через контекстное меню в Microsoft Excel

    Существует ещё один вариант её добавления. В дополнительной группе вкладок на ленте «Работа с диаграммами» перемещаемся во вкладку «Макет». Далее в блоке инструментов «Анализ» щелкаем по кнопке «Линия тренда». Открывается список. Так как нам нужно применить линейную аппроксимацию, то из представленных позиций выбираем «Линейное приближение».

  6. Добавление линии тренда через блок инструментов на ленте в Microsoft Excel

  7. Если же вы выбрали все-таки первый вариант действий с добавлением через контекстное меню, то откроется окно формата.

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

    Также в нашем случае для сравнения различных вариантов аппроксимации важно установить галочку около пункта «Поместить на диаграмму величину достоверной аппроксимации (R^2)». Данный показатель может варьироваться от 0 до 1. Чем он выше, тем аппроксимация качественнее (достовернее). Считается, что при величине данного показателя 0,85 и выше сглаживание можно считать достоверным, а если показатель ниже, то – нет.

    Lumpics.ru

    После того, как провели все вышеуказанные настройки. Жмем на кнопку «Закрыть», размещенную в нижней части окна.

  8. Включение линейной аппроксимации в Microsoft Excel

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

Линия тренда построена с помощью линейной аппроксимации в Microsoft Excel

Сглаживание, которое используется в данном случае, описывается следующей формулой:

y=ax+b

В конкретно нашем случае формула принимает такой вид:

y=-0,1156x+72,255

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

Способ 2: экспоненциальная аппроксимация

Теперь давайте рассмотрим экспоненциальный тип аппроксимации в Эксель.

  1. Для того, чтобы изменить тип линии тренда, выделяем её кликом правой кнопки мыши и в раскрывшемся меню выбираем пункт «Формат линии тренда…».
  2. Переход в формат лини тренда в Microsoft Excel

  3. После этого запускается уже знакомое нам окно формата. В блоке выбора типа аппроксимации устанавливаем переключатель в положение «Экспоненциальная». Остальные настройки оставим такими же, как и в первом случае. Щелкаем по кнопке «Закрыть».
  4. Построение экспоненциальной линии тренда в Microsoft Excel

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

Экспоненциальная линия тренда построена в Microsoft Excel

Общий вид функции сглаживания при этом такой:

y=be^x

где e – это основание натурального логарифма.

В конкретно нашем случае формула приняла следующую форму:

y=6282,7*e^(-0,012*x)

Способ 3: логарифмическое сглаживание

Теперь настала очередь рассмотреть метод логарифмической аппроксимации.

  1. Тем же способом, что и в предыдущий раз через контекстное меню запускаем окно формата линии тренда. Устанавливаем переключатель в позицию «Логарифмическая» и жмем на кнопку «Закрыть».
  2. Включение логарифмической аппроксимации в Microsoft Excel

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

Логарифмическая линия тренда построена в Microsoft Excel

В общем виде формула сглаживания выглядит так:

y=a*ln(x)+b

где ln – это величина натурального логарифма. Отсюда и наименование метода.

В нашем случае формула принимает следующий вид:

y=-62,81ln(x)+404,96

Способ 4: полиномиальное сглаживание

Настал черед рассмотреть метод полиномиального сглаживания.

  1. Переходим в окно формата линии тренда, как уже делали не раз. В блоке «Построение линии тренда» устанавливаем переключатель в позицию «Полиномиальная». Справа от данного пункта расположено поле «Степень». При выборе значения «Полиномиальная» оно становится активным. Здесь можно указать любое степенное значение от 2 (установлено по умолчанию) до 6. Данный показатель определяет число максимумов и минимумов функции. При установке полинома второй степени описывается только один максимум, а при установке полинома шестой степени может быть описано до пяти максимумов. Для начала оставим настройки по умолчанию, то есть, укажем вторую степень. Остальные настройки оставляем такими же, какими мы выставляли их в предыдущих способах. Жмем на кнопку «Закрыть».
  2. Включение полиномиальной аппроксимации в Microsoft Excel

  3. Линия тренда с использованием данного метода построена. Как видим, она ещё более изогнута, чем при использовании экспоненциальной аппроксимации. Уровень достоверности выше, чем при любом из использованных ранее способов, и составляет 0,9724.
    Полиномиальная линия тренда в Microsoft Excel

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

    y=a1+a1*x+a2*x^2+…+an*x^n

    В нашем случае формула приняла такой вид:

    y=0,0015*x^2-1,7202*x+507,01

  4. Теперь давайте изменим степень полиномов, чтобы увидеть, будет ли отличаться результат. Возвращаемся в окно формата. Тип аппроксимации оставляем полиномиальным, но напротив него в окне степени устанавливаем максимально возможное значение – 6.
  5. Включение полиномиальной аппроксимации в шестой степени в Microsoft Excel

  6. Как видим, после этого наша линия тренда приняла форму ярко выраженной кривой, у которой число максимумов равно шести. Уровень достоверности повысился ещё больше, составив 0,9844.

Полиномиальная линия тренда в шестой степени в Microsoft Excel

Формула, которая описывает данный тип сглаживания, приняла следующий вид:

y=8E-08x^6-0,0003x^5+0,3725x^4-269,33x^3+109525x^2-2E+07x+2E+09

Способ 5: степенное сглаживание

В завершении рассмотрим метод степенной аппроксимации в Excel.

  1. Перемещаемся в окно «Формат линии тренда». Устанавливаем переключатель вида сглаживания в позицию «Степенная». Показ уравнения и уровня достоверности, как всегда, оставляем включенными. Жмем на кнопку «Закрыть».
  2. Полиномиальная линия тренда в шестой степени в Microsoft Excel

  3. Программа формирует линию тренда. Как видим, в нашем случае она представляет собой линию с небольшим изгибом. Уровень достоверности равен 0,9618, что является довольно высоким показателем. Из всех вышеописанных способов уровень достоверности был выше только при использовании полиномиального метода.

Степенная линия тренда построена в Microsoft Excel

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

Общая формула, описывающая данный метод имеет такой вид:

y=bx^n

В конкретно нашем случае она выглядит так:

y = 6E+18x^(-6,512)

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

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

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Когда говорят на ошибках учатся
  • Книга моя маленькая ошибка
  • Когда выступающий выступал все внимательно слушали найдите ошибку
  • Книга логические ошибки как они мешают правильно мыслить скачать бесплатно
  • Книга кладезь мудрости ошибка

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии