Sistema Especialista Aprofundamento
Universidade Estadual do Oeste do Paraná
Curso de Bacharelado em Ciência da Computação http://www.inf.unioeste.br/~claudia/IA2018.html
Roteiro
Retomada dos SBC
Alguns conceitos e objetivos dos SEs
Benefícios
Histórico dos SEs
Funcionamento Geral
Exemplo (Seamed)
Sistemas convencionais e SBCs
SI – Sistemas Inteligentes: exibem
comportamento inteligente
SBC – Sistemas Baseados em
Conhecimento: tornam explícito o domínio do conhecimento, além de separá-lo do sistema
SE – Sistema Especialista: aplicam
conhecimento especializado na resolução de problemas difíceis do mundo real
Quando a solução pode ser SBC
Justificativas para o desenvolvimento de SBC:
A solução do problema (tarefa) é rentável
A falta de especialista afeta a eficiência da tarefa A tarefa precisa ter um domínio bem delimitado Especialistas são necessários em vários locais Existe necessidade e representação de
Tipos de Aplicações de SBCs
Os SBCs tem sido aplicados nos mais variados
ramos.
Algumas classes de tarefas nas quais SBCs são
utilizados:
Interpretação: processamento de imagens, fala… Classificação: diagnóstico de doenças, …
Monitoramento: pacientes, tráfego aéreo… Planejamento: robótica, genética…
Sistemas convencionais e SBCs
SI – Sistemas Inteligentes: exibem
comportamento inteligente
SBC – Sistemas Baseados em
Conhecimento: tornam explícito o domínio do conhecimento, além de separá-lo do sistema
SE – Sistema Especialista: aplicam
conhecimento especializado na resolução de problemas difíceis do mundo real
“São programas que simulam o
comportamento humano em domínios
de problemas bem definidos”
(Alexandre Dantas – UFRJ).
Problemas/domínio bem definidosSistemas Especialistas
“Os sistemas especialistas
solucionam problemas
que normalmente
são solucionados por especialistas humanos”
(Elaine Rich).
Solução de problemas
O principal objetivo dos Sistemas Especialistas
“é, a partir do conhecimento capturado
junto a um especialista em uma área
particular do conhecimento humano
e representado em uma estrutura
modular e expansível,
transferi-lo para outros usuários deste domínio”
(PACHECO, 1991).Transferir conhecimento para outros usuários
Sistemas Especialistas
“São uma classe de sistemas de IA
desenvolvidos para servirem como consultores
na tomada de decisões que envolvam áreas
restritas da ciência, normalmente
apenas dominadas por especialistas humanos”
(Mara Abel – UFRGS).
Atuam como consultores na tomada de decisões
Sistemas Especialistas
“São programas de computadores
que analisam dados em uma forma que,
se feito por humanos,
seria considerada inteligente”
(Alexandre Dantas – UFRJ).
Noção de inteligência
Sistemas Especialistas
“A potência de um sistema especialista
deriva do conhecimento que ele possui
e não dos formalismos e esquemas específicos
que ele emprega.”
(Feigenbaum)
Sistemas Especialistas
“
O termo especialista frequentemente leva as
pessoas a terem expectativas irrealistas do
desempenho de um SE.
É importante lembrar que o termo especialista
originalmente representa uma
limitação na
capacidade de representação e armazenamento
de conhecimento
do sistema
”(Álvaro Guarda - UFOP)
Sistemas Especialistas
Os especialistas humanos são capazes de atingir
um alto desempenho na medida em conhecem
muito bem as suas áreas de especialização.
Sistemas Especialistas
Um Sistema Especialista (SE) é um programa de
computador que utiliza conhecimento específico
do domínio de um problema e
emula
a
metodologia e desempenho de um especialista
para obter soluções de problemas neste domínio.
Emulação (computação)
: processos em que o
comportamento de um sistema, associado a
determinado suporte material, é reproduzido em
outro.
Sistemas Especialistas
O conhecimento inerente a um Sistema
Especialista é o ponto chave na sua construção, e é
normalmente definido por engenheiros do
Sistemas Especialistas
Quanto ao procedimento, são consultados
especialistas no domínio do problema e tenta-se
codificar numa linguagem formal (representação
de conhecimento) todo o conhecimento que estes
adquiriram ao longo da sua experiência (em
Sistemas Especialistas
Os Sistemas Especialistas não imitam
necessariamente a estrutura da mente humana,
nem os mecanismos da inteligência.
São programas práticos que usam estratégias
heurísticas desenvolvidas por humanos na
Sistemas Especialistas
São uma classe de programas na área da
Inteligência Artificial, e têm contribuído para o
sucesso desta área através de vários produtos
comerciais desenvolvidos e aplicações.
Sistemas Especialistas
Um sistema especialista deve ser capaz de
explicar seu comportamento e decisões para o
usuário, permitindo melhor avaliação da
Histórico: GPS (1960s)
General Problem Solver (GPS)
Motivação:
Leis do pensamento + máquinas poderosas
Funcionamento:
planejamento + sub-objetivos
ex. estou com fome => comer => pedir pizza =>
telefonar
Em geral, GPSs não funcionam
Problemática da representação do conhecimento Humanos são bons só em domínios restritos
Histórico: Primeiros SEs
(1960s-1970s)
DENDRAL
Inferir estrutura molecular de componentes
desconhecidos dadas a massa espectral e a resposta nuclear magnética
Conhecimento especializado poda a busca por possíveis
estruturas moleculares – “receita de bolo”
Fez sucesso: publicações científicas
Representação procedimental de conhecimento
Alguns resultados de análises realizadas pelo sistemas foram considerados melhores do que os obtidos por especialistas humanos e publicados em revistas.
Histórico: Primeiros SEs
(1960s-1970s)
MYCIN
Diagnosticar rapidamente meningite e outras infecções
bacterianas, e prescrever tratamento
Representação de conhecimento baseada em regras
probabilísticas (em torno de 500)
Fez sucesso: acima de 90% de acerto
introduziu explicação e boa interface com usuário Exemplo de regra
if the infection is meningitis and
the type of infection is bacterial and the patient has undergone surgery and
the patient has undergone neurosurgery and the neurosurgery-time was < 2 months ago and the patient got a ventricular-urethral-shunt
Histórico: 1970s e 1980s
1970s: Esforço para desenvolver SEs melhores e
mais especializados
Linguagens de representação de conhecimento
Mecanismos de inferência
1980s: Grande boom dos SEs
CATS-1
Problema da General Electric:
Aposentadoria de David Smith: engenheiro especialista
em falhas de motores elétrico-diesel de locomotivas
Custo deste tipo de engenheiro 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
Outros Sistemas Especialistas
famosos
XCON(R1): projetava computadores VAX; Até
1983 tinha 3000 regras.
CADUCEUS: SE da área médica que conhecia
sobre 500 doenças;
TAXMAN: SE jurídico para os casos de cobranças;
PROSPECTOR: SE que ajuda na previsão de
depósitos de minerais;
O “ambiente” dos SEs
Dois momentos distintos:
1) Construção: coleta de conhecimento,
organização, implementação e testes;
2) Utilização: geralmente, por usuários não
especialistas no assunto.
Componentes básicos dos SEs
Existe um certo consenso sobre a arquitetura geral
mínima de um sistema especialista:
1) Base de conhecimento;
2) Motor de Inferência
Componentes básicos dos SEs
Base de conhecimento; É a parte principal do SE;
Contém a representação do conhecimento;
O conhecimento é extraído de um ou mais especialistas; Idealmente o conhecimento está em forma de declarações
Componentes básicos dos SEs
Motor ou máquina de inferência Responsável pela manipulação da base de conhecimento
durante a resolução do problema;
Usa o conhecimento da base e os fatos relativos a uma
consulta para obter conclusões;
No caso do Prolog, o formalismo de representação é a
“lógica de primeira ordem”;
Componentes básicos dos SEs
Interface com o usuário Os SEs são interativos;
Existe um componente para gerenciar a interação entre o
usuário e o sistema;
A interação básica consiste no sistema perguntar questões
relevantes, apresentar respostas;
Representação do conhecimento
Para representar o conhecimento é selecionado um dos modelos/técnicas
Lógica
Regras de produção Redes semânticas
Quadros e Roteiros (Frames/Scripts) Árvores de Decisão
OO
Representação do conhecimento
Exemplo – sistema de produção: SE o paciente tem dor torácica;
E a dor é opressiva;
E a dor inicia rapidamente;
E a dor aumenta com o tempo
Representação do conhecimento
Exemplo – sistema de produção c/probabilidade = fator de certeza (idem Mycin):
SE a infecção é no aparelho respiratório;
E o paciente teve contato com uma pessoa gripada;
E há dores musculares;
E há dores de cabeça;
E há coriza;
Exemplo de SE: Seamed
O projeto SEAMED foi integrado por especialistas da área
médica e por profissionais da Ciência da Computação interessados em desenvolver Sistemas Especialistas.
Este trabalho iniciou-se em 1989, com o desenvolvimento
de um sistema para diagnóstico de depressão (LYSSA).
Em 1994 foi concluído o sistema “Seta V2.0” para apoio
Seamed (justificativa)
Existe uma alta incidência de transtornos afetivos (como
depressão) na sociedade ocidental e freqüentemente ocorre a ausência de psiquiatras em postos de saúde para
atendimento da população carente, assim como em
pequenas cidades do interior, cabendo ao clínico geral a incumbência de prescrever um tratamento farmacológico ao paciente.
Seamed (justificativa)
O mercado farmacêutico possui uma gama de produtos que
podem ser utilizados no tratamento dos distúrbios do
humor, apresentando diferentes perfis farmacológicos que devem ser considerados no momento da prescrição.
Seamed
O sistema “Seta V2.0” chegou ao mercado sem grande
planejamento comercial, no entanto em poucos meses, vendeu 122 cópias.
A divulgação realizada para este sistema resumiu-se em
notas na Revista da Associação Brasileira de Psiquiatria e apresentações em congressos científicos da área
Seamed
O SE oferece apoio ao clínico na escolha das drogas
utilizadas em transtornos afetivos (ou distúrbios do humor) ou hipertensão no idoso.
Para fazer a escolha o SE leva em conta as seguintes
características do paciente:
diagnóstico, idade, perfil sintomático, uso prévio de
antidepressivos e doenças e/ou problemas físicos concomitantes.
Oferece um laudo, sugerindo a droga mais conveniente,
sua posologia, e as precauções que devem ser tomadas no seu uso.
Seamed
Justifica a escolha e orienta sobre as drogas que não
devem ser usadas.
Pode ainda interagir com o usuário, caso este não concorde
com a escolha feita pelo Sistema, oferecendo informações adicionais sobre o raciocínio utilizado para estabelecer a conclusão.
Seamed: solução
1) As informações são fornecidas ao sistema, pelo usuário,
que responde a questões do tipo SIM ou NÃO, escolha de uma ou mais entre várias opções ou ainda entra algum dado pelo teclado
2) Para cada informação prestada, o sistema percorre a
base de conhecimentos, onde se encontram armazenadas as regras de preferência que selecionam as drogas mais
apropriadas ou excluem as contra-indicadas. As regras de preferência, por sua vez, possuem diferentes pesos, que são gerados através da combinação dos conhecimentos clínico e farmacológico do especialista.
Seamed: solução
3) Se o sistema possui mais alguma pergunta a fazer ao
usuário, vai para 1.
4) Aplicar as regras de preferência, multiplicadas pelo grau
de importância que cada uma possui individualmente, classificando os fármacos através da combinação de
evidências positivas (indicações) e evidências negativas (contra-indicações), o que leva à escolha do(s) fármaco(s).
Seamed: solução
5) Constrói o laudo final sob a forma de um texto, empregando uma linguagem coloquial, mais próxima da linguagem utilizada no dia a dia pelos médicos em geral.
6) Permite que o usuário questione o resultado do sistema através da indicação de um outro resultado. O sistema confronta os dois
resultados, apresentando sua justificativa, deixando que o usuário faça seu próprio julgamento.
Referências
RIBEIRO, ALEXANDRE D. Sistemas Especialistas.
UFRGS.
FLORES, Cecília D. Fundamentos dos sistemas
especialistas. In: Sociedades Artificiais. Porto
Alegre: Bookman, 2003.
RABUSKE, R.A. Inteligência Artificial.
Florianópolis, 1995.
http://www.inf.ufrgs.br/~dflores/seamed