Inteligência Artificial
5.6 Aplicações dos sistemas Neuro-Fuzzy
(5.4)
De forma simplificada, um algoritmo Fuzzy C-Means pode ser descrito
conforme segue:
1. Escolher valores para c, m e ɛ.
2. Gerar a partição fuzzy de forma aleatória, obedecendo às restrições
impostas.
3. Atribuir um valor nulo ao contador de interações. 4. Fazer J (t) = 0. m
5. Calcular os centros segundo a equação correspondente. 6. Avaliar a função objetivo J (t+1). m
7. Determinar os graus de pertinência U (t+1). ik 8. Calcular δ = J (t+1) − J (t). m m
9. Incrementar o contador de interações.
10. Se a condição de saída for falsa, então se retorna ao quinto passo do
algoritmo. Senão, finaliza-se o procedimento. A condição de parada do algoritmo é atingida quando δ ≤ ɛ, ou quando um determinado número de interações é alcançado.
5.6 Aplicações dos sistemas Neuro-Fuzzy
Os exemplos a seguir ilustram algumas aplicações de sistemas Neuro-Fuzzy.
Exemplo 5.1
A utilização de sistemas de IA híbridos na previsão de séries temporais tem se mostrado bastante eficaz devido a sua capacidade de mapeamento não linear eficiente entre as grandezas envolvidas, permitindo a extração de características complexas, o que possibilita muitas vezes mais confiabilidade nas previsões. A base de dados da série utilizada neste exemplo foi extraída de uma competição organizada pela European Network of Intelligent Technologist (Eunite). A série coletada contém informações de cargas elétricas medidas durante todo um dia, na qual cada observação corresponde a um horário específico. A série contém valores de cargas elétricas diárias dos anos de 1997 e 1998. Os horários utilizados como intervalos entre as observações apresentam-se com variação de meia hora durante todo um dia, iniciando às 00h30 e terminando às 24h. Um pré-processamento de dados foi realizado por intermédio da média dos valores dos horários de pico, gerando-se os valores diários utilizados no exemplo.
Neste exemplo será utilizado um modelo Anfis com funções de
pertinência tipo gbellmf e regras fuzzy Takagi-Sugeno. A janela temporal
usada no modelo foi de sete amostras. A modelagem Anfis foi obtida via
agrupamento Fuzzy C-Means. A Figura 5.3 apresenta o gráfico com valores resultantes do treinamento do modelo Anfis referente à série de dados de
carga da competição Eunite. A Figura 5.4 exemplifica os valores utilizados na validação do modelo obtido.
image
FIGURA 5.3 Gráfico dos valores referentes ao treinamento do modelo Anfis da série.
image
FIGURA 5.4 Gráfico de validação de modelo Anfis da série Eunite.
A Figura 5.5 ilustra o resultado do modelo de Anfis com os dados do
subconjunto de teste, com a previsão de um passo à frente. O valor do erro percentual absoluto médio (Mape) foi de 2,27%.
image
FIGURA 5.5 Gráfico de previsão de um passo a frente do modelo Anfis da série Eunite.
Exemplo 5.2
Neste segundo exemplo será apresentada uma abordagem para previsão de séries temporais baseadas em técnica de Ensemble, por meio de técnicas de IA, particularmente com sistemas híbridos Neuro-Fuzzy. O objetivo consiste na construção de modelos que sejam capazes de descrever o comportamento de determinadas séries temporais e predizer seus valores futuros. As técnicas de Ensembles são essencialmente combinações de vários componentes de previsores distintos, com a finalidade de se obter melhores previsões que as obtidas pelos componentes individuais em questão.
A aplicação da técnica ensemble tem se mostrado uma maneira de
melhorar a precisão de séries temporais. As combinações de métodos de previsão individuais, como Redes Neurais Artificiais com topologias distintas (MLP-Multi Layer Perceptron, RBF- Radial Base Function etc.), e até mesmo com modelos fuzzy, podem ser consideradas com o objetivo de melhorar as precisões nas previsões almejadas.
A palavra Ensembles origina-se do inglês e significa “agrupamentos”.
Essa técnica resulta do trabalho de Hansen e Salamon (1990), que demonstrou que a habilidade de generalização pode ser significativamente melhorada por meio da composição de vários modelos distintos, ou seja, a partir de modelos independentes é realizada a composição das saídas individuais. Ela consiste na combinação dos resultados de vários previsores (ou componentes) distintos para a obtenção de uma saída que seja melhor (ou mais estável) que as obtidas pelos componentes individuais. A capacidade de generalização de um modelo neural pode ser melhorada combinando várias redes neurais, como, por exemplo, treinando as redes individualmente e combinando os seus resultados de alguma forma. Em geral, um Ensemble de redes neurais é construído em duas etapas. Na primeira, um determinado número de redes neurais é treinado e, na segunda, os resultados das redes são combinados.
A modelagem Ensemble proposta neste exemplo utiliza modelos híbridos
Neuro-Fuzzy. A série temporal a ser exemplificada refere-se ao preço de
arroba de boi cujos valores estão ilustrados na Figura 5.6, onde há registros
de valores (em reais) relativos a 73 meses.
image
FIGURA 5.6 Dados da série de preço de arroba de boi.
A definição do modelo Ensemble Anfis utilizada neste exemplo é
composta por três modelos difusos, e cada modelo utiliza funções de pertinências distintas (trapezoidal, gaussiana e triangular), gerando submodelos difusos via toolbox Anfis do Matlab, que depois são carregados e gravados com o toolbox fuzzy (essas duas ferramentas foram descritas no
Capítulo 2). Na segunda etapa é gerado um modelo difuso que agrega
(pondera) as saídas de dados dos submodelos em relação às entradas de treinamento. A função de pertinência parametrizada nessa composição será aquela que apresentar menor erro percentual absoluto médio (Mape). Utilizando o toolbox fuzzy, o modelo da composição do Ensemble é
carregado e gravado. Finalmente, a última etapa testa a modelagem do
Ensemble Neuro-Fuzzy resultante a partir do modelo gravado na etapa
composição, na qual são utilizados os dados de teste para validação da
estimação. A Figura 5.7 apresenta a estrutura do modelo Ensemble Neuro-Fuzzy proposto neste exemplo.
image
FIGURA 5.7 Estrutura do Ensemble via modelos Anfis.
Os dados utilizados na etapa de treinamento do Ensemble em questão não
sofreram qualquer tipo de normalização. Para esse modelo foram consideradas informações de preço com uma janela temporal de cinco atrasos. Foi empregado o algoritmo de agrupamento Fuzzy C-Means. Os três submodelos Anfis que compuseram o Ensemble utilizaram as funções de pertinências distintas (trapezoidal, gaussiana e triangular) para cada componente individual, e obtiveram os valores de Mape de 3,7%, 3,5% e
3,6%, respectivamente (Tabela 5.1). A tabela indica os erros da previsão dos modelos considerados nesse exemplo. O Ensemble com arquiteturas Anfis considerado apresentou um erro de modelagem (Mape = 3,3 %) compatível com a literatura, em que a composição resultante forneceu um erro inferior aos das componentes individuais do modelo.