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
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
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!
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
Conhecimento:
Representação e Uso
 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)
fatos
segue-se
fatos
Mundo
Representação
sentenças
implica
sentenças
6
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...
Sistemas Especialistas
Inteligência Artificial
sistemas que exibem/replicam
comportamentos inteligentes
Sistemas Baseados em Conhecimento
o conhecimento é vital, divisão entre
conhecimento e raciocínio
Sistemas Espec.
o conhecimento é obtido
a partir de um perito
Como reconhecer um Sistema
Baseado em Conhecimento ?
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).
Prós e contras
 DECLARATIVO
 PROCEDURAL
 Fácil adicionar mais
 Mais rápido (já
conhecimento ao
sistema
 Fácil estendê-lo para
novas tarefas

Quais objetos têm a
mesma cor?
 O sistema se explica!
possui o script)
 Tomou o mercado...
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
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
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
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.
























> 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.


















> 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.
Explicando-se…
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, ...
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
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
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
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
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
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
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
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
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
Estrutura de um Sistema
Especialista
Usuário
Módulo
Explanador
Base de
Conhecimento
Motor de
Inferência
Módulo de
Aquisição de
Conhecimento
Interface
Especialista/
Engenheiro de
Conhecimento
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?
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
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
Ciclo de Desenvolvimento de
um Sistema Especialista
Inicialização
Definição do
Problema,
Requisitos
Análise
Fechamento da
Base de
Conhecimento e
dos módulos,
Testes,
Validação pelos
Avaliação
usuários,
Prototipagem
Projeto,
Identificação
Desenvolvidas fontes de
mento
conhecimento
Definição e
Representação do
Conhecimento,
Protótipos, Módulos,
Interface, Testes
Treinamento,
Documentação Operação,
Upgrades,
Avaliação
Implemenperiódica
tação
Manutenção
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
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)
Ciclo de Desenvolvimento de
um Sistema Especialista
Inicialização
Definição do
Problema,
Requisitos
Análise
Fechamento da
Base de
Conhecimento e
dos módulos,
Testes,
Validação pelos
Avaliação
usuários,
Aquisição
de
Projeto,
Identificação Conhecimento,
Desenvolvidas fontes de
mento
conhecimento
o Gargalo
!
Prototipagem
Definição e
Representação do
Conhecimento,
Protótipos, Módulos,
Interface, Testes
Treinamento,
Documentação Operação,
Upgrades,
Avaliação
Implemenperiodica
tação
Manutenção
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
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
Métodos Manuais de
Aquisição
especialista
Engenheiro de codificação
Base de
conhecimento
conhecimento
documentaçã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
Métodos Semi-automáticos de
Aquisição
especialista
Ferramentas de apoio
Base de
conhecimento
Engenheiro de conhecimento
 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)
Métodos Automáticos de
Aquisição
Casos e exemplos
Indução automática
Regras
 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, ...
Comparação entre usar um
especialista e um SE
Variável
Tempo Disponível
Localização Geográfica
Segurança
Perecível
Desempenho
Velocidade
Custos
Aspectos Emotivos
Sujeito a Cansaço
Especialista
Horário de Trabalho
Local
Insubstituível
Sim
Variável
Variável
Altos
Sim
Sim
Sistema Espec.
Sempre
Global
Substituível
Não
Consistente
Constante
Suportá
veis
Não
Não
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
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
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!
KADS
system’s structure
given
(analysis)
constructed
(synthesis)
modified
(transformation)
solution type
states
(predict)
category
(identification)
solution type
sequence of steps
(planning)
structure
(design)
category type
discrepancy
(monitoring)
decision
faulty category
class
(diagnosis)
(assessment)
model type
fault model
correct model
(systematic diagnosis) (heuristic classification or
cover & differentiate)
Ontologia do domínio de áudio
part-of
audio system
is-a
component
audio speaker tape
system system deck
speaker amplifier tape
system
deck
...
left
right
speaker speaker
components’ properties
• deck: function
• deck: power
• amplifier: power
• amplifier: input-signal
• ...
Properties tests
• deck-power-switch
• input-selector
(stop, play, rew, ff, pause)
(on,off)
(on,off)
(deck, turner, CD, VCR, Aux)
(preessed, not pressed)
(deck, turner, ...)
...
Ontologia do domínio de áudio
causes (relation)
• deck: power = on and deck: function = play and
cable-connection: deck amplifier = present
CAUSES
amplifier: input-signal = deck
• amplifier: input-signal = deck and amplifier: input-selector = deck
CAUSES
amplifier: output-signal = deck
indicates
• deck-power-switch = pressed
INDICATES
deck-power = on
• input-selector = X
INDICATES
amplifier: input-signal = X
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
Sistemas Especialistas por Área
de Aplicação
Agricultura
Negócios
Química
Comunicações
Sist. Computacionais
Educação
Electrónica
Engenharia
Ambiente
Geologia
Process. Imagem
Gestão Informação
Direito
Indústria
Matemática
Medicina
Meteorologia
Ap. Militares
Minas
Sistemas Energia
Ciência
Tecnolog. Espaço
Transportes
100
200
Número de aplicações
300
Sistemas Especialistas
por Tipo de Problema
Controlo
Concepção
Diagnóstico
Instrução
Interpretação
Monitorização
Planeamento
Previsão
Prescrição
Selecção
Simulação
10
20
Percentagem de aplicações
30
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
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
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
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.
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
Download

Sistemas Especialistas - Centro de Informática da UFPE