Научная статья на тему 'Фильтрация посредством выборки весовых коэффициентов. Обобщенный фильтр частиц (particle filter)'

Фильтрация посредством выборки весовых коэффициентов. Обобщенный фильтр частиц (particle filter) Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
712
124
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
НЕЛИНЕЙНАЯ ФИЛЬТРАЦИЯ / МЕТОД МОНТЕ-КАРЛО / ВЫБОРКА ВЕСОВЫХ КОЭФФИЦИЕНТОВ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Парахневич А.В., Солонар А.С., Горшков С.А.

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

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Парахневич А.В., Солонар А.С., Горшков С.А.

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

Текст научной работы на тему «Фильтрация посредством выборки весовых коэффициентов. Обобщенный фильтр частиц (particle filter)»

Доклады БГУИР

2012 № 3 (65)

УДК 621.396.96

ФИЛЬТРАЦИЯ ПОСРЕДСТВОМ ВЫБОРКИ ВЕСОВЫХ КОЭФФИЦИЕНТОВ. ОБОБЩЕННЫЙ ФИЛЬТР ЧАСТИЦ (PARTICLE FILTER)

А.В. ПАРАХНЕВИЧ, А С. СОЛОНАР, С.А. ГОРШКОВ

Военная академия Республики Беларусь Минск-57, 220057, Беларусь

Поступила в редакцию 22 декабря 2011

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

Ключевые слова: нелинейная фильтрация, метод Монте-Карло, выборка весовых коэффициентов.

Введение

Данная статья является второй в цикле статей, посвященных описанию фильтров частиц используемых в задачах нелинейной дискретной байесовской фильтрации. В первой статье [1] был рассмотрен метод численного интегрирования Монте-Карло [2-4] применительно к аппроксимации произвольных плотностей вероятности набором N случайных точек (частиц) и, как частный случай, аппроксимация апостериорных плотностей вероятности фильтруемых дискретно изменяющихся случайных марковских векторных параметров [5].

Эта статья посвящена переходу от выражения рекуррентного вычисления весов w'k и

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

Цель статьи: рассмотреть алгоритм фильтрации обобщенного фильтра частиц.

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

Исходными данными являются совокупность из N частиц на k-1 шаге |ak_1з w'kс координатами a'k_1 и весами w'k_1 (при i = 1: N,N >> 1) [1], а также результат наблюдения на текущем шаге 8 k .

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

Для решения поставленной задачи последовательно рассмотрим алгоритм выборки весовых коэффициентов SIS (Sequential Importance Sampling), опишем явление вырождения (как результат использования алгоритма SIS) и алгоритм перевыборки (Resampling; как средство предотвращения такого вырождения). Далее перейдем к рассмотрению алгоритма обобщенного фильтра частиц (SIR Particle Filter).

Фильтрация посредством выборки весовых коэффициентов

В основе алгоритма фильтрации частиц посредством выборки весовых коэффициентов лежит рекуррентное вычисление весов случайных отсчетов (частиц) и аппроксимация апостериорной плотности вероятности p(aк | ©к ) вектора состояния ак при наблюдении совокупного

вектора наблюдений 0к , где 0к = {0к,0к_1,...,01} [1, 6, 7].

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

координатами и весами {ак_1з w'1_1 }Nj ,и результат наблюдения на текущем шаге 0к . На выходе функции формируется совокупность частиц {ак, w'1 в качестве аппроксимации апостериорной плотности вероятности p(aк | 0к ) [1, 6, 8-10], а также оценка математического ожидания аппроксимируемой апостериорной ПВ ак [11, 12].

Так как процедура фильтрации является рекуррентной, то вычисление текущей оценки апостериорной плотности вероятности осуществляется с использованием весов, экстраполированных с предыдущего на текущий шаг при помощи переходной значимой плотности вероятности (пункт 2 псевдокода на рис. 1), описанной в [1, 6, 12].

[ К > М|1] - ]={<4-1 ■ ■11'>-1 },=! •19* ]

Вход: Г» i ¥ 1_1 - аппроксимация апостериорной ПВ на (к-1) шаге (совокупность

частиц и весов на [к-1) шаге);

- вектор наблюдаемых параметров на текущем шаге;

Вь,ход: кхГ, - аппроксимация апостериорной ПВ на текущем к-ом шаге

(совокупность частиц на к-ом шаге);

ик - оценка математического ожидания аппроксимируемой

апостериорной ПВ

i. Генерация координат частиц из значимой ПВ q(at (for /'= 1,...,N):

a't ~ q( a *K-iA)-

2. Определение значений ненормированных весов частиц (for i=l,...,N):

/'(<>: a't)p(a't |а'м)

ΫK-iA)

3. Определение нормирующего коэффициента т^» - . Л '

4. Вычисление нормированных весов частиц (for/=l,...,W):

"i = "V к

5. Нахождение математического ожидания аппроксимируемой плотности вероятности: « 2. " •

6. Вернуть результат в виде математического ожидания плотности вероятности и набора координат и весов ^а^.и^¡'"р«^

Рис. 1. Псевдокод алгоритма фильтрации посредством выборки весовых коэффициентов (SIS)

Проблема вырождения

Наличие предполагаемого случайного маневра цели см в модели движения, заложенной в фильтр, будет приводить к тому, что координаты частиц с течением времени будут получать все больший разброс (наблюдается рост дисперсии ошибки аппроксимации ПВ). Число частиц, формирующих результирующую оценку математического ожидания апостериорной плотности вероятности, будет уменьшаться, и в конечном итоге оценку будет формировать лишь одна значимая частица, с весом, значительно превышающим веса остальных частиц. Это неизбежно будет приводить к увеличению ошибок фильтрации и срыву с сопровождения. В [6] возникновение таких ситуаций названо «явление вырождения». Графически вырождение можно пояснить рис. 2. Слева на рисунке представлена гауссова плотность вероятности аппроксимированная набором из N частиц на 1-м шаге наблюдения. На к-ом шаге (справа на рис. 2) по-

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

Рис. 2. Пример вырождения выборки за k шагов моделирования при N=1000

Явления вырождения невозможно избежать при рекуррентном использовании метода интегрирования Монте-Карло при решении задач последовательных решающих статистик, что явилось главной проблемой в развитии численных методов фильтрации [6]. В 1994 году Августином Конгом [13] в качестве меры вырождения было предложено использовать оценку эффективного размера выборки А^, показывающую число частиц, веса которых значительны [6, 13]:

1

N^ =

Г:« )2

(1)

где wk - нормированный вес.

Эффективный размер выборки лежит в диапазоне: 1 < N^ < N. Для обоснования этого утверждения достаточно рассмотреть два случая. В том случае, когда веса частиц одинаковые (т.е. w1k = 1/N для 7=1,..., N), эффективный размер выборки буде равен числу частиц: N= N .

В противоположном случае, когда w'k = 1 и w1к = 0 для всех 7 Ф ], эффективный размер равен единице ^^ = 1.

Перевыборка

В качестве средства для борьбы с явлением вырождения частиц используется перевыборка [6, 8, 11, 12, 14-17] - повторная генерация частиц на к-ом шаге по определенному правилу, описанному ниже. Перевыборку проводят каждый раз, когда наблюдается вырождение частиц (т.е. когда N^ становится ниже некоторого порога N\кг). Перевыборка позволяет перенести отсчеты из областей с малой вероятностью в области с большей вероятностью, что позволяет увеличивать число значимых отсчетов, существенно влияющих на результат аппроксимации (приводит к уменьшению дисперсии ошибки аппроксимации). Размер порога N йг в задачах фильтрации подбирается эмпирическим способом.

В основе алгоритмов перевыборки лежит отображение вырожденного (старого) случайного множества частиц |а 1сЛЛ, к, w1k ^ в новое случайное множество {а ^ к ,1/N^ 1 с одинаковыми весами 1/Ж Основная операция перевыборки - группирование частиц нового множества вокруг значимых частиц старого. Число новых частиц, сгруппированных вокруг каждой из значимых старых частиц, прямо пропорционально их весам w1k .

Для реализации операции группирования строятся две дискретные функции распреде-

ления весов: старых частиц с7 = ^ 1 w'm и новых частиц и7 = и + 7 /N, 7 = 2,N , где «1 - равно-

мерно распределенное в интервале от 0 до 1/N случайное число (рис. 3,а). Функция с; используется в качестве пороговой. Она имеет вид совокупности ступенек различной высоты, которая равна весу 7-й значимой частицы w!k , перемежающихся почти ровными площадками, протяженность которых определяется числом вырожденных частиц на данном участке. На рис. 3 показан пример функций С; и и; для N=15.

Вначале определяются значения аргументов функции с;, соответствующие ступенькам. Они определяются номерами наиболее значимых частиц старой выборки. В рассматриваемом примере это 4, 8 и 13. Затем определяются аргументы значений функции и;, попадающих между ступеньками с1. Например, между ступенькой нулевой высоты и С4 находятся значения и! -и6. Между ступеньками С4 и с8 находятся величины и7-и10, а между с8 и сп-ип-и15. На основании серии описанных выше сравнений новым частицам с 1-й по 6-ю присваиваются координаты старой частицы с номером 4: а^ к = а, к , У = 1, 6 , с 7-й по 10-ю - координаты

1 8 -

старой частицы с номером 8: а ^ к = aoid, к , У = 7, 10 , с 11-й по 15-ю - координаты старой частицы номер 13: ак = аОи,к ,У = 11, 15 (рис. 3,6).

а б

Рис. 3. Пояснение алгоритма перевыборки при числе частиц N=15: а - примеры функций cf и uf; б - результат выполнения операции группирования

Пример программной реализации алгоритма перевыборки с использованием порядковых статистик (order statistics) [3, 4, 15] приведен на рис. 3 в виде псевдокода.

[{*l.k. w = Resample [{<4^

Вход:

Выход:

\aoidk>wkij-i - аппроксимация апостериорной ПВ на к-ом шаге (совокупность

частиц на к-ом шаге) до перевыборки; {^^»'/^-аппроксимация апостериорной ПВ на текущем к-ом шаге (совокупность частиц на к-ом шаге) после перевыборки.

1. Расчет совокупной суммы весов (ССВ)

Инициализация ССВ на первом шаге: с1 = п^1; Определение значений ССВ (for /=2,...,N)\

Ci ~ Ь-1 +w'k

2. Установка начальных значений:

Задать случайную начальную точку порога из равномерного закона u[]: iij ~ t/[0,JV_1];

Задать начальное значение переменной инкремента: / = 1:

3. Для переменной j, циклически выполнить операции (for j=2r...rN):

Определить значение порога: и3=щ+1Г10-1)

Инкрементировать значения i, пока выполняется условие Uj>q (while и^ > ci): i = i+1

Определить номер частицы исходной последовательности: rij = i Задать новую координату частицы: = аЦ%>к

Задать новый вес частицы: ■>!■'/ = 1/n

( , ,\N

4. Вернуть результат перевыборки в виде: \aJnswk,w£.

Рис. 4. Псевдокод алгоритма перевыборки (SIR)

Существуют и иные варианты реализации рассмотренной процедуры, например, стратифицированная и разностная перевыборки [11, 18, 19].

Обобщенный фильтр частиц

Рассмотрим пример, иллюстрирующий работу рекуррентного алгоритма обобщенного фильтра частиц для двух временных шагов при объеме выборки N=15 (рис. 5). Пусть на к-м шаге фильтрации имеется набор частиц {аг0к, } ^ , которым аппроксимирована апостериорная

ПВ р(ак | 0к) на k -м шаге измерения. При этом а0 к - априорное значение вектора состояния частицы, ^о' k = wк-l - априорное значение ее веса на к-м шаге. Пусть также порог запуска процедуры перевыборки Nthr = 3 . При наличии оценки вектора наблюдения §к и известной функции правдоподобия р(9к | а к) вычисляются нормированные веса wk апостериорной плотности

р(а к |0 к ) с координатами {ак

Плотность р(ак | 0к) является негауссовой, как видно из рис. 5. В ее пределах находится всего три значимые частицы. Остальные 12 частиц находятся практически вне ее пределов и имеют веса, стремящиеся к нулю. После перевыборки частицы группируются в трех областях высокой вероятности, причем вес каждой частицы равен 1/ N . При экстраполяции частиц с к-го на (к+1)-й шаг учитывается наличие случайного приращения с нулевым математическим ожиданием и заданным СКО с. В результате частицы с одинаковыми координатами на

(к+1)-м и последующих шагах начинают «рассыпаться» по области определения. Это при рекуррентном повторении шагов фильтрации вновь приводит к вырождению и к инициализации новой процедуры перевыборки.

5 ->'):-:

ООО

Формирование апостериорной

вероятное™ н

У 4

"ч\ I 1 1

110 О 7 120 О 8 130 Од 1Л0 010

на к-м шаге

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

К «Л"

6 42 5 3 1 1312 14 9 711 15 8 10

Рис. 5. Графическое представление работы фильтра частиц за 2 временных шага для числа частиц N=15

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

заданного порога Nthr. На выходе фильтра формируется набор частиц {ак, wlк } '=1, аппроксимирующий апостериорную плотность вероятности р(ак | 0к), а также оценка ее математического ожидания ак.

Несмотря на снижение негативного влияния эффекта вырождения на точность фильтрации, перевыборка порождает другие практические проблемы, например, ограничивает возможности по распараллеливанию алгоритма [4].

Как правило, оценка ПВ после перевыборки приводит к росту дисперсии ошибки этой оценки. Поэтому расчет математического ожидания вектора состояния ак производится до реализации процедуры перевыборки [6, 11, 12].

Заключение

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

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

«*, Щ »'Я к \ = РР [ К-1' М'

{«¿-15^-1 "аппроксимация апостериорной ПВ на к-1 шаге (совокупность частиц и их весов на к-1 шаге); бд. - оценка вектора наблюдения на к-м шаге ыход. |.=1 - аппроксимация апостериорной ПВ на текущем к-ом шаге

(совокупность частиц на к-ом шаге) после перевыборки;

ак - оценка математического ожидания аппроксимируемой апостериорной ПВ до перевыборки 1. Фильтрация посредством выборки весовых коэффициентов (псевдокод 1):

I ttv,W|

Ль

к )i=

2. Вычислить эффективный размер выборки 1

N

eff

- Проверить выполнение условия осуществления перевыборки:

К <мт

- Если условие выполнено - перейти к пункту 3, если не выполнено - к пункту 4 то произвести перевыборку (псевдокод 2):

4. Выдать результат фильтрации на текущем шаге в виде вектора: | \и!к,\ук 1 =1

Рис. 6. Псевдокод обобщенного фильтра частиц

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

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

SEQUENTIAL IMPORTANCE SAMPLING FILTERING. GENERIC PARTICLE FILTER

A.V. PARAKHNEVICH, A.S. SOLONAR, S.A. GORSHKOV

Abstract

Mathematical description of non-linear bayesian filtering using Monte-Carlo method is spent, the basis of Sequential Importance Sampling (SIS) filtering method is shown, features of resampling algorithm and constructing Generic particle filter by using resampling in the report are descrited.

Список литературы

1. Парахневич А.В., СолонарА.С., Горшков С.А. / Докл. БГУИР. 2012. №1(62). С. 22-28.

2. Hammersley J.M., Morton K. W. // Journal of the Royal Statistical Society B. 1954. Vol. 16. P. 23-38.

3. Соболь И.М. Численные методы Монте-Карло. М., 1973.

4. Gordon N.J., SalmondD.J., Smith A.F.M. // IEEE Proceedings-F. 1993. Vol. 140, №2. P. 107-113.

5. Daum F. // IEEE A&E Systems Magazine. 2005. Vol. 20, №8. P. 57-69.

6. Ristic B., Arulampalam S., Gordon N. Beyond the Kalman Filter. Particle filters for tracking applications. London, 2004.

7. Gordon N. // IEEE Transactions on Aerospace and Electronic systems. 1997.

8. DoucetA., Godsill S., Andrieu A. // Statistics and Computing. 2000. Vol. 10, №3. P. 197-208.

9. Doucet A., De Freitas N., Gordon N.J. // New York: Springer-Verlag, Series Statistics for Engineering and Information Science. 2001. P. 620.

10. Andrieu C., Doucet A. // Journal Royal Statistical Society B. 2000.

11. Bolic M. // Architectures for Efficient Implementation of Particle Filters. Dissertation of Ph. D. Stony Brook University. 2004.

12. Chen Z. // IEEE A&E Systems Magazine. 2011. №4. P. 69.

13. Kong A., Liu J.S., Wong W.H. // American statistical assotiation. 1994. Vol. 89, №425. P. 278-288.

14. PittM., ShephardN. // Journal of the American Statistical association. 1999. P. 590-599.

15. Marrs A., Maskell S., Bar-Shalom Y. // SPIE. 2002.Vol. 4728.

16. Merwe R. V.D., Doucet A., Freitas N. et al. // The Unscented Particle Filter. 2000.

17. Arulampalam M.S, Maskell S., Gordon N. et al. // IEEE Trans. Signal Processing. 2002. Vol. 50. P. 174-188.

18. Gustafsson F., Gunnarsson F., Bergman N. // IEEE Transactions on Signal Processing. 2002. P. 13.

19. Hlinka O, Sluciak O, Hlawatsch F. // IEEE ICASSP. 2011. P. 3756-3759.

20. ШирманЯ.Д., Багдасарян С.Т., Маляренко А.С. Радиоэлектронные системы: Основы построения и теория. М., 2007.

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