Plano de Aula
Histórico
O que é um Sistema Especialista?
Arquitetura de um Sistema Especialista
Problemas na construção de SEs
Exemplos
Shells de SE
Histórico (1960s)
General Problem Solver (GPS)

leis do pensamento + máquinas poderosas
Funcionamento

 planejamento + sub-goaling
 ex. estou com fome => comer => pedir pizza =>
telefonar => ir para a sala => sair do quarto...
O sistema Logic Theorist deu certo mas....
em geral, GPS não funciona


fraca representação de conhecimento
humanos são bons só em domínios restritos
Histórico (1960-1970)
Primeiros Sistemas Especialistas
DENDRAL

Objetivo
 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
Fez sucesso
 publicações científicas

Representação procedimental de conhecimento
Histórico (1960-1970)
MYCIN

Objetivo:
 Diagnosticar rapidamente meningite e outras infecções
bacterianas, e prescrever tratamento

Representação de conhecimento baseada em
regras probabilistas
 em torno de 500

Fez sucesso
 acima de 90% de acerto

Introduziu explicação sobre “raciocínio” e boa
interface com usuário
Histórico (1960-1970)
MYCIN

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 under gone neurosurgery and
the neurosurgery-time was < 2 months ago and
the patient got a ventricular-urethral-shunt
then infection = e.coli(.8) or
klebsiella(.75)
Histórico (1980)
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
Construção do 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
Sistemas Especialistas
Definição

sistemas que empregam o conhecimento humano
para resolver problemas que requererem a
presença de um especialista.
Área de aplicação de mais sucesso da IA
Exemplo mais difundido dos Sistemas
Baseados em Conhecimento
Sistemas Baseados em Conhecimento
SBC
SE
Aplicam
conhecimento
especializado
na solução de
problemas
complexos
Representam
conhecimento
do domínio de
forma explícita
Conceitos Básicos de SE
Expertise

Conhecimento especializado adquirido por longo
treinamento, leitura e/ou experiência
Especialista

Quem possui o conhecimento, a experiência,
conhece os métodos, e tem a habilidade de aplicálos para dar conselhos e resolver problemas.
Engenheiro de conhecimento

Guia a aquisição e a representação do conhecimento
especializado, bem como a implementação e
refinamento do SE.
Tarefas Comuns dos SEs
Diagnóstico
Escalonamento
Reparo e prescrição
Recomendação e
alocação
Monitoramento e
detecção
Controle:
monitoramento,
diagnóstico e reparo
Instrução
Simulação
Construção e projeto
Otimização
Interpretação e
abstração de dados
Classificação
Previsão
Domínios de Aplicação dos SEs
Aeroespacial
Agricultura
Aplicações militares
Automação industrial e
controle de equipamento
Concepção e construção
auxiliada por computadores
Gerenciamento de
informação
Manutenção de equipamento
Matemática
Medicina
Meio ambiente
Meteorologia
Educação
Mineração
Eletrônica
Química
Engenharias
Finanças e negócios
Serviços legais
Transportes
Para que utilizar SEs?
Substituir o especialista


Melhorar acesso temporal e geográfico a conhecimento
especialista sobre um domínio
Diminuir gastos com pessoal
Auxiliar o especialista

Melhorar confiabilidade e eficiência
Integrar o conhecimento de vários especialistas

Mais confiabilidade, qualidade e eficiência
Capturar o “conhecimento agregado” de uma
organização


Evitar dependência de gurus
Viabilizar o treinamento de novatos
Benefícios do desenvolvimento de SEs
Processo de introspecção e modelagem:


Aprofunda o conhecimento sobre a tarefa e o domínio do(s)
especialista(s)
Melhora consideravelmente o meta-conhecimento sobre a
tarefa e o domínio do(s) especialista(s)
Processo de elicitação dos requisitos e de
implantação do SE na organização:



Dissemina conhecimento do(s) especialista(s)
Esclarece a natureza da tarefa, seu papel na organização,
sua utilidade e suas limitações
Pode identificar necessidade de re-engenharia organizacional
Requisitos específicos de SEs
Especialista humano é capaz de:






Resolver eficientemente problemas muito
complexos
Selecionar o conhecimento relevante e o grau de
detalhe adequado para cada caso
Explicar seu raciocínio para um colega
Aprender com a experiência
Reestruturar constantemente seu conhecimento
Manter consistência do raciocínio, apesar de usar
conjunto de regras possivelmente contraditórias
Requisitos Específicos de SEs
Especialista humano é capaz de identificar




que “partes” do seu conhecimento para executar
uma tarefa em um domínio
podem ser reaproveitadas
para tarefas ou domínio diferentes,
porém com aspectos semelhantes
Tudo isto requer meta-conhecimento
Contudo

O desempenho do especialista cai gradativamente
à medida que lhe falta conhecimento
Etapas na construção de SE-BCs
Nível de
Conhecimento
Nível Lógico
Nível de
Implementação
AQUISIÇÃO
FORMULAÇÃO
BC
IMPLEMENTAÇÃO
REFINAMENTO
Atores de um SE
Especialista
Construtor de
Ferramentas
Testa
Conhecimento
Documentado
Constrói
Ferramentas,
Linguagens
Usa
Usa
Fornece
Vendedor
Adquire
Conhecimento
Engenheiro de
Conhecimento
Coopera
Constrói
Constrói
Construtor
do sistema
Conecta
Equipe de
Suporte
Fornece
Suporte
Sistema
Especialista
Usa
Usuário
Final
Arquitetura de um SE
Usuário
Dados do
problema
Respostas
Máquina de
Inferência
Base de
conhecimento
dinâmico
Base de
conhecimento
estático
Interface de
explicação
do raciocínio
Sistema de
aquisição do
conhecimento
Especialista
Engenheiro de
conhecimento
Sistemas Especialistas da 1a geração
Representação do conhecimento utilizando
linguagens sem fundamentação matemática

Regras de produção
 às vezes com fatores de incerteza


Redes semânticas ou frames
Regras de produção + frames
Aquisição do conhecimento visto como
processo de transferência
Sistemas centralizados e individuais

Sistemas isolados implementados com shells de
sistemas especialistas
Sistemas Especialistas da 2a geração
Representação do conhecimento

Explícita, com linguagens formais:
 Programação em lógica no lugar de regras de produção
 Redes Bayesianas no lugar de fatores de incerteza
 Lógicas descritivas no lugar de frames

Implícita, via representação numérica:
 Redes neurais, algoritmos genéticos, sistemas híbridos
Sistemas Especialistas da 2a geração
Aquisição de conhecimento como processo de
modelagem e reuso de conhecimento

Utilização de aquisição automática
Integração dos SEs em sistemas maiores:


APIs entre linguagens de representação de
conhecimento e linguagens de programação
amplamente utilizadas (C++, Java)
Representação procedimental do conhecimento
diretamente nas linguagem de programação
largamente divulgadas
Sistemas distribuídos e multi-agentes
Problemática comum entre SEs e
Engenharia de Software
Processo de desenvolvimento



Flexibilidade de modelagem
Rigor formal para garantir confiabilidade
Prototipagem rápida
Requisitos organizacionais
Colaboração de equipes grandes e
culturalmente heterogêneas
Problemática comum entre SEs e
Engenharia de Software
Controle de versões
Planejamento de projeto:

controle dos prazos e dos custos
Verificação, validação e teste
Reuso de conhecimento

ontologias, componentes
SEs e BD
Requisitos de Bases de Conhecimento
estratégicas de SEs de grande porte:






persistência
escalabilidade de processamento
gerenciamento de memória secundária
acesso em leitura e escritura distribuído e
concorrente
recuperação
segurança
SEs e BD
SE influenciou o surgimento das áreas de:


BD dedutivos
BD dedutivos orientados a objetos
Pode reutilizar soluções de:


BD objeto-relacionais
Web semântica
Shells de Sistemas Especialista
Sistemas que incluem:


Máquina de inferências
Interface de aquisição do conhecimento
 Pelo menos do conhecimento dinâmico que descreve
instâncias particulares do problema a tratar

Interface de explicação do raciocínio
Shells de SEs
Interface de aquisição do conhecimento

Evita que o usuário precise definir a priori o conhecimento
dinâmico (e.g., sintomas da minha doença) necessário para
resolver a tarefas em questão (diagnóstico da minha
doença).
Permitem que o sistema consulte o usuário durante a
execução de uma instância


solicitando dados (conhecimento) que faltam (e.g.,
sintomas) para a solução do problema (e.g., diagnóstico)
guiado pelo seu processo de raciocínio (raciocínio
progressivo ou regressivo)
Shells de SEs
Permitem ao usuário questionar o sistema em
qualquer ponto de seu processo de raciocínio

trace
Algumas Estatísticas
Evolução do mercado de SEs
Evolução do mercado de SEs
Balanço
Benefícios do S.E.
Criação de repositório de conhecimento
Crescimento de produtividade e qualidade
Habilidade de resolver problemas complexos
Flexibilidade e modularidade
Operação em ambientes arriscados
Credibilidade
Capacidade de trabalhar com informações incompletas ou
incertas
Fornecimento de treinamento
Problemas e Limitações
Aquisição ainda difícil e está sujeita a um
grande número de dificuldades (preconceitos)
Avaliação de desempenho difícil
Desenvolvimento longo e manutenção
delicada
Só apresentam alto desempenho em
domínios pequenos
Não aprendem e não são robustos
Últimos desenvolvimentos e
tendências
Ferramentas de desenvolvimento + OOP
Integração com outros sistemas

ex. banco de dados e sistemas de suporte à
decisão
Tratamento de incerteza

Redes Bayesianas
Aprendizagem de máquina
Download

Sistemas Especialistas