• Sonuç bulunamadı

O processo de inferência pode ser definido como o mapeamento de um conjunto de entrada para um conjunto de saída, sendo que neste contexto é utilizada a teoria dos conjuntos fuzzy. Este mapeamento é feito através de um conjunto de regras na forma IF x ∈ A THEN y ∈ B, onde x e y são variáveis linguísticas, e A e B são valores linguísticos determinados por conjuntos fuzzy sobre o universo do discurso X e Y , res- pectivamente. O processo de raciocínio de cada regra se constitui de duas partes: avaliar a regra do antecedente (a parte IF da regra) e aplicar seu resultado para o consequente (parte THEN da regra). No sistema baseado em regras clássico, se o antecedente é ver- dade então o consequente é verdade também. Em sistemas fuzzy, onde o antecedente é uma afirmação fuzzy, as regras disparam com algum grau de verdade. Dessa forma, o consequente também será verdade com o mesmo grau determinado pelo antecedente [NEGNEVITSKY, 2005].

Assim como nas regras baseadas na lógica clássica, o antecedente de uma regra fuzzy pode ter múltiplos elementos, como na expressão IF x ∈ A AND y ∈ B T HEN z ∈ C. Neste caso, todos os elementos do antecedente são calculados simultaneamente e re- solvidos num único número, utilizando as operações que atuam sobre conjuntos fuzzy (Seção 3.2). O consequente também pode ter múltiplas assertivas, como na expressão IF x ∈ A THEN y ∈ B; m ∈ W . Neste caso, todas as partes do consequente são afetados igualmente pela expressão do antecedente. Cabe ressaltar que as variáveis das assertivas dos consequentes também são conjuntos fuzzy representados por temos linguís- ticos.

O método de inferência fuzzy mais utilizado é o chamado método Mamdani [MAM- DANI; ASSILIAN, 1999]. Ele é realizado em quatro passos: fuzzificação das variáveis de

entrada, processamento das regras, agregação das saídas das regras e a defuzzificação. O processo é iniciado com a determinação do grau de pertinência dos valores de entrada aos conjuntos fuzzy relevantes às regras de inferência. Os conjuntos corresponderão aos termos linguísticos avaliados e atribuídos às variáveis presentes nas regras. Isso é feito através das funções de pertinência definidas pelo engenheiro de conhecimento junto ao

3. Sistemas Especialistas Fuzzy 46

Figura 16: Exemplos de Corte e Escala em Conjuntos de Saída Fuzzy. Extraído de [NEG- NEVITSKY, 2005]

Figura 17: Exemplos de conjuntos singleton utilizados na saída das regras de inferência. Extraído de [NEGNEVITSKY, 2005]

especialista do domínio em questão. As variáveis fuzzificadas podem então ser aplicadas aos antecedentes das regras de inferência.

O passo seguinte no processo de inferência é aplicar o resultado da avaliação do antecedente à função de pertinência do conseqüente da regra de produção. Pelo método Mamdani, os conjuntos fuzzy de saída seriam escalados ou cortados na altura do valor conseguido do termo antecedente, reduzindo sua área de diferentes formas, a depender da conveniência do projetista do sistema (ver Figura 16). Estes conjuntos então seriam agregados numa única área resultante do processo de inferência.

Um passo alternativo foi sugerido por Sugeno no qual são usados singletons para os conjuntos fuzzy de saída [SUGENO, 1985]. Um singleton é um conjunto fuzzy com uma função de pertinência que é única para um determinado valor do universo do discurso e atribui grau de pertinência zero para todos os outros. Esta representação exige menos esforço para a sua representação computacional, o que pode contribuir para processos de inferência mais rápidos sem perda significativa de informação (ver Figura 17).

3.4 Defuzzificação

Um sistema especialista fuzzy pode incorporar não apenas uma, mas diversas regras que descrevem o conhecimento de um domínio, tendo como saída de cada regra um outro

conjunto fuzzy. Um processo que pode ser incorporado como último passo do sistema de inferência é a chamada defuzzificação, que mapeia um conjunto fuzzy de saída para um valor exato, preciso. No caso de sistemas de conhecimento, algumas vezes os resultados dos valores lingüísticos oferecem informações suficientes ao final do processo de inferên- cia; neste caso, não há a necessidade de defuzzificação. Em outros casos, (especialmente quando o sistema fuzzy precisa lidar com aplicações de software clássicas, que não lidam com lógica fuzzy), o passo de defuzzificação é necessário para obter um único elemento do universo. Já no caso de sistemas de controle, uma saída precisa é sempre necessária. Por exemplo, um resultado de inferência definindo que uma válvula tem que ser “um pouco” aberta não é muito útil em sistemas de controle. Apesar de existirem termos lingüísticos definidos na saída, o resultado que o sistema deverá apontar não é um termo, mas um valor numérico. O processo de defuzzificação deverá sempre ser empregado no processo de inferência de sistemas de controle [LEEKWIJCK; KERRE, 1999].

A escolha do método de defuzzificação está diretamente relacionada com o processo de inferência seguido pelo sistema. No caso de se adotar o método de inferência de Mamdani, pode-se utilizar a técnica do centróide sobre o agregado de conjuntos de saída cortadas ou escalas. Esta técnica encontra o ponto onde uma linha vertical dividiria o agre- gado em duas massas iguais, denominado Centro de Gravidade. Ele pode ser expresso da seguinte forma [NEGNEVITSKY, 2005]:

COG = Z b a µA(x)xdx Z b a µA(x)dx (3.1)

Teoricamente, o centro de gravidade é calculado sobre um intervalo contínuo mas, na prática, uma estimativa razoável pode ser obtida através de um conjunto discreto de pontos dentro do intervalo. Neste caso, a fórmula a ser aplicada seria a seguinte:

COG = b X x=a µA(x)x b X x=a µA(x) (3.2)

A Figura 18 ilustra o uso da técnica do centróide no processo de defuzzificação com o uso de elementos discretos do intervalo. Neste exemplo, o centro de gravidade foi obtido da seguinte forma:

3. Sistemas Especialistas Fuzzy 48

Figura 18: Exemplo de defuzzificação usando COG. Extraído de [NEGNEVITSKY, 2005]

COG = (0 + 10 + 20) × 0.1 + (30 + 40 + 50 + 60) × 0.2 + (70 + 80 + 90 + 100) × 0.5

0.1 + 0.1 + 0.1 + 0.2 + 0.2 + 0.2 + 0.2 + 0.3 + 0.3 + 0.3 + 0.3 = 67.4 Para o caso de ser adotado o método de inferência de Sugeno, pode-se utilizar o

método da Média de Pesos (Weighted Average - WA) a partir dos singletons obtidos do processo de inferência. Ele é dado pela seguinte fórmula:

x∗ = n X i=1 miwi n X i=1 mi (3.3)

Na fórmula, mi é cada um dos valores resultantes das regras de produção do sistema

de inferência e que são atribuídos a valores lingüísticos; e cada wi são os valores de cada

conjunto singleton, os denominados “pesos” do método. Por exemplo, suponha que na Figura 17, sejam atribuídos os pesos: k1 = 20, k2 = 50, k3 = 80. Aplicando a média de pesos a este conjunto de saída é então obtido da seguinte forma:

W A = µ(k1) × k1 + µ(k2) × k2 + µ(k3) × k3

µ(k1) + µ(k2) + µ(k3) =

0.1 × 20 + 0.2 × 50 + 0.5 × 80

Sistemas especialistas têm sido usados desde a década de 1970, quando os primeiros sistemas de processamento simbólico foram desenvolvidos e aplicados nas mais dife- rentes áreas de aplicação. Os primeiros sistemas desenvolvidos fizeram uso da teoria dos conjuntos clássica e obtiveram significante sucesso em diversas aplicações desenvolvidas. Entretanto, o uso de conjuntos clássicos no desenvolvimento de sistemas especialistas se deparou com algumas limitações, sobretudo quando, ao tentar modelar o conhecimento obtidos de especialistas, os mesmos se valiam de termos e jargões vagos e imprecisos que dificilmente poderiam ser representados por meio de regras de inferência pautadas na lógica clássica. Conjuntos fuzzy foram concebidos com o intuito de representar este tipo de conhecimento, e desde então sua aplicação tem se estendido por diversas áreas de co- nhecimento, como sistemas de tomada de decisão, sistemas de controle e reconhecimento de padrões [KLIR; YUAN, 1995].

50