Prévia do material em texto
Preenchimento de falhas de séries temporais hidrológicas utilizando uma estratégia evolutiva Kalyl Gomes Calixto Escola de Engenharia de São Carlos, Universidade de São Paulo Av. Trabalhador Sãocarlense, 400, CP 359, CEP 13566-590 São Carlos (SP), Brasil kalyl.calixto@usp.br RESUMO A adequada gestão dos recursos hídricos requer a disponibilidade de dados e séries hidrológicas observadas em boa qualidade. Entretanto, frequentemente falhas na operação ocorrem, criando intervalos de ausência de dados que prejudicam o desenvolvimento de estudos na área. Métodos autorregressivos ou multirregressivos ainda são os mais utilizados para lidar com o problema. A proposta deste trabalho é avaliar a aplicação de um método alternativo, baseado em uma estratégia evolutiva-adaptativa em conjunto com um modelo estocástico. Os resultados computacionais indicaram uma boa performance do método na capacidade de previsão de dados, demonstrando, assim, potencial aplicabilidade em problemas práticos. PALAVRAS-CHAVES Séries temporais hidrológicas; Algoritmos evolutivos; Modelos de previsão; Preenchimento de dados. 1 INTRODUÇÃO O entendimento quantitativo da ocorrência, distribuição e movimentação da água na natureza é ainda um desafio para garantir uma gestão integrada e sustentável dos recursos hídricos. Além das variabilidades hidrológicas naturais, há consideráveis evidências da existência de variabilidades induzidas pelo homem, decorrentes tanto da intensa exploração dos recursos naturais, incluindo da água, quanto da ampla alteração do uso do solo, o que torna a modelagem dos processos envolvidos ainda mais complexa. Similarmente a muitos estudos da área ambiental, a disponibilidade de dados observados e, se possível, a existência de um monitoramento sistemático são fundamentais para dar suporte aos estudos desenvolvidos, visando entender o comportamento dos sistemas e dos processos físicos envolvidos. Por fornecerem informações valiosas no âmbito da gestão, entidades governamentais e privadas mantém em operação estações de monitoramento de diversas variáveis hidroclimatológicas, registrando dados de chuvas, vazões em rios, evapotranspiração, umidade do ar, temperatura etc. Apesar dos esforços, muitas dessas séries (coleções de observações ordenadas no tempo) são relativamente curtas e apresentam problemas de consistência ou mesmo períodos com ausência de registros, em função de algum problema na operação dos instrumentos. Isso dificulta e às vezes até impossibilita a utilização de muitos métodos de análise de dados [1]. Visando superar essas dificuldades, diferentes procedimentos de preenchimento de séries foram historicamente propostos, observando características específicas de cada situação – não havendo, portanto, uma generalização. Entre esses procedimentos, pode-se citar os métodos autorregressivos, que identificam padrões na própria série temporal a ser preenchida, e (multi)regressivos, que estabelecem relações entre os dados da estação que apresenta falhas e os dados de outras estações locais de variáveis correlacionáveis [2]. Embora para problemas de previsão/preenchimento de séries os métodos baseados em redes neurais artificiais (ANN) ou em programação genética (GP) têm tido maior representatividade, este trabalho, complementarmente, tem a intenção de avaliar o desempenho de uma estratégia evolucionária-adaptativa [3] no preenchimento de séries hidrológicas a partir da implementação de um algoritmo evolutivo em um estudo de caso. Entre as potenciais contribuições resultantes deste trabalho pode-se citar, primeiramente, a concepção de uma estrutura ou modelo para generalizar o tratamento de falhas de monitoramento a partir de uma estratégia evolutiva, e numa fase posterior, a otimização do procedimento de preenchimento de falhas para estudos regionais, situações que, em geral, demandam grande quantidade de dados e estações. 2 DESCRIÇÃO DO PROBLEMA Seja X um vetor de N componentes que apresenta r intervalos de falha (gaps), cada uma delas contendo kj valores não observados (com j =1, ..., r). De modo a ter algum sentido a análise de preenchimento, espera-se que o número de falhas seja suficientemente pequeno de modo a não impedir a identificação de padrões da série. Assim, o objetivo é gerar vetores de preenchimento, Fj, de dimensão kj para cada um dos r períodos de falha de registro de dados. Como forma de auxiliar no preenchimento, toma-se como referência variáveis de suporte que possam apresentar algum tipo de relação com a série a ser preenchida. Por exemplo, de forma a observar o balanço hídrico (conservação de massa) em uma região, os valores de precipitação, evapotranspirações, escoamento superficial e volume de armazenamento de água do solo não variam independentemente – eles estão restritos fisicamente à relação apresentada em (1). SSC-5858, 2018, São Carlos (SP), Brasil Kalyl Gomes Calixto 2 dVol/dt = P − ET − ES (1) Conforme indicado em (1), a variação do armazenamento de água (Vol) numa bacia hidrográfica depende basicamente das entradas (P: precipitações) e saídas (ET: evapotranspirações, decorrentes da perda de água para a atmosfera por evaporação e pela transpiração das plantas; e ES: escoamento superficial, representado pelas vazões observadas nos cursos d’água). Complementarmente, as componentes P e ET dependem das condições atmosféricas, principalmente em termos de temperatura e umidade. Assim, como forma de auxiliar na estimativa dos valores nos períodos de falha do vetor X, são tomados como conhecidos os vetores Z1, Z2, ..., Zp, de dimensões variadas e sem falhas, correspondentes às séries históricas de p variáveis hidroclimatológicas (vazões, precipitações, evapotranspirações, temperaturas etc) de outras estações de monitoramento próximas à estação que registrou os dados do vetor X, em função da dependência física entre as variáveis envolvidas. Em relação à avaliação da qualidade do preenchimento a ser proposto, desde que os vetores dos períodos de falha, Fj, não são efetivamente conhecidos, a alternativa possível baseia-se na determinação de parâmetros e estatísticas de ajuste para os períodos de dados conhecidos. Desse modo o problema proposto poderia ser escrito como um problema de otimização (minimização do erro entre os dados observados e estimados, por exemplo). De forma a conceber uma estrutura de análise e prosseguir com a implementação de algum algoritmo evolutivo para tratar do problema genérico proposto, um estudo de caso é aqui apresentado, envolvendo a estimativa de valores da variável vazão média. A série de vazões médias diárias do rio Jacaré-Guaçu (Figura 1), registrada pela estação 5C-013 (área de drenagem = 1867 km²) do Departamento de Águas e Energia Elétrica (DAEE-SP), localizada no município de Araraquara (SP), foi selecionada como objeto de estudo. Ela possui dados registrados no período de 06/1969 a 08/2016, e apresenta alguns breves períodos de falhas nos anos de 1970, 1976, 2006, 2009, 2010, 2014, 2015, 2016. Figura 1: Série de vazões médias diárias do rio Jacaré Guaçu (1969-2016) com falhas. (Fonte: DAEE/SP) Além disso, foram identificadas como estações de apoio no processo de preenchimento (Figura 2): a estação meteorológica do CRHEA/USP (município de Itirapina-SP), que registra dados diários de precipitação (Z2), evapotranspiração (Z4) etc. desde a década de 1970; a estação pluviométrica D4-075 (Z3), em São Carlos, do DAEE-SP, que registra dados de chuva diária também desde a década de 1970; e a estação fluviométrica 5C-021 (Z1), em Ibitinga, do DAEE-SP, que possui dados de vazões diárias, do mesmo curso d’água, entre 1970 e 2007. Figura 2: Localização das estações utilizadas neste estudo. 3 TRABALHOS RELACIONADOS O uso de meta-heurísticas - especialmentede algoritmos evolutivos (AEs) - na área de recursos hídricos vem se popularizando devido à simplicidade conceitual e à capacidade de lidar com problemas complexos, encontrando diversas aplicações na otimização de modelos, projetos e operações [4]. Entre os tópicos que atraem grande atenção está a análise de séries temporais, na qual o uso de AEs tem se mostrado competitivo e às vezes até mais eficiente que métodos tradicionais de análise [5, 6]. No domínio específico de séries hidroclimatológicas, os problemas de segmentação por diferentes comportamentos estatísticos, de decomposição e de previsão são os mais amplamente abordados [7, 8, 9]. De certa forma, as estratégias utilizadas podem ser resumidas na identificação de padrões e determinação de estados, coeficientes ou parâmetros que possibilitam estimar valores na série a partir do comportamento da própria série analisada e a partir de correlações com outras séries. Comparativamente, problemas de preenchimento de falhas, como os estudados por [1, 2, 10, 11] podem ser abordados de forma similar, supondo que os intervalos de dados não observados sejam intervalos sujeitos a algum processo de previsão. Destaca-se que métodos evolutivos utilizados em conjunto com outros métodos, tais como o filtro de Kalman (EnKF), modelos autorregressivos de médias móveis (ARMA) ou redes neurais artificiais (ANN) têm, reconhecidamente, sido responsáveis por melhorias da qualidade de modelos e pela maior acurácia nas previsões quando comparadas às obtidas pelos referidos métodos isoladamente [6, 8, 12]. Isso evidencia o potencial de aplicação de AEs na área de estudos hidrológicos. Apesar do potencial e dos referidos aspectos favoráveis ao uso de AEs, [4] apontam dois grandes desafios na área: 1) há a necessidade de maiores demonstrações de como aplicar métodos de otimização 0 20 40 60 80 100 120 140 160 180 1969-06-01 1974-11-22 1980-05-14 1985-11-04 1991-04-27 1996-10-17 2002-04-09 2007-09-30 2013-03-22 V az ão m éd ia d Iá ri a (m ³/ s) Série histórica de vazões médias diárias - Estação 5C-013 Preenchimento de falhas de séries temporais hidrológicas SSC 5858, Junho 2018, São Carlos (SP), Brasil 3 em problemas do mundo real e como eles podem auxiliar nos processos de tomada de decisão; e 2) ainda falta a definição de um framework para auxiliar na determinação dos operadores e parâmetros dos algoritmos que são potencialmente mais eficientes para problemas com determinadas características. Neste segundo desafio, destaca-se que as influências dos operadores e parâmetros no comportamento da busca pelas soluções ótimas carecem de estudos específicos [6]. A Tabela 1, por exemplo, apresenta a diversidade de parâmetros utilizados em trabalhos na área. Pode-se dizer que um dos poucos padrões observados é a adoção de uma estratégia elitista, de manter na população da geração seguinte uma parte dos melhores indivíduos da geração atual. Quanto à estrutura dos métodos de previsão em séries temporais hidrológicas usando AEs, duas abordagens básicas podem ser identificadas. Uma primeira faz uso de modelos conceituais, baseados em processos físicos, como, por exemplo, modelos de transformação chuva- vazão, pelos quais a partir dos padrões observados nas séries históricas de precipitações e de vazões, e de características físicas da bacia hidrográfica, às vezes também dinâmicas, é possível estimar os valores de vazão. Nestes casos, os algoritmos evolutivos são utilizados na calibração dos parâmetros envolvidos e na avaliação de eventuais variabilidades paramétricas ao longo do tempo [4, 12]. A segunda abordagem usa AEs para resolver um problema de regressão entre as séries analisadas, sem se preocupar com as motivações das correlações [8, 11]. Tabela 1: Parâmetros utilizados em métodos evolutivos. Autores Problema/Método Alguns parâmetros utilizados [6] Wang et al. (2009) Previsão em série temporal / Genetic Programming (GP) Tamanho da População = 2000 Número de gerações = 100 Prob. de crossover = 0,90 Prob. de mutação = 0,05 [12] Dumedah, Coulibaly (2014) Previsão em série temporal / Evolutionary Data Assimilation (EDA) Tamanho da população = 40 Número de gerações = 25 Prob. de crossover = 0,80 Prob. de mutação = 1/(número de variáveis) [7] Basak et al. (2017) Suavização e decomposição de série temporal / Evolutionary Algorithm (EA) Tamanho da População = 50 Número de gerações = 100 Prob. de crossover = 0,80 Prob. de mutação = 0,10 [8] Graff et al. (2017) Previsão em série temporal / Genetic Programming (GP) Tamanho da População = 1000 Número de gerações = 50 Prob. de crossover = 0,90 Prob. de mutação = 0,10 [9] Pérez-Ortiz et al. (2017) Segmentação de série temporal / Evolutionary Algorithm (EA) Tamanho da População = 100 Número de gerações = 100 Prob. de crossover = 0,80 Prob. de mutação = 0,20 Em relação a problemas de preenchimento de séries especificamente, o método mais eficiente pode depender do número de estações de monitoramento locais e da extensão dos períodos de falhas, não havendo, entretanto, uma sistematização de como tratar esse problema [1, 10]. Há ainda métodos alternativos que consideram os dados hidrológicos como grupos, de comportamentos estatísticos semelhantes e altamente correlacionados, ao invés de entidades isoladas [2]. Apesar da diversidade de abordagens possíveis, o uso de regressões múltiplas com dados de estações de monitoramento próximas à estação com falha, em geral, apresenta a melhor performance [10], no processo conhecido como transferência ou regionalização hidrológica, que é amplamente utilizado para estimar variáveis hidrológicas em regiões onde não há monitoramento algum. Assim, percebe-se que apesar de ser um problema usual, faltam tentativas de sistematizar o que é aprendido em cada um dos casos estudados, dificultando assim a obtenção de avanços significativos na área. Quanto às medidas de performance usualmente adotadas para avaliar a qualidade de uma metodologia proposta destacam-se o erro quadrático médio (RMSE) e o coeficiente de eficiência de Nash-Sutcliffe (NSE) [6]. Para permitir comparações entre trabalhos relacionados, em especial do poder de predição de um modelo, o coeficiente NSE é mais adequado que o RMSE uma vez que traz uma forma de normalização dos dados conforme indicado em (2). NSE = 1 − ∑[x(t) − x̂(t)]2 ∑[x(t) − x̅(t)]2 (2) onde x(t) representa os dados observados, x̂(t) são os dados obtidos pelo modelo, e x̅(t) é o valor médio dos dados observados. Esse coeficiente varia entre menos infinito e 1, sendo este valor correspondente a um modelo perfeito. O valor 0 indica que o valor médio dos dados observados tem o poder de predição tão bom quanto o modelo; e valores negativos indicam que a média tem poder de predição maior que o modelo (ou seja, o modelo não está adequado). Utilizando programação genética (GP) em modelos de previsão de vazões, [6] obtiveram valores entre 0.88 e 0.54 para esse coeficiente – faixa de valores que se mostrou competitiva com outras técnicas de inteligência artificial e com métodos tradicionais de análise de séries temporais (tais como modelos autorregressivos de médias móveis). Em relação aos métodos regressivos tradicionalmente utilizados em técnicas de preenchimento de séries temporais, [10] obteve valores entre 0.72 e 0.94, e indica como valores aceitáveis aqueles superiores a 0.50. 4 ALGORITMO EVOLUTIVO PROPOSTO Uma abordagem regressiva é proposta visando identificar as interrelações existentes entre as séries históricas em estudo. A série a ser preenchida, x(t), é analisada estocasticamente, de forma similar a uma cadeia de Markov de primeira ordem. Entretanto, aqui, os parâmetros estatísticos (média, desvio padrão e autocorrelação) fazem parte do indivíduo do algoritmo evolutivo. Adicionalmente, a componente aleatória (4) (erro) é substituída por um componente determinístico multi-regressivo onde as variáveis são as médias móveis dos dados observados nas séries históricas das ‘estações auxiliares’ – que são, a saber: série de vazões (Z1: 5C-021); séries de precipitações (Z2: CRHEA e Z3: D4-075); e série de evapotranspirações (Z4: CRHEA). Uma avaliação dos atrasos (lags) entre os valores de vazão x(t) com os dados registrados pelas outras estações, a priori, poderia ser conduzida para identificar eventuais persistências dos efeitos que uma tem sobre a outra. Entretanto, devido à complexidade inicial que isso SSC-5858, 2018, São Carlos (SP), Brasil Kalyl Gomes Calixto 4 envolveria, uma abordagem simplificada foi adotada, assumindo um atraso de 10 dias (lj = 10, ∀j) entre todos os dados. No problema objeto deste estudo, a função para determinação/previsão da vazão no tempo é proposta no seguinte formato: x̂(t) = Mx + [x(t − 1) − Mx]Rx + E(𝑡) Dx√1 − Rx 2 (3) E(t) = ∑[aj] ∑ [zj(t − kj)]/(𝑙j + 1) lj kj=0 = ∑[aj] 𝑧𝑗,𝑀𝑀 p j=1 p j=1 (4) onde Mx , Dx , Rx e aj são coeficientes de regressão a serem determinados. O termo E(t) é uma combinação linear das médias móveis, com período lj, das p séries Zj (representada em (4) por Zj,MM). Na abordagem estocástica tradicional, os termos Mx, Dx e Rx seriam a média, o desvio padrão e o coeficiente de correlação de lag-1 (correlação entre X(t+1) e X(t)) da variável X. Conforme apresentado em (3), no modelo proposto, o valor da série num instante qualquer depende do valor da série observado no instante imediatamente anterior. Os dados de precipitação e evapotranspiração (mm/m²/dia) foram previamente transformados para a mesma unidade dos dados de vazão (m³/s), de forma a trabalhar com dados em uma ordem de grandeza comum. A proposta de determinação dos coeficientes segue a estratégia do algoritmo evolutivo (AE) descrito nos itens seguintes e esquematizado na Tabela 2. Tabela 2: Pseudocódigo do AE proposto. Algoritmo Evolutivo (AE) 1: Iniciar AE 2: Gerar uma população inicial aleatória; 3: Avaliar o fitness de cada indivíduo da população inicial; 4: Enquanto (condição de parada não atingida) fazer: 5: I. Aplicar operador de mutação; 6: II. Avaliar o fitness de cada indivíduo {da população inicial e da população resultante do processo de mutação}; 7: III. Selecionar indivíduos que estarão na geração seguinte; 8: Fim enquanto; 9: Retornar população final ordenada; 10: Finalizar AE 4.1. Representação do indivíduo O indivíduo do AE é um vetor de componentes reais de dimensão igual ao número total de coeficientes de regressão a serem determinados: 𝑆 ∈ ℜ𝑑=7. S = [Mx, Dx, Rx, 𝑎1, 𝑎2, 𝑎3, 𝑎4] T (5) 4.2. Função objetivo (RMSE) O objetivo do problema é minimizar a função de erro (RMSE) indicada em (6): min RMSE = √ 1 N∗ ∑[x(ti) − x̂(ti)] 2 N∗ i=1 (6) onde x(ti) são os valores observados, x̂(ti) são os valores calculados, e N* é o número total de observações da estação 5C- 013 do ‘período de aprendizado’, utilizado na calibração do modelo. Dados referentes a dias em que uma ou mais estações de suporte falharam foram eliminados da análise. 4.3. Função de fitness (f) A função de fitness adotada é igual ao oposto da função objetivo. 𝑓 = −√ 1 𝑁∗ ∑[𝑥(𝑡𝑖) − 𝑥(𝑡𝑖)] 2 𝑁∗ 𝑖=1 (7) Para o cálculo do fitness duas funções independentes foram desenvolvidas. Uma primeira função é utilizada exclusivamente para o cálculo do vetor X̂ , isto é, a partir de cada conjunto de coeficientes regressivos (cada indivíduo do AE), os valores de �̂� são calculados, segundo (3) e (4), para todos os ‘t’s do período de calibração. Em seguida, uma função é utilizada para o cálculo do fitness propriamente dito, baseando-se em (7). Um cuidado nesse procedimento foi tomado com os índices, já que existe uma defasagem entre o vetor de valores observados e o vetor de valores estimados. Destaca-se, também, que essas funções são aplicadas tanto para a população inicial de cada geração quanto para a população afetada pelo operador de mutação, que são descritas nos tópicos seguintes. 4.4. Operador de inicialização e tamanho da população Para compor a população inicial, os parâmetros Mx , Dx e Rx do vetor S são gerados aleatoriamente, segundo uma distribuição uniforme, nos seguintes intervalos: Mx ~ U[0.95μx, 1.05μx]; Dx ~ U[0.95σx, 1.05σx]; e Rx ~ U[0.93, 0.98], onde μx e σx são a média e o desvio padrão amostrais dos dados do vetor x: 24.81 m³/s e 9.96 m³/s, respectivamente. O coeficiente de correlação de lag-1 resultou em 0.9512, justificando assim o intervalo adotado para geração inicial dos valores de Rx. Similarmente, os coeficientes que multiplicam as médias móveis das séries auxiliares são gerados aleatoriamente da seguinte forma: aj~ U [0.0, 0.1] para j=1,2,3 e aj~ U [−0.1, 0.0] . Os sinais utilizados foram baseados na interpretação física dos processos (por exemplo, na ocorrência de precipitações, espera-se maiores vazões observadas – por isso, sinal positivo). Em adição, destaca-se que esses intervalos foram pré- estimados via análise de ajustes lineares entre os dados. A dimensão do vetor população, P, é tomado igual a M: PG(0) = [S1 G(0), S2 G(0), … , SM G(0) ] T (8) Preenchimento de falhas de séries temporais hidrológicas SSC 5858, Junho 2018, São Carlos (SP), Brasil 5 4.5. Operador de seleção para introdução de diversidade A estratégia adotada provoca uma mutação gaussiana em todos os genes dos indivíduos da população com uma probabilidade de ocorrência ρm, criando uma nova população de tamanho M a cada geração. Assim, para cada gene, um número aleatório, uniformemente distribuído, é gerado e comparado com o valor da probabilidade de mutação. Se o número for menor ou igual a essa taxa, a perturbação gaussiana, descrita no item seguinte, é adicionada ao gene (ou coeficiente) analisado. Operadores de crossover, seguindo a ideia da estratégia evolutiva [3], não foram considerados. PM G(i) = [S1,mut G(i) , S2,mut G(i) , … , SM,mut G(i) ] T (9) 4.6. Operadores de mutação Um operador de mutação gaussiana, decrescente ao longo das execuções, é utilizado. Seguindo a estratégia evolutiva tradicional [3], esse operador consiste na introdução de uma mutação/perturbação 𝛿𝑖 em cada um dos genes de cada indivíduo, com uma determinada probabilidade de ocorrência. Essa perturbação é calculada da seguinte forma: δi = [1 − 0.66 n NG ] βi/mi , βi ~N(0,1) (10) em que n é o contador de gerações, NG é o número máximo de gerações, βi é um número aleatoriamente gerado com distribuição de probabilidade normal padrão, e mi são fatores de ajuste para manter os genes alterados próximos da faixa de variação esperada para cada gene. Para os parâmetros aj foi adotado mj igual a 50, para Mx e Dx foi adotado mj igual a 1, e para Rx foi adotado mj igual a 1000, em função de seu menor espaço de variação possível. Em adição a isso, foram adotados dentro do operador de mutação limitantes superiores e inferiores para alguns parâmetros. Para Mx e Dx foi adotado o valor de 1 como mínimo possível, e para Rx, até como forma de evitar o aparecimento de número complexos entre as soluções, foi adotado o valor máximo de 0.98. 4.7. Operador de seleção para sobrevivência A seleção para sobrevivência é feita de forma a preservar uma pequena parcela da população mais adaptada, e selecionar aleatoriamente os indivíduos restantes até completar um total de M indivíduos. A população da geração anterior e a população afetada pelo operador de mutação são colocadas ordenadamente, segundovalores de fitness, em um mesmo vetor, totalizando 2M indivíduos. A seleção determinística, segundo os melhores valores de fitness, é aplicada até completar uma quantidade de T de indivíduos, sendo T igual a uma taxa de elitismo (entre 0 e 1, também definida no AE) multiplicada pelo tamanho da população, M. A quantidade restante de indivíduos (M-T) é selecionada aleatoriamente a partir dos índices (1, 2, ..., 2M) das soluções/indivíduos. Nesse procedimento, eventualmente, uma mesma solução pode aparecer mais de uma vez na população que avança para a geração seguinte. 4.8. Critério de parada É adotado como critério de parada um número máximo de gerações (NG). Esse número máximo de gerações é um dos parâmetros do algoritmo, conforme apresentado a seguir. 4.9. Avaliação e ajuste dos parâmetros O ajuste (tuning) dos parâmetros do AE foi conduzido com um número reduzido de execuções para cada combinação. Apesar da natureza estocástica-aleatória do método de busca, foi possível encontrar alguns padrões de convergência no comportamento do fitness dos indivíduos à medida que os resultados foram sendo obtidos. As faixas de variações avaliadas são apresentadas na Tabela 3. Tabela 3: Intervalos de variação dos parâmetros para avaliar seus respectivos efeitos no AE proposto. Parâmetros AE Número máximo de gerações NG 12 - 200 Tamanho da população M 2 - 40 Probabilidade de mutação ρm 0.25 - 1.00 Taxa de elitismo - seleção sobrevivência Ω 0.10 - 0.80 5 RESULTADOS COMPUTACIONAIS A intenção inicial era avaliar o conjunto completo das séries históricas para os dias em que os dados de todas as estações estão disponíveis (7470 dias). Entretanto, devido ao elevado tempo de processamento que isso demanda a cada execução, uma nova estratégia foi seguida. Apenas os dados dos três primeiros anos hidrológicos (1973/1974 a 1975/1976) foram utilizados como referência (período de calibração) e, então, os resultados obtidos foram verificados, graficamente, para outros períodos das séries, como forma de complementar a avaliação do ajuste do modelo proposto. Quanto aos parâmetros do AE, conforme esperado, para maiores números máximos de gerações e para maiores populações, melhores valores de fitness foram obtidos. Notou-se, entretanto, que o aumento do número de gerações e o aumento no tamanho da população apresentaram efeitos ligeiramente diferentes. Uma análise inicial buscou verificar o comportamento probabilístico dos dados. A Figura 3 apresenta alguns testes de ajustes de distribuição de probabilidade para dois grupos de dados: um referente aos valores de RMSE obtidos pelos indivíduos presentes nas últimas gerações; e outro contendo apenas os menores valores de RMSE, resultantes dos melhores indivíduos de cada uma das trinta execuções. Em ambos os casos a configuração de parâmetros do AE adotada foi composta por um número máximo de gerações igual a 50, um tamanho de população igual a 10, taxa de mutação de 100% e taxa de elitismo de 20%. Pode-se perceber que quando se avalia apenas os melhores indivíduos, os dados se ajustam bem a uma distribuição normal, possibilitando, assim a utilização de métodos estatísticos paramétricos para comparar os resultados computacionais obtidos. SSC-5858, 2018, São Carlos (SP), Brasil Kalyl Gomes Calixto 6 (a) RMSE dos indivíduos das últimas gerações obtidos com NG=50, M=10, ρM = 1.00 e Ω =0.20. (b) RMSE dos melhores indivíduos das últimas gerações obtidos com NG=50, M=10, ρM = 1.00 e Ω =0.20 (30 execuções independentes). Figura 3: Ajustes de distribuições de probabilidade dos valores de RMSE (Minitab®). Um teste ANOVA de 1 fator foi utilizado para avaliar o que se pode concluir dos efeitos da variação dos parâmetros no algoritmo evolutivo proposto. Tomando como referência a combinação de parâmetros descrita anteriormente, execuções foram conduzidas variando cada um dos parâmetros para valores superiores e inferiores (com exceção da mutação, que já estava em seu máximo valor possível), resultando nos intervalos de confiança da Figura 4 e na síntese da Tabela 4. De forma geral, pode-se perceber que existe diferenças estatisticamente significantes apenas para o parâmetro “Número Máximo de Gerações – NG”. Apesar disso, comparações para cada combinação utilizada foram feitas a partir das médias amostrais e são apresentadas nas Tabelas 5 e 6, demonstrando, de fato, as pequenas variações entre os resultados para as faixas de valores adotadas para os parâmetros. Destaca-se que os resultados estatísticos podem variar consideravelmente em função dessas faixas. Por exemplo, os resultados gerados para uma população de dois indivíduos não foram incluídos nas análises anteriores em função da grande diferença de RMSE obtidos (acima de 10). A priori, o objetivo dessa análise de sensibilidade foi verificar a estabilidade do algoritmo e verificar a existência ou não de combinações ótimas de parâmetros. Tabela 4: Verificação dos efeitos provocados pelas variações dos parâmetros (comparações emparelhadas de Tukey). Parâmetro (Fator) Média Desvio Padrão Agrupamento* Menor NG 3.06936 0.01683 A Menor M (população) 3.05621 0.01437 A B Menor elitismo 3.05331 0.00879 A B Menor mutação 3.05064 0.01804 A B Maior elitismo 3.04967 0.01515 A B Maior M (população) 3.0444 0.01965 A B Maior NG 3.04127 0.01734 B Referência 3.05509 0.01353 A B *Médias que não compartilham uma letra são significativamente diferentes. Figura 4: Intervalos de confiança de RMSE em função das alterações nos parâmetros do AE. Tabela 5: Verificação dos efeitos dos parâmetros NG e M no AE (taxa de mutação de 100% e taxa de elitismo de 20%). Número de gerações (NG) Tamanho da população (M) RMSE mínimo RMSE̅̅ ̅̅ ̅̅ ̅̅ mínimo médio RMSE̅̅ ̅̅ ̅̅ ̅̅ /RMSE̅̅ ̅̅ ̅̅ ̅̅ ref 12 10 3.054 3.078 1+0.75% 25 3.043 3.060 1+0.16% 100 3.027 3.047 1-0.26% 200 3.029 3.036 1-0.62% 50 2 4.344 12.715 1+316% 5 3.024 3.061 1+0.20% 20 3.043 3.051 1-0.13% 40 3.025 3.037 1-0.59% 50 10 3.024 3.055 (ref) 1.000 (referência) Preenchimento de falhas de séries temporais hidrológicas SSC 5858, Junho 2018, São Carlos (SP), Brasil 7 Tabela 6: Verificação dos efeitos das taxas de mutação e de elitismo no AE (fixando NG=50 e M=10). Taxa de mutação Taxa de elitismo RMSE mínimo RMSE̅̅ ̅̅ ̅̅ ̅̅ mínimo médio RMSE̅̅ ̅̅ ̅̅ ̅̅ /RMSE̅̅ ̅̅ ̅̅ ̅̅ ref 0.25 0.20 3.049 3.058 1+0.10% 0.50 3.021 3.037 1-0.59% 0.75 3.038 3.056 1+0.03% 1.00 0.10 3.053 3.043 1-0.39% 0.40 3.038 3.061 1+0.20% 0.80 3.026 3.039 1-0.52% 1.00 0.20 3.024 3.055 (ref) 1.000 (referência) Embora não tenham sido identificadas combinações ótimas de parâmetros, foi possível perceber que valores ligeiramente menores de RMSE foram obtidos para taxas de mutações da ordem de 50% e para elevadas taxas de elitismo. Adicionalmente, o aumento do número máximo de gerações mostrou-se mais efetivo que o aumento do tamanho da população. Uma vez identificadas essas características, a etapa seguinte foi tentar encontrar, de fato, um indivíduo otimizado. Para isso, foi adotada uma combinação com NG = 1000 gerações, M = 10 indivíduos, taxa de mutação de 50% e taxa de elitismo de 80%. O RMSE mínimo obtido foi de 2.9698, com um coeficiente de eficiência de Nash-Sutcliffe de 0.8949, valor compatível com os reportados por [6] e [10]. O indivíduo que leva a esses resultados possui as seguintes componentes: 𝐒∗ = [14.561, 1.000, 0.8572, 0.042, 0.0578, 0.091, −0.1945]T (5) As Figuras 5, 6, 7 e 8 apresentam o ajuste gráfico, para um dos indivíduos determinados pelo AE, dos valores calculados/previstos em relação aos valores observados, em períodos que estão dentro e fora do período de calibração utilizadono AE. Nota-se que, em geral, uma boa aproximação, traduzida por um RMSE da ordem de 4 (em 365 dias), conforme indicado na Tabela 4. Figura 5: Ajuste dos valores calculados em relação aos valores observados (dentro do período de assimilação). Figura 6: Ajuste dos valores calculados em relação aos valores observados (fora do período de assimilação). Figura 7: Ajuste dos valores calculados em relação aos valores observados (fora do período de assimilação). Figura 8: Ajuste dos valores calculados em relação aos valores observados (fora do período de assimilação). Entretanto, apesar do aparente bom ajuste do modelo, uma situação-problema diferente poderia ter sido adotada na proposição do AE. Tomando um exemplo de preenchimento artificial para o ano de 1990. Na equação estocástica proposta para cálculo das vazões médias diárias, a vazão (observada) do dia anterior torna-se 0 10 20 30 40 50 60 70 80 90 100 0 20 40 60 80 100 120 140 160 180 200 220 240 260 280 300 320 340 360 V az ão D iá ri a M éd ia ( m ³/ s) Tempo (dias) - Ano hidrológico 1973-1974 Avaliação gráfica dos resultados iniciais - 01/08/73 a 31/07/74 Vazoes observadas Vazoes previstas 0 10 20 30 40 50 60 jul-75 ago-75 out-75 dez-75 jan-76 mar-76 abr-76 jun-76 ago-76 V az ão D iá ri a M éd ia ( m ³/ s) Tempo (mês-ano) Avaliação gráfica dos resultados - ano hidrológico 1975-1976 Vazoes observadas Vazões previstas 0 20 40 60 80 100 120 140 160 180 jun-82 ago-82 out-82 nov-82 jan-83 mar-83 abr-83 jun-83 ago-83 V az ão D iá ri a M é d ia ( m ³/ s) Tempo (mês-ano) Avaliação gráfica dos resultados - Ano hidrológico 1982 - 1983 Vazoes observadas Vazões previstas 0 10 20 30 40 50 60 70 jul-02 set-02 out-02 dez-02 jan-03 mar-03 mai-03 jun-03 ago-03 V az ão D iá ri a M éd ia ( m ³/ s) Tempo (mês-ano) Avaliação gráfica dos resultados - ano hidrológico 2002-2003 Vazoes observadas Vazões previstas SSC-5858, 2018, São Carlos (SP), Brasil Kalyl Gomes Calixto 8 a vazão calculada/prevista do dia anterior. Essa ideia é especialmente importante para avaliar a propagação de erros nas estimativas. A Figura 9 indica que os erros podem se tornar consideravelmente maiores. Assim, em uma outra oportunidade, seria válido considerar na função de fitness um termo para lidar com essas situações. Percebe-se também, como outra deficiência, que o modelo proposto não consegue identificar/prever picos locais observados. Figura 9: Preenchimento de uma falha artificialmente criada na série histórica. Quanto aos indivíduos determinados, uma previsão inicial seria que os parâmetros Mx, Dx e R convergiriam para os valores da média, desvio padrão e coeficiente de autocorrelação de lag-1 da série de vazões médias diárias. Entretanto, observou-se que isso não ocorreu. Complementarmente, a cada execução do AE, indivíduos muito diferentes entre si são obtidos, apesar de conseguirem atingir valores próximos dos RMSEs mínimos anteriormente indicados. Por exemplo, o indivíduo indicado a seguir (6) obteve um RMSE de 2.9910 e NSE de 0.8934. 𝐒′ = [16.091,12.54, 0.895, 0.001, 0.0003, 0.008, −0.00926]T (6) Um tratamento estatístico envolvendo múltiplas repetições de cada execução, para faixas de valores consideravelmente superiores as aqui utilizada, poderia ser adotada para encontrar os parâmetros NG e M ótimos do AE. Entretanto, devido a proposta exploratória deste trabalho, isso não foi feito. 6 CONCLUSÕES Este trabalho teve a intenção de avaliar as oportunidades de aplicação de métodos de busca evolutiva para auxiliar no preenchimento de falhas de séries temporais hidrológicas. Basicamente, um algoritmo evolutivo foi proposto para determinar parâmetros e coeficientes de uma equação de regressão. Em geral, percebeu-se que bons resultados foram obtidos, em termos de minimização do erro quadrático médio e do coeficiente de eficiência de Nash-Sutcliffe, mas que o tempo de processamento pode comprometer a aplicabilidade do método em situações práticas. Como sugestão para trabalhos futuros, destaca-se a consideração da propagação de erros na equação estocástica aqui utilizada, permitindo assim melhorias na eficiência do método proposto. REFERÊNCIAS [1] Pappas, C. (2014). A quick gap‐filling of missing hydrometeorological data. Journal of Geophysical, 119, 1–11. https://doi.org/10.1002/2014JD021633.Received [2] Elshorbagy, A. A., Panu, U. S., & Simonovic, S. P. (2000). Group-based estimation of missing hydrological data: I. Approach and general methodology. Hydrological Sciences Journal, 45(6), 849–866. https://doi.org/10.1080/02626660009492388 [3] Back, T., Fogel, D. ., & Michalewicz, Z. (2000). Evolutionary Computation 1: Basic Algorithms and Operators. Evolutionary Computation, 378. https://doi.org/10.1016/B978-044452701-1.09002-5 [4] Maier, H. R., Kapelan, Z., Kasprzyk, J., Kollat, J., Matott, L. S., Cunha, M. C., … Reed, P. M. (2014). Evolutionary algorithms and other metaheuristics in water resources: Current status, research challenges and future directions. Environmental Modelling and Software, 62, 271–299. https://doi.org/10.1016/j.envsoft.2014.09.013 [5] Chung, F. L., Fu, T. C., Ng, V., & Luk, R. W. P. (2004). An evolutionary approach to pattern-based time series segmentation. IEEE Transactions on Evolutionary Computation, 8(5), 471–489. https://doi.org/10.1109/TEVC.2004.832863 [6] Wang, W. C., Chau, K. W., Cheng, C. T., & Qiu, L. (2009). A comparison of performance of several artificial intelligence methods for forecasting monthly discharge time series. Journal of Hydrology, 374(3–4), 294–306. https://doi.org/10.1016/j.jhydrol.2009.06.019 [7] Basak, A., Mengshoel, O. J., Kulkarni, C., Schmidt, K., Shastry, P., & Rapeta, R. (2017). Optimizing the decomposition of time series using evolutionary algorithms: Soil moisture analytics. GECCO 2017 - Proceedings of the 2017 Genetic and Evolutionary Computation Conference, 1073–1080. https://doi.org/10.1145/3071178.3071191 [8] Graff, M., Escalante, H. J., Ornelas-Tellez, F., & Tellez, E. S. (2017). Time series forecasting with genetic programming. Natural Computing, 16(1), 165–174. https://doi.org/10.1007/s11047-015-9536-z [9] Pérez-Ortiz, M., Durán-Rosal, A. M., Gutiérrez, P. A., Sánchez-Monedero, J., Nikolaou, A., Fernández-Navarro, F., & Hervás-Martínez, C. (2017). On the use of evolutionary time series analysis for segmenting paleoclimate data. Neurocomputing, 0, 1–12. https://doi.org/10.1016/j.neucom.2016.11.101 [10] Harvey, C., Dixon, H., & Hannaford, J. (2010). Developing best practice for infilling daily river flow data. BHS Third International Symposium, Managing Consequences of a Changing Global Environment, 1–8. https://doi.org/10.7558/bhs.2010.ic119 [11] Sivapragasam, C., Muttil, N., Jeselia, M. C., & Visweshwaran, S. (2015). Infilling of Rainfall Information Using Genetic Programming. Aquatic Procedia, 4(Icwrcoe), 1016–1022. https://doi.org/10.1016/j.aqpro.2015.02.128 [12] Dumedah, G., & Coulibaly, P. (2014). Integration of an evolutionary algorithm into the ensemble Kalman filter and the particle filter for hydrologic data assimilation. Journal of Hydroinformatics, 16(1), 74. https://doi.org/10.2166/hydro.2013.088 INFORMAÇÕES SUPLEMENTARES Os dados e o código fonte utilizados estão disponíveis no link indicado. https://drive.google.com/drive/folders/1_3yaQZJJDmnd0Ya5SSbNvN xy2Y9Wmvle?usp=sharing 0 10 20 30 40 50 jan-90 mar-90 mai-90 jun-90 ago-90 out-90 nov-90 jan-91 V az ão D iá ri a M éd ia ( m ³/ s) Tempo (mês-ano) Avaliação gráfica dos resultados - ano de 1990 Vazões observadas Vazões 'preenchidas' https://drive.google.com/drive/folders/1_3yaQZJJDmnd0Ya5SSbNvNxy2Y9Wmvle?usp=sharing https://drive.google.com/drive/folders/1_3yaQZJJDmnd0Ya5SSbNvNxy2Y9Wmvle?usp=sharing