ASSIMILAÇÃO DE DADOS COM REDES NEURAIS ARTIFICIAIS … · ASSIMILAÇÃO DE DADOS COM REDES...

4
ASSIMILAÇÃO DE DADOS COM REDES NEURAIS ARTIFICIAIS EM EQUAÇÕES DIFERENCIAIS H. C. M. Furtado , H. F. de Campos Velho, E. E. N. Macau Instituto Nacional de Pesquisas Espaciais (INPE), Laboratório Associado de Computação (LAC) São José dos Campos, Brasil, e-mail: [helaine.furtado, haroldo, elbert]@lac.inpe.br Resumo: Assimilação de dados é uma ferramenta que com- bina de modo eficiente dados de observação com dados de um modelo físico-matemático para a determinação do dado de análise, que é usado para executar o modelo de previsão. Esse processo é fundamental, por exemplo, na prática op- eracional da previsão numérica do tempo e em circulação oceânica. Com o desenvolvimento do sistema de observação e a evolução dos modelos numéricos, a quantidade de dados disponíveis para serem assimilados é da ordem de 10 5 a 10 7 , enquanto que, o número de pontos de grade do modelo é da ordem de 10 6 a 10 8 . Isso representa uma computação in- tensiva e é um grande desafio desenvolver técnicas que pos- sam produzir um resultado de análise o mais preciso pos- sível, para produzir boa capaciade de previsão, o mais efi- ciente possível e tornar o custo de computação operacional- mente viável, em um contexto em que o número de pontos de grades e de observações são exponencialmente crescentes. Este trabalho tem como objetivo apresentar a ferramenta de redes neurais artificiais como uma técnica de assimilação de dados Palavras-chave: assimilação de dados, redes neurais artifici- ais, Filtro de Kalman, sistema dinâmico de Lorenz, equação da onda em uma dimensão 1. INTRODUÇÃO Descrever fenômenos físicos a partir de equações dife- renciais (parcial ou ordinária), é uma atividade passível de erro, uma vez que o modelo matemático é sempre uma aprox- imação da realidade. Um modo de “melhorar” esta descrição é adicionando informações ao modelo. Estas informações consistem de observações, que são dados provenientes de medidas sobre o fenômeno que se deseja modelar. No en- tanto, ao usar observações para estimar alguma propriedade do modelo matemático (condições iniciais, condições de contorno, propriedades do material e/ou da dinâmica, termos fontes) o problema de estimação é frequentemente um prob- lema mal posto [1]. Para determinar condições iniciais, a alternativa para a solução do problema é combinar de modo eficiente as ob- servações com o modelo matemático, por meio da utilização de técnicas de assimilação de dados, que podem ser baseadas em teoria da estimação (como: filtro de Kalman [2], filtro de partículas [3, 4]); baseadas no cálculo variacional [5]; ou ainda, baseadas em inteligência artificial, com o uso de Re- des Neurais Artificiais [7]. Como já bem conhecido, previsão numérica do tempo (PNT) é um problema de valor inicial [8]: “Dado uma estimativa do estado atual da atmosfera (condições iniciais), superfície apropriada e condições de contorno laterais, o modelo simula (prever) a sua evolução.” No entanto, mesmo considerando por hipótese que, os mo- delos determinísticos e as observações fossem perfeitas, a natureza caótica da atmosfera limitaria o tempo de previsibil- idade. Essa questão foi primeiramente observado no trabalho de Lorenz [9], em que a solução das equações semelhantes às que governam os movimentos atmosféricos apresentaram dependência sensível com relação a condição inicial, con- forme ilustrado na Figura 1. A Figura 2 ilustra a aplicação da técnica de assimilação de dados. Nota-se que à medida que são inseridas as observações no sistema, a dinâmica da esti- mativa (curva vermelha) está próxima da referência de ver- dade (curva azul), uma vez que é interrompido a inserção de observações, ocorre o desacoplamento das dinâmicas. Por- tanto, as observações, quando combinadas de modo eficiente com dados do modelo, servem para aproximar a estimativa da condição inicial ao valor desejado. A base dos algoritmos de assimilação de dados podem ser expressas como uma correção ou seqüência de correções dos estados do modelo. Este processo consiste de duas fases que são: a fase de previsão e a fase de análise ou incremento, representados matematicamente por: 595 http://dx.doi.org/10.5540/DINCON.2011.001.1.0152

Transcript of ASSIMILAÇÃO DE DADOS COM REDES NEURAIS ARTIFICIAIS … · ASSIMILAÇÃO DE DADOS COM REDES...

Page 1: ASSIMILAÇÃO DE DADOS COM REDES NEURAIS ARTIFICIAIS … · ASSIMILAÇÃO DE DADOS COM REDES NEURAIS ARTIFICIAIS EM EQUAÇÕES DIFERENCIAIS H. C. M. Furtado, H. F. de Campos Velho,

ASSIMILAÇÃO DE DADOS COM REDES NEURAIS ARTIFICIAIS EM EQUAÇÕESDIFERENCIAIS

H. C. M. Furtado, H. F. de Campos Velho, E. E. N. Macau

Instituto Nacional de Pesquisas Espaciais (INPE), Laboratório Associado de Computação (LAC)

São José dos Campos, Brasil, e-mail: [helaine.furtado, haroldo, elbert]@lac.inpe.br

Resumo: Assimilação de dados é uma ferramenta que com-bina de modo eficiente dados de observação com dados deum modelo físico-matemático para a determinação do dadode análise, que é usado para executar o modelo de previsão.Esse processo é fundamental, por exemplo, na prática op-eracional da previsão numérica do tempo e em circulaçãooceânica. Com o desenvolvimento do sistema de observaçãoe a evolução dos modelos numéricos, a quantidade de dadosdisponíveis para serem assimilados é da ordem de 105 a 107,enquanto que, o número de pontos de grade do modelo é daordem de 106 a 108. Isso representa uma computação in-tensiva e é um grande desafio desenvolver técnicas que pos-sam produzir um resultado de análise o mais preciso pos-sível, para produzir boa capaciade de previsão, o mais efi-ciente possível e tornar o custo de computação operacional-mente viável, em um contexto em que o número de pontosde grades e de observações são exponencialmente crescentes.Este trabalho tem como objetivo apresentar a ferramenta deredes neurais artificiais como uma técnica de assimilação dedados

Palavras-chave: assimilação de dados, redes neurais artifici-ais, Filtro de Kalman, sistema dinâmico de Lorenz, equaçãoda onda em uma dimensão

1. INTRODUÇÃO

Descrever fenômenos físicos a partir de equações dife-renciais (parcial ou ordinária), é uma atividade passível deerro, uma vez que o modelo matemático é sempre uma aprox-imação da realidade. Um modo de “melhorar” esta descriçãoé adicionando informações ao modelo. Estas informaçõesconsistem de observações, que são dados provenientes demedidas sobre o fenômeno que se deseja modelar. No en-tanto, ao usar observações para estimar alguma propriedadedo modelo matemático (condições iniciais, condições decontorno, propriedades do material e/ou da dinâmica, termosfontes) o problema de estimação é frequentemente um prob-

lema mal posto [1].Para determinar condições iniciais, a alternativa para a

solução do problema é combinar de modo eficiente as ob-servações com o modelo matemático, por meio da utilizaçãode técnicas de assimilação de dados, que podem ser baseadasem teoria da estimação (como: filtro de Kalman [2], filtrode partículas [3, 4]); baseadas no cálculo variacional [5]; ouainda, baseadas em inteligência artificial, com o uso de Re-des Neurais Artificiais [7].

Como já bem conhecido, previsão numérica do tempo(PNT) é um problema de valor inicial [8]:“Dado uma estimativa do estado atual da atmosfera(condições iniciais), superfície apropriada e condições decontorno laterais, o modelo simula (prever) a sua evolução.”No entanto, mesmo considerando por hipótese que, os mo-delos determinísticos e as observações fossem perfeitas, anatureza caótica da atmosfera limitaria o tempo de previsibil-idade. Essa questão foi primeiramente observado no trabalhode Lorenz [9], em que a solução das equações semelhantesàs que governam os movimentos atmosféricos apresentaramdependência sensível com relação a condição inicial, con-forme ilustrado na Figura 1. A Figura 2 ilustra a aplicação datécnica de assimilação de dados. Nota-se que à medida quesão inseridas as observações no sistema, a dinâmica da esti-mativa (curva vermelha) está próxima da referência de ver-dade (curva azul), uma vez que é interrompido a inserção deobservações, ocorre o desacoplamento das dinâmicas. Por-tanto, as observações, quando combinadas de modo eficientecom dados do modelo, servem para aproximar a estimativada condição inicial ao valor desejado.

A base dos algoritmos de assimilação de dados podem serexpressas como uma correção ou seqüência de correções dosestados do modelo. Este processo consiste de duas fases quesão: a fase de previsão e a fase de análise ou incremento,representados matematicamente por:

595

http://dx.doi.org/10.5540/DINCON.2011.001.1.0152

Page 2: ASSIMILAÇÃO DE DADOS COM REDES NEURAIS ARTIFICIAIS … · ASSIMILAÇÃO DE DADOS COM REDES NEURAIS ARTIFICIAIS EM EQUAÇÕES DIFERENCIAIS H. C. M. Furtado, H. F. de Campos Velho,

Figure 1 – Ilustração da sensibilidade das condições iniciais dosistema de Lorenz. Para condições iniciais ligeiramente difer-entes o modelo produz trajetórias distintas.

Figure 2 – Série temporal da componente x do sistema deLorenz. Curva azul: referência de verdade; quadrados verdes:observações; curva vermelha: estimativa.

(i) Passo de Previsão:

xpt = F(xa

t−1) (1)

(ii) Passo de Análise:

xat = xp

t + ρ (2)

em que xpt é o vetor de variáveis de estado prevista do mod-

elo, F representa o modelo numérico, ρ é o incremento deanálise ou inovação, que é determinado de acordo com a téc-nica de assimilação utilizada, xa

t representa o dado de análiseou condição inicial (c.i.).

As técnicas de assimilação de dados abordadas neste tra-balho são aplicadas ao sistema de Lorenz e na equação daonda linear, um modelo de equação diferencial parcial.

2. APLICAÇÕES

2.1. Sistema de Lorenz

O matemático Lorenz em 1963 propôs um sistema deequações para modelar fenômenos ligados a previsão dotempo [9]. O modelo de Lorenz é governado por um sistemaacoplado de equações diferenciais ordinárias de primeira or-

dem dado a seguir:

dx

dt= −σ(x− y) (3)

dy

dt= −ρx− y − xz (4)

dz

dt= xy − βz (5)

onde σ, ρ, β são parâmetros do modelo, neste caso corre-spondem aos seguintes valores 10, 28 e 8/3 , respectivamente.

2.2. Equação da onda linear

A equação governante é dada pela propagação da ondalinear a seguir:

∂ηF

∂t+ c

∂ηF

∂x= F (x, t) (6)

em que η é o deslocamento, c é a constante de velocidade defase, F é uma forçante externa, t é o tempo e x é o espaço.O subscript F indica a solução avançada, isto é, a soluçãoa priori. A Equação 6 pode ser interpretada também comoa equação da convecção, em que η é a concentração e c é ocoeficiente de convecção.

3. TÉCNICAS DE ASSIMILAÇÃO DE DADOS

3.1. Filtro de Kalman

Considere o sistema de equações 7 (os índices n denota otempo discreto e p o valor da previsão):

xpn+1 = Fnxp

n + µn

ypn = Hnxp

n + νn (7)

em que Fn é modelo matemático, µn é o ruído do modelo. Osistema de observações é modelado pela matriz Hn e νn é oruído associado as observações. O vetor de estado xn+1 sãoestimados recursivamente no tempo através de:

xan+1 = (I − Gn+1Hn+1)Fnxa

n + Gn+1ypn+1 (8)

sendo que xan+1 é o valor de análise, Gn é o ganho de

Kalman, calculado da minimização da estimação da variân-cia do erro Jn+1 [10]

Jn+1 = E(xan+1 − xp

n+1)T (xa

n+1 − xpn+1) (9)

onde E{.} é o valor esperado. O algoritmo para o filtro deKalman Linear é mostrado na Figura 3, sendo Qn é a covar-iância de µn e Rn a covariância de νn. A assimilação é feitaatravés da amostragem:

rn+1 ≡ yn+1 − ypn+1 = yn+1 − Hnxp

n+1 . (10)

O algoritmo do Filtro de Kalman no contexto de assimilaçãode dados é mostrado no diagrama esquemático apresentandona Figura 3.

3.2. Redes Neurais Artificiais

Uma rede neural artificial é um arranjo de unidades ca-racterizado por [11]:

596

Page 3: ASSIMILAÇÃO DE DADOS COM REDES NEURAIS ARTIFICIAIS … · ASSIMILAÇÃO DE DADOS COM REDES NEURAIS ARTIFICIAIS EM EQUAÇÕES DIFERENCIAIS H. C. M. Furtado, H. F. de Campos Velho,

Figure 3 – Diagrama esquemático do algoritmo do Filtro deKalman Linear.

• um conjunto de unidades de processamento (neurônios).

• um conjunto de pesos, que são as conexões entre asunidades de processamento, onde o conhecimento darede é armazenado.

• altamente paralelo, controle distribuido.

A unidade de processamento em uma rede neural é umacombinação linear com vários pesos de entrada, seguido poruma função de ativação. O k-ésimo neurônio pode se descritopelo o acoplamento de duas equações:

uk =m∑

j=1

θkjxj (11)

yk = ϕ(uk + bk) (12)

em que x1, . . . , xm são sinais de entrada; θk1 , . . . , θkmsão

os pesos sinápticos do neurônio k, onde as informações obti-das na fase de treinamento são armazenadas; uk é a saída docombinador linear devido aos sinais de entrada; bk é o viése yk é o sinal de saída do neurônio. A função ϕ(.) repre-senta a função de ativação a qual restringe a amplitude dosinal na saída de um neurônio. O papel da função de ati-vação é simular características não lineares de um neurôniobiológico [12]. A função de ativação implentada na camadaoculta do PMC foi a função tangente hiperbólica, que é umafunção sigmóide que varia entre [−1, 1] dada pela equação13.

ϕ(vj) = tanh(avj

2

)(13)

Figure 4 – Representação de um neurônio artificial.

Existem várias arquiteturas de redes neurais artificiais(RNA), que geralmente dependem da estratégia de apren-dizagem utilizada. O funcionamento das RNA é realizado

por meio de duas fases: a fase de treinamento1 e a fase deativação 2. O algoritmo usado para o treinamento do PMCfoi o backpropagation, a qual é uma rede feedforward com-posta por uma camada de entrada, uma camada de saída ecamadas escondidas, cujo o objetivo é extrair propriedadesestatísticas da entrada dos dados [11].

4. RESULTADOS E DISCUSSÕES

Para a implementação do Filtro de Kalman, foram usadasas seguintes matrizes: Qt = 0.1I; Rt = 0, 5I; H = I;matriz de covariância do erro de modelagem, matriz de co-variância do erro de observação e o operador que representao sistema de observação, respectivamente. A matriz de co-variância do erro de previsão é inicializada por:

Pf0 =

{10(xf

0 )2i para i = j ,0 para i 6= j .

(14)

As observações assimiladas neste trabalho foram geradas ar-tificialmente. Os dados foram gerados a partir da integraçãodo sistema, adicionando-se um ruído aleatório de variân-cia 0,5. A referência de verdade para o método de assim-ilação é a curva obtida a partir da integração dos modelossem ruído, o que significa que quanto mais próximo as es-timativas obtidas com os métodos de assimilação estiveremda dinâmica do sistema, melhor será a estimativa obtida poreles. Para o método proposto de assimilação de dados, queemprega Redes Neurais Artificiais, a determinação do dadode análise (condição inicial) pode ser descrita pela seguinteequação [13]

xan = FRN (xp

n, yon) (15)

em que FRN representa a RNA descrita na sessão 3.2. Umarede Perceptron de Múltiplas Camadas é uma rede que exigeo treinamento supervisionado, isto é, que seja apresentadoa ela a saída desejada, ou o denominado “alvo” da rede. Asaída desejada da rede é a estimativa obtida com o Filtro deKalman, descrito da seção 3.1. A fase de treinamento darede consiste em determinar os melhores pesos que mapeiaos dados de entrada aos dados da saída desejada (“alvo” darede). Na Figura 5 e na Figura 6 apresentam-se os resulta-dos da assimilação de dados para a componente z do modelode Lorenz realizado com FK e a RNA, respectivamente. Omodelo de onda linear apresentado na seção 2.2 foi integradocom o método de Crank-Nicholson. As condições iniciais ede contorno são periódicas. A condição inicial usada, foia solução analítica da equação de Korteweg-de Vries. NaFigura 7 ilustra-se o sistema na projeção em três dimensões.Na Figura 8 tem-se o resultado da assimilação com o métodode redes neurais artificiais. Na Tabela 1 apresenta-se os re-sultados dos erros de assimilação, que é a média da diferençaabsoluta entre a verdade e o estimado. O método das redesneurais artificiais para ambos os modelos foi mais eficienteque o Filtro de Kalman, pode-se observar pelo o valor do erroapresentado na Tabela 1. Além disso, o tempo de execução

1Um conjunto de exemplos são apresentados à rede, a qual extrai as car-acterísticas necessárias para representar a informação fornecida.

2Utiliza as características armazenadas nos pesos após a fase de treina-mento.

597

Page 4: ASSIMILAÇÃO DE DADOS COM REDES NEURAIS ARTIFICIAIS … · ASSIMILAÇÃO DE DADOS COM REDES NEURAIS ARTIFICIAIS EM EQUAÇÕES DIFERENCIAIS H. C. M. Furtado, H. F. de Campos Velho,

0 1 2 3 4 5 6 7 8 9 10

0

10

20

30

40

50

60

tempo

com

pone

nte

z

Filtro de Kalman

(c)verdadeestimado

Figure 5 – Assimilação de dados com o Filtro de Kalman; curvatracejada (vermelha) estimado pelo FK, curva cheia (azul)referência de verdade.

0 1 2 3 4 5 6 7 8 9 100

5

10

15

20

25

30

35

40

45

50

tempo

com

pone

nte

z

Multilayer Perceptron

(c)

verdadeestimado pmc

Figure 6 – Assimilação de dados com RNA Perceptron de Múlti-plas Camadas; curva tracejada (verde) estimado pela RNA,curva cheia (azul) referência de verdade.

do FK foi de 5 minutos e com a rede neural foi 0,83 minutos,menos de um minuto. Ambas as técnicas foram implemen-tadas no Matlab e executadas no computador Intel Core 2Duo, com 2GB de memória ram.

Figure 7 – Projeção do modelo de onda linear 1D nas coorde-nadas x (posição), y (tempo), z (amplitude da onda).

Table 1 – Resultados do erro de assimilação

FK RNA-PMCLorenz 1,2510 0,3941onda1D 1,3178 0,1278

REFERENCES

[1]LI Hadamard, J., “Lectures on Cauchy’s Problem in Li-near Partial Differential Equations”,Vol. 1, Yale Uni-versity Press, New York, 1952.

[2]PUB Kalman, R. E. “A new approach to linear filteringand prediction problems”, Journal of Basic Enginee-ring, n.82, p.35-45,1960.

0 20 40 60 80 100 120 140−60

−50

−40

−30

−20

−10

0

10

modelo

obs

estimado

Figure 8 – Curva azul (modelo): referência de verdade, quadra-dos (verde): observação, curva vermelha estimada.

[3]PUB Gordon, N. J. et al. “Novel approach to non linear/nongaussian bayesian state estimation”, IEE Proceedi-ngs, v. 142, n.2, p.107-113,1993.

[4]PUB Chorin, A. J.; Krause, P. “Dimensional redu-ction for a bayesian filter”, PNAS, v. 101, n.42, p.15013-15017,2004.

[5]DOI Talagrand, O.; Courtier, P. “Variational assimilationof meteorological observations with the adjoint vorti-city equation”, Quart. J. Roy. Meteor. Soc, v. 113, p.1311-1328,1987.

[6]LI Bennett,A. F. “Inverse Modeling of the Ocean andAtmosphere”, 1.ed. New York: Cambridge Univer-sity Press, 2002. 234p.

[7] Nowosad, A. G.; Rios Neto, A.; Campos Velho, H.F de;“Data Assimilation in Chaotic Dynamics UsingNeural Networks”, Third International Conference onNonlinear Dynamics, Chaos, Control and Their Ap-plications in Engineering Sciences, July 31 - August4, Campos do Jordão (SP), Brasil, Vol. 6, Chapter 6 -Control, pg. 212-221.

[8]LI Kalnay, E., “Atmospheric Modeling, Data Assimi-lation and Predictability”,Vol. 1, Cambridge Universi-ty Press, United Kingdom, 2003.

[9]DOI Lorenz, E. N., “Deterministic NonperiodicFlow", Journal of the Atmospheric Sciences, Vol 20,no. 2, pg130-141,january 1963.

[10]LI Jazswinski, A.H., “Stochastic Processes and Filte-ring Theory”, Academic Press, New York, USA, 1970.

[11]LI Haykin, S.,“Redes Neurais: Princípios e Prática”,2a. edição,Bookman, Porto Alegre, 2001.

[12]TE Abelem, A. J. G.,“Redes Neurais Artificiais naPrevisão de Séries Temporais”, PUC - Rio de Jane-iro, Dissertaçãode Mestrado,1994.

[13]DOI Härter, F. P.; Campos Velho, H. F de;“Recurrentand Feedforward Neural Networks Applied to the dataAssimilation in Chaotic Dynamics”, Brazilian Journalof Metereology, Vol 20, no. 3, pg 411-420,2005.

598