TÓPICOS DE I.A.
SISTEMAS ESPECIALISTAS
Prof. Mário Dantas
SISTEMAS ESPECIALISTAS














Introdução
Histórico
Representação do Conhecimento
Modelos de Representação do Conhecimento
Aquisição de Conhecimento
Metaconhecimento
Funções de um Sistema Especialista
Componentes de um Sistema Especialista
Categorias dos Sistemas Especialistas
Tipos de Respostas de um Sistema Especialista
Sistemas Especialistas de Segunda Geração
Ferramentas para construção de SEs
Balanço
Últimos desenvolvimentos
2
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
 Faz parte dos chamados knowledge-based systems


Utilidade
Capacitar não-especialistas
 Servir de assistente a especialistas
 Servir de repositório de conhecimento “valioso” para a
empresa
 etc.

3
SISTEMAS ESPECIALISTAS
OU SISTEMAS
BASEADOS EM CONHECIMENTO
Programas de I.A.
Sist. Baseados em
Conhecimento
Sistemas
Especialistas
Apresentam comportamento
inteligente através da
aplicação de heurísticas
Tornam o domínio do
conhecimento explícito e o
separam do resto do sistema
Aplicam conhecimento
especialista em problemas
reais e complexos
4
CONCEITOS BÁSICOS

Expertise


Especialista


conhecimento especializado adquirido por longo
treinamento, leitura e experiência
Quem possui o conhecimento, experiência, métodos e a
habilidade de aplicá-los para dar conselhos e resolver
problemas.
Engenheiro de conhecimento

Guia a aquisição, representação do conhecimento
especializado, bem como a implementação e refinamento
do SE.
5
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
HISTÓRICO: GPS (1960S)
General Problem Solver (GPS)
 Motivação:



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 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

9
HISTÓRICO: GPS (1960S)
10
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;

Fez sucesso: publicações científicas;

Representação procedimental de conhecimento
11
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
ifthe
the
the
the
the
the
then
infection is meningitis and
type of infection is bacterial and
patient has undergone surgery and
patient has under gone neurosurgery and
neurosurgery-time was < 2 months ago and
patient got a ventricular-urethral-shunt
infection = e.coli(.8) or klebsiella(.75)
12
HISTÓRICO: 1970S & 1980S

1970s: Esforço para desenvolver melhores (e mais
especializadas)
Linguagens de representação de conhecimento;
 Mecanismos de inferência;


1980s: Grande boom dos SEs

XCON, XSEL, CATS-1, etc.
13
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 diagnostico em poucos minutos
Existe um em cada oficina
Dá treinamento: é amigável e explica decisões
14
REPRESENTAÇÃO DO CONHECIMENTO


Deve-se ter consciência das diferenças entre o
que se quer representar e o que é efetivamente
representado;
A representação do conhecimento deve possuir as
seguintes características:

deve ser de fácil compreensão ao ser humano, para
que a representação possa ser interpretada;
15
REPRESENTAÇÃO DO CONHECIMENTO

não deve conter detalhes sobre o funcionamento do
processador de conhecimento que o interpretará;

ser robusta, ou seja, capaz de executar suas funções
mesmo sem o conhecimento de todas as situações
possíveis;

ser generalizável, para que possa ser associada a
várias situações e interpretações; esta característica
contraria o conhecimento humano, que é pessoal e
individualizado;
16
MODELOS DE REPRESENTAÇÃO DO
CONHECIMENTO
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Conhecimento procedural;
Redes ou Redes Semânticas;
Frames;
Orientação a Objetos;
Orientação a Objetos Associada a Regras;
Lógica;
Árvores de Decisão;
Conhecimento Estático;
Regras de Produção;
Processamento Paralelo Distribuído ou conexionista;
Esquemas híbridos;
Casos.
17
AQUISIÇÃO DE CONHECIMENTO
A parte mais importante e mais complexa;
 Também conhecido como Engenharia do
Conhecimento;
 Envolve o Engenheiro do Conhecimento,
Especialistas e usuários comuns;
 Dificuldades de comunicação entre o engenheiro
do conhecimento e o Especialista;
 Decisão de quê conhecimento é necessário;
 Representação do conhecimento extraído.

18
AQUISIÇÃO DE CONHECIMENTO

Segundo Rezende (2003), pode ser dividia em:





Identificação;
Conceituação;
Formalização;
Implementação;
Testes.
19
IDENTIFICAÇÃO



Nessa fase o engenheiro do conhecimento deve
identificar que tipo de conhecimento ele deve
buscar;
Durante essa fase deve-se realizar entrevistas
informais com o especialista, bem como efetuar
pesquisas em materiais bibliográficos sobre o
domínio do sistema;
Entrevistas com futuros usuários do sistema
também são importantes, para que possa se
modelar a interação entre o sistema e os
usuários.
20
CONCEITUAÇÃO




Formular os conceitos e relações entre esses
conceitos do problema;
É a fase onde se deve decidir o que representar e
o que não representar;
Entrevistar novamente o especialista, desta vez
com perguntas formuladas de acordo com o
material já obtido;
Começar a elaborar hipóteses sobre os tipos de
dados de entrada requeridos, os dados de saída
requeridos e o tipo de raciocínio que predominará
no sistema.
21
FORMALIZAÇÃO
Modelar o problema do Sistema Especialista;
 Transformar o conhecimento adquirido
informalmente em uma representação formal e
consistente;
 Escolher a linguagem de representação para
modelagem do sistema;
 Definir os espaços de estados e soluções do
sistema;
 Definir os métodos de busca que serão utilizados;
 Identificar as limitações do Sistema Especialista

22
IMPLEMENTAÇÃO


Deve-se definir nessa fase a linguagem de
representação do conhecimento do sistema;
Deve-se orientar a codificação do modelo do
sistema em alguma linguagem de programação,
ou utilizar uma ferramenta de Inteligência
Artificial;
23
TESTES



Avaliar o desempenho do sistema, testando neste
alguns casos e observando se os resultados
obtidos são satisfatórios;
Uma dificuldade encontrada nessa fase é
identificar a quantidade aceitável de erros;
Pode-se deixar o sistema em testes em seu
próprio ambiente de operação.
24
METACONHECIMENTO



Conhecimento sobre o conhecimento do sistema;
É adquirido e representado da mesma forma que
o conhecimento do sistema;
Exemplo:

quando o processo de encadeamento deve parar; qual
parte do conhecimento deve ser analisada em qual
ordem, etc.

“se o paciente relata dor na região lombar da coluna,
investigue se ele sente dormência nas pernas”;

“procure respostas nos caminhos mais curtos, antes
de procurar nos mais complexos”.
25
FUNÇÕES DE UM SISTEMA ESPECIALISTA

As principais funções de um Sistema Especialista
são as seguintes, segundo Silveira (2006):

Resolver problemas de grande porte com a mesma
eficiência ou melhor que humanos;

possuir raciocínio heurístico, utilizando regras
práticas;

Interagir com os usuários pelos meios que forem
possíveis, como linguagem escrita ou falada;
26
FUNÇÕES DE UM SISTEMA ESPECIALISTA

Cont.:

ser capaz de raciocinar sobre descrições simbólicas;

executar suas funções mesmo que os dados estejam
incorretos, como também pode ocorrer com humanos;

manipular uma série de hipóteses ao mesmo tempo;

fornecer ao usuário a explicação sobre uma solução
encontrada, justificando suas decisões;
27
COMPONENTES DE UM SISTEMA
ESPECIALISTA

Base de Conhecimento;

Quadro-negro ou memória de trabalho;

Máquina de Inferência;

Subsistema de aquisição de conhecimento;

Subsistema de explicações;

Interface com o usuário.
28
COMPONENTES DE UM SISTEMA
ESPECIALISTA
29
BASE DE CONHECIMENTO




A base de conhecimento de um Sistema
Especialista é um banco de dados que armazena
as informações fornecidas pelo especialista;
Contém a descrição do conhecimento
especialista dentro do domínio;
do
As informações do especialista são transformadas
em fatos e regras sobre o domínio;
Base de conhecimento é independente do resto do
sistema.
30
QUADRO-NEGRO OU MEMÓRIA DE
TRABALHO




É um local na memória física do computador onde
informações
são
armazenadas
para
compartilhamento com outros sistemas;
As informações duram
processo de consulta;
somente
durante
o
Ficam armazenadas as perguntas já respondidas
pelo usuário, bem como possíveis soluções
intermediárias;
Armazena a linha de raciocínio da solução para
utilização pelo subsistema de explicação.
31
MÁQUINA DE INFERÊNCIA




Examina o conteúdo da base de conhecimentos,
escolhendo a ordem de análise das inferências;
Utiliza o Metaconhecimento;
Transfere os fatos e as regras para o quadronegro;
Suas principais funcionalidades são:

método de raciocínio (encadeamento progressivo ou
regressivo);

estratégia de busca;

resolução de conflito;

representação de incerteza.
32
SUBSISTEMA DE AQUISIÇÃO DE
CONHECIMENTO



Representa a aprendizagem do sistema;
Responsável pela introdução de novos
conhecimentos ou alteração dos existentes;
Interface própria;
33
SUBSISTEMA DE EXPLICAÇÕES



Explica como o sistema chegou a suas conclusões
e justifica os passos utilizados no processo;
Objetivos:

ensinar o usuário sobre o assunto;

mostrar que sua conclusão é consistente;

lembrar o usuário elementos importantes da análise
que levam o sistema a determinada conclusã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?

34
INTERFACE COM O USUÁRIO

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.
35
CATEGORIAS DOS SISTEMAS
ESPECIALISTAS

Interpretação;

Diagnóstico ou Classificação;

Monitoramento;

Predição;

Planejamento;

Projeto;

Depuração;

Reparo;

Instrução;

Controle.
36
TIPOS DE RESPOSTAS DE UM SISTEMA
ESPECIALISTA



Primeiro modo: neste tipo o sistema indica o
domínio onde se situa resposta; é uma resposta
ampla, apenas limita a sua busca ao domínio
indicado;
Segundo modo: método mais preciso, onde o
sistema indica uma resposta ou um número
pequeno de respostas para ser analisado;
Terceiro modo: neste caso o sistema não
oferece resposta alguma, realizando apenas uma
interação com o usuário, apresentando fatos e
informações para que este reflita sobre o
problema e encontre uma solução.
37
SISTEMAS ESPECIALISTAS DE SEGUNDA
GERAÇÃO

Abandonaram
conhecimento:


a
hipótese
da
transferência
de
o especialista valida o modelo computacional proposto.
Aquisição guiada por modelos: reuso de ontologias e
estruturas de inferência:
1) Decomposição de tarefas
2) Caracterização das (sub)tarefas
3) Busca de um modelo em uma biblioteca (ex. KADS http://www.commonkads.uva.nl/)
modelo = ontologia do domínio + estrutura de inferência
4) entrevista estruturada
38
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
FERRAMENTAS PARA CONSTRUÇÃO DE SES


3 opções

Shell (OPS, ExpertSinta, KAS, ...) : é o mais utilizado

Linguagens de programação para IA (Prolog)

Linguagens de programação gerais (OOP)

Linguagens híbridas (componentes de IA): regras + objetos
(CLIPS, JESS, NeOpus, JEOPS, etc.)
Critérios de escolha

Facilidade de uso

Flexibilidade

Interface com sistema

Desempenho

Portabilidade
40
SHELL EXPERT SINTA
41
REGRAS DE PRODUÇÃO
42
ENTRADA DE DADOS
43
SAÍDA DE DADOS
44
MECANISMO DE JUSTIFICATIVA
45
BALANÇO
46
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

Habilidade de trabalhar com informações
incompletas ou incertas

Fornecimento de treinamento
47
PROBLEMAS E LIMITAÇÕES

Avaliação de desempenho difícil;

É difícil extrair conhecimento especialista;

Só trabalham muito bem em domínios estreitos;

Engenheiros de Conhecimento são raros e caros;


Transferência de conhecimento está sujeito a um
grande número de preconceitos;
Falta de flexibilidade do sistema;
48
ÚLTIMOS DESENVOLVIMENTOS

Aquisição de conhecimento:

SEs de 2ª geração & aprendizagem
Ferramentas de desenvolvimento + OOP
 Integração com outros sistemas



ex. banco de dados e sistemas de suporte à decisão
Tratamento de incerteza
49
REFERÊNCIAS
WEBER, Rosina de Oliveira. Sistema
Especialista Difuso para Análise de Crédito.
São Paulo: UFSC, 1993. Dissertação (Mestrado
em Engenharia), Universidade Federal de Santa
Catarina, 1993.
 KERN, Ernani Soares. Sistema Especialista:
uma introdução para Apoio à
Fisioterapeutas. Porto Alegre: UNIRITTER,
2007. Monografia (Bacharelado em Sistemas de
Informação), Centro Universitário Ritter dos
Reis, 2007.
 PY, Mônica Xavier. Sistema Especialista: Uma
Introdução. Porto Alegre: UFRGS. Artigo,
Universidade Federal do Rio Grande do Sul.

50
Download

Sistemas Especialistas