• Nenhum resultado encontrado

Algoritmos genéticos e redes neuronais na previsão de séries temporais

N/A
N/A
Protected

Academic year: 2020

Share "Algoritmos genéticos e redes neuronais na previsão de séries temporais"

Copied!
105
0
0

Texto

(1)Universidade do Minho. Departamento de Informatica. Algoritmos Geneticos e Redes Neuronais na Previs~ao de Series Temporais por. Paulo Alexandre Ribeiro Cortez Dissertac~ao apresentada a Universidade do Minho para obtenc~ao do grau de Mestre em Informatica, na especialidade de Informatica de Gest~ao. Orientador:. Jose Carlos Ferreira Maia Neves (Professor Associado) Braga Dezembro de 1997.

(2) \Forecasting is the art of saying what will happen, and then explaining why it didn't!" Anonymous \I was intrigued by neural networks that could automatically learn a pattern. I was very excited about nding these magical devices that, once you discovered the right design, you could turn on and they would get smarter." David Shaw, 1997 \Genetic Neural Networks. I believe that this is going to become the core of connectionism." Frederic Gruau, 1994. i.

(3) Agradecimentos Esta dissertac~ao vem no seguimento de um projecto desenvolvido para a Opc~ao III da licenciatura de Engenharia de Sistemas e Informatica. Este projecto foi desenvolvido conjuntamente com o meu colega e amigo Miguel Rocha, co-autor da ideia de aplicar redes neuronais a previs~ao de series temporais, ao qual agradeco todo o seu trabalho, ideias e ajuda prestada. Na altura, n~ao pensavamos que tal projecto pudesse ir longe. Na verdade, aquele trabalho acabou por se tornar uma base importante, a partir do qual surgiram algumas publicaco~es, assim como esta dissertac~ao. Fico grato ao Professor Jose Carlos Ferreira Maia Neves por ter in uenciado o meu interesse na area da Intelig^encia Arti cial, pelos seus ensinamentos, aconselhamento bem como toda a con anca que depositou em mim. N~ao quero deixar de agradecer a estimada contribuic~ao dos colegas de laboratorio, Dr. Rui Mendes e Engenheiro Filipe Santos, por toda ajuda prestada. Finalmente, desejo agradecer a minha famlia, amigos e a A^ ngela, por todo o apoio e encorajamento.. ii.

(4) Resumo Hoje em dia assiste-se a uma mundializac~ao da economia, originando um acrescimo da concorr^encia entre as organizac~oes. Assim, e natural assumir que as organizac~oes est~ao interessadas em obter previs~oes fundamentadas de certos tipos de indicadores, especialmente acerca daqueles que possam in uenciar a tomada de decis~oes. Uma das formas reside na Previs~ao de Series Temporais (PST), baseada nas observac~oes anteriores da variavel a prever. Os metodos convencionais de PST criam os seus modelos com base em componentes da serie temporal, como a tend^encia ou a sazonalidade. Este tipo de abordagem e aplicavel a series bem comportadas, mas falha quando estas apresentam rudo ou componentes n~ao lineares. Nos ultimos anos, os Algoritmos de Optimizac~ao, com base em processos de evoluc~ao natural das especies, t^em vindo a ser aplicados com sucesso em diferentes domnios. De entre estes, as Redes Neuronais Articiais (RNAs) e os Algoritmos Geneticos (AGs) assumiram-se como umas das mais populares e importantes ferramentas. Assim, neste trabalho, pretende-se explorar o uso combinado de RNAs e AGs, como fundamentos de um sistema inteligente para a PST.. iii.

(5) Abstract Nowadays one assists to a globalization of the world economy, with an increasing competition between enterprises. Thus, it is natural to assume that organizations will be interested on obtaining well-grounded forecasts, specially for decision making. One way is to use Time Series Forecasting (TSF), forecast of a chronological ordered variable. Conventional TSF methods base their models on Time Series (TS) components such as trend or seasonal eects. These methods give accurate forecasts on well behaved TS, but present some drawbacks on TS with noise or some unknown nonlinear relations among the TS data. In the last few years, Optimization Algorithms, based on natural evolutive processes, have been applied with success on wide areas. From all these, Articial Neural Networks (ANNs) and Genetic Algorithms (GAs) have been assumed as ones of the most popular and important techniques. Thus, in this thesis, one will try to explore the combination of ANNs and GAs, in order to get intelligent systems for TSF.. iv.

(6) Indice 1 Introduc~ao. 1.1 Motivac~ao . . . . . . . . . . . . . . . . 1.1.1 A Import^ancia da Previs~ao . . . 1.1.2 A Previs~ao de Series Temporais 1.1.3 Paradigmas Sub-simbolicos . . . 1.1.4 Redes Neuronais Arti ciais . . . 1.1.5 Algoritmos Geneticos . . . . . . 1.1.6 Os Sistemas GANN . . . . . . . 1.2 Objectivos . . . . . . . . . . . . . . . . 1.3 Organizac~ao . . . . . . . . . . . . . . .. 2 A Previs~ao de Series Temporais 2.1 2.2 2.3 2.4 2.5 2.6. O Papel da Previs~ao nas Organizac~oes Metodos de Previs~ao . . . . . . . . . . O Horizonte Temporal . . . . . . . . . Etapas da Previs~ao . . . . . . . . . . . Medida do Erro da Previs~ao . . . . . . Modelos de Previs~ao . . . . . . . . . . 2.6.1 Modelos de Regress~ao . . . . . 2.6.2 Modelos de Series Temporais . . v. . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . .. 1 1 2 2 3 3 4 4 5 5. 7. 7 8 8 8 9 10 10 10.

(7) 2.7 Metodos de PST . . . . . . . . . . . . . . 2.7.1 O Metodo de Holt-Winters . . . . . 2.7.2 A Metodologia ARIMA . . . . . . . 2.7.3 A Selecc~ao do Metodo Apropriado . 2.7.4 Uso de Redes Neuronais . . . . . . 2.8 Decomposica~o de Series Temporais . . . . 2.8.1 Tend^encia . . . . . . . . . . . . . . 2.8.2 Ciclo . . . . . . . . . . . . . . . . . 2.8.3 Sazonalidade . . . . . . . . . . . . 2.8.4 Aleatoriedade . . . . . . . . . . . . 2.9 Coe ciente de Autocorrelac~ao . . . . . . . 2.10 Veri cac~ao da Aleatoriedade . . . . . . . . 2.11 Identi caca~o da Tend^encia . . . . . . . . . 2.12 Remoc~ao da Tend^encia . . . . . . . . . . . 2.13 Identi caca~o da Sazonalidade . . . . . . .. 3 Redes Neuronais 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9. O Movimento Conexionista . . . . . . . . O que e uma Rede Neuronal Arti cial? . . Estrutura de uma Rede Neuronal Arti cial Activac~ao e Func~oes de Activac~ao . . . . . Treino de Redes Neuronais . . . . . . . . . Algoritmo RPROP . . . . . . . . . . . . . Pre-processamento dos Dados . . . . . . . Dados de Treino . . . . . . . . . . . . . . . Overtting . . . . . . . . . . . . . . . . . . 3.9.1 Paragem Antecipada . . . . . . . . 3.9.2 Perda de Generalizac~ao . . . . . . . vi. . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . .. 11 11 12 13 13 13 14 14 15 15 16 16 17 18 19. 22 22 23 24 26 27 29 30 32 32 32 33.

(8) 3.9.3 Progresso no Treino . . . . . . . . . . . . . . . . . . . . 34 3.9.4 Numero Maximo de Iterac~oes . . . . . . . . . . . . . . 35. 4 Algoritmos Geneticos 4.1 4.2 4.3 4.4 4.5. 4.6 4.7 4.8 4.9 4.10. A Computac~ao Evolucionaria . . . . . . . . . . . . . . . O que s~ao Algoritmos Geneticos? . . . . . . . . . . . . . Estrutura de um Algoritmo Genetico . . . . . . . . . . . Tamanho da Populac~ao . . . . . . . . . . . . . . . . . . . Operadores Basicos . . . . . . . . . . . . . . . . . . . . . 4.5.1 Selecc~ao . . . . . . . . . . . . . . . . . . . . . . . 4.5.2 Cruzamento . . . . . . . . . . . . . . . . . . . . . 4.5.3 Mutac~ao . . . . . . . . . . . . . . . . . . . . . . . Criterios de Paragem . . . . . . . . . . . . . . . . . . . . Codi cac~ao . . . . . . . . . . . . . . . . . . . . . . . . . Codigo Gray . . . . . . . . . . . . . . . . . . . . . . . . . Combinando Algoritmos Geneticos com Redes Neuronais Os Sistemas GANN . . . . . . . . . . . . . . . . . . . . .. 5 Estado da Arte. 5.1 Uso de RNAs na PST . . . . . . . . . . . . . . . . . . 5.1.1 RNAs Feedforward . . . . . . . . . . . . . . . . 5.1.2 RNAs Recorrentes . . . . . . . . . . . . . . . . 5.1.3 Combinac~ao de RNAs com Filtragem de Dados 5.2 Outras Tecnicas N~ao Convencionais . . . . . . . . . . . 5.3 Comparac~ao entre Tecnicas . . . . . . . . . . . . . . . 5.4 Estado Actual . . . . . . . . . . . . . . . . . . . . . . .. 6 Descric~ao do Sistema Desenvolvido. . . . . . . .. . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . .. 36 36 36 38 39 39 39 40 41 42 42 43 44 45. 47 47 47 49 49 50 50 50. 51. 6.1 Arquitectura das RNAs . . . . . . . . . . . . . . . . . . . . . . 51 vii.

(9) 6.2 Normalizac~ao dos Dados . . . . . . . . 6.3 O Sistema GANN . . . . . . . . . . . . 6.3.1 Factores que In uenciam a PST 6.3.2 Funca~o de Aptid~ao . . . . . . . 6.3.3 Estrutura do Sistema GANN . . 6.4 Arquitectura do Sistema . . . . . . . . 6.4.1 Integrac~ao entre o C e o Prolog 6.4.2 A Interface Gra ca X-Windows 6.5 Series Utilizadas . . . . . . . . . . . . . 6.6 Um Exemplo para o Sistema GANN . . 6.7 Resultados do Sistema GANN . . . . . 6.7.1 Factores O ptimos . . . . . . . . 6.7.2 Comparaca~o de Resultados . . . 6.8 Filtragem de Dados . . . . . . . . . . . 6.9 Janela Temporal Deslizante . . . . . . 6.10 O Sistema GANNF . . . . . . . . . . . 6.11 Um Exemplo para o Sistema GANNF . 6.12 Resultados do Sistema GANNF . . . .. . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .. 53 54 54 55 58 58 60 62 64 64 66 66 67 69 69 70 72 73. 7 Conclus~oes e Perspectivas de Trabalho Futuro. 77. Bibliogra a. 84. 7.1 Avaliac~ao do Trabalho Desenvolvido . . . . . . . . . . . . . . . 77 7.2 Perspectivas de Trabalho Futuro . . . . . . . . . . . . . . . . . 80 7.3 O Futuro da PST . . . . . . . . . . . . . . . . . . . . . . . . . 82. Ap^endice: Artigos Publicados de Acordo com o Trabalho Desenvolvido nesta Dissertac~ao 91 viii.

(10) Lista de Figuras 2.1 2.2 2.3 2.4 2.5 2.6 2.7. Estrutura de uma serie temporal . . . . . . . . . . . . . . . . . Serie temporal n~ao estacionaria . . . . . . . . . . . . . . . . . Serie temporal cclica . . . . . . . . . . . . . . . . . . . . . . . Serie temporal com factor estac~ao . . . . . . . . . . . . . . . . Autocorrelac~oes de uma serie aleatoria . . . . . . . . . . . . . Autocorrelac~oes de uma serie com e sem tend^encia . . . . . . . Autocorrelac~oes de uma serie e das suas diferencas de primeira e segunda ordem . . . . . . . . . . . . . . . . . . . . . . . . . 2.8 Autocorrelac~oes de uma serie com factor estac~ao de 4 . . . . . 2.9 Autocorrelac~oes de uma serie sazonal n~ao estacionaria . . . . 3.1 3.2 3.3 3.4 3.5. Estrutura de uma RNA recorrente . . . . . . . . . . . . . . . . Estrutura de uma RNA feedforward . . . . . . . . . . . . . . . Activac~ao de uma celula . . . . . . . . . . . . . . . . . . . . . Mnimo local e global . . . . . . . . . . . . . . . . . . . . . . . Exemplo de perda de poder de generalizaca~o de uma RNA generica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6 Exemplo de progresso no treino de uma RNA generica . . . .. 11 14 15 16 17 18 20 20 21 25 26 27 29 33 34. 4.1 Estrutura de um Algoritmo Genetico . . . . . . . . . . . . . . 38 4.2 Diferencas entre a operac~ao de selecc~ao baseada na aptid~ao e a operac~ao de selecc~ao baseada na ordem . . . . . . . . . . . . 40 ix.

(11) 4.3 4.4 4.5 4.6 4.7. Cruzamento de um ponto . . . . . . . . . . . . Cruzamento de dois pontos . . . . . . . . . . . Cruzamento uniforme . . . . . . . . . . . . . . Mutac~ao no cromossoma de um indivduo . . . Tempos de procura para as varias estrategias .. . . . . .. 41 41 42 42 45. Codi caca~o da RNA . . . . . . . . . . . . . . . . . . . . . . . Estrutura do sistema GANN . . . . . . . . . . . . . . . . . . . Arquitectura funcional do sistema . . . . . . . . . . . . . . . . A interface gra ca X-Windows . . . . . . . . . . . . . . . . . . Valores anuais das manchas solares (serie 1) . . . . . . . . . . Evoluc~ao do MQEva para a serie 1 . . . . . . . . . . . . . . . Previs~oes para a serie 1 . . . . . . . . . . . . . . . . . . . . . . Perodos anteriores de uma serie . . . . . . . . . . . . . . . . . Estrutura de um cromossoma no sistema GANNF . . . . . . . Valores mensais de passageiros de uma companhia aerea (serie 2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.11 Previs~oes de curto e longo prazo para a serie 2 . . . . . . . . .. 55 59 60 63 66 67 68 70 71. 6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8 6.9 6.10. x. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. 74 75.

(12) Lista de Tabelas 2.1 Amostra de uma serie temporal com primeiras e segundas diferencas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.1 Func~oes de activac~ao . . . . . . . . . . . . . . . . . . . . . . . 27 4.1 Exemplos de codigo gray . . . . . . . . . . . . . . . . . . . . . 43 6.1 Correlac~oes entre os varios criterios e o erro para a previs~ao de curto prazo . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2 Correlac~oes entre os varios criterios e o erro para a previs~ao de longo prazo . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3 Descric~ao das series utilizadas . . . . . . . . . . . . . . . . . . 6.4 Caractersticas das series utilizadas . . . . . . . . . . . . . . . 6.5 A rede optima para cada serie da Tabela 6.3 . . . . . . . . . . 6.6 Formulas de recorr^encia para os modelos ARIMA . . . . . . . 6.7 Comparac~ao entre as previs~oes de curto prazo obtidas pelo sistema GANN e as obtidas por outros metodos (usando o MQE como medida de erro) . . . . . . . . . . . . . . . . . . . 6.8 Comparac~ao entre as previs~oes de longo prazo obtidas pelo sistema GANN e as obtidas por outros metodos (usando o MQE como medida de erro) . . . . . . . . . . . . . . . . . . . 6.9 Conjunto de janelas temporais . . . . . . . . . . . . . . . . . . 6.10 A rede optima para cada uma das series estudadas . . . . . . xi. 57 58 64 65 69 70 71 72 73 74.

(13) 6.11 Comparac~ao entre as previs~oes de curto prazo obtidas pelo sistema GANNF e as obtidas por outros metodos (usando o MQE como medida de erro) . . . . . . . . . . . . . . . . . . . 76 6.12 Comparac~ao entre as previs~oes de longo prazo obtidas pelo sistema GANNF e as obtidas por outros metodos (usando o MQE como medida de erro) . . . . . . . . . . . . . . . . . . . 76. xii.

(14) Glossario AG. Algoritmo Genetico. AID. Analise Inteligente de Dados. CIA. Criterio da Informac~ao Akaike. CIB. Criterio da Informac~ao Bayesian. GANN. Genetic Algoritms and Neural Networks. IA. Intelig^encia Arti cial. MQE. Media do Quadrado dos Erros. PST. Previs~ao de Series Temporais. RNA. Rede Neuronal Arti cial. RPROP Resilent backPROPagation SQE. Soma do Quadrado dos Erros. xiii.

(15) Captulo 1 Introduc~ao 1.1 Motivac~ao Este trabalho situa-se na area cient ca da Intelig^encia Articial (IA), ou mais propriamente no domnio da Analise Inteligente de Dados (AID). A IA atende a construc~ao e manipulac~ao de entidades inteligentes, tendo como ultimo objectivo a clonagem do ser humano. Apesar de ser uma disciplina recente (foi formalmente iniciada em 1956), tem induzido desenvolvimentos signi cativos em diferentes areas de conhecimento, nomeadamente na compreens~ao da lngua natural, no raciocnio logico-matematico, na teoria dos jogos ou em sistemas de apoio a decis~ao. Mais e mais cientistas se movem em direcca~o a IA, onde encontram as ferramentas para sistematizar e automatizar os seus actos. De um modo similar, tambem os que trabalham na IA t^em vindo a aplicar as suas metodologias e ferramentas em outras areas do empreendimento intelectual. Neste sentido, a IA a gura-se como uma verdadeira disciplina universal RusNor95]. A Analise Inteligente de Dados (AID), com base na IA e na Estatstica, preocupa-se em desenvolver sistemas inteligentes ou de apoio a decis~ao, que auxiliem o cientista ou o simples utilizador na analise de dados. Tr^es factores, em particular, contriburam para o interesse na AID. Em primeiro lugar, o desenvolvimento da industria de semi-condutores permitiu disponibilizar artefactos com grande poder computacional e a um baixo custo. Em segundo lugar, ha que ter em conta o ritmo explosivo em que a acumulac~ao de 1.

(16) Captulo 1. Introdu c~ao dados se processa. Esta acumulac~ao de dados e uma consequ^encia directa da diminuica~o dos custos de armazenagem, de parceria com um elevado nvel de automac~ao e uso de novos dispositivos electronicos de recolha, em que pontuam os sensores. O terceiro factor projecta-se atraves da panoplia de ferramentas desenvolvidas pelas comunidades da IA, da Investigac~ao Operacional e/ou da Fsica, nomeadamente as extens~oes a programac~ao em logica, a logica fuzzy, o raciocnio probabilstico, as arvores de decis~ao, as redes neuronais e os algoritmos geneticos. Desta forma foi possvel a introduc~ao da AID em areas em que tradicionalmente os problemas eram abordados atraves do palpite e da intuic~ao DecFoc95].. 1.1.1 A Import^ancia da Previs~ao Hoje em dia assiste-se a uma mundializac~ao da economia, e por conseguinte a um acrescimo de concorr^encia entre as organizac~oes cujas estruturas, processos e tecnologias, se optimizados, lhes dar~ao vantagens competitivas Cor95]. Contudo, inovar num ambiente de incerteza pode ser desastroso, pelo que e natural pressupor que as organizaco~es est~ao interessadas em obter previs~oes fundamentadas sobre o seu futuro HanRei89]. Este desejo de compreender o passado e prever o futuro impulsiona a procura de leis que expliquem o comportamento de dados fenomenos ou acontecimentos. Se s~ao conhecidas equaco~es determinsticas que os explicam, ent~ao e possvel efectuar previs~oes, desde que conhecida a sua genese. No entanto, na aus^encia de regras que de nam o comportamento de um sistema, procura-se determinar o seu comportamento futuro a partir de observac~oes do passado WeiGer94].. 1.1.2 A Previs~ao de Series Temporais Uma das tecnicas em uso socorre-se da Previs~ao de Series Temporais (PST), que se baseia em observac~oes da variavel em estudo. A PST tem como objectivo prever o comportamento de sistemas e n~ao o seu funcionamento, que nos surge na forma de alisamento exponencial, decomposic~ao ou analise de regress~ao MakMcG78]WheMak80]. Este tipo de abordagem e e caz quando aplicada a series bem comportadas, tornando-se inadequada, contudo, quando estas apresentam rudo ou t^em componentes n~ao lineares, uma situac~ao 2.

(17) Captulo 1. Introdu c~ao deveras comum WeiGer94] (eg. tem-se a variac~ao dos precos do mercado bolsista ou o numero de manchas solares McC93]).. 1.1.3 Paradigmas Sub-simbolicos Nos ultimos anos, algoritmos de optimizac~ao com base em processos de selecc~ao natural, entre outros, t^em vindo a ser aplicados no domnio da IA. O estudo do comportamento de fenomenos como os processos de fundic~ao (annealing do ingl^es), o sistema nervoso central ou a evoluc~ao biologica, deu origem a ferramentas como o Simulated Annealing, as Redes Neuronais e a Computac~ao Evolucionaria. De entre estes, as Redes Neuronais Articiais (RNAs) e os Algoritmos Geneticos (AGs), impuseram-se como paradigmas em diferentes areas do conhecimento, revelando-se como umas das mais populares e efectivas ferramentas RusNor95]SanNev95].. 1.1.4 Redes Neuronais Arti ciais As Redes Neuronais Articiais (RNAs) s~ao modelos conexionistas com a capacidade de aprender a partir do conhecimento de situaco~es passadas, dando resposta a novas situac~oes, especialmente em problemas com uma forte componente de rudo e/ou informac~ao incompleta Pre94]. Esta e a raz~ao principal das vantagens comparativas que alcancaram em areas t~ao distintas como os sistemas periciais, a ltragem de dados, a vis~ao por computador ou o planeamento Gal93]NevCor97b]. Uma nova area cient ca parece emergir do uso de RNAs na AID como maquinas de aprendizagem, face ao enorme conjunto de aplicac~oes para a extracc~ao de conhecimento, como os sistemas periciais, os sistemas de apoio. a decis~ao e de diagonostico, de analise de sensibilidade ou a PST, envolvendo um variado conjunto de domnios, que se estendem desde o sector bancario, nanceiro, qumico, militar ate ao de engenharia DecFoc95]. Trata-se da procura de descric~oes matematicas ou logico-matematicas, eventualmente de natureza complexa, sobre padr~oes e regularidades em conjuntos de dados GarNev91]NevGar91]. Em particular, a emerg^encia das RNAs, a partir da decada de oitenta, 3.

(18) Captulo 1. Introdu c~ao veio dar um novo f^olego ao campo da PST, multiplicando as suas capacidades de previs~ao em series complexas, como as dos mercados nanceiros Azo95]. Porem, as RNAs n~ao podem ser vistas como a soluc~ao universal para todos os problemas RusNor95]. De facto, uma das di culdades que resulta do uso de RNAs para a resoluc~ao de problemas reside no tempo dispendido com a procura do melhor tipo de rede ou topologia. Uma outra di culdade tem a ver com a melhor forma de alimentar os dados a uma rede, num processo que se designa de pre-processamento, com recurso a tecnicas de normalizac~ao e ltragem dos dados.. 1.1.5 Algoritmos Geneticos Os Algoritmos Geneticos (AGs) s~ao exemplos de maquinas de aprendizagem, que se baseiam em processos de selecc~ao natural. Os AGs assumem-se como procedimentos de optimizac~ao, passveis de serem aplicados a panoplia de par^ametros que fazem a soluc~ao de um problema, gerando variantes que, atraves de competic~ao, podem convergir para uma melhor soluc~ao. Assim, embora os AGs usem processos estocasticos, os resultados obtidos s~ao claramente superiores aos conseguidos por procura aleatoria Gol89]. Os AGs s~ao normalmente utilizados em problemas de natureza combinatoria, onde a procura de soluc~oes exige esforcos computacionais demasiado severos Muh93].. 1.1.6 Os Sistemas GANN Uma via que tem vindo a ser usada para tornear este ultimo problema, ou seja, a minimizaca~o do esforco computacional, centra-se no uso de AGs para procurar os par^ametros optimos da rede neuronal, no espaco vectorial que nos da as soluc~oes possveis para o problema em equac~ao RusNor95]. Atraves desta associac~ao de AGs com RNAs, chamada de sistema GANN, procura-se maximizar as vantagens de cada metodo Koe94]. Neste tipo de sistemas, a aprendizagem da rede neuronal guia a procura evolucionaria da melhor rede. Estudos empricos evidenciam que os sistemas GANN ultrapassam quer as redes neuronais, quer os algoritmos geneticos na procura de uma soluc~ao Kit90]Whi93]. 4.

(19) Captulo 1. Introdu c~ao. 1.2 Objectivos Pretende-se nesta dissertac~ao: fazer um apanhado do que foi feito em termos de investigac~ao nesta area i.e., no uso de alternativas n~ao convencionais para a PST, com especial relevo para as RNAs estudar a melhor forma de utilizar RNAs para a PST, em termos de topologia da rede, do seu treino, das func~oes de activac~ao, da normalizac~ao de dados e das tecnicas de ltragem explorar a combinac~ao de AGs com RNAs tendo em vista a sua aplicac~ao na PST desenvolver um sistema computacional que integre o pre-processamento de dados, os AGs, e as RNAs de um modo racional, permitindo realizar de forma automatica a PST analisar os resultados obtidos pelo sistema para series temporais reais de diferentes tipos comparar os resultados obtidos com os conseguidos a partir de tecnicas convencionais.. 1.3 Organizac~ao A dissertac~ao encontra-se estruturada em sete captulos, passveis de um agrupamento i.e., no que vai do Captulo 2 ate ao Captulo 5 estabelece-se a ligac~ao do trabalho aqui realizado com outros trabalhos ja feitos, assim como se da uma perspectiva do estado da investigac~ao na area. Nos Captulos 6 e 7 descreve-se o trabalho que foi desenvolvido. O Captulo 2 trata a PST. E evidenciada a import^ancia desta tecnica para as organizac~oes e descrevem-se sucintamente os metodos de previs~ao mais utilizados. As RNAs s~ao introduzidas no Captulo 3, expondo-se as raz~oes porque t^em sido objecto de estudo por parte da comunidade cient ca. E descrito 5.

(20) Captulo 1. Introdu c~ao o que e uma RNA, quais as suas propriedades, que tipos de RNAs existem, como se processa o treino, e em que consiste o pre-processamento dos dados. Finalmente, e apresentado o problema do fenomeno de overtting, assim como tecnicas para o evitar. No Captulo 4 e feita menc~ao a computac~ao evolucionaria, aos AGs, a s vantagens comparativas sobre outros metodos e ao seu modo de funcionamento. S~ao tambem apresentadas formas de combinar os AGs com as RNAs. O Captulo 5 apresenta o estado da arte na area: o que tem sido feito e que tecnicas n~ao convencionais t^em sido utilizadas. O sistema desenvolvido e descrito no Captulo 6, sendo a apresentadas as estrategias e opc~oes tomadas, as experi^encias efectuadas, a arquitectura do sistema, as series utilizadas e os resultados obtidos. Tambem e descrito um sistema de ltragem de dados, sendo analisadas as suas implicaco~es no desempenho do sistema. Por ultimo, no Captulo 7, s~ao apresentadas as conclus~oes, sendo apontadas direcc~oes para trabalho futuro.. 6.

(21) Captulo 2 A Previs~ao de Series Temporais 2.1 O Papel da Previs~ao nas Organizac~oes Nos ultimos anos uma certa ^enfase tem sido colocada no melhoramento dos processos de tomada de decis~ao, e isto quer no que respeita ao mundo empresarial, quer ao universo da poltica i.e., quando os metodos de gest~ao de ha vinte ou trinta anos atras eram baseados nos sentidos e intuic~ao do gestor ou poltico, no presente tal arquetipo n~ao e mais aplicavel. No seu lugar apareceram outras tecnicas de tomada de decis~ao, nomeadamente as oriundas de disciplinas como a Investigac~ao Operacional, a Estatstica, a Informatica ou Prncipios de Desenho Organizacional WheMak80]. As empresas, n~ao raras vezes a contragosto, t^em que fazer opc~oes. Ora, um ponto importante da tomada de decis~oes e a capacidade de prever as circunst^ancias que as rodeiam, pelo que e natural que estejam interessadas em obter previs~oes fundamentadas, da evoluc~ao no tempo, das variaveis que determinam o sucesso ou insucesso de determinada opc~ao i.e, procura-se, deste modo, calcular os riscos que est~ao associados a tomada de decis~oes HanRei89]. O recurso a previs~ao e comum nas organizac~oes, em areas como o marketing ou produc~ao porem, e nas areas nanceira e contabilstica que o seu uso tem sido mais intenso. As empresas n~ao devem, no entanto, encarar a previs~ao como uma profecia, mas sim como a melhor maneira de extrapolar as relac~oes existentes nos dados, para fazer previs~oes. Os erros de previs~ao 7.

(22) Captulo 2. A Previs~ao de Series Temporais s~ao, como e evidente, inevitaveis, tendo-se como objectivo minimiza-los.. 2.2 Metodos de Previs~ao Como consequ^encia natural do processo de tomada de decis~oes, as tecnicas para a extrapolac~ao de conhecimento t^em sido estudadas exaustivamente, e metodos mais objectivos e aveis foram sendo desenvolvidos. Estes metodos variam conforme o grau de so sticac~ao e ns a que se destinam, sendo divididos em duas classes: metodos qualitativos e metodos quantitativos. Os primeiros s~ao baseados na intuica~o, e utilizados quando n~ao se disp~oe de informac~ao sobre o passado. Os segundos, mais comuns, passam pelo processamento da informac~ao disponvel HanRei89]. Os metodos quantitativos s~ao mais e cazes e a sua aceitac~ao generalizada e uma consequ^encia proxima do uso macico de computadores. Estes s~ao uteis n~ao so pelo seu poder de calculo mas tambem pela sua capacidade de armazenagem de dados WheMak80].. 2.3 O Horizonte Temporal O perodo de tempo durante o qual se pretende que prevaleca uma dada tomada de decis~ao afecta, naturalmente, o processo de selecc~ao do metodo de previs~ao. As previs~oes s~ao feitas normalmente com um ou dois perodos de avanco. Os horizontes temporais podem ser classi cados de curto, medio e longo prazo. Os primeiros, ate tr^es perodos, s~ao muito usados para decis~oes de gest~ao corrente (eg. na gest~ao de stocks), enquanto que as previs~oes de medio prazo (de tr^es meses a um ano) e longo prazo (mais de dois anos) s~ao usadas em planeamento (eg. em medicina preventiva).. 2.4 Etapas da Previs~ao Todos os metodos de previs~ao partem do princpio de que as experi^encias do passado ser~ao usadas no futuro. Assume-se, assim, que as condic~oes que condicionaram o passado ser~ao validas no futuro. A previs~ao envolve quatro 8.

(23) Captulo 2. A Previs~ao de Series Temporais etapas: a recolha de dados historicos, a condensac~ao ou reduc~ao dos dados, a construc~ao do modelo de previs~ao, e a extrapolac~ao a partir desse modelo HanRei89]. A primeira etapa exige um particular cuidado na leitura dos dados do problema em equac~ao de forma a se evitarem distorc~oes. A etapa seguinte, condensac~ao, consiste em determinar os dados relevantes para o problema em equaca~o (eg. pode-se estar apenas interessado em prever o volume de vendas de um produto a partir da abertura de loja nova, situac~ao esta em que os dados de vendas anteriores n~ao s~ao relevantes). A tarefa seguinte, a construc~ao do modelo de previs~ao, envolve um ajustamento dos dados a um modelo de previs~ao, de forma a minimizar o erro. E importante que o modelo seja o mais simples possvel, de modo a que tenha uma boa aceitac~ao por parte dos utilizadores. Uma vez de nido o modelo segue-se a ultima etapa, extrapolar do modelo a previs~ao para perodos futuros. Neste trabalho apenas s~ao consideradas as duas ultimas etapas do processo, partindo-se do princpio que a recolha e condensac~ao dos dados foi realizada de forma correcta.. 2.5 Medida do Erro da Previs~ao Como ja foi referido, as previs~oes est~ao sujeitas a erros, que se procuram minimizar. Porem, para que tal seja possvel, e necessario o recurso a uma metrica. Sendo o erro numa previs~ao dado por. ei = xi ; Pi em que xi denota o valor da variavel em estudo, e Pi o valor previsto para a mesma, a medida que o metodo de previs~ao e aplicado, uma sequ^encia de valores de erro e obtida HanRei89]. Para se avaliar a e cacia da previs~ao, torna-se necessario analisar esta serie, existindo varias formas de o fazer. Uma das mais utilizadas (e que sera usada neste trabalho) utiliza a Media (M) da pot^encia de exponente dois do erro, ou seja. M=. Pn. 2 i=1 ei. n. em que n e o numero de previs~oes. 9.

(24) Captulo 2. A Previs~ao de Series Temporais. 2.6 Modelos de Previs~ao Existem dois tipos base de modelos de previs~ao que se complementam e que partem de diferentes premissas, a saber: os Modelos de Regress~ao e os Modelos de Series Temporais HanRei89].. 2.6.1 Modelos de Regress~ao Os Modelos de Regress~ao (ou causais) assumem que existe entre a variavel a prever, y, e uma ou mais das variaveis independentes, x1, ...,xn, uma relac~ao de causa-efeito. Como primeira tarefa ha ent~ao que descobrir essa relac~ao, atraves da analise dos valores da variavel dependente ao longo do tempo i.e., construdo o modelo e, sendo conhecidos os valores para as variaveis independentes, o valor da variavel dependente e-nos dado por. y = f (x1 :::: xn) Este tipo de modelos e bastante usado na tomada de decis~oes, de que s~ao exemplos a mudanca de preco ou o incremento de produc~ao de um produto.. 2.6.2 Modelos de Series Temporais Uma serie temporal da-nos a sequ^encia de observac~oes sobre uma variavel em particular, ordenadas cronologicamente TanFis91] (Figura 2.1). O proposito da Previs~ao de Series Temporais (PST) consiste em detectar padr~oes nas observaco~es do passado de modo a extrapolar para o futuro PapGot93]. Os modelos de PST tratam o sistema como se de uma caixa negra se tratasse, n~ao tendo como objectivo determinar os factores que afectam o seu comportamento. Existem, porventura, algumas raz~oes para esta postura. A primeira deve-se ao facto de o sistema n~ao ser perfeitamente determinado, sendo difcil identi car as relac~oes de causa-efeito em jogo. A segunda reside no facto de se desejar prever o que acontece e n~ao como acontece i.e., existem series temporais reais impossveis de axiomatizar, tangveis a previs~ao (eg. a previs~ao da ocorr^encia de manchas solares ou a previs~ao do comportamento do mercado de acc~oes McC93]). 10.

(25) Captulo 2. A Previs~ao de Series Temporais Previsões Valor Observado Período. x1 x2 x3 1. 2. x t Pt+1 Pt+2 t. 3. t+1 t+2. Tempo Presente. Figura 2.1: Estrutura de uma serie temporal. 2.7 Metodos de PST. Ao longo das ultimas decadas varios tipos de metodos quantitativos para a PST foram desenvolvidos, nomeadamente o Alisamento Exponencial, os Metodos de Decomposic~ao ou a Analise de Regress~ao WheMak80]. De entre estes, importa destacar o metodo de Holt-Winters e a metodologia ARIMA, que ser~ao descritos com pormenor seguidamente.. 2.7.1 O Metodo de Holt-Winters Um dos metodos de Alisamento Exponencial mais em voga e o Holt-Winters, que se centra em determinadas caractersticas da serie, como seja a exist^encia de factores de tend^encia ou sazonalidade HanRei89]. E vantajoso por ser simples de usar, requerer pouco esforco computacional, e ser bastante e caz em previs~oes de curto prazo, em particular com series sazonais. O modelo base obedece ao clausulado: Pt =  Sx; + (1 ; )(Pt;1 + Tt;1) Tt =  (Pt ; Pt;1) + (1 ;  )Tt;1 St =  Px + (1 ;  )St;k t. t. k. t. t. em que Pt representa o Alisamento Exponencial para o perodo t (equivalente. a previs~ao para o mesmo perodo), Tt a estimativa para a tend^encia, St a estimativa sazonal, xt a serie temporal e k o factor sazonal. Previs~oes a longo prazo s~ao efectuadas de acordo com a formula recorrente Pt+l = (Pt + lTt)St;k+l 11.

(26) Captulo 2. A Previs~ao de Series Temporais para uma previs~ao de l perodos a frente de t. Este metodo exige que certos par^ametros sejam inicialmente avaliados, nomeadamente as estimativas sazonais. Subsiste, contudo, um problema, ou seja, o calculo dos par^ametros ,  e  . Ora, ou se usam os valores de  = 0 2,  = 0 2 e  = 0 6, ou ent~ao procura-se estimar estes par^ametros, atraves de um processo de trial and error, em que a minimizac~ao do erro e o objectivo perseguido HanRei89].. 2.7.2 A Metodologia ARIMA Outro metodo e o de Box-Jenkins, chamado ARIMA, sendo um dos mais populares para a PST BoxJen76]. Trata-se de um metodo so sticado e generalista, que se baseia na sntese de padr~oes a partir de dados historicos, exigindo a caracterizac~ao formal do sistema em equac~ao (obtenc~ao de um modelo), estimac~ao dos par^ametros a ele associados e a sua posterior validac~ao. Tem como vantagem principal o facto de ser bastante preciso em previs~oes de curto prazo. No entanto torna-se d cil conciliar os par^ametros com o modelo inicialmente criado a medida que novos dados s~ao adquiridos i.e., o modelo tem de ser periodicamente revisto ou, pior ainda, um novo modelo criado. Por outro lado, a construc~ao de um modelo exige o uso de um especialista, sendo tambem mais exigente em termos computacionais que os metodos de alisamento. Os modelos s~ao criados a partir de uma combinac~ao linear nita de alguns valores passados da serie (componente AR do modelo ARIMA). Conforme o tipo de modelo, podera existir, isoladamente ou em conjunto com o componente anterior, uma combinac~ao linear nita dos erros passados (componente MA do modelo ARIMA) i.e., diferencas entre os valores previstos pelo modelo ARIMA e os valores da serie. Assim, o modelo geral, conhecido por ARMA(M N ), obedece ao clausulado WeiGer94]. xt =. M X m=1. amxt;m +. N X n=0. bnet;n. em que xt representa a serie temporal e et o erro.. 12.

(27) Captulo 2. A Previs~ao de Series Temporais. 2.7.3 A Selec c~ao do Metodo Apropriado A escolha do metodo (ideal) de previs~ao para uma dada serie n~ao e um processo simples. McNees McN82] e de opini~ao que n~ao existe um unico modelo de previs~ao que se possa assumir primus inter pares, no que e secundado por Zarnowitz Zar84]. Em particular, chegou-se a conclus~ao de que um aumento de complexidade e so sticac~ao estatstica, n~ao implica necessariamente um melhoramento na e cacia da previs~ao. Isto indicia que podem existir situac~oes onde metodos simples podem ser aplicados com sucesso, e a baixo custo i.e., a escolha do metodo ira depender da situac~ao espec ca a ser estudada, do horizonte temporal a prever, e da organizac~ao envolvida. Whellwright e Makridakis WheMak80] aconselham as organizac~oes, que porventura n~ao queiram ser pioneiras, a utilizac~ao de metodos de Alisamento Exponencial, em particular com series de periodicidade mensal.. 2.7.4 Uso de Redes Neuronais Os modelos referidos ate ao momento, modelos convencionais, requerem que um conjunto bem de nido de factores seja conhecido a partida. Porem, n~ao raras vezes, estes factores s~ao difceis de ser quanti cados, pelo que uma abordagem alternativa e promissora, que tem vindo a ser desenvolvida, passa pelo uso de redes neuronais, e por duas boas raz~oes PapGot93]: em primeiro lugar, as redes neuronais conseguem extrapolar padr~oes a partir dos dados existentes, sendo bastante imunes a rudo em segundo lugar, as redes neuronais adaptam o seu comportamento a medida que novos dados s~ao introduzidos, sem necessidade de alterar a sua estrutura.. 2.8 Decomposic~ao de Series Temporais O processo de identi cac~ao dos factores que in uenciam os valores de uma serie temporal e denominado de decomposic~ao HanRei89], tendo sido identi cados quatro factores principais que in uenciam de forma sustentada o seu comportamento WheMak80]: a Tend^encia (T), o Ciclo (C), a Sazonalidade (S) e a Aletorieadade (A), ou seja. Y = T C S A 13.

(28) Captulo 2. A Previs~ao de Series Temporais onde Y representa o valor da serie temporal.. 2.8.1 Tend^encia A Tend^encia da-nos uma medida do crescimento ou declnio dos valores de uma serie. Uma serie que possua este tipo de comportamento e chamada de n~ao estacionaria. Na Figura 2.2 representa-se uma serie n~ao estacionaria tpica. Varias forcas se conjugam para que esta componente seja comum em situac~oes que t^em a ver com o estudo da in ac~ao, das mudancas tecnologicas, do crescimento da populac~ao ou dos aumentos de produtividade. Y. Tempo. Figura 2.2: Serie temporal n~ao estacionaria. 2.8.2 Ciclo Este padr~ao e tangvel em situac~oes em que os dados apresentam oscilac~oes periodicas, de que s~ao exemplos as series construdas com base em dados que descrevem a procura de produtos agrcolas, a venda de automoveis ou a evoluc~ao de indicadores macro-economicos (Figura 2.3).. 14.

(29) Captulo 2. A Previs~ao de Series Temporais Y. Tempo. Figura 2.3: Serie temporal cclica. 2.8.3 Sazonalidade Este tipo de utuac~ao e tpico de series periodicas. Estes perodos, mais curtos do que o ciclo (normalmente de tr^es a cinco anos), medem-se em semanas ou meses. O padr~ao repete-se, ao longo do tempo, apos cada k perodos, sendo k o factor sazonal. Esta situac~ao e comum, por exemplo, na comercializac~ao de produtos que dependem do clima ou simplesmente de produtos que se vendem em determinados perodos do ano, como por exemplo no Natal. A Figura 2.4 representa uma serie sazonal com um perodo de sazonalidade de quatro, correspondendo as quatro estac~oes do ano.. 2.8.4 Aleatoriedade Esta componente representa a parte da serie que n~ao e previsvel, ou seja, a parte que n~ao e explicada, o rudo. E devido a exist^encia desta componente que as previs~oes n~ao s~ao correctas a 100%.. 15.

(30) Captulo 2. A Previs~ao de Series Temporais Y. 1979. 1980. 1981. Tempo. Figura 2.4: Serie temporal com factor estac~ao. 2.9 Coe ciente de Autocorrelac~ao O coeciente de autocorrelac~ao e um indicador que ajuda na analise de series temporais. E de nido como a correlac~ao entre a serie e ela propria (da o termo auto), deslocada de k perodos de tempo BoxJen76]: Pn;k (x ; x)(x ; x) t+k rk = t=1 Pnt x) t=1 (xt ;. onde x1 x2 ::: xn representam os valores da serie temporal e x a sua media.. 2.10 Veri cac~ao da Aleatoriedade As autocorrelac~oes s~ao aplicadas na determinac~ao da aleatoriedade de uma serie. Uma serie diz-se aleatoria se os seus termos obedecem a decomposic~ao: uma media constante  e um erro et, o qual e independente de perodo para perodo de tempo, ou seja MakMcG78]. xt =  + et Uma forma pratica de se detectar uma serie aleatoria passa pelo exame das autocorrelac~oes para os diversos deslocamentos k. Teoricamente todas as autocorrelac~oes de uma serie aleatoria deveriam ser nulas. Isto pressupunha, 16.

(31) Captulo 2. A Previs~ao de Series Temporais todavia, uma amostra de tamanho in nito. Porem, se se construirem amostras de n numeros aleatorios, e se considerarmos k como a autocorrelac~ao da populac~ao de onde s~ao retiradas essas amostras, prova-se que os coe cientes das amostras seguem uma distribuic~ao normal de media k e vari^ancia p1n . Ora esta informaca~o e usada na criac~ao de um teste estatstico para se determinar se uma dada serie e ou n~ao aleatoria i.e., devido a s caractersticas da distribuic~ao normal, pode-se dizer que uma serie e aleatoria se todas as suas autocorrelac~oes est~ao no intervalo (Figura 2.5) MakMcG78] 1 1 ;1 96  p  rk  1 96  p n n para um grau de con anca de 95%. 1 0,8 0,6 0,4 0,2 0 -0,2 -0,4 -0,6 -0,8 -1. rk. k. Figura 2.5: Autocorrelac~oes de uma serie aleatoria. 2.11 Identi cac~ao da Tend^encia Uma analise do gra co de uma serie e, por vezes, o su ciente para determinar se a serie e ou n~ao estacionaria. De facto, para uma serie n~ao estacionaria, o gra co que da os valores da variavel a prever em func~ao do tempo, apresenta sempre com um declive acentuado (Figura 2.2). Uma outra via, mais e caz, para determinar se uma serie e ou n~ao estacionaria, consiste numa analise das autocorrelac~oes da serie MakMcG78]. 17.

(32) Captulo 2. A Previs~ao de Series Temporais Assim, uma serie estacionaria caracteriza-se pelo facto de as suas autocorrelac~oes possurem um padr~ao distinto, com valores proximos de zero a partir de k igual a tr^es ou quatro, enquanto que nas series n~ao estacionarias as autocorrelac~oes s~ao diferentes de zero (Figura 2.6). 1 0,8 0,6 0,4 0,2 0 -0,2 -0,4 -0,6 -0,8 -1. rk. k. 1 0,8 0,6 0,4 0,2 0 -0,2 -0,4 -0,6 -0,8 -1. rk. k. Figura 2.6: Autocorrelac~oes de uma serie com e sem tend^encia. 2.12 Remoc~ao da Tend^encia A exist^encia de tend^encia numa serie leva a que este padr~ao se sobreponha a todos os restantes padr~oes da serie. Alem disso, muitos dos metodos existentes para a PST t^em como condic~ao essencial a estacionariedade da serie. Devido a estas limitac~oes, foi desenvolvido um metodo para eliminar da serie a sua tend^encia, a que se chama de diferenciac~ao MakMcG78] diferenciar uma serie passa por se criar uma nova serie, cujos elementos s~ao dados pela diferenca entre valores da serie inicial, tomados de perodos consecutivos, ou seja x0t = xt ; xt;1 A nova serie tera n ; 1 elementos e sera estacionaria se a tend^encia na serie original for de primeira ordem (linear). Se tal n~ao acontecer, repete-se o processo, agora tomando como serie original a serie diferenciada, obtendo-se assim uma diferenca de segunda ordem da serie inicial. Na Figura 2.7 d~ao-se as autocorrelaco~es para os dados da Tabela 2.1 antes da serie ser diferenciada, assim como apos uma primeira e segunda diferenciac~oes. O 18.

(33) Captulo 2. A Previs~ao de Series Temporais processo poderia continuar ate a estacionariedade ser atingida todavia, em series reais, raramente e necessario passar-se para alem da segunda diferenca. Tabela 2.1: Amostra de uma serie temporal com primeiras e segundas diferencas. Primeiras Segundas Perodo Serie Diferen cas Diferencas 1 2 3 4 5 6 7 8 9 10 11 12. 2,44 5,3 8,97 13,88 19,58 26,99 35,95 45,86 55,7 67,36 79,63 92,13. 2,86 3,67 4,91 5,7 7,41 8,96 9,91 9,84 11,66 12,27 12,5. 0,81 1,24 0,79 1,71 1,55 0,95 -0,07 1,82 0,61 0,23. 2.13 Identi cac~ao da Sazonalidade A sazonalidade de ne-se como o padr~ao que se repete a si proprio em intervalos xos de tempo HanRei89]. E comum em series de periodicidade mensal, de que s~ao exemplos as vendas de produtos sazonais, sejam estes gelados ou guarda-chuvas. Nestes casos e de esperar uma forte tend^encia sazonal, a qual se re ecte no valor das autocorrelac~oes i.e., se uma serie se apresenta com um valor da autocorrelac~ao que seja expressivo para k perodos, ent~ao e de esperar valores signi cativos para as autocorrelac~oes com deslocamentos de k perodos. Por exemplo, para o caso das series referidas em epgrafe, sera de esperar um valor elevado para a autocorrelac~ao com um deslocamento de doze perodos. Para series estacionarias, o padr~ao de sazonalidade pode ent~ao ser encontrado, conhecidos que sejam as autocorrelac~oes (as mais signi cativas) para valores de k superiores a tr^es MakMcG78]. Na Figura 2.8 indicam-se as 19.

(34) Captulo 2. A Previs~ao de Series Temporais. 1 0,8 0,6 0,4 0,2 0 -0,2 -0,4 -0,6 -0,8 -1. rk. 1 0,8 0,6 0,4 0,2 k 0 -0,2 -0,4 -0,6 -0,8 -1. rk. rk. 1 0,8 0,6 0,4 0,2 k 0 -0,2 -0,4 -0,6 -0,8 -1. k. Figura 2.7: Autocorrelac~oes de uma serie e das suas diferencas de primeira e segunda ordem autocorrelac~oes de uma serie com um padr~ao de sazonalidade trimestral, em que e notorio o valor elevado da autocorrelac~ao para k = 4 e seus multiplos. Isto representa um comportamento tpico das series sazonais. 1 0,8 0,6 0,4 0,2 0 -0,2 -0,4 -0,6 -0,8 -1. rk. k. Figura 2.8: Autocorrelac~oes de uma serie com factor estac~ao de 4 Quando a serie n~ao e estacionaria dois tipos de padr~oes v~ao sobrepor-se, podendo levar a que a identi cac~ao do padr~ao sazonal se torne mais complexa (Figura 2.9). Se a tend^encia for muito forte e a sazonalidade for fraca, pode mesmo tornar-se impossvel esta identi cac~ao. Para contornar este problema, uma das melhores soluc~oes e diferenciar os 20.

(35) Captulo 2. A Previs~ao de Series Temporais dados ate se obter uma serie estacionaria, procurando-se depois nesta algum tipo de padr~ao sazonal. 1 0,8 0,6 0,4 0,2 0 -0,2 -0,4 -0,6 -0,8 -1. rk. k. Figura 2.9: Autocorrelac~oes de uma serie sazonal n~ao estacionaria. 21.

(36) Captulo 3 Redes Neuronais 3.1 O Movimento Conexionista Uma rede neuronal e o arquetipo tipo utilizado por biologos e a ns, na tentativa de simular e modelar os processos cognitivos da mente. Para destinguir entre o modelo natural (cerebro) e o arti cial (rede), e utilizado o termo Rede Neuronal Articial (RNA) para este ultimo. O grande interesse no uso de RNAs desenvolveu-se a partir do meio da decada de oitenta, quando se re-inventou o algoritmo de treino de backpropagation RusNor95]. Desde ent~ao as RNAs s~ao objecto de atenc~ao por parte da comunidade cient ca e usadas na pratica. Este ressurgimento tambem se deve ao facto das RNAs se a rmarem como ferramentas poderosas no reconhecimento de padr~oes, ultrapassando outras tecnicas, quer em abilidade, quer em velocidade de processamento Azo95]. Este movimento conexionista surgiu dentro da IA como uma reacc~ao aos modelos simbolicos, considerados demasiado rgidos e especializados i.e., esperava-se deste novo paradigma a criac~ao de sistemas de aprendizagem mais exveis e universais. Contudo, depois de um grande entusiasmo inicial com o modelo conexionista, caminha-se para uma integraca~o de ambos os paradigmas Min90]CorNev96a].. 22.

(37) Captulo 3. Redes Neuronais. 3.2 O que e uma Rede Neuronal Arti cial? Uma RNA implementa um procedimento que relaciona de algum modo informac~ao a entrada com informac~ao (desejada) a sada. As tarefas associadas. as RNAs podem, por conseguinte, ser divididas em diferentes tipos, nomeadamente de :. Classi cac~ao i.e., para determinar a que categoria pertence um dado. padr~ao de entrada Associac~ao i.e., para actuar como uma memoria enderecavel, que associa a um dado valor de sada um dado valor de entrada Codi cac~ao i.e., para compactar uma entrada, pela produc~ao de uma sada com uma dimens~ao reduzida. A tarefa oposta, descompactac~ao, tambem se reveste de interesse. Por outro lado, devido a uma grande estrutura de conectividade, as RNAs t^em propriedades unicas, que n~ao se encontram nas tecnicas de processamento ditas tradicionais, a saber TanFis91]Azo95]: robustez na manipulaca~o de diferentes tipos de dados degradaca~o suave (permitindo processar rudo ou informac~ao incompleta) capacidade de generalizac~ao e aprendizagem (responder a novas situac~oes com base nos dados existentes) exibilidade (com um grande domnio de aplicabilidade) modelac~ao n~ao linear dos dados adaptac~ao face a alterac~oes. Uma outra propriedade das RNAs e a transpar^encia, uma vez que podem ser vistas como uma caixa negra, em que a sada e uma func~ao desconhecida Gal93]. Em princpio, as redes neuronais podem imitar qualquer func~ao computavel i.e., qualquer func~ao que um normal computador digital pode 23.

(38) Captulo 3. Redes Neuronais calcular, especialmente aquelas que possam ser representadas por uma correspond^encia entre vectores espaciais. As RNAs parecem atingir o seu melhor em problemas de classi cac~ao ou associac~ao, em que e necessario um certo grau de toler^ancia para certos erros, em que ha muita informac~ao, e aos quais n~ao se podem aplicar outros procedimentos Pre94]. Hoje em dia procuram-se n~ao so melhores redes como redes mais e cientes, melhores algoritmos de treino e melhores func~oes de transfer^encia ShaRam96]. Por outro lado, espera-se que a aplicac~ao de RNAs a outras areas do conhecimento se generalize, seja a Economia, ao Processamento de Sinal, a Vis~ao por Computador, a Robotica, a Automac~ao ou aos Sistemas Periciais, para alem da Estatstica KemMar92]FarCha95]. Neste domnio temos a estimac~ao n~ao parametrica, a aprendizagem por agentes economicos e a modelac~ao de series temporais ShaRam96]CorNev95].. 3.3 Estrutura de uma Rede Neuronal Arti cial Uma Rede Neuronal Articial (RNA) (modelo conexionista) e, de uma forma simples, um conjunto de unidades computacionais, chamadas de celulas (ou nodos), com uma alguma memoria local, e um conjunto de conex~oes (ou ligac~oes) unindo essas celulas Gal93] (Figura 3.1). Estas conex~oes t^em a si associados valores numericos aos quais se da o nome de pesos. De tempos em tempos cada unidade examina as suas entradas e a partir destas, calcula um valor numerico chamado de activac~ao. Este valor de activac~ao e ent~ao passado ao longo das conex~oes, que levam a outras celulas. Existem inumeros tipos de arquitecturas de RNAs ou topologias, cada um com as suas proprias potencialidades ou sen~aos. A grande distinc~ao e feita entre redes recorrentes e feedforward. Numa rede recorrente as conex~oes podem ser feitas entre quaisquer nodos (Figura 3.1), enquanto que numa rede feedforward as conex~oes s~ao unidireccionais, n~ao existindo realimentac~ao, sendo assim formada por camadas (Figura 3.2) RusNor95]. As ultimas s~ao as redes mais vulgarizadas e mais utilizadas TanFis91]. Numa RNA podem-se encontrar tr^es tipos de celulas: celulas de entrada, cujo valor de sada e xado externamente celulas de sada, que devolvem a sada da rede e nalmente, as celulas intermedias, que n~ao s~ao de entrada 24.

(39) Captulo 3. Redes Neuronais Camada de Entrada. Camada Intermédia. Camada de Saída. i. si. w i,j. j. Figura 3.1: Estrutura de uma RNA recorrente nem de sada Gal93]. As redes com uma ou mais camadas intermedias s~ao chamadas de redes multi-camada. Esta provado que uma RNA com uma camada intermedia pode representar uma qualquer func~ao contnua, e que com duas camadas intermedias ate func~oes descontnuas podem ser representadas RusNor95]. As RNAs com apenas uma camada intermedia respondem pela maioria das aplicac~oes, enquanto que RNAs com mais de duas camadas intermedias raramente s~ao usadas, devido a problemas de desempenho. Uma RNA completamente interligada caracteriza-se por estabelecer todas as ligac~oes possveis entre os nodos de duas camadas. Como exemplos deste tipo de rede temos as redes das Figuras 3.1 e 3.2. Por vezes existem ligac~oes directas entre as entradas e os neuronios de sada (Figura 3.1). Estas conex~oes designam-se por atalhos Pre94]. Por convenc~ao existe ainda uma celula especial, cuja sada e sempre 1 (um), e que esta ligada a todas as celulas o peso desta ligac~ao e chamado de bias Gal93]. E importante mencionar-se que parece n~ao existir nenhum procedimento para a obtenca~o da melhor topologia de rede, quando apenas se considera o numero de entradas e sadas desta, pelo que o numero de casos para treino e a complexidade do problema em quest~ao ser~ao determinantes para a sua caracterizac~ao. 25.

(40) Captulo 3. Redes Neuronais Camada de Entrada. Camada Intermédia. Camada de Saída. i. si. wi,j. j. Figura 3.2: Estrutura de uma RNA feedforward. 3.4 Activac~ao e Func~oes de Activac~ao Como ja se viu, cada celula calcula a sua activac~ao (ou energia de activac~ao), a partir dos valores das sadas das celulas que se lhe ligam e dos pesos associados as respectivas conex~oes. Representando a energia de activac~ao da celula i por si, e da celula j por sj , segue-se que (Figura 3.3):. ui = Pnj=0 wi j  sj si = f (ui) onde wi j representa o peso associado a ligac~ao entre o nodo j e o nodo i. A func~ao f e chamada de func~ao de activac~ao. Os valores da energia de activaca~o podem ser discretos (tomando normalmente os valores ;1, 0 ou 1) ou contnuos. No caso dos valores da energia de activaca~o serem contnuos, f e normalmente uma func~ao n~ao linear, limitada e diferenciavel por trocos. Neste trabalho ser~ao utilizadas as func~oes da Tabela 3.1 Azo95].. 26.

(41) '. Captulo 3. Redes Neuronais +1 Z bias s1 ZZZZ s2 ZZZZZZ ~. nodo i. ZZ ZZ ... ZZ~ ~ ui = Pnj=0 wi j sj - Sada = f (ui) Z. &. *   sn . Figura 3.3: Activac~ao de uma celula. $ - si. %. Tabela 3.1: Func~oes de activac~ao Nome Func~ao f (x) Contradomnio linear x ] ; 1 +1 1 sigmoid 0 1] 1+e(;x) 2 sigmoid1 1+e(;x) ; 1 ;1 1] x sigmoid2 ;1 1] 1+jxj tanh tanh(x) ;1 1] sin sin(x mod 2) ;1 1] cos cos(x mod 2) ;1 1] 2 ; x gaussian e( 2 ) ;1 1]. 3.5 Treino de Redes Neuronais Para as RNAs aprenderem com a experi^encia, ha que as submeter a um processo chamado de treino, para o que existem inumeros algoritmos de treino, distribuindo-se estes, normalmente, por duas classes: supervisionados e n~ao supervisionados Gal93]. No primeiro caso existe um professor que fornece um conjunto de casos de treino. Um caso de treino consiste num vector de entrada e no correspondente vector de sada. A aprendizagem passa ent~ao pela minimizac~ao do erro da sada, o que e feito atraves do ajustamento dos pesos das conex~oes segundo uma determinada regra. No segundo caso apenas existe um conjunto de 27.

(42) Captulo 3. Redes Neuronais entradas, pelo que o algoritmo de treino tenta agrupar os dados a partir de propriedades ou padr~oes por estes apresentados. Presentemente, a aprendizagem supervisionada e a mais utilizada na area das RNAs Rie94]. Dentro dos algoritmos supervisionados, o mais popular e mais usado e o algoritmo de backpropagation ou seus derivados Gal93]. Trata-se de um procedimento iterativo, de aprendizagem lenta, que se aplica apenas a redes feedforward, usualmente com func~oes de activac~ao sigmoidais. O processo de converg^encia baseia-se em metodos de gradiente descendente e usa-se a media dos quadrados dos erros como medida do erro da rede, ou seja "w(t) = ;  5E (t) ou para um unico peso E (t) "wij (t) = ;  w ij em que t representa a ordem da iterac~ao e  a taxa de aprendizagem Rie94]. As derivadas parciais s~ao calculadas segundo o clausulado E = E si wij si wij onde si = f 0(u )sj i w ij. Para se obter sE , ou seja a in u^encia da sada si do nodo i no erro global E , e necessario atender ao tipo de nodo ( E = ; se i e um nodo de sada P(ti ; si ) E f 0 (u )w ,, caso contrario. k ki si k2succ(i) s onde succ(i) representa o conjunto dos nodos k da camada com que o nodo i se relaciona (ou estabelece ligac~oes). Assim, a informac~ao dada pelo gradiente e sucessivamente propagada desde a camada de sada ate a camada de entrada, da o nome de backpropagation (retropropagac~ao). Antes de se iniciar o treino de uma rede, ha que proceder a escolha dos valores iniciais dos pesos associados as ligac~oes entre nodos. Estes dever~ao ser pequenos e gerados aleatoriamente e, em princpio, pertencendo ao intervalo i. k. 28.

(43) Captulo 3. Redes Neuronais  ;z2  2z ], para uma celula com z entradas Gal93]. Pode-se ent~ao partir para o treino da rede, comecando-se por seleccionar um caso para treino, calcula-se o gradiente e ajustam-se os pesos. Uma iterac~ao termina quando todos os casos disponveis tiverem sido considerados. O processo termina quando as mudancas nos pesos e na media dos quadrados dos erros forem insigni cantes. De notar que o algoritmo pode convergir para um mnimo local (Figura 3.4) na pratica, porem, constata-se que quando se parte de um numero elevado de casos de treino, esta quest~ao n~ao se coloca, ou ent~ao n~ao se assume como um problema serio. Erro. Mínimo Local. Mínimo Local Mínimo Global W. Figura 3.4: Mnimo local e global Diversas func~oes de erro podem ser utilizadas no treino de redes neuronais, sendo a func~ao mais utilizada a que mede o quadrado dos erros, ou seja X E = (ti ; si)2 i. para o valor desejado a sada ti e valor de sada do neuronio si. Esta medida, ao dar um erro por cada caso de treino, produz um grande volume de informac~ao, pelo que normalmente e usada a soma ou a media desta medida no que se segue sera utilizada a Media do Quadrado dos Erros (MQE).. 3.6 Algoritmo RPROP O nome do algoritmo, RPROP, vem do ingl^es \Resilient backPROPagation" Rie94], e trata-se de uma variante so sticada do algoritmo de backpropaga29.

(44) Captulo 3. Redes Neuronais tion. Ao contrario deste ultimo, o algoritmo RPROP utiliza uma aprendizagem de adaptac~ao local i.e., em cada iterac~ao, o algoritmo primeiro calcula a direcc~ao do gradiente para o conjunto de casos de treino, e so depois efectua a actualizac~ao dos pesos das ligac~oes entre neuronios RieBra93]. A regra de calculo e dada por 8 + E E > < ;  "ij (t ; 1) se wE (t ; 1)  wE (t) > 0 "ij (t) = >  "ij (t ; 1) se w (t ; 1)  w (t) < 0 : "ij (t ; 1) caso contrario. ij. ij. ij. ij. para 0 < ; < 1 < +, sendo t a iterac~ao. Baseados em considerac~oes de ordem teorica e emprica, estes factores foram xados em + = 1 2 e. ; = 0 5. Os pesos das ligac~oes entre neuronios podem ent~ao ser alterados de acordo com a relac~ao 8 E > < ;"ij (t) se wE (t) > 0 "wij (t) = > +"ij (t) se w (t) < 0 :0 caso contrario. ij ij. Estudos comparativos mostraram que este algoritmo converge mais rapidamente que outros algoritmos do genero Rie94]. Alem disso, dependendo de apenas 2 (dois) par^ametros, "0 e "max, cuja escolha de valores n~ao e muito crtica, leva-nos a concluir que se esta perante um algoritmo deveras robusto i.e., regra geral, n~ao e necessaria nenhuma alterac~ao aos valores aconselhados para "0 e "max ("0 = 0 1 e "max = 50 0) RieBra93].. 3.7 Pre-processamento dos Dados Em muitas situac~oes torna-se util pre-processar os dados de um problema antes de estes serem alimentados a rede. A ideia e ajustar os dados de alguma forma tal que a rede os possa tratar de forma e ciente i.e., proceder. a sua normalizaca~o Azo95]. S~ao varias as fases em que se desdobra uma operac~ao de pre-processamento:. veri cac~ao da integridade dos dados, i.e., validar os dados e veri-. car a exist^encia de erros. 30.

(45) Captulo 3. Redes Neuronais. representac~ao dos dados, i.e., escolher a forma de convers~ao de da-. dos (eg. usando uma codi cac~ao binaria ou real, usando uma escala linear ou logartmica) normalizac~ao dos dados, i.e., escalonar os dados para um dado domnio. ltragem dos dados, i.e., passar a utilizac~ao de tecnicas de ltragem para a eliminac~ao de rudo.. A normalizac~ao de dados torna-se necessaria devido a duas raz~oes basicas. Em primeiro lugar, ha que atender ao contradomnio das func~oes de activac~ao (Tabela 3.1). Por exemplo, a func~ao sigmoid limita a sua sada ao intervalo 0 1], pelo que e impossvel que a rede tenha como sadas valores fora deste intervalo. A segunda raz~ao prende-se com o processo de assimilac~ao de informaca~o pela rede. Mesmo que os dados de treino a considerar estejam dentro do intervalo requerido pela func~ao de activac~ao, pode acontecer que os mesmos n~ao se distribuam ao longo do domnio da referida func~ao. Neste caso, a operac~ao de normalizac~ao permitira lancar os dados pelo domnio, aumentanto a capacidade de assimilac~ao de informaca~o da rede. Ora, uma das formas de a realizar e atraves de um escalonamento linear. Aqui, estes antes de serem alimentados a rede, s~ao transformados de acordo com a equac~ao min)(B ; A) + A y = (x ;max ; min. para um escalonamento no domnio A B ], sendo max e min os valores maximo e mnimo do conjunto dos dados de treino. Os valores de sada da rede passam pela operaca~o inversa, sendo obtidos pela equac~ao: ; min) x = (y ; A) (max B ; A + min Esta forma de normalizac~ao tem a vantagem de efectuar a distribuic~ao dos dados de treino por todo o intervalo A B ], a partir de um procedimento bastante simples.. 31.

(46) Captulo 3. Redes Neuronais. 3.8 Dados de Treino Na aprendizagem de RNAs os casos disponveis devem ser divididos em, pelo menos, duas partes: uma parte na qual o treino e feito, chamada de casos de treino, e outra parte que permite medir a e cacia da rede resultante, chamada de casos de teste. E obvio que nenhum dos casos de teste podera ser utilizado durante o treino, sob pena de estarmos perante uma falacia.. 3.9 Over tting Uma situac~ao que ocorre frequentemente, principalmente quando n~ao existe o numero de casos de treino adequado, e que apos um certo numero de iterac~oes, o desempenho da rede comeca a piorar para os casos de teste, apesar de continuar a melhorar para os casos de treino. A este fenomeno chama-se de overtting GemDou92], e ocorre porque um treino demasiado prolongado faz com que a rede memorize todo e qualquer padr~ao nos casos de treino, deixando, assim, de ter poder de generalizac~ao. Este problema pode ser minimizado a partir da utilizac~ao de metodos de regularizac~ao, que tentam diminuir a complexidade da rede de modo a que esta seja incapaz de memorizar particularidades. A outra maneira de evitar o overtting passa pelo uso de metodos de paragem antecipada do treino da rede FinZim93]LanHin90].. 3.9.1 Paragem Antecipada Na paragem antecipada os casos disponveis s~ao divididos em casos de treino e casos de validac~ao. Os casos de validac~ao s~ao usados em um pseudo teste, durante o treino da rede, para medir a qualidade desta. Assim, em cada iterac~ao, a rede e treinada apenas com os casos de treino, e e medido o erro com os casos de validac~ao. A paragem do treino faz-se quando o erro e mnimo, o que e um tanto problematico dado que a func~ao erro pode apresentar mnimos locais. De notar que os casos de teste s~ao na mesma utilizados para medir o desempenho da rede apos o treino. Um outro aspecto que importa aqui realcar tem a ver com a escolha do numero de casos de cada tipo. Em princpio, quanto maior for o conjunto 32.

(47) Captulo 3. Redes Neuronais de casos de treino melhor se comporta a rede, dado que assimila mais informac~ao. Mas, por outro lado, um conjunto de casos de validac~ao demasiado pequeno podera parar o treino numa altura indesejada i.e., a rede n~ao sera convenientemente testada. Neste processo ha a considerar tr^es criterios de paragem: por perda de generalizac~ao, por falta de progresso no treino, e por se atingir o numero maximo de iteraco~es Pre94].. 3.9.2 Perda de Generaliza c~ao Medida. Eva Etr GL Iterações Medida de erro nos casos de treino da rede Medida de erro nos casos de validação da rede Medida da perda de generalização da rede. Figura 3.5: Exemplo de perda de poder de generalizac~ao de uma RNA generica A perda de generalizac~ao ocorre sempre que ha uma invers~ao de sinal nos valores da derivada da func~ao de erro para os casos de validac~ao, passando estes de negativos a positivos (Figura 3.5). A func~ao de avaliac~ao toma a forma GL(t) = 100  ( EEva((tt)) ; 1) opt onde Eopt e Eva denotam, respectivamente, o valor mnimo do erro (neste caso MQE) e os erros medidos para os casos de validac~ao ate a iterac~ao t, ou 33.

(48) Captulo 3. Redes Neuronais seja. Eopt(t) = mint0tEva(t0) Uma grande perda de poder de generalizac~ao por parte da rede e uma boa raz~ao para se parar o treino, aplicando-se o criterio de paragem Parar apos primeira iterac~ao t em que GL(t) >  onde  denota a perda de poder de generalizac~ao aconselhavel. Este criterio e medido ao m de cada k iterac~oes, chamadas de faixa de treino com um comprimento k.. 3.9.3 Progresso no Treino Medida. Etr Pk Iterações Medida do erro nos casos de treino da rede Medida do progresso no treino da rede. Figura 3.6: Exemplo de progresso no treino de uma RNA generica Esta medida relaciona a media do erro nos casos de treino para uma dada faixa de treino, com o mnimo dos erros medidos para a mesma faixa. A func~ao de avaliac~ao toma a forma P 0 t0 2t;k+1:::t Etr (t ) ; 1) Pk (t) = 1000  ( k  min t0 2t;k+1:::tEtr (t0) 34.

(49) Captulo 3. Redes Neuronais em que Etr (t) e o MQE dos casos de treino, para a iterac~ao t. O progresso no treino e elevado nas fases instaveis, onde o erro nos casos de treino sobe em vez de descer. No entanto tende para zero a longo prazo, a n~ao ser que o treino se torne oscilante (Figura 3.6). O treino e parado se Pk (t) <  , em que  e uma medida de erro de estado estacionario.. 3.9.4 Numero Maximo de Itera c~oes Este criterio e aplicado quando os outros criterios de paragem do treino da rede falham, sendo dado na forma Parar quando t >  , para a iterac~ao t em que  denota a ultima iterac~ao.. 35.

(50) Captulo 4 Algoritmos Geneticos 4.1 A Computac~ao Evolucionaria Existe todo um conjunto de estrategias de resoluc~ao de problemas que foram in uenciadas por processos de evoluc~ao das especies, e em particular pelas descobertas de Darwin1 . A famosa Teoria da Evoluc~ao das Especies2 baseia-se num processo de selecc~ao natural i.e., indivduos que herdam determinadas caractersticas dos progenitores podem sofrer mutac~oes, em que os mais capazes s~ao os que tendem a sobreviver RusNor95]. Os algoritmos evolucionarios, baseados no modelo da selecc~ao natural, foram propostos para a resoluc~ao de problemas de optimizac~ao nos anos sessenta. Desde ent~ao o tema central da investigac~ao em Algoritmos Geneticos tem sido nos domnios da solidez e do balanceamento entre a e ci^encia e a e cacia Gol89]MenNev95].. 4.2 O que s~ao Algoritmos Geneticos? Os Algoritmos Geneticos (AGs) s~ao modelos de maquinas de aprendizagem que usam a metafora da evoluc~ao das especies, numa perspectiva de simulac~ao desses processos, com o m ultimo de ajudar a resoluc~ao de problemas i.e., Charles Darwin (1809-1882). Naturalista ingl^es, c elebre pela descoberta da selec

(51) c~ao natural. 2 Descrita na obra Sobre a Origem das Especies por Meio da Selec c~ao Natural, por Charles Darwin, 1859. 1. 36.

(52) Captulo 4. Algoritmos Geneticos t^em como objectivo optimizar um conjunto de par^ametros que, instanciados, nos d~ao a soluc~ao do(s) problema(s). Em princpio, os AGs podem modelar qualquer func~ao que seja computacionalmente representavel Muh93]. Todavia, os AGs s~ao ultrapassados em termos de desempenho, em situac~oes em que os procedimentos de resoluc~ao de problemas se encontram completamente sistematizados i.e., algoritmos especializados em determinados domnios do conhecimento geralmente ultrapassam, em e cacia, os AGs. Existe um certo conjunto de problemas de natureza combinatoria, denominados de NP-completos, onde o domnio das soluc~oes possveis e t~ao vasto que a sua apreciac~ao se torna computacionalmente incomportavel RusNor95]. Ora os AGs apresentam certas diferencas em relac~ao a esses metodos de procura, nomeadamente: trabalham com uma codi cac~ao dos par^ametros do problema e n~ao com os proprios par^ametros partem para a procura de uma soluc~ao com base num conjunto de possveis soluc~oes (ou populac~ao) e n~ao a partir de uma unica soluc~ao usam a informac~ao que apenas provem de uma func~ao objectivo e n~ao informac~ao auxiliar usam regras probabilsticas de transic~ao de estado. Estas diferencas, tomadas em conjunto, contribuem para que os AGs encontrem soluc~oes onde outros metodos parecem falhar i.e., existe um certo conjunto de problemas de natureza combinatoria, denominados de NP-completos, onde o domnio das soluc~oes possveis e t~ao vasto que a sua apreciac~ao se torna computacionalmente incomportavel, e que pode de nir o campo por excel^encia para a utilizac~ao dos AGs RusNor95]Gol89]. Os AGs t^em vindo, entretanto, a ser aplicados a Biologia, a Medicina,. a Engenharia e a Gest~ao, com resultados deveras prometedores PicTom95] Gol89].. 37.

(53) Captulo 4. Algoritmos Geneticos. 4.3 Estrutura de um Algoritmo Genetico Parte-se de um conjunto de indivduos, soluc~oes possveis para um dado problema, chamado de populac~ao. A informac~ao que disponibiliza, e que atende aos valores dos par^ametros do problema em equac~ao, e representada por cromossomas, de um modo em tudo analogo a estrutura vigente no DNA. Um cromossoma e, por sua vez, composto por um conjunto de genes (caracteres). Um valor possvel para um gene e designado por alelo. A qualidade de cada soluc~ao (cromossoma) e medida por uma func~ao chamada de aptid~ao Gol89]. A semelhanca do que se passa no mundo real, os indivduos de uma populac~ao s~ao sujeitos a uma serie de operac~oes, tais como as de cruzamento, mutac~ao e selecc~ao. Como resultado deste processo, uma nova gerac~ao de indivduos e criada. O processo repete-se, ent~ao, durante varias geraco~es, ate que um dado objectivo seja atingido Muh93]. De notar que a evoluc~ao, regra geral, n~ao e um processo linear. Na realidade, os processos naturais de evoluc~ao passam, n~ao raras vezes, por recuos e avancos, enquanto que os indivduos de uma populac~ao competem pelos recursos disponveis, o que signi ca que n~ao ha garantia de que a gerac~ao seguinte seja melhor do que a anterior, embora se espere que tal suceda a longo prazo. Geração Inicial de Indivíduos. Avaliação. Selecção. Mutação. Cruzamento. Figura 4.1: Estrutura de um Algoritmo Genetico A Figura 4.1 mostra a estrutura do AG Koe94]. A primeira populac~ao e gerada aleatoriamente. Um ciclo, chamado de gerac~ao, inicia-se pela ava38.

(54) Captulo 4. Algoritmos Geneticos liaca~o dos indivduos da populac~ao. Uma nova populac~ao e criada a partir da utilizac~ao dos operadores de cruzamento e de mutac~ao, sendo depois avaliada. A operac~ao de selecc~ao e ent~ao usada para seleccionar indivduos de ambas as populac~oes (i.e., inicial e nal). A populac~ao resultante passa para o ciclo seguinte e o processo repete-se ate que uma(s) condic~ao(~oes) de paragem seja(m) satisfeita(s).. 4.4 Tamanho da Populac~ao O tamanho da populac~ao afecta quer a qualidade da soluc~ao nal quer o tempo de processamento. Uma populac~ao pequena e pobre em termos de diversidade dos seus elementos constituintes, pelo que as soluc~oes geradas tendem a n~ao ser as melhores. Uma populac~ao com muitos indivduos tem uma maior probabilidade de produzir melhores resultados, embora a custa de um maior esforco computacional.. 4.5 Operadores Basicos 4.5.1 Selec c~ao Pela utilizac~ao deste operador, que pode ser aplicado a uma (para o cruzamento) ou a duas populac~oes (para a escolha da geraca~o seguinte), e possvel obter os indivduos mais capazes. Ha ainda a mencionar que este processo n~ao e determinstico mas antes estocastico, o que se justi ca pela necessidade de se garantir uma grande diversidade de indivduos em cada populac~ao Gol89]. Perante os princpios que est~ao subjacentes ao funcionamento da roleta e aceitando-se que os mesmos regem a operac~ao de selecc~ao, a probabilidade de um indivduo ser escolhido e proporcional a sua aptid~ao para com a populac~ao a que pertence (Figura 4.2) Koe94]. Embora este metodo seja bom. a partida, degrada-se gerac~ao apos gerac~ao, quando as diferencas de aptid~ao entre os indivduos que constituem a populac~ao s~ao n mas. Uma alternativa e dada pelo uso da operac~ao de selecc~ao baseada na ordem Whi89], onde a probabilidade de escolha de um indivduo depende do seu posicionamento dentro da populac~ao. Assim, a probabilidade de selecc~ao do indivduo i e 39.

(55) Captulo 4. Algoritmos Geneticos 9 10. Aptidão 1. 8 7 6. 5 4. 2. 5,3 4,4 2,1 1,5 1,4 1,4 1,3 1,3 0,8 0,5. Ordem 1 2 3 4 5 6 7 8 9 10. 9 10. 8. 1. 7. 6 2. 5 4. 3. 3. Figura 4.2: Diferencas entre a operac~ao de selecc~ao baseada na aptid~ao e a operac~ao de selecc~ao baseada na ordem dada por. (i ) p(i) = (n + 1)P;n ordem j j =1. onde n representa o tamanho da populac~ao e ordem() e uma func~ao de ordem i.e., da o posicionamento de cada indivduo na populac~ao a que pertence (Figura 4.2).. 4.5.2 Cruzamento Ao cruzarem-se, dois indivduos, os progenitores, escolhidos na populac~ao, atraves de uma operac~ao de selecc~ao, geram um novo indivduo (descendente). Isto e feito a partir de material genetico dos cromossomas dos progenitores, que uma vez combinado, produz o cromossoma de um novo indivduo ou descendente. Consideram-se, em princpio, tr^es possibilidades de cruzamento: cruzamento de um e dois pontos, e cruzamento uniforme Gol89]. No primeiro caso apenas um ponto, escolhido aleatoriamente, e usado para partir o cromossoma (Figura 4.3). No segundo caso (Figura 4.4) s~ao usados dois pontos, e no terceiro caso cada caracter dos cromossomas dos progenitores tem uma probabilidade real de passagem para o descendente (Figura 4.5). 40.

Imagem

Figura 2.5: Autocorrelac~oes de uma serie aleatoria
Figura 2.6: Autocorrelac~oes de uma serie com e sem tend^encia
Tabela 2.1: Amostra de uma serie temporal com primeiras e segundas dife- dife-rencas
Figura 2.7: Autocorrelac~oes de uma serie e das suas diferencas de primeira e segunda ordem
+7

Referências

Documentos relacionados

The differential equation of the geometric mean curvature lines in the principal chart u, v is given by gGdv2 0, which is equivalent to Therefore 4gGdv2, which amounts to d03C31

Então, a formação docente e sua posterior profissionalização são compreendidas como uma necessidade nesse processo, haja vista serem os professores os agentes fundamentais para

Este trabalho é resultado de uma pesquisa quantitativa sobre a audiência realizada em 1999 envolvendo professores e alunos do Núcleo de Pesquisa de Comunicação da Universidade

Evolução de produção de louça sanitária no Brasil Etapas da fundição por suspensão Boxes de matérias-primas Armazém de estocagem Vários estágios da remoção de água

como enfoque o processo da reforma educativa em curso em Angola. Para isso, será realizada a análise à percepção dos professores e directores de escola face à

Ecological models simulating the resource allocation of each land use distribution in a characteristic region, as well as the spatial constraints in terms of

Fonte: Próprio autor, adaptado de Ferraz, Kupfer e Haguenauer (1995). Como elemento básico de análise da Capacitação de uma Operadora de Saúde Suplementar de Autogestão,

• Há uma maior riqueza em bromeliáceas nas planícies da Floresta Ombrófila Mista do que na Floresta Estacional Semidecidual, fato atribuído à menor disponibilidade