Sistemas Especialistas
Jacques Robin
CIn-UFPE
Roteiro
O que é um sistema especialista?
 Para que serve um sistema especialista?
 Arquitetura de um sistema especialista
 Representação do conhecimento para sistemas
especialista
 Problemática comum ou semelhante aos sistemas
especialistas e outras áreas da computação
 Problemática específica aos sistemas especialistas
 Shells de sistema especialista

O que é um sistema especialista ?

Sistemas especialistas como aplicação da IA

Software que usa uma técnica de raciocínio automático
qualquer para executar uma tarefa:
puramente cognitiva normalmente executa por um especialista
humano
 com um desempenho comparável e este


Um especialista é uma pessoa que adquiriu:
através um treinamento formal e uma experiência prática, ambos
extensivos
 um conhecimento sobre um certo domínio e uma habilidade a
executar uma certa tarefa que são raros e de alta valor agregada


Visão holística e ecumênica
O que é um sistema especialista ?

Sistemas especialistas como conjunto de técnicas de IA

Software que:
executa uma tarefa puramente cognitiva normalmente executa por
um especialista humano
 com um desempenho comparável e este
 usando uma técnica de raciocínio automática simbólica,
especialmente regras de produção e frames


Visão divisória e partidária




IA lógica e probabilista x IA sem fundamentos matemáticos
IA simbólica x IA numérica (nebulosa, conexionista,
evolucionista)
IA monolítica x IA distribuída e multi-agentes
Stand-alone AI x Embedded AI
Classes de tarefas
dos sistemas especialistas

Próprias:







Diagnóstico
Reparo e prescrição
Monitoramento e detecção
Controle: monitoramento, diagnóstico e reparo
Instrução
Simulação
Comuns a resolução de restrição:
Escalonamento
 Recomendação e alocação
 Construção e projeto
 Otimização


Comuns a mineração de dados:
Interpretação e abstração de dados
 Classificação
 Previsão

Domínios de aplicações
dos sistemas especialistas











Aeroespacial
Agricultura
Armamento e aplicações
militares
Automação industrial e
controle de equipamento
Computação
Concepção e construção
auxiliada por computadores
Descoberta cientifica diversa
Educação
Eletrônica
Energia
Engenharias diversas













Financias e negócios
Geologia
Gerenciamento da informação
Manutenção de equipamento
Matemática
Medicina
Meio ambiente
Meteorologia
Mineração
Química
Serviços legais
Telecomunicações
Transportes
Casos de uso de sistemas especialistas

Substituir o especialista



Auxiliar o especialista


Melhora confiabilidade e eficiência
Integrar o conhecimento de vários especialista


Melhora acessibilidade temporal, geográfica e econômica do
conhecimento especialista
Automação pela incorporação do raciocínio especialista dentro
de máquinas
Melhor confiabilidade, qualidade e eficiência
Capturar o conhecimento de valor agregado de uma
organização


Evita dependência de gurus que estão sobrecarregados, se
aposentam ou são contratados por um concorrente
Permite treinamento de novatos
Benefícios colaterais do desenvolvimento
de sistemas especialistas


Envolve um processo de conscientização do(s)
especialista(s) e da organização
Processo de introspecção e modelagem:




Melhora conhecimento da tarefa e do domínio do(s)
especialista(s)
Melhora radicalmente meta-conhecimento da tarefa e do
domínio do(s) especialista(s)
Melhora radicalmente conhecimento do(s) especialista(s) do
potencial e limitações da tecnologia da informação
Processo de licitação dos requisitos e de implantação
do sistema na organização:



Dissemina conhecimento do(s) especialista(s)
Esclarece consideravelmente a natureza profunda da tarefa,
seu papel na organização, sua utilidade real, suas limitações
Podem identificar necessidade de re-engenharia organizacional
Requisitos específicos
de sistemas especialistas

Especialista humano é capaz:









Resolver eficientemente problema muito complexo
Escolher conhecimento relevante e grau de detalhe adequado
para cada caso
Explicar seu raciocínio para um colega
Aprender com a experiência
Re-estruturar constantemente seu conhecimento
Manter consistência do raciocínio apesar de usar conjunto de
regras possivelmente contraditórias
Identificar qual parte do seu conhecimento para executar uma
tarefa em um domínio pode ser reaproveitado para tarefas ou
domínio diferentes porém com aspectos semelhantes
Seu desempenho cai gradativamente a medida que lhe falta
conhecimento
Tudo isso requer meta-conhecimento
Personagens oriundos
de um sistema especialista
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 sistema especialista
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 com linguagens sem fundamentos
matemáticos:




Regras de produção as vezes com fatores de incerteza
Redes semânticas e frames
Regras de produção + frames
Aquisição do conhecimento como processo de
transferência
Sistemas isolados implementados com shells de
sistemas especialistas
 Sistemas centralizados e individuais

Sistemas especialistas da 2a geração

Representação:

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 numéricos híbridos
Aquisição de conhecimento como:
processo de modelagem e reuso de conhecimento (ontologias)
 aprendizagem de máquina


Integração dos sistemas especialistas em sistemas maiores
API entre linguagens de representação de conhecimento e linguagens
de programação largamente divulgadas (C, 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 sistemas
especialistas e engenharia de software

Processo de desenvolvimento



Flexibilidade de modelagem
Rigor formal para confiabilidade
Prototipagem rápido
Requisitos organizacionais
 Colaboração de equipes grandes e culturalmente
heterogêneas
 Controle de versões
 Planejamento de projeto:




controle dos prazos e dos custos
Verificação, validação e teste
Reuso de conhecimento (ontologias, componentes)
Problemática comum entre sistemas
especialistas e banco de dados

Requisitos de base de conhecimento estratégicas de
sistemas especialistas de grande porte:







Deu nascimento as áreas de:



persistência
escalabilidade de processamento
gerenciamento de memória secundária
acesso em leitura e escritura distribuído e concorrente
recuperação
segurança
BD dedutivas
BD dedutivas orientadas a objetos
Pode se reaproveitar de soluções:


BD objeto-relacionais
Web semântica
Problemática comum entre sistemas
especialistas e sistemas de distribuídos

Áreas:




Sistemas multi-agentes
Agentes de gerenciamento da informação na internet
Web semântica
Questões:



Protocolos de comunicação entre agentes
Linguagens padrões de representação do conhecimento e de
meta-conhecimento
API entre máquinas de inferências e linguagens de middleware
para interoperabilidade
Shells de sistemas especialista

Sistemas incluindo:






Máquina de inferências
Interface de aquisição do conhecimento (ao mínimo do
conhecimento dinâmico descrevendo instâncias particular do
problema a tratar)
Interface de explicação do raciocínio
Evita o usuário definir de ante mão o que constitui o
conhecimento dinâmico necessário para resolver uma
instância particular da tarefa genérica do sistema
especialista
Permite o sistema pedir para o usuário o conhecimento
faltando guiado pelo seu processo de raciocínio
Permite o usuário questionar o sistema em qualquer
ponto do seu raciocínio
Download

Sistemas Especialistas