Inteligência Artificial – CCT310*Sistemas fuzzy Representação do Conhecimento Como agir em meio à incerteza? Tratamento de Incerteza Raciocínio Estatístico Tratamento de Incerteza Necessidade de representar imperfeições da informação, imprecisão, conflito, ignorância parcial, etc Exemplos de informação: − − − − − − − − Perfeita: a aula começa às 8h Imprecisa: a aula começa entre 8h e 9h Incerta: acho que a aula começa às 8h Vaga: a aula começa lá pelas 8h Probabilística: é provável que a aula comece às 8h Possibilista: é possível que a aula comece às 8h Inconsistente: segundo Maria, a aula começa as 8h, porém segundo João ela começa às 9h Incompleta: não sei quando a aula começa, mas usualmente as aulas têm começado às 8h Tratamento de Incerteza Mesmo lidando com informações imperfeitas, ainda é possível tomar decisões razoáveis Existe um modelo formal para tratar cada um dos tipos de informações apresentadas anteriormente − − − − − − Probabilística: teoria de probabilidades; ou teoria da evidência (Dempster-Shafer) Imprecisa/Vaga: teoria dos conjuntos difusos (fuzzy); conjuntos de aproximação (rough sets); ou classes de referência Possibilista: teoria de possibilidades Incerta: teoria de probabilidades; possibilidades; evidência; ou modelos ad hoc Inconsistente: lógicas não clássicas Incompleta: lógicas não monotônicas Tratamento de Incerteza Modelos numéricos mais conhecidos para a representação da informação imperfeita: − − Probabilista Difuso (Fuzzy) . 1].objetiva permitir graduações na pertinência de um elemento a uma dada classe. .Modelo Fuzzy Teoria dos conjuntos fuzzy . Teoria fuzzy − O grau de pertinência passa a ser dado por um valor no intervalo de números reais [0. Teoria dos conjuntos “clássica” − Ou um elemento pertence (1) ou não-pertence (0) a um conjunto. aplicação do raciocínio fuzzy Aplicações industriais Computação inteligente .Teoria dos conjuntos fuzzy Teorias que tratam da imprecisão e da incerteza − − dos conjuntos (não é capaz de tratar o aspecto vago da informação) de probabilidades (inadequada para tratar informações fornecidas por seres humanos) Lotfi Zadeh (1965) . (1978) teoria das possibilidades Lógica fuzzy Mamdani (1974) .teoria dos conjuntos fuzzy. Modelo Fuzzy Regras: Decisões binárias (sim ou não). . Lógica Fuzzy: Framework matemático para lidar com esta incerteza. E se não tivermos certezas? Se condição x Então ação y com confiança z Lógica Fuzzy Exemplo: Regras x Lógica Fuzzy (LF) Regras: Se o objeto é redondo então é uma bola. LF: Se o objeto é muito redondo então é uma bola com grande probabilidade. compreendido entre 0 e 1.Modelo Fuzzy Dado um universo de discurso X. um subconjunto fuzzy A de X é definido por uma função de pertinência que associa a cada elemento x de X o grau μA(x). com o qual x pertence a A μA(x): X [0.1] A(x): X [0.1] . 60m e 1.Modelo Fuzzy Supondo que se deseja modelar o conceito “alto” aplicado a pessoas.60m Já uma pessoa que mede entre 1. − − − Usualmente. uma pessoa que mede mais de 1.75m .75m é alta Não é alta se tiver menos de 1.75m será considerada mais alta quanto mais a altura está próxima de 1. Modelo Fuzzy É possível modelar o conceito “alto” pelo conjunto fuzzy A.6 0. x > 1. 1.60m .75m .75m .5m 1 µ A ( x) = 0 x − 1. x < 1.5m a 2.15 .60m ≤ x ≤ 1. definido no intervalo de 0. o conjunto fuzzy A pode ser representado como .Modelo Fuzzy Graficamente. Conjunto fuzzy .4 Baixo 1 Médio Alto Altura 0 170 180 [Cm] .exemplo Altura de 3 pessoas 1 A: 179cm B: 171cm C: 168cm 0 170 180 [Cm] Baixo Médio Alto Altura A e B pertencem ao conjunto “Médio” e C pertence ao conjunto “Baixo” A pertence ao conjunto “Médio” com grau 0.6 e ao conjunto “Alto” com grau 0. Representação gráfica dos conjuntos fuzzy discretos µA 1 -- -10 0 10 µ A(u) = 0.0 . se módulo(x) > 5 (5 – módulo(x))/5. se módulo(x) <= 5 . 7 1.2.Representação gráfica dos Conjuntos fuzzy contínuos 1 Baixa Alta 0.4 .2 0 1.0 Uma pessoa de 1.5 0.6 1. quanto alta com grau 0.9 2.8 1.5 1.4 1.4 0.77m pode ser considerada tanto baixa com grau 0. Tipos de conjuntos fuzzy Triangular Trapezoidal Exponencial µA 1 A -2 0 2 x . 2} A = 0.5 / − 1 + 0.0 / 0 + 0.0 / 0 + 0.5 -2 -1 0 1 2 x X = {− 2. 0.5.5.25 / 1.1.5 / − 1 + 1. − 1.5 + 0.5 + 1.75 / − 0. − 1.Conjunto triangular Representação finita µA 1 A X = {− 2.5 / 1 -2 -1 0 0.75 / 0. 0.1. 2} A = 0.5. − 1.1.5.5 1 2 . − 0.5 + 0.25 / − 1. 0.5 / 1 + 0.5 µA 1 A 0. − 2.1. − 4.Conjunto trapezoidal X = {− 5.5 / 3 µB 1 B -4 -2 0 2 4 x . 0. 5} B = 0. 3. − 1.5 / − 3 + 1 / − 2 + 1 / − 1 + 1 / 0 + 1 / 1 + 1 / 2 + 0. − 3. 4. 2. 4} A0.5 = {1. 2.3/5 + 0.1/7 + 0.1 = ? .0/1 + 1.6 = ? A0.0/2 + 0.1/8 A0.α-cut (cortes de nível) Representação aproximada de conjuntos fuzzy através de conjuntos “crisp” Aα = {x ∈ X | µ A ( x) ≥ α } Considere o conjunto: A = 1.3/6 + 0.75/3 + 0.5/4 + 0. 3. 25/-1.6 = {1.3/6 + 0.75/3 + 0.5 -2 -1 0 1 2 . 2.5 + 0.75/0. 3} A0.1/8 A0.5/4 + 0.0/0 + 0.5/-1 + 0.0/1 + 1.75/-0.1/7 + 0. 7. 5.25/1. 2.5 + 0. 8} B = 0.5 µA 1 A 0. 3.0/2 + 0.1 = {1. 6.α-cut (cortes de nível) A = 1.5 + 1.5/1 + 0. 4.3/5 + 0. 10} M = {0. 6. 8.011/2 + 0.607/4 + 0. 2. 4.607/6 + 0.011/8} .Representação Representação matricial X = {0. Operações União µ A∪ B ( x ) = µ A ( x ) ∨ µ B ( x ) onde µ A ( x) se µ A ( x) ≥ µ B ( x) µ A ( x) ∨ µ B ( x) = µ B ( x) se µ A ( x) < µ B ( x) logo 1 Y-Axis A B 1 Y-Axis A µ A ( x) ∨ µ B ( x) = max{µ A ( x). µ B ( x)} B A B A∪B . µ B ( x)} B 0 0 A B A∩B .Operações Intersecção µ A∩ B ( x ) = µ A ( x ) ∧ µ B ( x ) onde µ A ( x) se µ A ( x) ≤ µ B ( x) µ A ( x) ∧ µ B ( x) = µ B ( x) se µ A ( x) > µ B ( x) logo 1 Y-Axis A B 1 Y-Axis A µ A ( x) ∧ µ B ( x) = min{µ A ( x). Vantagens da lógica fuzzy Fácil entendimento Flexibilidade Trabalha com dados imprecisos Experiência do especialista geram regras Linguagem natural . Sem fronteiras bem definidas . Fuzzy: No conjunto das pessoas..Revisando.. o subconjunto das pessoas altas. o subconjunto dos números primos. Conjuntos fuzzy − Quais são os dias do fim de semana? − − Discreto: No conjunto dos números naturais. . Valores de respostas: entre 0 e 1 Funções de pertinência − Tipos de funções Operações: min e max .Revisando.. Exercícios 1) Considere o conjunto fuzzy A = 1. Encontre todos seus αcuts. 3. 2.0/1 + 0. 4. 2) Dado o conjunto fuzzy A com a seguinte função de pertinência: x − 5 se 5 ≤ x ≤ 6 A( x) = − x + 7 se 6 < x ≤ 7 0 senão a) Esboce o gráfico da função. Que tipo ela é? b) Qual expressão lingüística pode descrita a partir de A? .8/2 + 0.5/3 + 0.1/4 definido no universo X = {1. 5}. 4) Encontre a intersecção e a união de A e B e expresse as operações utilizando os operadores min e max.3) e B(x. 2.Exercícios 3) Considere dois conjuntos fuzzy representados pelas seguintes funções de pertinência triangulares A(x. . 2. 1. 2 . Sistemas fuzzy .fases Entradas do sistema Saídas do sistema Fuzzificação Funções de pertinência Conjunto de regras Defuzzificação Níveis de pertinência Avaliação das regras Níveis de saída . baseada nos valores mapeados em funções de pertinência de saída e em função das regras que foram disparadas. Processamento As regras de um conjunto de regras (pré-definidas) são avaliadas verificando quais são aplicáveis e Quão fortemente cada regra deve ser disparada dependendo de como foi ativada cada função de pertinência. Saída Defuzzificação: calcula a saída.fases Estágio de entrada Fuzzificação: mapeia cada entrada de dados ao sistema em uma ou mais funções de pertinência.Sistemas fuzzy . . Sistemas fuzzy Conjunto de regras se-então + coleção de fatos => novas informações Fato: X é A’ Regra: “Se X é A então Y é B” onde A. A’ e B são conjuntos fuzzy Como obter “Y é B’”??? A inferência na lógica fuzzy é obtida através da manipulação numérica das funções de pertinência que representam os conjuntos fuzzy . Sistemas fuzzy Regras − expressão do conhecimento O sistema é composto de: − − − Mecanismo de inferência Base de conhecimento Interfaces de entrada e saída . Sistemas fuzzy Codificação (fuzzificação): transforma uma entrada precisa em conjunto fuzzy Decodificação (defuzzificação): produz uma saída precisa SOM – primeiro máximo (smallest of maximun) MOM – média dos máximos (mean of maximun) COA – centro de área (center of area) . uma BC Fuzzy é representada por meio de regras de produção. . Regra de produção Se <antecedente> então <conseqüente> (If <antecedente> then <conseqüente>) Antecedente: composto por um conjunto de condições Conseqüente: composto por um conjunto de ações ou diagnósticos.Modelo Fuzzy Normalmente. Quando as condições da regra são satisfeitas (mesmo que parcialmente) dizemos que a regra é disparada o que determina o processamento do conseqüente da regra pelo sistema de inferência fuzzy. Modelo Fuzzy Exemplo: Controle de velocidade de um ventilador A velocidade depende da temperatura Temperatura Muito frio Frio Quente Muito quente Velocidade Desligado Devagar Média Rápida Corrente relativa do motor 0 15 50 100 . maior complexidade . são definidas 4 funções de pertinência para a entrada Uma quinta (moderada) poderia ser adicionada entre frio e quente O número de funções necessárias depende da exatidão desejada para o sistema Quanto mais curvas. mais sensibilidade.Exemplo Para desenvolver um sistema baseado em lógica fuzzy. deve-se decidir: Como cada variável de entrada e saída será particionada e Associar uma função de pertinência para cada partição No exemplo. Mas qualquer função mais adequada ao caso pode ser utilizada.5 0 -10 0 10 20 30 40 Os formatos mais utilizados para funções de pertinência são os trapezoidais e os triangulares. .Exemplo: Conjuntos fuzzy correspondentes à variável Temperatura Funções de pertinência para a variável de entrada No exemplo tem-se apenas a variável temperatura Muito_frio 1 Frio Quente Muito_quente 0. 5 0 0 20 40 60 80 100 .Exemplo: Conjuntos fuzzy correspondentes à variável Velocidade Funções de pertinência para a variável de saída No exemplo tem-se apenas a variável velocidade zero 1 baixa média alta 0. .Exemplo: regras de produção If (temperatura is muito_frio) then (velocidade is zero) If (temperatura is frio) then (velocidade is baixa) If (temperatura is quente) then (velocidade is média) If (temperatura is muito_quente) then (velocidade is alta) Tanto as regras como os conjuntos fuzzy são especificados de acordo com o conhecimento de um especialista no domínio do sistema. Exemplo: Processo de fuzzificação 20ºC pode ser considerada “fria” ou “quente” 70% fria e 30% quente Muito_frio 1 Frio Quente Muito_quente 0.5 0 -10 0 10 20 30 40 Fuzzificação: transformar variáveis qualitativas. com base nas funções de pertinência. em algum significado para o computador . Exemplo: Regras ativadas If (temperatura is muito_frio) then (velocidade is zero) If (temperatura is frio) then (velocidade is baixa) If (temperatura is quente) then (velocidade is média) If (temperatura is muito_quente) then (velocidade is alta) . Muito_frio 1 temperatura 0.5 baixa média alta 0 0 20 40 60 80 100 .5 Frio Quente Muito_quente 0 -10 0 10 20 30 40 zero 1 velocidade 0. temperatura velocidade -10 20 40 Composição: 0 100 . 1 100 .temperatura velocidade -10 20 40 Composição: 0 44. Isto porque as ações de controle são baseadas em um único nível de inferência. .Modelo Fuzzy A utilização mais significativa da teoria dos conjuntos fuzzy em sistemas baseados em conhecimento são os controladores fuzzy. em que a conseqüência de uma regra não é aplicada como antecedente de outra. Um controlador fuzzy pode ser visto como um sistema especialista simplificado.