Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo...

71
1 Sistemas Especialistas Prof. Júlio Cesar Nievola PPGIA – PUCPR

Transcript of Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo...

Page 1: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

1

Sistemas Especialistas

Prof. Júlio Cesar NievolaPPGIA – PUCPR

Page 2: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

O que é um Especialista?

Pessoa que é largamente reconhecida como sendo capaz de resolver um tipo particular de problema que a maioria das pessoas ou não écapaz de resolver ou não resolve de maneira tão eficiente.

Page 3: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Conhecimento do Especialista

Aprendizado teórico (escola e livros)

Aprendizado pela experiênciaConhecimento Nulo

Teorias Gerais

ConhecimentoCompilado

ConhecimentoSuperficial

Conhecimento Profundo

Teorias de domínio e performance

Princípios, axiomas e leis

Heurísticas

Treinamento

Ensino

Page 4: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

O que é um Sistema Especialista?

Sistema que utiliza técnicas apropriadas para a representação do conhecimento e sua manipulação, exibindo o comportamento de um especialista em um determinado domínio do saber.

Page 5: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Ciclo de vida de SEs

� Análise de viabilidade� Projeto conceitual� Aquisição de conhecimento� Representação do conhecimento� Teste e Validação� Uso em campo� Manutenção

Page 6: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Análise de viabilidade

� Existem outras formas de solução do problema?� A tarefa tem um foco dirigido?� Os especialistas são melhores que os amadores?� As regras mudam muito rapidamente?� Há um especialista humano disponível e

interessado?� A tarefa é ensinada ou documentada?� Qual será o critério de sucesso ou fracasso?

Page 7: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Projeto Conceitual

� Quais são os principais objetos, entidades ou conceitos no domínio do conhecimento?

� Como devem ser descritos os objetos, entidades e conceitos?� Quais são as relações importantes que existem entre os objetos?� Que restrições sofrem estas relações no domínio do

conhecimento?� Quais são as características gerais do problema a ser tratado?� Como o sistema especialista obterá informações sobre o

problema atual?� Como o sistema irá interagir com o usuário?

Page 8: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Aquisição do Conhecimento

� O conhecimento é obtido de:� Especialistas humanos;� Casos históricos;� Fontes de referência.

� É uma parte crucial da construção do SE� Difícil de ser realizado pois inclui extração,

interpretação para posterior representação

Page 9: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Etapas da Aquisição do Conhecimento

Envolve 5 etapas:� Identificação: escolha dos participantes, características,

recursos e objetivos;

� Conceitualização: especificar como os conceitos e as relações existentes entre eles são descritos pelo especialista;

� Formalização: mapeamento dos conceitos para representação formal;

� Implementação: filtrar o conhecimento formalizado para uma estrutura representativa de uma ferramenta;

� Teste: verificar a precisão e eficiência da AC através do protótipo.

Page 10: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Representação do Conhecimento

� Formas de representação clássicas:� Rede semântica (“semantic network”)� Regras de produção (“production rules”)� Quadros (“Frames”)� Meta-conhecimento

� Facilidade de construção e interpretação versus poder de representação

� Representação híbrida

Page 11: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Rede Semântica

�Forma mais antiga de representação de conhecimento

�Conjunto de nós (objetos) conectados por um conjunto de arcos (relações entre os objetos)

�Normalmente representada em forma de grafo

�Origem: Quillian (1978) – modelo computacional da memória humana

Page 12: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Exemplo de Rede Semântica

Page 13: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Rede Semântica – “João deu um livro a Maria”

Page 14: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Raciocínio com Rede Semântica� Arcos especiais permitem herança de

propriedades� A é-um B : A é um elemento de um conjunto ou

classe B� A é-parte B : A é uma das partes disjuntas das quais

B é formado� Demais arcos (traços): específicos do domínio,

representam propriedades de conceitos� Redes Semânticas na forma de árvores: simples e

eficientes� Redes Semânticas com heranças múltiplas e/ou arcos

que definam exceções: complexo e com política de herança pouco intuitiva

Page 15: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Regras de Produção� Forma geral:

IF <condição> THEN <conclusão>� O impacto de uma inferência pode ser

modificado por um fator de confiança� Exemplo:

IF: The grain stain is gram-negative & Themorphology is rod & The patient is at risk

THEN: Suggest (credibility = 0.6) that the infectingagent is Pseudomonas.

Page 16: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Frames e Scripts (1)� Permitem a expressão das estruturas internas dos objetos (frames) ou

eventos (scripts), mantendo a possibilidade de representar herança de propriedades

� Origem� Marvin Minsky (A Framework to Represent Knowledge, 1975),

método para análise de cenas, modelagem da percepção visual e compreensão da linguagem natural

� Roteiros: Schank e Abelson (1975-77), sistemas de quadros especializados na descrição de seqüências de eventos

� Componentes� Atributos (“slots”): através de valores descrevem as características do

objeto representado pelo frame� Hierarquia de especialização: rede de arcos é-um ligando frames que

permite herança� Facetas: propriedades dos atributos que definem o tipo de valores e as

restrições de número associadas ao atributo

Page 17: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Frames e Scripts (2)

� Características� Herança de propriedades� Raciocíno guiado por expectativas: atributos com valores típicos

ou a priori, ou valores de exceção (“default values”)� Ligação procedimental: um atributo pode ser associado a um

procedimento que deve ser executado quando certas condições forem satisfeitas (“daemon”)

� Tipos� if-modify: o que fazer quando é alterado o valor do atributo� if-necessary: o que fazer se for consultado o valor do atributo� if-delete: o que fazer se for eliminado o valor do atributo

Page 18: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Frames� Estrutura de dados que reúne todas as

informações (atributos e valores) sobre um objeto que pertence a um domínio

� Consiste em um conjunto de itens (“slots”)� Nome: cujo valor é o nome do próprio frame� AKO (“a-kind-of”): cujo valor é o nome do

frame hierarquicamente superior� Facetas: contém informações que descrevem

os slots

Page 19: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Exemplo de Frame

(Nome do Frame)

(nome do slot)(nome da faceta) : valor

(nome do slot)

(nome do slot)

(nome da faceta) : valor

(nome da faceta) : valor

Page 20: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Frame descrevendo um cômodo e uma sala

Page 21: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Frame: rede de cômodos numa casa

Page 22: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Teste e Validação

� Testes para verificação do desempenho em casos conhecidos

� Validação:� Conclusões - validação do comportamento

entrada-saída do sistema� Raciocínio - verificação da forma como se

chega às conclusões� Método de raciocínio - forma de trabalho

Page 23: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Uso em campo e Manutenção

� Trabalho com novas situações� Manutenção da interface:

� Alteração mais fácil que o mecanismo de inferência

� Avaliação e aceitação do sistema pelo usuário dependem da qualidade da interface

� Mecanismos de alteração da base de conhecimentos

Page 24: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Sistemas de Produção� Raciocínio avante (“forward chaining”):

parte-se dos dados procurando chegar a conclusões.

� Raciocínio para trás (“backward chaining”): formulam-se hipóteses e tenta-se comprová-las através dos dados disponíveis.

� Estratégia mista.

Page 25: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Componentes de um SE� Base de conhecimento: representa a informação

(fatos e regras) que um especialista utiliza, representada computacionalmente

� Linguagem para representação do conhecimento

� Mecanismo de inferência (motor de inferência): responsável pelas deduções sobre a base de conhecimento

� Outros: explanação, aquisição, interface

Page 26: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Sistemas Especialistas

Máquina deInferência

Base deConhecimentos

Base deFatos

Interface com o usuário

Page 27: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Shell para SE

� Shell + Base de Conhecimentos = SE� Funções:

� Auxílio à construção da base de conhecimentos, permitindo inserir conhecimento em estruturas de representação do conhecimento prontas

� Fornecer métodos de inferência que raciocinem sobre a BC e os fatos fornecidos

� Fornecer uma interface adequada ao usuário

Page 28: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Sistemas Especialistas Históricos

� MYCIN (doenças infecciosas do sangue)� CATS-1 (diagnóstico em locomotivas)� VM (gerenciamento de ventilação para pacientes

pós-cirurgia cardíaca)� R1/XCON (configuração de minicomputadores

VAX para DEC)� Guidon (auxílio ao ensino)� Expert Sinta – Universidade Federal do Ceará

Page 29: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Indicativos de Uso de SE’s

� A experiência humana pode ser perdida

� A experiência humana é esparsa

� A experiência é necessária em muitos locais

� A experiência é necessária em ambientes hostis

� A solução de tarefas tem um alto retorno

Page 30: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Viabilidade do Uso de SE’s� As tarefas requerem habilidades cognitivas� Conhecimento especializado� Não há solução algorítmica� Tarefas moderadamente complexas� Conhecimento relativamente estático� Existem especialistas genuínos� Especialistas são melhores que amadores

Page 31: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Limitações dos SE’s� Esquemas de representação mistos� O conhecimento é infinito� Conhecimento contraditório/inconsistente� Há necessidade de intermediários

� Dificuldade de extensão além do conhecimento do especialista

� O raciocínio é limitado� Há dificuldade de validar o conhecimento

Page 32: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Personagens envolvidos na construção de um SE

� Construtor de ferramentas

� Engenheiro de Conhecimento

� Especialista

� Apoio

� Usuário

Page 33: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Ciclo de Base de um Motor de Inferência

Fase de Avaliação

Restrição

Resoluçãode Conflitos

Filtragem

Fase de Execução

Execução das ações

Ações sobre oambiente

BF e BR podemser alterados

Eventualmente paradaou retorno

Eventualmente paradaou retorno

Page 34: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

O Gargalo no Desenvolvimento

� Gargalo na construção de SE:passagem do conhecimento do especialista para o engenheiro de conhecimento e conseqüentemente para o sistema

� Solução: técnicas automatizadas de aquisição de conhecimento

Page 35: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

SBC x Sistema Convencional� Para um sistema inteligente ser classificado como

SBC, ele deve ser capaz de:� Questionar o usuário usando uma linguagem de fácil

entendimento para reunir informações necessárias� Desenvolver uma linha de raciocíno a partir dessas

informações e do conhecimento que contém para resolver o problema; deve lidar com regras e informações incompletas, imprecisas e conflitantes

� Explicar seu raciocínio� Conviver com seus erros, mas com desempenho

satisfatório (similarmente ao especialista humano)

Page 36: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Propriedades dos SBCs� Tudo que se sabe sobre o problema deve estar

explicitamente representado na base de conhecimentos do sistema

� A base de conhecimentos deve ser interpretada por um mecanismo de inferência

� Os problemas resolvidos por SBCs são aqueles para os quais não é conhecido um procedimento determinístico� Em geral o conhecimento é utilizado para contornar a

exponencialidade da formulação do problema

Page 37: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Diferenças entre Sistemas

Podem e devem explicitar seuraciocínio

Explicação do raciocício é difícil

Conhecimento representadoexplicitamente e separado do código que o manipula e interpreta

Conhecimento embutido no código do programa

Busca heurísticaAlgoritmos determinísticos

Conceitos, relações entreconceitos e regras

Dados e relações entre dados

Representação do ConhecimentoEstrutura de Dados

SBCsSistemas Convencionais

Page 38: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

SBCs e SEs� SBCs resolvem problemas usando conhecimento

específico sobre o domínio da aplicação� SEs são SBCs que resolvem problemas ordinariamente

resolvidos por humanos� Profunda interação com especialista

� SBCs podem ser classificados como SEs quando o desenvolvimento do mesmo é voltado para aplicações nas quais o conhecimento a ser manipulado restringe-se a um domínio específico e conta com um alto grau de especializaçao� Mas os termos SBC e SE são usados indistintamente na área

Page 39: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

SBC e Sistema EspecialistaExibem comportamento

inteligente através dahabilidade no uso de

heurísticas

Tornam explícito odomínio de conheci-

mento além desepará-lo do

sistema

Aplicam conhe-cimento especialista

na resolução deproblemas difíceis

do mundo real

Page 40: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Tipos de Aplicações de SBC� Classes de tarefas em que os SBCs tem sido aplicados

� Interpretação e análise de dados: processamento de imagens, reconhecimento de fala, análise de circuitos elétricos

� Classificação: diagnóstico de doenças, determinação de falhas em máquinas

� Monitoramento: usinas nucleares, tráfego aéreo� Planejamento: ações de robôs, experimentos em genética, ações

militares� Projeto: leiaute de circuitos e de computadores, tubulações de

aviões

� Surgimento de diversas ferramentas de auxílio àconstrução e execução de SBCs, linguagens de representação do conhecimento e literatura especializada

Page 41: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Número de SBCs desenvolvidos por ano

Page 42: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Percentagem de SBC por tipo de problema

Page 43: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Desempenho� Para fazer com que um SBC chegue perto

do desempenho de um especialista humano o sistema deve� ter grande quantidade de conhecimento

disponível� conseguir ter acesso a este conhecimento

rapidamente� ser capaz de raciocinar adequadamente com

este conhecimento

Page 44: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Áreas de aplicação

Page 45: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Estrutura Básica de um SBC

Page 46: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Componentes Básicos de um SBC� Sistemas Baseados em Conhecimento

� Conhecimento + Inferência

� SBC tem dois componentes principais� Uma Base de Conhecimentos que captura o

conhecimento específico do domínio� Um Motor de Inferência consistindo de

algoritmos para manipular o conhecimento representado na Base de Conhecimentos

Page 47: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Base de Conhecimentos

� O conhecimento é representado na Base de Conhecimentos usando uma das técnicas de Representação do Conhecimento como: regras de produção, redes semânticas, frames, scripts etc.

� SBCs também podem usar uma mistura de técnicas de representação do conhecimento: estes tipos de sistemas são chamados de Sistemas Híbridos

Page 48: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Certeza do Conhecimento� Conhecimento também pode incluir

probabilidades ou fatores de incerteza, os quais podem ser usados para� melhorar a corretude das tomadas de decisão� ajudar a resolver conflitos� melhorar recursos de explicação

� Técnicas para lidar com incerteza incluem� método Bayesiano� Teoria da Evidência de Dempster-Schafer� Teoria da Certeza (fatores de certeza)� Lógica Fuzzy

Page 49: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Motor de Inferência� Inclui um interpretador que aciona regras

de uma base de conhecimentos e executa itens da agenda

� Um agendador que mantém o controle da agenda

� Um verificador de consistência que tenta manter uma representação consistente da solução que surge

Page 50: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Inferência com Regras de Produção� Um Sistema Baseado em Conhecimento

que utiliza regras de produção faz uso de estratégias de raciocínio� Encadeamento progressivo (“forward

chaining”)� Encadeamento regressivo (“backward

chaining”)

Page 51: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Encadeamento Progressivo (1)� A direção de busca é dos dados para as

metas ou hipóteses� SE cond1 & cond2 & … & condN

ENTÃO Ação1� Direção da Busca: � O que podemos concluir a partir dos

dados?

Page 52: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Encadeamento Progressivo (2)� A parte esquerda da regra é comparada

com a descrição da situação atual contida na memória de trabalho

� As regras que satisfazem a descrição tem sua parte direita executada, o que em geral significa a introdução de novos fatos na memória de trabalho

� Problemas típicos: planejamento, projeto e classificação

Page 53: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Sistema em Cadeia Avante-1 (Integra imediatamente as conclusões)

Procedimento Estabelecer-um-Fato(Fato)Se Fato pertence à Base-de-Fatos então retornar “Sucesso”Retornar Executar-um-Ciclo(Base-de-Regras)

Procedimento Executar-um-Ciclo(Regras, Fato, Uma-Regra)Se Regras é vazio então retornar “Falha”Uma-Regra ← escolha de um elemento qualquer de Regras (p.ex. a 1a. encontrada)Regras ← Regras diminuída de Uma-RegraSe todos os fatos da premissa de Uma-Regra pertencem à Base-de-Fatos então

InícioSe a conclusão de Uma-Regra é Fato então

Retornar “Sucesso”Juntar a conclusão de Uma-Regra à Base-de-Fatos (se ela ainda não pertence)Base-de-Regras ← Base-de-Regras diminuída de Uma-RegraRetornar Executar-um-Ciclo(Base-de-Regras)Fim

Retornar Executar-um-Ciclo(Regras)* Base-de-Regras é uma variável global; Regras é uma variável local

Page 54: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Sistema em Cadeia Avante-2 (Faz o Encadeamento em Largura)Procedimento Estabelecer-um-Fato(Fato, Fatos-Novos)

Se Fato pertence à Base-de-Fatos então retornar “Sucesso”Retornar Executar-um-Ciclo(Base-de-Regras, lista vazia, Fato)

Procedimento Executar-um-Ciclo(Regras, Fatos-Novos, Fato, Uma-Regra)Se Regras é vazio então

Se Fatos-Novos está vazia então retornar “Falha”Base-de-Fatos ← Base-de-Fatos aumentada com Fatos-NovosRetornar Executar-um-Ciclo(Base-de-Regras, lista vazia, Fato)

Uma-Regra ← escolha de um elemento qualquer de Regras (p.ex. a 1a. encontrada)Regras ← Regras diminuída de Uma-RegraSe todos os fatos da premissa de Uma-Regra pertencem à Base-de-Fatos então

Se a conclusão de Uma-Regra é Fato entãoRetornar “Sucesso”

Juntar a conclusão de Uma-Regra à FatosNovos (se ela ainda não pertence)Base-de-Regras ← Base-de-Regras diminuída de Uma-Regra

Retornar Executar-um-Ciclo(Regras, FatosNovos, Fato)

* Base-de-Regras é uma variável global; Regras é uma variável local

Page 55: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Encadeamento Regressivo (1)� A direção da busca é das metas ou

hipóteses para os dados� SE cond1 & cond2 & … & condN

ENTÃO Ação1� Direção da busca: � É possível provar a hipótese a partir dos

dados?

Page 56: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Encadeamento Regressivo (2)� O sistema é controlado por uma lista de objetivos� Um objetivo pode ser satisfeito diretamente por

um elemento da memória de trabalho ou podem existir regras que permitam inferir algum dos objetivos correntes, isto é, contenham uma descrição deste objetivo em suas partes direitas

� As regras que satisfazem esta condição tem suas partes esquerdas adicionadas à lista de objetivos correntes

� Problemas típicos: diagnóstico

Page 57: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Sistema em Cadeia para Trás - 1 (cria subproblemas em largura)Procedimento Estabelecer-um-Fato(FATO)Se Fato pertence à Base-de-Fatos então retornar “sucesso”Retornar Estabelecer1(Base-de-Regras)Procedimento Estabelecer1(Regras)Se Regras é vazio então retornar “falha”Uma-Regra ← escolha de um elemento qualquer de Regras (p.ex. o 1o. encontrado)Regras ← Regras diminuído de Uma-RegraSe Uma-Regra comporta Fato como conclusão então

Se Estabelecer2(Uma-Regra) = “sucesso” então retornar “sucesso”Retornar Estabelecer1(Regras)Procedimento Estabelecer2(A-Regra)Fatos ← todos os fatos que compõe a premissa de A-RegraRetornar Estabelecer-Conjunção-de-Fatos(Fatos)Procedimento Estabelecer-Conjunção-de-Fatos(Os-Fatos)Se Os-Fatos é vazio então retornar “sucesso”Um-Fato ← escolha de um elemento qualquer de Os-Fatos (p.ex. o 1o. encontrado)Os-Fatos ← Os-Fatos diminuído de Um-FatoSe Estabelecer-Um-Fato(Um-Fato) = “falha” então retornar “falha”Retornar Estabelecer-Conjunção-de-Fatos(Os-Fatos)

Page 58: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Sistema em Cadeia para Trás - 2/1 (em largura, salvo se uma regra conclui diretamente)

Procedimento ESTABELECER-UM-FATO(FATO)Se FATO pertence à BASE-DE-FATOS então retornar “sucesso”CONFLITO ← todas as regras de BASE-DE-REGRAS que tem FATO como parte

conclusãoSe ESTABELECER-DIRETO1(CONFLITO) = “sucesso” então retornar

“sucesso”Retornar ESTABELECER1(CONFLITO)Procedimento ESTABELECER-DIRETO1(REGRAS)Se REGRAS é vazio então retornar “falha”UMA-REGRA ← escolha de um elemento qualquer de REGRAS (p.ex. a 1a.

encontrada)REGRAS ← REGRAS diminuída de UMA-REGRAFATOS ← todos os fatos que compõe a premissa de UMA-REGRASe FATOS está incluso na BASE-DE-FATOS então retornar “sucesso”Retornar ESTABELECER-DIRETO1(REGRAS)

Page 59: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Sistema em Cadeia para Trás - 2/2Procedimento ESTABELECER1(REGRAS)Se REGRAS é vazio então retornar “falha”UMA-REGRA ← escolha de um elemento qualquer de REGRAS (p.ex. a primeira

encontrada)REGRAS ← REGRAS diminuído de UMA-REGRASe ESTABELECER2(UMA-REGRA) = “sucesso” então retornar “sucesso”Retornar ESTABELECER1(REGRAS)Procedimento ESTABELECER2(A-REGRA)FATOS ← todos os fatos que compõe a premissa de A-REGRARetornar ESTABELECER-CONJUNÇÃO-DE-FATOS(FATOS)Procedimento ESTABELECER-CONJUNÇÃO-DE-FATOS(OS-FATOS)Se OS-FATOS é vazio então retornar “sucesso”UM-FATO ← escolha de um elemento qualquer de OS-FATOS (p. ex. o primeiro

encontrado)OS-FATOS ← OS-FATOS diminuído de UM-FATOSe ESTABELECER-UM-FATO(UM-FATO) = “falha” então retornar “falha”Retornar ESTABELECER-CONJUNÇÃO-DE-FATOS(OS-FATOS)

Page 60: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Linguagens de Representação do Conhecimento� Quadros (“frames”)

� Scripts

� Redes Semânticas

� Lógica

Page 61: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Componentes Adicionais� São necessários para interagir com o motor

de inferência e a base de conhecimentos� Usuário� Um modo dos usuários interagirem com o

sistema� Um lugar para armazenar o conhecimento

usado no trabalho� Uma maneira de se conseguir ajuda do

sistema

Page 62: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

SBC Básico

Page 63: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Usuário� SBCs são projetados para interagir com vários

tipos de usuários, agindo de diferentes maneiras conforme as circunstâncias

� Um leigo procurando ajuda direta - modo consultor

� Um estudante que quer aprender – modo instrutor

� Um construtor de SBC melhorando ou aumentando a

base de conhecimentos – modo acompanhante

� Um especialista – modo cooperativo

Page 64: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Memória de Trabalho� Armazena condições iniciais, hipóteses

intermediárias e decisões, e soluções finais� A informação é classificada em três tipos

� Planos (como resolver o problema)� Agenda (ações potenciais a serem

executadas)� Soluções (soluções candidatas e hipóteses

intermediárias)

Page 65: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Facilidades de Explicação� O módulo que facilita a explicação pode justificar

as conclusões e auxiliar a explicar o comportamento do SBC

� Isto é feito através de questões interativas� Por quê o sistema faz uma pergunta em particular?� Como o sistema alcança a conclusão correta?� Por quê uma certa alternativa é rejeitada?� Qual é a tática atual do sistema para alcançar a

conclusão?

Page 66: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Aquisição de Conhecimento� Como o sistema adquire conhecimento?

� Como o conhecimento é inicialmente trazido para dentro do sistema?

� Como o sistema adquire novos conhecimentos?

� Como este conhecimento pode ser testado?� Quais componentes necessitamos

acrescentar ao sistema para realizar estas funções?

Page 67: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

SBC Completo

Page 68: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Conhecimento Especialista� Adquirir conhecimento especialista para uma

base de um SBC envolve� obter informações dos especialistas e/ou fontes

documentais� classificação desta informação em declarativa

(factual) e procedural� codificação desta informação num formato utilizado

pelo SBC� checagem de consistência do conhecimento

codificado com o conhecimento existente no sistema

Page 69: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Engenheiro do Conhecimento� Estrutura a área do problema� Interpreta, traduz e integra conhecimento

especialista ao sistema� Traça analogias� Apresenta contra-exemplos� Traz à luz conceitos difíceis� Checa a consistência do conhecimento

Page 70: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Refinamento do Conhecimento� Futuros SBCs serão capazes de monitorar,

analisar, aprender e melhorar suas próprias performances, resultando numa base de conhecimento mais aprimorada e num raciocínio mais efetivo

� Nos SBCs atuais esta tarefa é do Engenheiro do Conhecimento

Page 71: Sistemas Especialistas - ppgia.pucpr.brfabricio/ftp/Aulas/Mestrado/IA/Nievola/IA-07... · sendo capaz de resolver um tipo particular de ... Esquemas de representação mistos ...

Prof. Júlio Cesar Nievola PPGIa - PUCPR

Sistemas de Produção� Vantagens

� Modularidade� Uniformidade� Naturalidade

� Desvantagens� Ineficiência em tempo de execução� Complexidade do fluxo de controle