Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

56
Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco

Transcript of Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Page 1: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Sistemas Especialistas

Fred FreitasCentro de InformáticaUniversidade Federal de Pernambuco

Page 2: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Roteiro

Definição e Histórico Conceitos Básicos Componentes de um Sistema

Especialista Ciclo de desenvolvimento Problemas e soluções de Aquisição de

Conhecimento Tendências Futuras

Page 3: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Roteiro

Definição e Histórico Conceitos Básicos Componentes de um Sistema

Especialista Ciclo de desenvolvimento Problemas e soluções de Aquisição de

Conhecimento Tendências Futuras

Page 4: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Definição de Sistemas Especialistas

Sistemas Baseados em Conhecimento (SBCs) que: Resolvem problemas complexos usando conhecimento humano profundo sobre

o problema e/ou sobre áreas relacionadas Lembrar que, como todo SBC, os Sistemas

Especialistas só funcionam em domínios restritos!

Produtos de maior sucesso em IA!

Page 5: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Representação de Conhecimento SBCs são estudados e produzidos a

partir da disciplina de Representação de Conhecimento

Disciplina que estuda o uso de símbolos formais para representar conjuntos de proposições

Raciocínio – manipulação mecânica destes símbolos de forma a criar novos símbolos

Page 6: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

6

Raciocínio: processo de construção de novas sentenças a partir de

outras sentenças. Deve-se assegurar que o raciocínio é consistente

(sound)

Conhecimento: Representação e Uso

fatos fatos

sentenças sentenças

Mundo

Representação

segue-se

implica

sem

ântic

a

sem

ântic

a

Page 7: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Hipótese de RC [Brian Smith]

Propriedades de um SBC: Um observador externo pode entender o

que está representado em suas proposições

O sistema se comporta de um dado jeito por causa do que está representado nestas proposições

Vantagem em relação a sistemas tradicionais (procedimentais): pode-se perguntar a um programa sobre o que ele sabe, etc...

Page 8: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Sistemas Especialistas

Inteligência Artificialsistemas que exibem/replicam comportamentos inteligentes

Sistemas Baseados em Conhecimentoo conhecimento é vital, divisão entre conhecimento e raciocínio

Sistemas Espec.o conhecimento é obtido

a partir de um perito

Page 9: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Como reconhecer um Sistema Baseado em Conhecimento ?

Page 10: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Qual deles é um SBC? Por quê?

printColor(snow) :- !, write(“It’s white.”).printColor(grass) :- !, write(“It’s green.”).printColor(sky) :- !, write(“It’s yellow.”).printColor(X) :- write(“Beats me.”).

printColor(X) :-color(X,Y), !, write(“It’s “), write(Y), write(“.”).

color(X, Y) :- madeOf(X, Z), color(Z, Y).madeOf(grass, vegetation).printColor(X) :- write(“Beats me.”).color(snow,white).color(sky,yellow). color(vegetation, green).

Page 11: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Prós e contras

DECLARATIVO Fácil adicionar mais

conhecimento ao sistema

Fácil estendê-lo para novas tarefas Quais objetos têm a

mesma cor? O sistema se explica!

PROCEDURAL Mais rápido (já

possui o script) Tomou o mercado...

Page 12: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Usos e Benefícios

Sistemas Especialistas podem servir para: Resolver problemas Assistentes de decisão de especialistas Treinamento e disseminação do conhecimento

Ex: CATS-1 Benefícios

Preservação de conhecimento Vantagens declarativas

Conhecimento fora do programa Regras podem ser inseridas sem se preocupar com

o fluxo do programa

Page 13: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Histórico

1965 – DENDRAL Ed Feigenbaum – Univ. Stanford – EUA Determinava automaticamente a estrutura

molecular de uma molécula desconhecida através de sua análise espectrográfica

Abordagem algorítmica impossível Resultados melhores que os especialistas (!) Suas descobertas geraram publicações em

revistas especializadas

Page 14: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

MYCIN [Shortliffe 76]

Diagnóstico e terapia de doenças infecciosas Muito consultado por médicos que não eram

especialista em infecções 450 regras com coeficientes de certeza

associados Pioneiro no uso de interface e de módulo

explanador Procurou imitar um médico num consultório

Page 15: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Regra e diálogo do MYCIN

If the infection is primary-bacteremia, and the site of the culture is one of the sterile

sites, and the suspected portal of entry of the

organism is gastrointestinal tract, then there is suggestive evidence (0.7)

that the identity of the organism is bacteroides.

Page 16: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

> What is the patient’s name? John Doe. > Male or Female? Male. > Age? He is 55. > Have you obtained positive cultures indicating general type? Yes. > What type of infection is it? Primary bacteremia. > When did symptoms first appear? May 5. > Let’s call the most recent positive culture C1. From what site was C1

taken? From the blood. > When? May 9. > Let’s call the first significant organism from this culture U1. Do you

know the identity of U1? No. > Is U1 a rod or a coccus or something else? Rod. > What is the gram stain of U1? Gram-negative. > Have there been positive cultures from sites that are not associated

with the infections about which you are seeking advice? No.

Page 17: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

> Diagnosis... > My recommendations will be based on the opinion that the

identity of U1 may be: 1. Psedomonas-aeruginosa 2. Klebsiella-pneumoniae 3. E. coli 4. Bateroides-fragilis 5. Enterobacter 6. Proteus-nommirabilis Some more questions... > On a scale of 0 to 4, where higher numbers indicate greater

severity, how would you rate the patient’s degree of sickness? 3. > Does the patient have a clinically significant allergic reaction to

any antimicrobial agent? No. > How much does the patient weigh? 70 kg. > First recommendation... > My first recommendation is as follow: to cover for items 1,2,3,5

and 6, give gentamycin using a dose of 119 mg (1,7 mg/kg) q8h IV [or IM] for 10 days. Modify dose in renal failure. Also, to cover for item 4, give clindamycin using a dose of 595 mg (8.5 mg/kg) qh6 IV [or IM] for 14 days. If diarrhea or other gastrointestinal symptoms develop, check for pseudomembranous colitis.

Page 18: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Explicando-se…

Page 19: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Histórico

Anos 60 -70: SEs orientados a tarefas exclusivamente Regras e heurísticas, sem descrições de

domínio Anos 70-80: SEs orientados a domínios

PROSPECTOR [Hart et al 78]: Prospecção mineral Redes semânticas, classes, subclasses,

instâncias... Aceitação comercial: CATS-1, XCON, ...

Page 20: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

CATS-1

Problema da General Electric: Aposentadoria de David Smith: engenheiro especialista

em falhas de motores elétrico-diesel de locomotivas Solução convencional

Treinamento de engenheiros novatos 1980: Construção de CATS-1 (DELTA)

Meses de entrevista, 3 anos p/ primeiro protótipo Permite diagnóstico em poucos minutos Existe um em cada oficina Dá treinamento, é amigável e explica decisões

Page 21: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Exemplo de SE: XCON (1978) Domínio do conhecimento: Configuração

de computadores de VAX, a partir de especificações dos clientes.

Entrada: Características necessãrias ao sistema computatorizado.

Saída: Especificação do sistema computatorizado.

A DEC tentou escrever um programa convencional para fazer este tarefa, sem nenhum sucesso

McDermott foi então convidado escrever um sistema espeiclista

Page 22: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Sucesso do XCON

Até 1986, o XCON tinha processado 80.000 orçamentos, com precisdão de 95-98% conseguida Lucro para a DEC: $25M / ano

O sucesso foi tão grande que a DEC fez uma família de SEs XSEL – suporte à pré-venda e venda XSITE – planos par ao projeto físico

Page 23: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Exemplo de regra no XCON

IF the most current active context is distributing massbus devices

& there is a single port disk drive that has not been assigned to a massbus

& there are no unassigned dual port disk drives& the number of devices that each massbus should

support is known& there is a massbus that has been assigned at least

one disk drive and that should support additional disk drives

& the type of cable needed to connect the disk drive to the previous device on the disk drive is known

THEN assign the disk drive to the massbus

Page 24: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Roteiro

Definição e Histórico Conceitos Básicos Componentes de um Sistema

Especialista Ciclo de desenvolvimento Problemas e soluções de Aquisição de

Conhecimento Tendências Futuras

Page 25: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Expertise

Conhecimento específico sobre a tarefa modelada e seu domínio: Fatos e teorias sobre o domínio

Frames, redes semânticas,... Regras boas e rápidas e procedimentos gerais,

advindas da experiência Heurísticas para situações específicas Estratégias globais

Page 26: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Especialista

Detentor do conhecimento sobre a área e sobre a tarefa específica. Sabe: Reconhecer e formular o problema em sua

verdadeira extensão Explicar a solução (às vezes) Quando quebrar regras Relevância dos fatos

Page 27: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Engenheiro de Conhecimento

Ajuda a transferir a expertise para o Sistema Especialista. Tarefas: Aquisição do conhecimento Representação Documentação

Principalmente para o módulo explanador

Page 28: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Roteiro

Definição e Histórico Conceitos Básicos Componentes de um Sistema

Especialista Ciclo de desenvolvimento Problemas e soluções de Aquisição de

Conhecimento Tendências Futuras

Page 29: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Estrutura de um Sistema Especialista

Base deConhecimento

Módulo Explanador

Motor de Inferência

Módulo de Aquisição de Conhecimento

Interface

Especialista/Engenheiro deConhecimento

Usuário

Page 30: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Componentes Interface:

Linguagem natural ou menus Pode fazer perguntas ao usuário Deve permitir ao usuário descrever o

problema Pode permitir ao especialista ou

engenheiro de conhecimento inserir conhecimento

Módulo de Explanação. Responde a: Como chegou a uma dada conclusão? Porque rejeitou uma dada alternativa? Qual o plano para achar uma solução? Porque fez uma pergunta específica?

Page 31: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Funcionamento típico

O especialista e o engenheiro especificam conhecimento, que é armazenado na memória permanente (regras, frames,...) do motor de inferência

Usuário entra com descrição do problema, normalmente por um template da interface

O motor de inferência aplica o conhecimento permanente ao problema e vai deduzindo fatos novos na memória volátil, até chegar a uma solução do problema

Page 32: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Roteiro

Definição e Histórico Conceitos Básicos Componentes de um Sistema

Especialista Ciclo de desenvolvimento Problemas e soluções de Aquisição de

Conhecimento Tendências Futuras

Page 33: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Ciclo de Desenvolvimento de um Sistema Especialista

Inicialização

Análise

Prototipagem

Desenvolvi-mento

Implemen-tação

Manutenção

Definição doProblema,Requisitos

Projeto,Identificação das fontes de conhecimento

Definição eRepresentação doConhecimento,Protótipos, Módulos, Interface, Testes

Fechamento daBase deConhecimento e dos módulos,Testes,Avaliação

Validação pelosusuários,Treinamento,Documentação Operação,

Upgrades,Avaliaçãoperiódica

Page 34: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Roteiro

Definição e Histórico Conceitos Básicos Componentes de um Sistema

Especialista Ciclo de desenvolvimento Problemas e soluções de Aquisição de

Conhecimento Tendências Futuras

Page 35: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Aquisição de Conhecimento De que conhecimento precisa um SE?

Conhecimento, principalmente, do especialista Conhecimento sobre a tarefa Ver que conceitos e relações são relevantes! Heurísticas/ regras para a solução

Livros e documentos sobre o problema e sua área Ontologia do domínio

Conceitos, instâncias, relações, restrições Conhecimento geral (às vezes necessário)

Page 36: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Ciclo de Desenvolvimento de um Sistema Especialista

Inicialização

Análise

Prototipagem

Desenvolvi-mento

Implemen-tação

Manutenção

Definição doProblema,Requisitos

Projeto,Identificação das fontes de conhecimento

Definição eRepresentação doConhecimento,Protótipos, Módulos, Interface, Testes

Fechamento daBase deConhecimento e dos módulos,Testes,Avaliação

Validação pelosusuários,Treinamento,Documentação Operação,

Upgrades,Avaliaçãoperiodica

Aquisição deConhecimento,

o Gargalo!

Page 37: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Problemas na aquisição

Problemas inerentes ao problema que se deseja resolver: Dificuldade de enumeração de todos os casos Terminologia difícil do domínio (ex: medicina)

Problemas com o especialista Às vezes, o especialista não sabe porque toma

determinadas decisões Muitas informações implícitas nas decisões do

especialista, e ele não consegue expressá-las Separar o joio do trigo

Conhecimento relevante x irrelevante O especialista não quer colaborar

Page 38: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Soluções para os Problemas de Aquisição Métodos de aquisição

Manuais Semi-automáticos Automáticos

Sistemas Especialistas de 2ª. geração

Page 39: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Métodos Manuais de Aquisição

Entrevistas Desestruturada Estruturada: agendas, formulários, casos, etc

Rastreamento cognitivo Gravações de descrições detalhadas do especialista

Engenheiro faz regras e valida com o especialista

especialista

Base de conhecimento

Engenheiro de conhecimento

documentação

codificação

explicitação

Page 40: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Métodos Semi-automáticos de Aquisição

Ferramentas para o engenheiro Editores, ambientes integrados (ex: Protégé),

ferramentas visuais Ferramentas para o especialista

Análise de grades de características (repertory grid analysis)

especialista Ferramentas de apoio Base de conhecimento

Engenheiro de conhecimento

Page 41: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Métodos Automáticos de Aquisição

Técnicas de Aprendizado Automático É preciso gerar conhecimento explícito, muitas

vezes em forma de regras! Por isso... Técnicas simbólicas de aprendizado

Árvores de Decisão Espaço de Versões, ...

Casos e exemplos Indução automática Regras

Page 42: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Comparação entre usar um especialista e um SE

Variável Especialista Sistema Espec. Tempo Disponível Horário de Trabalho Sempre Localização Geográfica Local Global Segurança Insubstituível Substituível Perecível Sim Não Desempenho Variável Consistente Velocidade Variável Constante Custos Altos Suportáveis Aspectos Emotivos Sim Não Sujeito a Cansaço Sim Não

Page 43: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Sistemas Especialistas –2ª. Geração Objetivo: Acelerar a construção de SEs

Reuso é imperativo: BCs são a parte mais cara de um SBC

Melhorias no processo de modelagem do conhecimento

Tendência a que o próprio especialista edite o conhecimento

Protégé [Gennari et al 2003] Integração entre aprendizado e inferência

simbólica para acelerar a aquisição Sistemas híbridos

Page 44: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Como reusar conhecimento??

Reuso de conhecimento sobre as tarefas: Metodologia CommonKADS [Schreber et al 94] Reusa modelos de problemas e sub-problemas Propõe especificar as tarefas em função da

decomposição destas em sub-tarefas, e assim recursivamente

Reuso do conhecimento sobre o domínio Ontologias

Page 45: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Reuso de Conhecimento sobre Tarefas: CommonKADS

Meta-modelos prontos para determinados tipos de tarefa: Diagnóstico, Monitoração, etc

Não entrou muito em uso: Muito abstrato Necessita de muitas especificações

Mas agora os metamodeos voltaram à moda!

Page 46: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

system’s structure

given(analysis)

modified(transformation)

constructed(synthesis)

solution type

sequence of steps(planning)

structure(design)

solution type

states(predict)

category(identification)

category type

discrepancy(monitoring)

faulty category(diagnosis)

decisionclass

(assessment)model type

correct model(systematic diagnosis)

fault model(heuristic classification or

cover & differentiate)

KADS

Page 47: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

is-acomponent

audiosystem

tapedeck

speakersystem

...

Ontologia do domínio de áudio

components’ properties• deck: function (stop, play, rew, ff, pause)• deck: power (on,off)• amplifier: power (on,off)• amplifier: input-signal (deck, turner, CD, VCR, Aux)• ...

Properties tests• deck-power-switch (preessed, not pressed)• input-selector (deck, turner, ...)

audio system

amplifier tapedeck

speakersystem

...

leftspeaker

rightspeaker

part-of

Page 48: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Ontologia do domínio de áudio

causes (relation)• deck: power = on and deck: function = play and

cable-connection: deck amplifier = presentCAUSESamplifier: input-signal = deck

• amplifier: input-signal = deck and amplifier: input-selector = deckCAUSESamplifier: output-signal = deck

indicates• deck-power-switch = pressed

INDICATESdeck-power = on

• input-selector = XINDICATES amplifier: input-signal = X

Page 49: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Roteiro

Definição e Histórico Conceitos Básicos Componentes de um Sistema

Especialista Ciclo de desenvolvimento Problemas e soluções de Aquisição de

Conhecimento Tendências Futuras

Page 50: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Sistemas Especialistas por Área de Aplicação

100 300200

Agricultura

Negócios

Química

Comunicações

Sist. Computacionais

Educação

Electrónica

Ambiente

Engenharia

Gestão Informação

Process. ImagemGeologia

Matemática

Indústria

Direito

Minas

Ap. Militares

Meteorologia

Medicina

Transportes

Tecnolog. Espaço

Ciência

Sistemas Energia

Número de aplicações

Page 51: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Sistemas Especialistas por Tipo de Problema

Controlo

Concepção

Diagnóstico

Instrução

Interpretação

Monitorização

Planeamento

Prescrição

Previsão

Simulação

Selecção

10 3020Percentagem de aplicações

Page 52: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Tendências em Sistemas Especialistas Integração de SEs numa empresa

Sistemas de Gestão de Conhecimento Memória organizacional

Expressão sendo substituída Agentes inteligentes...

Uso cada vez maior de ontologias Web Semântica

Sistemas híbridos

Page 53: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Resumo: Para fixar

Sistemas Especialistas são SBCs que resolvem problemas complexos, de difícil solução algorítmica

Componentes de um SE: Interface, Módulo Explanador, Motor de Inferência e Base de Conhecimento

Aquisição de Conhecimento é o maior problema dos SEs, por causa das dificuldades de obter o conhecimento do especialista Soluções: Ferramentas de Aquisição e Reuso de

Conhecimento

Page 54: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Bibliografia Básica

Turban, E., Aronson, J. Decision Support Systems and Intelligent Systems, Prentice Hall, 2000

Turban, E. Expert Systems and Applied Artificial Intelligence, MacMillan Publishing Company, 1992

Giarratano, J., Riley, G. Expert Systems: Principles and Programming, Course Technology, 1998

Page 55: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Bibliografia Adicional

Hart, P.E. Duda, R.O. and Einaudi., M.T. Prospector - a computer-based consultation system for mineral exploration. Mathematical Geology, 10(5), 1978

Shortliffe E.H. Computer-Based Medical Consultations : MYCIN. American Elsevier, New York, 1976.

Gennari, J., Musen, M., Fergerson, R., Grosso, W., Crubézy, M., Eriksson, H., Noy, N., Tu, S.. The evolution of Protégé’: an environment for knowledge-based systems development. http://smi.stanford.edu/pubs/SMI_Abstracts/SMI-2002-0943.html. 2003.

Page 56: Sistemas Especialistas Fred Freitas Centro de Informática Universidade Federal de Pernambuco.

Bibliografia Adicional

Schreiber, A., Wielinga, B., de Hoog, R., Akkermans, H., van de Velde, W. CommonKADS: A Comprehensive Methodology for KBS Development. IEEE Expert, Dezembro/1994

Freitas, F. Ontologias e a Web Semântica, Anais da III Jornada de Mini-Cursos de Inteligência Congresso da Sociedade Brasileira de Computação, Campinas. Artificial. p. 1-52. Campinas, Brasil. 2003