COE 765 TÉCNICAS INTELIGENTES APLICADAS A SISTEMAS DE POTÊNCIA CONJUNTOS, LÓGICA E SISTEMAS FUZZY Djalma M. Falcão COPPE/UFRJ Agosto de 2002
INTRODUÇÃO Modelos matemáticos convencionais são: Crisp, isto é, ambivalentes (sim ou não, falso ou verdadeiro, maior ou menor, etc.); Determinísticos; Precisos por hipótese; Não-ambíguos. Algumas situações no mundo real apresentam: Incertezas (E.: carga, afluências, falhas em equipamentos, etc.); Informações vagas (E.: tensão alta ou baia, fluo próimo ao limite, etc.); Ambigüidade (E.: reservatório cheio). As características acima podem ser tratadas por vários métodos, alguns dos quais são resumidos a seguir: Modelos Probabilísticos ou Estocásticos: quando eistem informações passadas que podem ser modeladas por métodos freqüenciais; Análise de Intervalos: avaliação de como dados representados por intervalos se propagam em operações aritméticas, cálculo diferencial e integral, etc; Teoria dos Erros: avaliação de como erros são propagados ao longo de um processo eperimental; Modelos Fuzzy (ou modelos baseados em Lógica Fuzzy): quando a incerteza deriva da imprecisão ou ambigüidade da informação ou conhecimento eistente sobre o problema. Os modelos fuzzy são utilizados em: Métodos de representação de conhecimento em linguagem natural; Modelagem de incertezas para as quais não são disponíveis dados estatísticos; Modelagem de conhecimento subjetivo; Medida da qualidade de conhecimento subjetivo; Integração de métodos lógicos e numéricos; Modelagem de restrições e objetivos não-rígidos (soft constraints). A teoria dos conjuntos fuzzy foi introduzida em 965 por Lotfi Zadeh. 2 APLICAÇÕES As áreas de aplicação mais importantes em sistemas elétricos de potência são: Sistemas de Inferência Fuzzy; Controladores Fuzzy; L.A. Zadeh, Fuzzy Sets, Information and Control, vol. 8, pp. 338-353, 965. 2
Otimização e Sistemas de Tomada de Decisões. 2. Sistemas de Inferência Fuzzy Incertezas associadas às regras de uma base de conhecimento; Eemplo: Um elevado nível de hidrogênio no óleo do transformador freqüentemente indica a ocorrência de descarga no interior do mesmo ; A regra acima apresenta duas variáveis fuzzy 2 : elevado e freqüentemente; Mecanismo de inferência: métodos matemáticos para manipular os valores numéricos associados às regras. 2.2 Controladores Fuzzy Regras de controle baseadas na eperiência; Eemplo: SE o erro é pequeno e positivo E a variação no erro é grande e negativa ENTÃO a saída do controlador é pequena e negativa Pequeno e grande são variáveis fuzzy; Projeto de controladores fuzzy: desenvolvimento de um conjunto de regras de controle baseadas em entradas disponíveis e estabelecimento de um método para combinar essas regras. 2.3 Otimização Incerteza nos dados e/ou objetivos Representação de restrições não-rígidas (soft constraints); Problemas multiobjetivos. 3 CONJUNTOS FUZZY 3. Conjuntos Convencionais (Crisp) Definidos pela enumeração de seus elementos ou por uma condição que defina se o elemento pertence ou não ao conjunto. Seja A um conjunto definido no universo I dos números inteiros positivos, isto é, A I. Neste caso podemos definir o conjunto A como a seguir: A = {, 2, 3,..., 9 } ou A = { I < 0} Uma forma alternativa de definir o conjunto acima seria através de uma Função de Pertinência µ A () como a seguir Se I < 0 µ A () = 0 Se I 0 2 A denominação mais utilizada é Variável Lingüística o qual será definido em seções seguintes. 3
a qual tem a seguinte representação gráfica µ A ().0 9 3.2 Conjuntos Fuzzy Podem ser vistos como uma generalização da noção de conjunto na qual a função de pertinência pode assumir valores no intervalo [0,] 3. Neste caso não podemos dizer simplesmente que um elemento pertence ao conjunto e sim que o elemento pertence ao conjunto com um certo grau de pertinência. Como eemplo, considere o conjunto dos números inteiros próimos ao número 7. Este conjunto pode ser definido por uma função de pertinência assumindo os valores dados na tabela abaio. 4 5 6 7 8 9 0 µ A () 0. 0.4 0.8.0 0.8 0.4 0. Os elementos do conjunto cujos valores da função de pertinência são iguais a zero não foram incluídos na tabela acima. Essa função de pertinência discreta tem a representação gráfica mostrada a seguir. µ A ().0 7 Um outro eemplo de conjunto fuzzy, neste caso infinito, seria o conjunto das tensões próimas à tensão nominal ( pu). Este conjunto pode ser representado pela seguinte função de pertinência µ V ( v ) = 0 v a b a c v c b 0 se se se se a b v v < v v > a c b c 3 Em geral, podem assumir valores em qualquer intervalo. 4
onde a=0.95, b=.00, e c =.05, a qual tem a seguinte representação gráfica µ V (v).0 0.95.00.05 v De uma maneira geral, um conjunto fuzzy F, definido no universo de discurso U, é representado por F = { (, µ F ( ) ) U } ou seja, os elementos do conjunto são definidos por pares constituídos pelos elementos U e os respectivos valores da função de pertinência. 3.3 Variáveis Lingüísticas São variáveis cujos valores não são números, e sim, palavras ou sentenças de uma linguagem natural ou artificial. Por eemplo, consideremos a variável Tensão. Suponhamos que essa variável possa assumir os valores lingüísticos Muito_Baia, Baia, Normal, Alta e Muito_Alta. O conjunto de valores assumidos pela variável lingüística é denominado Conjunto de Termos e representado por T(), onde é a variável. Os valores assumidos pela variável lingüística são representados por conjuntos fuzzy definidos pelas correspondentes funções de pertinência. No eemplo, teríamos Variável lingüística: Tensão (V) Conjunto de Termos: T(V) = { Muito_Baia, Baia, Normal, Alta e Muito_Alta } Funções de Pertinência dadas no gráfico abaio. µ.0 Muito-Baia Baia Normal Alta Muito-Alta 0.7 0.8 0.9..2.3 V 3.4 Funções de Pertinência A definição das funções de pertinência utilizadas em uma aplicação de sistemas fuzzy é uma etapa fundamental e difícil no desenvolvimento dessa aplicação. Não eistem regras definitivas para a escolha dessas funções as quais representam o conhecimento de um 5
especialista no assunto em questão ou informações etraídas de um banco de dados. Aplicações muito sensíveis à escolha das funções de pertinência são, em geral, não adequadas para modelagem fuzzy. Algumas características das funções de pertinência são: Formato: Triangular, trapezoidal, Gaussiana, sigmoidal, etc; Obtenção: escolhidas pelo usuários baseado em sua eperiência ou através de um processo de otimização a partir de dados eperimentais e/ou obtidos por simulação; Overlapping: Não é necessário porém é importante para dar robustez ao sistema fuzzy. Em geral o overlapping é de duas funções apenas; Normalização: Geralmente as funções de pertinência são definidas no intervalo [0,]. Isto não é obrigatório mas facilita a implementação de sistemas fuzzy. 3.5 Operações com Conjuntos 3.5. Conjuntos Convencionais (Crisp) Sejam os conjuntos A X e B X. Definimos: União: A B ={ A B}. Supondo os conjuntos A e B definidos por suas funções de pertinência, temos: µ A B () = ma{ µ A (), µ B () }. Essa definição é ilustrada na figura abaio. µ A () µ B () µ A B () Interseção: A B ={ A B}. Supondo os conjuntos A e B definidos por suas funções de pertinência, temos: A B = min{ µ A (), µ B () }. Essa definição é ilustrada na figura abaio. µ A () µ B () µ A B () Complemento: A c = { X A }. Supondo o conjunto A definido por sua função de pertinência, temos: µ A c () = - µ A (). Essa definição é ilustrada na figura abaio. 6
µ A () µ A c () Propriedades: Comutatividade: A B = B A ; A B = B A Associatividade: (A B) C = A ( B C ); (A B) C = A ( B C ) Idempotência: A A = A ; A A = A Distributividade: A ( B C ) = (A B ) ( A C ) Lei da Contradição: A A c = U (universo) Lei da Eclusão: A A c = φ (conjunto vazio) Produto Cartesiano: A B = {(, y) A y B} 3.5.2 Conjuntos Fuzzy As operações podem ser definidas de várias formas. A mais comum é similar ao caso dos conjuntos crisp: União A B = { (, µ A B ()), U } µ A B () = ma [ µ A (), µ B () ] µ A B () Interseção A B = { (, µ A B ()), U } µ A B () = min [ µ A (), µ B () ] µ A B () Complemento A c ={ (, µ A ()), U } µ c A () = - µ A () 7 µ A c ()
Propriedades: Comutatividade, associatividade, distributividade e idempotência: idênticas ao caso crisp. Lei da Contradição: A A c U (não se aplica) Lei da Eclusão: A A c φ (não se aplica) Produto Cartesiano: A B = { (, y), min ( µ A (), µ B () ) A y B } Eemplo: A = {(3,0.5), (5,), (7,0.6)}, B = {(3,), (5,0.6)} A B = {[(3,3),0.5], [(3,5),0.5], [(5,3),], [(5,5),0.6], [(7,3),0.6], [(7,5),0.6]} 3.5.2 Definições Básicas Dado um conjunto fuzzy A = { (, µ A ()), X } Conjunto suporte: S (A) = { X µ A () > 0 } Altura: H (A) = o maior grau de pertinência dos elementos de A Conjunto fuzzy normalizado: se H (A) = Cardinalidade: A = Σ µ A () (discreto) ou A = µ A () d (contínuo) Corte de nível-α ou corte-α: A α = { X µ A () α} Conjunto fuzzy conveo: se, 2 X e λ [0,] então µ A [ λ + (-λ) 2 ] min [ µ A ( ), µ A ( 2 ) ] µ A () µ A () Conjunto Conveo Conjunto Não-Conveo 3.5.4 Números Fuzzy Um número fuzzy M é um conjunto fuzzy conveo normalizado definido em R tal que i) Eiste pelo menos um 0 tal que µ M ( 0 )= ; ii) µ M () é continua por partes. 8
Eemplos de números fuzzy: µ () µ () µ () a a 2 a 3 a 4 a a 2 = a 3 a 4 a a 4 (a,a 2,a 3,a 4 ) (a,a 2,a 2,a 4 ) (a,a,a 4,a 4 ) Trapezoidal Triangular Retangular As seguintes operações aritméticas com números fuzzy podem ser definidas baseadas no chamado Princípio da Etensão []: sejam dois números fuzzy trapezoidais (números fuzzy triangulares e retangulares são casos particulares) definidos por: A = ( a, a 2, a 3, a 4 ) e A 2 = ( a 2, a 22, a 23, a 24 ) Adição: A A 2 = { a + a 2, a 2 +a 22, a 3 +a 23, a 4 +a 24 } Produto: A A 2 = { a a 2, a 2 a 22, a 3 a 23, a 4 a 24 } Produto por número real: λ. A = (λa, λa 2, λa 3, λa 4 ) 3.5.5 Relações Relação Crisp: Representa a presença ou não de associação, interação ou interconeão entre elementos de dois ou mais conjuntos. Para dois conjuntos A e B (crisp), a relação pode ser definida por R(A,B) = { ( (,y), µ R (,y) ) (,y) A B } onde µ R (,y) assume os valores 0 ou dependendo do elemento (,y) satisfazer ou não à relação. Eemplo: A = {, 2, 3, 4}, B = {2, 3, 4, 5} R(A,B) = elementos de A B tais que < y A B = {(,2), (,3), (,4), (,5), (2,2), (2,3), (2,4), (2,5), (3,2),...} R(A,B) = {(,2), (,3), (,4), (,5), (2,3), (2,4), (2,5), (3,4), (3,5), (4,5)} Para relações binárias definidas em universos discretos, é conveniente colocar a função de pertinência na forma de uma Matriz Relacional cujos elementos podem assumir os valores 0 e. Neste eemplo teríamos 9
A B 2 3 4 5 2 0 3 0 0 4 0 0 0 0 Relação Fuzzy entre Conjuntos Crisp: Representa o grau de presença ou não de associação, interação ou interconeão entre elementos de dois ou mais conjuntos crisp. Definida de forma similar à relação crisp com a diferença que a função de pertinência pode assumir valores no intervalo [0,]. Eemplo : Seja A e y B, A = B R; a relação é é muito maior que y ; a função de pertinência pode ser definida como 0 Se y µ R (, y) = ( + ( y ) -2 ) - Se > y Observe que a função de pertinência acima é definida para a diferença entre duas variáveis ( e y). Eemplo 2: A mesma relação do eemplo anterior porém com variáveis assumindo apenas valores discretos. Neste caso, a relação pode ser definida por uma matriz relacional como mostrado abaio. y y 2 y 3 A = {, 2, 3 } 0.8 0.6 0.4 2 0.6 0.4 0.2 B = {y,y 2,y 3 } 3 0.4.0 0.8 4 LÓGICA FUZZY 4. Lógica Clássica Proposição: declaração envolvendo termos previamente definidos. Toda proposição assume os valores Falso (F) ou Verdadeiro (V); Eemplos: A tensão é baia; a injeção de reativos é alta, etc. Combinação de proposições: proposições (p, q, r,...) podem ser combinadas nas formas seguintes produzindo resultados falsos ou verdadeiros. Algumas dessas combinações são: Conjunção (p q): onde se afirma a verdade simultânea de duas proposições distintas; 0
Disjunção (p q): onde se afirma a verdade de uma ou ambas as proposições; Condicional (p q): a verdade de uma proposição (p) implica na verdade da outra (q); esta é a forma usual de modelar as regras do tipo SE < >, ENTÃO < >; Eqüivalência (p q): onde se afirma que ambas as proposições são verdadeiras ou falsas; Negação ( p ): onde se afia uma proposição à frase é falso que.... Dependendo dos valores lógicos assumidos pelas proposições, as combinações podem produzir resultados falsos ou verdadeiros de acordo com a Tabela Verdade abaio: p q p q p q p q p q p V V V V V V F V F F V F F F F V F V V F V F F F F V V V Tautologia: é uma proposição formada pela combinação de outras proposições (p, q, r,...) a qual é verdadeira independentemente das proposições p, q, r,..., serem verdadeiras ou falsas. Uma tautologia importante no estudo da lógica fuzzy é ou, equivalentemente, ( p q ) [ p ( q ) ] ( p q ) ( p ) q Uma prova da validade dessa tautologia, usando tabelas verdades, pode ser encontrada na referência [2]. Representação por funções de pertinência µ p () = Se p é verdadeira (V) 0 Se p é falsa (F) As operações da lógica clássica tem relação direta com as operações de conjuntos e da Álgebra Booleana. Algumas dessas relações são mostradas nas tabelas a seguir Lógica Teoria dos conjuntos Lógica Álgebra Booleana V F 0 c +
Usando as tautologias ( p q ) [ p ( q ) ] ou ( p q ) ( p ) q, e as eqüivalências entre os operadores lógicos e a teoria dos conjuntos, é possível [2] mostrar que µ p q (,y) = - min [µ p (), - µ q (y)] ou, equivalentemente, µ p q (,y) = ma [ - µ p (), µ q (y)] 4.2 Lógica Fuzzy = - µ p () [ - µ q (y)] Como no caso dos conjuntos, a etensão da lógica crisp para a lógica fuzzy é realizada pela substituição funções de pertinência ambivalentes (0 ou ) por funções de pertinência fuzzy, ou seja, definidas no intervalo [ 0, ]. Sejam os conjuntos fuzzy A e B, com elementos A e y B. A proposição Se é A, Então y é B tem uma função de pertinência µ A B (,y) [0, ]. A função de pertinência µ A B (,y) mede o grau de verdade da proposição. De maneira similar ao caso crisp, as relações abaio são válidas µ A B (,y) = min [µ A (), - µ B (y)] µ A B (,y) = ma [ - µ A (), µ B (y)] = - µ A () [ - µ B (y)] 5 SISTEMAS DE INFERÊNCIA FUZZY 5. A Regra SE < >, ENTÃO < > Fuzzy Sejam e y variáveis lingüísticas definidas nos universos de discurso X e Y, respectivamente, e sejam A e B valores assumidos por essas variáveis. A regra pode ser então, enunciada, como Se é A, Então y é B Antecedente ou Premissa Conseqüente ou Conclusão Eemplo: Se <tensão é baia>, Então <inj._reativos_ind. é alta>. Para um valor de tensão de 0.95 0.5, as funções de pertinência da variável tensão mostrada abaio produz o valor 2
tensão_baia; isto implica, de acordo com a regra, em um conseqüente definido pelo conjunto fuzzy inj.-reativos_alta, como mostrado nos gráficos abaio. O valor da função de pertinência do conjunto tensão_baia, correspondente ao valor de 0.95 pu, é 0.5 como mostrado na figura abaio Para efeito de inferência fuzzy, a função de pertinência é cortada na altura 0.5 como será indicado na seção seguinte. µ V.0 Muito-Baia Baia Normal Alta µ Q Baia Média Alta.0 0.7 0.8 0.9..2.3 V 0 0.2 0.4 0.6 Q 5.2 Estrutura do Sistema de Inferência A estrutura geral de um sistema de inferência fuzzy é mostrada na figura abaio. Base de Regras Entrada Crisp Fuzzificador Defuzzificador Saída Crisp Inferência Os elementos dessa estrutura são: Base de Regras: coleção de regras do tipo Se_Então, as quais podem ser epressas como Regra (r): SE u é F r e u 2 é F 2 r e u n é F n r ENTÃO v é G r, r =,,N onde F r i, r =,,N, e G r são conjuntos fuzzy definidos em U i R, r =,,N, e V R, respectivamente. Fuzzificador: determina o grau de pertinência de cada entrada no antecedente da regra. Se o antecedente tem mais de um componente (proposição), os operadores fuzzy E (min) e OU (ma) são utilizados para combinar os efeitos como a seguir α r = min i=,,n { µ i (u i ) } ou 3
α r = ma i=,,n { µ i (u i ) } onde α r : combinação do grau de pertinência dos antecedentes da regra; µ i (u i ) : grau de pertinência do i-ésimo antecedente para o valor da i-ésima entrada (u i ); Inferência: determina o grau de validade dos conseqüentes das regras e combina os resultado no conjunto fuzzy da saída. O principio utilizado assume que regras com baio grau de pertinência no antecedente (α r ) devem ter pouca validade no conseqüente. Esse processo é implementado pelo operador Ma-Min µ G = ma { min {α r, µ i (u i ),}, {µ r (u i )} } A operação acima eqüivale a redefinir os conjuntos fuzzy associados ao conseqüente das regras (modificação da forma das funções de pertinência) e a combinação dos mesmos em um conjunto fuzzy da saída. Essa operação é realizada em dois passos: i. Min: cortando a função de pertinência do conseqüente no ponto indicado pelo valor α r do antecedente; ii. Ma: combinando (união) os conjuntos fuzzy representando o conseqüente das regras. Defuzzificador: produz uma saída crisp a partir do conjunto fuzzy definido pelo bloco de inferência. Alguns métodos de defuzzificação utilizados são: i. Valor máimo: ; ii. Valor médio dos máimos; iii. Bisetor: iv. Centróide ou centro de massa. 4
5.3 Eemplo 4 Objetivo: Determinação da gorjeta em um restaurante a partir de dados sobre a qualidade_da_comida e o atendimento. Regras: R: SE atendimento é ruim ou qualidade_da_comida é ruim, ENTÃO gorjeta é baia R2: SE atendimento é bom, ENTÃO gorjeta é média R3: SE atendimento é ecelente ou qualidade_da_comida é ecelente, ENTÃO gorjeta é alta Funções de pertinência: Atendimento Qualidade_da_Comida Gorjeta Ruim Bom Ecelente Ruim Ecelente Baia Média Alta 0 0 0 20 30 4 Este eemplo foi retirado do manual do Fuzzy Logic Toolbo do Matlab. 5
Fuzzificação: grau de pertinência das entradas Atendimento Qualidade_da_Comida Ruim 0 Ruim 0 0 0 Bom 0.3 0 Ecelente 0.4 Ecelente 0.7 0 0 7.5 8.0 6
Fuzzificação: combinação dos antecedentes R: atendimento ruim ou qualidade_da_comida é ruim: ma [0, 0] = 0 R2: atendimento bom: 0.3 R: atendimento ecelente ou qualidade_da_comida é ecelente: ma [0.4, 0.7] = 0.7 Inferência: corte das funções de pertinência e combinação dos conjuntos fuzzy do conseqüente Baia 0 20 30 Média 0.3 0 20 30 0 20 30 0.7 Alta 0 20 30 Defuzzificação: centróide 0 20 30 7
6 CONTROLE FUZZY Aplicações em sistemas de modelagem difícil e para os quais não se eige um controle muito preciso; Procedimento de projeto: Identificação das variáveis de entrada e saída; Construção das regras de controle; Estabelecer método para representar o estado do sistema em termos de conjuntos fuzzy (funções de pertinência e método de fuzzificação) Seleção da regra de inferência; Estabelecer método de defuzzificação. Eemplo Genérico: Controlador com duas entradas (erro e variação do erro) e uma saída. ε K ε Ref + _ d/dt Sistema de u y. K Planta Inferência ε Fuzzy K ε. Regra de Inferência: SE < ε > é A i e < ε > é B i ENTÃO u é C i Normalização: - ε, ε, u. 8
Regras de Controle. ε GN MN PN ZE PP MP GP ε GN GP GP GP MP MP PP ZE MN GP MP MP MP PP ZE PN PN GP MP PP PP ZE PN MN ZE MP MP PP ZE PN MN MN PP MP PP ZE PN PN MN GN MP PP ZE PN MN MN MN GN GP ZE PN MN MN GN GN GN Funções de Pertinência Normalizadas GN MN PN ZE PP MP GP -.0-0.65-0.3 0 0.3 0.65.0 9
7 OTIMIZAÇÃO FUZZY Os modelos convencionais de otimização (programação linear e não linear, etc.) não contemplam certas características encontradas em problemas práticos: Incertezas nos dados; Restrições fleíveis (soft constraints); Múltiplos objetivos; Meios de evitar soluções não-realísticas (não implementáveis na prática). A introdução de conceitos da teoria dos conjuntos fuzzy oferece uma opção para melhorar o desempenho dos modelos de otimização em relação aos aspectos acima referidos. Esses conceitos serão introduzidos através do eemplo abaio retirado de []. Eemplo: encontrar um valor de tal que Objetivo: deve ser substancialmente maior que 0; Restrição: deve estar na vizinhança de 0; Formulação clássica: usando um modelo de programação linear, o problema acima pode ser formulado como Maimizar z = Sujeito a 0 2 Na formulação acima, o analista precisa utilizar sua eperiência para definir os limites da variável assim como escolher uma função objetivo adequada (não seria melhor usar 2? ). 20
REFERÊNCIAS [] H.J. Zimmermann, Fuzzy Set Theory and Its Applications, Third Edition, Kluwer, 996. [2] T.J. Ross, Fuzzy Logic with Engineering Applications, McGraw-Hill International Editions, 997. [3] J.M. Mendel, Fuzzy Logic Systems for Engineering: A Tutorial, Proceedings of the IEEE, vol. 83, no. 3, pp. 345-377, March 995. [4] K. Tomsovic and M.Y. Chow, Eds., Tutorial on Fuzzy Logic Applications in Power Systems, IEEE PES Winter Meeting, Singapore, January 2000. 2