Buscar

Preenchimento de falhas de séries temporais hidrológicas

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

Mais conteúdos dessa disciplina