Anda di halaman 1dari 23

Lgica Fuzzy: Conceitos e aplicaes

Alessandro Assi Marro, Alyson Matheus de Carvalho Souza, Everton R. de Sousa Cavalcante, Giuliana Silva Bezerra, Rmulo de Oliveira Nunes

Departamento de Informtica e Matemtica Aplicada (DIMAp) Universidade Federal do Rio Grande do Norte (UFRN) Natal RN Brasil
{alessandropotiguara, alysonmatheus, evertonranielly}@gmail.com, Giu_drawer@hotmail.com, romulo_ciencomp@yahoo.com.br

Resumo. Este trabalho apresenta um estudo acerca da Lgica Fuzzy, sendo abordados os principais conceitos acerca dessa teoria, incluindo uma breve descrio sobre conjuntos e regras fuzzy, bem como sobre regras de inferncia fuzzy. Alm disso, discorre-se acerca da aplicao da Lgica Fuzzy no contexto da Inteligncia Artificial e apresentado um estudo de caso envolvendo a aplicao dessa Lgica no desenvolvimento de sistemas especialistas inteligentes. Por fim, relata-se brevemente sobre as pesquisas envolvendo Lgica Fuzzy na UFRN. Abstract. This paper presents a study on Fuzzy Logic, being discussed the main concepts of this theory, including a brief description about fuzzy sets and fuzzy rules, as well as about fuzzy inference rules. In addition, it is talked about the application of Fuzzy Logic in the context of Artificial Intelligence and it is presented a case study involving the application of this Logic in the development of intelligent expert systems. Finally, it is reported briefly on the researches involving Fuzzy Logic in UFRN.

1. Introduo
A lgica convencional ou clssica usa distines bem definidas para separar conjuntos. Por exemplo, pode-se dizer que uma pessoa com 1,70m considerada alta ou mediana, nunca os dois. Isso fora a construo de linhas que diferenciem membros dos no membros de uma classe. Essa diviso, muitas vezes, um processo complicado e que no reflete a realidade do problema a ser modelado. Por outro lado, a Lgica Fuzzy reflete a maneira como as pessoas pensam, tentando modelar o seu senso de palavras, tomada de deciso ou senso comum. Como consequncia, a introduo da Lgica Fuzzy tem conduzido as pesquisas para sistemas inteligentes mais humanos e mais adequados realidade. O termo fuzzy em lngua inglesa pode ter vrios significados, que variam de acordo com o contexto de interesse, mas o conceito bsico deste adjetivo passa sempre pelo vago, indistinto, incerto. As tentativas de traduo para o portugus ainda no so unanimidade: nebuloso e difuso so exemplos mais populares de tradues para fuzzy.

Nas prximas sees sero apresentados os principais conceitos concernentes Lgica Fuzzy e aos conjuntos fuzzy, que fundamentam essa teoria, bem como as regras de inferncia presentes nesse contexto. Posteriormente, so apresentadas as aplicaes de maior notabilidade da Lgica Fuzzy, mais especificamente relacionadas ao contexto da Inteligncia Artificial, designando-se uma ateno especial utilizao da Lgica Fuzzy como formalismo de representao do conhecimento para ser representado em sistemas especialistas, construindo, assim, os sistemas especialistas fuzzy. Por fim, so elencados aspectos positivos e limitaes que essa lgica no-clssica apresenta.

2. Lgica Fuzzy
Tomando como exemplo a frase a seguir:
Emboraotransformadorestejaumpoucocarregado,podeseutilizloporumtempo.

nessa frase existem dois termos (um pouco e um tempo) bastante subjetivos e difceis de representar. Para um especialista que esteja conversando com outro especialista, o entendimento seria normal; no entanto, durante o processo de aquisio, fica bastante complicado para o engenheiro de conhecimento entender e representar esse tipo de conhecimento. Dessa forma, uma maneira de tentar solucionar o processo de representao de conhecimento impreciso atravs da Lgica Fuzzy. A Lgica Fuzzy tem como principal objetivo a modelagem computacional do raciocnio humano, impreciso, ambguo e vago. A Lgica Fuzzy (tambm chamada de lgica multivalorada) foi primeiramente introduzida em 1930 pelo filsofo e lgico polons Jan Lukasiewicz. Atravs do estudo de termos do tipo alto, velho e quente, ele props a utilizao de um intervalo de valores [0,1] que indicaria a possibilidade que uma declarao fosse verdadeira ou falsa. Em 1937, o filsofo Max Black props a idia de que continuidade descrevia graus. Ele definiu o primeiro conjunto fuzzy e descreveu algumas idias bsicas de operaes com conjuntos fuzzy. Em 1965, Lofti Zadeh publicou o artigo Fuzzy Sets, que ficou conhecido como a origem da Lgica Fuzzy. Na realidade, Zadeh redescobriu a idia de fuzzyficaco, identificou e explorou tal conceito, assim como lutou por ele. Portanto, Zadeh ficou e ainda conhecido como o mestre da Lgica Fuzzy. 2.1. Lgica convencional Lgica Fuzzy A teoria clssica de conjuntos permite o tratamento de classes de objetos e suas interrelaes em um universo definido. Nessa teoria, a pertinncia de um dado elemento com relao a um conjunto refere-se ao fato de tal elemento pertencer ou no a esse conjunto. De forma ilustrativa, considere o grfico apresentado no lado esquerdo da figura 1, que representa um exemplo tpico da teoria clssica e descreve a altura de uma pessoa atravs de trs conjuntos: baixo, mdio e alto. Nesse exemplo, dado um elemento x qualquer, o mesmo pertencer a um dos conjuntos do grfico; por exemplo, se x = 1,65, ento x pertence ao conjunto mdio e no aos demais, ou seja, um elemento pertence ou no a um determinado conjunto e, alm disso, tal elemento no pertence a mais de um conjunto.

Figura 1. Representao na forma de conjuntos da altura de uma pessoa, sob o ponto de vista da Lgica convencional ( esquerda) e do da Lgica Fuzzy ( direita)

Ao contrrio da Lgica convencional, a Lgica Fuzzy utiliza a idia de que todas as coisas admitem (temperatura, altura, velocidade, etc.) graus de pertinncias. Com isso, a Lgica Fuzzy tenta modelar o senso de palavras, tomada de deciso ou senso comum do ser humano. Ainda tomando como exemplo o grfico da figura 1, dados dois elementos x1 = 1,69 e x2 = 1,71, se a Lgica clssica for utilizada, esses dois elementos pertencem a classes diferentes, x1 pertencendo classe mdio e x2 classe alto. No entanto, na realidade fica difcil de dizer que uma pessoa com 1,69 m e outra com 1,71 m pertencem a classes diferentes. Por outro lado, na Lgica Fuzzy, tanto o x1 quanto o x2 tm graus de pertinncias aos conjuntos fuzzy definidos, que podem variar de 0 a 1. Em outras palavras, enquanto que a tomada de deciso na teoria clssica seria como a da expresso 1, a da Lgica Fuzzy seria como a da expresso 2, considerando um conjunto A e um elemento x com relao a esse conjunto. se, e somente se, x A 1 f ( x) = (1) se, e somente se, x A 0

1 0 ( x) = 0 ( x) 1

se, e somente se, x A se, e somente se, x A se x pertence parcialmente a A (2)

Dessa forma, a Lgica Fuzzy pode ser considerada como um conjunto de princpios matemticos para a representao do conhecimento baseado no grau de pertinncia dos termos (graus de verdade). Como pode ser observado na expresso 2, o intervalo de pertinncia [0,1], onde 0 significa que um elemento no pertence a um determinado conjunto, 1 significa completa pertinncia ao conjunto, e valores entre 0 e 1 representam graus parciais de pertinncias. Assim, na Lgica Fuzzy, um elemento pertence a um conjunto com um certo grau de pertinncia, fazendo com que uma determinada sentena possa ser parcialmente verdadeira e parcialmente falsa. Alm do mais, um mesmo elemento pode ter graus de pertinncias diferentes de 0 para mais de um conjunto fuzzy. Para entender melhor o funcionamento da Lgica Fuzzy, ainda considerando o exemplo descrito acima, a altura de uma pessoa pode ser descrito atravs de conjuntos fuzzy (explicados com maiores detalhes na prxima seo), como mostrado no lado

direito da figura 1. Utilizando os mesmos elementos do exemplo acima, x1 = 1,69 e x2 = 1,71, percebe-se que ambos tm graus de pertinncia 0 para o conjunto alto e graus de pertinncia parciais para os conjuntos baixo e mdio. possvel notar que, com a Lgica Fuzzy, no existe um limite abrupto que define os elementos que pertencem ou no a um determinado conjunto, como no caso dos conjuntos alto, mdio e baixo. Por outro lado, os graus de pertinncia dos elementos possuem variaes suaves no intervalo real [0,1], representando, assim, de forma mais realista, o conhecimento humano.

3. Conjuntos fuzzy
Como discutido anteriormente, na Lgica clssica os conjuntos so bem definidos, de modo que um elemento pertence ou no a um conjunto; se pertencer, pertence somente a um. Isso evita que ambiguidades apaream e tornam a lgica mais simples. Ainda considerando o exemplo da utilizao de conjuntos para separar pessoas pela altura, uma pessoa com 1,69m seria considerada uma pessoa de altura mediana, se assim fosse definido, estando apenas nesse conjunto e em nenhum outro; j uma pessoa com 1,71m faria parte do conjunto das pessoas altas, e somente deste. Todavia, na realidade, fica bem difcil ver que pessoas com uma diferena de altura to mnima pertencem a conjuntos diferentes. Por outro lado, pela tica da Lgica Fuzzy, ter-se-ia as duas pessoas com certo grau de pertinncia aos dois conjuntos, variando entre 0 e 1, ou seja, teramos a tomada de deciso baseada em fatores mais humanos, mais maleveis. Assim, pode-se concluir que os conjuntos fuzzy que classificam os elementos de um dado universo so menos rgidos do que aqueles utilizados na teoria clssica visto que eles admitem graus parciais de pertinncia.
3.1. Representao de conjuntos fuzzy

O primeiro passo na representao de conjuntos fuzzy a escolha da funo de pertinncia. A escolha dessa funo depende do problema a ser modelado e tambm da capacidade computacional disponvel para processar o que se deseja. Funes nolineares podem ser mais eficientes para problemas mais complicados, porm, elas demandam um poder computacional muito maior do que as funes lineares. Se o universo a ser trabalhado for curto, ou contnuo, torna-se bem mais simples a aplicao de uma funo para separar adequadamente os elementos em conjuntos. Um exemplo para a altura seria o apresentado na tabela 1:
Tabela 1. Altura: conjuntos fuzzy e graus de pertinncia para alguns valores de x

alto Graude pertinncia x=165x=175x=185 00.51 (x)

mdio x=145x=160x=175 010

baixo x=140x=150x=160 10.51

Nesse caso, tem-se o grau de pertinncia de cada um sendo analisado em relao aos centmetros. Uma pessoa com menos de 165 centmetros no pode ser considerada nem um pouco alta, assim como uma pessoa acima de 160 centmetros no nada baixa.

Como as opes para a escolha de uma funo de pertinncia praticamente infinita, vale a pena sempre gastar algum tempo nessa etapa do processo e com isso escolher a funo mais adequada ao problema a ser modelado. A consulta a um especialista, no caso de sistemas especialistas, sempre uma boa idia.
3.2. Variveis lingusticas e modificadores

Pode-se considerar uma varivel lingustica (ou fuzzy) como uma entidade utilizada para representar de modo impreciso e, portanto, lingustico um conceito ou uma varivel de um dado problema. Uma varivel lingustica, diferentemente de uma varivel numrica, admite apenas valores definidos na linguagem fuzzy que est utilizando-se dela. Por exemplo:
Jooalto

A varivel Joo est recebendo o valor alto, que um dos conjuntos fuzzy definidos para esta varivel. Os modificadores so termos ou operaes que modificam a forma dos conjuntos fuzzy (ou seja, a intensidade dos valores fuzzy), podendo-se citar, por exemplo, os advrbios muito, pouco, extremamente, quase, mais ou menos, entre outros. Estes podem ser classificados em aumentadores, quando aumentam a rea de pertinncia de um conjunto fuzzy, ou, analogamente, diminuidores, quando diminuem a rea de pertinncia de um conjunto fuzzy.
3.3. Operaes e propriedades em conjuntos fuzzy

Como na teoria clssica, os conjuntos fuzzy obedecem a certas propriedades e podem ser operados de diversas maneiras. As operaes entre conjuntos so extremamente importantes para os sistemas que se utilizam dessa lgica, pois os clculos proposicionais, por exemplo, so baseados nessas operaes. O operador AND nada mais que um teste se o elemento est ou no na interseo de dois conjuntos. As operaes bsicas dos conjuntos fuzzy, definidas por Zadeh, esto definidas como segue, considerando A e B dois conjuntos fuzzy num universo U:

Igualdade:

Incluso:

A , ento, um subconjunto fuzzy de B. Unio:

Essa definio para a unio foi proposta por Zadeh na dcada de 1960. A maneira atualmente utilizada de definir essa operao atravs de uma norma S, ou seja, uma famlia de funes que obedecem s seguintes propriedades:

Assim, as funes que obedecem a S podem ser utilizadas como um operador de unio entre conjuntos fuzzy. A unio representa o operador OR. Interseo:

Essa definio tambm do trabalho original, proposto por Zadeh. A definio mais utilizada atualmente a das normas T, que obedecem s seguintes propriedades:

As funes que obedecem a T podem ser utilizadas como operador de interseo entre os conjuntos fuzzy. A interseo equivale ao operador AND. Complemento: O complemento de um conjunto fuzzy A pode ser denotado por A e expresso da seguinte forma:

Diferena: A diferena entre dois conjuntos o que sobra da interseo desses conjuntos e pode ser representada da seguinte maneira:

Sejam A, B e C conjuntos fuzzy onde as operaes de unio, interseo e complemento so vlidas. Estes possuem as seguintes propriedades: Idempotncia:

Identidade: Sejam o conjunto fuzzy vazio e U o conjunto que representa o universo e considere os graus de pertinncia do conjunto vazio 0 e do conjunto-universo 1:

Absoro:

Comutatividade:

Associatividade:

Distributividade:

Complemento duplo:

Lei transitiva:

Leis De Morgan:

4. Regras fuzzy
As regras fuzzy so regras normais utilizadas para operar, da maneira correta, conjuntos fuzzy, com o intuito de obter consequentes. Para criar tais regras preciso de um raciocnio coerente com o que se deseja manusear e obter. Para isso, este raciocnio deve ser dividido em duas etapas: (1) avaliar o antecedente da regra e (2) aplicar o resultado no consequente. Por exemplo, considerando a sentena
sexalto,entoxpesado

seguindo os passos 1 e 2 acima, tem-se que para x = 1,70m, deve-se, primeiramente, verificar o grau de pertinncia da entrada para o conjunto ao qual se encaixa, alto, que , para este caso, (x) = 0.5. Como o grau de pertinncia da entrada x tal, ento se

deve passar este valor de pertinncia para um y = 80 kg (por exemplo), pertencente ao conjunto pesado. Para casos em que existam vrios antecedentes, preciso encontrar um grau de pertinncia resultante de todos os dos antecedentes. Nos casos em que o conectivo entre os antecedentes seja e, deve-se utilizar mtodos de combinao, contanto que o resultado no ultrapasse o valor de menor pertinncia entre os antecedentes; um exemplo de mtodo seria o mnimo das pertinncias. J nos casos em que o conectivo entre os antecedentes for ou, deve-se utilizar mtodos de combinao, contanto que o resultado no seja menor que o maior grau de pertinncia. O raciocnio bem mais simples para casos em que existam vrios consequentes, pois o grau de pertinncia resultante ser o mesmo para todos os consequentes.

5. Inferncia fuzzy
A inferncia fuzzy um processo de avaliao de entradas com o objetivo de, atravs das regras previamente definidas e das entradas, obter concluses utilizando-se a teoria de conjuntos fuzzy. Esse processo pode ser feito atravs de modelos de inferncia, cuja escolha deve levar em considerao o tipo de problema a ser resolvido, obtendo-se assim um melhor processamento. Existem vrios mtodos de inferncia, mas o que geralmente mais utilizado o mtodo Mamdami, que ser apresentado na subseo 5.1.
5.1. Inferncia fuzzy (difusa): Estilo Mandami

O estilo de inferncia Mandami foi criado pelo professor Ebrahim Mamdani da Universidade de Londres (Reino Unido) em 1975 no contexto do desenvolvimento de sistemas fuzzy baseando-se em regras de conjuntos fuzzy no intuito de representar experincias da vida real. Para a construo desse sistema, foi definido um processo de raciocnio dividido em quatro passos: (1) fuzzyficao, (2) avaliao das regras fuzzy, (3) agregao das regras fuzzy e (4) defuzzyficao, cada uma deles explicadas sucintamente nas subsees a seguir. Para ilustrar cada uma das etapas, considere a anlise de riscos num projeto. Nesse domnio, identificam-se trs variveis lingusticas (as duas primeiras de entrada e a ltima de sada), apresentadas na tabela 2, bem como seus respectivos valores. Desta feita, quer-se estabelecer, sendo conhecidos um valor x de recurso monetrio para o projeto e um nmero y de funcionrios para trabalhar no mesmo, qual o risco z desse projeto.
Tabela 2. Variveis e valores lingusticos na anlise de riscos de um projeto

Fundosdoprojeto(x) Valorlingstico Notao Inadequado A1 Razovel A2 Adequado A3 Funcionriosdoprojeto(y)

Valorlingstico Pequeno Grande

Notao B1 B2

Riscodoprojeto(z) Valorlingstico Notao Baixo C1 Normal C2 Alto C3

5.1.1 Fuzzyficao

Essa etapa obtm o grau de pertinncia com que cada entrada pertence a cada conjunto fuzzy. Cada uma dessas entradas foi previamente limitada no universo de discurso em questo e associada a um grau de pertinncia em cada conjunto fuzzy atravs do conhecimento do especialista. Ento para obter o grau de pertinncia de uma determinada entrada crisp basta buscar esse valor na base de conhecimento do sistema fuzzy. Para o exemplo em questo, tem-se os conjuntos fuzzy e graus de pertinncia para cada uma das variveis de entrada, conforme mostrado na figura 2:

Figura 2. Fuzzyficao das variveis lingusticas de entrada x e y, resultando nos seus respectivos conjuntos fuzzy e graus de pertinncia

5.1.2 Avaliao das regras fuzzy

Depois de obter as entradas fuzzyficadas s aplic-las nos antecedentes obtendo assim o valor do consequente para cada regra. Para um antecedente composto, os operadores e e ou so utilizados para obter um nico resultado; no caso do operador ou utilizada a operao de unio (pega o maior grau de pertinncia), e, no caso do operador e, utilizada a de interseo (pega o menor grau de pertinncia). Depois de obter um nico valor para o antecedente necessrio obter o valor do consequente atravs de um mtodo de correlao dos mesmos. O mtodo mais comum conhecido como clipped, onde o consequente cortado para o nvel de valor verdade do antecedente da regra avaliada, ou seja, o valor obtido simplesmente passado para o consequente dessa regra. Por exemplo, com base nos graus de pertinncia e nas correlaes entre as variveis lingusticas, tm-se as regras
1:IF(xisA3(0)oryisB1(0.1))THEN(zisC1(0.1)) 2:IF(xisA2(0.2)andyisB2(0.7))THEN(zisC2(0.2)) 3:IF(xisA1(0.5))THEN(zisC3(0.5))

importante notar que, na regra 1, com a operao ou (or), tem-se que o grau de pertinncia de z 0.1, o maior entre os graus de x e de y; de forma similar, com a operao e (and) na regra 2, o grau de pertinncia de z 0.2, o menor dentre os graus de x e y. Na regra 3 foi aplicado o clipped: como tem-se apenas um valor na varivel lingustica de entrada que consta no antecedente (no caso, x), ento o mesmo passado para a varivel lingustica de sada que consta no consequente (no caso, z).
5.1.3 Agregao das regras fuzzy

Como o nome sugere, nessa etapa so agregadas todas as funes membro dos consequentes de cada regra em um nico conjunto fuzzy. Para o exemplo em questo, considerando os conjuntos fuzzy para a varivel z e respectivos graus de pertinncia, produzidos pela aplicao das regras fuzzy 1, 2 e 3 (figura 3) a agregao desses conjuntos resulta no conjunto fuzzy da figura 4.

Figura 3. Conjuntos fuzzy e graus de pertinncia da varivel lingustica de sada z e respectivos graus de pertinncia, produzidos pela aplicao das regras fuzzy 1, 2 e 3

Figura 4. Conjunto fuzzy resultante do processo de agregao das regras fuzzy 1, 2 e 3

5.1.4 Defuzzyficao

Para se obter uma sada numrica necessrio defuzzyficar a sada obtida na etapa anterior. O mtodo de defuzzyficao mais comum a tcnica do centride, que obtm o ponto onde uma linha vertical divide ao meio um conjunto agregado. A frmula matemtica que obtm esse ponto expressa da seguinte forma (expresso 3). A preciso do mtodo depende do intervalo escolhido, quanto maior mais impreciso, porm mais rpido de calcular.

COG =

( x) x
x=a b

( x)
x=a

(3)

Considerando o conjunto fuzzy da figura 4, o resultado numrico obtido com a aplicao da tcnica do centride (COG) dado por (considerando intervalos percentuais de 10%, variando de 0% a 100%):
COG = (0 + 10 + 20) 0.1 + (30 + 40 + 50) 0.2 + (60 + 70 + 80 + 90 + 100) 0.5 = 67.4 0 .1 + 0 .1 + 0 .1 + 0 .2 + 0 .2 + 0 .2 + 0 .5 + 0 .5 + 0 .5

Assim, tem-se que o risco do projeto em questo de 67.4%.

6. Aplicaes
A Inteligncia Artificial talvez a rea onde a Lgica seja mais usada, visto que ela o principal formalismo de representao do conhecimento, e, portanto, muito til no desenvolvimento de sistemas inteligentes, em especial os especialistas e os multiagentes, visto que, conforme comentado por Luger (2005) e Konar (2000), a representao e a inteligncia so o real desafio da Inteligncia Artificial. De fato, para muitos problemas reais, a impreciso dos dados e a incerteza do conhecimento so, por natureza, parte do problema em si, e raciocinar considerando esses aspectos sem uma fundamentao adequada pode gerar inferncias imprecisas. no campo da Inteligncia Artificial onde a Lgica Fuzzy coloca-se como o principal instrumento para uma representao mais adequada do conhecimento (e do

prprio raciocnio), isso se devendo sua capacidade de lidar com incertezas, raciocnio aproximado, termos vagos e ambguos, com o que as pessoas pensam, isso tudo indo alm do escopo das lgicas clssicas. Dessa forma, a Lgica Fuzzy permite aos sistemas computacionais inteligentes raciocinar considerando aspectos inerentes incerteza e aos processos realsticos e torn-lo mais humano. Abaixo segue uma lista no-exaustiva de domnios de aplicao da Lgica Fuzzy, no contexto da Inteligncia Artificial. Sistemas especialistas; Sistemas multiagentes; Reconhecimento de padres; Robtica; Sistemas de controle inteligentes; Sistemas de apoio tomada de deciso; Algoritmos genticos; Data mining.

McNeil e Thro (1994) relacionam algumas caractersticas de sistemas onde a aplicao da Lgica Fuzzy (ao que tambm se chama fuzziness, em ingls) necessria ou benfica: sistemas complexos que so difceis ou impossveis de modelar; sistemas controlados por especialistas [humanos]; sistemas com entradas e sadas complexas e contnuas; sistemas que se utilizam da observao humana como entradas ou como base para regras; sistemas que so naturalmente vagos, como os que envolvem cincias sociais e comportamentais, cuja descrio extremamente complexa.

6.1. Estudo de caso: Sistemas especialistas

Henderson (2009) define sistemas especialistas (em ingls, expert systems) como sistemas computacionais que empregam um determinado conhecimento (proveniente de especialistas do domnio do problema ou mesmo outras fontes de conhecimento) e regras para lidar com o mesmo no intuito de apresentar concluses ou resolver problemas, emulando a habilidade de tomada de deciso de um especialista humano. De acordo com Castillo e Melin (2008), sistemas especialistas que utilizam Lgica Fuzzy em sua concepo tm sido aplicados com sucesso a problemas de deciso, controle, diagnstico e classificao, isso justamente porque eles so capazes de gerenciar o raciocnio complexo intrnseco a essas reas de aplicao. Os elementos que compem um sistema especialista so:

base de conhecimento (de dados) banco de informaes colhidas dos especialistas sobre o domnio em estudo, nela sendo representado o conhecimento que os especialistas tm sobre o domnio do problema e contendo, portanto, os elementos (dados) e formas de conduo para identificao e soluo de um problema; mecanismo de inferncia (raciocnio) atua como um processador, trabalhando com as informaes contidas na base de conhecimento em funo dos dados do problema em questo (contexto); internamente, existem regras utilizadas pelo mecanismo de inferncia para lidar com a base do conhecimento, regras essas que so fuzzy (no caso de sistemas especialistas que utilizam essa Lgica).

Conforme apresentado na figura 5 a seguir, que mostra a estrutura bsica de um sistema especialista que utiliza a Lgica Fuzzy. Como explicam Castillo e Melin (2008), em geral, diz-se que um sistema fuzzy implementa um mapeamento no-linear de um espao de entrada (input space) para um espao de sada (output space). Esse mapeamento sendo realizado pelas regras fuzzy na forma IFTHEN (implicao se... ento...), cada uma delas descrevendo o comportamento local do mapeamento. Em particular, o antecedente da regra define uma regio fuzzy do espao de entrada, enquanto o consequente especifica a sada na regio fuzzy.

Figura 5. Estrutura bsica de um sistema especialista que utiliza a Lgica Fuzzy

Com o objetivo de ilustrar o projeto de um sistema especialista fuzzy, considere o problema de operar uma central de servios para peas extras (adaptado de Negnevitsky (2005)) com a seguinte descrio: Uma central de servios fornece peas de carros para seus clientes e conserta as peas defeituosas. Um cliente traz uma pea defeituosa para a central e recebe uma pea boa do mesmo tipo; a pea defeituosa ento consertada e se torna uma pea extra pronta para ser fornecida ao usurio. Se existe uma pea extra do mesmo tipo da que o cliente

trouxe, o mesmo recebe a pea extra e vai embora; em caso contrrio, o cliente tem que esperar at que uma pea do mesmo tipo esteja disponvel, ou seja, o cliente espera at que uma pea do mesmo tipo seja consertada. O objetivo desse sistema dar sugestes ao gerente da central para manter o cliente satisfeito com o servio, sempre preocupado em deixar o tempo de espera do cliente o menor possvel. Analisando a descrio acima, tem-se que o gerente dessa central de servios para peas extras deseja definir o nmero de peas extras necessrias para manter o tempo de espera do cliente dentro de um intervalo aceitvel. Considerando que o desenvolvimento de um sistema especialista incremental (evolucionrio), os passos a serem seguidos cada um deles detalhado nas subsees a seguir so: 1. especificar o problema e definir as variveis lingusticas; 2. definir os conjuntos fuzzy; 3. elicitar e construir as regras fuzzy; 4. codificar os conjuntos e regras fuzzy e os procedimentos para realizar a inferncia no sistema; 5. avaliar e melhorar o sistema.

6.1.1 Especificao do problema e definio das variveis lingusticas

O primeiro passo na construo de um sistema especialista fuzzy a especificao do problema em termos de engenharia de conhecimento, ou seja, definir as variveis de entrada e de sada, assim como seus respectivos intervalos de valores. Nesse problema, existem quatro variveis lingusticas, a saber: tempo mdio de espera de um cliente (m) no pode exceder o limite aceitvel pelo cliente e tem de ser o menor possvel; fator de utilizao de reparo da central (p) mdia entre clientes chegando (falhas por unidade de tempo) e clientes saindo (reparos por unidade de tempo), que proporcional ao nmero de empregados e ao nmero de peas extras disponveis; para aumentar a produtividade da central, o gerente deve manter esse parmetro o maior possvel; nmero de empregados (s) nmero de empregados existentes na central, ou seja, o nmero de pessoas disponvel para o conserto das peas; nmero de peas extras (n) juntamente com o nmero de empregados, afeta o tempo de espera, e, consequentemente, tem um grande impacto no desempenho da central de servios. Aumentando s e n, obtm-se um tempo de espera pequena; entretanto, h um maior custo para empregar novos empregados e manter as peas extras nas estantes

Nesse exemplo, existem trs variveis de entrada m, s e p e uma de sada n , esta ltima prefigurando o ponto-chave do sistema, que o de definir o nmero de peas extras necessrias para manter o tempo de espera do cliente dentro de um intervalo aceitvel. A tabela 3 a seguir mostra as variveis lingusticas e respectivos intervalos, determinados por especialistas do domnio.
Tabela 3. Variveis lingusticas e respectivos intervalos

Tempomdiodeespera(m) Valorlingstico Notao Intervalonumrico Muitopequeno MP [0,0.3] Pequeno P [0.1,0.5] Mdio M [0.4,0.7] Fatordeutilizao(p) Valorlingstico Notao Intervalonumrico Baixo B [0,0.6] Mdio M [0.4,0.8] Alto A [0.6,1] Nmerodeempregados(s) Valorlingstico Notao Intervalonumrico Pequeno P [0,0.35] Mdio M [0.3,0.7] Grande G [0.6,1]

Nmerodepeasextras(n) Valorlingstico Notao Intervalonumrico Muitopequeno MP [0,0.3] Pequeno P [0,0.4] Poucopequeno PP [0.25,0.45] Mdio M [0.3,0.7] Poucogrande PG [0.55,0.75] Grande G [0.6,1] Muitogrande MG [0.7,1]

6.1.2 Definio dos conjuntos fuzzy

Definidos os intervalos de valores para cada uma das variveis lingusticas, o segundo passo definir a forma dos conceitos, materializando isso em conjuntos fuzzy. Na construo e representao dos conjuntos fuzzy, preciso manter interseo suficiente entre conjuntos adjacentes, de modo que a mudana entre os conceitos seja o mais suave possvel. Alm disso, os conjuntos fuzzy podem ter uma variedade de formas; entretanto, uma forma triangular ou trapezide frequentemente fornecem uma representao adequada do conhecimento especialista e, ao mesmo tempo, simplifica significantemente o processo de computao. As figuras 6 a 9 apresentam os diagramas dos conjuntos fuzzy para as quatro variveis lingusticas do problema:

Figura 6. Diagrama dos conjuntos fuzzy para a varivel lingustica m (tempo mdio de espera de um cliente)

Figura 7. Diagrama dos conjuntos fuzzy para a varivel lingustica p (fator de utilizao de reparo da central)

Figura 8. Diagrama dos conjuntos fuzzy para a varivel lingustica s (nmero de empregados)

Figura 9. Diagrama dos conjuntos fuzzy para a varivel lingustica n (nmero de peas extras)

6.1.3 Elicitao e construo das regras fuzzy

Para construir as regras fuzzy relacionadas ao problema, preciso adquirir o conhecimento envolvido, e isso feito atravs de entrevistas com especialistas, no intuito de descrever como o problema pode ser resolvido usando variveis lingusticas, ou atravs de outras fontes de conhecimento (e.g., livros etc.). Considerando que h trs variveis de entrada e uma entrada de sada, conveniente representar as regras fuzzy em forma de matriz (memria associativa fuzzy MAF), cada coordenada representando uma varivel lingustica de entrada e o valor de uma clula representando um valor da varivel de sada. A figura 10 mostra um exemplo de memria associativa fuzzy considerando as variveis lingusticas de entrada m (eixo horizontal) e s (eixo vertical); em cada clula, tm-se os valores para a varivel lingustica de sada n.

Figura 10. Memria associativa fuzzy (MAF) considerando as variveis lingusticas de entrada m e s

Com base na memria associativa que relaciona as variveis lingusticas, possvel ento definir as regras fuzzy. Por exemplo, as regras
IF(pisB)THEN(nisP) IF(pisA)THEN(nisG)

definem, respectivamente que, se o valor da varivel p B (fator de utilizao baixo) ento o valor de n ser P (pequeno nmero de peas extras); se, por sua vez, o valor de p A (fator de utilizao alto), ento o valor de n ser G (grande nmero de peas extras). As regras fuzzy tambm podem ser mais complexas; por exemplo, as regras
IF(misMP)AND(sisP)THEN(nisMG) IF(misM)AND(sisG)AND(pisA)THEN(nisPP)

definem, respectivamente, que, se o valor de m MP (tempo mdio de espera muito pequeno) e o valor de s P (pequeno nmero de empregados) ento o valor de n MG (nmero muito grande de peas extras), como mostra a clula inferior esquerda da matriz da figura X; na outra regra, se o valor de m M (tempo mdio de espera mdio) e o valor de s G (grande nmero de empregados) e o valor de p A (alto fator de utilizao), ento o valor de n PP (nmero muito pequeno de peas extras).
6.1.4 Codificao dos conjuntos e regras fuzzy e dos procedimentos de inferncia

Uma vez definidos os conjuntos e as regras fuzzy da base de conhecimento, agora preciso codific-los, isto , implementar o sistema especialista em si. Isso pode ser feito de duas maneiras: utilizando uma linguagem de programao (como C/C++, Java), que a opo preferida dos desenvolvedores experientes e que prov uma maior flexibilidade, ou; utilizar uma ferramenta de desenvolvimento para Lgica Fuzzy (como, por exemplo, o Fuzzy Knowledge BuilderTM), o que confere um rpido desenvolvimento e prototipagem de um sistema especialista fuzzy.
6.1.5 Avaliao e melhoria do sistema

Por fim, o ltimo (e mais trabalhoso) passo consiste em verificar se o sistema atende aos requisitos especificados inicialmente no projeto, avaliando-se o mesmo e definindo-se possveis melhorias que porventura so pertinentes de serem feitas. Nesta fase, a opinio do especialista importante, pois ele pode estar ou no satisfeito com o sistema. Embora efetuar melhorias no sistema demanda mais tempo e esforo que determinar os conjuntos fuzzy e construir as regras fuzzy, as melhorias que podem ser feitas no intuito de aumentar o desempenho de um sistema especialista fuzzy pode envolver um conjunto de aes: 1. Rever o modelo das variveis de entrada e de sada e se necessrio redefinir seus intervalos; 2. Rever os conjuntos fuzzy e se necessrio definir conjuntos adicionais com relao ao domnio (universo do discurso); nesse ponto, importante

ressaltar que um nmero maior de conjuntos fuzzy torna o funcionamento do sistema mais preciso; 3. Fornecer sobreposio suficiente entre (recomendado: 25% a 50% nas bases); conjuntos fuzzy adjacentes

4. Rever as regras fuzzy e se necessrio adicionar novas regras base de regras; 5. Verificar se a incluso de modificadores nos conjuntos fuzzy pode melhorar o desempenho do sistema; 6. Ajustar o peso de execuo das regras (a maioria das ferramentas para Lgica Fuzzy permite o controle da importncia das regras); 7. Rever a forma dos conjuntos fuzzy, se necessrio alter-la no intuito de prover uma maior preciso.

7 Consideraes finais
Como dito anteriormente, a principal vantagem de se utilizar da Lgica Fuzzy deve-se a sua capacidade de lidar com incertezas, raciocnio aproximado, termos vagos e ambguos, o que no possvel de se fazer com as lgicas clssicas. O raciocnio humano envolve todos esses elementos tratados pela Lgica Fuzzy; por isso ela de suma importncia no contexto da Inteligncia Artificial, que procura representar o raciocnio, conhecimento humano da forma mais realstica possvel. Alm disso, conforme apontado por Munkata (2008), para problemas difceis, mtodos no-fuzzy convencionais normalmente so caros e dependem de aproximaes matemticas (como, por exemplo, a linearizao de problemas no-lineares), o que pode comprometer o desempenho dessas solues. Embora apresente muitas vantagens, a Lgica Fuzzy tambm apresenta algumas limitaes relevantes, a saber (Munkata, 2008): Estabilidade. Sistemas fuzzy so estticos, no sendo capazes de se adaptar a contextos extremamente dinmicos. Falta de capacidade de aprendizagem. Pelo fato de serem estticos, sistemas fuzzy no conseguem aprender. Definir boas funes de pertinncia e regras fuzzy no so tarefas fceis. Questes como o porqu de um determinado sistema especialista fuzzy precisa de tantas regras, ou quando um desenvolvedor pode parar de adicionar mais regras no so facilmente respondidas. A verificao e validao de um sistema especialista fuzzy geralmente requer testes extensivos. Muitos desenvolvedores no conseguem fazer isso ou mesmo as circunstncias no permitem esses inmeros testes.

Para superar alguns desses problemas, principalmente no tocante estabilidade e a falta de capacidade de aprendizagem, as atuais pesquisas envolvendo a Lgica Fuzzy e a sua aplicao em sistemas inteligentes consistem na combinao (hibridizao) de sistemas fuzzy com outras tcnicas a fim de prover adaptabilidade, tcnicas essas como

as redes neurais [artificiais] (neuro-fuzzy systems, em ingls) e os algoritmos genticos. Como coloca Coppin (2004), esses sistemas hbridos que integram esse aspecto adaptativo aprendem a lidar com situaes que no tinham sido previstas anteriormente nas fases de projeto do sistema, e, em casos extremos, eles tambm aprendem a sobreviver quando o ambiente no qual eles operam sofre mudanas.
7.1. Pesquisas em Lgica Fuzzy na UFRN

Na Universidade Federal do Rio Grande do Norte (UFRN) tm-se desenvolvido pesquisas envolvendo a Lgica Fuzzy nos projetos apresentados na tabela 4 e sucintamente detalhados nas subsees a seguir.
Tabela 4. Projetos de pesquisa envolvendo Lgica Fuzzy na UFRN

Ttulodoprojeto AplicandotcnicasdaInteligncia Computacionalemumsistemabaseadoem agentesparaaClassificaode Biomtricas Teoriadosautmatosfuzzy:Linguagens formaiseComputabilidade UsodaLgicaFuzzynoapoiotomadade decisonagestodecustosnoCDIdoHUOL FundamentoseaplicaesdaLgicaFuzzy intervalar

Coordenadordoprojeto Prof.Dr.AnneMaglydePaulaCanuto
(Professoraadjunto3doDepartamentode InformticaeMatemticaAplicadaDIMAp)

Prof.Dr.BenjamnRenCallejasBedregal
(ProfessorassociadoIdoDepartamentode InformticaeMatemticaAplicadaDIMAp)

7.1.1 Aplicando tcnicas da Inteligncia Computacional em um sistema baseado em agentes para a Classificao de Biomtricas

Este projeto visa utilizao de tcnicas da inteligncia computacional em um sistema multiagente aplicado a classificao de padres (ClassAge), mais especificamente para o reconhecimento de biomtricas. O sistema ClassAge, tambm conhecido como NeurAge, um sistema multiagente em que vrios agentes buscam um consenso a respeito de um padro de entrada fornecido ao sistema. O presente projeto visa prover algumas melhorias ao sistema ClassAge, atravs da utilizao de tcnicas da Inteligncia Computacional. Basicamente, estas melhorias seriam basicamente (1) a proposta de mtodos de negociao para o sistema, assim como (2) a utilizao de algoritmos de otimizao para otimizar o projeto dos mtodos de classificao dos agentes e (3) a utilizao de conhecimento da Lgica Fuzzy tanto no processo de tomada de deciso dos agentes quanto no processo de negociao entre os agentes. Por fim, pretende-se desenvolver um ambiente multiagente para classificao de padres robusto e eficiente que possa ser amplamente utilizado na classificao de padres, inclusive o reconhecimento de biomtricas.
7.1.2 Teoria dos autmatos fuzzy: Linguagens formais e Computabilidade

Basicamente, a proposta de pesquisa estudar a relao entre a Lgica Fuzzy com a teoria das linguagens formais e da Computabilidade. Em linguagens formais fuzzy pretende-se estudar classes de linguagens fuzzy, tanto do ponto de vista de gramticas como de autmatos, que tenham sido pouco ou ainda no estudadas. Neste sentido, tem-

se, por exemplo, as classes das linguagens lineares fuzzy, linguagens sensveis ao contexto fuzzy e hierarquias de linguagens livres de contexto fuzzy baseadas em medidas de no-determinismo. Na pesquisa a realizar, pretende-se analisar as propriedades de fecho dessas classes com respeito a operaes usuais de linguagens tais como unio, interseo, complemento, etc. assim como formas normais, comparar com sua verso clssica, etc., sendo vistas tambm algumas aplicaes de gramticas fuzzy em teoria dos jogos evolutivos. No contexto da Computabilidade fuzzy, a pesquisa leva ao estudo das verses fuzzy de funes parciais recursivas e de mquinas de acesso aleatrio (modelos RAM) e comparao com alguns dos modelos de mquinas de Turing fuzzy, de modo a ter modelos para lidar com a Computabilidade em mundos ideais (contnuos) baseadas em representaes finitas (pontos flutuantes) dos nmeros reais com graus de pertinncias (graus de incerteza) que reflitam quo longe est essa representao do valor ideal. Assim, esta abordagem trata sistemas fuzzy como uma alternativa Matemtica Intervalar.
7.1.3 Uso da Lgica Fuzzy no apoio tomada de deciso na gesto de custos no CDI do HUOL

Atualmente no Centro de Diagnstico por Imagem (CDI) do Hospital Universitrio Onofre Lopes (HUOL), em Natal-RN, por no possuir um sistema de custos, os preos dos procedimentos so estabelecidos pela tabela do Sistema nico de Sade (SUS) e no com base nos custos reais hospitalares levantados para cada procedimento. Por outro lado, apurar de modo exato o custo final de um procedimento em geral impossvel, uma vez que depende de uma grande quantidade de fatores, nem sempre plausveis de serem determinados precisamente e que em geral variam caso a caso em funo da gravidade do diagnstico do paciente assim como de outros fatores. Assim, uma abordagem usando teorias que lidem com imprecises (Lgica Fuzzy, Matemtica Intervalar e Probabilidade), seria til para estabelecer o custo individual e mdio (com uma margem de erro controlada) do procedimento e no auxilio da tomada de decises na gesto de custos. O objetivo do projeto de pesquisa o desenvolvimento de dois sistemas computacionais, um de custos e outro de apoio tomada de deciso, que se complementem e que permitam auxiliar a ao gerencial, no s no monitoramento do custeio apurado, mas principalmente para definir linhas de aes gerenciais mais amplas, na medida em que possibilitem identificar caminhos estratgicos para melhorar o desempenho custo/receita dos procedimentos realizados no CDI do HUOL. O segundo destes sistemas usaria a Lgica Fuzzy para identificar os procedimentos mais rentveis, aqueles cujos custos precisam ser analisados e controlados com maior cuidado e verificar sua viabilidade econmica. Esse sistema tambm poder sugerir eventuais aes que conduzam melhoria do desempenho de cada procedimento para no mnimo (sempre que possvel) atingir o ponto de equilbrio.
7.1.4 Fundamentos e aplicaes da Lgica Fuzzy intervalar

Tanto a Lgica Fuzzy quanto a Matemtica Intervalar so teorias que lidam com incertezas e a inexatido do conhecimento e raciocnio humano, existindo uma grande

sinergia entre elas. Um dos relacionamentos que ocorrem entre essas teorias a chamada Lgica Fuzzy Intervalar (LFI), que usa intervalos como graus de pertinncia de conjuntos fuzzy com o objetivo de tratar a incerteza associada aos computadores digitais. No mundo cientfico, esta rea tem tido ultimamente grande destaque, tanto na comunidade de Lgica Fuzzy quanto na de Matemtica Intervalar. No Brasil, no entanto, esta rea tem tido pouca difuso e desenvolvimento e, nessa perspectiva, esse projeto configura-se como uma tentativa de fortalecer as pesquisas em LFI tanto nos aspectos formais como aplicados. A idia concentrar esforos para mostrar a sua potencialidade na resoluo de problemas e disseminar estar teoria na comunidade cientifica, consolidando, assim, essa linha de pesquisa dentro do Brasil.

Referncias
Castillo, Oscar; Melin, Patricia. (2008) Type-2 Fuzzy Logic: Theory and applications. Springer-Verlag Berlin Heidelberg. Coppin, Ben. (2004) Artificial Intelligence illuminated. Jones and Bartlett Publishers. Hayes-Roth, F.; Waterman, D.A.; Lenat, D.B. (1983) Building expert systems. AddisonWesley. Henderson, Harry. (2009) Encyclopedia of Computer Science and Technology. Facts on File. Konar, Amit. (2000) Artificial Intelligence and soft computing: Behavioral and cognitive modeling of the human brain. CRC Press. Konar, Amit. (2005) Computational Intelligence: Principles, techniques and applications. Springer-Verlag Berlin Heidelberg. Luger, George F. (2005) Artificial Intelligence: Structures and strategies for complex problem solving 5th ed. Pearson Education/Addison Wesley. Munakata, Toshinori. (2008) Fundamentals of the new Artificial Intelligence: neural, evolutionary, fuzzy and more 2nd ed. Springer-Verlag London. McNeill, F. Martin; Thro, Ellen. (1994) Fuzzy Logic: A practical approach. AP Professional/Academic Press. Negnevitsky, Michael. (2005) Artificial Intelligence: A guide to Intelligent Systems 2nd ed. Pearson Education/Addison Wesley. Partridge, Derek. (1998) Artificial Intelligence and Software Engineering: Understanding the promise of the future. Glenlake Publishing Company/American Management Association (AMACOM). Ross, Timothy J. (2004) Fuzzy Logic with Engineering applications 2nd ed. John Wiley & Sons. Sivanandam, S. N.; Sumathi, S.; Deepa, S. N. (2007) Introduction to Fuzzy Logic using MATLAB. Springer-Verlag Berlin Heidelberg.

Anda mungkin juga menyukai