Baixe o app para aproveitar ainda mais
Prévia do material em texto
Sistema de Inferência Fuzzy Prof. Juan Mauricio Villanueva jmauricio@cear.ufpb.br http://app.cear.ufpb.br/~juan/ 1 Introdução Lógica Fuzzy É uma ferramenta que permite capturar informações imprecisas, descritas em linguagem natural e convertê-las para um formato numérico. 2 Informações Imprecisas Formatos Númericos Conjuntos Fuzzy Introdução Lógica Fuzzy Incorpora Conhecimento objetivo Conhecimento subjetivo Conhecimento Objetivo Conhecimento Subjetivo 3 Usado na formulação de problema de engenharia: modelos matemáticos Representa a informação lingüística que não é posivel quantificar usando matemática tradicional Teoria de Conjuntos Fuzzy Conjuntos Fuzzy são funções que mapeiam um valor escalar em um número entre 0 e 1, a qual indica seu grau de pertinência a esse conjunto. 4 PROJETOS Sistema de Inferência Fuzzy 5 O sistema de inferência fuzzy permite resolver problemas cujas variáveis apresentam imprecisões Aplicações: Sistemas de Controle Fuzzy Sistemas de Previsão Sistemas automáticos Detecção de Fraude Sistema de Inferência Fuzzy 6 Sistema de Inferência Fuzzy Entradas Precisas Saídas Precisas 7 Sistema de Inferência Fuzzy : Fuzzyficador Exemplo: Para um sistema, cuja entrada é a Temperatura e com faixa de medição entre 0 a 50 ºC. Pode-se definir intervalos para indicar os níveis de temperatura como baixo, médio e alto Transforma entradas precisas em conjuntos fuzzy Temperatura Baixa Média Alta Conjuntos Crisp 1 Temperatura Baixa Conjuntos Fuzzy 1 Média Alta Fuzzyficador 8 Sistema de Inferência Fuzzy: Base de Regras Regras estabelecidas por especialistas ou base de dados numéricas SE x é muito quente ENTÃO girar y um pouco para a direita Um aspecto importante de Lógica Fuzzy é o mapeamento entrada/saída. Para realizar esta tarefa se requer definir uma lista de regras da forma: IF-THEN A Inferência Fuzzy interpreta os valores do vetor de entrada, em base a um conjunto de regras, assignando um valor ao vetor de saída. 9 Sistema de Inferência Fuzzy: Base de Regras Forma de uma regra Fuzzy Em que: A e B são valores linguísticos definidos por conjuntos Fuzzy em um Universo de Discurso X e Y, respectivamente. Regras IF-THEN 10 if is then isx A y B if is then isx A y B Antecedente Consequente Exemplo de Aplicação Controle de um Guindaste 11 Problema Trasladar uma carga utilizando um guindaste desde um navio até uma seção de armazenamento 12 Variáveis Variáveis de Entrada: Ângulo Distância 13 Variável de Saída: Potência Sistema de Inferência Fuzzy 14 Um motorista pode seguir os seguintes critérios como entrada: A distância pode ser longe, médio ou perto. O ângulo pode negativo, zero oi positivo A saída é definida por: A potência pode ser baixa, média ou alta Uma regra pode ser dada por: Regras IF-THEN 15 if is or is then isdistância longe ângulo negativo potência alta Antecedente Consequente 16 longe negativo Distância (crisp) Ângulo (crisp) If distância is longe or ângulo is negativo then potência = alta Antecedentes Consequente Fuzzyficação de Entradas 17 longe negativo Distância (crisp) Ângulo (crisp) If distancia is longe or ângulo is negativo then potência = alta If 0.0 or 0.7 then potência= alta Antecedentes Consequente Fuzzyficação de Entradas Aplicando-se o operador OR (max) 18 longe negativo Distância (crisp) Ângulo (crisp) If distancia is longe or ângulo is negativo then potência = alta If 0.0 or 0.7 then potência= alta Antecedentes Consequente Fuzzyficação de Entradas Aplicando-se o operador OR (max) 19 Conjuntos Fuzzy longe negativo Distância (crisp) Ângulo (crisp) If distância is longe or ângulo is negativo then potência = alta If 0.0 or 0.7 then potência = alta If 0.7 then potência= alta alta Antecedentes Consequente Fuzzyficação de Entradas Aplicando-se o operador OR (max) Aplicando-se o operador de Implicação (min) Estudo de Caso 20 Entradas: Input 1: distância={longe, médio, perto} (0-10) Input 2: ângulo={negativo, zero, positivo (-45°, 45°) Saída: Output: potência={baixa, média, alta} (0, 25%) Estudo Caso 21 Regras IF-THEN: If distância= longe or ângulo= negativo then potência=alta If distância= média then potência=média If distância= perto or ângulo = positivo then potência=baixa Estudo de Caso 22 Distância (0, 10) Ângulo (-45, 45) Potência (0, 25) REGRA 1: If distância= longe or ângulo= negativo then potência=alta REGRA 2: If distância= média then potência=média REGRA 3: If distância= perto or ângulo = positivo then potência=baixa 23 Distância=3 (crisp) ângulo=30 (crisp) longe If distância= longe or ângulo= negativo then potência=alta negativo alta Fuzzyficação de Entradas Operador Fuzzy OR=max 24 longe If distância= longe or ângulo= negativo then potência=alta If distância= média then potencia=média médio negativo alto médio Fuzzyficação de Entradas Operador Fuzzy OR=max Distância=3 (crisp) Ângulo=30 (crisp) 25 Distância=3 Ângulo = 30 longe If distância= longe or ângulo = negativo then potência =alta If distância = médio then potência=média If distância =perto or ângulo= positivo then potência=baixa médio perto negativo positivo alta média baixa Fuzzyficação de Entradas Operador Fuzzy OR=max 26 Distância=3 Ângulo = 30 longe If distância= longe or ângulo = negativo then potência =alta If distância = médio then potência=média If distância =perto or ângulo= positivo then potência=baixa médio perto negativo positivo alta média baixa Fuzzyficação de Entradas Operador Fuzzy OR=max Agregação das Saídas (max) Defuzzyficação 27 É o processo de converter um conjuntofuzzy a um número real (crisp). O método mais utilizado é baseado no cálculo do centroide da área de um conjunto fuzzy potência= 11.08% Resultado da Deffuzyficação Conjunto fuzzy como resultado do processo de agregação das saídas Outros Métodos Utilizados para a Defuzzyficação: - Máximo - Media dos máximos 28 Defuzzyficação Sistema de Inferencia Fuzzy 29 REGRA 1 REGRA 2 REGRA 3 Distância=3 Ângulo=30 Potência 11.08% Sistema de Inferência Fuzzy Construção de Regras em MATLAB 30 Entradas: Input 1: distância={longe, médio, perto} (0-10) Input 2: ângulo ={negativo, zero, positivo} (-45° 45°) Saída: Output: potência={baixa, media, alta} (0-25%) Regras IF-THEN: If distância= longe or ângulo = negativo then potência=alta 1,1,3,(1),2 If distância= média then potência=média 2,0,2,(1),1 If distância= perto or ângulo = positivo then potência=baixa 3,3,1,(1),2 1 2 3 1 2 1 2 3 3 Construção de Regras em MATLAB 31 Formato de Regras: 1, 1, 3, (1), 2 Primeira coluna: variáveis de entrada (Input 1) e (Input 2) Segunda coluna: variável de saída (Output 1) Terceira coluna: pesos aplicados a cada regra Quarta coluna: (2) OR ou (1) AND 1 2 3 4 Construção de Regras em MATLAB 32 Formato de Regras: %[Distância, Ângulo, Potência, Peso, Conetor Lógico] rule = [1, 1, 3, (1), 2 2, 0, 2, (1), 1 3, 3, 1, (1),2]; fis = addrule(fis,rule); %[Distância Ângulo] Potencia= evalfis([3 30], fis) Sistema de Inferência Fuzzy Prof. Juan Mauricio Villanueva jmauricio@cear.ufpb.br http://app.cear.ufpb.br/~juan/ 33
Compartilhar