Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Численное дифференцирование временных рядов с использованием фильтра Калмана-Бьюси Гончарова Елена Николаевна

Численное дифференцирование временных рядов с использованием фильтра Калмана-Бьюси
<
Численное дифференцирование временных рядов с использованием фильтра Калмана-Бьюси Численное дифференцирование временных рядов с использованием фильтра Калмана-Бьюси Численное дифференцирование временных рядов с использованием фильтра Калмана-Бьюси Численное дифференцирование временных рядов с использованием фильтра Калмана-Бьюси Численное дифференцирование временных рядов с использованием фильтра Калмана-Бьюси Численное дифференцирование временных рядов с использованием фильтра Калмана-Бьюси Численное дифференцирование временных рядов с использованием фильтра Калмана-Бьюси Численное дифференцирование временных рядов с использованием фильтра Калмана-Бьюси Численное дифференцирование временных рядов с использованием фильтра Калмана-Бьюси
>

Диссертация - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Гончарова Елена Николаевна. Численное дифференцирование временных рядов с использованием фильтра Калмана-Бьюси : Дис. ... канд. физ.-мат. наук : 05.13.18 : Ставрополь, 2004 124 c. РГБ ОД, 61:05-1/71

Содержание к диссертации

Введение

Глава 1. Методы численного дифференцирования функций дискретного типа 11

1.1. Численное дифференцирование временных рядов 11

1.2. Анализ методов численного дифференцирования 14

1.3. Некорректность задачи численного дифференцирования 19

1.4. Выводы 29

Глава 2. Алгоритмы численного дифференцирования детерминированных временных рядов 30

2.1. Представление полиномиальных функций уравнениями в пространстве состояний 30

2.1.1. Представление полиномиальных функций в виде решения системы линейных дифференциальных уравнений 30

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

2.1.3. Условия дифференцируемости полиномиальных функций и наблюдаемость уравнений состояний 39

2.2. Оценка производных детерминированных временных рядов по результатам наблюдений 41

2.3. Численное дифференцирование дискретных функций, аппроксимированных ортогональными полиномами 47

2.4. Выводы 53

Глава 3. Численное дифференцирование временных рядов при случайных ошибках измерений 54

3.1. Фильтрация случайных помех по методу Калмана - Бьюси 54

3.2. Фильтр Калмана - Бьюси с фиксированным запаздыванием 75

3.3. Точность решения задачи численного дифференцирования 80

3.4. Выводы 85

Глава IV. Некоторые приложения методов численного дифференцирования временных рядов со случайными ошибками 87

4.1. Решение обратной задачи для источника примеси методами оптимальной фильтрации 87

4.2. Оценка скорости и ускорения движения снаряда по результатам наблюдений 93

4.3. Численное решение уравнений модифицированным методом Ньютона 97

4.3. Численное решение уравнений модифицированным методом Ньютона 98

Выводы 100

Заключение 101

Список использованных источников 102

Приложение

Введение к работе

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

В [2, 49] показано, что средние скорости, которые обычно используются для изучения экологических процессов, имеют ряд недостатков: чрезмерная чувствительность к ошибкам в исходных данных, зависимость от величины интервала времени, в течение которого проводится определение. Они слишком грубы для изучения динамики процесса. Мгновенные скорости лишены недостатков средних скоростей и способны отразить тонкую структуру динамики процессов.

Ю. Одум в своем классическом руководстве по экологии [48] писал: «Мгновенную скорость dNIdt нельзя измерить непосредственно; точно так же нельзя непосредственно вычислить величину dN/(Ndt)». В практических задачах значения экспериментальных данных подвержены погрешностям измерения, или погрешностям, возникающим при округлении полученных результатов измерения до данного числа знаков, или на некоторых

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

Значительный вклад в развитие теории оценивания был внесен А.Н. Колмогоровым и Н. Винером. В 1941 г. А.Н. Колмогоров и в 1942 г. Н. Винер предложили статистический метод оптимальной линейной фильтрации стационарных процессов, который с успехом многие годы применялся для оценивания сообщений [3, 31]. Первая фундаментальная работа в области оптимального оценивания принадлежат В.А. Котельникову [38], в которой был получен ряд практически важных результатов принципиального характера. Дальнейшее развитие вопросы теории оценивания получили в работах Р. Калмана, Р. Бьюси, Р. Стратоновича, В. Тихонова и других ученых [50,28].

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

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

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

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

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

Поставленная цель требует решения следующих задач:

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

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

  3. Применить разработанные методы к решению конкретных задач.

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

Научная новизна полученных результатов заключается в следующем:

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

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

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

  4. Указанные методы реализованы в виде комплекса программ на ЭВМ.

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

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

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

  1. Результаты работы внедрены в учебный процесс в СГУ.

Основные положения диссертации, выносимые на защиту.

  1. Метод численного дифференцирования детерминированных временных рядов в узловых точках с использованием наблюдателя Льюинбергера.

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

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

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

Апробация результатов диссертации. Результаты работы докладывались на Международных школах-семинарах по геометрии и анализу памяти Н.В. Ефимова (Абрау-Дюрсо, МГУ, РГУ, 1996 и 1998 гг.), на четвертом всероссийском симпозиуме по прикладной и промышленной математике (Сочи, 2003 г.), на 47,49-й научно-методических конференциях преподавателей и студентов «Университетская наука - региону» (Ставрополь, 2003, 2004 гг.).

Опубликованность результатов. Материалы диссертации опубликованы в 10 научных работах.

Структура и объем диссертации. Диссертация состоит из введения, 4 глав, заключения, списка использованных источников и приложений. Работа изложена на 107 страницах, содержит 10 рисунков и 6 таблиц.

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

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

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

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

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

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

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

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

Некорректность задачи численного дифференцирования

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

В работах [2, 49] показано решение данной задачи с помощью аппроксимации экспериментальных данных кубическими сплайнами с последующим аналитическим дифференцированием этой кривой. На примере модельной выборки показана высокая чувствительность предлагаемого метода, который позволит более детально изучать динамику наблюдаемых процессов. Можно отметить следующие недостатки в применении этого метода: не рассматривается погрешность представленного метода; достаточно «этапным» является процесс нахождения производных: на первом этапе отыскивается сплайн, только затем производится аналитическое интерполирование. Т.е. задача решается достаточно трудоемким способом. Для такого способа решения необходимо хранить все результаты наблюдений. В [17] рассматриваются типы случайных процессов, дается определение дифференцирования случайных процессов. В работе [14] предлагаются методы и программы восстановления зависимостей, по полученным оценкам наблюдений затем можно воспользовавшись (1.2) определить значения производных. 1.3. Некорректность задачи численного дифференцирования Понятие корректно поставленной математической задачи было введено в математику в начале XX в. французским математиком Ж. Адамаром. Задача называется корректно поставленной (по Адамару), если: 1) решение этой задачи существует; 2) единственно; 3) непрерывно зависит от исходных данных. В [16, 8] показывается некорректность задачи численного дифференцирования: где x{t) Cx[a,b] - пространству функций с непрерывной в [ я,б]первой производной, a y(t) є С[#, ] - пространству непрерывных на [a,b] функций.

В каждом из этих пространств расстояние между функциями определяется следующим образом: п Рассмотрим в Cj[ 3,Z)] две функции x(t) и x{t) = x(t) +—smn2(t -а). Расстояние между ними при большом n можно сделать сколь угодно малым. Но n Этот пример показывает, что для сколь угодно близких функций x(t) и x(t) е С{ [a, b] расстояние между их производными в С[а,б] может быть сколь угодно велико. Поэтому говорят, что задача дифференцирования некорректна. Ее некорректностью и объясняется малая точность формул численного дифференцирования, особенно если учесть, что значения функций, участвующих в формулах, как правило, несут некоторую погрешность.

Основные подходы к приближенному решению некорректных задач связаны с тем или иным возмущением исходной задачи, переходом к некоторой близкой, но уже корректной задаче. Общий подход к решению некорректных задач предложен А.Н. Тихоновым [61, 62, 63]. Основная идея построения устойчивых методов решения некорректных задач базируется на использовании априорной информации о неточности во входных данных. Рассмотрим линейное операторное уравнение первого рода Правая часть и само решение принадлежит к тем или иным метрическим пространствам, например к гильбертову пространству Н. В прикладных исследованиях типичной является ситуация с заданием входных данных с погрешностью. Эту ситуацию можно промоделировать предположением, что правая часть (1.23) задана с погрешностью S. Вместо / нам известно fs такое, что В более общем случае необходимо ориентироваться на задачи (1.23), в которых может быть приближенно задана не только правая часть, но и оператор задачи А. Ставится задача нахождения приближенного решения уравнения (1.23) с приближенной правой частью fs. Это приближенное решение иа связывается с параметром а, который зависит от уровня погрешностей в задании правой части, т.е. а = а{5). Так как правая часть задана с погрешностью, то и не нужно пытаться решить уравнение точно. Неопределенность в правой части можно попытаться компенсировать, за счет перехода к некоторой другой, но уже корректной задаче в которой оператор Аа обладает лучшими свойствами, чем А. В вариационных методах вместо решения уравнения (1.25) минимизируется функционал невязки Существует много решений такой вариационной задачи, которые с точностью 5 удовлетворяют уравнению (1.25).

Необходимо только разумно распорядиться информацией о погрешности в задании правой части с тем, чтобы выделить наиболее приемлемое решение. В соответствии с методом регуляризации А.Н. Тихонова [53, 61] вводится сглаживающий функционал Приближенное решение иа исходной задачи (1.23), (1.24) есть экстремаль этого функционала: В (1.27) a О — параметр регуляризации, величина которого согласуется с погрешностью задания правой части S. Если представить приближенное решение в операторном виде и если это приближенное решение сходится к точному при стремлении к нулю погрешности правой части, то в этом случае говорят, что оператор R{a) является регуляризирующим. При выбранной конструкции оператора R(a) необходимо указать и выбор параметра регуляризации в зависимости от д. Параметр регуляризации а согласовывается с погрешностью входных данных, и чем меньше погрешность, тем меньшим берется параметр регуляризации [53], т.е. a = a(S). Сущность метода регуляризации для решения задачи численного дифференцирования состоит в следующем. Пусть функция f(x) задана своим -приближением fs(x) в некотором нормированном функциональном ном пространстве F, и выполняется (1.23) и пусть оператор дифференцирования L действует из F в нормированное пространство G. Говорят, что оператор Rs регуляризирует операцию I, если для любой fs(x) с условием (1.23) В [5] рассматривается функционал эта система имеет единственное решение. Здесь g(x) - аппроксимирующая функция. После решения полученной системы, будем иметь таблицу значений аппроксимирующей функции: Потом будем искать значения производной по формуле Проводят серию расчетов с различными Я; оптимальным считается тот, в котором

Оценка производных детерминированных временных рядов по результатам наблюдений

Для конечного отрезка \а, b] каждая фикция из пространства I?w может быть с любой степенью точности приближена в среднем непрерывной функцией, а в силу теоремы Вейерштрасса непрерывную функцию можно аппроксимировать многочленом. Таким образом, если \а, b] - конечный отрезок и у/п=хп или срп = Рп(х), то мы можем сделать In(ah) сколь угодно малым, выбирая п достаточно большим. Далее покажем справедливость аппроксимации полиномиальных функций системой линейных дифференциальных уравнений, рассмотренную в 2.1 и для функций, представленных отрезком рядом Фурье. Пусть функция y(t) допускает представление отрезком ряда Фурье: где at — возможно неизвестные коэффициенты, a Pt{t) — ортогональные многочлены, заданные на отрезке [a, b]. Для классических ортогональных многочленов Якоби, Гегенбауэра, Лежандра, Чебышева, Лягерра и Эрмита справедлива рекуррентная формула [7]: где обозначено При этом к п - коэффициент при tn x, кп — коэффициент при /"в полиноме Покажем, что использование (2.72) позволяет аппроксимировать (2.71) решением системы однородных дифференциальных уравнений первого порядка. Известно, что для всех ортогональных многочленов Таким образом, используя метод последовательного дифференцирования выражения (2.72), мы пришли к тому, что функция y(t) может быть аппроксимирована решением системы линейных однородных симирована решением системы линейных однородных дифференциальных уравнений первого порядка с постоянными коэффициентами вида: (2.96) (2.97) задает рекуррентные формулы для вычисления матрицы А, которые легко представляются алгоритмом и соответствующей ему вычислительной программой для определения А.

Алгоритм численного дифференцирования в этом случае строится по (2.60), только матрица Ф рассчитывается по (2.99). В данной главе: 1. Показана возможность представления полиномиальных функций и функций, допускающих представление в виде отрезка ряда Фурье по ортогональным многочленам, в качестве решения системы линейных дифференциальных уравнений. 2. Построен алгоритм численного дифференцирования детерминированных временных рядов с точно заданными начальными условиями и разработана соответствующая программа. 3. Построен алгоритм численного дифференцирования детерминированных временных рядов с неизвестными начальными условиями с использованием фильтра Льюинбергера, разработана его программная реализация. 4. Приведены примеры использования описанных алгоритмов; результаты работы программ представлены в виде графиков. На протяжении многих столетий проблема оценивания результатов наблюдений была и остается предметом исследований многих ученых (К.Ф. Гаусс, Н. Винер, А.Н. Колмогоров и др.). Под оцениванием понимается способ уточнения значений параметров сигнала, наблюдаемого на фоне помехи. Для нужд теории оценивания развиты специальные методы математической статистики, основанные на методе наименьших квадратов.

Развитие электронно-вычислительной техники стимулировало широкое распространение рекуррентных процедур оценивания. Характерные постановки математических задач теории оценивания были продиктованы запросами реальной жизни. При этом меняющиеся возможности реализации процедур оценивания приводили к значительному усовершенствованию и их алгоритмов. Состояние системы в любой момент времени однозначно характеризуется определенным набором величин (например, координаты, скорости, уровни напряжения и т. д.), как правило, недоступных для непосредственного определения. Говоря терминами векторной алгебры, эти величины являются элементами вектора состояния системы, отнесенного к заданному моменту времени. Кроме того, имеется ряд переменных, некоторым образом связанных с состоянием системы, которые можно измерить с заданной точностью; такие величины составляют вектор измерений, относящихся к определенному моменту времени.

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

Фильтр Калмана - Бьюси с фиксированным запаздыванием

Минимум ее среднеквадратической ошибки признан наиболее общим; доказано, что применение множество других подобных условий [30] (например, среднее арифметическое некоторой непрерывно возрастающей, симметричной функции, такой как абсолютная величина, приводит к тому же решению. Фильтр Калмана явился существенным усовершенствованием своего предшественника- алгоритма, позволяющего с помощью метода наименьших квадратов выделять скалярный сигнал из шума с неизменными статистическим характеристиками, предложенного в 40-х годах XX столетия Н. Винером [3]. Существенной особенностью алгоритма оценивания Калмана - Бьюси, чрезвычайно важной с практической точки зрения, является то, что в отличие от предшествующих процедур нет необходимости помнить всю предшествующую информацию. Будущее состояние системы определяется только ее текущей оценкой и вновь поступившей информацией.

Рисунок 3.1. [40] иллюстрирует работу алгоритма фильтра Калмана. Начальными условиями на каждом новом цикле алгоритма служат оценка состояния системы и величина, характеризующая ее погрешность. В случае скалярной переменной такой характеристикой является дисперсия, которая тем больше, чем сильнее разброс индивидуальных значений относительно истинного. Распространенная оценка дисперсии — среднеквадратическое отклонение, то есть квадрат стандартного отклонения, — выражает степень разброса величины относительно среднего. Обобщением дисперсии для вектора, то есть совокупности скалярных величин, служит ковариационная матрица. Ее диагональные элементы являются дисперсиями соответствующих составляющих вектора, а недиагональные — ковариациями, характеризующими взаимосвязь между парой составляющих. Совокупность измерений, отнесенных к каждому из моментов времени, обобщает вектор измерений. Алгоритм последовательно обрабатывает вновь поступающие векторы измерений, учитывая при этом значения, вычисленные на предшествующем цикле. Эта особенность отличает алгоритм фильтра Калмана от нерекуррентных алгоритмов, которым для работы требуется хранить весь массив обрабатываемых данных. На следующем шаге с помощью обрабатываемых на данном цикле измерений уточняются начальные условия. Для этого алгоритм вычисляет вес поправок к ним на основе ковариационных матриц оценки состояния и измерений. Чем меньшей погрешностью характеризуются измерения по сравнению с оценкой состояния системы, тем больший вес они получат. Относительные веса неизвестных, определяющих вектор состояния системы, зависят от степени их влияния на вектор измерений: больший вес получат те переменные, вклад которых в измерения больше.

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

Если состояние рассматриваемой системы неизменно, то алгоритм фильтра Калмана сводится к последовательной форме классического метода наименьших квадратов, в котором матрица, обратная ковариационной, выступает в качестве весовой. Другими словами, фильтр Калмана является, по существу, рекуррентным способом решения задачи уравнивания по методу наименьших квадратов. Данная задача впервые решена К.Ф. Гауссом в 1795 году, результаты были опубликованы в работе 1809 года под названием «Теория движения небесных тел», в которой он применил метод наименьших квадратов к определению элементов орбит небесных тел [18]. Все изложенные в этой работе положения, касающиеся эффективности применения данного метода при обработке результатов измерений, в равной степени относятся и к фильтру Калмана.

Для обработки измерений будем рассматривать дискретный алгоритм фильтра Калмана - Бьюси. Пусть принимается некоторый сигнал y(t), несущий информацию о сообщении x(t). В общем случае сообщение x(t) в каждый момент времени t недоступно непосредственному наблюдению. Поэтому необходимо по наблюдению процесса y(t) на некотором интервале времени [t0,T] определить переданное сообщение x(t). Поскольку сигнал y(t) может содержать шумовую составляющую v(/), точное определение сообщения невозможно. Следовательно, на приемной стороне по результатам обработки сигнала y(t) на [/0,Г] должен быть определен процесс x(t) сколь угодно близкий к переданному сообщению x(t).

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

Усложним задачу, пусть значения дальности полета получены со случайной ошибкой, распределенной по нормальному закону. Для получения вектора случайных чисел, имеющих нормальное распределение, воспользуемся функцией rnorm(m, ju, т) среды Mahtcad [1], здесь m - количество случайных чисел, ju - смещенное (в нашем случае ju = 0), а - средне-квадратическое отклонение. Пусть т = 1, m = 12, получим вектор g = rnorm(l2,0,\). Каждое значение вектора есть случайное число, которое прибавим к значениям D(t) таблицы исходных данных. Полученные значения будут являться исходными данными для программы, реализующей процесс получения оценок функции и ее производных с использованием фильтра Калмана.

Рассмотрим задачу приближенного нахождения нулей функций одной переменной, т.е. задачу нахождения корней уравнений вида где /:/ - 2 - алгебраическая или трансцендентная функция, RX,R2 -некоторые множества из (- оо,оо).

При решении таких уравнений часто используется итерационный метод Ньютона, позволяющий существенно ускорить процесс сходимости приближенных значений хк к корню х уравнения (4.21) при -»оо. Итерационный процесс Ньютона определяется следующим образом [15]: где к = 0,1,2,..., и предполагается, что, по крайней мере, на элементах последовательности {хк} первая производная данной функции в нуль не обращается.

Иногда возникают ситуации, когда при аналитическом дифференцировании функции получаемая производная имеет достаточно сложный вид, что затрудняет нахождение ее значений с высокой точностью, или вид самой функции сложен для аналитического дифференцирования. Подобная ситуация возникает также тогда, когда функция задана таблично. В этом случае предлагается заменить значение f (xk) в (4-21), ее численным приближением, получаемом на интервале [x0,xk], к = 1,2,.... Для этой цели можно использовать методы, разработанные в главах 2, 3 диссертационного исследования. Однако при вычислении приближенных значений я: решения х уравнения (4.21) по формуле (4.22), как правило возникают случайные помехи, вызванные ошибками округления, ошибками метода, ошибками в исходных данных и, особенно, ошибками, вызванными при вычисле ний f {xk). Для фильтрации этих ошибок воспользуемся разработанным в главе 3 методом.

Непосредственное применение методов фильтрации случайных помех при вычислении значений хк осложняется тем фактом, что точки хк, к = 1,2,... расположены на числовой прямой не равномерно (т.е. \xk+i -хк\ const, = 1,2,...). Предложенные методы в главах (2, 3) предполагают равномерное расположение хк, к = 1,2,... на числовой прямой. Для устранения подобных трудностей использования метода фильтрации, предлагается следующий алгоритм вычислений, который для удобства терминологии будем называть «модифицированным методом Ньютона». 1. Зададим л:0 є [a,b] - начальное приближение для итерационного процесса (4.22) ([a,b] - отрезок локализации корня). 2. Выбираем некоторый шаг дискретизации /г 0, строим равно мерную сетку и вычислим значения yt = /( ,) и оценим значения производных по алгоритму, использующему наблюдатель Льюинбергера или фильтр Калмана - Бьюси. Тогда для вычисления приближения хк к корню по методу Ньютона будем использовать рекуррентную формулу где в качестве точки Зс/ выбирается ближайшая точка к хк из совокупности (4.23).

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

Похожие диссертации на Численное дифференцирование временных рядов с использованием фильтра Калмана-Бьюси