Sistemas Inteligentes
Aula: Sistemas Baseados em Conhecimento
1
Plano de aula
Sistemas Baseados em Conhecimento

definição geral
“Tipos” de conhecimento
Como raciocinar?
Linguagens de representação do conhecimento
Engenharia do Conhecimento

muito de leve...
O problema do capitão West...
West é criminoso ou não?

“A lei americana diz que é proibido vender armas a
uma nação hostil. Cuba possui alguns mísseis, e todos
eles foram vendidos pelo Capitão West, que é
americano”
Como você resolveria este problema de
classificação?
Limitações da resolução de
problemas por Busca
Agentes de Busca são muito eficientes na solução de
problemas que podem ser formalizados por:

um estado inicial; ações; um conjunto de estados finais.
Porém, não são capazes de resolver problemas que exigem
raciocínio baseado em conhecimento sobre o mundo:

Porque seu modelo do mundo é pobre e o raciocínio é limitado
 e.g., diagnóstico médico, controle aeroespacial, prova de
teoremas, sistemas especialistas em geral,...
Como a máquina poderia resolver o
caso do cap. West?
Segundo a IA simbólica, é necessário



Identificar o conhecimento do domínio
Representá-lo em uma linguagem formal
Implementar um mecanismo de inferência para utilizá-lo
Questões-chave



Como adquirir esse conhecimento?
Como representá-lo adequadamente?
Como raciocinar com ele correta e eficientemente?
A) Todo americano que vende uma arma a uma nação hostil é criminoso
B) Todo país em guerra com uma nação X é hostil a X
C) Todo país inimigo político de uma nação X é hostil a X
D) Todo míssil é um arma
E) Toda bomba é um arma
F) Cuba é uma nação
G) USA é uma nação
H) Cuba é inimigo político dos USA
I) Irã é inimigo político dos USA
novo
conhecimento
J) West é americano
K) Existem mísseis em Cuba
L) Os mísseis de Cuba foram vendidos por West
M) Cuba possui um míssel M1
N) M1 é um míssil
O) M1 é uma arma
P) Cuba é hostil aos USA
Q) M1 foi vendido a Cuba por West
R) West é crimonoso
- de K
- de K
- de D e N
- de F, G, H e C
- de L, M e N
- de A, J, O, P e Q
conhecimento
do problema
conhecimento prévio
Solucionando o caso do cap. West (Linguagem Natural)
Sistemas Baseados em Conhecimento
Possuem dois componentes principais (separados):


Base de Conhecimento
Mecanismo de Inferência
Base de Conhecimento (BC):

Contém sentenças em uma Linguagem de Representação de
Conhecimento “tratável” pelo computador
 representações de regras e fatos
 ex., " x Míssil(x) Arma(x)
Mecanismo (máquina) de Inferência associado:

responsável por inferir, a partir do conhecimento da BC, novos fatos
ou hipóteses intermediárias/temporárias
 ex., M1 é uma arma
Arquitetura dos Sistemas BC
Memória de Trabalho
Base de Regras
Conhecimento volátil
Conhecimento Permanente
• fatos
• regras de produção
Meta-conhecimento
• estratégias para resolução de
conflito
Mecanismo
de
Inferência
• descrição da instância do
problema atual
• objetivos atuais
• resultados intermediários
Conjunto de conflito
conjunto de possíveis
regras a serem disparadas
Tipos de Conhecimento na Máquina
9
“Tipos” de Conhecimento











Estático x Dinâmico
Em intenção x Em extensão
Declarativo x Procedimental
Do problema x Meta-conhecimento
Diagnóstico x Causal
Dedutivo x Terminológico
Síncrono x Diacrônico
Certo x Incerto
Preciso x Vago
De senso comum x Especialista
Explicito x Implícito
Conhecimento em Intenção x Extensão
Conhecimento em intenção

Definição do conceito (ou ação), normalmente usando
regras, em termos de sua função, estrutura, etc.
 ex. " X, cadeira(X)  assento(X).
 cadeira: serve para sentar, tem assento, ...
 ex. " X, tem-dengue(X)  tem-dores(X)  tem-febre(X).
 quem tem dengue tem febre, dores, ...
Conhecimento em extensão



Instâncias do conceito
ex. cadeira 1, cadeira 21, cadeira 613, ....
ex. os sintomas de dengue de João, de Zé, ...
Conhecimento Declarativo X Procedimental
Conhecimento representado de modo:
 Procedimental
 fatos e seqüências de instruções para manipular esses
fatos


ex.: como desmontar uma bicicleta
Declarativo
 representação descritiva dos fatos, relacionamentos e
regras


as partes de uma bicicleta e seus relacionamentos
o pai do pai é o avô
Conhecimento Estático x Dinâmico
Conhecimento estático:


Aquele que já existe na BC e não mudará
Hierarquia de conceitos (classes de fatos)
 ex, " X, gato(X)  felino(X).

Restrições de integridades
 ex, " X,Y estrela-dalva(X)  vênus(Y)  X = Y.

Regras de dedução sobre o domínio
 ex, " X,Y chefe(X,Y)  empregado(Y,X)

Meta-regras para controle e explicação do raciocínio
 ex. preferir ir para direita caso tenha mais de uma
escolha
Conhecimento Estático x Dinâmico
Conhecimento dinâmico:


só existe durante a resolução de uma instância particular do
problema
descrição da instância, hipóteses atuais, fatos novos,...
Senso Comum
Classe de problema
Instância do problema
Estático
Estático
Dinâmico
" x Míssil(x)
Arma(x)
"x
InimigoPolítico(x,USA)
Hostil(x)
Americano (West)
Meta-conhecimento
Regras sobre “como” manipular as regras de
conhecimento que estão em uma base

Exemplos:
 Se R1 e R2 podem ser disparadas, escolha sempre R1
 Ordem da regra na BC
 Se R1 e R2 podem ser disparadas e R1 foi disparada mais
recentemente que R2, escolha R2
Categorias de Raciocínio
16
Categorias de Raciocínio
Dedução


fatos + regras de inferência => novos fatos
causa -> efeito
 Se há fogo (causa), há fumaça (efeito). Aqui tem fogo, logo, aqui
tem fumaça (novo fato)

É o único tipo de inferência que preserva a verdade
 truth-preserving
Abdução

inverso da dedução: do efeito para a causa
 Se há fumaça, há fogo. Eu vi fumaça (efeito), logo aqui tem fogo
(causa)
 Ex. Se há febre e dor, a doença é dengue

Este tipo de inferência preserva a falsidade
Categorias de Raciocínio
Indução

parte dos fatos para gerar regras
 fato1 + fato2 + fato 3 => regra!
 ex. Sr. Antônio, assim como D. Maria, tem dor de cabeça
e dengue, então todo mundo que tem dengue, tem dor
de cabeça

Transforma conhecimento em extensão em
conhecimento em intenção!!
Categorias de Raciocínio
Raciocínio Analógico


fatos + similaridades + regras de adaptação +...
a partir de fatos (conhecimento em extensão), a da
similaridade entre eles, resolve o problema sem gerar
regras
 ex.: Naquele caso de dengue, eu passei aspirina e não
deu certo, logo vou evitar receitar aspirina neste caso
semelhante
Raciocínio na Máquina
Dedução e Abdução (via dedução)

usadas nos sistemas baseados em conhecimento declarativo
Indução e Analogia

usadas na aprendizagem automática
Dedução: dois grandes grupos


Lógica e afins
Tratamento de incerteza
 Probabilístico ou difuso (fuzzy)
Como Representar Conhecimento
e Raciocinar?
Linguagens de Representação
do Conhecimento
21
Linguagens de Representação
do Conhecimento
Uma Linguagem de Representação do Conhecimento
(LRC) é definida por:
1) uma sintaxe, que descreve as configurações que podem constituir
sentenças daquela linguagem
2) uma semântica, que liga cada sentença aos fatos do mundo que
ela representa
 cada sentença faz uma afirmação a respeito do mundo
 o Agente BC acredita nas sentenças armazenadas na sua base
de conhecimento
Toda LRC deve ter um mecanismo de inferência associado =>
raciocínio
Representação & Raciocínio
Raciocínio

processo de construção de novas sentenças a partir de sentenças existentes
Raciocínio plausível (sound):


garante que as novas sentenças representam fatos que se seguem dos fatos
representados pelas sentenças existentes na BC.
implementa a relação de “implicação” entre sentenças
fatos
segue-se
fatos
Mundo
Representação
sentenças
implica
sentenças
Linguagens de Representação
do Conhecimento
Linguagens de programação:

são precisas, porém não são suficientemente expressivas
Linguagens naturais:

são muito expressivas, porém são ambíguas
Linguagens de representação de conhecimento:


utilizadas para expressar as sentenças das BC
Suficientemente expressivas e não-ambíguas
A) Todo americano que vende uma arma a uma nação hostil é criminoso
B) Todo país em guerra com uma nação X é hostil a X
C) Todo país inimigo político de uma nação X é hostil a X
D) Todo míssil é um arma
E) Toda bomba é um arma
F) Cuba é uma nação
G) USA é uma nação
H) Cuba é inimigo político dos USA
I) Irã é inimigo político dos USA
novo
conhecimento
J) West é americano
K) Existem mísseis em Cuba
L) Os mísseis de Cuba foram vendidos por West
M) Cuba possui um míssel M1
N) M1 é um míssil
O) M1 é uma arma
P) Cuba é hostil aos USA
Q) M1 foi vendido a Cuba por West
R) West é crimonoso
- de K
- de K
- de D e N
- de F, G, H e C
- de L, M e N
- de A, J, O, P e Q
conhecimento
do problema
conhecimento prévio
Solucionando o caso do cap. West (Linguagem Natural)
A) " x,y,z Americano(x) Arma(y) Nação(z) Hostil(z) Vende(x,z,y)
 Criminoso(x)
B) " x Guerra(x,USA) Hostil(x)
C) " x InimigoPolítico(x,USA) Hostil(x)
D) " x Míssil(x) Arma(x)
E) " x Bomba(x) Arma(x)
F) Nação(Cuba)
G) Nação(USA)
H) InimigoPolítico(Cuba,USA)
I) InimigoPolítico(Irã,USA)
novo
conhecimento
J) Americano(West)
K) $ x Possui(Cuba,x) Míssil(x)
L) " x Possui(Cuba,x) Míssil(x)  Vende(West, Cuba,x)
M) Possui(Cuba,M1)
N) Míssil(M1)
O) Arma(M1)
P) Hostil(Cuba)
Q) Vende(West,Cuba,M1)
R) Criminoso(West)
conhecimento
do problema
conhecimento prévio
Solucionando o caso do cap. West (em LPO)
- Eliminação: quantificador existencial e
conjunção de K
- Modus Ponens a partir de D e N
- Modus Ponens a partir de C e H
- Modus Ponens a partir de L, M e N
- Modus Ponens a partir de A, J, O, F, P e Q
Observações sobre
Linguagem e Raciocínio
Separação entre controle e conhecimento


Seja lá qual for a categoria do raciocínio, haverá sempre
um motor geral que o implementará
A tarefa do engenheiro de conhecimento é “apenas”
codificar corretamente o conhecimento
Critérios para avaliação das LRC
Expressividade

o que é possível dizer facilmente na linguagem?
Inferência disponível

que tipo de inferência é possível fazer na linguagem?
Corretude

a inferência é plausível? A semântica é bem definida?
Eficiência

a inferência se realiza em um tempo razoável?
Critérios para avaliação das LRC
Modularidade:

é fácil identificar e reutilizar partes do conhecimento?
Legibilidade:

é fácil de ler e entender o que está escrito?
Eficiência aquisicional:

é fácil adicionar conhecimento?
Engenharia do Conhecimento
Muito de leve...
30
Engenharia do Conhecimento - EC
31
Engenharia do Conhecimento - EC
Área de pesquisa preocupada com

desenvolver Métodos, Linguagens e Ferramentas
adequados para o desenvolvimento de sistemas BC
Foco principal:


como adquirir e analisar conhecimento
como validar e manter uma Base de Conhecimento
Construção da Base de Conhecimento

32
Processo de acumular, transferir e transformar
alguma
EC - Definições
Engenheiro de conhecimento

Guia a aquisição, a criação da representação do
conhecimento especializado, a implementação e o
refinamento do SBC
Expertise

conhecimento especializado adquirido por longo
treinamento, leitura e experiência
Especialista (Expert )

Quem possui conhecimento especializado , experiência e
métodos, e a habilidade de aplicá-los para dar
33
“conselhos” e resolver problemas
Desenvolvimento de SBCs
34
Etapas de desenvolvimento de SBCs
Nível de
Conhecimento
Nível Lógico
Nível de
Implementação
AQUISIÇÃO
FORMALIZAÇÃO
IMPLEMENTAÇÃO
REFINAMENTO
Linguagem natural
Linguagens de
representação do
conhecimento
Linguagens de
programação
BC
Etapas do desenvolvimento de SBCs
1. Aquisição (elicitação) do conhecimento


Identificação do conhecimento a adquirir
Registro do conhecimento em linguagem natural ou
usando alguma notação gráfica
36
Etapas do desenvolvimento de SBCs
2. Formalização da BC

Nível semi-formal via





Notação textual estruturada padrão (XML)
Notação gráfica padrão (UML)
Ontologias
Objetivo: validação com especialista
Nível formal



Via linguagens formais (e.g., LPO)
Notação sem ambigüidade com
Objetivo: verificação de consistência
37
Etapas do desenvolvimento de SBCs
3. Implementação da BC



Uso (ou criação) de um sistema (máquina de inferência)
capaz de ler a BC e realizar dedução usando linguagens
de programação
Implementação da Interface
Teste de protótipo
4. Validação e Refinamento


Validação
Refinamento
38
Etapas de desenvolvimento de SBCs
Veremos a seguir


Aquisição do conhecimento
Formalização do conhecimento
 Ontologias

Nível “semi”-formal
39
Aquisição do Conhecimento
O gargalo na construção dos SBCs
40
Aquisição do Conhecimento
Principais fases da aquisição

Identificar características do problema
 Do domínio da aplicação

Isolar e representar os conceitos principais e suas
relações
 através de uma Ontologia, por exemplo

Identificar inferências sobre estes conceitos (regras)
O conhecimento pode originar-se de várias
fontes:

especialistas, livros e documentos, filmes, etc.
41
Gargalo na Aquisição do Conhecimento
A maior parte do conhecimento está na cabeça
dos especialistas...
Especialistas

têm muito conhecimento empírico
 Difícil de ser capturado e representado formalmente




são “caros” mas não sabem de tudo!
têm dificuldade de verbalizar sob pressão
usam vocabulário próprio (jargão)
Podem expressar conhecimento incorreto e incompleto
42
Como minimizar o gargalo da Aquisição?
Métodos de aquisição

Três categorias
 Manual
 Semi-automático
 Automático
43
Método de Aquisição Manual
Entrevistas

estruturadas ou não estruturadas
Tracking methods

análise de protocolos e observação
especialista
Engenheiro de
conhecimento
codificação
documentação
44
Base de
conhecimento
Métodos de Aquisição Semi-automática
Baseado em ferramentas de ajuda ao especialista e ao
engenheiro de conhecimento

Repertory grid analysis
especialista
Ferramentas interativas
de entrevista
Base de
conhecimento
Engenheiro de conhecimento
45
Métodos de Aquisição Automática
Aprendizado de máquina

Machine learning
Casos e exemplos
Indução automática
Regras
46
Próxima aula
Sistemas baseados em Regras de Produção
Download

Sistemas baseados em conhecimento