Sei sulla pagina 1di 38

CONCEITOS FUNDAMENTAIS DA TEORIA DE CONJUNTOS FUZZY, LGICA FUZZY E APLICAES

Fernando A. C. Gomide * Ricardo R. Gudwin * Ricardo Tanscheit **

* Departamento de Engenharia de Computao e Automao Industrial (DCA) Faculdade de Engenharia Eltrica (FEE) Universidade Estadual de Campinas (UNICAMP) CP 6101, CEP 13081-970, Campinas - SP e-mail : gomide@dca.fee.unicamp.br gudwin@dca.fee.unicamp.br ** Departamento de Engenharia Eltrica e Eletrnica (DEEE) Universidade Federal do Maranho (UFMA) Campus do Bacanga CEP 65085-580, So Lus - MA RESUMO: A Lgica Fuzzy (Nebulosa) a lgica que suporta os modos de raciocnio que so aproximados ao invs de exatos. Modelagem e controle fuzzy de sistemas so tcnicas para o tratamento de informaes qualitativas de uma forma rigorosa. Derivada do conceito de conjuntos fuzzy, a lgica fuzzy constitui a base para o desenvolvimento de mtodos e algoritmos de modelagem e controle de processos, permitindo a reduo da complexidade de projeto e implementao, tornando-se a soluo para problemas de controle at ento intratveis por tcnicas clssicas. Este trabalho apresenta uma introduo aos princpios e s idias que fundamentam a aplicao da lgica fuzzy em sistemas inteligentes em geral, e controle de processos em particular. Hardware e ferramentas de suporte ao desenvolvimento de aplicaes so tambm descritos. Exemplos de diferentes classes de problemas de controle so consideradas a fim de ilustrar o potencial da lgica fuzzy em aplicaes prticas. Finalmente apresentado um panorama do estado da arte atual, incluindo os principais resultados prticos em uso por vrios segmentos da indstria e as tendncias futuras.

1 - INTRODUO
A lgica fuzzy a lgica baseada na teoria dos conjuntos fuzzy. Ela difere dos sistemas lgicos tradicionais em suas caractersticas e seus detalhes. Nesta lgica, o raciocnio exato corresponde a um caso limite do raciocnio aproximado, sendo interpretado como um processo de composio de relaes nebulosas. Na lgica fuzzy, o valor verdade de uma proposio pode ser um subconjunto fuzzy de qualquer conjunto parcialmente ordenado, ao contrrio dos sistemas lgicos binrios, onde o valor verdade s pode assumir dois valores: verdadeiro (1) ou falso (0). Nos sistemas lgicos multi-valores, o valor verdade de uma proposio pode ser ou um elemento de um conjunto finito, num intervalo, ou uma lgebra booleana. Na lgica nebulosa, os valores verdade so expressos linguisticamente, (e.g. : verdade, muito verdade, no verdade, falso, muito falso, ...), onde cada termo lingustico interpretado como um subconjunto fuzzy do intervalo unitrio. Outras caractersticas da lgica fuzzy podem ser sumarizadas como segue : nos sistemas lgicos binrios, os predicados so exatos (e.g. : par, maior que ), ao passo que na lgica fuzzy os predicados so nebulosos (e.g. : alto, baixo, ...). Nos sistemas lgicos clssicos, o modificador mais utilizado a negao enquanto que na lgica fuzzy uma variedade de modificadores de predicados so possveis (e.g. : muito, mais ou menos, ...). Estes modificadores so essenciais na gerao de termos lingusticos (e.g. : muito alto, mais ou menos perto, etc). Nos sistemas lgicos clssicos existem somente os quantificadores existenciais () e universais (). A lgica fuzzy admite, em adio, uma ampla variedade de quantificadores (e.g. : pouco, vrios, usualmente, frequentemente, em torno de cinco, etc ). A probabilidade, no contexto da lgica clssica, um valor numrico ou um intervalo. Na lgica nebulosa existe a opo adicional de se empregar probabilidades lingusticas (e.g. : provvel, altamente provvel, improvvel, etc), interpretados como nmeros fuzzy e manipuladas pela aritmtica fuzzy (Kaufmann & Gupta , 1985). Tambm, em contraste com a lgica modal clssica, o conceito de possibilidade interpretado utilizando-se subconjuntos fuzzy no universo dos reais (Zadeh, 1988).

Nas teorias de controle clssica e moderna, o primeiro passo para implementar o controle de um processo derivar o modelo matemtico que descreve o processo. O procedimento, requer que se conhea detalhadamente o processo a ser controlado, o que nem sempre factvel se o processo muito complexo. As teorias de controle existentes se aplicam a uma grande variedade de sistemas, onde o processo bem definido. Vrias tcnicas, tais como para controle linear multivarivel (Doyle e Skin, 1981), estimao de estado a partir de medidas ruidosas (Anderson e Moore, 1979), controle timo (Sage e White, 1977), sistemas lineares estocsticos (Bertsekas, 1976), alm de certas classes de problemas no-lineares determinsticos (Holtzman, 1970), foram desenvolvidas e aplicadas com sucesso em um grande nmero de problemas bem postulados. Entretanto, todas estas tcnicas no so capazes de resolver problemas reais cuja modelagem matemtica impraticvel. Por exemplo, em diversas situaes um volume considervel de informaes essenciais s conhecido a priori de forma qualitativa. Do mesmo modo, critrios de desempenho s esto disponveis em termos lingusticos. Este panorama leva a imprecises e falta de exatido que inviabilizam o uso da maioria das teorias utilizadas at agora. A modelagem e o controle fuzzy (Lee, 1990) so tcnicas para se manusear informaes qualitativas de uma maneira rigorosa. Tais tcnicas consideram o modo como a falta de exatido e a incerteza so descritas e, fazendo isso, tornam-se suficientemente poderosas para manipular de maneira conveniente o conhecimento. A sua utilizao em sistemas de controle de processos em tempo real, em computadores ou micro-controladores, das mais convenientes, dado que, geralmente, no envolvem nenhum problema computacional srio. A teoria de modelagem e controle fuzzy trata do relacionamento entre entradas e sadas, agregando vrios parmetros de processo e de controle. Isso permite a considerao de processos complexos, de modo que os sistemas de controle resultantes proporcionam um resultado mais acurado, alm de um desempenho estvel e robusto. A grande simplicidade de implementao de sistemas de controle fuzzy pode reduzir a complexidade de um projeto a um ponto em que problemas anteriormente intratveis passam agora a ser solveis.

2 - CONJUNTOS FUZZY 2.1 - Fundamentos


Nesta seo sero apresentadas as idias bsicas sobre conjuntos e lgica fuzzy visando a modelagem e o desenvolvimento de sistemas em geral e de sistemas de controle em particular. Apesar de existir uma complexa base formal sustentando, por exemplo, seu uso na modelagem e controle de sistemas, ser evidenciado aqui somente o necessrio para o entendimento da teoria bsica de sistemas fuzzy (Pedrycz, 1989; Yager et.al., 1987; Lee, 1990; Albertos, 1992). Na teoria de conjuntos clssica, um elemento pertence ou no a um dado conjunto. Dado um universo U e um elemento particular x U, o grau de pertinncia A(x) com respeito a um conjunto A U dado por:

1 se x A A ( x) = 0 se x A
A funo A(x) : U {0,1} chamada de funo caracterstica na teoria clssica de conjuntos. Frequentemente, uma generalizao desta idia utilizada, por exemplo, para manipulao de dados com erros limitados. Todos os nmeros dentro de um erro percentual tero um fator de pertinncia 1, tendo todos os demais um fator de pertinncia 0. (veja figura 1a). Para o caso preciso, o fator de pertinncia 1 somente no nmero exato, sendo 0 para todos os demais (veja figura 1b).

(a)

(b)

(c)

0 U

0 x U

0 25 U

Figura 1: Funes de Pertinncia

Zadeh (Zadeh, 1965) props uma caracterizao mais ampla, na medida em que sugere que alguns elementos so mais membros de um conjunto do que outros. O fator de pertinncia pode ento assumir qualquer valor entre 0 e 1, sendo que o valor 0 indica uma completa excluso e um valor 1 representa completa pertinncia. Esta generalizao aumenta o poder de expresso da funo caracterstica. Por exemplo, para expressar a idia de que uma temperatura tem seu valor por volta de 25, pode-se utilizar uma funo de pertinncia triangular (veja figura 1c), com o pico em 25, para sugerir a idia de que quanto mais perto o nmero de 25, mais ele se identifica com o conceito representado. Formalmente, seja U uma coleo de objetos denominados genericamente por {u}. U chamado de universo de discurso, podendo ser contnuo ou discreto. Um conjunto fuzzy A em um universo de discurso U definido por uma funo de pertinncia A que assume valores em um intervalo [0,1]: A : U [0,1] O conjunto fuzzy A em U , ento, um conjunto de pares ordenados A = {A(u)/u}, u U O conjunto suporte de um conjunto fuzzy A o sub-conjunto dos pontos u de U tal que A(u) > 0. Um conjunto fuzzy cujo conjunto suporte um nico ponto de U com A = 1 chamado de um conjunto unitrio fuzzy.

2.2 - Definies e Operaes


Considerando os conjuntos fuzzy A e B em um universo U, sejam: Conjunto vazio: Complemento A: Conjuntos iguais: A subconjunto de B: A = se e somente se u U, A(u) = 0 A(u) = 1 - A(u) A = B se e somente se u U, A(u) = B(u) A B se u U, A(u) < B(u)

Nas operaes com conjuntos fuzzy utilizam-se os conceitos de norma triangular (norma-t) e co-norma triangular (norma-s). Uma norma triangular uma funo : [0,1] [0,1] [0,1] tal que, x, y, z, w [0,1]: (i) (ii) (iii) (iv) x x (x x w y z, se x y, w z y = y x y) z = x (y z) 0 = 0; x 1 = x

Uma co-norma triangular tal que :[0,1] [0,1] [0,1], satisfazendo as propriedades (i) a (iii) acima e ainda (iv) x 0 = x; x 1 = 1

Exemplos de normas-t incluem o mnimo ( ) e o produto algbrico (.). Como exemplo de normas-s podem ser citadados o mximo ( ) e a soma limitada () (Pedrycz, 1989). Para representar a unio e interseo de conjuntos fuzzy, utilizam-se respectivamente normas triangulares e co-normas triangulares. Assim, utilizando-se os operadores mnimo como norma-t e mximo como norma-s, tm-se: Unio de A e B: Interseco de A e B: A B(x) = A(u) B(u) A B(x) = A(x) B(x)

2.3 - Propriedades Algbricas


Utilizando as definies de unio e interseco, implementadas pelos operadores mximo e mnimo, e complemento, possvel verificar que as seguintes propriedades algbricas de conjuntos ordinrios tambm valem para conjuntos fuzzy: Involuo: Idempotncia: Comutatividade: Associatividade: Distributividade: (A')'= A AA=A e AA=A AB=BA e AB=BA (A B) C = A (B C) e (A B) C = A (B C) A (B C) = (A B) (A C) A (B C) = (A B) (A C) se A B e B C ento A C

Lei Transitiva:

Observando que as funes de pertinncia dos conjuntos vazio e universo so definidas como sendo 0 e 1, respectivamente, u U, as seguintes propriedades tambm so vlidas: A= e AU=A A=A e AU=U As propriedades de conjuntos clssicos que no se verificam para conjuntos fuzzy so: A A' e A A' U

2.4 - Relao Fuzzy


Se A1,A2, ..., An so conjuntos fuzzy em U1, U2, ..., Un respectivamente, uma relao fuzzy n-ria um conjunto fuzzy em U1 U2 ... Un, expresso da seguinte maneira: R = { [ (u1, ...,un), R(u1, ...,un) ] | (u1, ...,un) U1 U2 ... Un } ou, mudando a notao, R = { R(u1, ...,un) / (u1, ...,un) } , (u1, ...,un) U1 U2 ... Un Se R e P so relaes fuzzy em U V e V W respectivamente, a composio de R e P uma relao denotada por R P definida a seguir: R P = { [ (u,w), supv ( R(u,v) P(v,w) ) ]; u U, v V, w W }

2.5 - Variveis Lingusticas


Uma varivel lingustica uma varivel cujos valores so nomes de conjuntos fuzzy. Por exemplo, a temperatura de um dado processo poderia ser uma varivel lingustica assumindo valores baixa, mdia, alta, etc. Estes valores so descritos por intermdio de conjuntos fuzzy (vide figura 2).

temp

BAIXA 1

MDIA

ALTA

0 25 50 75 temperatura ( C )

Figura 2 : Varivel Lingustica Temperatura Generalizando, os valores de uma varivel lingustica podem ser sentenas em uma linguagem especificada. Para ilustrar, os valores da varivel lingustica temperatura poderiam ser expressos como alta, no alta, muito alta, bastante alta, no muito alta, alta mas no muito alta. Neste caso, os valores da varivel so sentenas formadas a partir do nome alta, da negao no, dos conectivos e e mas, e dos modificadores muito e bastante. Para gerar estes valores compostos, utilizam-se diversos termos, que podem ser divididos nas seguintes categorias: (a) Termos Primrios: nomes de conjuntos fuzzy especificados em um determinado universo (por exemplo alto, baixo, pequeno, mdio, grande, zero). Conectivos Lgicos: A negao NO , conectivos E e OU, e conectivos mascarados, como mas, porm. Modificadores, como muito, pouco, levemente, extremamente. Delimitadores, como parnteses.

(b) (c) (d)

Termos primrios esto associados diretamente a conjuntos fuzzy. Estes, so usualmente definidos de trs maneiras diferentes: Funes de pertinncia analticas. Funes de pertinncia lineares por partes, resultando em formas triangulares ou trapezoidais. Funes de pertinncia discretizadas A negao NO e os conectivos E e OU podem ser definidos em termos das operaes de complementao, interseco e unio, respectivamente. Os conectivos mascarados correspondem funcionalmente aos conectivos E e OU. Por exemplo, quente mas no muito quente corresponde funcionalmente a quente e no muito quente. Modificadores lingusticos servem para modificar o conjunto fuzzy associado a um termo lingustico, por meio de uma composio de funes. Por exemplo, seja m:[0,1][0,1] correspondente ao modificador muito. Se b:U[0,1] corresponder ao conjunto fuzzy associado ao termo lingustico baixo, o conjunto fuzzy associado ao termo lingustico composto muito baixo ser m(b(u)). Note que os modificadores no so funes definidas U [0,1], mas sim [0,1][0,1]. Delimitadores so utilizados para evitar ambiguidades. Por exemplo, {a E b OU c E d} pode ser ambguo, ou seja, pode significar { (a E B) OU (c E D)} ou ento {a E (b OU c) E d}. Para determinar com preciso a ordem em que os operadores lgicos devem ser considerados, utilizam-se os delimitadores. Quando esta ordem puder ser determinada sem ambiguidade, os delimitadores podem ser omitidos. Utilizando todos estes tipos de termos, pode-se gerar um conjunto maior de valores para uma varivel lingustica a partir de uma coleo de termos primrios. Por exemplo, usando MUITO em conjunto com NO, E, e o termo primrio grande, pode-se gerar os conjuntos fuzzy MUITO grande, MUITO MUITO grande, NO MUITO grande, grande E NO MUITO grande, etc. Formalmente, uma varivel lingustica caracterizada por uma quntupla (X,T(X),U,G,M), onde:

X: T(X) : U: G: M:

Nome da varivel Conjunto de termos de X, ou seja, o conjunto de nomes dos valores lingusticos de X. Universo de discurso Regra sinttica (geralmente uma gramtica) para gerar os valores de X como uma composio de termos de T(X), conectivos lgicos (negao, interseo e unio), modificadores e delimitadores. Regra semntica, para associar a cada valor gerado por G um conjunto fuzzy em U.

A principal funo das variveis lingusticas fornecer uma maneira sistemtica para uma caracterizao aproximada de fenmenos complexos ou mal definidos. Em essncia, a utilizao do tipo de descrio lingustica empregada por seres humanos, e no de variveis quantificadas, permite o tratamento de sistemas que so muito complexos para serem analisados atravs de mecanismos matemticos convencionais.

2.6 - Proposies Fuzzy


Seja uma frase da forma ( A), onde o nome de uma varivel lingustica e A um subconjunto fuzzy definido no universo de discurso U de . A frase ( A) chamada de uma proposio fuzzy. De uma maneira mais genrica, podemos ter uma proposio fuzzy n-ria, efetuando o produto cartesiano de variveis lingusticas e utilizando relaes fuzzy ao invs de conjuntos fuzzy. Sejam x1, x2 , ... , xn os nomes de m variveis lingusticas cujos universos de discurso so respectivamente X1 , X2 , ... , Xn . Seja R uma relao fuzzy definida em X1 X2 ... Xn . Assim, a frase ((x1, x2 , ... , xn) R) uma proposio fuzzy n-ria. Observe que quando n igual a 1, esta se reduz a uma proposio fuzzy simples. Proposies fuzzy podem ser combinadas utilizando-se diferentes operadores, gerando novas proposies fuzzy. Exemplos de operadores incluem os conectivos lgicos E e OU, bem como o operador de implicao SE...ENTO. As proposies fuzzy resultantes da combinao podem ser descritas em termos de relaes fuzzy. A determinao do valor desta relao fuzzy, em funo dos conjuntos fuzzy de cada operando, pode ser realizada de muitas maneiras diferentes. Por exemplo, sejam as variveis lingusticas de nomes x e y com universos de discurso X e Y respectivamente. Sejam A e B conjuntos fuzzy definidos respectivamente em X e Y. Por fim, sejam as seguintes proposies fuzzy (x A) e (y B). Conectando-se as duas proposies com o operador OU, temos: (x A) OU (y B) Essa combinao gerar a proposio fuzzy binria ((x,y) RA OU B) onde RA OU B uma relao fuzzy em X Y. No caso do operador OU, a relao determinada por uma funo fOU , usualmente uma norma-s: RA OU B = { R (x,y) / (x,y) | R (x,y) = fOU (A (x) , B (y) ) } Se conectarmos as proposies com o operador E, teremos: (x A) E (y B) que gerar a proposio fuzzy n-ria ((x,y) RA E B) onde RA E B uma relao fuzzy em X Y. No caso do operador E, a relao determinada por uma funo fE , normalmente uma norma-t: RA E B = { R (x,y) / (x,y) | R (x,y) = fE (A (x) , B (y) ) }

O operador SE...ENTO tambm conhecido como uma declarao condicional fuzzy. Este operador descreve a dependncia do valor de uma varivel lingustica em relao ao valor de uma outra (independente). Seu uso dado por: SE (x A) ENTO (y B) Esta pode ser reduzida a uma proposio fuzzy binria: ( (x,y) RA B ) A funo de pertinncia R (x,y) que define a implicao pode ser obtida a partir das funes de pertinncia individuais A(x) e B(y) de inmeras maneiras (Gaines, 1976; Baldwin & Pilsworth, 1980; Yager, 1980; Mizumoto, 1982; Whalen & Schott, 1983). De um modo genrico RA B = { R (x,y) / (x,y) | R (x,y) = f (A (x) , B (y) ) } Vrias declaraes podem ser combinadas atravs do conectivo OU, formando assim um algoritmo fuzzy RN, da forma: RN : R1 OU R2 OU R3 ..... OU Rn Se A1 , A2 , ...., An so conjuntos fuzzy em X, e B1 , B2, ....., Bn so conjuntos fuzzy em Y, um algoritmo fuzzy dado por: ((x,y) RN) : SE (x A1) ENTO (y B1) OU SE (x A2) ENTO (y B2) OU . . SE (x An ) ENTO (y Bn) ((x,y) R1 ) OU ((x,y) R2) OU ... OU ((x,y) Rn )

((x,y) RN ) :

Assim, supondo que a funo fOU associativa, ou seja fOU (a, fOU (b,c)) = fOU (fOU (a,b), c) = fOU (a,b,c), para o algoritmo fuzzy tm-se: RN (x,y) = fOU (R1(x,y), R2(x,y), .... , Rn(x,y)) = fOU [f (A1(x), B1(y)), f (A2(x), B2(y)), ....., f(An(x), Bn(y))] As equaes acima foram desenvolvidas para variveis simples A e B, mas podem ser estendidas para casos de mais variveis. Normalmente as variveis antecedentes so combinadas atravs do conectivo E: SE ( (x1 A1) E (x2 A2 ) E ... E (xm Am ) ) ENTO (y B) que se reduz a: ( (x1 , x2 , .... , xm , y) R) Neste caso, supondo-se do mesmo modo que fE associativa tm-se: R (x1 , x2 , .... , xm , y) = f ( fE (A1 (x1) , A2 (x2 ) , .... , Am (xm) ) , B (y) ) Consideremos agora, em detalhe, quatro das funes de implicao j utilizadas em aplicaes de controle. Por uma questo de simplicidade, as sentenas sero do tipo SE A ENTO B. (1) mnimo, proposta por Mamdani (Mamdani, 1974; Mamdani & Assilian, 1975) como simplificao de max-min, originariamente proposta por Zadeh, baseada em princpios de lgica:

RA

(x,y) = A(x) B(y)

(2) produto, utilizada por Ostergaard (Holmblad & Ostergaard, 1981) em aplicaes prticas: RA B (x,y) = A(x) . B(y) Em ambos os casos acima, a combinao de n declaraes condicionais fuzzy efetuada atravs do conectivo OU, implementado por max (Lembessis, 1984). Para a funo de implicao min, por exemplo, temos:

RN (x,y) =

(Aj (x) Bj (y))

(3) Lukasiewicz, baseada na lgica multivalores de Lukasiewicz: RA


B

(x,y) = 1 (1 - A(x) + B(y))

onde '+' representa adio algbrica. (4) VSS, baseada em 'variant of the system of standard sequences' (Rescher, 1969): RA B (x,y) = (1 - A(x)) B(y) Nos casos (3) e (4) acima, a combinao de n declaraes condicionais d-se atravs do conectivo E, implementado pelo mnimo. Assim, para VSS:

RN (x,y) =

(1 - Aj (x)) Bj (y))

2.7 - Regra de Inferncia Composicional


Consideremos duas proposies fuzzy: ( (x,y) R1 ) : ( (y,z) R2 ) : SE (x A) ENTO (y B) SE (y B) ENTO (z C)

Estas duas proposies podem ser compostas de forma a resultar em: ( (x,z) R12 ) : SE (x A) ENTO (z C)

Como j vimos, a composio R12 = R1 o R2 determinada pela composio sup- . Por exemplo, esta pode ser definida ou por uma regra do tipo max-min

R12 (x,z) = ou por uma do tipo max-produto

(R (x,y) R (y,z))
y 1 2

R12 (x,z) =

(R (x,y) . R (y,z))
y 1 2

Quando conjuntos fuzzy discretos so empregados, as operaes acima so equivalentes a produto interno de duas matrizes, com a multiplicao e a soma substitudas pelas operaes min e max, respectivamente. razovel que se use uma das duas definies acima em correspondncia com a funo de implicao adotada. Assim, com as funes de implicao envolvendo somente operadores max e min (VSS e

min), emprega-se a regra composicional max-min. No caso de implicaes que envolvem operadores aritmticos, pode-se usar a regra max-produto. A questo que se coloca agora a seguinte: dada uma relao entre 2 variveis fuzzy, qual o consequente para um dado antecedente? Esta questo equivalente a dizermos que temos duas proposies fuzzy, a primeira uma proposio fuzzy simples, correspondendo a um fato, e a segunda uma proposio fuzzy binria, correspondendo a uma regra fuzzy. Consideremos duas variveis lingusticas x e y, s quais so associados os conjuntos fuzzy A e B definidos abaixo: A = {A(x)/x} B = {B (y)/y} xX yY

e a relao de implicao entre elas R = {R(x,y) / (x,y)}, R (x,y) = f (A (x), B (y) ) gerando a proposio fuzzy binria ( (x,y) R) correspondendo regra fuzzy SE (x A) ENTO (y B). Se dada uma proposio fuzzy simples (fato) (x A'), onde A dado por A'= {A (x)/x} pode-se inferir, pela regra da composio: (y B) Utilizando-se a regra (lei) de inferncia max-min(Zadeh, 1973) teremos que: B'= A' o R B'= {

({A (x) R(x,y))/y}


x

A interpretao grfica desta regra mostrada pela figura 3 abaixo, onde a interseco interpretada pela t-norma min e a projeo em Y pelo operador max. Note que, em sntese, esta regra constituida de duas etapas : interseo da extenso cilndrica de A, A com RAB , e a projeo desta interseco em Y.

A R A B

R AB
B

Figura 3 - Regra de Inferncia Composicional Em geral, a regra da composio expressa por:

B (y ) = sup{ A (x ) 7 R
u

A B

(x, y)}

Quando mais de uma regra acionada, as contribuies das diversas regras aps a inferncia so combinadas pelo operador de agregao (fOU ) . Por exemplo, supondo-se que B'1,...,B'n so os resultados

derivados das diversas regras acionadas, todos relacionados com a mesma varivel lingustica, o resultado combinado B' :

B= U Bi i
onde A figura 4 ilustra o processo de inferncia max-min quando existem 2 regras, Ai Bi e Aj Bj. A' o fato de entrada, representado como um conjunto fuzzy.
Ai A Bi B i U Aj A Bj B j U V V V B

representa o operador agregao (unio, por exemplo)

Figura 4: Mecanismo de Inferncia Fuzzy

3 - MODELAGEM FUZZY DE SISTEMAS E PROCESSOS


Para modelar um sistema necessrio descrever o comportamento do mesmo para, por exemplo, sua anlise, simulao e/ou projeto de controladores. Para os propsitos deste artigo, consideraremos trs categorias de representao de sistemas : equaes matemticas, regras fuzzy (lingusticas) e redes neurais artificiais (Yamakawa, 1993). Equaes relacionais ou diferenciais descrevem a dinmica ou a cintica de sistemas (ou o conhecimento sobre o sistema) em uma forma muito conveniente. Se a relao entre a entrada x e a sada f(x) do sistema ou a relao entre a causa x e a resposta f(x) obtida como mostrado na figura 5, ento f(x) descrito por:

f ( x ) = ( x 3)
f(x) 30.0

15.0

0.0 -2.00 0.00 2.00 4.00 6.00 8.00 x

Figura 5 - Exemplo de Funo f(x) descrita por Equao Matemtica

10

A descrio de um sistema com este tipo de equao de grande importncia. , no entanto, muito difcil de identificar a equao que descreve o sistema exatamente, especialmente em casos de sistemas complexos e com mltiplas variveis. Em adio, tambm muito difcil reescrever esta equao quando a relao entre x e f(x) varia. Portanto, esta descrio no apropriada para a maioria de sistemas complexos tais como, sistemas no lineares e sistemas variantes no tempo. A medida que a complexidade do sistema aumenta, a possibilidade de descrever um sistema com equaes matemticas diminui (Princpio da Incompatibilidade de Zadeh). Uma outra abordagem consiste em descrever a relao entre x e f(x) atravs de regras do tipo: Regra i : Se x Ai Ento f(x) Bi , i = 1,..., N

onde x representa a varivel independente e f(x) a varivel dependente, sendo Ai e Bi constantes lingusticas e N o nmero de dados experimentais que descreve a funo. Quando Ai e Bi so constantes lingusticas com valores numricos exatos (como nos sistemas clssicos da inteligncia artificial), teramos o seguinte, com relao ao exemplo anterior (Figura 6).
f(x) 30.0

15.0

0.0 -2.00 0.00 2.00 4.00 6.00 8.00 x

Figura 6 - Exemplo de Funo f(x) descrita por Regras Lingusticas com Valores Exatos.

Regra 1 Regra 2 Regra 3 Regra 4 Regra 5 Regra 6 Regra 7 Regra 8 Regra 9 Regra 10 Regra 11

Se x -2 Se x -1 Se x 0 Se x 1 Se x 2 Se x 3 Se x 4 Se x 5 Se x 6 Se x 7 Se x 8

Ento Ento Ento Ento Ento Ento Ento Ento Ento Ento Ento

f(x) 25 f(x) 16 f(x) 9 f(x) 4 f(x) 1 f(x) 0 f(x) 1 f(x) 4 f(x) 9 f(x) 16 f(x) 25

A vantagem desta descrio a facilidade em mudar a descrio do sistema. Por exemplo, quando somente uma variao local verificada (indicada por quadrados na figura 6) necessrio somente modificar os valores correspondentes dos consequentes das regras (e.g. : Regra 7 : 1 para 2; Regra 8 : 4 para 6; Regra 9 : 9 para 13; Regra 10 : 16 para 18) pois as regras so independentes umas das outras. Isto mostra que a descries na forma de regras so apropriadas para sistemas com aprendizagem, sistemas auto-organizveis e sistemas adaptativos. Por outro lado, existem tambm algumas desvantagens. Quando dado que x=1 a concluso obtida f(x) = 4 a partir do casamento entre o dado x=1 com o antecedente x=1 da regra 4. Este , essencialmente, o procedimento bsico de inferncia em sistemas baseados em regras da inteligncia artificial clssica. Contudo, se dado que x = 1.5 nada pode ser inferido a partir do conjunto de regras mencionado pois no existe nenhuma delas que possui um antecedente com x=1.5, exatamente. Isto mostra que os sistemas

11

clssicos binrios so pouco eficientes com relao a conhecimento impreciso, com rudo ou com variao em dados de entrada, e que necessrio uma enorme quantidade de regras (base de conhecimento) para se obter um resultado ou desempenho significativo. Consequentemente, este tipo clssico de inferncia demanda tempo devido a necessidade de se verificar o casamento entre um dado e uma base de regras (em geral muito grande). Em adio, este mecanismo de inferncia no apropriado para manusear possveis regras contraditrias existentes pois, caso contrrio, poderia produzir concluses tambm contraditrias a partir de um mesmo dado. Estas desvantagens esto tambm presentes nos sistemas clssicos de inteligncia artificial, baseados somente no processamento simblico, mas no no processamento do significado dos termos lingusticos. Alternativamente, poderamos utilizar regras do mesmo tipo anterior, mas interpretando-as como regras fuzzy. Neste caso Ai e Bi seriam termos lingusticos associados varivel x, cada um destes termos associado a um conjunto fuzzy a fim de se estabelecer seu significado. Assim, poderamos descrever a relao entre x e f(x) por : Regra 1 : Se x est no entorno de -2 Ento f(x) est no entorno de 25 Regra 2 : Se x est no entorno de -1 Ento f(x) est no entorno de 16 ... Regra 11: Se x est no entorno de 8 Ento f(x) est no entorno de 25 Neste caso, a relao precisa entre x e f(x) da figura 6 fuzzyficada, tornando-a contnua como mostrado pela figura 7.
f(x) 30.0

15.0

0.0 -2.00 0.00 2.00 4.00 6.00 8.00 x

Figura 7 - Exemplo de Funo f(x) descrita por Regras Lingusticas Fuzzy Esta relao fuzzy fornece valores razoveis para qualquer dado no universo de interesse, e.g. : x=-1.5; x=3.2; x=4.3, etc... atravs do mecanismo (regra) de inferncia fuzzy e defuzzyficao. Em outras palavras, inferncia fuzzy e defuzzyficao proporcionam uma forma razovel e simples de interpolao, com muito menos dados e dados inexatos. Sob este ponto de vista, a inferncia fuzzy exibe um comportamento similar quele descrito por funes matemticas. Ainda mais, muito mais fcil re-elaborar regras fuzzy do que equaes matemticas quando as caractersticas do sistema ou processo so variantes. Em geral, neste caso, somente umas poucas regras so adicionadas ou revisadas independentemente das outras regras. Em contraste, no caso de equaes matemticas vrios parmetros dever ser re-avaliados simultaneamente, e.g. ordem, coeficientes, etc ... Logo, as caractersticas principais da modelagem fuzzy de sistemas e processos podem ser resumidas em:

1 - apropriada para descrever sistemas complicados com uma razovel quantidade de conhecimento; 2 - fcil selecionar as variveis lingusticas e os correspondentes valores a serem usados nas regras fuzzy entre uma categoria relativamente pequena de palavras;

12

3 - A memorizao do conhecimento mais simples; 4 - Permite uma maior facilidade na comunicao dos modelos com projetistas e analistas devido ao uso da linguagem natural. Note que, enquanto a inferncia baseada na regra de inferncia modus ponens nos sistemas clssicos de inteligncia artificial baseada somente em processamento simblico, a inferncia fuzzy (raciocnio aproximado) baseada tanto no processamento simblico quanto no processamento do significado. Regras lingusticas (fuzzy ou no) podem representar um conhecimento explicitamente e este ser usado tambm explicitamente para inferncia. Redes neurais artificiais, ao contrrio, representam tanto o conhecimento quanto a inferncia implicitamente. Portanto regras lingusticas representam conhecimento estruturado enquanto que as redes neurais representam, em geral, conhecimento no estruturado. Existem, no entanto, classes de redes neurais fuzzy que permitem a deteo do conhecimento e ento sua estrutura (Figueiredo et.al., 1993). Finalmente, outra alternativa para modelagem (e tambm controle) de sistemas complexos consiste em descrev-lo por um conjunto de parmetros, cujo exemplo tpico so as redes neurais artificiais clssicas (Hecht-Nielsen, 1990). Uma rede neural composta por um nmero de elementos simples interconectados, cada elemento realizando uma operao de agregao a partir de um modelo de um neurnio fsico. Quando wij (i = 1, ..., n) o peso atribudo ao sinal de entrada pi para o j-simo neurnio e j e qj so um limiar e o sinal de sada do j-simo neurnio, respectivamente, o sinal de sada tipicamente dado por :

q j = h w ij . p i j i
onde h em geral uma funo de agregao sigmoidal, e.g. :

h( x) = [1 + exp( x)]

Figura 8 - Rede Neural para a Descrio da Funo f(x)

Utilizando-se deste modelo de neurnio, a relao existente entre x e f(x) pode ser caracterizada pela rede neural como mostrado na figura 8,onde tanto os pesos wij quanto os limiares j foram obtidos aps inmeras iteraes de aprendizado utilizando-se dos algoritmos clssicos de propagao retroativa (backpropagation). Os dados utilizados foram aqueles correspondentes s 11 regras com termos lingusticos constantes apresentados anteriormente. Como pode ser verificado pela figura 9 a rede neural capaz de realizar interpolaes de forma similar ao caso da inferncia fuzzy. Contudo em geral muito difcil de entender, apenas pela observao do conjunto de parmetros, como a rede neural se comporta. Em adio, existem problemas na determinao da topologia mais apropriada para o problema em questo (nmero de neurnios, camadas intermedirias, recursividade ou no-recursividade, etc...); bem como problemas de convergncia durante o processo de aprendizagem. Se o sistema est sujeito a variaes em seu

13

comportamento, nova aprendizagem deve, em geral, ser executada para se obter um novo conjunto de pesos e limiares correspondentes e muitas vezes os resultados no so razoveis. Isto , existe uma maior dificuldade em projetar sistemas para fins de modelagem (e controle) com redes neurais do que com sistemas fuzzy. Esta uma das razes pela qual os sistemas fuzzy tem sido mais populares na soluo de problemas prticos do que as redes neurais. No entanto, pesquisa recente vem gerando classes de sistemas neuro-fuzzy, onde as limitaes e vantagens de ambas as abordagens so tratadas de forma a criar sistemas mais eficientes tanto do ponto de vista da soluo de problemas, quanto da questo de anlise e projeto dos mesmos (Pedrycz, 1992; Gomide & Rocha, 1992-b; Gomide & Rocha, 1992-c; Figueiredo et.al. 1993). Devido a limitaes de espao, este assunto (esperamos) dever ser objeto de um artigo no futuro.
f(x) 30.0

15.0

0.0 -2.00 0.00 2.00 4.00 6.00 8.00 x

Figura 9 - Exemplo da Funo f(x) descrita por uma Rede Neural Como vimos, a representao de conhecimento por meio de regras fuzzy pode ser utilizada, tambm, para se modelar um processo do ponto de vista de seu conhecimento qualitativo e quantitativo. Para concluir esta seo, apresenta-se um procedimento para a modelagem de processos. A princpio, necessrio algum conhecimento a priori do comportamento do processo. Caso este conhecimento no esteja disponvel, alguns experimentos podero fornecer um mnimo de conhecimento de modo a dar prosseguimento ao procedimento de modelagem. Inicialmente necessrio definir quais so as variveis fsicas a serem consideradas. A partir da, necessrio decidir: O nmero de variveis lingusticas (V.L.) Os termos lingusticos utilizados para as V.L. Os parmetros associados s regras A seguir necessrio escrever um conjunto de regras que descrevam o comportamento do processo (por exemplo, a variao de uma varivel observvel relacionada com a sada do processo) em funo das variveis lingusticas que provocam a modificao do comportamento. As funes de pertinncia so constitudas e o conjunto de regras processado, para os valores definidos das variveis envolvidas. O modelo testado para verificar sua fidelidade ao processo real ou no. Caso a resposta proporcionada pelo modelo no corresponda quela do processo real, modificaes no nmero de regras, nmero de antecedentes e consequentes, nas funes de pertinncia e parmetros do modelo devem ser efetuadas. Uma metodologia baseada em dados experimentais e no clculo de relaes fuzzy descrito em (Pedrycz, 1989). Tcnicas de aprendizagem baseadas em redes neuro-fuzzy e algoritmos genticos vem sendo tambm frequentemente utilizadas como instrumentos de projeto automtico de regras e funes de pertinncia (Takagi, 1993 ; Oliveira et.al. 1994).

14

4 - SISTEMAS DE CONTROLE FUZZY 4.1 Definies Gerais


A idia bsica em controle fuzzy modelar as aes a partir de conhecimento especialista, ao invs de, necessariamente, modelar o processo em si. Isso nos leva a uma abordagem diferente dos mtodos convencionais de controle de processos, onde os mesmos so desenvolvidos via modelagem matemtica dos processos de modo a derivar as aes de controle como funo do estado do processo. A motivao para esta nova abordagem veio de casos onde o conhecimento especialista de controle era disponvel, seja por meio de operadores ou de projetistas, e os modelos matemticos envolvidos eram muito custosos, ou muito complicados para serem desenvolvidos. A estrutura de um processo controlado por um controlador fuzzy mostrada na figura 10, enfatizandose seus componentes bsicos: a interface de fuzzyficao, a base de conhecimento, a base de dados, o procedimento de inferncia e a interface de defuzzyficao.
Controlador Fuzzy Base de Dados Base de Conhecimento

Interface de Fuzzyficao

Procedimento de Inferncia

Interface de Defuzzyficao

Sensores

Processo

Atuadores

Figura 10 : Estrutura Bsica de um Controlador Fuzzy A interface de fuzzyficao toma os valores das variveis de entrada, faz um escalonamento para condicionar os valores a universos de discurso normalizados e fuzzyfica os valores, transformando nmeros em conjuntos fuzzy, de modo que possam se tornar instncias de variveis lingusticas. A base de conhecimento consiste de uma base de regras, caracterizando a estratgia de controle e suas metas. A base de dados armazena as definies necessrias sobre discretizaes e normalizaes dos universos de discurso, as parties fuzzy dos espaos de entrada e sada e as definies das funes de pertinncia. O procedimento de inferncia processa os dados fuzzy de entrada, junto com as regras, de modo a inferir as aes de controle fuzzy, aplicando o operador de implicao fuzzy e as regras de inferncia da lgica fuzzy. A interface de defuzzyficao transforma as aes de controle fuzzy inferidas em aes de controle no-fuzzy. Em seguida, efetua um escalamento, de modo a compatibilizar os valores normalizados vindos do passo anterior com os valores dos universos de discurso reais das variveis. Aps a inferncia da ao de controle fuzzy, necessria a determinao de uma ao de controle no fuzzy que melhor represente a deciso fuzzy, para ser efetivamente enviada ao controle. Apesar de no haver nenhum procedimento sistemtico para a escolha da estratgia de defuzzyficao, as mais comuns incluem: o critrio do mximo (MAX), que escolhe o ponto onde a funo inferida tem seu mximo, a mdia dos mximos (MDM), que representa o valor mdio dentre todos pontos de mximo quando existe mais de um mximo, e o mtodo do centro de rea (CDA), que retorna o centro de rea da funo inferida (figura 11).
1

0 V MAX CDA MDM

Figura 11 - Mtodos de Defuzzyficao

15

CDA = k =1n

B( vk ). vk
k =1

B ( v k )

MOM =

v k k =1 l

onde v k V V , V = v k | B ( v k ) = max B ( v j ) , v j V , l o nmero de elementos de V j

(discretizao de V ) e n a discretizao de V

4.2 Controlador Fuzzy Clssico


Em um controlador fuzzy clssico, as variveis de entrada so tipicamente o erro, gerado a partir da diferena entre o sinal de referncia e a sada do processo, e a variao do erro, normalmente gerada a partir do erro. A varivel de sada do controlador normalmente a variao no controle. A opo por uma sada incremental, ao invs de absoluta, visa proporcionar uma maior suavidade na resposta do sistema em decorrncia das aes de controle. Estabelecendo uma ligao com as sees anteriores, as variveis fuzzy erro e variao do erro so subconjuntos fuzzy em seus respectivos universos. Elas poderiam ser definidas, por exemplo, como correspondentes aos valores reais medidos das entradas. Entretanto, um procedimento mais geral faz uso de universos discretos e normalizados, principalmente quando deseja-se a implementao do controlador em um computador digital. Nesse caso, os conjuntos correspondentes s variveis fuzzy so definidos por conjuntos discretos. Os universos aqui considerados para as variveis fuzzy so discretos, finitos e normalizados. Assim, torna-se necessrio utilizar fatores de escala para converter os valores reais medidos pelos sensores para universos normalizados. Alm disto, deve ser efetuada uma quantizao, de modo a condicionar os valores normalizados ao universo de discurso discreto. Para o caso dos valores medidos erro e variao de erro, temos (em um instante i, por exemplo): ei = (GE erro)quantizado e cei = (GCE variao do erro) quantizado onde GE e GCE so fatores de escala. A escolha dos fatores de escala parte do procedimento de sintonia do controlador e esses fatores podem ser expressos por constantes ou por funes (do erro, por exemplo). Se o universo da sada do controlador tambm for normalizado, a exemplo das variveis de entrada, um fator de escala GO usado, aps a defuzzificao, para mapear valores quantizados para valores reais compatveis com a entrada do processo. Este fator de escala tambm deve ser ajustado de acordo com o comportamento da resposta. A estratgia de controle descrita por um conjunto de declaraes condicionais, ou regras, lingusticas. Conforme mencionado em sees anteriores, duas entradas so consideradas para cada sada: o erro, E, e a variao do erro, CE. A sada a variao na sada do controlador, U. O conjunto de regras , ento, da forma: RN: SE (E E1) E (CE CE1) ENTO (U U1) OU SE (E E2) E (CE CE2) ENTO (U U2) OU . . . OU SE (E En ) E (CE Cen ) ENTO (U Un)

onde Ej, CEj e Uj so subconjuntos fuzzy dos universos E = {e}, CE = {ce}, U = {u}. Cada regra Rj pode ser expressa, atravs de sua funo de pertinncia, como: Rj (e,ce,u) = f ( fE ( Ej(e) ,Cej (ce) ), Uj(u) )

16

A combinao de todas as n regras expressa matematicamente por: RN (e,ce,u) = fOU [ f ( fE (E1(e) , CE1(ce) ) , U1(u) ), f ( fE (E2(e) , CE2(ce) ), U2(u) ), ... ... f ( fE (En(e) , Cen(ce) ) , Un(u) )] Desta forma, a estratgia de controle representada por uma matriz tridimensional RN. O controlador ento solicitado a fornecer, a partir do valores do erro e da variao do erro, e utilizando-se da regra de inferncia composicional, uma sada apropriada. Assim, em um instante i, quando as entradas determinsticas so ei e cei, o conjunto fuzzy da sada ser dado por: Ui = (Ei E CEi ) o RN onde Ei e CEi so os subconjuntos fuzzy das entradas e Ui o subconjunto fuzzy da sada. Utilizando fOU igual ao mximo, fE igual ao mnimo e usando a regra de inferncia max-min, tm-se:

Ui (u) =

ce

(Ei (e) CEi (ce) RN (e,ce,u))

Os clculos podem ser simplificados se considerarmos que os subconjuntos fuzzy das entradas consistem de valores reais no fuzzy ('singletons'), isto : Ei (e) = 1 =0 Com isto, se e = ei se e ei CEi (ce) = 1 se ce = cei = 0 se ce cei

Ui (u) =
i

U (u) =
e e

ce

(1 1 RN (e,ce,u)) (0 0 RN (e,ce,u)) para e = ei nos outros casos

para e = ei para e ei

ce

Ou seja:

Ui (u) = RN (e,ce,u)) = 0

Portanto, o conjunto fuzzy que representa a sada do controlador dado por: Ui (u) = fOU [ f (E1(ei) CE1(cei), U1(u) ), f (E2(ei) CE2(cei), U2(u) ), .. ...f (En(ei) CEn(cei), Un(u) )]

4.3 Algoritmo de Controle


Nesta seo apresentada uma maneira simples de se tratar as regras, com vistas implementao do algoritmo de controle. So tambm comentados aspectos de ordem prtica que devem ser levados em considerao quando da implementao e utilizao do algoritmo. O exemplo visto na seo anterior pode ser resolvido de uma maneira mais eficiente se o espao de estado E x CE for representado por uma 'grade' e definirmos o centro da regra (eR,ceR ) nesse espao como o ponto onde Ej(e) = CEj (ce) = 1. Com isto, possvel utilizar um simples nmero para representar o conjunto fuzzy associado com o valor lingustico de uma varivel em uma regra. A ao do controlador pode tambm ser representada da mesma forma; os valores numricos na grade representam a posio no universo em que o valor de pertinncia 1. Assim, o armazenamento de regras torna-se bastante simples; conhecidos o conjunto suporte e o centro da regra, torna-se fcil 'recuperar' os conjuntos fuzzy correspondentes. A regio de influncia de cada regra determinada por um quadrado de 5 unidades de lado e seu grau de influncia dentro deste quadrado, no caso das funes de pertinncia triangulares j mencionadas anteriormente, representado, por:

17

ceR 0,3 0,3 0,3 0,3 0,3 0,3 0,7 0,7 0,7 0,3 0,3 0,7 1,0 0,7 0,3 0,3 0,7 0,7 0,7 0,3 0,3 0,3 0,3 0,3 0,3

eR

A expresso E1(ei) CE1(cei), que determina a regio de influncia de uma regra, descreve o quanto as entradas do controlador so compatveis com os antecedentes de uma regra j. Esta expresso normalmente chamada de 'degree of fulfilment' da regra j no instante i, ou DOF. Para um ponto (ei,cei) no espao de estado, as regras que contribuem para o clculo da ao do controlador so aquelas cujos centros esto a uma distncia de (ei,cei). Se conjuntos suporte de tamanhos diferentes forem empregados, os quadrados tornam-se paralelogramos e a distncia de uma regra do ponto (ei,cei) no ser uniforme em todas as direes, tornando a implementao menos simples. Dependendo do mtodo de defuzzificao empregado, menos regras podem contribuir para o clculo da ao do controlador. Se COG for utilizado, todas as regras dentro de uma distncia contribuem e devem ser includas nos clculos. As regras mais prximas de (ei,cei) tero uma contribuio maior que as mais distantes, evidentemente. No entanto se MOM for empregado, somente as regras mais prximas de (ei,cei) contribuiro, e apenas elas precisam ser includas nos clculos. Isto se deve ao fato de que, no mtodo MOM, somente os picos no conjunto fuzzy da sada so relevantes. Esse mtodo efetivamente seleciona as regras com maior DOF, ou seja, aquelas mais prximas de (ei,cei). Em virtude desta caracterstica, possvel criar algoritmos muito simples em que conjuntos fuzzy no so usados explicitamente no clculo da ao do controlador. A regio de influncia de uma regra depender da abrangncia, em termos do universo considerado, dos conjuntos fuzzy das entradas. Portanto, o tamanho do conjunto suporte certamente influi no clculo da ao de controle. Consideremos conjuntos com a mesma abrangncia mas com funes de pertinncia de diferentes formas. A forma dos conjuntos dos antecedentes de cada regra afeta a determinao de DOF, que ter um efeito no consequente (ou sada) de cada regra, atravs do mecanismo de inferncia, e no resultado final. A forma do conjunto do consequente de cada regra afeta o conjunto fuzzy da sada diretamente. No entanto, vejamos o que ocorre com a sada determinstica do controlador: se MOM for usado, a forma dos conjuntos dos antecedentes no tem importncia, desde que sejam simtricos e de forma aproximadamente "triangular". S necessrio saber (atravs de DOF) a distncia da regra de (ei,cei); as magnitudes absolutas dos valores da funo de pertinncia no so importantes; apenas as magnitudes em relao s de outra regra. Similarmente, a forma dos conjuntos do consequente tambm no importante. No caso do mtodo COG, a forma dos conjuntos suporte importante, mesmo quando h simetria. A rea sob a curva Ui (u) afetada diretamente pelo consequente de cada regra e indiretamente por DOF. Alm das funes de implicao apresentadas at agora, diversas outras tm sido propostas na literatura mas geralmente considerando-as apenas sob o ponto de vista lgico (Gaines, 1976; Baldwin & Pilsworth, 1980; Yager, 1980; Mizumoto, 1982). Com o intuito de verificar tambm o lado prtico, consideraremos alguns casos com as funes de implicao j apresentadas, em conjunto com os mtodos de defuzzificao COG e MOM. 1. Regra nica a uma distncia de (ei,cei): As Figs. 12a, 12b e 12c mostram o que ocorre no clculo da ao do controlador para diferentes valores de DOF. Cabe aqui um parnteses: em uma situao com vrias regras, no caso das implicaes Luk. e VSS, o efeito criado pelo plat que cobre todo o universo para DOF = 0 contrabalanado pela utilizao do operador min na combinao dos diversos conjuntos fuzzy de sada de cada regra (conectivo OU). Se max fosse utilizado, incorrerramos no absurdo de se ter ao mxima mesmo quando a regra no apresenta contribuio alguma. Retornando figura, com VSS e Luk. os resultados produzidos por COG e MOM so diferentes por causa do plat. Particularmente no caso de VSS, MOM interpreta melhor o efeito da regra, pois o mtodo COG, em interpretando o pico mais o plat, desloca a sada ui do valor indicado pelo centro da regra. Isto indesejvel, pois o plat possui nenhuma informao legtima. Cumpre observar que o uso da implicao min resulta na sada nada, enquanto que Luk. e VSS do como resultado a sada desconhecida.

18

Figura 12 - Transformao da Ao da Regra para Diferentes Valores do DOF

2. Regras com aes diferentes a uma distncia de (ei,cei). Duas regras com consequentes U1 e U2 situadas a uma distncia 1 de (ei,cei) esto mostradas nas Figs. 13a, 13b e 13c. Com min, ambas as regras contribuem igualmente para o conjunto de sada e a ao interpretada a mesma com MOM ou COG. Isto se aplica independentemente da posio de U1 e U2 nos seus universos. As implicaes VSS e Luk. no so capazes de fornecer uma ao prtica com significado, pois acabam por no levar em conta as contribuies individuais de cada regra. O plat, em conjunto com a combinao min das sadas individuais de cada regra, mascara completamente a sada de uma regra com menor prioridade (DOF = 0,3) que porventura exista. A utilizao do mtodo COG impraticvel neste caso.

Figura 13 - Ao de Controle U1 (u) para Duas Regras Distncia 1 de (ei , cei ) e uma terceira regra distncia 2

19

3. Uma regra em (ei,cei) e uma seleo de regras a outras distncias As vrias contribuies so mostradas nas Figs. 14a, 14b e 14c abaixo. Com as implicaes VSS e Luk., o efeito do plat produzido pelas regras de menor contribuio (DOF = 0,7) faz com que permanea apenas a regra predominante aps a combinao de todas as sadas utilizando min (conectivo OU). O mtodo MOM o mais indicado neste caso.

Figura 14 - Ao de Controle Ui (u) para uma regra em (ei , cei ), duas regras distncia 1 e uma distncia 2 Considerando os trs casos, em geral a implicao min aquela que produz os melhores resultados sob o ponto de vista de controle. As implicaes VSS e Luk. produzem sadas "desconhecidas" em certos casos, conforme demonstrado. Do ponto de vista lgico, as sadas so corretas; entretanto, do ponto de vista prtico, mais vantajoso produzir uma sada prxima quela indicada por regras contraditrias do que uma sada "zero". Com as implicaes VSS e Luk., por vezes no compensa utilizar o mtodo COG, pois os resultados produzidos podem no representar adequadamente as regras existentes (devido ao plat). Cumpre salientar que a implicao produto comporta-se de uma maneira semelhante min. A forma dos conjuntos fuzzy da sada similar, embora mais 'suave' do que com min. O uso do mtodo COG mais indicado neste caso. A anlise efetuada acima mostra que diversos fatores, tais como funes de implicao, mtodos de defuzzificao, forma das funes de pertinncia, influem no clculo da ao de controle. Todos estes fatores devem ser considerados em conjunto; os aspectos prticos, e no apenas os lgicos, devem ser cuidadosamente considerados.

5 - PARMETROS, SINTONIZAO E MONITORAO DE CONTROLADORES FUZZY


Durante o projeto de controladores fuzzy, necessria a definio de alguns parmetros. Estes parmetros so definidos a partir da experincia do projetista ou atravs de experimentos. Dado um processo, alguns dos parmetros so fixos, dentro das condies normais de operao, sendo que outros precisam ser alterados de tempos em tempos. Os parmetros fixos so chamados de parmetros estruturais e os variveis so chamados de parmetros de sintonizao:

Parmetros estruturais -Nmero de variveis de sada -Nmero de variveis de entrada -Recursos de operao sobre os dados de entrada (somas, multiplicaes, etc) -Variveis lingusticas

20

-Funes de pertinncia parametrizadas -Intervalos de discretizao e normalizao -Estrutura da base de regras -Conjunto bsico de regras Parmetros de Sintonizao -Universo de discurso das variveis -Parmetros das funes de pertinncia, tais como altura, largura ou conjunto suporte -ganhos e offset das entradas e sadas Certas propriedades da base de regras precisam ser testadas, dentre elas: a completude, consistncia, interao e robustez. Esta ltima est relacionada com a sensitividade do controle diante de algum comportamento anmalo no modelado ou rudo. Um mtodo possvel para se medir a robustez consiste em introduzir um rudo aleatrio com mdia e varincia conhecidas e observar-se a alterao dos valores das variveis de sada. Alm destas, diversas outras decises precisam ser tomadas, como por exemplo a especificao dos operadores para implementar o casamento (matching), dos conectivos e (and) e implicao, do operador para implementar a agregao das diversas regras e o mtodo de defuzzyficao. Em seguida, passa-se etapa de sintonizao do controlador. A sintonizao uma das etapas mais custosas do projeto de um controlador fuzzy. A grande flexibilidade que decorre da existncia de muitos parmetros exige um grande esforo do projetista de modo a obter o melhor desempenho do controlador. Alguns dos parmetros podem ser alterados por mecanismos automticos de adaptao e aprendizado. Entretanto, tais mecanismos no esto ainda bem estabelecidos na teoria de controle fuzzy, de modo que normalmente tarefa do projetista o treinamento e a sintonizao da maioria dos parmetros envolvidos. Esta sintonizao feita por meio de busca, o que caracteriza uma atividade tpica em IA. Um grande esforo tem sido devotado a esta questo na teoria clssica de controle. Recentemente, em (Ollero et.al. 1991), apresentouse uma nova estratgia de projeto, envolvendo caractersticas de aprendizado. De acordo com o conhecimento que se tem sobre o processo a ser controlado, a tcnica de projeto do controlador ser mais ou menos elaborada. Tendo-se pouco conhecimento sobre o processo, deve-se adotar um projeto mais conservador, de modo a evitar um mau comportamento do controlador. necessrio que alguns cuidados sejam observados pelo projetista. Em primeiro lugar, deve-se verificar-se se realmente necessrio o uso de um controlador fuzzy para controlar o processo. Caso o processo possa ser controlado por um controlador convencional simples, sem grandes transtornos, este poder constituir uma boa soluo. Se este no o caso, e controladores convencionais no so apropriados devido a complexidades do processo, deve-se considerar o uso dos controladores fuzzy. Mesmo com pouco conhecimento sobre o processo, pode-se considerar o uso de um controlador fuzzy para control-lo. A seguir, tem-se uma proposta de metodologia de projeto, baseada nas abordagens clssicas de sintonizao experimental: Inicie com um controlador simples, como por exemplo um que simule um controlador proporcional com: -ganho reduzido -as variveis mais relevantes -baixo nmero de variveis lingusticas -funes de pertinncia no discriminantes Aumente o ganho at que se verifiquem respostas indesejadas. Adicione conhecimento de acordo com a experincia que vai se adquirindo do processo -procure por novas variveis lingusticas ou variveis fsicas, para evitar dificuldades de controle -modifique as funes de pertinncia e os parmetros do controlador fuzzy -adicione novos componentes ou modifique a estrutura de controle Valide a coerncia do novo conhecimento incorporado modificando as condies de operao. Para obter um desenvolvimento satisfatrio do projeto, necessria uma interface homem-mquina poderosa, que permita uma rpida modificao nos parmetros utilizados, o que normalmente pode ser

21

encontrado em pacotes integrados. Tais pacotes incluem editores para as regras, funes de pertinncia e outros parmetros, recursos grficos e um mdulo depurador, para permitir o acompanhamento do processo de inferncia e a monitorao das variveis do processo. Tais recursos possibilitam uma grande interao com o projetista Outro recurso extremamente valioso a existncia de um mdulo supervisor que possa processar alguns ndices de desempenho, alm dos convencionais. Por exemplo, se uma entrada do tipo degrau aplicada a alguma entrada, alguns ndices de desempenho tais como o overshoot, o tempo de resposta ou o erro em regime permanente podem ser calculados. Atravs da anlise sequenciada das amostras no tempo, pode-se detectar oscilaes, desvios lentos ou algum tipo de comportamento inadequado mais raro, resposta dbia, etc. Os mdulos supervisores podem tambm se encarregar de tomar algumas aes, tais como: Mudanas em parmetros : Neste caso, uma mudana lenta e progressiva recomendada Desconsiderao ou adio de regras : Caso sejam pouco utilizadas, algumas regras podero ser removidas. Algum tipo de indicador poder recomendar que uma nova regra seja adicionada. Por exemplo, para reduzir erros estticos, regras que utilizem termos concentrados em menores universos de discurso podem ser adicionadas, aumentando o ganho esttico. Neste caso, o teste das aes ir comfirmar a modificao ou recomendar o retorno ao conjunto de regras anterior. Mudanas em variveis : Funes de pertinncia no discriminantes podero recomendar a desconsiderao de alguns antecedentes em regras pr-estabelecidas. Um comportamento insatisfatrio poder indicar a considerao de novas variveis. Como anteriormente, o procedimento de verificao e teste ir confirmar se as aes de controle so aceitveis, tendo em vista as especificaes a serem atingidas.

6 - HARDWARE E SOFTWARE
O primeiro chip a implementar a lgica fuzzy foi desenvolvido por Togai e Watanabe nos laboratrios da AT&T em 1985. Este chip implementava uma mquina de inferncia fuzzy capaz de processar 16 regras em paralelo. Alm de uma memria para armazenar o conjunto de regras, implementava uma unidade de processamento de inferncia, um controlador, e interfaces de entrada e sada. Em uma verso mais recente, a memria foi implementada por uma memria RAM esttica, de modo que fosse possvel efetuar mudanas dinmicas no conjunto de regras. A unidade de processamento de inferncia foi baseada na regra composicional de inferncia "max-min". Em testes de desempenho mostrou-se que o chip realizava 250.000 FLIPS (inferncias de lgica fuzzy por segundo) com um relgio de 16 MHz. Posteriormente um acelerador para operaes em lgica fuzzy foi desenvolvido baseado no chip anterior. Em maro de 1989, o Centro de Microeletrnica da Carolina do Norte completou com sucesso a fabricao de outra verso do chip, projetada por Watanabe, com 608.000 transistores, capaz de realizar 580.000 FLIPS. Um controlador fuzzy de alto desempenho foi proposto por Yamakawa (1986). Composto por uma plataforma de 15 regras de controle e uma interface de sada implementando um defuzzyficador pelo mtodo do centro de rea, ele manipula regras fuzzy utilizando os termos lingusticos NL (alto e negativo), NM (mdio e negativo), NS (baixo e negativo), ZR (zero), PS (baixo e positivo), PM (mdio e positivo) e PL (alto e positivo). Sua velocidade operacional de 10 MFLIPS (mega FLIPS). O sistema foi testado em uma aplicao cujo objetivo o de estabilizar um pndulo invertido montado sobre um veculo. Pndulos duplos com diferentes parmetros foram tambm controlados. O controlador foi integrado em um chip com 40 pinos. Yamakawa e Miki tambm implementaram 9 funes de uso geral em lgica fuzzy, utilizando-se o processo CMOS convencional, com um circuito em modo corrente. Posteriormente uma verso preliminar de um computador fuzzy foi proposta por Yamakawa, tendo sido implementada pela Omron. Este computador constitua-se de uma memria, um conjunto de mquinas de inferncia, um bloco de operadores de mximo, um defuzzyficador e uma unidade de controle. A memria fuzzy armazena a informao fuzzy, contida nas funes de pertinncia.. Inclui uma RAM binria, um registrador e um gerador de funes de pertinncia (GFP). Este, por sua vez, consiste de uma PROM, um array de transistores e um decodificador. Cada termo lingustico representado por um cdigo binrio, armazenado na RAM binria. As funes de pertinncia correspondentes so geradas pelo GFP de acordo com estes cdigos binrios. A mquina de inferncia aplica operaes de mximos e mnimos, implementados por portas fuzzy em configurao emissor-acoplado, com circuitos em modo- tenso. As entradas so representadas por tenses analgicas nos barramentos, alimentando cada mquina de inferncia em paralelo. Os resultados inferidos pelas regras so agregados pelo bloco de mximos. A sada feita por meio de tenses analgicas.
22

Implementando um controlador fuzzy, o computador fuzzy capaz de processar 10 MFLIPS. Este foi um grande passo no somente em termos de uma aplicao industrial, mas em termos de processamento de conhecimento, de um modo geral. Mais recentemente, a Neuralogix (1991) anunciou o micro-controlador fuzy NLX230, uma mquina de inferncia VLSI configurvel baseada no esquema de inferncia MAX-MIN. O chip possui 16 interfaces de fuzzyficao, uma rede neural para comparaes de mnimos, um comparador de mximos, memria de regras, registradores e circuitos de controle e sincronizao. Apropriadamente programado, pode executar 30 MFLIPS. Oki tambm desenvolveu um chip VLSI para inferncia em lgica fuzzy, em um PGA cermico de 132 pinos. Sua arquitetura baseada em estruturas do tipo "pipeline". Realiza 7.5 MFLIPS com no mximo 960 regras. Possui todos os circuitos necessrios para uma inferncia fuzzy: buffer de entrada, memria para regras e funes de pertinncia, interface de fuzzyficao, circuitos MAX-MIN, defuzzyficador e registradores de sada. A Omron desenvolveu um dos primeiros controladores fuzzy. Atualmente, anunciou uma nova gerao de processadores fuzzy digitais, a famlia FP3000. Dotada de uma mquina de inferncia de alta velocidade, processa em 650 s, com relgio de 24 MHz, um total de 20 regras com 5 antecedentes e 2 consequentes cada, fornecendo alm disso diversos outros recursos e interfaces. Do ponto de vista de suporte de software, um grande nmero de ambientes de desenvolvimento encontra-se hoje disponvel no mercado. A maioria deles implementa recursos para edio de funes de pertinncia, com suporte grfico, linguagens dedicadas para descrio de regras, pr-compiladores para uma vasta gama de processadores e micro-controladores e gerao de cdigo automtica para linguagens de alto nvel, C por exemplo. Exemplos incluem o Togai Til Shell, da Togai Infralogic, o Cubicalc da Hyperlogic, o Manifold Editor da Fuzzy Systems Engineering, o ambiente integrado da fuzzyTECH, as ferramentas de desevolvimento FIDE da Aptronix, e a da Omrom, alm do sistema de controle fuzzy da Meiden e o SDAF da HI Tecnologia. Muitos destes possibilitam a escolha de diferentes procedimentos de inferncia, bem como diferentes mtodos de defuzzyficao e capacidade de aprendizado.

7 - EXEMPLO DE UMA FERRAMENTA DE DESENVOLVIMENTO


Nesta seo, ser apresentado o exemplo de uma ferramenta de desenvolvimento, utilizada para o projeto, implementao e teste de controladores fuzzy. Esta ferramenta foi apresentada em (Gudwin et.al. 1991), descrevendo seus mdulos bsicos, sendo colocada aqui a ttulo de ilustrao. O SDAF (Sistema de Desenvolvimento de Aplicaes Fuzzy) foi concebido como um sistema de suporte ao desenvolvimento de aplicaes que utilizem a lgica fuzzy como mtodo de construo de controladores. Uma linguagem foi implementada para que a construo de controladores seja realizada a partir de uma especificao na forma mais prxima possvel da linguagem natural, viabilizando que um especialista descreva seu conhecimento de uma maneira bem amigvel. Esta linguagem incorpora as inovaes possibilitadas pelo uso da lgica fuzzy como instrumento, que o uso de termos vagos e imprecisos representando conceitos. A representao e manipulao de termos deste tipo o que diferencia basicamente o SDAF de outros shells para sistemas especialistas.
SDAF PC Ambiente de Desenvolvimento MCI Controlador Fuzzy

Usurio

Processo

Figura 15- Componentes do SDAF

23

A configurao do SDAF a de uma plataforma de desenvolvimento. Estando a base de conhecimento devidamente concluda, a mesma pode ser armazenada em uma EPROM, e um conjunto interpretador/base de conhecimento ser implementado em um hardware mais apropriado para a aplicao alvo. O SDAF constitudo basicamente por dois mdulos de hardware interconectados, operando em equipamentos distintos, e ligados ao processo a ser controlado (aplicao). So os seguintes (figura 15): Ambiente de Desenvolvimento - PC Controlador Fuzzy - Microcontrolador Industrial

7.1 -

Mdulo do Ambiente de Desenvolvimento:

Este mdulo foi projetado para operar em microcomputadores do tipo IBM/PC-XT/AT/386/486, sob sistemas operacionais compatveis com o MS-DOS. Possui uma interface homem-mquina amigvel, dotada de recursos grficos, menus, janelas de entrada de dados, help sensvel a contexto, operao com ou sem mouse, etc. O objetivo deste mdulo permitir a integrao entre o projetista e o hardware do controlador fuzzy, oferecendo uma interface homem-mquina altamente amigvel. Prov, dentre outros, os seguintes recursos: Linguagem de Representao de Conhecimento utilizando regras fuzzy; Editor de funes de pertinncia; Gerador de Cdigo para o Controlador Fuzzy; Mecanismos para programao dos canais de comunicao com o processo; Operao remota do controlador Fuzzy; Depurador simblico On line;

7.2 - Mdulo do Controlador Fuzzy:


Este mdulo foi implementado sob uma plataforma de hardware baseada no micro-controlador industrial MCI da HI Tecnologia. A implementao deste mdulo em uma outra mquina decorre da necessidade de conexo fsica com o processo a ser controlado. O mdulo do controlador fuzzy deve suprir todos os recursos necessrios para a integrao com um processo real, tais como, entradas e sadas analgicas/digitais, interface com o operador e rede local de comunicao. Opcionalmente, este mdulo dispe de uma interface de operao local, permitindo ao usurio comandar a execuo do programa localmente. Existem comandos para ativar, suspender, executar passo a passo as regras, medir o tempo que o processador necessita para executar as instrues, etc.

7.3 - Desenvolvimento de Projetos


O desenvolvimento de sistemas de controle baseados em lgica fuzzy no SDAF, um processo interativo, composto das seguintes etapas: fuzzy; Identificao das variveis de entrada/sada do processo; Definio das parties de cada varivel lingustica do sistema; Edio da Base de Regras Fuzzy; Compilao da Base de Regras; Edio das funes de pertinncia associadas a cada termo lingustico previamente definido; Transferncia da Base de Conhecimento do ambiente de desenvolvimento para o controlador Execuo/Depurao da Base de Conhecimento; Anlise de Desempenho do sistema; Alterao nas regras da base e/ou funes de pertinncia, para estruturao e sintonizao.

Para facilitar a programao, o SDAF permite que as variveis lingusticas de entrada/sada do sistema, sejam convenientemente escaladas no range equivalente ao do sensor, na unidade de engenharia correspondente.

24

7.4 - O Editor de Funes


O SDAF dispe de um editor grfico que permite a edio/manipulao das funes de pertinncia. As funes mais usuais, tais como, funo sigmide, triangular e gaussiana, so geradas por meio de seus parmetros. Outras funes podem ser geradas atravs de tcnicas de interpolao, via grficos ou tabelas. Uma vez definida a base de regras fuzzy, o SDAF gera, durante a compilao, um arquivo referente base de funes, citando todos os termos lingusticos utilizados, que devem ser configurados pelo usurio. Assim, para cada termo lingustico, o usurio dever associar uma funo de pertinncia, definida sobre o universo de discurso da varivel lingustica envolvida (figura 16).

Figura 16 - Editor de Funes de Pertinncia

7.5 - A Linguagem LEARN


O ponto chave para a compreenso do SDAF o mtodo de representao de conhecimento utilizado pelo sistema. Para tal, desenvolveu-se a linguagem LEARN - Linguagem de Especificao de Aplicaes mediante Regras Nebulosas, utilizada pelo sistema para a implementao das bases de regras fuzzy. Esta linguagem foi especialmente concebida para ser utilizada dentro do contexto deste sistema. A declarao das variveis lingusticas segue a seguinte sintaxe: VAR Nome_Var [ Universo_Discurso ] = {Conjunto_Termos_Lingusticos } ; A sintaxe das regras fuzzy na linguagem LEARN segue a seguinte forma: SE Condio_1 E Condio_2 ... ENTAO Ao; As condies so expresses simples do tipo: Var_i == Termo_Lingustico_j E as aes: Var_i = Termo_Lingustico_j onde Var_i corresponde a uma varivel lingustica e Termo_Lingustico_j deve ser um dos termos lingusticos definidos na partio de Var_i. Um exemplo simples de uma de base de regras constituida a partir da linguagem LEARN pode ser visto na listagem 1.

25

VAR ANALOGICA Erro[0,100] = { Negativo, Zero, Positivo } ; ANALOGICA Valvula[0,200]={Diminui, Mantem, Aumenta } ; ENTRADA Erro; SAIDA Valvula; REGRAS GRUPO Principal { SE Erro==Negativo ENTAO Valvula=Aumenta; SE Erro == Zero ENTAO Valvula = Mantem; SE Erro == Positivo ENTAO Valvula = Diminui; } FimGrupo FimRegras Listagem 1 : Exemplo de Programa na Linguagem LEARN

7.6 - Tipos de Variveis


As variveis do sistema foram inicialmente concebidas para suportar aplicaes de controle em tempo real, e por isso podem ser dos seguintes tipos: 1) Variveis Analgicas : So variveis numricas de uso geral, podendo ser de entrada, de sada ou internas. Esto associadas implicitamente a variveis lingusticas, ou seja, as medidas numricas colhidas pelo conversor A/D so mapeadas no universo de termos lingusticos da varivel (variveis de entrada) ou ento tm seus valores inferidos em termos lingusticos mapeados em termos numricos que so enviados ao conversor D/A (variveis de sada). 2) Variveis Digitais : So variveis lgicas de uso geral. Tambm podem ser de entrada, de sada ou internas. Estas variveis so utilizadas para definir estados lgicos. Assume-se para o nvel lgico 0 (low) o termo lingustico FALSO, e para o nvel lgico 1 (high) o termo lingustico VERDADEIRO. Nas regras, as variveis digitais so utilizadas de modo similar ao das variveis analgicas, com a devida restrio nos termos lingusticos utilizados. 3) Timers Analgicos : So variveis numricas internas do sistema que possuem a caracterstica adicional de serem atualizadas automaticamente pelo sistema, medida que o tempo passa. Funcionam em sincronismo com o relgio de tempo real do sistema. Com este tipo de varivel, possvel quantificar-se pores de tempo de definio vaga, como por exemplo "um pouco", "bastante", etc. Os timers analgicos so ento ao mesmo tempo variveis de entrada e de sada. Quando utilizados nos antecedentes das regras, avaliase a temporizao atual do timer frente aos termos lingusticos definidos. Quando utilizadas no consequente das regras, reinicializa-se o perodo de temporizao (tambm em termos vagos). 4) Timers Digitais : So variveis lgicas associadas a temporizadores do sistema. Ao contrrio dos timers analgicos, onde deseja-se manipular um tempo definido de modo vago, os timers digitais fazem um controle bem definido do tempo transcorrido. Ao ser acionado um consequente que contenha um timer digital, a temporizao do mesmo reinicializada com o perdo definido na regra. A partir desta, qualquer avaliao nos antecedentes das regras surtir um valor lingustico "tempo no expirado", at que o perdo de temporizao se esgote, quando ento a avaliao do antecedente resultar "tempo expirado". Este tipo de variveis util quando se deseja o controle exato de algum tipo de temporizao, como em sequenciamento de eventos, etc.

7.7 - Desenvolvimento de Aplicaes - O Depurador


A construo de uma base de conhecimento normalmente um processo incremental, onde o conhecimento vai sendo levantado junto ao especialista, ou pelo projetista, em etapas. A cada etapa, um novo

26

conjunto de regras acrescentado base, e o projetista do sistema, junto com o especialista, deve verificar a consistncia destas regras, validando o comportamento do sistema. Uma das tcnicas na elaborao de uma base de conhecimento, que facilita a prpria elicitao do mesmo e proporciona um incremento no desenpenho computacional do sistema, em ambientes de tempo real, a utilizao de bases de regras estruturadas, ou modularizadas. O SDAF permite a construo de bases de regras deste tipo por meio da definio de grupos. Cada grupo deve conter portanto, uma pequena parte do conhecimento, relativa a uma determinada especializao do mesmo, utilizando um mecanismo conhecido como foco de ateno. Um dos grupos, normalmente o grupo principal, deve conter o meta-conhecimento, ou seja, o conhecimento do contedo dos diversos grupos, e de quando acess-los. O SDAF permite que este acesso seja feito de duas maneiras. A primeira delas, a execuo uma nica vez de um determinado grupo, processada pelo comando EXECUTA. Este tipo de acesso feito quando se deseja apenas uma aplicao de um procedimento, de modo semelhante a uma chamada de funo em programao convencional. O segundo modo de se acessar um grupo por meio do comando CHAVEIA, quando sob determinadas condies levantadas pelo grupo, determine-se que aquele grupo j no mais o adequado a ser processado, e com isso se deseja efetivamente chavear o processamento para outro grupo de regras, que est mais adequado situao corrente do sistema. Para o desenvolvimento de uma base de conhecimento, o procedimento mais usual a determinao de um grupo principal, onde sejam colocadas as diretrizes gerais de atuao, e a cada etapa, sejam acrescentados novos grupos de regras, que podem ento ser analisadas pelo projetista, que passa a validar o funcionamento do grupo, efetuando as correo que forem pertinentes. Durante este processo, necessrio que o projetista disponha de alguns recursos adicionais, as ferramentas de depurao, que o auxiliem na avaliao do comportamento do sistema. Este conjunto de recursos reunido no SDAF no mdulo depurador. O mdulo depurador do SDAF permite o controle da execuo das regras, permitindo o disparo e a parada da mquina de inferncia em qualquer ponto da mesma. Com isso, consegue-se executar as regras passo a passo, sendo exibidas na tela, tanto as regras com o passo sendo executado, como o estado do sistema aps a execuo do mesmo. Este passo pode ser a nvel de ciclo, regra ou antecedente. A nvel de ciclo, a mquina executa um ciclo de inferncia e para, esperando um prximo comando do operador. A nvel de regra a mquina executa uma determinada regra ao comando do operador, parando em seguida, e a nvel de antecedentes, a mquina para aps executar cada antedente, exibindo o estado do sistema. Um outro comando auxiliar colocado de modo a reinicializar as variveis do sistema. Outro recurso importante do depurador o processo pelo qual se pode analisar o contedo das diversas variveis utilizadas. Com este, permite-se verificar o estado de cada varivel. Caso sejam variveis digitais, mostra-se seu estado lgico (FALSO/VERDADEIRO). Caso sejam variveis analgicas de entrada, mostra-se o valor medido da varivel, e para cada predicado lingustico associado mesma, como o mesmo se relaciona diante do valor medido, dando uma idia da compatibilidade entre o valor medido e o conceito associado ao predicado lingustico. Para variveis analgicas de sada, mostra-se alm do conjunto completo de conjuntos fuzzy associados a ela, o estado do conjunto fuzzy inferido, que dar origem ao valor defuzzyficado, que ser enviado ao controle. Utilizando-se o depurador, o projetista consegue efetuar o desenvolvimento incremental do sistema, pois aps a elicitao do conhecimento sobre a forma de regras e funes de pertinncia, o mesmo pode ser validado executando-se o programa de regras passo a passo, o que permite a deteco de regras com comportamento inadequado, facilitando sua correo.

8 - EXEMPLOS DE APLICAO FUZZY 8.1 - Controle de Poluio em Tneis Urbanos


Descreve-se aqui, sucintamente e com objetivos meramente didticos, o procedimento de desenvolvimento de um controlador fuzzy. O exemplo utilizado para ilustrar o procedimento um sistema de exausto de gs com velocidade varivel, utilizado para o controle do nvel de gs carbnico em tneis urbanos. O controlador possui como entradas o nvel de CO2 aceitvel (set point , s), o desvio (d) do nvel medido de CO2 (y) com relao ao set point, e a variao do desvio ( ) em instantes sucessivos de tempo. O primeiro passo, como no caso de qualquer controlador, definir as variveis controladas e as variveis de controle. Estas variveis so as entradas e as sadas, respectivamente, do controlador. Para o sistema de exausto, as variveis de entrada so o desvio e a variao do desvio, sendo a variao na velocidade do exaustor a varivel de sada (u). A seguir, determina-se, para cada varivel, o universo de discurso (range) associado a cada varivel lingustica, a partio do conjunto de termos para as variveis lingusticas e os respectivos conjuntos fuzzy. No

27

caso do exemplo, d, e u so as variveis lingusticas com valores no conjunto de termos {pequeno(a), mdio(a), grande}, {Negativo, Zero, Positivo}, onde os termos so, por sua vez, definidos pelos conjuntos fuzzy da figura 17. Observe que os universos de discurso correspondem ao intervalo [-5,5] para d, [-1,1] para e [-100,100] para u.
P Pequeno 1.0 0.67 0.33 M Mdio G Grande P Pequena M Mdia G Grande

-5

-1.0

-0.6

1.0

ERRO NA PORCENTAGEM DE CO 2 N Negativo Z Zero

VARIAO DO ERRO NA PERCENTAGEM DE CO 2 P Positivo

-100

100

INCREMENTO NA VELOCIDADE DE EXAUSTO

Figura 17 - Funes de Pertinncia para os Termos Lingusticos O passo final consiste em definir as regras que descrevem as aes de controle em funo do erro e da variao do erro. Cada varivel lingustica deve ser considerada por pelo menos uma regra. A tabela 1 apresenta um conjunto possvel de regras: - VARIAO DO ERRO P M G P N N Z M N Z P G Z P P Tabela 1- Exemplo de Regras de Controle Na execuo da estratgia de controle, representada pelo conjunto de regras da tabela 1, o primeiro passo a classificao (matching) das variveis de entrada com relao s respectivas variveis lingusticas. Por exemplo, o valor d = 1 grande com grau 0.33 e mdio com grau 0.67, enquanto que o valor = -0.6 pequena com grau 1 (ver figura 17), ou seja, G(d) = 0.33, M(d) = 0.67 e P() = 1. Feita esta classificao (correspondente ao mdulo de fuzzyficao), o procedimento de inferncia (lgica de deciso) avalia as regras da seguinte forma. Para d=1 e = -0.6, as regras que se aplicam so as seguintes (tabela 1) : R4 : Se (d Mdio) e ( Pequena) Ento (u Negativo) R7: Se (d Grande) e ( Pequena) Ento (u Zero) Como as regras possuem dois antecedentes relacionados pelo conectivo E (interseco), definindo-se o operador interseco como sendo (min), obtm-se como resultado da combinao dos antecedentes:

d - ERRO

28

R4: min ( M(d=1), P(=-0.6) ) = (0.67) (1) = 0.67 R7 : min (G(d=1), P(=-0.6) ) = (0.33) (1) = 0.33 Para cada regra, o grau de ativao da ao de controle calculada de acordo com o resultado da combinao de antecedentes. Se a regra de inferncia MAX-MIN, o resultado da inferncia, para uma regra, obtido pelo mnimo entre o grau de combinao dos antecedentes e consequentes (ao de controle), conforme ilustrado graficamente pela figura 18.
1.0 0.67 R 4 d 1.0 R 7 0.33 d -0.6 0.33 u u 0.67

MIN

Figura 18 - Inferncia : Composio MAX-MIN Terminada a inferncia, a ao final de controle calculada a partir da unio das contribuies proporcionadas por cada regra ativada. Se a unio definida como sendo o operador de agregao mximo ( ), o resultado ser o mostrado na figura 19.
Unio

Contribuio de R 4

Contribuio de R 7

u0
Figura 19 - Ao Final de Controle

O ltimo passo consiste na determinao do sinal de controle (u0)a ser enviado ao processo (no caso, sinal proporcional ao incremento de velocidade do exaustor), obtida a partir da defuzzyficao. Por exemplo, na figura acima, u0 obtido pelo mtodo do centro de rea.

8.2 - Controle de Direo de Veculos Auto-Guiados


Deseja-se, nesta aplicao, controlar o movimento de um veculo auto-guiado (AGV) para que o mesmo percorra uma trajetria em um ambiente, a partir do sensoreamento de sua localizao (figura 20).

29

x
1

x4

Figura 20 - Variveis de Entrada e Sada As variveis de entrada do controlador so as posies x1, x2, e x4 e o ngulo do veculo em relao direo das laterais. A sada do controlador o ngulo do eixo frontal do veculo em relao posio de repouso (alinhada com a direo do veculo). As regras de controle so da forma: Ri : Se (x1 A1i ) e ... e (x4 A4i ) Ento i = p0i + p1i x1 + p2i x2 + p3i x3 + p4i x4 i = 1, ... , m A ao de controle determinada por:

i=1 m

w i i
i =1

wi

onde wi o resultado da combinao dos antecedentes da i-sima regra, dados os valores das variveis de entrada. As funes de pertinncia dos conjuntos fuzzy correspondentes s parties das variveis lingusticas so mostradas na figura 21 para as variveis x1 e x3 .
x
1

Pequena 1

Mdia

Grande

30 x3 Esquerda

60

90

120

150

(cm)

Frente

Direita

-60

-40

-20

20

40

60

(graus)

Figura 21 - Funes de Pertinncia para variveis x1 e x3

30

A figura 22 mostra o resultado proporcionado pelo controlador para o veculo colocado em um ambiente complexo.

Figura 22 - Trajetria do Veculo

8.3 - Controle de Nvel Para 2 Tanques Acoplados


Nesta aplicao, considera-se um sistema em que 2 tanques esto acoplados por meio de uma interligao (vide figura 23), sendo que os tanques so abastecidos por meio de vlvulas individuais de entrada de fluido. Cada tanque tem em seu fundo, uma vlvula de drenagem de abertura fixa, por onde escoa o fluido. A tarefa do controlador fuzzy manter os nveis em ambos os tanques de acordo com os set-points definidos.

Figura 23 - Sistema de 2 Tanques Acoplados Neste exemplo, ambos os tanques possuem uma seo horizontal com rea de 1 105 cm2, alturas de 300 cm e suas vlvulas fixas de sada possuem uma resistncia vazo de 2.5 10-2 cm / cm3 / s. As vazes mnimas de entrada so iguais a 0 l/s e as mximas de 40 l/s. Para implementar o controlador fuzzy, utilizou-se como variveis lingusticas de entrada o erro e a variao do erro entre os nves dos tanques e seus set-points. Como variveis lingusticas de sada, adotou-se os incrementos nas vazes de entrada do processo. Na figura 24 tem-se um esquema das funes de pertinncia utilizadas.

31

NG

NM

NP

ZR

PP

PM

PG

0 U

Figura 24 - Funes de Pertinncia As regras utilizadas pelo controlador foram as seguintes:


erro\derro NG NM NP ZR PP PM PG PM PG PM PP NG NM NP PG ZR PG PM PP ZR NP NM NG NG NP NM NG NM PP PM PG

Os resultados obtidos, so mostrados na figura 25 a seguir, para os dois tanques:

Nvel do Tanque 1

Nvel do Tanque 2

Figura 25 - Resultados para os Tanques

32

8.4 - Controle Autnomo de um Rob Mvel


Algoritmos genticos (Goldberg, 1989) so mtodos adaptativos que podem ser usados para resolver problemas de busca, otimizao e aprendizagem de mquina, dentre outros. O ciclo bsico do algoritmo gentico mostrado na figura 26.

POPULAO ANTERIOR

NOVA POPULAO

SELEO

MUTAO

CROSSOVER

Figura 26 - Ciclo Bsico de Algoritmo Gentico Um algoritmo gentico considerado neste exemplo como um mtodo de aprendizagem de aes de controle de forma autnoma. Considera-se um controlador neural fuzzy para um rob mvel. A rede aprende a dirigir o rob mvel at que o mesmo atinja alvos predefinidos, sem colidir com obstculos do ambiente. O conhecimento adquirido pela rede pode tambm ser facilmente extrado em forma de regras fuzzy. Como o algoritmo gentico tambm determina o nmero de regras, as funes de pertinncia dos antecedentes e os consequentes, este modelo constitui-se em um mtodo conveniente para projetar sistemas nebulosos de forma automtica (Oliveira et.al., 1994). A rede neural fuzzy utilizada (figura 27) baseada em um conjunto de proposies (fatos) e regras fuzzy do tipo (Figueiredo et.al. 1993):
Fato: Regra 1: X1 A1 e
1 Se X1 A1 e N Se X1 A1

Regra M: Concluso (a o):

eX e X A  eeX A
M M

M 1 M N M

AM Ento y g1 Ento y g N

y g
i

onde Xj uma varivel fuzzy, Aj e A j so os conjuntos nebulosos associados, y uma varivel com valores gj (figura 27).
1 max a1 11 min x 11 x1 a 1p max 1
1

1 g1 1

. . . x

x1p
1

aN 1p a 11 a M1
N

. . . 1 N
N

y div

M1

a Mh

max

1 1

. . . x Mh aN

a M1

min

Mh

max

Figura 27: Controlador Neural Fuzzy

33

O consequente y determinado em trs etapas: casamento (matching), agregao de antecedentes e agregao de regras. Estas etapas so executadas por neurnios especializados do tipo min-max pois incorporam funes mais complexas para modelagem de sinapses, de agregao de entradas e de decodificao (Gomide & Rocha, 1992-c). O algoritmo gentico (GA) usado do tipo elitista e manipula um cromossomo de formato misto inteiro/real. As caractersticas ajustadas pelo GA durante as geraes so os consequentes das regras e as funes de pertinncia, representadas por formato e posio. Os consequentes das regras so codificados em genes reais, enquanto a codificao das funes de pertinncia mais elaborada: um par numrico (centro, tipo), onde centro indica a posio do ponto central da funo e tipo indica o formato da funo, trapezoidal ou triangular (veja tabela 2). Para uma base de conhecimento com n regras, cada uma com k antecedentes e fi funes de pertinncia para cada antecedente i, o cromossomo descrevendo esta rede neurofuzzy ter n + genes reais e

fi
i =1

fi genes inteiros.
i =1

Os genes relativos s funes de pertinncia so interpretadas de acordo com seu prprio formato e centro e os formatos e centros das funes imediatamente anterior e posterior. Veja a Tabela 2. O crossover sempre ocorre e seleciona apenas um ponto de permutao. A mutao possui probabilidade zero durante quase todas as geraes, ocorrendo apenas em situaes especiais de convergncia. Este tipo de mutao baseada na estratgia de exploses mutantes peridicas de Kauffman. A funo objetivo uma funo do nmero de alvos alcanados, distncia mdia percorrida e distncia ao alvo atual ao final da simulao.
Evoluo da Funo Objetivo
80000

Valor da Funo Objetivo

70000 60000 50000 40000 30000 20000 10000 0 0 1 2 3 4 5

CtM

BEST AVG

10

11

Gerao

Figura 28 - Evoluo da Funo Objetivo O GA descrito anteriormente utiliza durante as simulaes 4 seqncias distintas de 4 obstculos ((A,B,C,D), (B,C,D,A) etc.). A funo objetivo a mdia dos resultados obtidos em cada seqncia. Os resultados de simulao so mostrados nas figuras 28, 29 e 30. Observe que, mesmo com alvos colocados em lugares diferentes, o melhor indivduo (controlador) encontrado foi capaz de navegar pelo ambiente atingindo os alvos sem colidir.

Figura 29 Simulao do Melhor Indivduo

Figura 30 - Simulao com Alvos Diferentes

34

Formato da Funo (i) (seu ponto central ci ) Triangular (Trapezoidal)

Formato da Funo (i+1) (seu ponto central ci+1) Triangular (Trapezoidal)

Lado direito da Funo (i) e o lado esquerdo da Funo (i+1)

i+1

ci

( c i+1 -ci )/3

2*(c i+1 -ci )/3

c i+1

Triangular (Trapezoidal)

Trapezoidal (Triangular)

ci

2*(c i+1 -ci )/3

c i+1

(c

i+1

-c )/3
i

i+1

Tabela 2 : Formao das Funes de Pertinncia

9 - CONCLUSES E PERSPECTIVAS
A tecnologia decorrente da lgica fuzzy tem gerado aplicaes e produtos em diversas reas. Em controle de processos industriais, rea pioneira, as primeiras experincias datam de 1975 quando foi demonstrado no Queen College, Londres (Mamdani & Assilian, 1975), que um controlador fuzzy muito simples controlou eficientemente uma mquina a vapor. Na mesma poca, a primeira aplicao industrial significativa foi desenvolvida pela indstria de cimento F.L.Smidth Corp. da Dinamarca (Umbers & King, 1980). Neste tipo de aplicao, controladores fuzzy so usados para fornecer sinais de referncia para controladores do tipo PID, ou seja, aqueles no atuam diretamente sobre a planta, mas em um nvel hierrquico superior. O sucesso desta aplicao deveu-se em muito ao fato de os operadores humanos (especialistas) terem sido capazes de traduzir consistentemente, em termos de regras lingusticas, as atitudes que tomavam no ajuste dos sinais de referncia para os controladores PID. Embora grande parte das aplicaes considere universos discretos, similarmente ao que foi abordado, para fins de exemplo, neste texto, algumas fizeram uso de universos "contnuos" e de conjuntos fuzzy definidos por funes (contnuas) de pertinncia (Kickert & Lemke, 1976), ao invs de valores de pertinncia. Um controle fuzzy distinto do mostrado aqui, mas mantendo os mesmos princpios e o mesmo processo de inferncia, foi empregado em controle de trfego (Pappis & Mamdani, 1977). Em virtude da preocupao com a aquisio de regras, j mencionada anteriormente, controladores com capacidade de aprendizado foram desenvolvidos. O primeiro trabalho neste sentido (Procyk & Mamdani, 1979) deu origem ao controlador fuzzy conhecido como SOC, o qual capaz de estabelecer sua prpria estratgia de controle atravs da criao e modificao de regras. Para isto, utilizada uma tabela de ndice de desempenho, oriunda de regras lingusticasdecarter geral, situadas em um nvel hierrquico superior s regras de controle propriamente ditas. O SOC foi aplicado a diversos processos simulados e tambm a um brao mecnico (Yamazaki, 1982; Scharf & Mandic, 1985; Tanscheit & Scharf, 1988). A maior dificuldade no uso deste controlador reside na sintonia dos parmetros GE e GCE, pois, alm de afetarem o controlador propriamente dito, influenciam tambm a criao e modificao das regras (Tanscheit & Lembessis, 1991). Um procedimento distinto, porm com o mesmo objetivo, consiste da identificao do modelo fuzzy do processo (Takagi & Sugeno, 1985; Sugeno & Tang, 1986), cujo resultado um conjunto de regras que descrevem seu comportamento e que podem ser usadas no controle. Um terceiro procedimento visando o aprendizado de regras foi tambm sugerido (Van der Rhee & Lemke, 1990), mas ainda merece futuras investigaes. De meados dos anos 80 em diante, o uso de controladores fuzzy em escala comercial tem mostrado um crescimento bastante significativo, principalmente no Japo. As aplicaes de maior impacto comercial foram em mquinas de lavar roupa, mquinas fotogrficas e na indstria automobilstica. Empresas tm produzido controladores fuzzy em "chips" ou cartes para uso em microcomputadores, possibilitando sua interligao aos mais diver-sos processos. Existem em escala comercial interfaces que permitem que se defina graficamente conjuntos de vrias formas, em universos de tamanho varivel, que se escolha as funes de implicao, mtodos de desnebulizao, etc. Resumindo, pode-se afirmar que a utilizao da Teoria de Conjuntos Fuzzy e de Lgica Fuzzy em Controle tem apresentado resultados bastante satisfatrios e muitas vezes superiores aos obtidos com outros controladores. A rea de Controle Fuzzy j est bem estabelecida, inclusive com aplicaes em nvel industrial. Atualmente os trabalhos tm se concentrado no aprimoramento dos controladores existentes e na busca de novas estruturas, com uma preocupao em procedimentos automticos de sintonia e em mtodos de aprendizado de regras. Recentemente tem havido uma integrao entre Controle Fuzzy e Redes Neuronais, abrindo espao para novas investigaes.

35

Presentemente, uma variedade de aplicaes comerciais e industriais esto disponveis, destacando-se neste cenrio o Japo e mais recentemente, os EUA e a Alemanha. Exemplos tpicos incluem produtos de consumo tais como geladeiras (Sharp), ar condicionado (Mistsubishi), cmeras de vdeo (Canon, Panasonic), mquinas de lavar roupa (Sanyo), fornos de microondas (Sanyo), aspiradores de p, etc. Na indstria automotiva destacam-se transmisses automticas (Nissam, Lexus), injeo eletrnica, suspenso ativa, freios anti-bloqueantes. Sistemas industriais incluem controle de grupo de elevadores (Hitachi, Toshiba), veculos auto-guiados e robs mveis (Nasa, IBM), controle de motores (Hitachi), ventilao de tneis urbanos (Toshiba), controle de trfego urbano, controle de parada e partida de trens de metr (Sendai, Tokio). Estas citaes so, evidentemente, ilustrativas pois correntemente mais de 1000 patentes envolvendo lgica fuzzy j foram anunciadas. No Brasil, apesar do uso e da aplicao extensiva ainda ser incipiente, vrias indstrias e empresas vm desenvolvendo produtos e servios (Villares, IBM, Klockner & Moeller, Robertshaw, Yokogawa, HI Tecnologia). Nos ltimos dois anos o potencial de manuseio de incertezas e de controle de sistemas complexos proporcionado pela lgica fuzzy vem sendo combinado com com redes neurais artificiais as quais, por sua vez, possuem caractersticas de aprendizagem e adaptao. Esta simbiose vem gerando novas classes de sistemas e de controladores neurofuzzy, combinando assim os potenciais e as caractersticas individuais em sistemas adaptativos e inteligentes (Gomide et.al. 1992-a). Estes sistemas devero proporcionar uma importante contribuio para os sistemas de automao e controle do futuro, principalmente em controle de processos. AGRADECIMENTO: Os dois primeiros autores agradecem ao CNPq pelo apoio financeiro, respectivamente, pelo contrato n. 300729/86-3 e por bolsa de doutorado. Os autores tambm agradecem ao projeto ECLA-005 por seu suporte.

REFERNCIAS BIBLIOGRFICAS
Albertos, P. (1992). Fuzzy Controllers - AI Techniques in Control - Pergamon Press. Anderson, B.D.O e J. B. Moore (1979). Optimal Filtering - Prentice-Hall, N.J. Baldwin, J.F. & Pilsworth, B.W. (1980). Axiomatic Approach to Implication for Approximate Reasoning with Fuzzy Logic. Fuzzy Sets and Systems, V. 3: 193-219. Bertsekas, D.P. (1976). Dynamic Programming and Stochastic Control. Mathematics in Science and Engineering. Vol. 125, Academic Press, NY Doygle, J.C. e G. Skin (1981). Multivariable feedback design: concept for a classical/modern synthesis. IEEE Trans. on Automatic Control, vol. AC-26, pp. 4-16 Figueiredo, M. F. Gomide ; W. Pedrycz (1993) - A Fuzzy Neural Network : Structure and Learning - 5th IFSA World Congress, Seul, Coria. pp 1171-1174. Gaines, B.R., (1976). Foundations of Fuzzy Reasoning. International J. of Man-Machine Studies, V. 8: 623668. Goldberg, D. (1989) - Genetic Algorithms in Search, Optimization and Machine Learning - Addison-Wesley, MA. Gomide, F.; A. Rocha; P. Albertos (1992-a) Neurofuzzy Controllers - IFAC - LCA92, Viena, Austria Gomide, F. ; A. Rocha (1992-b) A Neurofuzzy Controller ; 2nd International Conference on Fuzzy Logic and Neural Networks - IIZUKA92 , Fukuoka, Japan. Gomide, F. ; A. Rocha (1992-c) Neurofuzzy Components Based on Threshold - IFAC SICICA Symposium, Malaga, Espanha, pp.425-430

36

Gudwin, R.R ; M.A. Silva, H.J.Almeida Jr.; I.M.C.Ribeiro (1991). SDAF - Uma Ferramenta para Desenvolvimento e Teste de Sistemas utilizando Lgica Nebulosa - Simpsio sobre Integrao Computadorizada na Automao Industrial, 18 a 20 Setembro - So Paulo-SP Hechst-Nielsen, R. (1990) Neurocomputing - Addison Wesley, N.Y. Holmblad, I.P. & Ostergaard, J.J., (1981). Fuzzy Logic Control: Operator Experience applied in Automatic Process Control. FLS Review, F.L.Smidth & Co., Copenhagen, Denmark, n. 5: 11-16., Hotzman, J.M. (1970) Nonlinear System Theory - Prentice Hall, N.J. Kaufmann, A. ; M. Gupta (1985) - Introduction to Fuzzy Arithmetic - Van Nostrand, NY. Kickert, W.J.M. & Van Nauta Lemke, H.R., (1976). The Application of a Fuzzy Controller in a Warm Water Plant. Automatica, Vol. 12: 301-308. Lee, C.C (1990). Fuzzy Logic in Control Systems: Fuzzy Logic Controller, part I and II. IEEE Trans. on Systems, Man and Cybernetics, vol. 20, pp 404-435 Lembessis, E., (1984). Dynamic Learning Behaviour of a Rule-based Self- Organising Controller. Ph. D. Thesis, University of London., Mamdani, E.H., (1974). Application of Fuzzy Algorithms for Control of Simple Dynamic Plant. Proceedings of the IEE (Control and Science), V. 121: 298-316. Mamdani, E.H. & Assilian, S., (1975). An Experiment in Linguistic Synthesis with a Fuzzy Logic Controller. Int. Journal of Man-Machine Studies, Vol. 7: 1-13. Mizumoto, M., (1982). Fuzzy Inference using max-min composition in the Compositional Rule of Inference. In: Approximate Reasoning in Decision Analysis, M.M. Gupta, E. Sanchez (Ed.), North-Holland: 67-76. Oliveira, M. ; M. Figueiredo ; F. Gomide (1994) - A Neurofuzzy Approach for Autonomous Control - 3rd International Conference on Fuzzy Logic, Neural Nets and Soft Computing, IIZUKA94 Fukuoka, Japan. Ollero A., A.Garcia-Cerezo, e J.Aracil. (1991). Design of Rule Based Expert Controllers - ECC91 European Control Conference, Grenoble, Frana, pp 578-583 Pappis, C.P. & Mamdani, E.H., (1977). A Fuzzy Logic Controller for a Traffic Junction. IEEE Transactions on Sys., Man and Cybernetics, V. 7: 625-629. Pedrycz, W. (1989). Fuzzy Control and Fuzzy Systems. - John Wiley and Sons Inc, NY Procyk, T.J. & Mamdani, E.H., (1979). A Linguistic Self-Organising Process Controller. Automatica, V. 15: 15-30. Rescher, N. (1969), Many-valued logic, McGraw-Hill, New York., Sage, A. e C. White (1977). Optimum Systems Control - Prentice Hall, NJ Scharf, E.M. & Mandic, N.J., (1985). The Application of a Fuzzy Controller to the Control of a Multi-degree of Freedom Robot-Arm. In : Industrial Applications of Fuzzy Control, M. Sugeno (Ed.), NorthHolland: 1-61. Sugeno, M. & Tang, G.T., (1986). Fuzzy Modelling and Control of Multilayer Incinerator. Fuzzy Sets and Systems, Vol. 18: 329-346. Tanscheit, R. & Scharf, E.M., (1988). Experiments with the use of a Rule-Based Self-Organising Controller for Robotics Applications. Fuzzy Sets & Systems, Vol. 26, n. 2: 195-21.

37

Tanscheit, R. & Lembessis, E., (1991). On the Behaviour and Tuning of a Fuzzy Rule-based Self-Organising Controller. 13th IMACS World Congress on Computation and Applied Mathematics, Dublin, Irlanda. Takagi, H. ; M. Lee (1993) - Neural Networks and Genetic Algorithms Approaches to Auto-Design of Fuzzy Systems - Proc. of Fuzzy Logic in Artificial Intelligence - FLAI93, Linz, Austria. Takagi, T. & Sugeno, M., (1985). Fuzzy Identification of Systems and its Applications to Modelling and Control. IEEE Transactions on Systems, Man & Cybernetics, Vol. 15: 116-132. Umbers, I.G. & King, P.J. (1980). An Analysis of Human Decision-Making in Cement Kiln Control and the Implications for Automation. International Journal Man Machines Studies, vol. 12 n. 1, pp. 11-23 Van der Rhee, F., Van Nauta Lemke, H.R., Dijkman, J.G., (1990). Knowledge Based Fuzzy Control of Systems. IEEE Trans. Automatic Control, V. 35: 18-155. Whalen, T. & Schott, B., (1983). Issues in Fuzzy Production Systems. International Journal of Man-Machine Studies, Vol. 19: 57-71. Yager, R., (1980). An Approach to Inference in Approximate Reasoning International Journal of ManMachine Studies, Vol. 13: 323-338. Yager, R. ; S. Ovchinnikov, R.M. Tong e H. T.Nguyen (1987). Interscience, NY Fuzzy Sets and Applications- Wiley

Yamakawa, T. (1993). A Fuzzy Inference Engine in Nonlinear Analog Mode and Its Application to a Fuzzy Logic Control. IEEE Transactions on Neural Networks, vol. 4 n. 3, May, pp. 496-522 Yamazaki, T., (1982). An Improved Algorithm for a Self-Organising Controller. Ph. D. Thesis, Univ. London., Zadeh, L. (1965). Fuzzy Sets - Information and Control, vol. 8, pp 338-353 Zadeh, L. (1973). Outline of a new approach to the analysis of complex systems and decision processes. IEEE Trans. on Systems Man and Cybernetics, vol SMC-3, pp 28-44 Zadeh, L. (1988) - Fuzzy Logic - IEEE Computer, April, pp. 83-92

38

Potrebbero piacerti anche