aplicações. sumário aplicações: bancos de dados fuzzy. aplicações: bancos de dados fuzzy....
TRANSCRIPT
AplicaçõesAplicações
SumárioSumário
Aplicações: Bancos de Dados Fuzzy.Aplicações: Bancos de Dados Fuzzy. Modelo de SimilaridadeModelo de Similaridade Modelo de PossibilidadeModelo de Possibilidade Vários tipos de Fuzzy SQLVários tipos de Fuzzy SQL BD Dedutivo Baseado em Regras Fuzzy.BD Dedutivo Baseado em Regras Fuzzy.
Uso de Funções de Agregação na Uso de Funções de Agregação na Avaliação de Qualidade.Avaliação de Qualidade.
Medindo o Consenso de um Grupo.Medindo o Consenso de um Grupo.
Tomada de DecisõesTomada de Decisões
Como agregar um avaliação de um Como agregar um avaliação de um objeto de acordo com vários elemento objeto de acordo com vários elemento em uma avaliação globalem uma avaliação global
Como ordenar opções a partir de Como ordenar opções a partir de comparações par a parcomparações par a par
Como calcular a opinião de consenso Como calcular a opinião de consenso entre especialistasentre especialistas
Como agregar diferentes tipos de Como agregar diferentes tipos de avaliaçõesavaliações
Agregando QuesitosAgregando Quesitos
Partimos da avaliação fuzzy de vários Partimos da avaliação fuzzy de vários quesitos (a matriz R)quesitos (a matriz R)
Damos a cada quesito um peso (w)Damos a cada quesito um peso (w) Calculamos (wCalculamos (wR), a avaliação R), a avaliação
agregadaagregada
Agregando QuesitosAgregando Quesitos
PESOS EXC SUP ADQ INFMIPS 0,4 0,1 0,3 0,4 0,2CUSTO 0,3 0 0,1 0,8 0,1DISPON 0,2 0,1 0,6 0,2 0,1SOFTW 0,1 0,1 0,4 0,3 0,2
GLOBAL 0,07 0,31 0,47 0,15
Comparando ParesComparando Pares
Algumas vezes é mais fácil comparar Algumas vezes é mais fácil comparar algo par a par, mas a>b e b>c não algo par a par, mas a>b e b>c não implica em a>c!implica em a>c!
Como obter uma comparação global Como obter uma comparação global (ranking)?(ranking)?
Seja fSeja fyy(x) a função de pertinência de (x) a função de pertinência de
x em respeito a yx em respeito a y
Comparando ParesComparando Pares
Seja f(x | y) = fSeja f(x | y) = fyy(x)/max(f(x)/max(fyy(x),f(x),fxx(y)) , (y)) , f(X | y) é a função de pertinência de f(X | y) é a função de pertinência de escolher x em vez de yescolher x em vez de y
Baseado na comparação par a par Baseado na comparação par a par construímos uma matriz C (de construímos uma matriz C (de comparação), calculamos o mínimo comparação), calculamos o mínimo de cada linhade cada linha
Obtendo Ordenação GlobalObtendo Ordenação Global
F linha(coluna)
Não simétrico
C
A B C D MINA 1,00 1,00 1,00 1,00 1,00B 0,71 1,00 0,38 0,11 0,11C 0,60 1,00 1,00 0,43 0,43D 0,67 1,00 1,00 1,00 0,67
A B C DA 1 0,5 0,3 0,2B 0,7 1 0,8 0,9C 0,5 0,3 1 0,7D 0,3 0,1 0,3 1
ConsensoConsenso
Como obter um consenso de vários Como obter um consenso de vários especialistas em um universo de alternativas especialistas em um universo de alternativas possíveispossíveis
Seja rSeja rijij a a preferência da alternativa xi em a a preferência da alternativa xi em relação a alternativa xrelação a alternativa xjj rrijij=1 significa que x=1 significa que xii e definitivamente melhor que e definitivamente melhor que
xxjj
r é recíproca (rr é recíproca (rijij+r+rjiji=1, r=1, riiii=0)=0)
Podemos então desenvolver uma medida do Podemos então desenvolver uma medida do consenso sobre a matriz R criada pelo grupoconsenso sobre a matriz R criada pelo grupo
ConsensoConsenso
Tipo 1: existe uma alternativa clara e Tipo 1: existe uma alternativa clara e as alternativas restantes estão as alternativas restantes estão indecisasindecisas
0 0 0,5 0,51 0 1 1
0,5 0 0 0,50,5 0 0,5 0
Preferência da linha sobre a coluna
ConsensoConsenso
Tipo 2: existe uma alternativa clara e Tipo 2: existe uma alternativa clara e as outras alternativas estão definidasas outras alternativas estão definidas
0 0 1 01 0 1 10 0 0 11 0 0 0
ConsensoConsenso
Tipo Fuzzy: existe uma alternativa Tipo Fuzzy: existe uma alternativa clara, mas as outras alternativas clara, mas as outras alternativas estão confusasestão confusas
0 0 0,5 0,61 0 1 1
0,5 0 0 0,30,4 0 0,7 0
ConsensoConsenso
Preferência da linha sobre a coluna
Difusão média F = 2*tr(R2)/n(n-1) = 0,317 Certeza média C(R) = 2*tr(RRT)/n(n-1) = 0,683Distância do consenso m(R) = 1-(2C(R)-1)1/2= 0,395
1 = preferência clara0,5 = indecisão total
m(Tipo 1) = 1-(2/n)1/2 m(Tipo 2)=0 m(não decidido)=1A distância entre Tipo 1 e Tipo 2 aumenta com o número de opçõesA maioria dos grupos evolui para decisões de consenso fuzzy
A B C DA 0,0 1,0 0,5 0,2B 0,0 0,0 0,3 0,9C 0,5 0,7 0,0 0,6D 0,8 0,1 0,4 0,0
Avaliação MistaAvaliação Mista
Como unificar uma avaliação numérica Como unificar uma avaliação numérica com uma avaliação subjetiva?com uma avaliação subjetiva? Seleção de candidatos para um curso de Seleção de candidatos para um curso de
mestradomestrado nota da prova, únicanota da prova, única avaliação subjetiva do currículo, por avaliação subjetiva do currículo, por
professorprofessor avaliação subjetiva da carta, por professoravaliação subjetiva da carta, por professor avaliação subjetiva da entrevista, por avaliação subjetiva da entrevista, por
professorprofessor
Avaliação MistaAvaliação Mista
Definir o peso relativo das avaliaçõesDefinir o peso relativo das avaliações Definir um conjunto de termos fuzzy para as Definir um conjunto de termos fuzzy para as
avaliações subjetivasavaliações subjetivas Modelar o mesmo conjunto como termos na Modelar o mesmo conjunto como termos na
variável lingüística “nota da prova”variável lingüística “nota da prova” Para os quesitos com múltiplas opiniões, calcular Para os quesitos com múltiplas opiniões, calcular
a opinião de consenso, baseado em matrizes a opinião de consenso, baseado em matrizes agregaçãoagregação
Calcular o resultado final, baseado na agregação Calcular o resultado final, baseado na agregação (com pesos) das notas recebidas(com pesos) das notas recebidas
Defuzzificar Defuzzificar e gerar um rankinge gerar um ranking
Como EscolherComo Escolher
Definir ObjetivosDefinir Objetivos Definir RestriçõesDefinir Restrições Definir AlternativasDefinir Alternativas Definir Importância dos Objetivos Definir Importância dos Objetivos
Avaliar Avaliar Definir Importância das RestriçõesDefinir Importância das Restrições Avaliar Alternativa segundo Objetivos Avaliar Alternativa segundo Objetivos
e Restriçõese Restrições Calcular a Resposta fuzzy Calcular a Resposta fuzzy
Decisões fuzzyDecisões fuzzy
Podemos utilizar sistemas fuzzy para Podemos utilizar sistemas fuzzy para auxílio a decisãoauxílio a decisão
Suponha um problema de escolha Suponha um problema de escolha Escolher a Universidade a cursarEscolher a Universidade a cursar Escolher o melhor terreno para comprarEscolher o melhor terreno para comprar
ObjetivosObjetivos
PreçoPreço Vista do LocalVista do Local Serviços DisponíveisServiços Disponíveis TrânsitoTrânsito
RestriçõesRestrições
SegurançaSegurança Ausência da LítigioAusência da Lítigio Ausência de PoluiçãoAusência de Poluição Nível de RuídoNível de Ruído
AlternativasAlternativas
Terreno na PraiaTerreno na Praia Terreno na CidadeTerreno na Cidade Terreno na MontanhaTerreno na Montanha Terreno na EstradaTerreno na Estrada
ImportânciaImportância
AvaliandoAvaliando
Calculando a ImportânciaCalculando a Importância
Níveis de ImportânciaNíveis de Importância decididos na tabela, variam de 1 a 9decididos na tabela, variam de 1 a 9
Matriz de ImportânciaMatriz de Importância uma técnica de balanceamentouma técnica de balanceamento
Fatores de Importância (guardar)Fatores de Importância (guardar) Estamos definindo um peso para Estamos definindo um peso para
cada fatorcada fator
Cálculos de ImportânciaCálculos de Importância
Cálculos de SatisfaçãoCálculos de Satisfação
DecisãoDecisão
DecisãoDecisão
Bancos de Dados fuzzyBancos de Dados fuzzy
Modelos de similaridadeModelos de similaridade se baseiam em tabelas de similaridade se baseiam em tabelas de similaridade
entre os valores possíveis de um entre os valores possíveis de um domíniodomínio
Modelos de possibilidadeModelos de possibilidade se baseiam no uso de distribuições de se baseiam no uso de distribuições de
possibilidade para os termos que são possibilidade para os termos que são valores de um domíniovalores de um domínio
Modelos de similaridadeModelos de similaridade
Servem para avaliar a incerteza de Servem para avaliar a incerteza de um termo em relação a outroum termo em relação a outro poluição pode ser nenhuma, baixa, poluição pode ser nenhuma, baixa,
razoável, alta, excessiva e graverazoável, alta, excessiva e grave porém, quando dizemos grave, também porém, quando dizemos grave, também
estamos dizendo 80% excessivaestamos dizendo 80% excessiva na hora de fazer buscas, temos que na hora de fazer buscas, temos que
levar isso em contalevar isso em conta
Modelos de SimilaridadeModelos de Similaridade
LugarLugar PoluiçãoPoluição
AA baixabaixa
BB altaalta
CC gravegrave
DD razoávelrazoável
EE baixabaixa
FF excessivaexcessiva
E uma consultaE uma consulta
Que lugares tem poluição grave?Que lugares tem poluição grave? Em um sistema tradicional:Em um sistema tradicional:
responderíamos apenas “C”responderíamos apenas “C” Em um sistema de banco de dados Em um sistema de banco de dados
fuzzy, temos que calcular se os fuzzy, temos que calcular se os outros podem significar “grave”outros podem significar “grave”
Em BDF de similaridade, usamos Em BDF de similaridade, usamos uma tabela (transitiva)uma tabela (transitiva)
Tabela de SimilaridadeTabela de Similaridade
nenhuma baixo razoável excessiva alta gravenenhuma 1 0,9 0 0 0 0
baixo 0,9 1 0,8 0,5 0,1 0razoável 0 0,8 1 0,8 0,5 0
excessiva 0 0,5 0,8 1 0,9 0,8alta 0 0,1 0,5 0,9 1 0,9
grave 0 0 0 0,8 0,9 1
Resposta?Resposta?
Excessiva = 0.8 graveExcessiva = 0.8 grave Alta = 0.9 graveAlta = 0.9 grave Logo a resposta é: F,B,CLogo a resposta é: F,B,C Ou ainda F(0.8), B(0.9), C(1.0)Ou ainda F(0.8), B(0.9), C(1.0)
Bancos de Dados fuzzyBancos de Dados fuzzy
Podemos ter dois tiposPodemos ter dois tipos dados nítidos, consultas fuzzydados nítidos, consultas fuzzy dados fuzzydados fuzzy
Vejamos um exemplo de uso de Vejamos um exemplo de uso de bancos de dados com consultas fuzzy bancos de dados com consultas fuzzy e capacidade de utilizar regras fuzzye capacidade de utilizar regras fuzzy
Modos de fazer consultaModos de fazer consulta
Posto de Saúde
Dados porLocalidade
EP302
BuscaPassiva
Centralizaçãodos dados
Casa
EP305
Busca Ativa
CidadeBusca Ativa
CasaBusca Ativa
FazendaBusca Ativa
EP311
Análise do Dados
Providências deControle
Diagrama Conceitual
Distritos
DataLocalidades
MunicipiosEP-311
LocalidadesLocalidadesEP-302 /EP-305
DataLocalidades
MunicipiosEP-311
LocalidadesLocalidadesEP-302 /EP-305
DataLocalidades
Municipio 3EP-311
LocalidadesLocalidadesEP-302 /EP-305
Localidades
Municipio nEP-311
LocalidadesLocalidadesEP-302 /EP-305
. . .
Colunas da TabelaColunas da Tabela LAMEXALAMEXA - Número de indivíduos examinados. A sigla refere-se - Número de indivíduos examinados. A sigla refere-se
a número de lâminas examinadas.a número de lâminas examinadas.
LAMPOSFLAMPOSF - Número de indivíduos que acusaram somente o - Número de indivíduos que acusaram somente o Plasmodium falciparumPlasmodium falciparum no sangue. no sangue.
LAMPOSV LAMPOSV - Número de indivíduos que acusaram somente o - Número de indivíduos que acusaram somente o Plasmodium vivaxPlasmodium vivax no sangue. no sangue.
LAMPOSM LAMPOSM - Número de indivíduos que acusaram somente o - Número de indivíduos que acusaram somente o Plasmodium malariaePlasmodium malariae no sangue. no sangue.
LAMPOSFV LAMPOSFV - Número de indivíduos que acusaram o - Número de indivíduos que acusaram o Plasmodium falciparumPlasmodium falciparum e e Plasmodium vivaxPlasmodium vivax no sangue. no sangue.
LAMPOSTOT LAMPOSTOT - Número total de indivíduos que acusaram o - Número total de indivíduos que acusaram o PlasmodiumPlasmodium no sangue. no sangue.
CASEXICASEXI - Número de casas existentes na área de pesquisa. - Número de casas existentes na área de pesquisa.
CASVISCASVIS - Número de casas visitadas na área de controle - Número de casas visitadas na área de controle
Variáveis CriadasVariáveis Criadas
VISITASVISITAS - - Variável criada pelo sistema para Variável criada pelo sistema para controle do aumento ou diminuição de visitas nas controle do aumento ou diminuição de visitas nas diversas áreas.diversas áreas.
RETORNORETORNO - Variável criada para indicar a - Variável criada para indicar a possibilidade de retorno da doença devido a ação possibilidade de retorno da doença devido a ação do do Plasmodium vivaxPlasmodium vivax..
ComandosComandos
Create Table Create Table TocantinsTocantins FROM FROM tab1tab1 SIG; SIG;
Create Table Create Table MapaMapa AS AS mapa.datmapa.dat SIG; SIG;
Create Table Create Table VisitasVisitas AS AS Visitas.datVisitas.dat ARQTEXT;ARQTEXT;
Create Table Create Table EpidemicaEpidemica AS AS epidem.datepidem.dat ARQTEXT;ARQTEXT;
Create Table Create Table Relatorio11 Relatorio11 AS AS Relat11.datRelat11.dat ARQTEXT;ARQTEXT;
Variáveis LingüísticasVariáveis Lingüísticas
Variáveis LingüísticasVariáveis Lingüísticas Descrevem algo que podemos avaliar Descrevem algo que podemos avaliar
(medir) no mundo real(medir) no mundo real idadeidade
Termos LingüisticosTermos Lingüisticos avaliam (ou medem) uma variável avaliam (ou medem) uma variável
linguísticalinguística velho, novovelho, novo
Variáveis LinguísticasVariáveis Linguísticas
ModificadoresModificadores alteram a intensidade de um termo alteram a intensidade de um termo
linguísticolinguístico muito, pouco, algomuito, pouco, algo
Criando Var. LingüísticasCriando Var. Lingüísticas
Create LingVar Integer Create LingVar Integer LaminasExaminadasLaminasExaminadas OVEROVER TocantinsTocantins AS AS LAMEXALAMEXA;;
Create LingVar Integer Create LingVar Integer LamPosFalciparumLamPosFalciparum OVEROVER TocantinsTocantins AS AS LAMPOSFLAMPOSF;;
Create LingVar Integer Create LingVar Integer LamPosVivax LamPosVivax OVEROVER TocantinsTocantins AS AS LAMPOSVLAMPOSV;;
Criando Var. LingüísticasCriando Var. Lingüísticas
Create LingVar Real Create LingVar Real PerFalciparum PerFalciparum OVER OVER TocantinsTocantins FROM FROM LAMPOSF/LAMEXA;LAMPOSF/LAMEXA;
Create LingVar Real Create LingVar Real PerVivax PerVivax OVER OVER TocantinsTocantins FROM FROM LAMPOSV/LAMEXA;LAMPOSV/LAMEXA;
Create LingVar Real Create LingVar Real PerMalariae PerMalariae OVER OVER TocantinsTocantins FROM FROM LAMPOSM/LAMEXA;LAMPOSM/LAMEXA;
Criando Variáveis SoluçãoCriando Variáveis Solução
Create SOLVAR Real Create SOLVAR Real VisitasVisitas DOMAIN DOMAIN 00,,1 1 OVEROVER TocantinsTocantins AS AS VISITASVISITAS;;
Create SOLVAR Real Create SOLVAR Real RetornoRetorno DOMAIN DOMAIN 00,,1 1 OVEROVER TocantinsTocantins AS AS VISITASVISITAS;;
Os Termos LinguísticosOs Termos Linguísticos
Create LingTerm Create LingTerm Baixo Baixo AS AS TRIANGLE(TRIANGLE(0.00.0, , 0.00.0, , 1.01.0););
Create LingTerm Create LingTerm Médio Médio AS AS TRIANGLE(TRIANGLE(0.00.0, , 0.50.5, , 1.01.0););
Create LingTerm Create LingTerm Alto Alto AS AS TRIANGLE(TRIANGLE(0.00.0, , 1.01.0, , 1.01.0););
Alto/Médio/BaixoAlto/Médio/Baixo
0
0,2
0,4
0,6
0,8
1
0 0,2 0,4 0,6 0,8 1
Alto
Médio
Baixo
T.L. para ConclusõesT.L. para Conclusões
Create LingTerm Create LingTerm Permanecer Permanecer AS AS TRIANGLE(TRIANGLE(0.00.0, , 0.00.0, , 1.01.0););
Create LingTerm Create LingTerm Aumentar Aumentar AS AS TRIANGLE(TRIANGLE(0.00.0, , 1.01.0, , 1.01.0););
Create LingTerm Create LingTerm Improvável Improvável AS AS TRIANGLE(TRIANGLE(0.00.0, , 0.00.0, , 1.01.0););
Create LingTerm Create LingTerm Provável Provável AS AS TRIANGLE(TRIANGLE(0.00.0, , 1.01.0, , 1.01.0););
Criando ModificadoresCriando Modificadores
Create hedge Create hedge Muito Muito AS AS concentrator concentrator 3.03.0;;
USE hedge USE hedge Muito Muito IN IN BaixoBaixo;; USE hedge USE hedge Muito Muito IN IN MedioMedio;; USe hedge USe hedge Muito Muito IN IN AltoAlto;;
Usando T.L. em V.L. Usando T.L. em V.L.
USe Lingterm USe Lingterm Baixo Baixo In In LaminasExaminadasLaminasExaminadas;; USe Lingterm USe Lingterm Medio Medio In In LaminasExaminadasLaminasExaminadas ; ; USe Lingterm USe Lingterm Alto Alto In In LaminasExaminadasLaminasExaminadas ; ;
USe Lingterm USe Lingterm BaixoBaixo In In LamPosFalciparumLamPosFalciparum ; ; USe Lingterm USe Lingterm Medio Medio In In LamPosFalciparumLamPosFalciparum ; ; USe Lingterm USe Lingterm Alto Alto In In LamPosFalciparumLamPosFalciparum ; ; ......
Criando RegrasCriando Regras
IF IF PerVisitadasPerVisitadas IS IS Baixo Baixo THEN THEN VisitasVisitas IS IS AumentarAumentar;;
IF IF PerPositivasTotalPerPositivasTotal IS IS BaixoBaixo THEN THEN VisitasVisitas IS IS PermanecerPermanecer;;
Mais RegrasMais Regras
IF IF PerVivaxPerVivax IS IS AltoAlto THEN THEN RetornoRetorno IS IS ProvávelProvável;;
IF IF PerVivaxPerVivax IS IS BaixoBaixo THEN THEN RetornoRetorno IS IS ImprovávelImprovável;;
Fazendo ConsultasFazendo Consultas
SELECT SELECT CasasExistentes, CasasExistentes, PerVisitadas,Visitas PerVisitadas,Visitas FROM FROM TocantinsTocantins TO TO Mapa Mapa WHEREWHERE((((Visitas Visitas IS IS AumentarAumentar)AND )AND ((((CasasExistentes CasasExistentes IS IS MedioMedio)OR )OR CasasExistentes CasasExistentes IS IS AltoAlto))) WITH))) WITH0.30.3;;
Mineração de DadosMineração de Dados
Da mesma forma que criamos regras Da mesma forma que criamos regras ad-hocad-hoc, podemos fazer com que as , podemos fazer com que as regras sejam criadas a partir dos regras sejam criadas a partir dos dadosdados
Podemos misturar regras dadas por Podemos misturar regras dadas por especialistas com regras criadas por especialistas com regras criadas por mineração de dadosmineração de dados
Mapas CognitivosMapas Cognitivos
Redes de PetriRedes de Petri
Redes de PetriRedes de Petri
Petri Nets fuzzysPetri Nets fuzzys
Alocação de RecursosAlocação de Recursos
A.Rec. fuzzyA.Rec. fuzzy
ConclusãoConclusão
Sempre que temos alguma incerteza Sempre que temos alguma incerteza em nossos dados ou em nossas em nossos dados ou em nossas regras, o uso da teoria fuzzy será regras, o uso da teoria fuzzy será uma alternativa de solução atraenteuma alternativa de solução atraente
A Teoria fuzzy fornece uma base A Teoria fuzzy fornece uma base matemática sólida e formal para matemática sólida e formal para processos que anteriormente eram processos que anteriormente eram tratados de forma informaltratados de forma informal
ReferênciasReferências
Ross, Timothy J. Fuzzy Logic with Ross, Timothy J. Fuzzy Logic with Engineering Aplications", McGrawHill, Engineering Aplications", McGrawHill, New York, 1995New York, 1995
Kosko, Bart, "Fuzzy Engineering", Kosko, Bart, "Fuzzy Engineering", Prentice-Hall, Upper Saddle Prentice-Hall, Upper Saddle River,1997.River,1997.
Klir, George J., Yuan, Bo, "Fuzzy Sets Klir, George J., Yuan, Bo, "Fuzzy Sets and Fuzzy Logic" Prentice Hall, Upper and Fuzzy Logic" Prentice Hall, Upper Saddle River, 1995.Saddle River, 1995.
FIMFIM