1 Profa. Mara Abel Instituto de Informática - UFRGS [email protected] Sistemas de Conhecimento:...

53
1 Profa. Mara Abel Instituto de Informática - UFRGS [email protected] Sistemas de Conhecimento: Aplicação e desenvolvimento

Transcript of 1 Profa. Mara Abel Instituto de Informática - UFRGS [email protected] Sistemas de Conhecimento:...

Page 1: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

1

Profa. Mara Abel

Instituto de Informática - UFRGS

[email protected]

Sistemas de Conhecimento: Aplicação e desenvolvimento

Page 2: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

2

Nomes, nomes...

• Sistemas de IA

– Sistemas simbólicos, não algorítmicos que utilizam técnicas de

IA para solução de problemas

• Sistemas baseados em conhecimento

– Sistemas de IA que otimizam a busca da solução pela

aplicação de conhecimento explicitamente representado

• Sistemas Especialistas

– Sistemas baseados em conhecimento que resolvem

problemas que necessitam de altos níveis de perícia para sua

solução. O conhecimento é extraído de um especialista

humano.

Page 3: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

3

Mais nomes...

• Sistemas de conhecimento

– Termo mais atual. Refere-se a qualquer sistema

de informação que gerencie, armazene e/ou

aplique conhecimento explicitamente

representado.

– O conhecimento pode ser de fonte humana, da

organização, disperso, etc.

Page 4: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

4

Sistemas de Conhecimento

• Permitem

– Extrair o conhecimento de suas diferentes fontes,

tornando-o independente das pessoas

– Organizá-lo

– Distribuí-lo

– Multiplicá-lo

Page 5: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

5

Evolução dos Sistemas Especialistas

• Primeira fase – Reprodução da tarefa através de um sistema

simbólico; conhecimento embutido no código

• Segunda fase– Extração do conhecimento do especialista

reproduzindo com fidelidade em um sistema simbólico; conhecimento em um banco de conhecimento

• Terceira fase– Conhecimento pertence à organização, sendo

extraído, racionalizado e implementado através de diversos recursos da computação.

Page 6: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

6

Quando utilizar sistemas de

conhecimento?

Page 7: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

7

SE é solução quando...

• Risco de manter o conhecimento estratégico em poder das pessoas é muito grande

• Domínios são muitos simbólicos– Problema é descrito com variáveis não

quantificáveis: pequeno, inadequado, escuro, suficiente, quase, ao lado..

• Número muito grande de variáveis

Page 8: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

8

Benefícios da Organização

• Produtividade

• Preservação do capital intelectual

• Disseminação do conhecimento organizacional

• Qualidade da decisão

• Padronização do comportamento empresarial

• Treinamentos eficientes

Page 9: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

9

PRINCIPAIS APLICAÇÕES

Tarefas Analíticas

• Classificação

• Aconselhamento

• Diagnóstico

• Monitoração

• Previsão

Tarefas de Síntese

• Projeto e/ou configuração

• Modelagem

• Planejamento

• Escalonamento

• Atribuição

Page 10: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

10

Serviço de Atendimento ao Cliente

Problemas - Volume e complexidade crescentes

TécnicosTécnicos

Page 11: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

11

Autorização de crédito na American Express

Projeto de produtos na Nippon Steel

Suporte a clientes de produtos IBM e Compaq Computer

Roteamento de aeronaves na American Airlines

Utilização de mão-de-obra no Department of Defense (EUA)

Processamento de reivindicações de reembolso sob garantia na Ford

Aplicações

Page 12: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

12

Aplicações na Indústria

• Diagnóstico de falhas nos motores da Boeing e Airbus, e

também em metrôs e trens

• Suporte de vendas para circuitos integrados Analog

Devices

• Estimativa do custo de produção de peças em plástico-

Legrand

• Análise de cartas de telecomunicação e sistemas eletrônicos de testes de dados Ericsson

• Help Desk para suporte após venda de robôs -Sepro Robotique

Page 13: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

13

PetroGrapher

• Banco de dados inteligente para a gerência de descrições petrográficas para apoiar a exploração de petróleo

• Múltiplos modelos de conhecimento mapeados para banco de dados

• Realiza caracterização de reservatórios de petróleo segundo critérios geológicos

• Disponibiliza dados de reservatórios para consulta

Page 14: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

14

Celupa

• Monitoração do processo de produção de filtros de papel para café

• Sistema recebe dados analógicos, mede as diferenças do padrão e ajusta equipamento

• Conhecimento dos técnicos e do padrão exigido da empresa

Page 15: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

15

Engenharia de ConhecimentoCapturando conhecimento da

organização e das pessoas

Page 16: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

16

Objetivos da Engenharia de Conhecimento

• Engenharia de software para sistemas baseados em conhecimento

• Transformar o processo ad hoc de construir sistemas baseados em conhecimento em uma disciplina da engenharia– Métodos

– Linguagens

– Ferramentas

Page 17: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

17

Engenharia de Conhecimento

• Aquisição de conhecimento– Extração do conhecimento de suas diversas fontes

• Representação de conhecimento– Modelagem do domínio

• Validação do conhecimento– Verificação de consistência

• Explicação e justificativa– Recuperação e apresentação do raciocínio ao usuário

Page 18: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

18

Evolução

• Paradigma de transferência– Especialista detém o conhecimento que deve ser

extraído e colocado no sistema.

• Paradigma de modelagem – Organização detém o conhecimento

– Conhecimento existente nas pessoas, arquivos, sistemas deve ser extraído e modelado em um formato computacional

Page 19: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

19

Análise de Sistemas - Análise de Conhecimento

1. Necessidades do usuário

2. Informações e dados factuais, processos e procedimentos

3. Entradas, saídas e fluxo de dados

4. Dados quantitativos5. Técnicas estruturadas

6. Aspectos sintáticos do domínio e seus processos

1. Necessidades da perícia e do usuário

2. Aplicação cognitiva dos dados e da informação

3. Conceitos e estratégias de solução de problemas

4. Dados heurísticos e subjetivos

5. Aquisição cognitiva do conhecimento e técnicas de análise

6. Riqueza semântica do domínio e raciocínio de solução de problemas

Page 20: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

20

Abordagem de Modelagem

• Modelos formais

• Conceitos representados explicitamente

• Métodos de solução representados explicitamente e de modo abstrato

• Compartilhamento de conceitos e métodos

• Reuso do modelo

Page 21: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

21

Metodologias que Aplicam a Abordagem de Modelagem

• Tarefas genéricas

• Métodos de limitação de papéis

Componentes da perícia

• Ontologias e OntoLíngua

• VITAL

• PROTÉGÉ

• KADS e Common KADS .

Page 22: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

22

Metodologia Common KADSUtilizando um formalismo para modelar

conhecimento

Page 23: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

23

site: www.commonkads.uva.nl

Page 24: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

24

Princípios do Common KADS

• Princípio da Modelagem: um modelo é uma abstração de algum aspecto

da realidade. Modelar é construir uma boa descrição de alguns aspectos do

conhecimento, deixando de fora o resto. O modelo torna possível focar em

alguns aspectos e ignorar os outros.

• Princípio do nível de conhecimento: primeiro se concentre na estrutura

conceitual do conhecimento, deixando os aspectos de implementação para

mais tarde.

• Princípio da Tipagem do Conhecimento: modela-se o conhecimento

como um conjunto funcional bem estruturado, cujas partes apresentam papéis

bem definidos e especializados na solução de problemas.

• Processo em espiral: não tão rígido como o modelo em cascata nem tão

livre como a prototipação rápida

Page 25: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

25

O conjunto de modelos

modelo da organização

modelo da tarefa

modelo dos agentes

modelo do conhecimento

modelo de comunicação

modelo do projeto

contexto

conceito

artefato

Page 26: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

26

O Modelo do Conhecimento

Representando o conhecimento em um formalismo

Page 27: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

27

Modelo do Conhecimento: categorias de conhecimento

Conhecimento da Tarefa- Objetivos da tarefa- Decomposição da tarefa- Controle da tarefa

Conhecimento de inferência- Inferências básicas - Papéis

Conhecimento do Domínio - Tipos - Regras - Fatos

Diagnóstico(tarefa)

Hipótese Verificação(inferência) (inferência)

Sintoma Doença Teste

(tipo) (tipo) (tipo)

CO

NH

EC

IME

NT

OO

BJE

TIV

OS

ÕE

S

Page 28: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

28

Conhecimento do DomínioOntologias

• Especificação formal e explícita de um conjunto de

conceitos compartilhados

– Formal: processável por computador

– Explícita: conceitos e restrições previamente definidos

– Compartilhado: descreve um conhecimento consensual, que

é aceito por um grupo.

• Inclui conceitos, relações, regras e todos os tipos

estáticos.

Page 29: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

29

Ontologia

(i) Um vocabulário de conceitos, ou termos do

domínio;

(ii) a tipologia do domínio, que define tipos de dados e

restrições de valores que os termos devem

respeitar;

(iii) as relações entre conceitos, que formam as

taxonomias e partonomias daquele domínio, ou

outras associações entre conceitos.

Page 30: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

30

Construtores do Conhecimento do Domínio

• Conceitos: objetos ou entidades do domínio

– Definidos por seus atributos e tipos de valores

• Relações : classificação, especialização, agregação,

conjunto

• Regras : relações de dependências entre conceitos

do domínio ou entre expressões de domínio

Page 31: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

Conceitos

• Conceitos do domínio: objetos ou entidades

• os atributos ou propriedades desses objetos;

• as restrições que definem os conceitos e distinguem

a realidade deste domínio dos demais

• (Descrevem o que são as coisas do domínio)

Page 32: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

32

Conceitos

CONCEPT tanque-combustível

ATTRIBUTES

Status:{cheio, reserva, vazio}

Tipo-combustivel: combustível

END-CONCEPT tanque-combustível

VALUE-TYPE combustível

VALUE-LIST : {gasolina,álcool}

TYPE: ORDINAL;

END-VALUE-TYPE combustível;

Page 33: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

33

Relações do Domínio

Principalmente

• Classificação

• Especialização

• Agregação

• Associação de conjunto

Page 34: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

34

Base de Conhecimento

• Instâncias dos conceitos do domínio que descrevem a aplicação

• Não são instâncias do usuário

INSTANCE tanque-combustível

Status: vazio

Tipo-combustivel: gasolina

END-INSTANCE tanque-combustível

Page 35: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

35

Termos de Domínio

• Declarações sobre os conceitos do domínio ou qualquer combinação lógica dessas declarações

tanque-combustível.status = vazio;

bateria.status =baixa => força.status = desligado

farol.status = não-funciona E ignição.status = não-funciona E radio.status = não-funciona

Page 36: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

36

Tipo-regra: instâncias

Entrada-combustível.status = bloqueado

CAUSA

gasolina.status = falso;

bateria.status = baixa

farol.status = ligado

CAUSA

força.valor = desligado

Page 37: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

37

Modelo da Tarefa

• Define a relação entre os conceitos do domínios

necessários à aplicação e os métodos de solução de

problema abstratos necessários para obter a

solução.

• Realiza a instanciação dos métodos de solução de

problemas

Page 38: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

38

Modelo da Tarefa - Definido por ...

• Objetivo

• Papéis de entrada e saída

• Corpo da tarefa– sub-objetivos

– sub-tarefas

– estrutura de controle: em que ordem os passos da tarefa serão executados

Page 39: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

39

Inferências (primitivas)

• Abstrair

• Atribuir

• Classificar

• Comparar

• Cobrir

• Criticar

• Avaliar

• Gerar

• Agrupar

• Casar

• Modificar

• Operacionalizar

• Propor

• Prever

• Selecionar

• Ordenar

• Especificar

• Verificar

Page 40: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

40

Métodos de Solução de Problemas

• Componente dinâmico do conhecimento

• Modelo abstrato da inferência aplicável àquela classe de

problemas

• NÃO correspondem aos métodos de inferência por

busca, como raciocínio progressivo ou regressivo

• Generalização de um padrão de raciocínio específico,

mas não é um raciocínio genérico

Page 41: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

41

Tipos de MSPs

• Geração e teste

• Classificação heurística

• Diagnóstico sistemático

• Verificação

• Reparo

• Projeto

• Configuração

Page 42: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

42

obter

Exemplo: Diagnóstico

hipóteses

valor verdade

reclamação

observação

achadocobrir

especificar

verificar

hipótese

selecionar

Page 43: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

43

obter

Diagnóstico

hipóteses

valor verdade

reclamação

observação

achadocobrir

especificar

verificar

hipótese

selecionar

Rede com performance baixa

Processo em deadlock causa rede com performance baixa

Processo em deadlock?

•Processo em deadlock causa rede com performance baixa

•Alto consumo de memoria causa rede com performance baixa verdade

Causa: processo XYZ

Processo XYZ parado

Page 44: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

44

Construção do Modelo

Formalizando o conhecimento adquirido!!

Page 45: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

45

(i) (i) (i) (i)

Modelo Cognitivo

Modelo do Conhecimento

Abstração

Construção do Modelo

Page 46: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

46

Modelos KL (Knowledge Level)

O processo de modelagem

é

contínuo

cíclico

falho

Aproximação

da realidade !

Observações provocam modificações no modelo

e o modelo sugere novas observações!

Modelo deve ser continuamente

validado !

Page 47: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

47

Identificação do conhecimento

• Familiarização com o domínio– listar todas as fontes de conhecimento e

caracterizá-las,

– resumo dos textos-chave a respeito do problema ou tarefa,

– seleção e identificação de cenários representativos do domínio,

– coleta de casos, se houver.

Page 48: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

48

Identificação do conhecimento

• Listar componentes potenciais do modelo:

– identificar tipo da tarefa (diagnóstico,

monitoração?)

– identificar tipo do domínio (técnico,

excessivamente simbólico, muitas heurísticas?)

Page 49: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

49

Especificação do conhecimento

• Escolher a estrutura de inferência a partir de uma biblioteca disponível

– Verificar se as entradas e saídas desta estrutura são adequadas ao problema.

– Colocar “anotações” nos papéis do conhecimento relacionando-os às instâncias da base de conhecimento.

– Adaptar a estrutura para as necessidades do domínio, se necessário

Page 50: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

50

Especificação do conhecimento

• Construção do esquema inicial do domínio– Definir os conceitos e termos do domínio

– Construir as hierarquias e partonomias desses conceitos

– Utilizar os conceitos de abstração já definidos, especificando outros apenas quando a semântica for essencial.

Page 51: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

51

Especificação do conhecimento

• Completar a especificação do modelo do conhecimento.

– Pode-se partir da inferência e definir os conceitos (melhor),

– ou partir dos conceitos e identificar a inferência (possível quando casos foram obtidos na fase de aquisição).

Page 52: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

52

Validação do Conhecimento

• Validar o modelo do conhecimento

– Utilizar simulação no papel,

– Casos previamente reservados para teste,

– Ou protótipo construído apenas para validar a base.

• Completar a base de conhecimento

– Incluir instâncias necessárias para a execução da tarefa em questão.

Page 53: 1 Profa. Mara Abel Instituto de Informática - UFRGS marabel@inf.ufrgs.br Sistemas de Conhecimento: Aplicação e desenvolvimento.

53

Referências

Velde, W.V. Issues in knowledge level modeling. In: David, J. M.et al. Second generation expert systems. Berlin: Springer Verlag, 1993

Schreiber, G.; Akkermans, H.; Anjewierden, A.; Hoog, R.d.; Shadbolt, N.; Velde, W.v.d.; Wielinga, B. Knowledge engineering and management: the CommonKads methodology. Cambridge: The MIT Press, 2000.

Shadbolt, N., O'hara, K. and Crow, L. The experimental evaluation of knowledge acquisition techniques and methods: history, problems and new directions. International Journal of Human-Computer Studies, 51: 729-755, 1999.