Você está na página 1de 84

UNIVERSIDADE FEDERAL DE MATO GROSSO INSTITUTO DE FSICA PROGRAMA DE PS-GRADUAO EM FSICA AMBIENTAL

PREENCHIMENTO DE FALHAS DE DADOS MICROMETEOROLGICOS UTILIZANDO TCNICAS DE INTELIGNCIA ARTIFICIAL

Thiago Meirelles Ventura Prof.a Dr.a Claudia Aparecida Martins

Cuiab-MT, Maro de 2012

UNIVERSIDADE FEDERAL DE MATO GROSSO INSTITUTO DE FSICA PROGRAMA DE PS-GRADUAO EM FSICA AMBIENTAL

PREENCHIMENTO DE FALHAS DE DADOS MICROMETEOROLGICOS UTILIZANDO TCNICAS DE INTELIGNCIA ARTIFICIAL

Thiago Meirelles Ventura

Dissertao apresentada ao Programa de PsGraduao em Fsica Ambiental da Universidade Federal de Mato Grosso, como parte dos requisitos para obteno do ttulo de Mestre em Fsica Ambiental.

Prof.a Dr.a Claudia Aparecida Martins

Cuiab-MT, Maro de 2012

UNIVERSIDADE FEDERAL DE MATO GROSSO INSTITUTO DE FSICA PROGRAMA DE PS-GRADUAO EM FSICA AMBIENTAL

FOLHA DE APROVAO
TTULO: PREENCHIMENTO DE FALHAS DE DADOS MICROMETEOROLGICOS UTILIZANDO TCNICAS DE INTELIGNCIA ARTIFICIAL

AUTOR: T HIAGO M EIRELLES V ENTURA

Dissertao de Mestrado defendida e aprovada em 09 de maro de 2012, pela comisso julgadora:

V468p Ventura, Thiago Meirelles Preenchimento de Falhas de Dados Micrometeorolgicos Utilizando Tcnicas de Inteligncia Articial. / Thiago Meirelles Ventura. Cuiab: UFMT, 2012. 73 s. Dissertao - Mestrado em Fsica Ambiental - UFMT. Orientadora: Profa. Dra. Claudia Aparecida Martins 1. Preenchimento de Falhas. 2. Dados Micrometeorolgicos. 3. Redes Neurais Articiais. 4. Algoritmos Genticos. 5. Seleo de Atributos. I. Ttulo. CDU 53:504

Dedicatria

Aos meus pais, Muriacy e Virgnia, que sempre deram prioridade aos meus estudos. minha esposa, Rosngela, que sempre est ao meu lado. Deus por ter me proporcionado todas as graas em minha vida.

Agradecimentos
Aos meus pais eu agradeo por todo carinho e ateno que sempre me deram, por todas as lies durante a minha vida e por todo apoio que me do nos estudos. A minha esposa Rosngela por caminhar junto comigo, tanto nos bons momentos quanto nos momentos difceis. Muito obrigado por me dar foras em seguir em frente nesses novos desaos e por tudo que tem feito por mim. Aos meus irmos que servem de exemplo para mim. Ao meu amigo Adriano Crestani Campos pela ajuda e pacincia nesse perodo do mestrado. A professora Claudia Aparecida Martins pela pacincia e compreenso durante a orientao desta dissertao. Aprendi muito nesse processo e espero continuar aprendendo nos prximos projetos. Ao professor Josiel Maimone de Figueiredo por me indicar esse mestrado e pela ajuda neste projeto e em todos os outros anteriores. Aos membros do grupo de pesquisa de Tratamento de Bases Ambientais (TABA) pelo esforo coletivo, possibilitando que este trabalho fosse possvel. Ao professor Nelcileno Virgilio de Souza Araujo pela ateno durante a graduao e pelo incentivo durante a ps-graduao. Ao professor Jos de Souza Nogueira que, junto sua esposa professora Marta Cristina de Jesus Albuquerque Nogueira, fazem do PPGFA um timo programa de ps-graduao. Tenho orgulho de ter feito o meu mestrado neste programa. Ao meu colega Allan Gonalves de Oliveira pela grande ajuda nas disciplinas do mestrado, na escrita dos artigos e no desenvolvimento desse trabalho. A todos os meus colegas de mestrado que, juntos, enfrentamos diculdades e desaos durante essa fase importante em nossas vidas. E por m, a todos os outros professores, tcnicos e alunos do PPGFA que, direta ou indiretamente, ajudaram em meus estudos.

Epgrafe

Quando voc entende as leis da fsica, tudo possvel. Sheldon Cooper

Sumrio
Dedicatria Agradecimentos Epgrafe RESUMO ABSTRACT 1 Introduo 1.1 Problemtica . . . . . . . . 1.2 Justicativa . . . . . . . . . 1.3 Objetivo geral . . . . . . . . 1.4 Objetivos especcos . . . . 1.5 Contextualizao do trabalho 1.6 Organizao do trabalho . . v vi vii 1 2 3 3 4 5 5 6 8 10 10 12 14 14 16 17 18 21 23 23 25 26 29 32

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

Fundamentao Terica 2.1 Dados micrometeorolgicos . . . . . . . . . . . 2.2 Mtodos para preenchimento de falhas . . . . . . 2.3 Redes neurais articiais . . . . . . . . . . . . . . 2.3.1 Estrutura de uma RNA . . . . . . . . . . 2.3.2 Trabalhos relacionados com RNA . . . . 2.4 Algoritmos genticos . . . . . . . . . . . . . . . 2.4.1 Funcionamento de um algoritmo gentico 2.4.2 Trabalhos relacionados com AG . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

Materiais e Mtodos 3.1 A base de dados . . . . . . . . . . . . . . . . . . . . . 3.2 Metodologia proposta . . . . . . . . . . . . . . . . . . 3.2.1 Preparao dos dados . . . . . . . . . . . . . . 3.2.2 Determinando a congurao da RNA com AG 3.2.3 Treinamento da RNA . . . . . . . . . . . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

viii

3.3 3.4 4

3.2.4 Preenchimento dos valores ausentes . . . . . . . . . . . . . . Ambiente de programao . . . . . . . . . . . . . . . . . . . . . . . Avaliao de desempenho . . . . . . . . . . . . . . . . . . . . . . . .

33 34 35 36 36 37 39 41 42 44 46 48 51 60 71

Resultados e Discusso 4.1 Resultados obtidos . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.1 Resultado do preenchimento de falhas para temperatura . . 4.1.2 Resultado do preenchimento de falhas para saldo de radiao 4.1.3 Resultado do preenchimento de falhas para fotoperodo . . . 4.1.4 Resultado do preenchimento de falhas para umidade . . . . 4.1.5 Resultado do preenchimento de falhas para insolao . . . . 4.2 Anlise estatstica dos resultados . . . . . . . . . . . . . . . . . . . Consideraes Finais

. . . . . . .

Bibliograa A Cdigo do Algoritmo Gentico B Cdigo da Rede Neural Articial

ix

Lista de Tabelas
1 2 3 Descrio dos atributos na base de dados . . . . . . . . . . . . . . . . Amostra de dados obtidos pelos equipamentos micrometeorolgicos . Nmero de exemplos sinalizados como invlidos para a fase de testes e nmero de exemplos reservados para a fase de treinamento em cada simulao realizada . . . . . . . . . . . . . . . . . . . . . . . . . . . Resultados encontrados pelo AG nos testes realizados da temperatura (T) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Resultados encontrados pelo AG nos testes realizados do saldo de radiao (Qn) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Resultados encontrados pelo AG nos testes realizados do fotoperodo (N) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Resultados encontrados pelo AG nos testes realizados da umidade (UR) Resultados encontrados pelo AG nos testes realizados da insolao (INSOL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Erro mdio absoluto para cada simulao realizada . . . . . . . . . . Valores do desvio padro para cada simulao realizada . . . . . . . . 24 28

29

4 5 6 7 8 9 10

37 39 41 42 44 46 46

Lista de Figuras
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 Sistema EnvRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pluvimetro aps sofrer ao ambiental (DIAS, 2007) . . . . . . Estrutura de uma rede neural articial (HAYKIN, 2000) . . . . . Ciclo de vida de um algoritmo gentico . . . . . . . . . . . . . Exemplo de um indivduo de 10 bits armazenando 3 parmetros Processo do operador crossover no algoritmo gentico . . . . . Processo do operador mutao no algoritmo gentico . . . . . . . . . . . . . . . . . . . . . . . . 8 11 15 18 18 19 20 25 27 30 33 34 38 38 40 40 41 42 43 43 45 45 47

Etapas da metodologia proposta para preenchimento de falhas . . . . Diagrama da sequncia de passos necessrios para realizar o preenchimento de falhas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Representao do indivduo no AG . . . . . . . . . . . . . . . . . . . Ilustrao do preenchimento de um valor ausente utilizando a RNA treinada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ambiente de programao do Matlab . . . . . . . . . . . . . . . . . . Valores dos coecientes de correlao para temperatura . . . . . . . . Valores comparativos entre os valores esperados e os valores obtidos pela RNA nos dados de temperatura . . . . . . . . . . . . . . . . . . Valores dos coecientes de correlao para saldo de radiao . . . . . Valores comparativos entre os valores esperados e os valores obtidos pela RNA nos dados de saldo de radiao . . . . . . . . . . . . . . . Valores dos coecientes de correlao para fotoperodo . . . . . . . . Valores comparativos entre os valores esperados e os valores obtidos pela RNA nos dados de fotoperodo . . . . . . . . . . . . . . . . . . Valores dos coecientes de correlao para umidade . . . . . . . . . . Valores comparativos entre os valores esperados e os valores obtidos pela RNA nos dados de umidade . . . . . . . . . . . . . . . . . . . . Valores dos coecientes de correlao para insolao . . . . . . . . . Valores comparativos entre os valores esperados e os valores obtidos pela RNA nos dados de insolao . . . . . . . . . . . . . . . . . . . . Erro mdio absoluto de todas as simulaes realizadas . . . . . . . .

xi

RESUMO
VENTURA, T. M. Preenchimento de falhas de dados micrometeorolgicos utilizando tcnicas de inteligncia articial. 2012. 73f. Dissertao (Mestrado em Fsica Ambiental), Instituto de Fsica, Universidade Federal de Mato Grosso, Cuiab, 2102. Dados reais relacionados a fenmenos climatolgicos so obtidos, geralmente, utilizando equipamentos como sensores. A captao destes dados est sujeita a falhas e inuncias externas que geram dados invlidos no conjunto de informaes geradas. Tcnicas matemticas e computacionais so comumente usadas com o objetivo de preencher essas falhas nos dados. Este trabalho apresenta uma abordagem computacional que utiliza tcnica de redes neurais, combinada com algoritmos genticos, aplicada a dados reais com o objetivo de preencher falhas (valores ausentes) em sries de temperatura, saldo de radiao, fotoperodo, umidade e insolao em uma regio de cerrado no estado de Mato Grosso. Para avaliar os resultados, foram analisados o coeciente de correlao entre os dados reais e os dados estimados, o erro mdio absoluto e o desvio padro dos dados, e foi constatado um bom resultado nessas anlises. Palavras-chave: preenchimento de falhas; dados micrometeorolgicos; redes neurais articiais; algoritmos genticos; seleo de atributos.

ABSTRACT
VENTURA, T. M. Gap lling of micrometeorological data using techniques of articial intelligence. 2012. 73f. Dissertation (Master in Environmental Physics), Institute of Physics, Federal University of Mato Grosso, Cuiab, 2102. Real data related to climatological phenomena are usually obtained using equipment like sensors. The capture of this data is subject to failures and external inuences that generate invalid data in the set of generated information. Mathematical and computational techniques are commonly used in order to ll these data gaps. This work presents a computational approach that uses neural networks technique, combined with genetic algorithms applied to real data with the objective of lling the gaps in a series of temperature, radiation balance, photoperiod, humidity and insolation in an area of Mato Grossos Cerrado. To evaluate the results, the correlation coefcient of the real data and the estimated data, the mean absolute error and the standard deviation of the data were analyzed, and a good result was observed in these analysis. Keywords: gap lling; micrometeorological data; articial neural networks; genetic algorithms; selection of attributes.

Captulo 1 Introduo
1.1 Problemtica

Em empresas privadas, rgos governamentais ou instituies acadmicas, os dados tm um grande valor, porque so os dados que representam toda informao dentro de tais unidades, possibilitando que decises sejam tomadas baseada na anlise desses dados, produtos sejam criados ou modelagens de fenmenos fsicos sejam representados. Por essas razes que s vezes os dados de uma unidade so considerados como um patrimnio da organizao. Dados relacionados observao de fenmenos reais geralmente so denominados dados cientcos (PFALTZ, 2007). Este tipo de dado pode ser, por exemplo, o histograma de uma imagem mdica, dados oriundos de satlites ou resultados de uma simulao. Normalmente, esses dados tem uma maior complexidade em sua estrutura, e seus valores podem representar fenmenos do ambiente real gerando uma grande quantidade de dados/informao. Para compreender fenmenos climticos no sentido de ajudar em reas como agricultura e planejamento urbano, necessrio o estudo das variveis climticas envolvidas, muitas vezes representadas por dados cientcos. Nessa rea de estudo, os dados geralmente so obtidos por diversos equipamentos, como os sensores, que fazem a leitura de uma ou mais variveis durante o seu funcionamento, os quais, normalmente, cam ligados durante 24 horas por dia, gerando uma grande quantidade de dados. Alm da grande quantidade de dados, uma caracterstica que diculta a anlise dos dados cientcos que os sensores so instalados em estaes micrometeorolgicas que esto ao ar livre e, consequentemente, sujeitos s condies naturais do meio ambiente. A ao de animais prximos aos equipamentos e fortes mudanas no tempo podem atrapalhar as leituras dos sensores, causando falhas no armazenamento dos dados. Alm do mais, os sensores so aparelhos eletrnicos e esto sujeitos a falhas. 3

1.2. Justicativa

Sendo assim, as condies naturais do meio ambiente e problemas tcnicos podem interferir na leitura e armazenamento dos dados observados. Quando a leitura das variveis climticas no feita de maneira automtica, necessrio que um observador anote as medidas captadas pelos equipamentos. Entretanto, problemas diversos podem ocorrer impedindo que o observador realize alguma leitura dos equipamentos em determinado horrio do dia, provocando falha na leitura dos dados. Assim, apesar de ser possvel obter uma grande quantidade de dados, coletados por diversos sensores e/ou pesquisadores, durante um longo perodo de tempo, provvel que alguns dos dados coletados sejam invlidos (dados com valores incorretos ou ausentes), ocorridos no processo de leitura e/ou armazenamento. Isso gera diculdades para anlise e modelagem desses dados, pois os resultados sero obtidos baseados em sries de dados que no foram armazenadas de forma precisa. No contexto do Programa de Ps-Graduao em Fsica Ambiental (PPGFA) da Universidade Federal de Mato Grosso (UFMT), grande parte do trabalho pesquisado baseado em dados ambientais coletados a partir de sensores. Nos trabalhos desenvolvidos, comum a presena de falhas em dados micrometeorolgicos, sendo necessrio a utilizao de mtodos para preencher valores ausentes gerados por falhas nas sries de dados. Portanto, necessrio o desenvolvimento e aplicao de mtodos que possam facilitar o preenchimento dessas falhas nos dados de estaes micrometeorolgicas visando analisar e modelar dados que representam fenmenos do mundo real.

1.2

Justicativa

Em um cenrio ideal, os dados obtidos de sensores deveriam ser lidos e armazenados com exatido. Entretanto, deve se ter o cuidado de pr-processar os dados coletados que sero utilizados a m de localizar dados incorretos ou nulos, antes de processar, modelar e analisar dados que representam fenmenos reais. Em um processo de anlise de dados, quando dados invlidos ou com valores ausentes so encontrados, deve-se decidir se os mesmos sero removidos completamente ou se ser utilizado algum mtodo para preencher os valores invlidos. Normalmente, um procedimento bastante utilizado a mdia dos valores nos dados, das leituras que foram obtidas antes e depois da falha, substituindo o valor invlido ou faltante pela mdia obtida. Contudo, esse um mtodo simples que pode apresentar caractersticas como: a srie de dados j no ir representar completamente a realidade e, tambm, a possibilidade de, caso uma srie contnua de dados conter erros, no ser possvel

1.3. Objetivo geral

a utilizao deste mtodo, j que so necessrias leituras prximas para preencher a falha. Para tentar minimizar essas caractersticas indesejveis, e estimar um valor mais prximo do valor real, uma alternativa a utilizao de tcnicas computacionais para auxiliar na estimativa de valores no preenchimento de falhas. Esto sendo bastante utilizadas algumas tcnicas da rea de Inteligncia Articial (IA) que visa aprender o comportamento padro de uma srie de dados. Segundo Sellitto (2002), IA uma rea de conhecimento que oferece modelos de apoio deciso e ao controle com base em fatos reais e conhecimentos empricos e tericos, mesmo que apoiados em dados incompletos. Algumas tcnicas bastante utilizadas nesse contexto so, por exemplo, as Redes Neurais Articiais (RNA) e os Algoritmos Genticos (AG). RNAs tem sido aplicadas em vrios campos da engenharia e modelagem ambiental, por exemplo. RNAs tem a vantagem de usar funes no lineares que possam estimar a sada, a partir de alguns valores de entrada depois de treinada usando uma amostra de dados. Dessa forma, utilizar mtodos que possam automatizar o processo de preenchimento de falhas de maneira que represente valores mais prximos possvel do valor real, um desao tanto para as pesquisas do PPGFA quanto da comunidade cientca em geral. O desenvolvimento de uma ferramenta capaz de preencher falhas em sries de dados, resultar em uma maior consistncia nos dados, permitindo interpretaes e modelagens mais precisas e, consequentemente, auxiliando na anlise dos resultados importantes para a comunidade.

1.3

Objetivo geral

O objetivo deste trabalho consiste no preenchimento de falhas em dados obtidos em estaes micrometeorolgicas, visando anlise de fenmenos ambientais, utilizando tcnicas de redes neurais em conjunto com algoritmos genticos.

1.4

Objetivos especcos

Para alcanar o objetivo geral deste trabalho, foi necessrio denir e atingir os seguintes objetivos especcos: Obter, estudar e pr-processar os dados coletados por equipamentos de estaes micrometeorolgicas.

1.5. Contextualizao do trabalho

Investigar a tcnica de algoritmos genticos aplicada a dados ambientais e na otimizao de redes neurais. Investigar a tcnica de redes neurais articiais aplicada a variveis climatolgicas. Especicar e desenvolver um algoritmo gentico para denir parmetros de redes neurais articiais. Denir e implementar uma rede neural articial para estimar valores no preenchimento de falhas. Realizar a integrao entre o algoritmo gentico e a rede neural articial. Avaliar o desempenho dos resultados obtidos.

1.5

Contextualizao do trabalho

Este trabalho, vinculado ao Programa de Ps-Graduao em Fsica Ambiental, se insere no contexto maior do Grupo de Pesquisa denominado Tratamento de Bases Ambientais (TABA), que se dedica a aplicar tcnicas computacionais para tratamento, armazenamento e anlise de dados ambientais (OLIVEIRA et al., 2010). O Grupo de Pesquisa TABA se dedica atualmente no desenvolvimento de um ambiente para anlise e armazenamento inteligente de dados de sries temporais aplicados a variveis micrometeorolgicas, utilizando tcnicas de inteligncia articial, banco de dados, engenharia de software e estatstica, entre outras. O ambiente que est em desenvolvimento, tem como base a investigao e a elaborao de uma arquitetura baseada em componentes de software buscando exibilidade no desenvolvimento e aperfeioamento do ambiente. Esse ambiente em desenvolvimento denominado de Environmental Resource Planning (EnvRP) e utiliza conceitos relacionados com Enterprise Resource Planning (ERP), no qual um banco de dados robusto utilizado de forma que as informaes sejam todas inter-relacionadas e bem mapeadas, buscando-se ecincia no armazenamento e recuperao dos dados. O ERP possui caracterstica de um sistema integrado e uma arquitetura aberta, viabilizando a operao com diversos sistemas operacionais, banco de dados e plataformas de hardware (JESUS; OLIVEIRA, 2007). Dessa forma, no EnvRP haver uma centralizao e integrao das informaes em uma nica base de dados. Isso ir permitir que os dados sejam analisados de forma

1.5. Contextualizao do trabalho

mais adequada, pois o tratamento uniformizado para todas as manipulaes, permitindo que seja feito melhor controle de qualidade dos resultados das anlises (OLIVEIRA, 2011). O sistema EnvRP (Figura 1) tem a nalidade de facilitar a extrao de informaes referentes a dados ambientais. Para tanto, foram planejados mdulos dentro do sistema geral envolvendo tcnicas computacionais de inteligncia articial, banco de dados e estatstica. Esses mdulos so descritos a seguir. A Obteno dos dados 1. Coleta de dados: A obteno dos dados a serem utilizados pelo sistema feita por sensores localizados em estaes micrometeorolgicas. Cada sensor tem as suas prprias caractersticas e pode gerar tipos diferentes de dados a cada leitura. 2. Dados digitais (.DAT): Os sensores podem obter dados a cada frao de segundo dependendo de sua congurao. Em todo caso, esses dados so enviados para outro equipamento que responsvel pelo armazenamento em campo. De tempo em tempo, os dados armazenados nesse equipamento so transformados em arquivos digitais (extenso .DAT) os quais os sistemas operacionais tradicionais possuem a capacidade de ler. B Armazenamento e consulta dos dados 3. Importao no SGBD: Mesmo tendo os dados em forma digital a partir dos arquivos .DAT, ainda no vivel realizar consultas para extrair informaes desses dados. Assim, se faz necessrio uma importao em um sistema de gerenciamento de banco de dados (SGBD). 4. Consulta rpida e fcil: Este procedimento pode ser realizado desde o momento que os dados j esto no banco de dados ou depois que o tratamento dos dados seja executado. O objetivo aqui que o usurio possa recuperar de maneira fcil e rpida as informaes contidas no SGBD atravs de ltros de consulta. 5. Exportao dos dados: Caso o usurio queira trabalhar os dados em outro ambiente, esse procedimento pode ser executado e os dados sero transformados para um outro formato de arquivo. C Tratamento dos dados

1.6. Organizao do trabalho

6. Limpeza dos dados: Trata de uniformizar os dados, ou seja, fazer com que as variveis do mesmo tipo tenham a mesma unidade. Tambm de responsabilidade desta etapa identicar os dados invlidos. 7. Preenchimento de falhas: Com a etapa anterior nalizada, o sistema identica quais dados devem ser substitudos. Esta etapa tem como objetivo utilizar tcnicas da inteligncia articial e estatstica, entre outras, para preencher valores invlidos. 8. Deteco de padres: Com a quantidade de dados coletados ca difcil a tarefa de observar relaes entre as informaes. Na etapa de deteco de padres o prprio sistema tentar descobrir padres dos dados.

Figura 1: Sistema EnvRP Este trabalho est situado no mdulo C, mais especicamente no item 7, ou seja, na etapa de preenchimento de falhas. Mais detalhes do mdulo A e do mdulo B podem ser consultados em Oliveira et al. (2011).

1.6

Organizao do trabalho

Este trabalho est organizado da seguinte forma:

1.6. Organizao do trabalho

Captulo 2: Este captulo apresenta os conceitos bsicos necessrios para o desenvolvimento deste trabalho. So apresentadas informaes sobre os dados de estaes micrometeorolgicas, conceitos sobre rede neural articial e sobre os algoritmos genticos. Captulo 3: Descreve os dados micrometeorolgicos utilizados no preenchimento de falhas, a metodologia proposta, o ambiente de programao utilizado na implementao do trabalho e a anlise estatstica dos resultados encontrados. Captulo 4: Neste captulo so mostrados os resultados obtidos no preenchimento de falhas de diversas simulaes por meio de coecientes de correlao entre os dados reais e os dados estimados, erro mdio absoluto e desvio padro. Captulo 5: Apresenta as concluses e as possibilidades de trabalhos futuros.

Captulo 2 Fundamentao Terica


As condies climticas do meio ambiente esto adquirindo cada vez mais importncia no cenrio mundial, principalmente porque no incio deste novo milnio, as emisses decorrentes das atividades humanas cada vez mais comprometem a vida neste planeta (HEWITT, 2003). Diversas reas de pesquisa estudam as condies climticas, uma delas a meteorologia. A meteorologia o ramo da cincia que lida com a atmosfera terrestre e os processos fsicos que ocorrem nele (AHRENS, 2004). Por ser uma rea extensa de estudo ela pode ser divida em sub-reas, como a macro, meso ou a micrometeorologia. A macrometeorologia o estudo dos fenmenos de macroescala. Os movimentos de macroescala tem uma escala de comprimento horizontal da ordem de 1000 km ou maior, limitado pela circunferncia da Terra, e escala de tempo de um dia ou mais. Na vertical, os movimentos de macroescala podem se estender por toda a troposfera (BUSK, 2008). J a mesometeorologia se refere ao estudo dos sistemas atmosfricos de dimenses intermdias entre as dos fenmenos observados s escalas local e sinptica (ATKINSON, 1981). E a micrometeorologia tem como principal objeto de estudo o ambiente de vida da humanidade (FOKEN, 2008). Dados micrometeorolgicos, rea de interesse deste trabalho, so obtidos usando equipamentos que esto em campo realizando leituras do ambiente.

2.1

Dados micrometeorolgicos

O funcionamento de equipamentos responsveis por medir elementos meteorolgicos passam por sensores e os dados so armazenados em sistemas de aquisio de dados, chamados de Datalogger (NEVES, 2011). Entretanto, como comentado, nem sempre os dados so armazenados com sucesso. normal encontrar falhas nos dados coletados por sensores e estas falhas podem sig10

2.1. Dados micrometeorolgicos

11

nicar a ausncia de um valor ou o armazenamento incorreto de um valor. No caso de um valor incorreto ser gravado, a identicao da falha mais difcil, j que para isso necessrio um conhecimento maior sobre a varivel climtica que o valor representa para que seja possvel perceber que o valor est incoerente com a situao que se encontra a srie de dados. As falhas nos dados podem acontecer por diversos fatores. Em Dias (2007) so apresentados alguns destes fatores, como deteriorao por fatores ambientais ou desligamento dos equipamentos por falta de energia. Na Figura 2 apresentado um equipamento sendo afetado por uma ao da natureza no qual vrios insetos entraram dentro do equipamento prejudicando o seu funcionamento.

Figura 2: Pluvimetro aps sofrer ao ambiental (DIAS, 2007) Como dito anteriormente, uma das consequncias quando os equipamentos sofrem alguns destes problemas o erro no armazenamento dos dados. Nos casos em que h ausncia de valores em uma srie de dados deve-se fazer uma escolha entre ignorar os perodos com dados incorretos ou aplicar alguma tcnica para preencher os valores com falhas. Alguns trabalhos mostram o tratamento de dados ausentes. No trabalho de Capistrano (2007) foi determinado um valor mnimo e mximo para o dado que estava sendo trabalhado e, assim, retirou-se os dados que estavam fora desse limite. O mtodo utilizado para preencher os dados retirados foi fazer uma repetio do dado anterior ao retirado. importante ressaltar que esse tipo de tratamento s foi possvel ser utilizado porque essa operao no inuenciava no estudo do respectivo trabalho. Em Pal (2008) observado que h vrios valores ausentes na srie de dados pesquisada, assim como dados incoerentes em comparao aos dados obtidos em perodos

2.2. Mtodos para preenchimento de falhas

12

prximos. Neste trabalho as falhas encontradas tiveram os seus registros ignorados, trabalhando apenas com os dados vlidos. No trabalho realizado por Gallon (2005) foi constatado a ausncia de dados em diversos perodos por causa de falhas nos equipamentos. Em alguns casos havia falhas englobando um ms inteiro. Uma parte dos dados em diversos meses teve que ser descartada, dicultando a anlise dos dados. O nmero de dados das sries no trabalho de Mariano (2005) foi limitado devido s falhas encontradas por causa das condies de campo e de manuteno dos equipamentos. Nesse trabalho, essas falhas podem ser de algumas horas ou de vrios dias, o que impossibilitou que quatro anos no pudessem ser analisados por causa das falhas contnuas. Quando o perodo tinha poucas falhas, foi utilizado a mdia entre o dado anterior e posterior falha para preencher o valor ausente. No entanto observado que esse mtodo apenas aceitvel quando no h uma grande sequncia de falhas na srie de dados. Como pode ser visto, comum a ocorrncia de falhas em sries de dados micrometeorolgicos. Pode ser observado tambm que a soluo utilizada para resolver esse problema normalmente o descarte dos registros com falhas ou o preenchimento com tcnicas simples, como a repetio ou mdia de dados prximos. Entretanto, a utilizao de mtodos simples prejudica o desempenho do trabalho porque os dados deixam de representar com preciso as condies do ambiente no momento em que foram feitas as leituras. Por outro lado, h mtodos mais complexos que preenchem as falhas de maneira mais precisa.

2.2

Mtodos para preenchimento de falhas

Um dos mtodos utilizado para preenchimento de falhas a imputao mltipla (Multiple Imputation, MI ). MI uma tcnica de Monte Carlo em que o valor ausente substitudo por m > 1 valores simulados, onde m tipicamente pequeno, como valores entre 3 e 10 (SCHAFER, 1999). Fazer as operaes do mtodo de MI no uma tarefa fcil, ento foram criados diversos sistemas para automatizar esse processo. Em Orton e Ipsitz (2001) comentado sobre vrios sistemas para facilitar o uso deste mtodo, como: Solas, Sas, S-Plus, Mice, dentre outros. Inicialmente, o MI foi proposto para preencher falhas em questionrios de pesquisa, mas atualmente tambm utilizado em outros tipos de sries de dados. No trabalho de Hui (2004) foi usado esse mtodo para preencher falhas em medidas do equipamento de eddy covariance, que faz leituras sobre a troca de gs carbnico, vapor dgua e calor entre uma superfcie vegetada e a atmosfera. J em Nunes, Kluck e

2.2. Mtodos para preenchimento de falhas

13

Fachel (2009) foi utilizado o mtodo para dados epidemiolgicos. Em Falge et al. (2001) so comparados outros mtodos de preenchimento de falhas, como a variao mdia diurna (mean diurnal variation, MDV ) e o look-up tables. No mtodo MDV, o valor ausente substitudo pela mdia calculado a partir dos valores obtidos nos dias adjacentes (KATO et al., 2006), sendo utilizado em dados meteorolgicos como em Hu et al. (2009) e em Alavi, Warland e Berg (2006). A abordagem do mtodo look-up tables consiste em criar uma tabela com os valores de uxos, com base nos valores correspondentes dos parmetros externos (por exemplo, temperatura do solo, precipitao, umidade do solo, etc.), e preencher as falhas de acordo com essa tabela. A determinao dos parmetros relevantes e seus valores crticos um passo crucial para essa tcnica ser bem sucedida (MISHUROV; KIELY, 2011). Pesquisas como as de Rodrigues, Pita e Mateus (2005), Wilson e Baldocchi (2001) e Shao et al. (2011) utilizaram esse mtodo. No trabalho de Moffat et al. (2007) foram comparadas algumas variaes de tcnicas de preenchimento de falhas em um mesmo conjunto de dados. Dentre elas estavam tcnicas do tipo de regresso no-linear (RNL) e de dual unscented Kalman lter (UFK). As RNL so baseadas em parmetros de equaes no-lineares que expressam (semi-)relaes empricas entre o uxo pesquisado e as variveis ambientais, como temperatura e luz. O UKF um mtodo de estimativa recursivo de predio e correo atravs do qual os dados de medio so usados para atualizar continuamente o modelo (GOVE; HOLLINGER, 2006). Tcnicas computacionais tambm esto sendo utilizadas no preenchimento de falhas, como, por exemplo, as tcnicas de inteligncia articial, redes neurais articiais, algoritmos genticos e lgica fuzzy. Em Ooba et al. (2006) foi desenvolvido uma combinao das tcnicas de algoritmos genticos e redes neurais articiais para preencher falhas em dados de uxo de carbono. Foi feito tambm uma comparao dos resultados de sua aplicao com um mtodo convencional que usa equaes com parmetros que foram determinados por meio de regresso no-linear. Os resultados mostraram que a combinao das tcnicas utilizadas teve uma maior preciso comparado ao mtodo convencional testado. Este trabalho utiliza uma metodologia semelhante a que foi proposta por Ooba et al. (2006). No entanto, importante salientar que a maioria das implementaes das tcnicas de preenchimento de falhas so orientadas para o tipo de dado especco em relao ao problema que se deseja resolver. Isso acontece porque esses mtodos necessitam ter o conhecimento a priori do comportamento da varivel que ser ajustada para ter um bom desempenho. Levando em considerao esse fator, neste trabalho a metodologia utilizada para preenchimento de falhas de dados micrometeorolgicos

2.3. Redes neurais articiais

14

trabalha, independentemente, da varivel climtica a ser corrigida. A tcnica utilizada nesta metodologia so as redes neurais articiais em conjunto com algoritmos genticos.

2.3

Redes neurais articiais

Segundo Russell e Norvig (2004), um neurnio uma clula no crebro cuja principal funo coletar, processar e disseminar sinais eltricos. Acredita-se que a capacidade de processamento de informaes do crebro emerge principalmente de redes de tais neurnios. Baseado nesse conceito, surgiu a ideia da tcnica de redes neurais articiais (RNA), que uma das reas de pesquisa de inteligncia articial (IA). A RNA composta por unidades de processamento chamadas neurnios, cada um deles gera um sinal que uma funo genrica no-linear da soma dos sinais recebidos pela unidade. Fontes de sinais recebidos so especicadas por meio de conexes. Neurnios recebem os sinais provenientes de fontes idnticas, compreendendo um grupo de neurnios denominada camada. Cada sinal recebido por um neurnio pr-processado por meio de um parmetro de ponderao multiplicativo chamado de peso. A denio dos valor dos pesos da rede, de modo a otimizar um critrio, depende das sadas da rede, e esse processo chamado de treinamento da rede (AGARWAL, 1997). As RNAs tm sido utilizadas com sucesso para modelar relaes envolvendo sries temporais complexas (HAYKIN, 2000). RNAs podem ser consideradas como uma poderosa tcnica de reconhecimento de padres em anlises de dados ambientais e climatolgicos em relao aos processos biolgicos (BELGRANO; MALMGREN; LINDAHL, 2001). A maior vantagem das RNAs sobre os mtodos convencionais que no requerem informao detalhada sobre os processos fsicos do sistema a ser modelado, sendo este descrito explicitamente na forma matemtica (SUDHEER; GOSAIN; RAMASASTRI, 2003).

2.3.1

Estrutura de uma RNA

Na Figura 3 ilustrada a estrutura de uma RNA. Os sinais de entradas x1 , ...xm so denidos pelos valores contidos na base de dados. Esses valores serviro de insumo para calcular o valor do sinal de sada yk da rede neural, ou seja, a resposta ao problema que a RNA foi treinada para solucionar. Os pesos wk1 , ...wkm de uma RNA so utilizados no clculo da funo de ativao. Segundo Moayed e Shell (2010), os pesos sero ajustados baseados no erro entre o valor estimado e o valor atual da sada durante a fase de treinamento.

2.3. Redes neurais articiais

15

Figura 3: Estrutura de uma rede neural articial (HAYKIN, 2000) A juno aditiva possui o propsito de somar todos os sinais de entrada ponderados pelos pesos sinpticos de cada neurnio. O valor de bk funciona aumentando ou diminuindo a inuncia do valor da entrada para a ativao do neurnio; j a funo de ativao funciona restringindo a amplitude de sada de determinado neurnio e adicionando no-linearidade ao modelo (ZANETTI et al., 2008). Uma RNA pode ter vrias camadas ocultas, que so as camadas posicionadas entre a camada de entrada e a camada de sada. Em cada uma delas pode ter vrios neurnios. O nmero certo de camadas ocultas e neurnios varia de problema para problema. Entretanto, esses valores podem ser baseados no Teorema de Kolmogorov-Nielsen, apresentato por Kovcs (1996) onde: "Dada uma funo contnua arbitrria f : [0, 1]n Rm , f (x) = y, existe sempre, para f , uma implementao exata com uma rede neural de trs camadas, sendo a camada de entrada um vetor de dimenso n, a camada oculta composta por 2n + 1 neurnios, e a camada de sada com m neurnios representando as m componentes do vetor y". Alm dos componentes apresentados, faz parte tambm de uma rede neural o algoritmo de treinamento. Para Fausett (1994), o algoritmo de treinamento consiste dos procedimentos que modicam os pesos em uma rede neural, ou seja, o algoritmo de treinamento que vai determinar a busca no espao de estados possveis para a rede neural encontrar uma soluo para o problema. Normalmente a fase de treinamento da RNA consiste em utilizar cerca de 70% dos dados para formar um conjunto de dados, chamado de conjunto de treinamento. Este conjunto utilizado inmeras vezes, no qual a cada utilizao os pesos so atualizados at que o erro gerado alcance um nvel aceitvel para este conjunto de dados. O restante dos dados, cerca de 30%, servir para vericar o desempenho do treinamento realizado.

2.3. Redes neurais articiais

16

2.3.2

Trabalhos relacionados com RNA

RNAs so utilizadas nas mais diversas reas da cincia. Em Fausett (1994) so mostrados casos do seu uso em processamento de sinais, controle maquinrio, reconhecimento de padres, reconhecimento de fala, rea mdica, rea de negcio, dentre outros. comum a utilizao da tcnica de RNA em pesquisas na rea ambiental, sendo elas para previso, estimativa ou preenchimento de falhas. Em Panella, Rizzi e Martinelli (2003) foram estudadas RNAs para melhorar a preciso em previses de sequncia de dados ambientais, se concentrando em sries com comportamento catico, como o nvel de oznio e rudo, o que torna mais difcil a previso. Utilizaram a rede neural baseada no modelo de mistura Gaussiano, com o algoritmo de treinamento denominado SHEM, que segundo Holtgrewe, Sanders e Schulz (2010) um algoritmo muito rpido. Foram obtidos bons resultados, mostrando-se melhor que outros mtodos de previso para esse tipo de dado. Em Tsukahara, Jensen e Caramori (2010) RNAs foram utilizadas para o preenchimento de falhas em sries horrias de dados meteorolgicos do estado do ParanBrasil. Foi utilizada uma RNA do tipo Multi Layer Perceptron, com algoritmo de aprendizagem Resilient, com uma nica camada oculta com quarenta e quatro neurnios. O trabalho utilizava os dados de onze estaes meteorolgicas, no qual as falhas de uma estao eram preenchidas com base nos valores das outras dez estaes. A RNA conseguiu gerar bons resultados, mas a dependncia da existncia de outras estaes meteorolgicas um ponto negativo. No trabalho de Deswal e Pal (2008) utilizado uma RNA para estimar a evaporao de um local. Foram utilizados dados de temperatura do ar, velocidade do vento, horas de sol por dia, umidade relativa e, para avaliar os resultados obtidos, a prpria evaporao. Os resultados foram comparados com mtodos de regresso linear e regresso liner mltipla, e o uso de RNA foi considerado uma melhor alternativa em relao aos outros mtodos. J em Jain, Nayak e Sudheer (2008), foi aplicada a tcnica de RNA tambm para estimar valores de evapotranspirao. H uma diculdade na medio de evapotranspirao porque requer um maior conhecimento de vrias variveis climticas e o uso de equipamentos especiais. Neste trabalho essa diculdade foi contornada pelo uso de uma RNA, com a qual foi possvel estimar com preciso a evapotranspirao de um local mesmo utilizando poucas variveis climticas. Na Seo 2.3.1 foi visto que a estrutura de uma RNA possui diversos parmetros, podendo ser congurada de vrias formas diferentes. E para cada conjunto de dados h uma melhor congurao da RNA para resolver o problema que lhe foi proposto. Entretanto, achar essa melhor congurao no uma tarefa fcil. Nos trabalhos cita-

2.4. Algoritmos genticos

17

dos, provavelmente houve a necessidade de testar vrias combinaes de parmetros at achar uma congurao aceitvel para resolver cada problema, exigindo muito esforo. Neste trabalho proposta a aplicao da tcnica de RNA para preenchimento de falhas em diversos tipos de dados. Para tanto, foi utilizada a tcnica de algoritmos genticos para estimar os parmetros de uma RNA, criando uma abordagem para que a congurao da RNA seja feita de forma automatizada.

2.4

Algoritmos genticos

Algoritmos Genticos (AGs), inicialmente propostos por John Holland em 1975, so baseados no princpio da seleo natural de Charles Darwin, fundamentando-se na armao de que, os indivduos mais adaptados tm maior chance de sobreviver e gerar descendentes (LACERDA; CARVALHO, 1999). AGs so mtodos estocsticos de busca de um timo global, no qual os indivduos mais aptos tendem a sobressair (ASSUMPO et al., 2011). Segundo Goldberg (1989), os AGs apresentam algumas caractersticas que os tornam diferentes dos mtodos tradicionais de busca e otimizao. Em Correia (2003) so detalhadas algumas destas diferenas: No trabalham diretamente com o domnio do problema, mas com representaes dos seus elementos; Executam a busca em um conjunto de candidatos (populao) e no apenas em um; No tem conhecimento especco do problema, utilizam apenas uma funo que avalia se um indivduo bom ou no; Utilizam basicamente regras probabilsticas. Uma populao um grupo de indivduos, no qual cada indivduo tem um valor adaptativo associado, que propagado em uma nova gerao utilizando o princpio Darwiniano de reproduo e sobrevivncia (KOZA, 1995). De acordo com Michalewicz (1994), o princpio bsico dos AGs consiste em fazer evoluir um conjunto de solues iniciais (populao) para uma soluo tima. O AG inicia selecionando aleatoriamente certo nmero de indivduos, que so possveis solues para o problema, dentro do espao de busca. Estes so avaliados em relao capacidade de resolver o problema, e essa capacidade expressa numericamente pela avaliao do indivduo, por meio de uma funo objetivo. Com base na aptido dos indivduos, uma nova populao formada fazendo uso de operadores probabilsticos de

2.4. Algoritmos genticos

18

seleo. No nal, o indivduo que est mais apto a resolver o problema considerado como uma soluo, dentro de um erro aceitvel.

2.4.1

Funcionamento de um algoritmo gentico

Na Figura 4 mostrado o ciclo de vida de um algoritmo gentico. Primeiramente, uma populao de indivduos, que um conjunto de possveis solues, criada aleatoriamente. O indivduo, segundo Sheikh, Raghuwanshi e Jaiswal (2008), um conjunto de parmetros da soluo codicado em uma cadeia de nmero, representando um ponto no espao da busca. Normalmente, os indivduos so codicados em uma cadeia binria, para facilitar as operaes genticas.

Figura 4: Ciclo de vida de um algoritmo gentico Na Figura 5 pode ser visualizado um exemplo de indivduo armazenando os valores de trs parmetros em sua forma binria, no qual o primeiro parmetro 110, representando o valor 6, o segundo parmetro 1000, representando o valor 8, e o terceiro parmetro 101, ou seja, 5 no valor decimal.

Figura 5: Exemplo de um indivduo de 10 bits armazenando 3 parmetros Depois que a populao foi criada, cada indivduo ser avaliado pela funo objetivo. A funo objetivo responsvel por descrever o quo bom um indivduo em cada gerao (TANG; LEE, 2006), ou seja, esta funo que vai informar ao algo-

2.4. Algoritmos genticos

19

ritmo gentico se aquela soluo representada pelo indivduo uma boa soluo para o problema em questo. Quando todos os indivduos forem avaliados, possvel vericar se a execuo do algoritmo gentico pode parar. Critrios de parada: i) nmero mximo de geraes foi alcanado ou ii) um ou mais indivduos da populao representem uma soluo vlida para o problema (possua um erro mnimo aceitvel). Se nenhum dos critrios de parada foi atingido, alguns indivduos na populao so selecionados e iniciada uma nova gerao desta populao. Durante a seleo dos indivduos pode ser realizado um procedimento de elitismo, para no permitir que indivduos melhores sejam expulsos da populao em favor de indivduos piores (LAUMANNS; ZITZLER; THIELE, 2000). O elitismo responsvel por propagar propositalmente uma parte dos melhores indivduos para a prxima gerao, conservando assim bons materiais genticos. Os indivduos que no foram selecionados para a prxima gerao so descartados da populao. Os restantes so utilizados em operadores genticos para gerar novos indivduos. Os operadores genticos utilizados so crossover e mutao. Zhang, Gao e Lou (2007) descrevem o funcionamento do crossover da seguinte forma: duas partes de materiais genticos so escolhidas aleatoriamente de dois indivduos (pais), depois, dois novos indivduos (lhos) so gerados trocando essas partes sorteadas. No nal, so obtidos dois novos indivduos, sendo um com a parte inicial do primeiro pai e a parte nal do segundo pai, e o outro com a parte nal do primeiro pai e a parte inicial do segundo pai. Esse processo mostrado na Figura 6.

Figura 6: Processo do operador crossover no algoritmo gentico Por m, o operador de mutao, segundo Zhou, Cheng e Zuo (2008), pode criar um novo indivduo alterando um de seus materiais genticos, conforme mostrado na

2.4. Algoritmos genticos

20

Figura 7, que no caso, o bit com valor 0 foi alterado para o valor 1. No entanto, a m de preservar a estabilidade do algoritmo, a probabilidade de mutao deve ser pequena.

Figura 7: Processo do operador mutao no algoritmo gentico Aps todos esses passos, uma nova gerao da populao foi formada, a qual ser novamente avaliada, reiniciando o ciclo do algoritmo gentico. Essa sequncia continuar at que um dos critrios de parada seja alcanado. O Pseudocdigo 1 representa a lgica do funcionamento de um AG.

Pseudocdigo 1: Lgica de um AG 1: Gerar populao aleatria 2: Enquanto no for atingido o critrio de parada 3: Para cada indivduo da populao 4: Decodicar o indivduo 5: Avaliar o indivduo com a funo objetivo 6: Armazenar a sua avaliao 7: Fim Para 8: Se nenhum indivduo atingiu o erro mnimo Ento 9: Obtm uma nova gerao da populao 10: Aplicar elitismo 11: Aplicar crossover 12: Aplicar mutao 13: Fim Se 14: Fim Enquanto 15: Apresentar os indivduos mais aptos (solues para o problema)

Na primeira linha gerada uma populao de indivduos, no qual cada indivduo codicado pelos parmetros, dependendo do problema a ser resolvido. Em seguida, dado incio a um ciclo de operaes que s ir parar quando um resultado satisfatrio for alcanado. Estas operaes consistem em avaliar cada indivduo para vericar se os parmetros que o mesmo armazena fornecem uma boa soluo para o problema. Na linha 3 iniciado uma iterao entre cada indivduo da populao. Como os parmetros dos indivduos esto codicados, necessrio uma decodicao para trans-

2.4. Algoritmos genticos

21

formar novamente os parmetros em valores possveis de serem calculados e comparados (linha 4). Com os parmetros decodicados, possvel aplicar a funo objetivo para avaliar o indivduo (linha 5). Em seguida, a avaliao gerada pela funo objetivo armazenada para que futuramente possa ser comparada com os erros dos outros indivduos (linha 6). Na linha 8 vericado se no houve nenhum caso em que um indivduo atingiu o erro mnimo aceitvel pelo problema. Se isso aconteceu, uma nova gerao gerada com base nos operadores genticos (linhas 9 a 12). Com uma nova gerao, teoricamente mais evoluda, o processo realizado novamente voltando para a linha 2, reiniciando o ciclo at que um ou mais indivduos estejam aptos para serem as solues do problema ou seja atingido o nmero mximo de ciclos. Quando isso acontecer sero apresentados tais indivduos (linha 15).

2.4.2

Trabalhos relacionados com AG

Assim como as RNAs, os algoritmos genticos tambm so utilizados em diversas reas. O trabalho de Forrest (1993) exemplica algumas reas em que o AG foi utilizado, como, por exemplo, otimizao de funo, problemas de ordenao, programao automtica e modelos para processos dinmicos. possvel utilizar o AG em conjunto com outras tcnicas, como as redes neurais articiais. Em Hervs, Algar e Silva (2000) mostrado que o uso de AG e RNA se mostrou til fazendo correes de variao de temperatura. Nesse caso, o AG determinava o nmero de entradas da RNA obtendo um resultado melhor do que comparado com um mtodo paramtrico no-linear. Os AGs podem determinar toda a estrutura de uma RNA, como tambm apenas uma parte de sua congurao. Um exemplo desse caso o trabalho de Lin, Chiu e Tsai (2006), no qual o algoritmo gentico era responsvel apenas por determinar os melhores pesos na congurao da rede neural. Os outros parmetros eram determinados pelo conhecimento prvio do autor ou por meio de testes. Em Tarca, Grandjean e Larachi (2002) tambm foi utilizada a combinao de AG e RNA na rea da qumica. Nesse trabalho, as combinaes das variveis em questo eram inmeras, tornando muito demorado a resoluo do problema utilizando apenas RNA. Ento foi utilizada a combinao com o AG para acelerar a busca por uma soluo desse problema combinatrio, diminuindo o processamento que durava semanas para apenas algumas horas. O AG foi responsvel por determinar a melhor congurao das camadas da RNA. Schaffer, Whitley e Eshelman (1992) realizaram um estudo sobre os principais pontos na combinao de AG e RNA, no qual foi visto que essa combinao pode fazer

2.4. Algoritmos genticos

22

com que a RNA auxilie o desenvolvimento do AG, assim como o AG pode auxiliar a criao da RNA. No caso do AG dando apoio RNA, podem ser denidas quais as entradas sero utilizadas na RNA, bem como a denio da sua prpria arquitetura. J no caso da RNA apoiando o AG, normalmente so denidos os indivduos iniciais da populao. O trabalho conclui que o uso de AG para auxiliar uma RNA uma rea promissora no sentido de ter um retorno rpido de resultados em relao ao esforo aplicado e, por isso, tem sido aplicada com sucesso para vrios problemas do mundo real. Com base nesses trabalhos percebe-se que a combinao entre algoritmo gentico e rede neural articial possvel e est sendo aplicada com sucesso. Assim, neste trabalho, com objetivo de preencher dados com falhas, o AG ser utilizado para determinar os principais parmetros da RNA. Alm disso, poder determinar tambm quais entradas disponveis sero utilizadas na RNA, j que neste caso h a possibilidade de algumas entradas prejudicarem o desempenho da RNA. Mais detalhes sobre o uso dessas tcnicas ser visto na Seo 3.2.2.

Captulo 3 Materiais e Mtodos


Como foi dito anteriormente, uma srie de dados obtida de estaes micrometeorolgicas pode conter vrios tipos de erros. Estes erros podem ser ocasionados por problemas nos instrumentos presentes nas estaes, condies ambientais ou at mesmo falha humana. Essa situao pode comprometer anlise de fenmenos que se baseiam nesses dados, sendo necessrio corrigir, de alguma forma, esses erros. Este trabalho tem o intuito de utilizar uma metodologia computacional com o objetivo de substituir dados invlidos por valores estimados utilizando tcnicas de inteligncia articial. De forma geral, a metodologia proposta consiste em obter dados coletados de estaes micrometeorolgicas; denir e aplicar o algoritmo gentico para congurar uma rede neural, selecionando os principais atributos que sero utilizados no clculo do preenchimento de falhas; treinar a RNA; executar a RNA para estimar o valor que substituir o dado invlido; e analisar os resultados encontrados.

3.1

A base de dados

Os dados utilizados neste trabalho foram coletados na Estao Agroclimatolgica Padre Ricardo Remetter, localizada em uma fazenda experimental (latitude: -15,78 ; longitude: -56,07 ; altitude: 140 metros) da Universidade Federal de Mato Grosso (UFMT). A fazenda est situada no municpio de Santo Antnio de Leverger na Baixada Cuiabana, Mato Grosso, Brasil, distante aproximadamente 28 quilmetros da capital Cuiab. Esta estao fornece dados sobre temperatura do ar, umidade relativa, precipitao, velocidade do vento, radiao global, dentre outras variveis climticas. Os dados que esta estao gerou foram utilizados em diversos trabalhos de pesquisas do Programa de Ps-Graduao em Fsica Ambiental da UFMT (NOVAIS, 2011; SEIXAS, 2009; NETO, 2007; FONSECA, 2008). 23

3.1. A base de dados

24

O perodo que os dados foram coletados corresponde 1 de janeiro 31 de dezembro de 2006, totalizando 365 dias. Para cada dia foi realizada a leitura dos equipamentos da estao agroclimatolgica, armazenando ao todo 40 medidas representando vrias variveis climticas. Na Tabela 1 so descritos os atributos que foram selecionados para anlise, num primeiro momento. Na tabela so mostrados o nome do atributo, a sua descrio e o intervalo dos valores armazenados para cada atributo, normalmente um nmero inteiro ou decimal. No entanto, nem todos os atributos so necessrios para serem utilizados na execuo da metodologia proposta. Houve uma necessidade de realizar um prprocessamento nesses dados antes de execut-la, como apresentado na Seo 3.2.1. Tabela 1: Descrio dos atributos na base de dados
Atributo Dia P12 P18 P24 P Tem12 Tem18 Tem24 Tbu12 Tbu18 Tbu24 TX TN T Tbu UR12 UR18 UR24 UR Prec Evapo INSOL V12 V18 V24 V Qn N Descrio Dia juliano Presso atmosfrica do ar na altura 12 Presso atmosfrica do ar na altura 18 Presso atmosfrica do ar na altura 24 Presso atmosfrica do ar mdia Temperatura com bulbo seco na altura 12 Temperatura com bulbo seco na altura 18 Temperatura com bulbo seco na altura 24 Temperatura com bulbo mido na altura 12 Temperatura com bulbo mido na altura 18 Temperatura com bulbo mido na altura 24 Temperatura do ar mxima Temperatura do ar mnima Temperatura com bulbo seco mdia Temperatura com bulbo mido mdia Umidade relativa do ar na altura 12 Umidade relativa do ar na altura 18 Umidade relativa do ar na altura 24 Umidade relativa do ar mdia Precipitao Evaporao Insolao Velocidade do vento na altura 12 Velocidade do vento na altura 18 Velocidade do vento na altura 24 Velocidade do vento mdia Saldo de radiao Fotoperodo Intervalo dos Valores 1 - 365 9371 - 10072 9872 - 10028 9885 - 10039 974,73 - 1004,27 14,2 - 31,8 19,9 - 38,6 17,2 - 32,2 11,0 - 26,7 13,7 - 27,8 13,4 - 27,4 20,8 - 38,8 11,1 - 26,1 17,24 - 30,88 13,02 - 27,0 36 - 100 15 - 99 37 - 100 35,75 - 99 0 - 75,5 2 - 147 0,1 - 118 4-9 4-9 2-7 4-8 2,09 - 14,18 10,95 - 12,83

Os instrumentos instalados na rea de estudo deste trabalho so (CARRILHO, 2011): Saldo radimetro NR LITE (Kipp e Zonen Delft, Inc., The Netherlands)

3.2. Metodologia proposta

25

Piranmetros LI-200X-L (Campbell Scientic, Inc., USA) Sensores quantum LI50 190SB-L (Campbell Scientic, Inc., USA) Termohigrmetros HMP 45AC (Vaisala, Inc., Helsinki, Finland) Anemmetros de conchas 03101-L Wind Sentry Anemometer (RM Young, Inc., USA) Anemmetro de concha e medidor da direo do vento 03002-L Wind Sentry Set (RM Young, inc., USA) Placa de uxo de calor HFP01 (Rukseux, Inc., The Netherlands) Reectmetro CS616 Soil Misture Sensor (Campbell Scientic, Inc., USA) Radimetro Infravermelho de Preciso SI-111 (Precision Infrared Radiometer Campbell Scientic, Inc., USA) Pluvimetro de bscula TR-525M Rainfall Sensor (Texas Eletronics, Inc., USA) Dataloggers CR 1000 (Campbell Scientic, Inc., USA) Placa multiplexadora AM16/32a -ST-SW (Campbell Scientic, Inc., USA)

3.2

Metodologia proposta

Neste trabalho, a metodologia proposta para preenchimento de falhas em dados micrometeorolgicos leva em considerao os valores mensurados por outros sensores no mesmo momento que ocorreu a falha. Ou seja, para preencher a falha de um sensor que mede o saldo de radiao, por exemplo, sero considerados os valores mensurados da temperatura, insolao e velocidade do vento, naquele mesmo instante. Para tanto, a partir dos dados coletados pela estao micrometeorolgica, sero identicadas quais variveis climticas esto relacionadas com o sensor que falhou em sua leitura e, posteriormente, ser calculado o valor ausente, com base nessas variveis climticas. Na Figura 8 so mostradas as etapas da metodologia proposta.

Figura 8: Etapas da metodologia proposta para preenchimento de falhas

3.2. Metodologia proposta

26

Inicialmente, os dados devem ser pr-processados para que seja possvel distinguir entre o sensor que deve ser restaurado com os sensores que ajudaro nesse processo. O segundo passo consiste em determinar os valores dos parmetros de treinamento que sero utilizados na RNA, utilizando AG, e vericar quais sensores esto relacionados com o sensor que sofreu a falha. Aps a especicao dos parmetros da rede, a terceira fase realiza o treinamento da RNA, que tem o objetivo de preencher as falhas do sensor escolhido. Com a RNA treinada, ser possvel utiliz-la para estimar os valores dos dados com falhas, para que possam ser preenchidos. Para ilustrar esse procedimento, o funcionamento da metodologia proposta pode ser visto de forma mais detalhada na Figura 9. Nela so mostrados os principais passos utilizados no preenchimento de falhas de dados micrometeorolgicos. Primeiramente alguns dados sem falhas so utilizados pelo AG com o intuito de fazer com que o sistema entenda os padres dos dados. Assim, o AG ir determinar a melhor congurao para a RNA que preencher as falhas. Durante o processamento do AG, sero criadas vrias RNAs de acordo com as conguraes armazenadas nos indivduos gerados pelo prprio AG. Cada RNA ser avaliada utilizando os dados inseridos no AG para vericar se tal congurao boa para o preenchimento de falhas. Isso feito comparando o resultado estimado pela RNA com o valor real medido pelos sensores, por isso a importncia de iniciar o AG com uma srie de dados sem falhas. No nal da execuo do AG um indivduo ser selecionado como o mais apto da populao, isso signica que o seu contedo representa a melhor congurao da RNA para o preenchimento de falhas destes dados. A RNA criada de acordo com as conguraes do indivduo mais apto, ser utilizada para o preenchimento de falhas da srie de dados. Depois, possvel execut-la tendo como entrada os dados que possuem falhas em seus registros. No nal da execuo da RNA todos os dados invlidos sero substitudos por valores estimados pela RNA, preenchendo todas as falhas. Nas sees a seguir, sero apresentados detalhes de cada fase dessa metodologia, a preparao dos dados, determinao da congurao da RNA, treinamento da RNA e, nalmente, o preenchimento de falhas.

3.2.1

Preparao dos dados

A etapa de preparao dos dados responsvel por pr-processar a base de dados de maneira que se possa trabalh-los de maneira adequada. necessrio escolher quais atributos da base sero utilizados, j que o processamento demanda muito esforo,

3.2. Metodologia proposta

27

Figura 9: Diagrama da sequncia de passos necessrios para realizar o preenchimento de falhas

3.2. Metodologia proposta

28

e deixar dados irrelevantes na base poderia aumentar o tempo de processamento. A escolha dos atributos geralmente realizada por um especialista capaz de identicar quais variveis climticas esto relacionadas. Um ponto importante nesta etapa vericar se todos os valores das sries de dados esto no formato numrico. Tanto o AG quanto a RNA trabalham melhor com dados numricos, ento se houver algum atributo na srie de dados que apresente valores no formato alfabtico, estes devem ser codicados em nmeros antes de inser-los na arquitetura e decodicados depois dos resultados nais, retornando ao seu formato original. Na Tabela 2 apresentada uma amostra de como cou a base de dados aps esse pr-processamento. Assim, o conjunto de dados utilizado nesse trabalho contm dados que representam um ano com 365 dias (exemplos) e os seguintes atributos: as presso atmosfrica (P), temperatura mdia (T), umidade relativa do ar (UR), insolao (INSOL), velocidade mdia do vento (V), fotoperodo (N) e saldo de radiao (Qn). No total permaneceram sete atributos. Tabela 2: Amostra de dados obtidos pelos equipamentos micrometeorolgicos
P 991,9 992,3 992,0 992,2 993,0 992,5 994,3 T 27,7 26,9 26,5 26,1 24,7 25,8 26,0 UR 79,8 84,8 86,5 89,0 98,3 87,0 86,0 INSOL 85 63 51 26 7 33 40 V 8 7,66 7,33 6,66 5,66 6,66 7 N 11,99 11,98 11,96 11,95 11,93 11,92 11,90 Qn 10,42 9,16 8,35 6,88 5,81 7,29 7,58

O prximo passo dividir a base de dados em um conjunto de treinamento e um conjunto de teste. O conjunto de treinamento serve para o AG e a RNA aprenderem os padres das sries de dados e, com isso, encontrar um modelo que possa preencher as falhas quando necessrio. J o conjunto de teste servir para vericar se a RNA aprendeu corretamente os padres das sries de dados, validando sua congurao. Para anlise dos resultados foram realizadas vrias simulaes diferentes, mais especicamente cinco maneiras diferentes. O objetivo foi vericar o desempenho da metodologia proposta quando houvesse poucos dados que apresentassem falhas e, de forma crescente, quando houvesse vrias falhas na srie de dados. Na primeira simulao apenas 5% dos dados foram aleatoriamente selecionados como dados invlidos. Isso quer dizer que esses 5% foram utilizados na fase de testes, no qual o sistema no tinha conhecimento sobre qual o valor correto para o respectivo sensor. Os outros 95% serviram para a fase de treinamento, ou seja, dados que so usados para aprender os padres presentes nas sries de dados. A mesma abordagem

3.2. Metodologia proposta

29

foi utilizada nas demais simulaes, para 10%, 20%, 30% e, por m, 40% representados como dados invlidos. Na Tabela 3 so apresentadas as informaes das cinco simulaes. Tabela 3: Nmero de exemplos sinalizados como invlidos para a fase de testes e nmero de exemplos reservados para a fase de treinamento em cada simulao realizada
Simulao 1 2 3 4 5 % Falhas 5 10 20 30 40 Quantidade de exemplos com Falhas para Treinamento 18 347 36 329 73 292 109 256 146 219

3.2.2

Determinando a congurao da RNA com AG

Nesta etapa determinada a congurao da RNA responsvel pelo preenchimento de valores em dados com falhas. O algoritmo gentico ser utilizado para determinar quais sensores sero utilizados para preencher as falhas (seleo de atributos) e determinar os parmetros para o treinamento da RNA. possvel que na entrada de dados existam diversos tipos de sensores diferentes, cada um com milhares de medidas de uma varivel climtica. interessante que o AG selecione previamente quais sensores esto relacionados com o sensor que ocasionou o erro a m de evitar duas situaes: Dados de um sensor, que no tenha relao direta com o sensor a ser ajustado, gere falsos padres entre os dados, causando um baixo desempenho no preenchimento dos valores com falha. Aumento do volume de dados no processamento da RNA e, assim, aumento do tempo de processamento da mesma. Com relao aos parmetros da RNA, o AG ir testar vrios valores diferentes com a inteno de obter a melhor combinao dos parmetros de acordo com os dados utilizados no treinamento. Neste trabalho, o AG determinar os seguintes parmetros da RNA: Funo de ativao da camada oculta e da camada de sada: funo responsvel por fornecer o valor de sada de um neurnio para a prxima camada. Algoritmo de treinamento: procedimento que escolhe o algoritmo que determina como a rede neural deve ser treinada.

3.2. Metodologia proposta

30

Taxa de aprendizagem: parmetro que determina a velocidade do aprendizado da rede neural, sendo que um valor muito alto pode causar oscilaes durante o treinamento e dicultar a aprendizagem da RNA. Taxa de momentum: parmetro que tambm est relacionado com a velocidade do aprendizado, que considera as mudanas nas interaes anteriores da busca para diminuir a instabilidade no treinamento. Um ponto importante em um algoritmo gentico a forma que os indivduos de sua populao so estruturados. Como visto na Seo 2.4.1, os indivduos armazenam em sua estrutura parmetros que representam uma possvel soluo para o problema. O nmero de bits inuencia no nmero de combinaes possveis que o AG pode gerar. Quanto maior o nmero de combinaes, maior so as chances de ter um indivduo com a soluo ideal para o problema a ser solucionado. Entretanto, o nmero de combinaes possveis proporcional ao tempo de processamento para achar uma boa soluo. Por isso necessrio haver um balanceamento do nmero de bits que cada parmetro ter armazenado nos indivduos. Neste trabalho, os indivduos do AG foram codicados por 18 bits, ilustrados na Figura 10, na qual representam:

Figura 10: Representao do indivduo no AG

(a) e (b): Funo de ativao da camada oculta (a) e funo de ativao da camada de sada (b). Neste caso, dois bits foram reservados para cada camada, possibilitando que quatro tipos de funo de ativao possam ser escolhidas para cada uma. As quatro funes de ativao selecionadas foram escolhidas por serem utilizadas com frequncia na literatura. As funes de ativao utilizadas so (MATHWORKS, 2011): Linear transfer function (bits 10) purelin(n) = n (1)

3.2. Metodologia proposta

31

Log sigmoid transfer function (bits 01) logsig(n) = 1 1 + en (2)

Hyperbolic tangent sigmoid transfer function (bits 00) tansig(n) = 2 1 (1 + e2n ) (3)

Saturating linear transfer function (bits 11) 0, se n 0 satlin(n) = n, se 0 n 1 1, se 1 n (c): Algoritmo de treinamento. Tambm foram reservados dois bits para representar o algoritmo de treinamento, podendo ento ser selecionados quatro algoritmos de treinamento. As quatro opes de algoritmo de trinamento utilizados neste trabalho foram selecionados por j se saber que tais algoritmos so ecazes com estes tipos de dados. Os algoritmos de treinamento utilizados so (MATHWORKS, 2011): Gradient descent backpropagation (bits 10): atualiza os valores dos pesos e do limiar baseado na direo negativa do gradiente. Uma limitao que o resultado pode convergir para um ponto de mnimo local. Levenberg-Marquardt backpropagation (bits 01): atualiza os valores dos pesos e do limiar de acordo com o algoritmo de Levenberg-Marquardt (LM). Segundo (LOURAKIS, 2005), o algoritmo de LM pode ser pensado como uma combinao mais acentuada do mtodo de Gauss-Newton. A vantagem desse algoritmo de treinamento que ele muito rpido, apesar de consumir muita memria. Resilient backpropagation (bits 00): atualiza os valores dos pesos e do limiar com base no algoritmo do prprio nome. Segundo Chen e Su (2010), um algoritmo de primeira ordem e seu tempo e escalas de requisito de memria mudam linearmente com o nmero de parmetros, o que bom se estiver trabalhando com muitos parmetros. Gradient descent with momentum and adaptive learning rate backpropagation (bits 11): alm de levar em considerao o gradiente para atualizar os valores dos pesos e do limiar, considera tambm a taxa de momentum.

(4)

3.2. Metodologia proposta

32

(d) e (e): Taxa de aprendizado (d) e taxa de momentum (e). Para essas taxas foram reservados trs bits, possibilitando que os seus valores variem de 0,1 a 0,8. (f) - (k): Sensores. Para cada sensor foi reservado um bit indicando se o mesmo deve ou no ser utilizado no preenchimento de falhas. Por exemplo, se o sensor de temperatura estiver sendo sinalizado pelo bit (h), e este bit estiver com o valor 1, signica que o sensor de temperatura deve ser utilizado. Se estiver sinalizado como 0, signica que este sensor deve ser ignorado. Um detalhe importante que quando o EnvRP for implementado utilizando esta metodologia, ser possvel fazer com que tanto as funes de ativaes quanto os algoritmos de treinamento sejam parametrizados. Ou seja, haver a possibilidade de que a cada execuo do sistema possam ser testados tipos diferentes de funes de ativao ou algoritmos de treinamento, havendo uma maior liberdade para a sua escolha. Outros parmetros tambm podero ser modicados a cada execuo, como, por exemplo, o nmero de ciclos mximo do AG ou de iteraes da RNA, que atualmente esto xos em 100 e 400, respectivamente. Outra questo importante de um algoritmo gentico a sua funo objetivo. Nesse caso essa funo calculada da seguinte forma. Primeiramente uma RNA criada utilizando os parmetros denidos no indivduo a ser avaliado. Posteriormente a RNA treinada e seu desempenho avaliado. Quanto melhor o desempenho da RNA, mais apto o indivduo avaliado. Quando a populao de indivduos atinge um erro aceitvel, o AG deixa de ser executado e o resultado apresentado mostrando as melhores combinaes de sensores e parmetros da rede neural, que poder preencher as falhas encontradas.

3.2.3

Treinamento da RNA

A RNA treinada de acordo com a congurao obtida pelo AG. Logo, ser o AG que especica qual funo de ativao da camada oculta, funo de ativao da camada de sada, algoritmo de treinamento, taxa de aprendizagem e taxa de momentum que sero atribudas arquitetura da RNA. No caso do nmero de neurnios da RNA, foi utilizado o teorema de KolmogorovNielsen, citado na Seo 2.3.1. O n representa o nmero de neurnios na camada de entrada. Assim, a RNA utilizada nas simulaes deste trabalho tem no mximo n = 6 (nmero de sensores), e contm no mximo 2n + 1 = 13 neurnios na camada oculta.

3.2. Metodologia proposta

33

Esse valor pode ser menor, j que o nmero de entradas pode ser reduzido caso seja detectado que no h necessidade do uso de algum sensor. A RNA ento tem todos os parmetros congurados e, assim, possvel execut-la iniciando o treinamento. A RNA ter como entrada o conjunto de dados separados para o treinamento e, depois de vrios ciclos de processamento, o resultado da RNA identicar o quo apta est a estrutura para resolver o problema proposto de preenchimento de falha. Com a rede treinada, ela est pronta para que o preenchimento de dados com falhas seja iniciado.

3.2.4

Preenchimento dos valores ausentes

O processo nesta fase consiste em informar RNA quais os valores dos outros sensores no mesmo momento que ocorreu a falha em questo, como mostrada na Figura 11.

Figura 11: Ilustrao do preenchimento de um valor ausente utilizando a RNA treinada No exemplo da Figura 11, a medida do sensor de temperatura no foi armazenada com sucesso, causando uma falha. Para resolver isso, todas as outras medidas, dos outros sensores, no mesmo momento que houve a falha foram enviadas para a RNA treinada. Esta, por sua vez, com base nos valores informados, consegue estimar o valor da temperatura que deveria ser armazenado e, assim, preenchendo o valor ausente. Esse procedimento foi utilizado para preencher uma nica falha. Mas a partir do momento que a RNA est treinada, ela pode ser executada em quantas falhas forem necessrias, desde que a falha seja da mesma srie de dados. Caso a falha seja de outra srie de dados, a RNA deve ser novamente treinada para que aprenda os padres dessa nova srie de dados. Vale ressaltar que, para preencher uma falha no so utilizadas medidas dos outros sensores em um momento diferente de quando ocorreu a falha, porque so utilizados apenas valores do mesmo momento que ocorreu a falha. Isso signica que mesmo se

3.3. Ambiente de programao

34

houver uma sequncia de falhas consecutivas, como por exemplo 5 dias seguidos de falhas, a metodologia proposta neste trabalho conseguiria tratar esse problema. Esse um ponto que se diferencia de outras metodologias, que normalmente utilizam dados prximos falha para substituir o valor invlido, impossibilitando que tenha uma boa preciso em falhas sequenciais.

3.3

Ambiente de programao

A implementao tanto do algoritmo gentico quanto da rede neural articial foi desenvolvida utilizando o ambiente de programao do software Matlab (MATLAB, 2011), utilizando a verso R2010a. Na Figura 12 mostrada a sua interface.

Figura 12: Ambiente de programao do Matlab O Matlab um ambiente que contm uma linguagem de alto desempenho, principalmente para as operaes matemticas que precisam de um processamento maior. Ele foi planejado para obter resultados rpidos para as operaes mais complexas, que o caso dos procedimentos realizados com os algoritmos genticos e as redes neurais articiais. Tanto o algoritmo gentico quanto a rede neural articial foram programados nesse ambiente, sendo que a RNA utilizou um componente chamado Neural Network Toolbox. A Neural Network Toolbox prov ferramentas para projeto, implementao, visualizao e simulao de uma rede neural (BEALE; HAGAN; DEMUTH, 2011).

3.4. Avaliao de desempenho

35

Agregando os fundamentos de algoritmo gentico e redes neurais pesquisados, no ambiente de programao Matlab, foi possvel desenvolver a metodologia proposta para o preenchimento de falhas em dados micrometeorolgicos. No Apndice A pode ser visto o cdigo fonte da implementao do algoritmo gentico, assim como suas funes auxiliares para codicar e decodicar um indivduo. No Apndice B mostrado o cdigo fonte da rede neural articial.

3.4

Avaliao de desempenho

A validao estatstica da estimativa do modelo foi baseada nos erros individuais (ei ) de cada estimativa, mostrado na Eq. (5), onde Pi (i = 1, 2, ..., n) so os valores estimados e Oi (i = 1, 2, ..., n) so os valores reais (WILLMOTT; MATSUURA, 2005). ei = Pi Oi (5)

Com o erro individual de cada estimativa, calculado o desempenho do modelo usando do Mean Absolute Error (MAE), mostrado na Eq. (6), no qual a diferena da mdia pode ser alternativamente descrita pela raiz quadrada mdia do erro (WILLMOTT, 1982). Segundo Willmott, Matsuura e Robeson (2009), essa a melhor forma de avaliao para modelos ambientais, devido principalmente a presena de outliers, ou seja, dados discordantes comparados ao restante da srie de dados (PIRES A. M., 1999), e dados com desvio de normalidade. MAE = n1 |e1 |2
i=1 i=n

(6)

Alm da avaliao pelo erro mdio absoluto, foi obtido o desvio padro de cada simulao para assegurar se o preenchimento de falhas teve uma boa preciso. Segundo Assumpo et al. (2010), o desvio padro a maneira mais comum de medir a variao em um conjunto de amostras, quanto menor o desvio padro, menor o erro entre elas. Em Santos et al. (2007) mostrado como deve ser feito o clculo do desvio padro (), representado na Eq. (7). n i=1 (Ki K ) n1
2

(7)

o valor esperado dado pela Eq. (8). Onde Ki os valores estimados e K = Ki K i=1 n
n

(8)

Captulo 4 Resultados e Discusso


Para analisar o desempenho da metodologia proposta foram realizadas diversas simulaes de preenchimento de falhas sobre os dados apresentados na Seo 3.1, para os valores de cada sensor . Como citado na metodologia, primeiramente houve uma preparao dos dados, resultando em uma base semelhante mostrada na Tabela 2, depois houve o processamento do AG e, posteriormente, o processamento da RNA para preencher as falhas na srie dos dados. Nas sees a seguir so detalhados os resultados do AG, da RNA e da anlise estatstica para as simulaes realizadas dos sensores de temperatura, saldo de radiao, fotoperodo, umidade e insolao.

4.1

Resultados obtidos

Para cada simulao usando os sensores, so mostrados os melhores resultados encontrados pelo AG, no qual: f1 : funo de ativao utilizada para a camada oculta. f2 : funo de ativao utilizada para a camada de sada. train: algoritmo de treinamento. lr: taxa de aprendizado. mc: taxa de momentum. s: simboliza o uso dos sensores. As funes de ativaes disponveis foram a Saturating linear transfer function (satlin), Linear transfer function (purelin), Hyperbolic tangent sigmoid transfer function (tansig) e Log sigmoid transfer function (logsig). Os algoritmos de treinamento 36

4.1. Resultados obtidos

37

possveis foram o Resilient backpropagation (trainrp), Gradient descent backpropagation (traingd), Levenberg-Marquardt backpropagation (trainlm) e Gradient descent with momentum and adaptive learning rate backpropagation (traingdx). O s simboliza os sensores, no qual st , ss , s f , su , si , sv e s p representam, respectivamente: temperatura, saldo de radiao, fotoperodo, umidade relativa do ar, insolao, velocidade mdia do vento e presso atmosfrica, e informam se o sensor foi utilizado na entrada da RNA. Nos preenchimento de falhas realizados, houve um tempo de processamento que durou entre uma a quatro horas para cada simulao.

4.1.1

Resultado do preenchimento de falhas para temperatura

Na Tabela 4 mostrado o resultado do AG para as simulaes de temperatura. Tabela 4: Resultados encontrados pelo AG nos testes realizados da temperatura (T)
% Falhas 5 10 20 30 40 f1 tansig satlin tansig logsig tansig f2 tansig tansig tansig purelin purelin train trainrp traingd trainrp trainrp trainrp lr 0,5 0,2 0,2 0,1 0,1 mc 0,1 0,4 0,7 0,2 0,1 sp s su s s s s s si s s s s sv s s sf s s s s s ss s s s s s

Por exemplo, na simulao com 5% de dados com falhas, a arquitetura da RNA denida com as funes de ativao Hyperbolic tangent sigmoid transfer function (tansig) na camada oculta e na camada de sada, o algoritmo de treinamento Resilient backpropagation (trainrp), uma taxa de aprendizado 0,5, uma taxa de momentum 0,1 e tendo como entrada as medies de umidade relativa do ar (su ), insolao (si ), fotoperodo (s f ) e saldo de radiao (ss ). interessante observar que com 10% de falhas, foi utilizado como entrada os valores de todos os sensores e com 30% foram necessrios apenas trs sensores: umidade, fotoperodo e saldo de radiao. O sensor de presso atmosfrica foi utilizado apenas na simulao de 10% de falhas. Os coecientes de correlao entre os valores medidos e os valores estimados pela RNA para os dados de temperatura so apresentados na Figura 13. Os valores mostram que h forte correlao entre os valores medidos e estimados. Como era previsto, a maior correlao encontrada foi para o teste com 5% de falhas e o pior para o teste com 40% de falhas, j que no primeiro caso h um maior nmero de exemplos para o treinamento, enquanto no ltimo caso h um menor nmero de exemplos para treinamento e um grande nmero de exemplos para o preenchimento de falhas.

4.1. Resultados obtidos

38

Figura 13: Valores dos coecientes de correlao para temperatura

Figura 14: Valores comparativos entre os valores esperados e os valores obtidos pela RNA nos dados de temperatura

4.1. Resultados obtidos

39

A simulao com 5% teve correlao de 0,97, j a simulao com 10% teve um resultado de aproximadamente 0,95. As simulao de 20% e 30% tiveram um resultado semelhante em 0,93. E de 40%, com a menor correlao, 0,92, porm, relativamente prximos aos anteriores. O grco mostrado na Figura 14 faz um comparativo entre o valor medido pelo equipamento de temperatura (sem falhas) com os valores obtidos usando a metodologia proposta neste trabalho. Pelo grco pode ser observado que com apenas 5% de falhas na srie de dados, o comportamento obtido pela metodologia aplicada muito eciente. Com o aumento da quantidade de falhas na srie de dados essa ecincia diminui. importante observar que mesmo com 40% dos dados faltantes, a metodologia teve um desempenho satisfatrio no preenchimento das falhas.

4.1.2

Resultado do preenchimento de falhas para saldo de radiao

Para os testes com os dados de saldo de radiao, so mostrados os melhores resultados encontrados pelo AG para cada teste realizado, na Tabela 5. Tabela 5: Resultados encontrados pelo AG nos testes realizados do saldo de radiao (Qn)
% Falhas 5 10 20 30 40 f1 tansig tansig satlin satlin satlin f2 tansig purelin purelin purelin purelin train traingd trainrp trainlm trainrp trainlm lr 0,3 0,8 0,1 0,6 0,1 mc 0,8 0,5 0,1 0,2 0,1 sp st s s s s s su si s s s s s sv sf s s s s s

s s s

s s s

Pode ser observado que o sensor de velocidade do vento (sv ) no foi utilizado em nenhuma simulao de preenchimento de falhas no saldo de radiao. Isso pode acontecer porque, provavelmente, no foi encontrado relaes entre esses sensores. Logo, signica que tais sensores no so necessrios para preencher as falhas. Para esses testes de preenchimento de falhas, os coecientes de correlao entre os valores medidos e os valores estimados pela RNA so apresentados na Figura 15. Para este sensor o resultado foi melhor que o anterior no preenchimento de falhas. Pode ser observado que em todas as simulaes houve uma correlao maior que 0,99. No grco mostrado na Figura 16 h uma comparao do valor mensurado pelo equipamento em campo relativo ao saldo de radiao com os valores estimados.

4.1. Resultados obtidos

40

Figura 15: Valores dos coecientes de correlao para saldo de radiao

Figura 16: Valores comparativos entre os valores esperados e os valores obtidos pela RNA nos dados de saldo de radiao

4.1. Resultados obtidos

41

4.1.3

Resultado do preenchimento de falhas para fotoperodo

Na Tabela 6 so mostrados os melhores resultados encontrados pelo AG para cada teste realizado com os dados do fotoperodo. Tabela 6: Resultados encontrados pelo AG nos testes realizados do fotoperodo (N)
% Falhas 5 10 20 30 40 f1 tansig satlin satlin tansig satlin f2 tansig tansig purelin purelin purelin train trainrp trainlm trainrp trainrp trainrp lr 0,5 0,3 0,6 0,4 0,6 mc 0,1 0,2 0,2 0,5 0,2 sp st s su s s s s si s s s s sv ss s s

s s

No resultado deste AG, em duas simulaes foram utilizados apenas dois sensores para a entrada da RNA. Na simulao de 10% foram selecionados os sensores de insolao (si ) e saldo de radiao (ss ), e na de 20% os sensores de umidade (su ) e insolao (si ). No caso do preenchimento de falhas para o fotoperodo, so apresentados na Figura 17 os coecientes de correlao entre os valores medidos e os valores estimados.

Figura 17: Valores dos coecientes de correlao para fotoperodo Nas correlaes do fotoperodo possvel notar que houve uma regularidade na eccia do preenchimento de falhas, sendo que os valores dos coecientes de correlao cou entre 0,971 e 0,984.

4.1. Resultados obtidos

42

Na Figura 18 mostrada a comparao entre os valores mensurados e os valores estimados.

Figura 18: Valores comparativos entre os valores esperados e os valores obtidos pela RNA nos dados de fotoperodo

4.1.4

Resultado do preenchimento de falhas para umidade

Na Tabela 7 so mostrados os melhores resultados encontrados pelo AG para cada teste realizado com os dados de umidade. Tabela 7: Resultados encontrados pelo AG nos testes realizados da umidade (UR)
% Falhas 5 10 20 30 40 f1 satlin satlin tansig satlin satlin f2 purelin purelin tansig tansig purelin train trainrp trainrp trainrp traingdx trainrp lr 0,1 0,3 0,7 0,4 0,1 mc 0,1 0,1 0,4 0,6 0,1 sp st s s s s si s s s s s sv s s s s s sf s s s s s ss s s s s s

O sensor de presso atmosfrica (s p ) no foi utilizado em nenhuma simulao. Em compensao, praticamente todos os outros sensores foram utilizados em todas as simulaes, com exceo do sensor de temperatura (st ) que no foi utilizado na simulao de 5% de falhas.

4.1. Resultados obtidos

43

Figura 19: Valores dos coecientes de correlao para umidade

Figura 20: Valores comparativos entre os valores esperados e os valores obtidos pela RNA nos dados de umidade

4.1. Resultados obtidos

44

Na Figura 19 mostrado que no sensor de umidade tambm houve um bom desempenho no preenchimento das falhas. O menor coeciente de correlao dos dados de umidade foi de 0,91, e por incrvel que parece na simulao com menos falhas (5%). Os valores dos coecientes de correlao variaram de 0,912 a 0,956 possvel observar na Figura 20 a comparao entre os valores mensurados e os valores estimados dos dados de umidade.

4.1.5

Resultado do preenchimento de falhas para insolao

Por m, na Tabela 8 so mostrados os resultados do AG com relao aos dados de insolao. Tabela 8: Resultados encontrados pelo AG nos testes realizados da insolao (INSOL)
% Falhas 5 10 20 30 40 f1 logsig satlin tansig satlin satlin f2 tansig tansig tansig purelin purelin train trainrp trainrp trainrp trainrp traingd lr 0,5 0,6 0,7 0,3 0,2 mc 0,7 0,5 0,4 0,7 0,6 sp s s s s st s su s s s s sv s s s s sf s s s s s ss s s s s s

O sensor de presso atmosfrica (s p ) mais uma vez foi pouco utilizado (apenas na simulao de 10% de falhas). importante ressaltar que a no seleo de um sensor no signica que a varivel climtica representada por este sensor no est relacionada com os dados do sensor que est sendo preenchido, signica que, neste caso, para os dados utilizados, a metodologia no precisou de seus valores para estimar o valor ausente. Da mesma forma que nos outros sensores, na simulao do sensor de insolao houve bons resultados como pode ser visto na Figura 21. Assim como nos dados referentes temperatura, houve uma maior correlao no teste com 5% de falhas, diminuindo a eccia com o aumento das falhas. A comparao entre os valores mensurados e os valores estimados dos dados de insolao podem ser vistos na Figura 22. Pode ser observado que em sries de dados com poucas falhas (5%) ou em sries de dados com muitas falhas (40%) a metodologia utilizada conseguiu atingir os objetivos propostos. Considerando todas as simulaes apresentadas, os valores de coeciente de correlao variaram de 0,912 a 0,995.

4.1. Resultados obtidos

45

Figura 21: Valores dos coecientes de correlao para insolao

Figura 22: Valores comparativos entre os valores esperados e os valores obtidos pela RNA nos dados de insolao

4.2. Anlise estatstica dos resultados

46

4.2

Anlise estatstica dos resultados

Como mencionado na Seo 3.4, foi feito o clculo do Erro Mdio Absoluto (Mean Absolute Error) para as estimativas realizadas. Na Tabela 9 mostrado o valor do MAE para cada simulao. Tabela 9: Erro mdio absoluto para cada simulao realizada
Falhas 5% 10% 20% 30% 40% Temperatura 0,57 0,68 0,77 0,68 0,77 Saldo de radiao 0,39 0,34 0,30 0,33 0,33 MAE Fotoperodo 0,57 0,11 0,11 0,09 0,11 Umidade 3,33 2,94 2,92 3,88 4,12 Insolao 5,05 5,26 6,20 8,00 8,25

Os valores do MAE indicam resultados satisfatrios para os testes realizados. importante lembrar que o valor do MAE est relacionado unidade da varivel envolvida. No caso da temperatura, podemos dizer que o erro da estimativa est em 0,57 C para mais ou para menos no momento de preencher as falhas na simulao de 5%, o que um valor baixo considerando que o intervalo de valores da temperatura nestes dados de 17,24 a 30,88 C. A mesma ideia pode ser aplicada para as outras simulaes. Outro ponto que deve ser observado que nas simulaes de 40% h pouca diferena no valor do MAE, o que signica que a metodologia proposta tem um bom desempenho inclusive com grandes quantidades de falhas. Na Figura 23 so mostrados os valores do erro mdio absoluto das simulaes realizadas de cada sensor. Tambm foi analisado o desvio padro dos dados para cada simulao, mostrado na Tabela 10. Tabela 10: Valores do desvio padro para cada simulao realizada
Falhas 5% 10% 20% 30% 40% Temperatura 1,90 2,01 2,10 2,19 2,13 Saldo de radiao 3,32 3,13 3,19 3,21 3,06 Fotoperodo 1,90 0,60 0,64 0,67 0,66 Umidade 9,94 9,09 12,58 11,87 11,85 Insolao 29,49 27,55 27,55 26,97 27,07

Nos testes realizados, a diferena entre o valor real (medido em campo) e o valor estimado raramente maior do que o desvio padro calculado para cada simulao, mostrando que a estimativa gerada pela metodologia est tendo um bom desempenho no preenchimento de falhas. Alm disso, com base nos resultados encontrados nos

4.2. Anlise estatstica dos resultados

47

Figura 23: Erro mdio absoluto de todas as simulaes realizadas coecientes de correlao e nos MAEs para as variveis climticas utilizadas, pode ser dito que a eccia da metodologia proposta foi validada. Os resultados tambm esto sendo validados por especialistas do domnio e trabalhos comparativos com outras tcnicas esto sendo analisadas.

Captulo 5 Consideraes Finais


A proposta deste trabalho consistiu em apresentar uma metodologia computacional usando tcnicas de inteligncia articial para preenchimento de valores com falhas em sries de dados de estaes micrometeorolgicas. Os valores utilizados no preenchimento das falhas so estimados, baseando-se nos valores de outras sries de dados mensurados, por outros sensores obtidos no mesmo local e momento da falha detectada. A integrao de duas tcnicas computacionais possibilitou o desenvolvimento da metodologia capaz de realizar o preenchimento de falhas. Foram utilizadas as tcnicas de algoritmos genticos e redes neurais articiais. A tcnica de RNAs responsvel por aprender e estimar os valores para o preenchimento de falhas, a partir de uma denio e congurao prvia da RNA. Considerando que o AG uma tcnica utilizada em problemas de busca e otimizao, capaz de testar vrias conguraes diferentes em um tempo muito menor do que se fosse testado manualmente, o AG foi utilizado para encontrar a melhor congurao da RNA. Alm do AG determinar quais os parmetros da congurao da RNA, ele tambm avalia quais sensores disponveis so mais indicados para servir de entrada para o preenchimento de falhas. comum em sries de dados micrometeorolgicos haver vrios sensores diferentes, entretanto, se for utilizar todos os sensores disponveis a metodologia levar mais tempo para fazer o seu processamento. Alm do mais, pode acontecer que um sensor represente uma varivel climtica que tenha um comportamento totalmente diferente da varivel climtica que se est corrigindo, isso far com que a preciso da estimativa seja afetada. Assim, o AG responsvel tambm por selecionar apenas os sensores que podero ser teis para o preenchimento de falhas, reduzindo o tempo de processamento e aumentando a preciso da estimativa. Para testar a eccia da metodologia proposta, foram realizadas vrias simulaes de preenchimento de falhas. O resultado de cinco sensores foram apresentados, re48

49

presentando as variveis climticas de temperatura, saldo de radiao, fotoperodo, umidade e insolao. Para cada sensor foram realizados cinco testes diferentes, no qual a quantidade de valores com falhas dentro da srie de dados aumentava. O primeiro teste continha 5% dos dados com falhas, o segundo 10% de falhas, o terceiro com 20%, o quarto com 30% e o ltimo teste com 40% de falhas. Ao todo, foram feitas 25 simulaes de preenchimento de falhas, considerando os cinco sensores. Os resultados de cada teste foram avaliados usando o coeciente de correlao, o erro mdio absoluto e o desvio padro. No teste com a menor quantidade de falhas foi obtido uma correlao de 0,97 para a temperatura, 0,99 para o saldo de radiao, 0,97 para o fotoperodo, 0,91 para a umidade e 0,98 para a insolao. O erro mdio absoluto neste teste resultou em 0,57 C para a temperatura, 0,39 MJ/m2 para o saldo de radiao, 0,57 horas para o fotoperodo, 3,33% para a umidade e 5,05 Kgcal /cm2 para a insolao. E o desvio padro para os dados de temperatura variou de 1,9 a 2,19, para o saldo de radiao variou de 3,06 a 3,32, de 0,6 a 1,9 para o fotoperodo, de 9,09 a 12,58 para a umidade e para a insolao variou de 26,97 a 29,49. Em todos os casos os valores estimados raramente excederam esses limites. Os resultados mostram que a proposta apresentou bons resultados para corrigir sries de dados com pequeno nmero de erros, mas tambm foi eciente quando a srie de dados tinha uma grande parte de falhas. importante dizer que, diferente dos cinco sensores apresentados, outros dois sensores no tiveram resultados satisfatrios. Os sensores que representavam as variveis climticas de presso atmosfrica e velocidade do vento, obtiveram coecientes de correlao menores que 0,8. Para esses casos pode ser dito que os sensores disponveis para o preenchimento de falhas no eram sucientes para se fazer uma boa estimativa. Neste trabalho os testes foram realizados corrigindo as falhas das variveis climticas apresentadas. Uma vantagem que possvel aplicar essa metodologia para qualquer sensor da rea de micrometeorologia. O importante que a srie de dados a ser corrigida tenha medidas de outros sensores para que a RNA seja capaz de fazer as estimativas com base nessas outras medidas. Uma outra vantagem desta metodologia que ela pode ter uma boa preciso nos resultados mesmo que as falhas estejam em sequncia, ou seja, as falhas nas sries de dados ocorram durante horas, dias ou at mesmo meses. Essa vantagem devido ao fato de ela aproveitar medidas de outros sensores, e no do mesmo sensor em um momento prximo. Entretanto, necessrio haver dados vlidos em um outro momento na srie de dados. A quantidade mnima de dados vlidos presentes na srie de dados difcil de ser determinada. Porm, quanto mais exemplos vlidos, coerentemente, maiores so as chances da metodologia gerar um bom resultado.

50

A proposta deste trabalho foi alcanada, no qual analisando os resultados obtidos entende-se que possvel preencher valores ausentes de dados reais micrometeorolgicos. Como perspectivas futuras, est em desenvolvimento um sistema computacional maior que utilize a abordagem proposta neste trabalho, como um dos mdulos do sistema, no qual iria se ter uma automatizao e, consequentemente, uma facilidade maior de preencher as falhas em bases de dados micrometeorolgicos. A ideia que o usurio pudesse inserir os dados e indicar qual sensor deseja corrigir. O sistema faria todos os passos seguintes automaticamente. Nessa mesma linha espera-se nalizar todos os mdulos citados do EnvRP, tornando possvel a centralizao dos dados e facilitando a anlise dos mesmos. desejado tambm um aprofundamento no estudo do comportamento das variveis meteorolgicas para se criar uma nova abordagem em que o preenchimento de falhas possa ser mais ecaz, levando em considerao tambm outros fatores que no sejam apenas as medies de outros sensores no mesmo momento. Conhecendo melhor como as variveis climticas se relacionam, ser possvel desenvolver outras formas que possam identicar essas relaes e, assim, calcular com maior preciso, valores para preencher as falhas. Seria interessante, tambm, a utilizao de mtodos para detectar outliers ou valores absurdos para uma determinada varivel climtica na srie de dados. Dessa forma no somente os dados ausentes seriam preenchidos, mas todos os dados invlidos, inclusive aqueles no percebidos pelo usurio.

Referncias Bibliogrcas
AGARWAL, M. A systematic classication of neural-network-based control. IEEE Control Systems Magazine, v. 17, p. 7593, 1997. Citado na pgina 14. AHRENS, C. D. Essentials of Meteorology. [S.l.]: Brooks Cole, 2004. 496 p. Citado na pgina 10. ALAVI, N.; WARLAND, J. S.; BERG, A. A. Filling gaps in evapotranspiration measurements for water budget studies: Evaluation of a kalman ltering approach. Agricultural and Forest Meteorology, v. 141, n. 1, p. 5766, dez. 2006. Disponvel em: <http://www.sciencedirect.com/science/article/B6V8W-4M7K9JB-2/2/06ad4bba8ec003189de1bb82a9f9af20>. Citado na pgina 13. ASSUMPO, M. E.; CHRISTOFORO, A. L.; PANZERA, T. H.; BRITO, J. N.; LAMIM-FILHO, P. C. M. Emprego de algoritmos genticos na determinao das dimenses timas de uma torre treliada. In: XI Congresso Nacional de Engenharia Mecnica, Metalrgica e Industrial. Porto Alegre, RS: ABEMEC, 2011. p. 17. Citado na pgina 17. ASSUMPO, M. H. M. T.; FREITAS, K. H. G.; SOUZA, F. S.; FATIBELLOFILHO, O. Construo e adaptao de materiais alternativos em titulao cido-base. Ecltica Qumica, Universidade Estadual Paulista Jlio de Mesquita Filho, Brasil, v. 35, n. 4, p. 133138, 2010. ISSN 0100-4670. Citado na pgina 35. ATKINSON, B. Meso-scale atmospheric circulations. Academic Press, 1981. ISBN 9780120659609. Disponvel em: <http://books.google.com.au/books?id=gStRAAAAMAAJ>. Citado na pgina 10. BEALE, M. H.; HAGAN, M. T.; DEMUTH, H. B. Neural Network Toolbox Getting Started Guide. Natick, MA, USA: MathWorks, 2011. 408 p. Citado na pgina 34. BELGRANO, A.; MALMGREN, B. A.; LINDAHL, O. Application of articial neural networks (ann) to primary production time-series data. Journal of Plankton Rese-

51

REFERNCIAS BIBLIOGRFICAS

52

arch, v. 23, n. 6, p. 651658, 2001. Disponvel em: <http://plankt.oxfordjournals.org/content/23/6/651.abstract>. Citado na pgina 14. BUSK, D. Soluo Giltt Bidimensional em Geometria Cartesiana: Simulao da Disperso de Poluentes na Atmosfera. 236 p. Dissertao (Tese) UFRS, 2008. Citado na pgina 10. CAPISTRANO, V. B. Anlise de Sries Temporais de Variveis Microclimatolgicas Medidas em Sinop-MT Utilizando a Teoria da Complexidade. 62 p. Dissertao (Dissertao) UFMT, 2007. Citado na pgina 11. CARRILHO, S. B. P. Avaliao de Modelos para Estimativa da Radiao de Onda Longa Atmosfrica no Cerrado Mato-Grossense. 124 p. Dissertao (Dissertao) UFMT, 2011. Citado na pgina 24. CHEN, C. S.; SU, S. L. Resilient back-propagation neural network for approximation 2-d gdop. Proceedings of the International MultiConference of Enginneers and Computer Scientists, IMECS, v. 2, p. 900904, 2010. Citado na pgina 31. CORREIA, M. Algoritmos genticos. Revista Dosalgarves, Escola Superior de Gesto, Hotelaria e Turismo da Universidade do Algarve, v. 12, p. 3643, 2003. Citado na pgina 17. DESWAL, S.; PAL, M. Articial neural network based modeling of evaporation losses in reservoirs. International Journal of Mathematical Physical and Engineering Sciences, v. 39, n. 2, p. 177181, 2008. Citado na pgina 16. DIAS, C. A. A. Procedimentos de Medio e Aquisio de Dados de uma Torre Micrometeorolgica em Sinop-MT. 89 p. Dissertao (Dissertao) UFMT, 2007. Citado nas pginas xi e 11. FALGE, E.; BALDOCCHI, D.; OLSON, R.; ANTHONI, P.; AUBINET, M.; BERNHOFER, C.; BURBA, G.; CEULEMANS, R.; CLEMENT, R.; DOLMAN, H.; AL. et. Gap lling strategies for defensible annual sums of net ecosystem exchange. Agricultural and Forest Meteorology, v. 107, n. 1, p. 4369, 2001. Disponvel em: <http://linkinghub.elsevier.com/retrieve/pii/S0168192300002252>. Citado na pgina 13. FAUSETT, L. (Ed.). Fundamentals of neural networks: architectures, algorithms, and applications. Upper Saddle River, NJ, USA: Prentice-Hall, Inc., 1994. ISBN 0-13334186-0. Citado nas pginas 15 e 16. FOKEN, T. Micrometeorology. [S.l.]: Springer Heidelberg, 2008. 308 p. Citado na pgina 10.

REFERNCIAS BIBLIOGRFICAS

53

FONSECA, M. Anlise Harmnica do Regime de Precipitao em Duas Localidades da Baixada Cuiabana. 66 p. Dissertao (Dissertao) UFMT, 2008. Citado na pgina 23. FORREST, S. Genetic algorithms: principles of natural selection applied to computation. Science, v. 261, n. 5123, p. 872878, ago. 1993. Disponvel em: <http://dx.doi.org/10.1126/science.8346439>. Citado na pgina 21. GALLON, M. M. P. Um Estudo Sobre a Dinmica de Sistemas Complexos a partir de Sries Temporais de Dados Microclimatolgicos para uma Floresta de Transio no Noroeste de Mato Grosso. 130 p. Dissertao (Dissertao) UFMT, 2005. Citado na pgina 12. GOLDBERG, D. E. Genetic Algorithms in Search, Optimization and Machine Learning. New York: Addison-wesley, 1989. Citado na pgina 17. GOVE, J. H.; HOLLINGER, D. Y. Application of a dual unscented kalman lter for simultaneous state and parameter estimation in problems of surface-atmosphere exchange. Journal of Geophysical Research, v. 111, p. 121, 2006. Disponvel em: <http://www.agu.org/pubs/crossref/2006/2005JD006021.shtml>. Citado na pgina 13. HAYKIN, S. S. Redes Neurais - Principios E Pratica. [S.l.]: Bookman, 2000. Citado nas pginas xi, 14, e 15. HERVS, C.; ALGAR, J. A.; SILVA, M. Correction of temperature variations in kinetic-based determinations by use of pruning computational neural networks in conjunction with genetic algorithms. Journal of Chemical Information and Computer Sciences, v. 40, n. 3, p. 724731, 2000. Citado na pgina 21. HEWITT, C. N. Handbook of atmospheric science - principles and applications. [S.l.]: Wiley-Blackwell, 2003. 600 p. Citado na pgina 10. HOLTGREWE, M.; SANDERS, P.; SCHULZ, C. Engineering a scalable high quality graph partitioner. In: 24th IEEE International Parallal and Distributed Processing Symposium. [S.l.: s.n.], 2010. p. 112. Citado na pgina 16. HU, Z.; YU, G.; ZHOU, Y.; SUN, X.; LI, Y.; SHI, P.; WANG, Y.; SONG, X.; ZHENG, Z.; ZHANG, L. Partitioning of evapotranspiration and its controls in four grassland ecosystems: Application of a two-source model. Agricultural and Forest Meteorology, v. 149, n. 9, p. 14101420, set. 2009. ISSN 01681923. Disponvel em: <http://dx.doi.org/10.1016/j.agrformet.2009.03.014>. Citado na pgina 13.

REFERNCIAS BIBLIOGRFICAS

54

HUI, D. Gap-lling missing data in eddy covariance measurements using multiple imputation (mi) for annual estimations. Agricultural and Forest Meteorology, v. 121, n. 12, p. 93111, 2004. Disponvel em: <http://linkinghub.elsevier.com/retrieve/pii/S0168192303001588>. Citado na pgina 12. JAIN, S. K.; NAYAK, P. C.; SUDHEER, K. P. Models for estimating evapotranspiration using articial neural networks, and their physical interpretation. Hydrological Processes, v. 2234, n. February, p. 2225 2234, 2008. Disponvel em: <http://dx.doi.org/10.1002/hyp.6819>. Citado na pgina 16. JESUS, R. G.; OLIVEIRA, M. O. F. Implantao de sistemas erp: Tecnologia e pessoas na implantao do sap r/3. Revista de Gesto da Tecnologia e Sistemas de Informao, TECSI FEA USP, UFES, p. 315 330, 2007. Citado na pgina 6. KATO, T.; TANG, Y.; GU, S.; HIROTA, M.; DU, M.; LI, Y.; ZHAO, X. Temperature and biomass inuences on interannual changes in CO2 exchange in an alpine meadow on the Qinghai-Tibetan plateau. Global Change Biology, Blackwell Publishing, v. 12, n. 7, p. 12851298, jul. 2006. ISSN 1354-1013. Disponvel em: <http://dx.doi.org/10.1111/j.1365-2486.2006.01153.x>. Citado na pgina 13. KOVCS, Z. L. Redes Neurais Articiais: Fundamentos e Aplicaes. [S.l.]: Collegium Cognitio, 1996. Citado na pgina 15. KOZA, J. R. Survey of genetic algorithms and genetic programming. In: In In Proceedings of the Wescon 95 - Conference Record: Microelectronics, Communications Technology, Producing Quality Products, Mobile and Portable Power, Emerging Technologies. [S.l.]: IEEE Press, 1995. p. 589594. Citado na pgina 17. LACERDA, E. G. M.; CARVALHO, A. C. P. L. Introduo aos algoritmos genticos. Porto Alegre, RS: Ed. Universidade/UFRGS, 1999. 99-150 p. Citado na pgina 17. LAUMANNS, M.; ZITZLER, E.; THIELE, L. A unied model for multi-objective evolutionary algorithms with elitism. In: In Congress on Evolutionary Computation (CEC 2000. [S.l.]: IEEE Press, 2000. p. 4653. Citado na pgina 19. LIN, T. H.; CHIU, S. H.; TSAI, K. C. Supervised Feature Ranking Using a Genetic Algorithm Optimized Articial Neural Network. J. Chem. Inf. Model., Institute of Molecular Medicine & Department of Life Science, National Tsing Hua University, Hsinchu, Taiwan 30013, R.O.C., v. 46, n. 4, p. 16041614, jul. 2006. Disponvel em: <http://dx.doi.org/10.1021/ci0600354>. Citado na pgina 21.

REFERNCIAS BIBLIOGRFICAS

55

LOURAKIS, M. I. A. A brief description of the levenberg-marquardt algorithm implemened by levmar. Matrix, v. 3, p. 16, 2005. Disponvel em: <http://www.ics.forth.gr/lourakis/>. Citado na pgina 31. MARIANO, R. T. G. Anlise Espectral de Sries Temporais de Variveis MicroClimatolgicas em uma rea de Ectono entre os Biomas Amaznia e Cerrado do Norte de Mato Grosso. 100 p. Dissertao (Dissertao) UFMT, 2005. Citado na pgina 12. MATHWORKS. Pgina de referncia das funes da Neural Network Toolbox. 2011. Disponvel em: <http://www.mathworks.com/help/toolbox/nnet/ref/f7-23438.html>. Citado nas pginas 30 e 31. MATLAB. The Language Of Technical Computing. [S.l.]: Disponvel na URL:http://www.mathworks.com/products/matlab. Data de ltimo acesso: 22/05/2011., 2011. Citado na pgina 34. MICHALEWICZ, Z. Genetic Algorithms + Data Structures = Evolution Programs. New York: Springer-Verlag, 1994. Citado na pgina 17. MISHUROV, M.; KIELY, G. Gap-lling techniques for the annual sums of nitrous oxide uxes. Agricultural and Forest Meteorology, v. 151, p. 17631767, 2011. Citado na pgina 13. MOAYED, F. A.; SHELL, R. L. Application of articial neural network models in occupational safety and health utilizing ordinal variables. Oxford University Press, 2010. Disponvel em: <http://dx.doi.org/10.1093/annhyg/meq079>. Citado na pgina 14. MOFFAT, A. M.; PAPALE, D.; REICHSTEIN, M.; HOLLINGER, D. Y.; RICHARDSON, A. D.; BARR, A. G.; BECKSTEIN, C.; BRASWELL, B. H.; REICHSTEIN, M.; DESAI, A. R.; AL. et. Comprehensive comparison of gap-lling techniques for eddy covariance net carbon uxes. Agricultural and Forest Meteorology, v. 147, n. 34, p. 209232, 2007. Disponvel em: <http://www.sciencedirect.com/science/article/B6V8W-4PRRH4S-1/2/8f35f7f68e06ef1f6eb7ad5e3ce6c1df>. Citado na pgina 13. NETO, A. A. C. Estudo Bioclimtico no Campus da Universidade Federal de Mato Grosso. 159 p. Dissertao (Dissertao) UFMT, 2007. Citado na pgina 23. NEVES, G. A. R. Desenvolvimento de Estao Micrometeorolgica com Armazenamento de Dados. 61 p. Dissertao (Dissertao) UFMT, 2011. Citado na pgina 10.

REFERNCIAS BIBLIOGRFICAS

56

NOVAIS, J. W. Z. Dinmica Geotrmica do Solo de uma Floresta de Cambars no Pantanal Mato-Grossense. 54 p. Dissertao (Dissertao) UFMT, 2011. Citado na pgina 23. NUNES, L. N.; KLUCK, M. M.; FACHEL, J. M. G. Uso da imputao mltipla de dados faltantes: uma simulao utilizando dados epidemiolgicos. Cad. Sade Pblica, v. 25, n. 2, p. 268278, 2009. Disponvel em: <http://www.scielo.br/pdf/csp/v25n2/05.pdf>. Citado na pgina 13. OLIVEIRA, A. G. Arquitetura de dados para gerenciamento de informaes micrometeorolgicas. 86 p. Dissertao (Dissertao) UFMT, 2011. Citado na pgina 7. OLIVEIRA, A. G.; LIBERATTI, G.; RODRIGUES, R.; MARTINS, C. A.; FIGUEIREDO, J. M.; BONFANTE, A. G. Uma arquitetura de componentes para processamento de imagens ambientais. Anais do III Simpsio de Geotecnologias no Pantanal, Embrapa Informtica Agropecuria, So Jos dos Campos, SP, p. 885 893, 2010. Citado na pgina 6. OLIVEIRA, A. G.; VENTURA, T. M.; CURADO, L. F. A.; FIGUEIREDO, J. M.; MARTINS, C. A. Armazenamento e gerenciamento de dados ambientais. Coletnea Fsica Ambiental I, Barana, So Paulo, v. 1, p. 3947, 2011. Citado na pgina 8. OOBA, M.; HIRANO, T.; MOGAMI, J.-I.; HIRATA, R.; FUJINUMA, Y. Comparisons of gap-lling methods for carbon ux dataset: A combination of a genetic algorithm and an articial neural network. Ecological Modelling, v. 198, n. 3-4, p. 473 486, 2006. ISSN 0304-3800. Disponvel em: <http://www.sciencedirect.com/science/article/pii/S0304380006002766>. Citado na pgina 13. ORTON, N. J. H.; IPSITZ, S. R. L. Multiple imputation in practice : Comparison of software packages for regression models with missing variables. American Statistician, v. 55, n. 3, p. 244254, 2001. Disponvel em: <http://www.jstor.org/stable/2685809>. Citado na pgina 12. PAL, A. E. Determinao do Tempo de Defasagem Mais Adequado para Anlise de Sries Temporais de Variveis Microclimatolgicas Medidas numa Floresta de Transio no Norte de Mato Grosso. 48 p. Dissertao (Dissertao) UFMT, 2008. Citado na pgina 11. PANELLA, M.; RIZZI, A.; MARTINELLI, G. Rening accuracy of environmental data prediction by mog neural networks. Neurocomputing, v. 55, n. 3-4, p. 521549, 2003. Citado na pgina 16.

REFERNCIAS BIBLIOGRFICAS

57

PFALTZ, J. L. What constitutes a scientic database? In: 19th International Conference on Scientic and Statistical Database Management, SSDBM. Banff, Canada: IEEE Computer Society, 2007. p. 110. Citado na pgina 3. PIRES A. M., A. C. (Ed.). A utilizao da funo de inuncia para melhorar o desempenho do mtodo de reamostragem bootstrap. Actas do VI Congresso Anual da SPE. [S.l.: s.n.], 1999. 9199 p. Citado na pgina 35. RODRIGUES, A.; PITA, G.; MATEUS, J. a. Turbulent uxes of carbon dioxide and water vapour over an eucalyptus forest in portugal. Silva Lusitana, v. 13, n. 2, p. 169 180, 2005. Citado na pgina 13. RUSSELL, S.; NORVIG, P. INTELIGENCIA ARTIFICIAL. CAMPUS, 2004. ISBN 9788535211771. Disponvel em: <http://books.google.com/books?id=wBMvAAAACAAJ>. Citado na pgina 14. SANTOS, V. F.; ARDES, A. F.; PEREIRA, M. W. G.; SOUZA, U. R.; ARDES, A. Stock cost and risk-prize: an economic analysis of the best period for arabic coffee commercialization. Custos e Agronegcio, v. 3, n. 2, p. 2238, 2007. ISSN 1808-2882. Citado na pgina 35. SCHAFER, J. L. Multiple imputation: a primer. Stat Methods Med Res, v. 8, p. 315, February 1999. Citado na pgina 12. SCHAFFER, J. D.; WHITLEY, D.; ESHELMAN, L. J. Combinations of genetic algo. Combinations of rithms and neural networks: a survey of the state of the art. In: Genetic Algorithms and Neural Networks 1992 COGANN92 International Workshop on. IEEE Comput. Soc. Press, 1992. p. 137. Disponvel em: <http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=273950>. Citado na pgina 21. SEIXAS, G. B. Determinao da Transpirao em Plantas de Nim Indiano (Azadirachta indica A. Juss) Utilizando Mtodos de Estimativa de Fluxo de Seiva. 71 p. Dissertao (Dissertao) UFMT, 2009. Citado na pgina 23. SELLITTO, M. A. Inteligcia articial: uma aplicao em uma indstria de processo contnuo. Gesto e Produo, scielo, v. 9, p. 363 376, 12 2002. ISSN 0104-530X. Citado na pgina 5. SHAO, C.; CHEN, J.; LI, L.; TENNEY, G.; XU, W.; XU, J. Role of net radiation on energy balance closure in heterogeneous grasslands. Biogeosciences Discussions, v. 8, n. 2, p. 20012033, 2011. Disponvel em: <http://www.biogeosciences-discuss.net/8/2001/2011/>. Citado na pgina 13.

REFERNCIAS BIBLIOGRFICAS

58

SHEIKH, R. H.; RAGHUWANSHI, M.; JAISWAL, A. N. Genetic algorithm based clustering: A survey. Emerging Trends in Engineering and Technology, International Conference on, IEEE Computer Society, Los Alamitos, CA, USA, v. 0, p. 314 319, 2008. Disponvel em: <http://www.computer.org/portal/web/csdl/doi/10.1109/ICETET.2008.48>. Citado na pgina 18. SUDHEER, K. P.; GOSAIN, A. K.; RAMASASTRI, K. S. Estimating actual evapotranspiration from limited climatic data using neural computing technique. Journal of Irrigation and Drainage Engineering-asce, v. 129, p. 214218, 2003. Citado na pgina 14. TANG, P.; LEE, G. An adaptive tness function for evolutionary algorithms using heuristics and prediction. Proc. of the World Automation Congress, ISSCI, Budapest, p. 16, 2006. Citado na pgina 18. TARCA, L. A.; GRANDJEAN, B. P. A.; LARACHI, F. Integrated genetic algorithmarticial neural network strategy for modeling important multiphase-ow characteristics. Industrial & Engineering Chemistry Research, v. 41, p. 25432551, 2002. Citado na pgina 21. TSUKAHARA, R. Y.; JENSEN, T.; CARAMORI, P. H. Utilizao de redes neurais articiais para preenchimento de falhas em sries horrias de dados meteorolgicos. Congresso Brasileiro de Meteorologia, p. 15, 2010. Citado na pgina 16. WILLMOTT, C.; MATSUURA, K. Advantages of the mean absolute error (mae) over the root mean square error (rmse) in assessing average model performance. Climate Research, v. 30, p. 7982, 2005. Disponvel em: <http://www.int-res.com/abstracts/cr/v30/n1/p79-82/>. Citado na pgina 35. WILLMOTT, C. J. Some Comments on the Evaluation of Model Performance. Bulletin of the American Meteorological Society, v. 63, p. 13091369, 1982. Disponvel em: <http://dx.doi.org/10.1175/1520-0477(1982)063>. Citado na pgina 35. WILLMOTT, C. J.; MATSUURA, K.; ROBESON, S. M. Ambiguities inherent in sums-of-squares-based error statistics. Atmospheric Environment, Elsevier Ltd, v. 43, n. 3, p. 749752, 2009. Disponvel em: <http://linkinghub.elsevier.com/retrieve/pii/S1352231008009564>. Citado na pgina 35. WILSON, K.; BALDOCCHI, D. Comparing independent estimates of carbon dioxide exchange over 5 years at a deciduous forest in the southeastern united states. Journal of Geophysical Research-Atmospheres, Wilson, KBNOAA, Atmospher Turbulence &

REFERNCIAS BIBLIOGRFICAS

59

Diffus Div, 151 Hilgard Hall, Oak Ridge, TN 37831 USANOAA, At, v. 106, n. D24, p. 3416734178, 2001. ISSN 0747-7309. Citado na pgina 13. ZANETTI, S. S.; SOUSA, E. F.; CARVALHO, D. F. de; BERNARDO, S. Estimao da evapotranspirao de referncia no estado do rio de janeiro usando redes neurais articiais. p. 174180, 2008. Citado na pgina 15. ZHANG, M.; GAO, X.; LOU, W. A new crossover operator in genetic programming for object classication. IEEE Transactions on Systems, Man, and Cybernetics, v. 37, p. 13321343, 2007. Citado na pgina 19. ZHOU, Y.; CHENG, C.; ZUO, J. Dynamic mutation and recombination using selfselecting crossover method for genetic algorithms. In: Proceedings of the 2008 Fourth International Conference on Natural Computation - Volume 01. Washington, DC, USA: IEEE Computer Society, 2008. (ICNC 08), p. 586592. ISBN 978-0-76953304-9. Disponvel em: <http://dx.doi.org/10.1109/ICNC.2008.844>. Citado na pgina 19.

Apndice A Cdigo do Algoritmo Gentico


Principal.m 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 NUMERO_MAX_GERACAO = 1 0 0 ; ERRO_MAXIMO_VALIDO = 0 . 0 4 ; TAMANHO_POPULACAO = 4 0 ; TAMANHO_INDIVIDUO = 1 8 ; PORCENTAGEM_MUTACAO = 0 . 1 ; mErroIndividuo = 100; menorErro = 999999; melhorSolucao = [ ] ; % Gerando uma p o p u l a c a o a l e a t o r i a populacao = [ ] ; f o r i = 1 : TAMANHO_POPULACAO individuo = ; f o r j = 1 : TAMANHO_INDIVIDUO i f ( rand ( 1 ) > 0 . 5 ) b i t = 0 ; else b i t = 1 ; end individuo = [ individuo , bit ]; end populacao ( i , : ) = individuo ; end

60

61

26 g e r a c o e s G e r a d a s = 0 ; 27 e r r o G e r a c a o = [ ] ; 28 w h i l e ( g e r a c o e s G e r a d a s < NUMERO_MAX_GERACAO ) 29 30 geracoesGeradas = geracoesGeradas + 1; 31 ok = 0 ; 32 somatorioDeErro = 0; 33 avaliacoes = []; 34 35 f o r i = 1 : TAMANHO_POPULACAO 36 37 % Decodificando o individuo 38 [ f u n c 1 f u n c 2 a l g T l r mc s 1 s 2 s 3 s 4 s 5 s 6 ] = d e c o d i f i c a r ( populacao ( i , : ) ) ; 39 40 % Calculando o erro d es te i n d i v i d u o 41 [ e r r o I n d i v i d u o , IW , LW, b ] = rnIDA ( f u n c 1 , f u n c 2 , algT , l r , mc , s1 , s2 , s3 , s4 , s5 , s 6 ) ; 42 43 i f ( erroIndividuo < mErroIndividuo ) 44 % Guardar a c o n f i g u r a c a o c a s o seja 45 % o melhor i n d i v i d u o a t e o momento 46 mErroIndividuo = erroIndividuo ; 47 mIW = IW ; 48 mLW = LW; 49 mb = b ; 50 nfunc1 = func1 ; 51 nfunc2 = func2 ; 52 malgT = a l g T ; 53 mlr = l r ; 54 mmc = mc ; 55 ms1 = s 1 ; 56 ms2 = s 2 ; 57 ms3 = s 3 ; 58 ms4 = s 4 ;

62

59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 end

ms5 = s 5 ; ms6 = s 6 ; end avaliacoes ( i ) = erroIndividuo ; somatorioDeErro = somatorioDeErro + erroIndividuo ;

erroGeracao ( geracoesGeradas ) = ( somatorioDeErro / TAMANHO_POPULACAO) % V e r i f i c a n d o s e a t i n g i u o e r r o minimo i f ( e r r o G e r a c a o ( g e r a c o e s G e r a d a s ) <= ERRO_MAXIMO_VALIDO ) [ erros , indices ] = sort ( avaliacoes ) ; menorErro = e r r o s ( 1 ) ; melhorSolucao = populacao ( i n d i c e s (1) , : ) ; break ; end

% Se nao achou o e r r o minimo , c r i a r uma nova geracao % Ordena o v e t o r de a c o r d o com a s m e l h o r e s avaliacoes [ erros , indices ] = sort ( avaliacoes ) ; % elitismo pais = [ ] ; novaGeracao = [ ] ; countNovaGeracao = 1; menorErro = e r r o s ( 1 ) ; melhorSolucao = populacao ( i n d i c e s (1) , : ) ;

63

91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118

f o r i = 1 : 2 : TAMANHO_POPULACAO % recuperando os p a i s pai = populacao ( i n d i c e s ( i ) , : ) ; mae = p o p u l a c a o ( i n d i c e s ( i + 1 ) , : ) ; % d e i x a o s m e l h o r e s p a i s na p r o x i m a g e r a c a o novaGeracao ( countNovaGeracao , : ) = p a i ; i f ( c o u n t N o v a G e r a c a o == TAMANHO_POPULACAO ) break ; else countNovaGeracao = countNovaGeracao + 1; end n o v a G e r a c a o ( c o u n t N o v a G e r a c a o , : ) = mae ; i f ( c o u n t N o v a G e r a c a o == TAMANHO_POPULACAO ) break ; else countNovaGeracao = countNovaGeracao + 1; end % R e a l i z a n d o cruzamentos e n t r e os p a i s p o n t o D e C o r t e = round ( rem ( ( rand ( 1 , 1 ) 100 ) , TAMANHO_INDIVIDUO1 ) ) + 1 ; f i l h o 1 = [ p a i ( 1 : p o n t o D e C o r t e ) mae ( p o n t o D e C o r t e +1 : l e n g t h ( mae ) ) ] ; f i l h o 2 = [ mae ( 1 : p o n t o D e C o r t e ) p a i ( p o n t o D e C o r t e +1 : l e n g t h ( p a i ) ) ] ; % Adicionando os f i l h o s novaGeracao ( countNovaGeracao , : ) = f i l h o 1 ;

64

119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141

i f ( c o u n t N o v a G e r a c a o == TAMANHO_POPULACAO ) break ; else countNovaGeracao = countNovaGeracao + 1; end novaGeracao ( countNovaGeracao , : ) = f i l h o 2 ; i f ( c o u n t N o v a G e r a c a o == TAMANHO_POPULACAO ) break ; else countNovaGeracao = countNovaGeracao + 1; end end populacao = novaGeracao ; % r e a l i z a n d o a mutacao f o r i = 1 : TAMANHO_POPULACAO % v e r i f i c a r se e s s e i n d i v i d u o deve s o f r e r mutacao i f ( rand ( 1 , 1 ) < PORCENTAGEM_MUTACAO ) b i t = round ( rem ( ( rand ( 1 , 1 ) 100 ) , TAMANHO_INDIVIDUO1 ) ) + 1; % invertendo o bit i f ( p o p u l a c a o ( i , b i t ) == 0 ) populacao ( i , b i t ) = 1 ; else populacao ( i , b i t ) = 0 ;

142 143 144 145 146 147

65

148 149 150 151 152 153 154 155 156 157

end end end end % Fim do AG , m o s t r a r o m e l h o r r e s u l t a d o

% Mostrando os i n d i v i d u o s mais e v o l u i d o s f o r i = 1 : TAMANHO_POPULACAO [ f u n c 1 f u n c 2 t r e i n a m e n t o l r mc s 1 s 2 s 3 s 4 s 5 s 6 ] = d e c o d i f i c a r ( populacao ( 1 , : ) ) ; 158 end 159 160 % Numeros de g e r a c o e s n e c e s s a r i a s 161 g e r a c o e s G e r a d a s ; 162 163 % A m e l h o r s o l u c a o 164 [ f u n c 1 f u n c 2 a l g T l r mc s 1 s 2 s 3 s 4 s 5 s 6 ] = d e c o d i f i c a r ( melhorSolucao ) 165 166 % O v a l o r do e r r o do m e l h o r i n d i v i d u o 167 m e n o r E r r o Codicar.m 1 function [ binario ] = c o d i f i c a r ( ativacao1 , ativacao2 , t r e i n a m e n t o , l r , mc , s1 , s2 , s3 , s4 , s5 , s 6 ) 2 3 binAtivacao1= ; 4 binAtivacao2= ; 5 binTreinamento= ; 6 binLr= ; 7 binMc= ; 8 bS1= ; 9 bS2= ; 10 bS3= ; 11 bS4= ; 12 bS5= ;

66

13 14 15

bS6= ; %f o r m a n d o a c a d e i a de b i n r i o c o r r e s p o n d e n t e ao i n d i v i d u o de a c o r d o com o s p a r m e t r o s determinados i f ( strcmp ( a t i v a c a o 1 , p u r e l i n ) ) b i n A t i v a c a o 1 =[ 0 , 0 ] ; else i f ( strcmp ( a t i v a c a o 1 , l o g s i g ) ) b i n A t i v a c a o 1 =[ 0 , 1 ] ; end end i f ( strcmp ( a t i v a c a o 1 , t a n s i g ) ) b i n A t i v a c a o 1 =[ 1 , 0 ] ; else i f ( strcmp ( a t i v a c a o 1 , s a t l i n ) ) b i n A t i v a c a o 1 =[ 1 , 1 ] ; end end i f ( strcmp ( a t i v a c a o 2 , p u r e l i n ) ) b i n A t i v a c a o 2 =[ 0 , 0 ] ; else i f ( strcmp ( a t i v a c a o 2 , l o g s i g ) ) b i n A t i v a c a o 2 =[ 0 , 1 ] ; end end i f ( strcmp ( a t i v a c a o 2 , t a n s i g ) ) b i n A t i v a c a o 2 =[ 1 , 0 ] ; else i f ( strcmp ( a t i v a c a o 2 , s a t l i n ) ) b i n A t i v a c a o 2 =[ 1 , 1 ] ; end end

16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47

67

48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84

i f ( strcmp ( t r e i n a m e n t o , t r a i n g d ) ) b i n T r e i n a m e n t o =[ 0 , 0 ] ; else i f ( strcmp ( t r e i n a m e n t o , t r a i n g d m ) ) b i n T r e i n a m e n t o =[ 0 , 1 ] ; end end i f ( strcmp ( t r e i n a m e n t o , t r a i n g d x ) ) b i n T r e i n a m e n t o =[ 1 , 0 ] ; else i f ( strcmp ( t r e i n a m e n t o , t r a i n l m ) ) b i n T r e i n a m e n t o =[ 1 , 1 ] ; end end binLr = dec2bin ( ( ( l r 0 . 1 ) 10) , 3) ; binMc = d e c 2 b i n ( ( ( mc 0 . 1 ) 1 0 ) , 3 ) ; i f ( s 1 == 1 ) bS1 = 1 ; else bS1 = 0 ; end i f ( s 2 == 1 ) bS2 = 1 ; else bS2 = 0 ; end i f ( s 3 == 1 ) bS3 = 1 ; else bS3 = 0 ; end

68

85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104

i f ( s 4 == 1 ) bS4 = 1 ; else bS4 = 0 ; end i f ( s 5 == 1 ) bS5 = 1 ; else bS5 = 0 ; end i f ( s 6 == 1 ) bS6 = 1 ; else bS6 = 0 ; end %Composiao da c a d e i a de b i n r i o b i n a r i o =[ binAtivacao1 , binAtivacao2 , b i n T r e i n a m e n t o , b i n L r , binMc , bS1 , bS2 , bS3 , bS4 , bS5 , bS6 ] ; Decodicar.m

1 f u n c t i o n [ a t i v a c a o 1 , a t i v a c a o 2 , t r e i n a m e n t o , l r , mc , s1 , s2 , s3 , s4 , s5 , s 6 ] = d e c o d i f i c a r ( b i n a r i o ) 2 3 % Decodificando o individuo 4 5 % 1 E x t r a i n d o o b i n a r i o de cada p a r t e d o s parametros 6 bAtivacao1 = b i n a r i o ( 1 : 2 ) ; 7 bAtivacao2 = b i n a r i o ( 3 : 4 ) ; 8 bTreinamento = b i n a r i o ( 5 : 6 ) ; 9 bLr = b i n a r i o ( 7 : 9 ) ; 10 bMc = b i n a r i o ( 1 0 : 1 2 ) ; 11 bS1 = b i n a r i o ( 1 3 : 1 3 ) ;

69

12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48

bS2 bS3 bS4 bS5 bS6

= = = = =

binario binario binario binario binario

(14:14) (15:15) (16:16) (17:17) (18:18)

; ; ; ; ;

i f ( b A t i v a c a o 1 == [ 4 8 4 8 ] ) ativacao1= purelin ; else i f ( b A t i v a c a o 1 == [ 4 8 4 9 ] ) ativacao1= logsig ; else i f ( b A t i v a c a o 1 == [ 4 9 4 8 ] ) ativacao1= tansig ; else ativacao1= s a t l i n ; end end end i f ( b A t i v a c a o 2 == [ 4 8 4 8 ] ) ativacao2= purelin ; else i f ( b A t i v a c a o 2 == [ 4 8 4 9 ] ) ativacao2= logsig ; else i f ( b A t i v a c a o 2 == [ 4 9 4 8 ] ) ativacao2= tansig ; else ativacao2= s a t l i n ; end end end i f ( b T r e i n a m e n t o == [ 4 8 4 8 ] ) treinamento= traingd ; else

70

49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68

i f ( b T r e i n a m e n t o == [ 4 8 4 9 ] ) treinamento= traingdx ; else i f ( b T r e i n a m e n t o == [ 4 9 4 8 ] ) treinamento= trainlm ; else treinamento= trainrp ; end end end l r = b i n 2 d e c ( c h a r ( bLr ) ) / 10 + 0 . 1 ; mc = b i n 2 d e c ( c h a r ( bMc ) ) / 10 + 0 . 1 ; s1 s2 s3 s4 s5 s6 = = = = = = bS1 bS2 bS3 bS4 bS5 bS6 == == == == == == 1 ; 1 ; 1 ; 1 ; 1 ; 1 ;

Apndice B Cdigo da Rede Neural Articial


Rna.m 1 f u n c t i o n [ e r r o r , IW , LW, b ] = r n a ( f u n c 1 , f u n c 2 , algT , l r , mc , s1 , s2 , s3 , s4 , s5 , s 6 ) 2 3 warning o f f a l l ; 4 l o a d s i m u l a c a o . mat ; 5 entradas = [ ] ; 6 entradasTeste = [ ] ; 7 neuronio =0; 8 9 % Verificando quais sensores estao ativos 10 i f ( s1 ) 11 neuronio = neuronio +1; 12 e n t r a d a s = entradaRN ( : , 1 ) ; 13 entradasTeste = entradaTeste (: ,1) ; 14 end 15 16 i f ( s2 ) 17 neuronio = neuronio +1; 18 e n t r a d a s = [ e n t r a d a s entradaRN ( : , 2 ) ] ; 19 entradasTeste = [ entradasTeste entradaTeste (: ,2) ]; 20 end 21 22 i f ( s3 ) 23 neuronio = neuronio +1; 71

72

24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 end i f ( s4 )

e n t r a d a s = [ e n t r a d a s entradaRN ( : , 3 ) ] ; entradasTeste = [ entradasTeste entradaTeste (: ,3) ];

neuronio = neuronio +1; e n t r a d a s = [ e n t r a d a s entradaRN ( : , 4 ) ] ; entradasTeste = [ entradasTeste entradaTeste (: ,4) ]; end i f ( s5 ) neuronio = neuronio +1; e n t r a d a s = [ e n t r a d a s entradaRN ( : , 5 ) ] ; entradasTeste = [ entradasTeste entradaTeste (: ,5) ]; end i f ( s6 ) neuronio = neuronio +1; e n t r a d a s = [ e n t r a d a s entradaRN ( : , 6 ) ] ; entradasTeste = [ entradasTeste entradaTeste (: ,6) ]; end t a r g e t s = saidaRN ; targetsTeste = saidaTeste ; n e u r o n i o =( n e u r o n i o 2) +1; %n o r m a l i z a o [ pn , minp , maxp , t n , mint , maxt ] = premnmx ( e n t r a d a s , targets ) ; [ pnT , minp , maxp , tnT , mint , maxt ] = premnmx ( entradasTeste , targetsTeste ) ;

73

54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78

n e t = n e w f f ( minmax ( pn ) , [ n e u r o n i o 1 ] , { f u n c 1 func2 } , algT ) ; % c o n f i g u r a n d o a RNA n e t . t r a i n P a r a m . showWindow = 0 ; net . trainParam . epochs = 400; net . trainParam . goal = 0.0001; n e t . p e r f o r m F c n = mse ; IW = n e t . IW ; LW = n e t .LW; b = net . b ; net . trainParam . l r = l r ; n e t . t r a i n P a r a m . mc = mc ; net . trainParam . lr_inc = 1.05; net . trainParam . lr_dec = 0.7; net . trainParam . max_perf_inc = 1.04; % t r e i n a n d o a RNA n e t = t r a i n ( n e t , pn , t n ) ; % t e s t a n d o a RNA s a i d a T e s t e = sim ( n e t , pnT ) ; % o b t e n d o o e r r o g e r a d o p e l a RNA e = tnT s a i d a T e s t e ; e r r o r = mse ( e )

Você também pode gostar