aula 05 sistemas especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/ia06_2018.pdf ·...

52
Universidade do Sul de Santa Catarina Ciência da Computação Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Upload: dangdiep

Post on 09-Feb-2019

230 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Universidade do Sul de Santa CatarinaCiência da Computação

Técnicas de Inteligência Artificial

Aula 05Sistemas Especialistas

Max Pereira

Page 2: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Sistemas Especialistas

Page 3: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

• Pesquisadores de IA queriam desenvolver programas que pudessem “pensar”

• Ou seja, resolver problemas de uma maneira que seria considerada inteligente se fosse feita pelo homem

Page 4: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

S.E. ou Sistemas baseados em conhecimento

São sistemas que reproduzem o conhecimento de um especialista adquirido ao longo do tempo.

Portanto, o especialista é fundamental para fornecer informações específicas do domínio.

Page 5: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Sistemas especialistas:

Modelam o conhecimento humano em áreas específicas.

• Podem resolver problemas melhor que os humanos;

• aplicam o conhecimento humano a problemas bem compreendidos;

• são capazes de informar como chegaram a decisão;

Page 6: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

• Setor bancário e financeiro de um modo geral, para análise de crédito

• Análise química-qualitativa de minerais

• Projeto SINTA (Sistemas Inteligentes Aplicados): diagnóstico de pragas e doenças do cajueiro

• Gerência de redes

• Código Penal

Aplicações

Page 7: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

● Podem explicar seu raciocínio ou decisões sugeridas.

Ex.: Aprovação de crédito;

● Podem exibir um comportamento inteligente. Ex.:

Diagnóstico médico;

● Podem esboçar conclusões em relacionamentos

complexos. Ex.: Sugerir melhorias em processos

produtivos;

● Podem fornecer conhecimento portátil. Ex.:

Manutenção de equipamentos

Page 8: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Base de Conhecimento

Regras

Fatos

Memória de Trabalho

Motor de Inferência:Controle e Inferência

Subsistema de aquisição de conhecimento

Subsistema de explanação

Interface com o usuário

UsuárioEspecialista / Eng. Conhecimento

ARQUITETURA

Page 9: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

• Especialistas têm dificuldade em explicitar seu modo de raciocínio de uma maneira analítica

Page 10: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

• A base de conhecimento pode ser construída com diversos formalismos, estruturas e linguagens:

– Regras

– Frames ou quadros

– Redes semânticas

– Scripts ou roteiros

– Lógica

Page 11: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

• Campo de doenças infecciosas

• Projetado para auxiliar no diagnóstico e tratamento de meningite e bacteriemia (infecção bacteriana no sangue)

• Formalismo de Representação do conhecimento: regras

• Uso de fatores de certeza (probabilidade)

MYCIN

Page 12: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Se a infecção é meningite

E organismos não foram vistos na cultura

E o tipo de infecção é bacterial

E o paciente não tem lesões na cabeça

E a idade do paciente está entre 15 e 55 anos

ENTÃO

Os organismos que podem estar causando a infecção são diplococcus-pneumoniae (0.75) Eneisseria-meningitidis (0.74)

Page 13: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

• Mecanismo que procura as respostas na BC

• Busca as regras necessárias a serem avaliadas e ordenadas de uma maneira lógica

• Define a busca das regras, comparando a entrada do usuário com as regras da BC buscando “combinações”

• No Prolog este processo é denominado “matching” ou unificação

Máquina de Inferência

Page 14: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

• Regras

1. A Λ B → C

2. A → D

3. C Λ D → E

4. B Λ E Λ F → G

5. A Λ E → H

6. D Λ E Λ H → I

• Fatos

1. A

2. B

3. F

• Meta

• H

Forward Chaining

Fatos Objetivos Regras

Disparadas

A,B,F

Page 15: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

• Regras

1. A Λ B → C

2. A → D

3. C Λ D → E

4. B Λ E Λ F → G

5. A Λ E → H

6. D Λ E Λ H → I

• Fatos

1. A

2. B

3. F

• Meta

• H

Backward Chaining

Fatos Objetivos Regras

Disparadas

A,B,F

Page 16: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

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.)

Desenvolvimento

Page 17: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

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

Pontos positivos

Page 18: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

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

Pontos negativos

Page 19: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Expert Sinta

É um shell que permite construir SE

www.lia.ufc.br/~bezerra/exsinta

Como utilizar:

1. Estabelecer variáveis

2. Estabelecer objetivos (variáveis de saída)

3. Estabelecer interfaces (perguntas a serem feitas)

4. Criar as regras

Page 20: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Para que serve o Expert Sinta?

É uma ferramenta computacional:

utiliza técnicas de Inteligência Artificial

realiza a geração automática de sistemas especialistas.

Modelo de representação do conhecimento:

Regras de produção

Probabilidades

Page 21: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Para que serve o Expert Sinta?

Simplifica a implementação de sistemas especialistas

Utiliza máquina de inferência compartilhada

Possui construção automática de telas e menus do tratamento probabilístico das regras de produção

Utilização explicações sensíveis ao contexto da base de conhecimento modelada

Page 22: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Para que serve o Expert Sinta?

O usuário responde a uma sequência de menus, e o sistema se encarrega de fornecer respostas que se encaixem no quadro apontado pelo usuário.

Exemplos:

sistemas de diagnósticos médicos

configuração de redes de computadores

Page 23: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Planejando um sistema especialista

Os sistemas especialistas (SE) gerados no Expert SINTA seguem a arquitetura abaixo:

•base de conhecimentos representa a informação

(fatos e regras) que um especialista utiliza,

representada computacionalmente;

•editor de bases é o meio pelo qual a shell permite

a implementação das bases desejadas;

•máquina de inferência é a parte do SE

responsável pelas deduções sobre a base de

conhecimentos;

•banco de dados global são as evidências

apontadas pelo usuário do sistema especialista

durante uma consulta.

Page 24: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Utilizando regras de produção

As regras de produção são populares por possuírem as seguintes vantagens:

Modularidade: cada regra, por si mesma, pode ser considerada como uma peça de conhecimento independente;

Facilidade de edição (uma conseqüência da modularidade): novas regras podem ser acrescentadas e antigas podem ser modificadas com relativa independência;

Transparência do sistema: garante maior legibilidade da base de conhecimentos.

Page 25: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Regra de Produção

Page 26: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Regra de Produção

A estrutura de cada cauda (premissa) deve obedecer ao seguinte modelo:

<conectivo> <atributo> <operador> <valor>

Conectivo: NÃO, E, OU (une as premissas) Atributo: é uma variável capaz de assumir uma ou múltiplas

instanciações no decorrer da consulta à base de conhecimentos.

Operador: une o atributo e o valor da premissa que define o tipo de comparação a ser realizada. São operadores relacionais: =, >, <=, <>, entre outros;

Valor: é um item de uma lista a qual foi previamente criada e relacionada a um atributo.

Page 27: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Regra de Produção

A estrutura de cada cauda (premissa) deve obedecer ao seguinte modelo:

<atributo>=<valor><grau de confiança>

Atributo: é uma variável capaz de assumir uma ou múltiplas instanciações no decorrer da consulta à base de conhecimentos.

“=”: é um operador de atribuição (o novo valor substituíra o antigo ou será empilhado com os demais).

Valor: é um item de uma lista a qual foi previamente criada e relacionada a um atributo.

Grau de confiança: é uma porcentagem indicando a confiabilidade. O grau de confiança varia de 0% a 100%.

Page 28: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Base de Conhecimento

Page 29: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Base de Conhecimento

Regra 1. Se ASPECTO = nuvens então JOGAR = sim

Regra 2. Se ASPECTO = sol e UMIDADE = elevada então JOGAR = não

Regra 3. Se ASPECTO = sol e UMIDADE = normal então JOGAR = sim

Regra 4. Se ASPECTO = chuva e VENTO = fraco então JOGAR = não

Regra 5. Se ASPECTO = chuva e VENTO = forte então JOGAR = sim

Page 30: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Usando o Expert Sinta

1. Estabelecer variáveis

2. Estabelecer objetivos (variáveis de saída)

3. Estabelecer interfaces (perguntas a serem feitas)

4. Criar as regras

Page 31: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Criando uma nova base

Page 32: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Inserindo as variáveis

Page 33: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Incluindo uma variável

Page 34: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Incluindo uma variável

Page 35: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Incluindo valores para uma variável

Page 36: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Incluindo valores para uma variável

Page 37: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Inclusão de todas as variáveis

Page 38: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Definindo objetivo(s)

Page 39: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Definindo objetivo(s)

Page 40: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Construindo a interface (perguntas)

Page 41: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Definindo as regras(Base de Conhecimento)

Page 42: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Definindo as regras(Base de Conhecimento)

Page 43: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Definindo as regras(Base de Conhecimento)

Page 44: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Definindo as regras(Base de Conhecimento)

Definindo as regras

(Base de Conhecimento)

Page 45: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Definindo as regras(Base de Conhecimento)

Page 46: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Definindo as regras(Base de Conhecimento)

Page 47: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Definindo as regras(Base de Conhecimento)

Page 48: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Definindo as regras(Base de Conhecimento)

Page 49: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Visualizando as regras

Page 50: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Visualizando as regras

Page 51: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Executando (consulta)

Page 52: Aula 05 Sistemas Especialistas - paginas.unisul.brpaginas.unisul.br/max.pereira/IA06_2018.pdf · Técnicas de Inteligência Artificial Aula 05 Sistemas Especialistas Max Pereira

Executando (consulta)