engenharia do conhecimento
DESCRIPTION
Engenharia do Conhecimento. Ernesto Trajano Jacques Robin CIn-UFPE. Roteiro. O que é? Tipologia do conhecimento e do seu processamento Exemplo de metodologia: CommonKADS Processo simple para desenvolvimento de agente baseado em conhecimento Engenharia do conhecimento x de software - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/1.jpg)
Engenharia do Conhecimento
Ernesto TrajanoJacques Robin
CIn-UFPE
![Page 2: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/2.jpg)
Roteiro
O que é? Tipologia do conhecimento e do seu
processamento Exemplo de metodologia: CommonKADS Processo simple para desenvolvimento de agente
baseado em conhecimento Engenharia do conhecimento x de software Tópicos avançados
![Page 3: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/3.jpg)
O que é engenharia de conhecimento ?
Engenharia de agentes baseados em baseados em conhecimentoconhecimento Metodologias Processos Base de conhecimento e meta-conhecimento reutilizáveis
Principalmente define como adquirir, analisar, validar e manter uma base de conhecimento (BC)
Também pode definir mecanismos de inferência a serem utilizados com esta base
![Page 4: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/4.jpg)
Engenharia do conhecimento para agentes artificiais
Ask
Tell
Retract
Am
bie
nte
Sensores
Atuadores
Base deConhecimentoEspecializada
Máquina deInferênciaGenérica
Aquisição e Representação Conhecimento
Raciocínio Automátic
o
![Page 5: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/5.jpg)
Engenharia do conhecimentopara agentes humanos
Extrair, documentar e gerenciar o conhecimento estratégico das organizações.
Sistemas colaborativos. Repositórios de “expertise” (perícia).
![Page 6: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/6.jpg)
Multi-disciplinaridade
![Page 7: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/7.jpg)
Problemas
Informações e conhecimentos complexos são de difícil compreensão
Especialistas não são unânimes, nem precisos Variedade de representações:
texto gráficos, imagens heurísticas, regras
![Page 8: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/8.jpg)
Perspectivas
Transferência de conhecimento: transferência do que está da cabeça do especialista para
a base de conhecimento. assume que o conhecimento já existe e que ele precisa
apenas ser coletado. hipótese não é correta: conhecimento implícito. A máquina resolve como o especialista.
Modelagem do conhecimento: construção de modelos do problema Conseqüências:
modelo -> aproximação da realidade processo cíclico modelo pode estar sujeito a interpretações subjetivas, o que
pode levar a erros. A máquina resolve tão bem quanto o especialista.
![Page 9: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/9.jpg)
Engenharia de uma base de conhecimento
Elicitação do conhecimento
Formalização do conhecimento
Implementação do conhecimento
Nível do conhecimento:• Nos termos do especialista do domínio de aplicação• Linguagem natural, Notações gráficas ad-hoc
Nível semi-formal:• Notação textual estruturada padrão (XML) • Notação gráfica padrão (UML)• Validação com especialista
Nível formal:• Notação sem ambigüidade com semântica definida matematicamente (Lógica, Probabilidades)• Verificação de consistência
Nível da implementação:• Codificação em uma linguagem de programação• Teste de protótipo
![Page 10: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/10.jpg)
Engenharia de uma base de conhecimento
Elicitação do conhecimento
Formalização do conhecimento
Implementação do conhecimento
Nível do conhecimento:• Nos termos do especialista do domínio de aplicação• Linguagem natural, Notações gráficas ad-hoc
Nível semi-formal:• Notação textual estruturada padrão (XML) • Notação gráfica padrão (UML)• Validação com especialista
Nível formal:• Notação sem ambigüidade com semântica definida matematicamente (Lógica, Probabilidades)• Verificação de consistência
Nível da implementação:• Codificação em uma linguagem de programação• Teste de protótipo
![Page 11: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/11.jpg)
Engenharia de uma base de conhecimento
Elicitação do conhecimento
Formalização do conhecimento
Implementação do conhecimento
Nível do conhecimentoNível do conhecimento:• Nos termos do especialista do domínio de aplicação• Linguagem natural, Notações gráficas ad-hoc
Nível semi-formal:• Notação textual estruturada padrão (XML) • Notação gráfica padrão (UML)• Validação com especialista
Nível formal:• Notação sem ambigüidade com semântica definida matematicamente (Lógica, Probabilidades)• Verificação de consistência
Nível da implementação:• Codificação em uma linguagem de programação• Teste de protótipo
• Entrevistas estruturadas com especialista• Preparação de dados
• Ontologias • Linguagens semi-formais derepresentação do conhecimento
• Linguagens formais derepresentação do conhecimento• Aprendizagem de Máquina
• Compiladores• Máquinas de inferências• Aprendizagem de Máquina
![Page 12: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/12.jpg)
Tipologia do conhecimento
Tipos de conhecimento: léxico estrutural meta-conhecimento:
PSM qualitativo
![Page 13: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/13.jpg)
Conhecimento léxico
Conceitos mínimos: não podem ser decompostos termos atômicos, símbolos terminais, etc.
Exemplos: domínio é a medicina meningite cirurgia bactéria
![Page 14: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/14.jpg)
Conhecimento estrutural
Alguns conceitos podem depender de outros: para definir o tratamento de uma infecção é necessário
saber que bactéria a está causando
Formas de estruturação: regras, hierarquias (relações is-a), etc. sub-tipo(cirurgia, neurocirurgia).
![Page 15: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/15.jpg)
Meta-conhecimento comportamental: PSM
A partir de um estado E, certas ações (operações), levam ao objetivo O.
Operadores: podem ser generalizados em PSM, i.e., métodos/estratégias de resolução de problemas (problem solving methods).
Espécie de “padrão de projeto” para o processo de inferência.
Controla a execução de uma BC. Especifica:
inferências (ações) seqüência das inferências (seqüência de ações) conhecimento necessário em cada passo do processo
Em geral, estão organizados em bibliotecas.
![Page 16: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/16.jpg)
Exemplo de PSM
Classificação heurística
observações soluções
abstrair refinar
abstrações deobservações
abstrações desoluções
casamentoheurístico
![Page 17: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/17.jpg)
Meta-conhecimento qualitativo
Descreve alguma maneira de gerar um julgamento de valor sobre uma BC.
Exemplos: portabilidade, custo de desenvolvimento, custo de manutenção, segurança, privacidade, detecção de "anomalias", etc.
![Page 18: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/18.jpg)
Tipos de processamento
Atividades de processamento do conhecimento: Aquisição: como o
conhecimento é adquirido
Formalização do conhecimento adquirido
Operacionalização: como o conhecimento pode ser implementado
Manutenção: como o conhecimento pode ser mantido (coerência, refino, relevância, etc.)
BC
AQUISIÇÃO
FORMALIZAÇÃO
IMPLEMENTAÇÃO
MANUTENÇÃO
![Page 19: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/19.jpg)
Aquisição de conhecimento
Três formas de aquisição: manual semi-automática automática
![Page 20: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/20.jpg)
Aquisição manual
Brainstorming Entrevistas:
estruturadas ou não estruturadas
Self report Outros:
Observação e análise do domínio, leitura de documentos, etc.
especialista
Base de conhecimento
Engenheiro de conhecimento
documentação
codificação
explicitação
![Page 21: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/21.jpg)
Aquisição manual
Problemas: toma muito tempo requer a presença do especialista conhecimento possui muitas formas: teórico, procedural,
etc. com vários especialistas o problema tende a ser maior gerenciamento é complicado
Quando usar? identificação do conhecimento: brainstorming, entrevistas
não estruturadas especificação do conhecimento: self report refino do conhecimento: entrevista estruturada
![Page 22: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/22.jpg)
Aquisição semi-automática
Uso de ferramentas apóio à atividade de aquisição: editor, navegador, visualização da documentação, etc.
especialista Ferramentas interativas de entrevista
Base de conhecimento
Engenheiro de conhecimento
![Page 23: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/23.jpg)
Aquisição Automática
Aprendizagem de Máquina (Machine Learning)
Algoritmos de aprendizagem automática “induzem”as regras a partir de exemplos do domínio.
Aqui não há aquisição por parte do Engenheiro de Conhecimento
Isto não quer dizer o trabalho será menor!! É apenas de outro tipo
Casos e exemplos Indução automática Regras
![Page 24: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/24.jpg)
CommonKADS
Coleção de métodos estruturados para a construção de sistemas baseados em conhecimento
Pesquisa colaborativa na União Européia (+15 anos) Utiliza diagramas baseados em UML
Diagrama de classes Diagrama de estados Diagrama de atividades
Possui seis modelos Modelo organizacional Modelo de tarefas Modelo de agentes Modelo de comunicação Modelo de “expertises” Modelo de projeto
![Page 25: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/25.jpg)
Modelo organizacional
Descrição e análise da organização como um todo Representa diversos aspectos de uma
organização Contexto de negócio, metas, estratégia estrutura interna
função estrutura processos autoridade recursos (sistemas de apóio, equipamentos, ...)
Cada aspecto é modelado por um diagrama ou por uma descrição em linguagem natural
Possível problema: pode ser difícil definir o escopo do que é a "organização".
![Page 26: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/26.jpg)
Modelo organizacional
![Page 27: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/27.jpg)
Modelo de tarefas
Alguns processos identificados no modelo organizacional podem ser passíveis de automação.
Modelo de tarefas especifica estes processos em termos de: elementos internos:
fluxo de dados controle sub-tarefas restrições: pré e pós-condições
elementos externos: objetivo e importância agentes envolvidos conhecimento necessário outras competências recursos qualidade e “performance”
![Page 28: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/28.jpg)
Modelo de agentes
Mudança de perspectiva: antes, perspectiva do processo ou tarefa; agora, perspectiva dos agentes individuais
Nome agente imobiliário governamental
Organização departamento de habitação
Envolvido em verifica formulários e atribui residências
Comunica-se com banco de dados
Conhecimento critérios julgamento, regras de atribuição e de urgência
Outras competências lida com casos problemáticos e não convencionais
Responsabilidades e restrições
certifica-se que as pessoas são tratadas igualmente (sem favorecimentos). Já foi um problema no passado
![Page 29: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/29.jpg)
Modelo de comunicação
Especifica tipo de informação que é trocada entre os agentes como esta informação é trocada
Controle de alto nível sobre a execução de uma tarefa
Três níveis de modelagem: plano geral de comunicação transações individuais entre duas tarefas executadas por
diferentes agentes especificação dos detalhes da estrutura interna da
mensagem de uma transação
Problemas semelhantes aos de comunicação em sistemas multiagente.
![Page 30: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/30.jpg)
Modelo de comunicação
Task A2
Task A3
Task A4
Task B2
Task A5
Agent A(e.g. user)
Task B3
Agent B(e.g. system)
Task B4
Task A1
Dialogue
TransactionTr. 1
TransactionTr. 2
TransactionTr. 3
Task B1
TransactionTr. 4
![Page 31: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/31.jpg)
Modelo de “expertise”
Modelo do "expertise" (perícia) necessário para realizar uma determinada tarefa.
Na verdade é um conjunto de modelos Dividido em três componentes:
conhecimento declarativo: conhecimento do domínio. Quatro tipos:
conceitos: classes de objetos propriedades: atributos dos conceitos expressões: "a propriedade do conceito é valor" relações: ligações entre elementos do domínio
conhecimento procedural (inferência): modela o conhecimento sobre a inferência que deve ser feita para se resolver um problema
conhecimento da tarefa: especifica tarefas (sub-tarefas) e objetivos a serem alcançados. Representada por um gráfico hierárquico
![Page 32: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/32.jpg)
Modelo de projeto
Três estágios: projeto da aplicação : decomposição do modelo de
"expertise" em componentes. Decomposição pode ser funcional, OO ou orientada a algum paradigma da IA
projeto da arquitetura : decidir que técnicas e representações de IA são as mais adequadas para a implementação dos componentes
projeto da plataforma: decidir como implementar (linguagem) e em que hardware
![Page 33: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/33.jpg)
CommonKADS
Vantagem: grande quantidade de modelos favorece uma boa
compreensão do processo de engenharia como um todo
Desvantagens: que modelos são essenciais? os modelos não são formais
![Page 34: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/34.jpg)
Um Exemplo: Circuitos Digitais
Estabelecer o objetivo: determinar se o circuito está de acordo com sua
especificação (o circuito acima é um somador) responder a perguntas sobre o valor da corrente em
qualquer ponto do circuito
![Page 35: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/35.jpg)
Decida sobre o que falar Para alcançar o objetivo, é relevante falar sobre
circuitos, terminais, sinais nos terminais, conexões entre terminais
Para determinar quais serão esses sinais, precisamos saber sobre: portas e tipos de portas: AND, OR, XOR e NOT
Não é relevante falar sobre: fios, caminhos dos fios, cor e tamanho dos fios, etc.
![Page 36: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/36.jpg)
Decida qual vocabulário usar
Nomear os objetos e relações do domínio com funções, predicados e constantes constantes
distinguir as portas : X1, X2... distinguir os tipos de porta: AND, OR, XOR...
funções e predicados tipo de uma porta:
Tipo(X1) = XOR, Tipo(X1, XOR), XOR(X1)
indicar entradas e saídas:Out(1, X1), In(1, X2)
indicar conectividade entre portas:Conectado(Out(1, X1), In(1, X2))
![Page 37: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/37.jpg)
Codifique regras genéricas
(1) (1) Dois terminais conectados têm o mesmo sinal:t1, t2 Conectado(t1, t2) Sinal(t1) = Sinal(t2)
(2) O sinal de um terminal é On ou Off (nunca ambos)
t Sinal(t) = On Sinal(t) = Off, On Off
(3) Conectado é um predicado comutativo t1,t 2 Conectado(t1, t2) Conectado(t2, t1)
(4) Uma porta OR está On sse qualquer das suas entradas está On:
g Tipo(g) = OR Sinal(Out(1,g)) = On n Sinal(In(n,g))=On
(5) etc...
![Page 38: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/38.jpg)
Codifique a instância específica
Portas:
Tipo(X1) = XOR Tipo(X2) = XORTipo(A1) = AND Tipo(A2) = ANDTipo(O1) = OR
Conexões:
Conectado(Out(1,X1),In(1,X2))Conectado(Out(1,X1),In(2,A2))Conectado(Out(1,A2),In(1,O1)) . . .
![Page 39: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/39.jpg)
Proponha questões ao Procedimento de Inferência
Que entradas causam Out(1,C1) = Off e Out(2, C1) = On?
i1, i2, i3, o1, o2 Sinal(In(1,C1)) = i1 Sinal(In(2,C1)) = i2 Sinal(In(3,C1)) = i3 Sinal(Out(1,C1)) = o1 Sinal(Out(2,C1) = o2.
Resposta:(i1 = On i2 = On i3 = Off) (i1 = On i2 = Off i3 = On) (i1 = Off i2 = On i3 = On)
![Page 40: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/40.jpg)
Proponha questões ao Procedimento de Inferência
Quais são os conjuntos de valores possíveis para todos os terminais do circuito? i1, i2, i3 Sinal(In(1,C1)) = i1 Sinal(In(2,C1)) = i2 Sinal(In(3,C1)) = i3 Sinal(Out(1,C1)) = Off Sinal(Out(2,C1) = On
Resposta é o objetivo do agente!
![Page 41: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/41.jpg)
Engenharia de conhecimento x de software
Engenharia de software o cliente não é,
necessariamente, um especialista
o cliente define apenas o quê fazer
processamento divido em muitos componentes simples
componentes desenvolvidos pelo programador
Engenharia do conhecimento o cliente é um especialista o especialista define
também como fazê-lo processamento divido em
poucos componentes complexos
componentes geralmente reutilizados (bibliotecas)
![Page 42: Engenharia do Conhecimento](https://reader035.vdocuments.site/reader035/viewer/2022062807/5681502e550346895dbe23e5/html5/thumbnails/42.jpg)
Tópicos avançados em EC
Metodologias para sistemas multi-agentes CommoMAS, MAS-CommonKADS
Metodologias integrando aquisição manual com aprendizagem
Metodologias integrando EC como passo de ES Reuso de BC Geração automática de código:
Código da base de conhecimento Código da máquina inferência (ex, a partir de PSM)