• Nenhum resultado encontrado

2.2 Modelos de previs˜ao de vaz˜oes

2.2.3 Bases de regras nebulosas

Um sistema nebuloso ´e um modelo baseado em regras lingu´ısticas do tipo se-ent˜ao. Estas re- gras s˜ao as respons´aveis por representar o conhecimento adquirido pelo especialista, ou extra´ıdo de dados, os quais fornecem informa¸c˜oes atrav´es de vari´aveis de entrada e sa´ıda do sistema. Dado que n˜ao existe uma maneira formal e efetiva de extra¸c˜ao do conhecimento, a an´alise dos dados dispon´ıveis para a extra¸c˜ao de informa¸c˜ao pelo especialista, com o objetivo de determinar o n´umero de regras adequadas e assim, definir a estrutura do sistema nebuloso, torna-se uma tarefa dif´ıcil de ser resolvida (Er & Wu 2002).

Geralmente, sistemas baseados em regras nebulosas do tipo se-ent˜ao s˜ao compostos por um mecanismo de inferˆencia nebulosa, uma base de regras e um defuzzificador, o qual ´e o respons´avel pelo processamento das sa´ıdas locais de cada uma das regras nebulosas (Luna 2003). J´a o mecanismo de inferˆencia ´e o encarregado de mapear a transforma¸c˜ao nebulosa do espa¸co de entrada para o espa¸co de sa´ıda, utilizando por sua vez, a base de regras que comp˜oe o sistema. Os sistemas nebulosos ou modelos baseados em regras nebulosas do tipo Takagi-Sugeno (Takagi & Sugeno 1985) tˆem se convertido em uma poderosa ferramenta na ´area de engenharia para modelagem e controle de sistemas complexos (Angelov & Filev 2004), pois estes utilizam uma combina¸c˜ao n˜ao linear de modelos simples, geralmente lineares, localizados em sub-regi˜oes do espa¸co de entrada, de tal forma que o problema global ´e dividido em problemas “locais”, sendo a sa´ıda final do sistema uma combina¸c˜ao n˜ao-linear das solu¸c˜oes locais estimadas. Estes sistemas s˜ao capazes de processar o conhecimento de forma compreens´ıvel e de manipular incertezas e imprecis˜oes visando solucionar problemas reais complexos (Zimmermann 1987).

Existem duas abordagens gerais para a otimiza¸c˜ao de modelos baseados em regras nebulosas. A primeira abordagem engloba os algoritmos de aprendizado realizados de forma offline ou em batelada. Esta abordagem consiste em definir uma estrutura do modelo que ser´a mantida fixa durante o processo de aprendizado, no qual os parˆametros do modelo definido previamente ser˜ao ajustados. Para tal, o conjunto total de dados entrada-sa´ıda dispon´ıveis para o ajuste ser´a utilizado a cada ´epoca do processo.

Uma abordagem diferente ´e proposta em (Luna, Soares & Ballini 2007a), onde, embora o algoritmo de aprendizado seja baseado em uma abordagem em batelada, este utiliza em paralelo ao ajuste do modelo, crit´erios de adi¸c˜ao de regras nebulosas, assim como crit´erios de poda, modificando a estrutura inicial durante o aprendizado. Ap´os a etapa de ajuste construtivo, a estrutura ´e mantida fixa e a previs˜ao m´ultiplos passos `a frente ´e realizada para um conjunto de s´eries financeiras e econˆomicas.

A vantagem do aprendizado em batelada ´e que, devido `a utiliza¸c˜ao de todos os dados dis- pon´ıveis para o ajuste do modelo a cada ´epoca do processo de aprendizado, em geral, obt´em-se ´otimos locais adequados, por´em, com um maior custo computacional, j´a que a cada ´epoca do

aprendizado, processa-se o total de dados dispon´ıveis para o treinamento. Al´em disso, a estru- tura e parˆametros do modelo se mant´em constante durante e ap´os o aprendizado, independente de existir ou n˜ao varia¸c˜oes consider´aveis na dinˆamica do problema em estudo.

No entanto, devido `a pr´opria complexidade dos problemas reais, os quais s˜ao, em geral, de natureza n˜ao linear, torna-se imposs´ıvel saber com antecedˆencia o n´umero adequado de regras que ir˜ao compor a estrutura do modelo. Este problema ´e normalmente tratado via tentativa e erro. Estruturas de diferentes tamanhos s˜ao constru´ıdas, ajustadas e testadas. O modelo com melhor desempenho ´e escolhido como o mais adequado.

Como alternativa a esta abordagem, surge um segundo grupo de algoritmos de aprendizado, o qual engloba os algoritmos de aprendizado de natureza dinˆamica ou incremental, tamb´em co- nhecidos na literatura como modelos com aprendizado online. Nesta abordagem, uma estrutura inicial ´e modificada a cada itera¸c˜ao, a medida que novos dados entrada-sa´ıda s˜ao apresentados ao modelo. A estrutura ´e modificada acrescentando ou eliminando regras nebulosas no decorrer do aprendizado, de acordo com crit´erios de adi¸c˜ao de regras e de puni¸c˜ao ou poda previamente estabelecidos. Ou seja, n˜ao existe uma estrutura fixa, j´a que tanto a estrutura do modelo como os parˆametros s˜ao vari´aveis no tempo.

O trabalho proposto em (Hong & White 2009) sugere a utiliza¸c˜ao de um modelo dinˆamico baseado em regas nebulosas, denominado de DNFLMS, para a constitui¸c˜ao de um modelo hidrol´ogico para a previs˜ao um passo `a frente da vaz˜ao di´aria do rio Pupu Springs, localizado no vale Takaka na Nova Zelˆandia.

Por outro lado, o trabalho apresentado em Luna, Soares, Lopes & Ballini (2009), mostra a capacidade de predi¸c˜ao dos modelos dinˆamicos baseados em regras nebulosas, quando utilizados na previs˜ao v´arios passos `a frente das vaz˜oes incrementais m´edias di´arias para a UHE de Porto Primavera, Brasil. Al´em disso, o modelo FIS ´e proposto em (Zambelli, Luna & Soares 2009), mostrando a utiliza¸c˜ao de uma base de regras com aprendizado offline, para a previs˜ao um passo `a frente de s´eries de vaz˜oes anuais.

Este modelo surgiu da simplifica¸c˜ao do modelo construtivo proposto em (Luna, Soares & Ballini 2007b). O sistema de inferˆencia proposto (FIS, do termo em inglˆes Fuzzy Inference System), ´e baseado em regras nebulosas e em modelos de primeira ordem, compondo um sistema nebuloso do tipo Takagi-Sugeno (TS) (Takagi & Sugeno 1985). Assim, o FIS codifica na sua estrutura uma base de regras do tipo Se-Ent˜ao, adotando a seguinte representa¸c˜ao:

Se < antecedente > Ent˜ao < consequente >

A parte do antecedente representa uma sub-regi˜ao do espa¸co de entrada. Esta sub-regi˜ao define a regi˜ao ativa associada `a regra nebulosa. A parte do consequente ´e definida por um modelo local que contribuir´a com uma parcela na estimativa da sa´ıda final. A estrutura geral do FIS ´e descrita a seguir.

Estrutura geral

A estrutura do FIS ´e composta por um conjunto de M regras nebulosas de primeira ordem, do tipo Takagi-Sugeno (TS) (Takagi & Sugeno 1985), e ´e ilustrada na Figura 2.3.

xk xk

xk

Parti¸c˜ao do espa¸co de entrada R1 R2 .. . . . . RM y1k y2k ykM × × × P g1k gk2 gkM gik Base de regras ˆ yk

Figura 2.3: Estrutura geral do FIS. Seja xk= [xk

1, xk2, . . . , xkp] ∈ Rp o vetor de entrada no instante k, k ∈ Z+0; ˆyk∈ R ´e a sa´ıda

do modelo que representa em termos de previs˜ao, a estimativa um passo `a frente da s´erie em estudo, dada a entrada xk.

O espa¸co de entrada, representado por xk ∈ Rp ´e particionado em M sub-regi˜oes, sendo

cada sub-regi˜ao representada por uma regra nebulosa. os antecedentes de cada regra nebulosa Ri (do tipo Se-Ent˜ao), s˜ao definidos pelos respectivos centros ci ∈ Rp e matrizes de covariˆancia

Vi|p×p. Os consequentes s˜ao representados por modelos locais lineares com sa´ıdas denotadas

por yi, i = 1, . . . , M e definidas de acordo com:

yik= φk× θiT, (2.44)

onde φk= [1 xk

1 xk2 . . . xkp]; θi = [θi0 θi1 . . . θip] ´e o vetor de coeficientes do modelo local para a

i − th regra nebulosa.

A cada padr˜ao de entrada associa-se um grau de pertinˆencia referente `as sub-regi˜oes do espa¸co de entrada. Os graus de pertinˆencia s˜ao calculados utilizando fun¸c˜oes de pertinˆencia gaussianas gi(xk), dadas pela seguinte equa¸c˜ao:

gi(xk) = gik= αi· P [ i | xk ] M X q=1 αq· P [ q | xk ] , (2.45)

onde αi s˜ao coeficientes positivos que satisfazem a condi¸c˜ao de unicidade M

X

i=1

e P [ i | xk] ´e definida de acordo com a Equa¸c˜ao (2.46) a seguir P [ i | xk ] = 1 (2π)p/2det(V i)1/2 exp  −1 2(x k − ci)V−1i (xk− ci)T  , (2.46) onde det(·) representa o operador determinante. Assim, a sa´ıda do FIS y(k) = ˆyk, ´e calculada

como uma combina¸c˜ao n˜ao linear dos consequentes yk

i ponderados pelos seus respectivos graus

de pertinˆencia gk i, ou seja: ˆ y(xk) = ˆyk = M X i=1 gik yki. (2.47) A Equa¸c˜ao (2.46) tamb´em pode ser interpretada como a probabilidade do vetor de entrada xk pertencer `a regi˜ao ativa da i−´esima regra, j´a que, a medida que o dado de entrada encontra-

se mais pr´oximo do i−´esimo centro, maior ser´a o valor do i−´esimo grau de pertinˆencia. Em outras palavras, cada sub-regi˜ao nebulosa ´e representada pelo respectivo centro ci, assim como

os parˆametros de dispers˜ao codificados na diagonal principal da matriz de covariˆancia associada Vi.

Assim, a dinˆamica do modelo pode ser interpretada como um mecanismo de inferˆencia nebulosa, sendo a base de regras composta por regras Ri, i = 1, . . . , M, do tipo

Rki : Se xk pertence a i−´esima regi˜ao com grau

de pertinˆencia gk

i Ent˜ao yik = φk× θiT.

M´etodo de ajuste dos parˆametros

A obten¸c˜ao do modelo final ´e realizada em duas etapas: a inicializa¸c˜ao do modelo e o ajuste dos seus parˆametros.

Inicializa¸c˜ao Uma das formas comumente utilizadas para a inicializa¸c˜ao de modelos baseados em regras nebulosas consiste na utiliza¸c˜ao de algoritmos de agrupamento, os quais como ser´a visto, influenciam diretamente na estrutura e otimiza¸c˜ao dos modelos.

Neste trabalho, a inicializa¸c˜ao do modelo ´e realizada utilizando o algoritmo de agrupamento conhecido como algoritmo SC ou Subtractive Clustering, o qual foi originalmente proposto em (Chiu 1994). O algoritmo SC agrupa o conjunto de dados entrada-sa´ıda -utilizados para fins de ajuste do FIS- em um total de M conjuntos, sendo o processo realizado de forma n˜ao supervisionada.

O algoritmo SC proposto em (Chiu 1994), vem sendo um algoritmo bastante empregado para a gera¸c˜ao de modelos baseados em regras, devido a sua simplicidade e capacidade para determinar de forma autom´atica o n´umero de centros necess´arios para representar de forma adequada o conjunto de dados, o qual ´e uma grande vantagem quando comparado a outros algoritmos de agrupamento, como por exemplo, o algoritmo tradicional Fuzzy C-Means (FCM) (Bezdek 1981).

A id´eia base do algoritmo SC ´e a seguinte. O algoritmo define um ´ındice de potencial Pkpara

cada dado entrada-sa´ıda, com k = 1, . . . , N0. O potencial de cada dado depende diretamente

da distˆancia deste para todos os outros dados do conjunto apresentado. Assim, quanto menor for a distˆancia do dado aos outros, seu potencial ser´a maior. Desta forma, o potencial pode ser definido como: Pk = N X j=1 exp{−αkψk− ψjk2} (2.48)

com ψk = [xk yk], α = 4/r2a, onde xk ´e o vetor de entrada ao modelo composto por p com-

ponentes; yk ´e a sa´ıda unidimensional e r

a ´e um termo constante e positivo que representa o

parˆametro de dispers˜ao associado a cada grupo.

Deve-se observar que, todo dado localizado em uma regi˜ao com uma densidade alta de dados, ter´a um potencial maior, tendo assim, uma possibilidade mais alta de se tornar um novo centro. Al´em disso, o parˆametro ra definir´a o raio de influˆencia na vizinhan¸ca de cada um dos

centros, ou seja, a regi˜ao na qual os centros exercer˜ao a sua influˆencia. Assim, ra ´e o primeiro

hiperparˆametro do modelo proposto.

Seja ψ1 o dado entrada-sa´ıda com o maior potencial P1∗. Assim, o potencial para todos os

outros dados ser˜ao atualizados como:

Pk = Pk× (1 − exp{−βkψk− ψ1k2}) (2.49)

com β = 4r2

a/rb2 e rb/ra = rba. Desta maneira, quanto mais pr´oximo esteja um dado entrada-

sa´ıda de um centro j´a definido, menor ser´a o seu potencial, sendo menor a sua possibilidade de se tornar um novo centro. Neste caso, a rela¸c˜ao de proximidade est´a diretamente vinculada ao valor de rba, o qual torna-se assim no segundo hiperparˆametro do FIS, e em conjunto com ra

influencia diretamente na estrutura do modelo FIS a otimizar na segunda etapa de ajuste de parˆametros.

O Algoritmo 2.2.3 resume os passos que devem ser seguidos para a defini¸c˜ao dos centros. Assim, ap´os a identifica¸c˜ao do n´umero de regras, os parˆametros do FIS s˜ao inicializados seguindo os seguintes crit´erios:

1. c0

i = ψi0|1...p, onde ψi0|1...p ´e composto pelos primeiros p elementos do i−´esimo centro

encontrado pelo algoritmo SC; 2. σ0

i = 1.0;

3. θ0

i = [ψi0|p+1 0 . . . 0]1×p+1, onde ψ0i|p+1 ´e a p + 1−´esima coordenada do i−´esimo centro

encontrado pelo algoritmo SC; 4. V0

i = 10

−4I, onde I ´e a matriz identidade de ordem p;

Algorithm 1 Algoritmo de agrupamento Subtrativo - SC Sejam N dados entrada-sa´ıda [xk

1, . . . , xkp, yk], k = 1, . . . , N dispon´ıveis para o ajuste do

modelo de previs˜ao. Definir o valor de ra e rba. Calcular o potencial de todos os N dados

utilizando a Equa¸c˜ao (2.48) e selecionar o primeiro centro como sendo igual ao padr˜ao com maior potencial (P∗

1).

Passo 1. Atualizar os potenciais Pk de todos os dados utilizando a Equa¸c˜ao (2.49).

Passo 2. Verificar qual ´e o dado com potencial mais alto, sendo o potencial maior denotado por P∗ k; Passo 3. Se P∗ k > ¯εP ∗ 1, com ¯ε = 0, 5, ent˜ao ψ ∗

k ´e definido como um novo centro, ir ao Passo

5. Sen˜ao, ir ao Passo 4. Passo 4. Se P∗

k < εP1∗, com ε = 0, 15, ent˜ao o poss´ıvel centro ´e rejeitado e o processo

termina. Sen˜ao, ir ao Passo 6.

Passo 5. Atualizar os potenciais utilizando a Equa¸c˜ao (2.49) e voltar ao Passo 2.

Passo 6. Seja dmin a distˆancia m´ınima entre ψk∗ e todos os outros centros j´a selecionados.

Se dmin ra + P ∗ k P∗ 1 ≥ 1 ent˜ao ψ∗

k ´e definido como um novo centro e retorne ao Passo 5. Sen˜ao, ψ ∗

k ´e rejeitado e

P∗

k = 0. Selecionar o pr´oximo dado com maior potencial e defini-lo como um poss´ıvel novo

centro. Verificar novamente a condi¸c˜ao do Passo 6.

Ajuste Ap´os a inicializa¸c˜ao do FIS, os seus parˆametros s˜ao re-ajustados utilizando o algoritmo da Maximiza¸c˜ao da Verossimilhan¸ca (EM), na sua vers˜ao offline, atrav´es de uma sequˆencia de passos E-M (Expectation-Maximization), originalmente proposto para o ajuste de modelos de mistura de especialistas (Jacobs, Jordan, Nowlan & Hinton 1991).

O objetivo do algoritmo EM ´e encontrar um conjunto de valores para os parˆametros do FIS, tal que a fun¸c˜ao de verossimilhan¸ca seja maximizada. Em termos pr´aticos, trabalha-se com o logaritmo da fun¸c˜ao de verossimilhan¸ca dos valores observados yk. Esta fun¸c˜ao objetivo ´e

denotada por L, e definida como segue

L(D, Ω) = N X k=1 ln M X i=1 gi(xk, C) × P (yk | xk, θi) ! (2.50)

onde D = {xk, yk|k = 1, . . . , N}, Ω representa o conjunto de parˆametros a otimizar e C cont´em

apenas os parˆametros dos antecedentes (centros e matrizes de covariˆancia). No entanto, para maximizar L(D, Ω), ´e necess´ario estimar os parˆametros incompletos ou desconhecidos hk

i du-

rante o passo E. Este dado faltante, ´e definido como a probabilidade a posteriori de xkpertencer

`a regi˜ao ativa da i−´esima regra nebulosa.

Quando o algoritmo EM ´e adaptado para o ajuste de sistemas nebulosos, hk

i pode ser inter-

pretado como a estimativa a posteriori do grau de pertinˆencia gk

hk

i ´e calculada de acordo com

hki = αiP (i | x k)P (yk | xk, θ i) PM q=1αqP (q | xk)P (yk | xk, θq) (2.51) para i = 1, . . . , M. Estas estimativas s˜ao chamadas a posteriori, pois s˜ao calculadas assumindo que yk, k = 1, . . . , N j´a ´e conhecida. Al´em disso, a probabilidade condicional P (yk|xk, θ

i) ´e dada por: P (yk | xk, θi) = 1 p 2πσ2 i exp  −[y k− yk i]2 2σ2 i  (2.52) com σ2

i estimada como segue:

σ2i = N X k=1 hki[yk− yik]2 ! / N X k=1 hki (2.53)

Portanto, o algoritmo EM para a otimiza¸c˜ao dos parˆametros do FIS pode ser resumido nos seguintes passos:

1. Passo E: estimar hk

i utilizando a Eq. (2.51);

2. Passo M: maximizar a fun¸c˜ao objetivo da Eq. (2.50) e atualizar os parˆametros dos modelos, com valores ´otimos dados por:

αi = 1 N N X k=1 hki (2.54) ci = N X k=1 hkixk ! / N X k=1 hki (2.55) Vi = N X k=1 hki(xk− ci)′(xk− ci) ! / N X k=1 hki (2.56) para i = 1, . . . , M, N ´e o total de dados entrada-sa´ıda dispon´ıveis para o ajuste do FIS. Em todas estas equa¸c˜oes, Vi foi considerada como uma matriz diagonal positiva, como

uma alternativa para simplificar o problema e evitar solu¸c˜oes infact´ıveis. Uma solu¸c˜ao ´otima para θi ´e obtida a partir da solu¸c˜ao da equa¸c˜ao seguinte:

N X k=1 hk i σ2 i yk− φk× θi  · φk = 0 (2.57) onde σi ´e o desvio padr˜ao referente a cada sa´ıda local yi, i = 1, . . . , M, com σi2 definido

pela Eq.(2.53). Finalizado o passo M, calcular o novo valor de L(D, Ω).

Documentos relacionados