Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based...

43
Raciocínio Baseado em Casos Luis Otavio Alvares

Transcript of Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based...

Page 1: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Raciocínio Baseado em Casos

Luis Otavio Alvares

Page 2: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Raciocínio Baseado em CasosCBR (Case-Based Reasoning)

• Paradigma para resolução de problemas

• Ao resolver um novo problema, considera a solução utilizada em problemas similares

• Uma abordagem incremental

Novo Problema

NovaSolução

Solução de ProblemasSimilares

Page 3: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

CBR (Case-Based Reasoning)

“Um sistema de CBR resolve problemas por adaptar soluções que foram utilizadas para resolver problemas anteriores.”

Riesbeck & Schank, 1989

Page 4: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Caso

É uma descrição completa do problema do domínio, com a respectiva solução aplicada, mais uma avaliação da eficácia desta solução

Page 5: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Exemplo de Caso

Problema: <descrição dos sintomas>

Solução: <tratamento aplicado>

Avaliação: <reação do paciente>

• Sistema para diagnóstico de doença

• Exemplo de caso :

Componentesde um caso

Page 6: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Exemplo de Caso

Problema: Windows travado

Solução: Reiniciar a máquina

Avaliação: Sistema voltou a funcionar

• Sistema para diagnóstico de falhas em computador

• Exemplo de caso :

Componentesde um caso

Page 7: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Aplicações

• Diagnóstico

• Previsão

• Avaliação

• Planejamento

• Projeto

• Configuração

Page 8: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Aplicações

• CYRUS (Janet Kolodner, 1983)• PERSUADER (Sycara, 1987)

– soluciona conflitos entre patrões e empregados

• CASEY (Koton, 1989)– diagnostica problemas cardíacos

• JULIA (Hinrichs, 1992)– trabalha com planejamento de refeições

• CHEF (Hommond,1996)– desenvolve novos pratos a partir de outros

Page 9: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Aplicações

• Sistemas de Assistência ao Cliente:– Cisco Systems– Hewlett-Packard– Intel Corp– Microsoft– Visa International– AT&T Corp– Nokia Telecommunications

Page 10: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

NovoCaso

Funcionamento

ConhecimentoGeral

Casosanteriores

CasoResol-vido

CasoRecu-perado

NovoCaso

CasoAvalia-do

0

SoluçãoConfirmada

SoluçãoSugerida

Problema

Page 11: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

NovoCaso

Funcionamento

ConhecimentoGeral

Casosanteriores

CasoResol-vido

CasoRecu-perado

NovoCaso

CasoAvalia-do

0

SoluçãoConfirmada

SoluçãoSugerida

Problema

RECUPERAÇÃO

AV

ALIA

ÇÃO

AD

PTA

ÇÃ

O

Page 12: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Representação e Organização de Casos

• A eficiência do sistema depende da estrutura e conteúdo da coleção de casos

• Problema de decidir :– O que armazenar em um caso (conteúdo)– Como estruturar seu conteúdo (estrutura)– Como organizar e indexar a memória de

casos (organização e índice)

Page 13: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Representação de Casos

• Definir:– qual a estrutura adequada para os casos– quais casos devem ser representados– qual a granularidade da informação

Casos podem ser representados de várias formas, entre elas: frames, objetos, predicados,...

Objetos e tabelas do modelo relacional são as mais utilizadas.

Page 14: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Exemplo de caso

• Nome: Paulo Rocha• Nascimento: 20.05.64• Endereço: Av. Carlos Gomes, POA• Profissão: Analista de sistemas• Salário mensal: R$ 3.000,00• Estado civil: solteiro• Dependentes: 0• Cartão crédito: Visa• Empréstimo solicitado: R$ 20.000,00

• Empréstimo concedido: sim

• cliente pagou corretamente o empréstimo

descrição do caso

solução do caso

avaliação

Page 15: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Organização da Base de Casos

Influencia na recuperação do caso mais similar e nas atualizações da base de casos

– Organização Seqüencial

– Organização Estruturada

Page 16: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Organização Seqüencial

• Casos armazenados seqüencialmente em lista, array ou arquivo

• Ao fazer a recuperação, todos os casos são considerados

• Algoritmo simples para busca e atualização da base

• Ineficiente para bases muito grandes

Page 17: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Organização Estruturada

• Otimiza a busca de casos

• Aumenta a complexidade de tratamento da base

• Ocupa mais espaço na memória de trabalho

• Deve estar bem organizada, ou não chegaremos ao melhor caso

Page 18: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Organização da Base de Casos

JoãoSalário: 3000Estado Civil: SolteiroDependentes: 0

PedroSalário: 10000Estado Civil: CasadoDependentes: 1

JorgeSalário: 6000Estado Civil: CasadoDependentes: 3

AnaSalário: 3100Estado Civil: CasadaDependentes: 2

MariaSalário: 2500Estado Civil: SolteiroDependentes: 0

Page 19: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Organização da Base de Casos

JoãoSalário: 3000Dependentes: 1

PedroSalário: 1000Dependentes: 1

JorgeSalário: 14000Dependentes: 3

MariaSalário: 2500Dependentes: 0

AnaSalário: 3100Dependentes: 2

Estado Civil

Salário

Solteiro Casado

< 5000 >= 5000

PauloEstado Civil: SolteiroSalário: 15000Dependentes: 3

Page 20: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Métodos de indexação

Indexar casos quer dizer definir caminhos (atalhos) que nos levam de fatos a casos.

Isto permite que quando estamos procurando

pelo caso mais similar na base, não tenhamos que percorrer toda a base, mas possamos utilizar este "atalho"

Page 21: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

• As informações de um caso podem ser de dois tipos:– indexadas: utilizadas na recuperação. Ex de

diagnóstico médico: idade, sexo, tipo sangüíneo, peso

– não indexadas: têm um valor de informação, mas não são usadas diretamente na recuperação. Ex: foto, endereço, nome do paciente, ...

Page 22: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Indexação

• Técnicas Manuais– Analisam caso a caso para determinar

características que influenciam variações sobre as conclusões

• Técnicas Automáticas– Quantificam diferenças entre casos e

relacionamentos entre características do problema e soluções adotadas

Page 23: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Métodos de indexação manuais

Manualmente a pessoa tem que analisar casos e dizer "este caso é importante por causa disto, ou daquilo” .

Uma das primeiras etapas na construção de um sistema com índices manualmente identificados é a definição de uma checklist;

Indexar desta forma é praticamente um trabalho de aquisição de conhecimento.

Page 24: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Indexação automática

– aprendizado indutivo: identifica as características que determinam as conclusões. Ex: ID3, C4.5

– indexação baseada em diferença: seleciona índices que diferenciam um caso de outro

Page 25: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Métodos de Recuperação

• Recuperar caso(s) mais similares

• Vários tipos de busca podem ser usadas:– serial, hierárquica, ...

Page 26: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Métodos de Recuperação

• Vizinho mais próximo (Nearest-Neighbour)

Para cada caso Cj da base

•Calcular a similaridade de Cj com o novo caso

•Reter o caso com o maior grau de similaridade

Page 27: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Vizinho mais próximo

n wi . sim(vp

i, vri)

i=1

n wi

i=1

• W: peso da característica• sim: função de similaridade

• vpi e vr

i : valores da característica i

A função de similaridade depende do domínio do problema

Page 28: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Cálculo de Similaridade

Exemplo para tipo numérico:a1 = 40

a2 = 80

sim(a1,a2) = 1 - |a2 - a1|/ (max - min)

Supondo que min = 0 e max = 100 :

sim(40,80) = 1 - |80 - 40|/(100 - 0) = 0,6

Page 29: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Exemplo para strings:

Cores = {Branco, Amarelo, Vermelho, Marrom, Preto}

a1 = Brancoa2 = Amarelo

1, se a1 = a2Opção1: sim(a1,a2) =

0, se a1 a2

Cálculo de Similaridade

Page 30: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Opção2: enumerar distâncias uniformemente

a1 = Branco

a2 = Amarelo

sim(a1,a2) = 1 - |0,25 - 0| / 1 = 0,75

Cálculo de Similaridade

Vermelho PretoMarromAmarelo

0,25 0,5 0,75 1

Branco

0

Page 31: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Opção3: criar matriz de similaridades

a1 = Branco

a2 = Amarelo

sim(a1,a2) = 0,8

Cálculo de Similaridade

Vermelho PretoMarromAmareloBrancoBranco

Vermelho

PretoMarrom

Amarelo1 0,8 0,4 0,15 0

1 0,5 0,2 01 0,7 0,6

1 0,851

Page 32: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Outro método de recuperação

Percorre estrutura de índice (ex: árvore de decisão) e no fim aplica o vizinho mais próximo para poucos registros

Page 33: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Métodos de Adaptação

• É mais simples desenvolver regras de adaptação que um sistema completo baseado em regras

• A maior parte dos sistemas comerciais apresentam o melhor caso e deixam a adaptação para o usuário

Page 34: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Adaptação

• Substituição

• Transformação

Page 35: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Adaptação por substituição

• Instanciação de soluções antigas com valores substituíveis

Comida com proteína

Carne Frutos do Mar Queijo

Gado Frango Peixe Camarão

Só é adequada se existe uma hierarquia ou outra forma de descrever o problema e nos permita substituir um elemento por outro

Page 36: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Transformação

• Funciona através de heurísticas

• Exemplo: lasanha vegetariana– remover ingrediente secundário– substituir item

Page 37: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Ferramentas

• AcknoSoft - KATE • Atlantis Aerospace Corporation - SpotLight• Brightware Inc. - ART*Enterprise • Case Bank Support Systems Inc. - Spotlight• Cognitive Systems Inc. - ReMind (no longer

trading)• Esteem Software Inc. - ESTEEM

• Inductive Solutions Inc. - CasePower

Page 38: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Ferramentas

• Inference Corporation - k-commerce (formerly called CBR3 or CBR Express, CasePoint, Generator & WebServer)

• IET-Intelligent Electronics - TechMate • Intellix - KnowMan • Isoft - ReCall • Sententia Software Inc. - CASE Advisor & Case

Advisor Webserver • ServiceSoft - Knowledge Builder & Web Adviser

Page 39: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Softwares Acadêmicos

• CASPIAN (University of Wales) • CASUEL - A Common Case Representation Language • PROTOS• EProtos extension for numeric values

Page 40: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Comparação com um Banco de Dados tradicional

• BD não contém a descrição dos problemas associados com a solução

• não faz casamento por aproximação

• a base de casos não é livre de ruídos e duplicações

Page 41: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Vantagens do CRB

• Construção de um protótipo antes de obter a completa estruturação do domínio

• Reuso de conhecimento armazenado em bancos de dados e outras fontes

• Diminui a necessidade aquisição de conhecimento

• Aprendizagem automática de novos casos

Page 42: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Desvantagens do CBR

• Dificuldade em obter casos disponíveis e confiáveis

• Não cobrem todo o domínio• Não existem bons algoritmos de adaptação• Exige mais espaço para armazenamento

Page 43: Raciocínio Baseado em Casos Luis Otavio Alvares. Raciocínio Baseado em Casos CBR (Case-Based Reasoning) Paradigma para resolução de problemas Ao resolver.

Referências

Kolodner, Janet. Case-Based Reasoning. San Mateo, California: Morgan Kauffman, 1993.

Aamodt, A. & Plaza, E. Case-Based Reasoning: Foundational Issues, Methodological Variations, and System Approaches. AICom - Artificial Intelligence Communications, IOS Press, Vol.7: 1, pp.39-59, 1994.

Watson, Ian & Marir, Farhi. Case-Based Reasoning: A Review. AI_CBR, University of Salford, Salford, M5 4WT, UK

[http://www.ai-cbr.org/