Научная статья на тему 'Оценка сетевой задержки в IP-технологии с помощью робастного фильтра Калмана'

Оценка сетевой задержки в IP-технологии с помощью робастного фильтра Калмана Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
173
54
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
РОБАСТНЫЙ ФИЛЬТР КАЛМАНА / ЗАДЕРЖКА / ФОРМИРУЮЩИЙ ФИЛЬТР / МОДЕЛИРОВАНИЕ / ROBUST KALMAN FILTER / DELAY / SHAPING FILTER / MODELING

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Кобрин Артем Витальевич, Тур Богдан Сергеевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Кобрин Артем Витальевич, Тур Богдан Сергеевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Estimation of network delay in IP technology by robust Kalman filter

A model of the delay with jumps and emissions was suggested in the paper, it allows simulating a real process delays. We proposed to use the robust Kalman filter to estimate the delay. Robust filter ignores individual bursts of delay and switches to the new delay value when the trend is changed.

Текст научной работы на тему «Оценка сетевой задержки в IP-технологии с помощью робастного фильтра Калмана»

УДК 621.39.1

А.В. Кобрин, Б.С. Тур

Оценка сетевой задержки в 1Р-технологии с помощью робастного фильтра Калмана

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

Ключевые слова: робастный фильтр Калмана, задержка, формирующий фильтр, моделирование.

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

Синтез модели процесса задержки. Достаточно конструктивной моделью скалярного случайного стационарного динамического процесса x(t) является его представление в виде стохастического дифференциального уравнения следующего вида

dx(t)/ dt = Fx(t) + ),

где F, G - постоянные коэффициенты; ) - порождающий белый гауссовский шум с нулевым

средним значением и спектральной плотностью мощности NI=; начальное условие x(0) - гауссовская случайная величина с известными свойствами.

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

x(k + 1) = Ф(Д)х^) + 0 (Д)^), (1)

где Ф(Д) - коэффициент (в многомерном случае матрица перехода состояний); О(Д) - порождающий коэффициент; Д - интервал дискретизации; ^(к) - порождающая дискретная последовательность выборок из гауссовского белого шума (ГБШ) со спектральной плотностью мощности .

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

у ^) = Их^) + v(k), (2)

где v(k) - аддитивная гауссовская последовательность ошибки измерения, не коррелированная во времени и с последовательностью \(к).

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

Для описания помех уге ^), содержащих выбросы, могут быть использованы различные модели. Алгоритмы фильтрации, представленные в [1-4], основаны на описании помех в виде

УГе ^) ~ (1 - ГУ )т ^) + ГУУУ ^) , (3)

Р[уге ^)] = (1 - 8)N[0;Я1 ^)] + 8#[0;*2 ^)], (4)

где (Г) - случайный процесс выброса; Vid (Г) - случайный процесс идеальной модели; уге (Г) -

случайный процесс реальной модели с выбросами; Р - плотность распределения вероятностей; гу - случайная величина, принимающая значения 0 и 1 с вероятностями

Р[Гу = 1] = 8,Р[Гу (Г) = 0] = 1 - 8,|Л2| >> |N1 . (5)

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

£ге (Г) ~ (1 - ГУ ^ &) + ГУ£V (Г) , (6)

Р[£ге (k)] = (1-8)N[0;*з(Г)] + е^0;ад)], (7)

где (k) - случайный процесс скачка; ^ (k) - случайный процесс идеальной модели; £ге (k) -случайный процесс реальной модели со скачками; г5 - случайная величина, принимающая значения

0 и 1 с вероятностями:

Р[гя = 1] = 8,Р[гя(Г) = 0] = 1 -8,1^1 >>||Лз|| . (8)

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

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

Моделирование процесса задержки. Выделяют три вида изменения задержки [5], которые могут быть вызваны различными причинами:

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

2. Постоянный джиттер - это желаемая передача с примерно постоянным изменением задержки пакетов.

3. Изменение джиттера на коротком интервале времени, возникающее из-за всплеска пакетной активности. Это явление, как правило, связано с перегрузками линии доступа или изменением маршрута.

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

^ (Г),vid (Г) - N(0;1), Р[гу = 1] = Р[гя = 1] = 0,02, и ^ (Г),х5 (Г) - N(3;0,1).

, 3

&1

До

го

Порядковый номер пакета

20 40 60 80

Порядковый номер пакета

б

100

Рис. 1. Моделирование ряда задержек: а - с выбросами; б - со скачками

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

Х(к+1) = ФХ(Г) + К (Г )Ду, (9)

где Ду = И ФХ(Г) - у(Г) - невязка; К (Г) - коэффициент, обеспечивающий устойчивость и сходимость процедуры, в частности К (Г) может быть константой К (Г) <1. Коэффициент усиления фильтра Калмана К (Г) является функцией от апостериорной дисперсии \(Г), что ускоряет его сходимость:

0

а

Рис. 2. Схема ФКБ

К Цс) = V (£) ИTN-l,

V (1с) = [I - К (Г -1) И (1()] V (Г, Г -1),

V (Г, Г-1) = Ф^ (Г-1)Ф + N£, где V(Г) - апостериорная матрица дисперсии ошибки оценки; V(Г,Г -1) - априорная матрица дисперсия ошибки оценки; I - единичная матрица.

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

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

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

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

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

х( к+1) = Ф( к+1, к) Х( к)+К (к) Ду тіп

(10)

Рис. 3. Схема РФКБ для фильтрации случайных процессов содержащих выбросы

’\К (* )Ду у

где Ь является некоторым ограничителем изменения значения функции. Это предложение убирает проблему неограниченого изменения оценки за один шаг в классическом фильтре Калмана, оставаясь при этом достаточно простой. Если Ь > |К(Г)Ду , то

Ь

тіп <1,Т

= 1 и фильтр работает в обыч-

’|К (*) Ду| ]

ном режиме как ФК (9). Если же Ь < |К(Г)Ду|, то из этого следует, что произошел выброс, и невязка

Ь

умножается на понижающий коэффициент, равный ному виду (9).

К (к) Ду]

, что опять же приводит РФК к обыч-

Робастный фильтр Калмана для ситуации скачка. Следуя рекомендации [2], РФК для ситуации скачка приобретает вид:

' *______________1

x( k +1) = Ф (k +1, k) x(k) + H (k)[ - H (k) K (k )Ay] x min і 1,

I - H(k)K(k)Ay| J ’

(11)

где * - тот же аргумент, ограничивающий изменение значения функции, что и для РФК для ситуации выброса (10).

Рис. 4. Схема РФКБ для фильтрации случайных процессов, содержащих скачки

Гибридный робастный фильтр Калмана (ГРФК). Очевидно, одновременная фильтрация возможна только с некоторой задержкой Ат . Это необходимо для принятия решения о типе выброса. Вследствие выброса скорей всего увидим один большой всплеск (3), а вследствие скачка изменится среднее значение целой последовательности (6). ГРФК может быть реализован следующим образом [6]: РФК для ситуации скачка работает по умолчанию, и всякий раз, когда ширина выброса больше окна наблюдения Ат , единожды используется процедура РФК для ситуации скачка. Формализуем описанный алгоритм:

x(k+r>=ф(1+1,k )x(k)+(1-n) K (k )Ay min j1, k (k)AyJ+r|H (k ^ - H (k )K (k )Ay]x min j1, I _ H k)K (k )AyJ,

cond(k),

cond(k),

(12)

(1З)

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

1 def cond(arr, w, b):

2 try:

3 arr[ - w]

4 except IndexError:

5 return False

6 if arr[ - w]<b:

7 return False

8 if w==1 and arr[ - w]>=b:

9 return True

10 if k==1 and arr[ - w]<b:

11 return False

12 else:

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

13 if cond(arr, w -1, b):

14 return True # обнаружен скачок

15 else:

16 return False # не обнаружен скачок

Выбор уровня отсечения b. Чтобы выбрать уровень отсечения b, сделаем простое допущение, что условное математическое ожидание E [Ax (k )| Ay (к)] линейное, где Ax(k) = x(k) - x(k), кото -

рое является верным только приблизительно. В этих условиях есть два предложения.

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

Ax(k) - K (k )Ay min І1,

—J

I ’ K (k)Ay| J

= (1 + 5) EI Ax(k) - K (k )Ay|,

(14)

и для скачка

Ax(k) _ H (k)[ _ H (k) K (k )Ay]min І1,т

= (1+8)E|Ax(k)_ K(k)Ay . (15)

У - н (к) к (к )ду \

Другую возможность дает размер окрестности иг, определенный радиусом г е [0;1]. Определим Ь = Ъ(г) такое, что

(1 - г)Е|К(к) Ду - Ь + = гЬ . (16)

Если радиус неизвестен, можно воспользоваться идеей, разработанной в [8]. Здесь определяется наименьший благоприятный радиус го с помощью следующих уравнений:

Гз = аг§тт ^[ОД РоС^ (17)

Р0<У) = тах ге[0;1] Р(г, (18)

тахцгг МБЕ (гЬБ (Ь (5)))

P(r, s) =-

(19)

тахиг МБЕ (гЬБ (Ь(г))) и далее используется соответственно Ь = Ь(го).

Примеры симуляции оценки с помощью алгоритмов РФК. Чтобы сравнить алгоритмы фильтрации, промоделируем оценивание с помощью описанных робастных алгоритмов и ФК с параметрами, используемыми для рис. 1, и при г = 0,02 . Результаты приведены на рис. 5-8. Сплошной линией со снежинками показан наблюдаемый процесс (2), сплошной - оценка оптимальным ФК (5), штрихпунктирной с точками - РФК для ситуации с выбросами, штрихпунктирной - РФК для ситуации со скачками и штрихпунктирной со снежинками - ГРФК. На рис. 5 представлены результаты оценивания временного процесса без выбросов и скачков (2), из графика следует, что рассмотренные робастные алгоритмы не теряют своей оптимальности по сравнению с ФК во время оценивания процесса без выбросов и скачков.

P^. 5. Процесс фильтрации в идеальных условиях

На рис. б представлены результаты оценивания временного процесса с выбросами (3). Видно, что алгоритмы PФK и ^ФК обеспечивают формирование устойчивых оценок при наличии выброса задержки во входном сигнале.

На рис. У представлены результаты оценивания временного процесса со скачками (4). Из графиков поведения оценок следует, что алгоритмы PФK и ^ФК при наличии скачка обепечивают быстрое переключение на новое значение задержки. Вместе с этим алгоритм PФK при наличии скачка не обеспечивает его отслеживание.

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

Исследование СКО оценок задержки для рассмотренных алгоритмов выполнялось методом прямого вероятностного моделирования.

Рис. 6. Переходный процесс в фильтрах при наличии выброса во входном сигнале (одиночная реализация)

Порядковый номер пакета Рис. 7. Переходный процесс в фильтрах при наличии скачка во входном сигнале (одиночная реализация)

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

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

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

Условия без выбросов и скачков Условия с выбросами Условия со скачками Условия с выбросами и скачками

ФЕ G,1327 0,1722 0,б024 0,2371

PФK (для выбросов) 0,1б85 G,163 0,б515 0,3052

PФK (для скачков) 0,135 0,19 G,5G24 0,2бЗ0

ГСФИ 0,139 0,1б8 0,5523 G,1869

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

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

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

Литература

1. Masreliez C.J. Approximate non - Gaussian filtering with linear state and observation relations // IEEE Transactions on Automatic Control. - 1975. - Vol. 20, № 1. - P. 107-110.

2. Masreliez C.J. Robust Bayesian Estimation for the Linear Model and Robustifying the Kalman Filter / C.J. Masreliez, R.D. Martin // IEEE Transactions on Automatic Control. - 1977. - Vol. 22, № 3. -P. 361-371.

3. Ершов А. А. Робастный фильтр Калмана в дискретном времени / А. А. Ершов, РШ. Липцер // Автоматика и телемеханика. - 1978. - № 3. - С. 60-69.

4. Ершов А.А. Робастные алгоритмы фильтрации // Автоматика и телемеханика. - 1978. - № 7. С. 68-73.

5. Clark A. Analysis, measurement and modeling of Jitter. - ITU-T Delayed Contribution. - Geneva: Switzerland, 2003. - 12 p.

6. Ruckdeschel P. Optimally robust kalman filtering // Berichte des Fraunhofer ITWM (Kaiserslautern, Germany). - 2010. - № 185. - 53 p.

7. Поповский В.В. Математические основы управления и адаптации в телекоммуникационных системах. / В.В. Поповский, В.Ф Олейник. - Харьков: СМИТ, 2011. - 362 с.

8. Rieder H. The cost of knowing the radius/ H. Rieder, M. Kohl, P. Ruckdeschel // Statistical Methods and Applications. - 2008 - Vol. 17, № 1. - P. 14-40.

Кобрин Артем Витальевич

Аспирант каф. телекоммуникационных систем

Харьковского национального университета радиоэлектроники (ХНУРЭ)

Тел.: +380990546848

Эл. почта: kobrin.artem@gmail.com

Тур Богдан Сергеевич

Аспирант каф. телекоммуникационных систем ХНУРЭ Тел.: +3-8-050-806-95-48 Эл. почта: bogdan_tur@mail.ru

Kobrin A.V., Tur B.S.

Estimation of network delay in IP technology by robust Kalman filter

A model of the delay with jumps and emissions was suggested in the paper, it allows simulating a real process delays. We proposed to use the robust Kalman filter to estimate the delay. Robust filter ignores individual bursts of delay and switches to the new delay value when the trend is changed.

Keywords: robust Kalman filter, delay, shaping filter, modeling.

i Надоели баннеры? Вы всегда можете отключить рекламу.