FILTRO DE PART ICULAS PARA SISTEMAS MAX PLUS COM …

8
FILTRO DE PART ´ ICULAS PARA SISTEMAS MAX PLUS COM DENSIDADE DE IMPORT ˆ ANCIA ´ OTIMA Renato Markele Ferreira Cˆ andido * , Rafael Santos Mendes * * DSE/FEEC/UNICAMP Av. Albert Einsten, 400, 13083-852 Campinas, SP, Brasil Emails: [email protected], [email protected] Abstract— The main objective of this article is to synthesize a particle filter algorithm for max-plus systems that adopts the optimal choice for the importance density. It is presented a brief introduction to the Max Plus approach for Discrete Event Systems and the fundamentals of the particle filters. It leads to the algorithm for particles filtering. Lastly, a example is given. The results shows the accuracy of the method. Keywords— Stochastic Filtering, Particle Filters, Discrete Event Systems, Max plus Algebra. Resumo— Neste trabalho, desenvolve-se um algoritmo de filtragem de part´ ıculas que adota a escolha ´otima para a densidade de importˆancia. ´ E apresentada uma breve revis˜ao da abordagem Max Plus para Sistemas a Eventos discretos e de Filtros de Part´ ıculas. Em seguida, o algoritmo de filtragem de part´ ıculas ´ e desenvolvido. Um exemplo ´ e apresentado e os resultados mostram a eficiˆ encia do filtro desenvolvido. Palavras-chave— Filtragem Estoc´astica, Filtros de Part´ ıculas, Sistemas a Eventos Discretos, ´ Algebra Max- plus. 1 Introdu¸c˜ ao Os Sistemas a Eventos Discretos (SEDs) s˜ ao sis- temas cuja dinˆ amica ´ e dirigida pela ocorrˆ encia de eventos. Existem diversos modelos para re- presentar esses sistemas e a escolha de qual mo- delo utilizar depende fortemente das caracter´ ıs- ticas do sistema abordado. As Redes de Petri conseguem abordar uma ampla classe de SEDs, em especial os sistemas temporizados, que podem ser representados pelas Redes se Petri Tempori- zadas (Cassandras and Lafortune, 2007). Uma associa¸c˜ ao importante pode ser feita entre SEDs sem concorrˆ encia e uma subclasse de Redes de Pe- tri denominada Grafos de Eventos Temporizados (GETs) (Baccelli, 1992). Qualquer GET pode ser descrito em termos de equa¸c˜ oes lineares em uma ´ algebra n˜ ao convencional usualmente deno- minada ´ Algebra Max Plus. Esta abordagem ´ e ba- seada nas estruturas alg´ ebricas conhecidas como di´ oides ou semi-an´ eis idempotentes. O desenvol- vimento desta estrutura alg´ ebrica e a formaliza¸ ao de sua utiliza¸ ao na teoria de SEDs possibilitou o surgimento de uma teoria de controle espec´ ıfica para estes sistemas (Cohen et al., 1999; Cotten- ceau et al., 2001; Maia et al., 2005). Deste modo, a observa¸c˜ ao ou estima¸c˜ ao dos estados ´ e de grande interesse, pois fornece informa¸c˜ oes sobre as propri- edade internas do sistema que podem utilizadas em v´ ariasaplica¸c˜ oes como detec¸c˜ ao de falhas, di- agn´ osticos, al´ em de controladores com realimenta- ¸c˜ ao de estados. O problema de observabilidade em Redes de Petri Temporizadas ´ e tratado em (Loreto et al., 2010) e (Hardouin et al., 2010). Neste trabalho, pretende-se desenvolver um algoritmo de um Filtro de Part´ ıculas para esti- mar os estados de Sistemas a Eventos Discretos (SEDs) em um contexto ruidoso em que os esta- dos do sistema correspondem ` as datas de ocorrˆ en- cia dos diversos tipos de eventos apresentados em fun¸c˜ ao da vari´ avel interna correspondente a um contador de eventos. Os Filtros de Part´ ıculas s˜ ao filtros Bayesianos sub-´ otimos que realizam uma amostragem sequen- cial de Monte Carlo, por meio de uma densidade de importˆ ancia, para construir um conjunto de part´ ıculas com pesos associados constituindo uma aproxima¸ ao para a densidade de probabilidade dos estados do sistema condicionada ` a sequˆ encia de medidas recebidas. (Ristic et al., 2004). Uma das etapas mais importantes no projeto de um filtro de part´ ıculas ´ e a escolha da densidade de importˆ ancia. Em (Silva et al., 2011) e (Cˆ andido et al., 2013), s˜ ao desenvolvidos filtros de part´ ıculas para sistemas Max Plus que utilizam uma escolha sub-´ otima para a densidade de importˆ ancia. Neste trabalho, prop˜ oe-se a utiliza¸c˜ ao da escolha ´ otima para a densidade de importˆ ancia. 2 Sistemas Max Plus A ´ Algebra Max Plus ´ e uma instˆ ancia das estru- turas alg´ ebricas conhecidas como di´ oides ou semi- an´ eis idempotentes. Nesta abordagem, as opera- ¸c˜ oes de soma e produto s˜ ao definidas como sendo, respectivamente, as opera¸ oes de maximiza¸c˜ ao e de soma da ´ algebra usual. Utilizando-se a ´ alge- bra Max Plus, ´ e poss´ ıvel descrever um GET por meio de equa¸c˜ oes lineares recursivas. Neste tra- balho, ser˜ ao considerados os Grafos de Eventos p-Temporizados. Nestes grafos, a cada lugar ´ e associado um tempo m´ ınimo de permanˆ encia de Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014 3413

Transcript of FILTRO DE PART ICULAS PARA SISTEMAS MAX PLUS COM …

Page 1: FILTRO DE PART ICULAS PARA SISTEMAS MAX PLUS COM …

FILTRO DE PARTICULAS PARA SISTEMAS MAX PLUS COM DENSIDADE DEIMPORTANCIA OTIMA

Renato Markele Ferreira Candido∗, Rafael Santos Mendes∗

∗DSE/FEEC/UNICAMPAv. Albert Einsten, 400, 13083-852

Campinas, SP, Brasil

Emails: [email protected], [email protected]

Abstract— The main objective of this article is to synthesize a particle filter algorithm for max-plus systemsthat adopts the optimal choice for the importance density. It is presented a brief introduction to the Max Plusapproach for Discrete Event Systems and the fundamentals of the particle filters. It leads to the algorithm forparticles filtering. Lastly, a example is given. The results shows the accuracy of the method.

Keywords— Stochastic Filtering, Particle Filters, Discrete Event Systems, Max plus Algebra.

Resumo— Neste trabalho, desenvolve-se um algoritmo de filtragem de partıculas que adota a escolha otimapara a densidade de importancia. E apresentada uma breve revisao da abordagem Max Plus para Sistemas aEventos discretos e de Filtros de Partıculas. Em seguida, o algoritmo de filtragem de partıculas e desenvolvido.Um exemplo e apresentado e os resultados mostram a eficiencia do filtro desenvolvido.

Palavras-chave— Filtragem Estocastica, Filtros de Partıculas, Sistemas a Eventos Discretos, Algebra Max-plus.

1 Introducao

Os Sistemas a Eventos Discretos (SEDs) sao sis-temas cuja dinamica e dirigida pela ocorrenciade eventos. Existem diversos modelos para re-presentar esses sistemas e a escolha de qual mo-delo utilizar depende fortemente das caracterıs-ticas do sistema abordado. As Redes de Petriconseguem abordar uma ampla classe de SEDs,em especial os sistemas temporizados, que podemser representados pelas Redes se Petri Tempori-zadas (Cassandras and Lafortune, 2007). Umaassociacao importante pode ser feita entre SEDssem concorrencia e uma subclasse de Redes de Pe-tri denominada Grafos de Eventos Temporizados(GETs) (Baccelli, 1992). Qualquer GET podeser descrito em termos de equacoes lineares emuma algebra nao convencional usualmente deno-minada Algebra Max Plus. Esta abordagem e ba-seada nas estruturas algebricas conhecidas comodioides ou semi-aneis idempotentes. O desenvol-vimento desta estrutura algebrica e a formalizacaode sua utilizacao na teoria de SEDs possibilitou osurgimento de uma teoria de controle especıficapara estes sistemas (Cohen et al., 1999; Cotten-ceau et al., 2001; Maia et al., 2005). Deste modo,a observacao ou estimacao dos estados e de grandeinteresse, pois fornece informacoes sobre as propri-edade internas do sistema que podem utilizadasem varias aplicacoes como deteccao de falhas, di-agnosticos, alem de controladores com realimenta-cao de estados. O problema de observabilidade emRedes de Petri Temporizadas e tratado em (Loretoet al., 2010) e (Hardouin et al., 2010).

Neste trabalho, pretende-se desenvolver umalgoritmo de um Filtro de Partıculas para esti-

mar os estados de Sistemas a Eventos Discretos(SEDs) em um contexto ruidoso em que os esta-dos do sistema correspondem as datas de ocorren-cia dos diversos tipos de eventos apresentados emfuncao da variavel interna correspondente a umcontador de eventos.

Os Filtros de Partıculas sao filtros Bayesianossub-otimos que realizam uma amostragem sequen-cial de Monte Carlo, por meio de uma densidadede importancia, para construir um conjunto departıculas com pesos associados constituindo umaaproximacao para a densidade de probabilidadedos estados do sistema condicionada a sequenciade medidas recebidas. (Ristic et al., 2004). Umadas etapas mais importantes no projeto de umfiltro de partıculas e a escolha da densidade deimportancia. Em (Silva et al., 2011) e (Candidoet al., 2013), sao desenvolvidos filtros de partıculaspara sistemas Max Plus que utilizam uma escolhasub-otima para a densidade de importancia. Nestetrabalho, propoe-se a utilizacao da escolha otimapara a densidade de importancia.

2 Sistemas Max Plus

A Algebra Max Plus e uma instancia das estru-turas algebricas conhecidas como dioides ou semi-aneis idempotentes. Nesta abordagem, as opera-coes de soma e produto sao definidas como sendo,respectivamente, as operacoes de maximizacao ede soma da algebra usual. Utilizando-se a alge-bra Max Plus, e possıvel descrever um GET pormeio de equacoes lineares recursivas. Neste tra-balho, serao considerados os Grafos de Eventosp-Temporizados. Nestes grafos, a cada lugar eassociado um tempo mınimo de permanencia de

Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014

3413

Page 2: FILTRO DE PART ICULAS PARA SISTEMAS MAX PLUS COM …

uma ficha em um lugar antes que ela se torne dis-ponıvel para habilitar uma transicao. Na Figura 1encontra-se um Grafo de Eventos p-Temporizado.Nota-se que a temporizacao de alguns lugares edada por variaveis aleatorias, representando, porexemplo, uma incerteza quanto ao tempo de trans-porte de uma peca de um ponto ao outro do sis-tema.

Figura 1: Grafo de Eventos Temporizado

A cada transicao tj , pode-se associar umasequencia nao decrescente formada pelas variaveisxj(k), k = 1, 2, ...,, denominadas datadores, con-tendo o k− esimo instante de disparo da transicaotj . Assumindo-se que as sequencias de disparoassociadas as transicoes de entrada sao conheci-das, e possıvel determinar as sequencias de dis-paro de todas as transicoes do GET. Adotando-sea convencao de que os tempos notados por [A B]representam variaveis aleatorias com distribuicaouniforme entre A e B; e definindo-se a variavelaleatoria µ1 ∼ [8 12], a seguinte relacao pode serverificada para a transicao X1 do grafo apresen-tado na Figura 1.

x1(k) = max{µ1 + x1(k − 1);

7 + x2(k − 1);u(k)} (1)

Considerando agora o conjunto R ∪ {−∞} ∪{∞} e redefinindo as operacoes: soma = ⊕ =max e produto = ⊗ = +, a equacao (1) pode serreescrita como:

x1(k) = µ1⊗x1(k−1)⊕7⊗x2(k−1)⊕u(k). (2)

De modo geral, adotando-se o mesmo proce-dimento, todas as transicoes podem ser descritaspor equacoes lineares recursivas. Na forma matri-cial, o grafo da Figura 1 e descrito por:

xk = A⊗ xk−1 ⊕B ⊗ ukzk = C ⊗ xk

(3)

sendo as matrizes A, B e C sao dadas por:

A =

[µ1 7µ2 10

]; B =

[e3

];

C =

[15 εε µ3

]

e µ1, µ2 e µ3 sao variaveis aleatorias dadas porµ1 ∼ [8 12], µ2 ∼ [10 16] e µ3 ∼ [10 14]. E asconstantes e

.= 0 e ε

.= −∞ representam, respec-

tivamente, os elemento unitario e o elemento nuloda algebra Max Plus.

Nota-se que, utilizando a algebra Max Plus,todas as transicoes do sistema foram descritas pormeio de equacoes lineares recursivas.

Um conjunto D, munido de duas operacoesinternas soma ≡ ⊕ e produto ≡ ⊗ e um dioide ousemi-anel idempotente se a soma e associativa,comutativa e idempotente (i.e. a ⊕ a = a) e oproduto e associativo e distributivo a esquerda ea direita em relacao a soma. E necessaria tambem,a existencia de um elemento nulo (i.e. ∃ε ∈ D :∀a ∈ D, a ⊕ ε = a) e de um elemento identidade(i.e. ∃e ∈ D : ∀a ∈ D, a ⊗ e = e ⊗ a = a).O elemento nulo deve, ainda, ser absorvente emrelacao ao produto (i.e. ∀a ∈ D, a⊗ ε = ε⊗a = ε)(Baccelli, 1992). Dadas estas condicoes, pode-severificar que o conjunto R ∪ {−∞} ∪ {∞} e asoperacoes ⊕ ≡ max e ⊗ ≡ +, com ε = −∞ ee = 0, formam um dioide. Alem disso, pode-severificar que este e um dioide completo ja que efechado em relacao a somas infinitas e o produtoe distributivo em relacao a somas infinitas. Esteconjunto e chamado de Max-Plus e e notado porRmax.

3 Filtros de Partıculas

Os Filtros de Partıculas (FP) sao algoritmos Baye-sianos sub-otimos para filtragem nao linear. Amaioria destes filtros e baseada no metodo deamostragem sequencial de Monte Carlo (SMC)(Arulampalam et al., 2002). A ideia principale obter estimativas para a densidade p(xk|zk) apartir de um conjunto de N partıculas com pe-sos associados {xik−1, ω

ik−1}Ni=1, que aproximam

a densidade p(xk−1|zk−1) em k − 1 a partir de:

p(xk−1|zk−1) ∼=N∑i=1

ωik−1δ(Xk−1 −Xik−1) (4)

Basicamente, o processo de filtragem de par-tıculas pode ser dividido em duas etapas: a etapade propagacao das partıculas e a etapa de atuali-zacao dos pesos. Na etapa de propagacao, utiliza-se uma densidade de importancia, notada porq(xik|xik−1, zk), para propagar cada partıcula xik−1

para xik, ou seja, nesta etapa, o conjunto de partı-culas {xik−1}Ni=1 e formando a partir de N amos-tras distribuıdas segundo a densidade de impor-tancia. Na segunda etapa, utiliza-se a equacao deatualizacao dos pesos para atualizar os pesos daspartıculas propagadas.

Em (Ristic et al., 2004) demonstra-se que aequacao de atualizacao dos pesos e dada por:

ωik ∝ ωik−1

p(zk|xik)p(xik|xik−1)

q(xik|xik−1, zk), (5)

Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014

3414

Page 3: FILTRO DE PART ICULAS PARA SISTEMAS MAX PLUS COM …

Deste modo, utilizando-se o processo defiltragem de partıculas, a partir do conjunto{xik−1, ω

ik−1}Ni=1 e possıvel obter um conjunto de

partıculas com pesos associados {xik, ωik}Ni=1, queaproximam a densidade p(xk|zk).

Em (Kong et al., 1994) demonstra-se que avariancia dos pesos de importancia e uma funcaocrescente de k. Deste modo, um algoritmo de fil-tragem de partıculas composto apenas pelas eta-pas de propagacao e atualizacao sofre com o feno-meno da degeneracao das partıculas. Este feno-meno ocorre quando, apos algumas iteracoes, mui-tas partıculas obtem pesos muito baixos, sendoassim, sua contribuicao para a aproximacao dep(xk|zk) e desprezıvel.

O tamanho efetivo da amostra Neff =(∑Ni=1 ω

ik

)−1

pode ser usado como um indicador

para o grau de degeneracao do algoritmo (Konget al., 1994; Liu and Chen, 1998). Observa-se que1 ≤ Neff ≤ N , sendo que o limite superior N eatingido quando todas as partıculas tem o mesmopeso 1/N , e o limite inferior ocorre quando todasas partıculas, exceto uma, tem peso nulo. Umaalternativa para se superar este fenomeno e a uti-lizacao de um processo de reamostragem no qualas partıculas sao clonadas com uma probabilidadeproporcional ao seu peso. Deste modo, partıculascom pesos baixos tendem a ser eliminadas e partı-culas com pesos relevantes tendem a ser clonadas(Ristic et al., 2004).

A escolha da densidade de importancia influ-encia diretamente o grau de degeneracao do algo-ritmo e, consequentemente, o seu desempenho. Adensidade de importancia otima condicionada porxik−1 e zk e dada por: (Doucet et al., 2000)

q(xk|xik−1, zk)otm = p(xk|xik−1, zk)

=p(zk|xk)p(xk|xik−1)

p(zk|xik−1)(6)

Substituindo-se (6) em (5), encontra-se a se-guinte equacao de atualizacao dos pesos para estaescolha da densidade de importancia:

ωik ∝ ωik−1p(zk|xik−1) (7)

Segundo (Gustafsson, 2010), a otimalidade daescolha da densidade de importancia definida por(6) provem do fato de que, para esta escolha, avariancia dos pesos de importancia ωik condicio-nada por xik−1 e zk e nula. Deste modo, qualqueroutra escolha para a densidade de importancia iraacrescentar variancia aos pesos de importancia.

No filtro de partıculas desenvolvido na pro-xima secao, utiliza-se a densidade de importanciaotima para propagar as partıculas.

4 Filtros de Partıculas para SistemasMax Plus

Nesta secao, desenvolve-se um Filtro de Partıcu-las, que utiliza a densidade de importancia otimadada pela equacao (6), para estimar os estados deSistemas Max Plus Lineares descritos por:

xk = A⊗ xk−1 ⊕B ⊗ uk (8)

zk = C ⊗ xk (9)

Admite-se que os elementos das matrizes Ae C sao determinısticos ou variaveis aleatoriascom distribuicao uniforme independentes entre si.Admite-se ainda que em cada linha e em cada co-luna da matriz C pode existir mais do que umelemento nao nulo, mas nao mais que um valordeterminıstico.

Para a escolha otima para a densidade de im-portancia, a equacao de atualizacao dos pesos edada pela equacao (7). Portanto, para o desenvol-vimento do filtro com a densidade de importanciadesejada, e necessario obter um conjunto de par-tıculas distribuıdas segundo a equacao (6) e, paraa etapa de atualizacao dos pesos, e necessario cal-cular o valor de p(zk|xik−1). Uma maneira de sesatisfazer a estas duas necessidades e apresentadaa seguir.

Neste trabalho, particiona-se o vetor de es-tados entre estados observados e nao observados.Um estado e dito nao observado se a correspon-dente coluna da matriz C e nula, caso contrario,o estado e dito observado. Seja esta particao de-finida por:

xk =[(γo)T (γno)T

]T, (10)

sendo γo e o vetor de estados diretamente obser-vados e γno e o vetor de estados nao observados

Como consequencia imediata deste particio-namento do vetor de estados, pode-se reescreveros termos que aparecem no numerador da equa-cao (6) da seguinte maneira:

p(xk|xik−1) = p(γo|xi

k−1)p(γno|xik−1) (11)

p(zk|xk) = p(zk|γo) (12)

Este fato permite que o vetor de estados possaser construıdo gerando-se os estados observados enao observados separadamente, a partir das se-guintes densidades de probabilidade:

γno ∼ p(γno|xik−1) (13)

γo ∼p(zk|γo)p(γo|xi

k−1)

p(zk|xik−1)

(14)

Seja V (γo).= p(zk|γo)p(γo|xi

k−1). A partirda funcao de verossimilhanca para sistemas MaxPlus, definida no Apendice A, tem-se que a funcao

Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014

3415

Page 4: FILTRO DE PART ICULAS PARA SISTEMAS MAX PLUS COM …

V (γo) e dada por:

V (γo) =

q∏r=1

n1∑s=1

drs(zr − γos )

n1∏l=1,l6=j

Nrl(zr − γol )

·n1∏i=1

n∑j=1

pij(γoi − x

′j)

n∏k=1,k 6=j

Fik(γoi − x

′k)

(15)

sendo γoi , zi e x′i representam o i-esimo elementodos vetores γo, zk e xk−1 respectivamente, e nn1 e q sao as dimensoes dos vetores xk−1, γo ezk respectivamente. As funcoes drs e Nrl repre-sentam, respectivamente, a funcao densidade deprobabilidade correspondente ao elemento cors damatriz Co e a funcao de probabilidade acumuladado elemento corl. Analogamente, as funcoes pije Fik representam a funcao densidade de proba-bilidade e a funcao de probabilidade acumuladados elementos da matriz. As matrizes Ao e Cosao definidas como as submatrizes de A (e C) quecontem as linhas (colunas) associadas aos estadosobservados.

A geracao dos estados nao observados de cadapartıcula xik, distribuıdas segundo (13), pode serfeita de maneira simples e direta, a partir de (8).Deve-se notar, por outro lado, que a funcao V (γo),definida por (15), representa uma superfıcie emRn1 cujos elementos γo1 , γ

o2 , ···, γon1 sao dependen-

tes entre si, o que dificulta a geracao de partıculaspara os estados observados a partir de (14). Parasuperar este problema, neste trabalho, propoe-se autilizacao do metodo de Aceitacao Rejeicao (Lawand Kelton, 2000) para a geracao dos estados ob-servados de cada partıcula.

No metodo de Aceitacao Rejeicao, utiliza-seuma funcao Γ(x), conhecida como funcao ma-jorante, para obter-se amostras distribuıdas se-gundo uma densidade de interesse f(x). Admite-se que a funcao Γ(x) possui as seguintes proprie-

dades: Γ(x) ≥ f(x), ∀ x e

∫ ∞−∞

Γ(x)dx = c. Deste

modo, a funcao h(x) = Γ(x)/c e uma densidadede probabilidade. Alem disso, e fundamental queseja mais facil amostrar a partir a densidade h(x)do que amostrar a partir de f(x).

O procedimento para o metodo de AceitacaoRejeicao consiste em gerar um variavel aleatoriaY com densidade h(x) = Γ(x)/c, e uma variavelaleatoria U , independente de Y e com distribuicaouniforme entre 0 e 1. Deste modo, o criterio deaceitacao e definido de tal maneira que a variavel

Y e aceita somente se U ≤ f(Y )

Γ(Y ). Neste caso, o

valor da variavel Y e atribuıdo a uma variavel X.Pode-se demonstrar que a variavel aleatoria X,gerada a partir deste metodo, possui densidade deprobabilidade igual a f(x). Pode-se provar ainda,que a probabilidade de aceitacao da variavel Y edada por 1/c.

Deseja-se, portanto, utilizar o metodo deAceitacao Rejeicao para gerar os estados obser-vados, distribuıdos segundo (14), de cada partı-cula xik. Nota-se que, para a aplicacao do metodode Aceitacao Rejeicao, necessita-se de uma fun-cao majorante para a densidade de interesse. NoApendice B, desenvolve-se a seguinte funcao ma-jorante para (14):

Γ(γo) =V (γo)

Ψ(16)

onde Ψ = p(zk|xik−1), e a funcao V (γo), devi-

damente definida no Apendice B, possui as se-guintes propriedades: V (γo) ≥ V (γo), ∀ γo e∫ ∞−∞

V (γo)dγo = c′.

Alem destas propriedades, a funcao V (γo) edefinida de tal maneira que e possıvel obter amos-tras distribuıdas segundo essa funcao, a menos deuma constante de normalizacao, de maneira inde-pendente. Deste modo, e mais facil obter amostrasa partir da funcao majorante quando comparadoa complexidade de se obter amostras utilizando adensidade de importancia otima de uma maneiradireta.

Para a funcao majorante dada por (16), tem-se que, o criterio de aceitacao para o metodo deAceitacao Rejeicao e definido da seguinte maneira:

• Aceitar Y se U ≤V1(Y )/Ψ

V 1(Y )/Ψ=

V1(Y )

V 1(Y ).

Mostrou-se, portanto, uma maneira de se ob-ter partıculas distribuıdas segundo a densidade deimportancia otima, por meio do metodo de acei-tacao rejeicao. Necessita-se, ainda, de se conhecero valor da constante de normalizacao Ψ para queos pesos possam ser atualizados.

Como um resultado direto do metodo de Acei-tacao Rejeicao, para a funcao majorante dada por(16), a probabilidade de aceitacao e dada por:(∫ ∞

−∞Γ(γo)dγo

)−1

c′. (17)

Deste modo, uma estimativa para Ψ e dadapor:

Ψ = c′λ

Λ(18)

onde Λ e um numero fixo de tentativas de acei-tacao da V.A. Y pelo metodo e λ e o numero devezes em que a V.A. Y e aceita. Deste modo, λ/Λe uma estimativa para a probabilidade de aceita-cao do algoritmo.

Sendo assim, as etapas de propagacao e atu-alizacao de um filtro de partıculas para sistemasMax Plus com densidade de importancia otimaestao definidas. No entanto, o filtro de partıculas

Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014

3416

Page 5: FILTRO DE PART ICULAS PARA SISTEMAS MAX PLUS COM …

definido desta maneira e sensıvel a um problemacausado por partıculas inconsistentes, que seraodefinidas a seguir.

Definicao 1 (Partıculas Inconsistentes)Uma partıcula xik−1 e dita inconsistente comuma medida zk se p(zk|xik−1) = 0.

Deste modo, uma partıcula inconsistente gerauma indeterminacao em:

p(xk|xik−1, zk) =

p(zk|xk)p(xk|xik−1)

p(zk|xik−1)

que e a densidade de importancia otima. Sendoassim, as partıculas inconsistentes devem ser de-tectadas e corrigidas.

Existem dois tipos de inconsistencias de par-tıculas:

Tipo 1: zk(j) e maior que o maximo valor alcan-cavel a partir da partıcula xik−1, isto e:

∃j ∈ {1, ..., q} : zk(j) > C(j, 1 : n)⊗ xik;

Tipo 2: zk(j) e menor que o mınimo valor alcan-cavel a partir da partıcula xik−1, isto e:

∃j ∈ {1, ..., q} : zk(j) < C(j, 1 : n)⊗ xik.

As matrizes C e C sao compostas, respectiva-mente, pelos limitantes superiores e inferiores dasvariaveis aleatorias da matriz C. Os vetores xike xik representam, respectivamente, os limitantessuperior e inferior para a partıcula xik definidospela medida zk e pela partıcula xik−1 (vide equa-coes (38) e (37)).

As partıculas classificadas como inconsisten-tes, podem ser corrigidas deslocando-as de ma-neira que a seguinte relacao seja atendida:

C ⊗ xik ≤ zk ≤ C ⊗ xik (19)

O Algoritmo 1, apresenta um pseudocodigopara o filtro de partıculas para sistemas Max Pluscom densidade de importancia otima, cujos passosprincipais foram desenvolvidos nesta secao.

5 Resultados

Considere o sistema descritos pelas matrizes A, Be C abaixo.

A =

ε ε ε ε

[1, 4] 1 ε ε

2 [2, 4] [2, 6] ε

ε [4, 6] ε ε

B =

[ε 4 5 ε

0 ε ε ε

]

C =[ε ε 3 [0, 6]

]O filtro de partıculas desenvolvido na secao

4, que sera referido como FP1, foi aplicado a estesistema, e os resultados foram comparados aos re-sultados do filtro de partıculas para sistemas MaxPlus, com densidade de importancia sub-otima,

Algoritmo 1: Filtro de Partıculas com oMetodo de Aceitacao Rejeicao

1 para i = 1 : N faca2 Corrigir inconsistencias ;3 Propagar os estados nao observados:

γno ∼ p(γno|xik−1) ;

4 λ←− 0;5 para j = 1 : Λ faca6 Gerar uma amostra a partir da funcao

majorante: Y ∼ V 1(γo)/c′ ;7 Gerar um numero aleatorio U

independente de Y , com distribuicaouniforme entre 0 e 1;;

8 se U ≤V1(Y )

V 1(Y )entao

9 γo ←− Y;10 λ←− λ+ 1;

fim

fim

11 Estimar p(zk|xik−1): Ψ←− c′ · λΛ ;

12 Atualizar os pesos: ωik ←− Ψωik−1;

fim13 Normalizar os pesos ;14 Se necessario, reamostrar;

desenvolvido em (Candido et al., 2013), que serareferido como FP2.

Nesta simulacao, considera-se que os disparosdas transicoes de entrada sao processos de Pois-son, deste modo os tempos inter-transicoes pos-suem distribuicao exponencial. Sendo assim, asentradas u1 e u2 foram geradas a partir de distri-buicoes exponenciais com medias 5 e 8 respectiva-mente.

Na Figura 2 encontram-se as sequencias dedisparo reais e estimadas para o estado x3, x4 ex5. Nota-se que a sequencia de disparos estimadapelo filtro FP1 e mais proxima da sequencia realde disparos. Pela Tabela 1, percebe-se que, paratodos os estados, as estimativas do filtro FP1 apre-sentaram erros quadraticos medios menores que asestimativas do filtro FP2, sendo que a maior dife-renca ocorre para o estado x3. Para o estado x2, oerro maximo cometido pelo filtro FP2 foi ligeira-mente maior que o erro cometido pelo filtro FP1.

Tabela 1: Comparando os Filtros FP1 e FP2Erro Quadratico MedioEst. FP1 FP2

x1 0.00 0.00

x2 0.84 0.85x3 0.53 0.98

x4 0.90 0.92

Erro MaximoEst. FP1 FP2

x1 0.00 0.00

x2 1.61 1.59x3 1.80 4.39

x4 2.25 2.26

6 Conclusoes

Neste trabalho, desenvolveu-se um algoritmo parafiltragem de partıculas em sistemas max-plus queadota a escolha otima para a densidade de impor-tancia. As etapas principais do algoritmo desen-

Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014

3417

Page 6: FILTRO DE PART ICULAS PARA SISTEMAS MAX PLUS COM …

(a)

(b)

(c)

Figura 2: Sequencias de disparo dos estados x2,x3 e x4

volvido sao: 1) A etapa de propagacao das partı-culas; 2) A etapa de atualizacao dos pesos; 3) Aetapa de reamostragem e 4) a etapa de correcaode inconsistencias.

A etapa de propagacao das partıculas e feitacom o auxılio do metodo de aceitacao rejeicao paragerar amostras distribuıdas segundo a densidadede importancia otima definida pela equacao (6).Este fato, possibilita a utilizacao da densidadede importancia otima, por outro lado, aumentao tempo de simulacao ja que, a cada iteracao doalgoritmo de filtragem, o metodo de aceitacao re-jeicao deve ser rodado Λ vezes (vide equacao (18)).A etapa de correcao de inconsistencias e de grandeimportancia pois evita uma situacao de bloqueiodo algoritmo na qual e impossıvel realizar a etapade propagacao das partıculas.

Os resultados apresentados mostraram que,ao custo de um tempo de estimacao consideravel-mente maior, o filtro desenvolvido neste trabalhoapresentou um desempenho melhor que o filtro de-senvolvido em (Candido et al., 2013), que utilizauma escolha sub-otima para a densidade de im-portancia.

Nos parecem viaveis aplicacoes deste filtro emprojetos de controladores de realimentacao de es-tado nos quais a informacao sobre os estados efornecida por um mecanismo de filtragem.

Agradecimentos

Este projeto contou com o financiamento dasagencias CAPES e CNPq.

A Funcao de Verossimilhanca

Para o calculo da funcao de verossimilhanca,considera-se a equacao max-plus z = C⊗x, sendox ∈ Rn×1, z ∈ Rq×1 e C ∈ Rq×n. Supoe-se queos elementos da matriz C, notados por cij , sejamvariaveis aleatorias independentes.

A densidade de probabilidade da variavel zcondicionada a x, ou seja, pZ(t|x), onde t =[t1 · · · tq]T ∈ Rq×1 e determinada a seguir (Silvaet al., 2011).

Devido a independencia dos elementos de Csegue-se que:

P [z ≤ t] = P [z1 ≤ t1 & . . . & zq ≤ tq ]

=

q∏i=1

P [zi ≤ ti] (20)

Porem:

P [zi ≤ ti] = P [maxj

(cij + xj) ≤ ti]

= P [ci1 ≤ ti − x1 & . . . & cin ≤ ti − xn]

=

n∏j=1

Fij(ti − xj) (21)

Portanto, a funcao de probabilidade acumu-lada conjunta da variavel aleatoria z, condicio-nada por x, e dada por:

FZ(t|x) =

q∏i=1

n∏j=1

Fij(ti − xj) (22)

Derivando-se sucessivamente em relacao at1 · · · tq, obtem-se a densidade de probabilidadeprocurada:

pZ(t|x) =

q∏i=1

∂ti

n∏j=1

Fij(ti − xj)

(23)

=

q∏i=1

n∑j=1

∂ti(Fij(ti − xj))

n∏k=1,k 6=j

Fik(ti − xk)

(24)

=

q∏i=1

n∑j=1

pij(ti − xj)

n∏k=1,k 6=j

Fik(ti − xk)

(25)

Se o vetor z for conhecido, esta funcao e cha-mada de funcao de verossimilhanca de x. Neste

Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014

3418

Page 7: FILTRO DE PART ICULAS PARA SISTEMAS MAX PLUS COM …

caso, substituindo-se t pelo valor conhecido de z,obtem-se:

V (x, z) =

q∏i=1

n∑j=1

pij(zi − xj)

n∏k=1,k 6=j

Fik(zi − xk)

(26)

B Funcao Majorante

Neste apendice, desenvolve-se uma funcao majo-rante para a funcao V (γo)/Ψ, onde V (γo) e defi-nida por (15) e Ψ e a uma constante de normali-zacao dada por:

Ψ = p(zk|xik−1). (27)

Deseja-se, portanto, definir uma funcao majo-rante Γ(γo) que satisfaca:

Γ(xk) ≥ V (γo))

Ψ, ∀γo (28)

Para satisfazer a esta condicao, a funcaoΓ(xk) pode ser definida como:

Γ(γo) =V (γo)

Ψ, (29)

onde V (γo) ≥ V (γo) , ∀γo e

∫ ∞−∞

V 1(γo)dγo = c′.

Na equacao (15), sabe-se que Nrl(zr − γol ) eFik(γoi − x′k) sao funcoes de probabilidade acu-mulada e, portanto, 0 ≤ Nrl(zr − γol ) ≤ 1 e0 ≤ Fik(γoi − x′k) ≤ 1. Deste modo, a seguinterelacao e valida:

V (γo) ≤q∏

r=1

(n1∑s=1

drs(zr − γos )

)

·n1∏i=1

n∑j=1

pij(γoi − x′j)

(30)

Definindo os conjuntos Sr e Ji como o con-junto dos elementos da linha r da matriz Co quesao determinısticos e, analogamente, Ji como oconjunto dos elementos da linha i da matriz Aoque sao determinısticos e sabendo-se que, em (30),drs e uma densidade de probabilidade com distri-buicao uniforme entre drs e drs pode-se estabele-cer as seguintes relacoes:∑

s 6∈ Sr

drs(zr − γos ) ≤∑

s 6∈ Sr

Drs = Dr (31)

∑j 6∈ Ji

pij(γoi − x′j) ≤∑

j 6∈ Ji

Pij = Pi (32)

onde:

Drs =1

drs − drsPij =

1

pij − pij

Deste modo, tem-se que:

V (γo) ≤

q∏r=1

Dr +∑

s ∈ Sr

δ(zr − γos − cors)

·n1∏i=1

Pi +∑

j ∈ Ji

δ(γoi − x

′j − a

oij)

(33)

onde δ(·) representa a funcao impulso.Dada a restricao de que pode haver no ma-

ximo um elemento determinıstico por linha damatriz C pode-se afirmar que a cardinalidade doconjunto Sr nao pode ser maior que um, ou seja,|Sr| ≤ 1. Deste modo, o primeiro produtorio dolado direito de 33 pode ser reescrito como:

q∏r=1

Dr +∑

s ∈ Sr

δ(zr − γos − cors)

=

q∏r=1

n1∏i=1

Hri (34)

onde:

Hri =

D1nr , se |Sr| = 0

Dr + δ(zr − γoi − cori), se|Sr| = 1

Sr = {i}

1, se|Sr| = 1

Sr = {j}j 6= i

(35)

Substituindo-se (34) em (33), tem-se que:

V (γo) ≤n1∏i=1

Pi +∑

j ∈ Ji

δ(γoi − x′j − aoij)

q∏r=1

Hri

(36)

A partir das equacoes do sistema, do vetorde medidas zk, da partıcula xik−1 e da teoria deresiduacao (Cohen et al., 1989), pode-se definir li-mitantes superior xi

k e inferior xik para a variavel

aleatoria xik, e, consequentemente, para γo, fora

dos quais a funcao V (γo) e nula. Sabe-se que oselementos das matrizes A e C sao ou determinıs-ticos ou variaveis aleatorias com distribuicao uni-forme. Deste modo, pode-se definir as matrizesA e A como sendo as matrizes formadas, respec-tivamente, pelos limitantes inferiores e superioresda matriz dos elementos de A. De maneira simi-lar, pode-se definir as matrizes C e C como sendoas matrizes formadas, respectivamente, pelos li-mitantes inferiores e superiores dos elementos deC.

Deste modo, os limitantes inferiores e superi-ores de xi

k sao dados por:

xik = A⊗ xik−1 (37)

xik = ximax1

∧ximax2 (38)

onde ⊗ representa a operacao produto da a algebraMax Plus,

∧e o operador de mınimo ponto a

ponto, e ximax1 e ximax2 sao dados por:

ximax1 = A⊗ xik−1 (39)

ximax2 = C\◦zk (40)

onde \◦ representa a operacao de residuacao dateoria de dioides (Cohen et al., 1989).

Portanto, na regiao definida porγo ≤ γo ≤ γo, a funcao V (γo) procurada e

Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014

3419

Page 8: FILTRO DE PART ICULAS PARA SISTEMAS MAX PLUS COM …

dada por:

V (γo) =

n1∏i=1

Pi +∑

j ∈ Ji

δ(γoi − x′j − aoij)

q∏r=1

Hri

(41)

E, fora dessa regiao, a funcao V (γo) e nula.Deve-se notar que esta funcao tem um for-

mato geral do tipo:

V (γo) = ρ1(γo1)ρ2(γo2) · · · ρn1(γon1). (42)

Deste modo, pode-se obter amostras paracada estado γoi de maneira independente a par-tir densidade hi(γ

oi ) = ρi(γ

oi )/c′i, onde c′i =∫

ρi(γoi )dγoi . De um modo geral, o valor de c′i

pode ser calculado a partir de:

c′i =(DrPi(γ

oi − γoi ) +Dr|Ji|+ Pi

). (43)

Exceto no caso especial em que os valores de γoi eγoi

sao iguais. Neste caso γoi deixa de ser uma va-riavel aleatoria tornando-se determinıstica. Sendoassim, o valor de c′i e dado por:

c′i = δ(0). (44)

Deve-se notar que, gerar amostras distribuı-das segundo hi(γ

oi ) e uma tarefa relativamente

simples, visto que esta funcao e formada por umacomponente uniforme somada com impulsos.

Referencias

Arulampalam, M., Maskell, S., Gordon, N. andClapp, T. (2002). A tutorial on particle fil-ters for online nonlinear/non-gaussian baye-sian tracking, Signal Processing, IEEE Tran-sactions on 50(2): 174 –188.

Baccelli, F. (1992). Synchronization and Linea-rity: An Algebra for Discrete Event Systems,Wiley series in probability and mathemati-cal statistics: Probability and mathematicalstatistics, Wiley.

Cassandras, C. and Lafortune, S. (2007). Intro-duction to Discrete Event Systems, Springer-Link Engineering, Springer.

Candido, R. M. F., Santos-Mendes, R., Hardouin,L. and Maia, C. (2013). Particle filter formax-plus systems, European Control Confe-rence, ECC 2013 .

Cohen, G., Gaubert, S. and Quadrat, J.-P. (1999).Max-plus algebra and system theory: Wherewe are and where to go now, Annual Reviewsin Control, pp. 207–219.

Cohen, G., Moller, P., Quadrat, J.-P. and Viot, M.(1989). Algebraic tools for the performanceevaluation of discrete event systems, Procee-dings of the IEEE 77(1): 39–85.

Cottenceau, B., Hardouin, L., Boimond, J.-L. andFerrier, J.-L. (2001). Model reference controlfor timed event graphs in dioids, Automatica37(9): 1451 – 1458.

Doucet, A., Godsill, S. and Andrieu, C. (2000).On sequential monte carlo sampling methodsfor bayesain filtering, Statistics and Compu-ting 10.

Gustafsson, F. (2010). Particle filter theory andpractice with positioning applications, Aeros-pace and Electronic Systems Magazine, IEEE25(7): 53–82.

Hardouin, L., Maia, C. A., Cottenceau, B. andLhommeau, M. (2010). Observer design for(max,+) linear systems, IEEE Trans. on Au-tomatic Control 55 - 2: 538 – 543.

Kong, A., Liu, J. S. and Wong, W. H. (1994).Sequential imputations and bayesian missingdata problems, Journal of the American Sta-tistical Association 89(425).

Law, A. and Kelton, W. (2000). Simulation mo-deling and analysis, McGraw-Hill series inindustrial engineering and management sci-ence, McGraw-Hill.

Liu, J. S. and Chen, R. (1998). Sequential montecarlo methods for dynamic systems, Jour-nal of the American Statistical Association93: 1032–1044.

Loreto, M. D., Gaubert, S., Katz, R. D. and Loi-seau, J. (2010). Duality between invariantspaces for max-plus linear discrete event sys-tems, SIAM J. on Control and Optimaztion.

Maia, C., Hardouin, L., Santos-Mendes, R. andCottenceau, B. (2005). On the model re-ference control for max-plus linear systems,Decision and Control, 2005 and 2005 Eu-ropean Control Conference. CDC-ECC ’05.44th IEEE Conference on, pp. 7799–7803.

Ristic, B., Arulampalam, S. and Gordon, N.(2004). Beyond the Kalman Filter, ArtechHouse.

Silva, D. F. e., Mendes, R. S., Hardouin, L., Maia,C. A. and Cottenceau, B. (2011). Filtragemestocastica aplicada a sistemas max-plus li-neares, Anais do X Simposio Brasileiro deAutomacao Inteligente, pp. 1388–1393.

Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014

3420