1 introdução aos sistemas especialistas professor celso a a kaestner, dr. eng

Post on 17-Apr-2015

110 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

Introdução aosSistemas Especialistas

Professor Celso A A Kaestner, Dr. Eng.

2

Introdução• Os especialistas humanos são capazes de atingir

um alto desempenho na medida em conhecem muito bem as suas áreas de especialização.

• 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 no domínio desse problema.

3

Introdução• O conhecimento inerente a um Sistema

Especialista é um ponto chave na sua construção e é normalmente definido por engenheiros do conhecimento ou programadores.

• Para tal são consultados especialistas no domínio do problema e tenta-se codificar numa linguagem formal todo o conhecimento que estes adquiriam ao longo da sua experiência, nomeadamente heurísticas e truques.

4

Introdução• 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 resolução de classes específicas de problemas.

• São uma classe de programas na área da Inteligência Artificial e têm contribuído para o sucesso desta área através dos produtos comerciais desenvolvidos

5

Sistema Especialista

Programa Sistema Especialista

Representação do Conhecimento

Implícita Explicita

Realidade expressa em termos de

Modelos Matemáticos Modelos Cognitvos

Conhecimento traduzido em

Algoritmos Estruturas hierárquicas Redes Semânticas Regras Árvores de decisão Tabelas de decisão Redes de Inferência

O computador executa

Processamento numérico (cálculos)

Processamento simbólico (inferências)

Tipo de Resultados Numéricos Conhecimento

6

Categorias dos Problemas• Interpretação: formar conclusões a partir de muitos dados;

• Predição: projetar consequências de situações;

• Diagnóstico: determinar a causa de maus funcionamentos;

• Projeto: configurar componentes por forma a atingir um objetivo;

• Planejamento: sequência de passos para atingir um objetivo;

• Monitoração: comparar o comportamento de um sistema com aquilo que seria de esperar;

• Reparo: prescrever e implementar soluções para maus funcionamentos;

• Tutorial: detectar e corrigir deficiências em processos de aprendizagem;

• Controle: governar o comportamento de um sistema.

7

Tecnologia dos Sistemas Especialistas

Arquitetura

BASE DE CONHECIMENTO

DADOS ESPECÍFICOS DO CASO

MOTOR DE INFERÊNCIA

INTERFACE COM USUÁRIO:

PERGUNTA/RESPOSTAORIENTADO POR MENUSLINGUAGEM NATURAL

GRÁFICO

APRENDIZAGEM

EXPLANAÇÃO

ESPECIALISTA/ENG. CONHECIMENTO/

PROGRAMADOR SHELL

USUÁRIO

8

Quando desenvolver um SE

• O problema justifica o custo e esforço de construção do SE;

• Não existem especialistas disponíveis para resolver o problema;

• O problema pode ser solucionado através de raciocínio simbólico (próximo dos humanos);

• O problema não requer “senso comum”;

• O problema não pode ser resolvido através de métodos computacionais tradicionais;

• Existem peritos para cooperarem na construção do SE;

• O problema não é demasiado grande nem demasiado genérico.

9

Desenvolvimento de SE• Envolve o Engenheiro de Conhecimento/Programador o perito do

domínio do problema e o usuário final;

• Criação Rápida de Protótipos:

• Metodologia Centrada no Cliente;

• Sucessivas iterações nas quais os possibilidades são postas à prova pelos futuros usuários.

Correção

Programação

Modelação do Sistema

Aquisição do Conhecimento

10

Criação de SE• Linguagens de Programação: C++, LISP, PROLOG

• Shells:– Acadêmicos: MYCIN - EMYCIN, CLIPS GUIDON, TEIRESIAS,

VM, CENTAUR...

– Comerciais: Deciding Factor, Exsys, M-1, Savoir, Expert- Ease, Guru, Crystal...

• Ambientes de Programação (de IA):– ILOG...

• Aplicações:– Business Insight...

11

Raciocínio Baseado em Regras

• Representação do conhecimento para a resolução do problema através de regras do tipo “se...então...” (regras de produção)

• Exemplo:

Se (o motor de arranque não gira) e

(as luzes não acendem)

Então

(o problema está nos cabos da bateria)

12

Diagnóstico de Falhas em Automóveis(Raciocínio Para Trás - Orientado ao Objetivo)

Regra1:seo motor tem combustível, eo motor trabalhaentãoo problema é nas velas

Regra2: seo motor não trabalha, eas luzes não ligamentãoo problema é nos cabos da bateria

Regra3: seo motor não trabalha, eas luzes ligamo problema é no motor de arranque

Regra4: seo depósito tem combustível, eo carburador tem combustívelentão o motor tem combustível

Memória de Trabalho

O problema é X

Base de Conhecimento

13

Regra1:seo motor tem combustível, eo motor trabalhaentãoo problema é nas velas

Regra2: seo motor não trabalha, eas luzes não ligamentãoo problema é nos cabos da bateria

Regra3: seo motor não trabalha, eas luzes ligamo problema é no motor de arranque

Regra4: seo depósito tem combustível, eo carburador tem combustívelentão o motor tem combustível

Memória de Trabalho

O motor tem combustível

o motor trabalha

o problema é nas velas

Base de Conhecimento

Diagnóstico de Falhas em Automóveis(Raciocínio Para Trás - Orientado ao Objetivo)

14

Regra1:seo motor tem combustível, eo motor trabalhaentãoo problema é nas velas

Regra2: seo motor não trabalha, eas luzes não ligamentãoo problema é nos cabos da bateria

Regra3: seo motor não trabalha, eas luzes ligamo problema é no motor de arranque

Regra4: seo depósito tem combustível, eo carburador tem combustívelentão o motor tem combustível

Memória de Trabalho

O depósito tem combustível

o carburador tem combustível

O motor tem combustível

o motor trabalha

o problema é nas velas

Base de Conhecimento

Diagnóstico de Falhas em Automóveis(Raciocínio Para Trás - Orientado ao Objetivo)

15

• Neste ponto não existem regras cuja conclusão unifique com as frases na memória de trabalho;

• O sistema irá perguntar ao utilizador acerca da veracidade de:

– O depósito tem combustível?

– O carburador tem combustível?

– O motor está a trabalhar?

Diagnóstico de Falhas em Automóveis(Raciocínio Para Trás - Orientado ao Objetivo)

16

Grafo e/ou para a busca da soluçãoO problema é X

Regra1:o problema é nas velas

Regra1:o problema é nos cabos da bateria

Regra1:o problema é no motor de arranque

O motor tem combustível

O motor trabalha

O motor não trabalha

As luzes não acendem

O motor não trabalha

As luzes acendem

Regra4:o motor tem combustível

O depósito tem combustível

O carburador tem combustível

17

ExplanaçãoPerguntas: porquê (última a regra em prova)

como (sequência de passos para a conclusão)

Suponhamos as seguintes respostas às perguntas:O depósito tem combustível? SimO carburador tem combustível? SimO motor está trabalhando? Porquê?

Sistema:Foi estabelecido que1. O motor tem combustível,se2. O motor trabalhaentão

O problema é nas velas

18

O sistema chegou à conclusão: o motor tem combustível

Podemos perguntar: como o motor tem combustível?

Sistema:Isto resulta da regra 4:se

o depósito tem combustível, eo carburador tem combustível

entãoo motor tem combustível.

O depósito tem combustível foi confirmado pelo usuárioO carburador tem combustível foi confirmado pelo usuário

Explanação

19

Diagnóstico de Avarias em Automóveis(Raciocínio Para a Frente - Orientado aos Dados)

Regra1:seo motor tem combustível, eo motor trabalhaentãoo problema é nas velas

Regra2: seo motor não trabalha, eas luzes não ligamentãoo problema é nos cabos da bateria

Regra3: seo motor não trabalha, eas luzes ligamo problema é no motor de arranque

Regra4: seo depósito tem combustível, eo carburador tem combustívelentão o motor tem combustível

Memória de Trabalho

O motor tem combustível (é derivável)

O motor trabalha (não)

Base de Conhecimento

20

Regra1:seo motor tem combustível, eo motor trabalhaentãoo problema é nas velas

Regra2: seo motor não trabalha, eas luzes não ligamentãoo problema é nos cabos da bateria

Regra3: seo motor não trabalha, eas luzes ligamo problema é no motor de arranque

Regra4: seo depósito tem combustível, eo carburador tem combustívelentão o motor tem combustível

Memória de Trabalho

o carburador tem combustível (sim)

o depósito tem combustível (sim)

O motor tem combustível

o motor trabalha (sim)

o problema é das velas

Base de Conhecimento

Diagnóstico de Avarias em Automóveis(Raciocínio Para a Frente - Orientado aos Dados)

21

Grafo para a procura da soluçãoPrimeira iteração

Mem. Trabalho

Falha Falha Dispara

Mem. Trabalho...

O problema é nas velas

Regra1 Regra4Regra3Regra2

Regra1 Regra2 Regra3Regra4

Sai pois nenhuma regra unifica

Segunda iteração

22

Raciocínio Baseado em Modelos

• Em vez de se utilizarem heurísticas na resolução de um problema;

• A análise é fundamentada diretamente na especificação e funcionalidade do sistema físico (um modelo do sistema);

• Normalmente aplica-se no diagnóstico;

• O sistema é simulado assim como a estrutura e funcionamento das suas componentes;

• Exemplo de um circuito de somadores e multiplicadores.

23

Raciocínio Baseado em Casos

• Regras heurísticas e modelos teóricos são dois tipos de informação que os especialistas humanos utilizam para resolver problemas;

• Outra estratégia utilizada é o raciocínio baseado em casos (Case-Based Reasoning - CBR);

• Utiliza uma base de dados com soluções de problemas para resolver novas situações;

• Exemplos: medicina, justiça, programação de computadores, arquitetura, história...

24

Algoritmo de inferência

1. Procurar casos similares na memória,aqueles cuja solução pode ser aplicada à nova situação (características comuns)

2. Modificar um desses casos para aplicar à situação nova (alterar sequência dos passos que levam de um estado inicial a um estado final)

3. Aplicar o caso transformado ao novo problema4. Guardar a solução com uma medida do sucesso

ou insucesso para uso futuro.

25

Raciocínio Baseado em Regras

• vantagens:– modo direto– modular– desempenho– facilidades de explanação– as regras encaixam-se naturalmente na procura

num espaço de estados– o processo de inferência é fácil de seguir e

depurar– os passos para a solução do problema são

facilmente inspecionáveis– separação do controle e do conhecimento

26

Raciocínio Baseado em Regras

• desvantagens:– regras altamente heurísticas, falta de

profundidade– não manuseiam falta de informação ou

valores inesperados – a explicação baseia-se na prova e não nas

bases teóricas– muito específico na aplicação

27

Raciocínio Baseado em Casos• vantagens:

– codificação direta de conhecimento histórico (e.g. reparações)

– permite obter a solução a partir de um caso apropriado não necessitando de todo o processo de resolução do problema

– evita erros do passado e explora os sucessos (aprendizagem)

28

Raciocínio Baseado em Casos• vantagens:

– não é necessária uma análise extensiva do domínio do conhecimento

– aquisição de conhecimento e sua codificação relativamente fáceis

29

Raciocínio Baseado em Casos• desvantagens:

– explanação difícil– desempenho computacional (bases de dados

extensas)– difícil definir critérios de similaridade

30

Raciocínio Baseado em Modelos

• vantagens:– uso de conhecimento funcional/estrutural

– robustez (ao contrário do baseado em regras)

– algum conhecimento é transferível entre tarefas (teorias genéricas...)

– explicação causal

31

Raciocínio Baseado em Modelos

• desvantagens:– falta de conhecimento heurístico– requer um modelo explícito do domínio (nem

sempre é possível (e.g. finanças)– complexidade– situações excepcionais (um componente

avariado)

32

Outras possibilidades

• Raciocínio Baseado em Representações Híbridas– regras+casos

– regras+modelos

– modelos+casos

• Raciocínio com Incerteza ou Informação Incompleta:– Probabilidades

– Fatores de certeza

– Sistemas difusos

top related