26
DSC/CCT/UFCG Inteligência Artificial Inteligência Artificial I I Representação do Representação do Conhecimento (Parte II) Conhecimento (Parte II) Prof. Prof. a a Joseana Macêdo Fechine Joseana Macêdo Fechine [email protected] [email protected] Carga Horária: 60 horas Universidade Federal de Campina Grande Universidade Federal de Campina Grande Departamento de Sistemas e Computação Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Curso de Bacharelado em Ciência da Computação Computação

DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine [email protected]

Embed Size (px)

Citation preview

Page 1: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

DSC/CCT/UFCG

DSC/CCT/UFCG

Inteligência Artificial IInteligência Artificial I

Representação do Representação do Conhecimento (Parte II)Conhecimento (Parte II)

Prof.Prof.aa Joseana Macêdo Fechine Joseana Macêdo Fechine

[email protected]@dsc.ufcg.edu.br

Carga Horária: 60 horas

Universidade Federal de Campina GrandeUniversidade Federal de Campina Grande

Departamento de Sistemas e Computação Departamento de Sistemas e Computação

Curso de Bacharelado em Ciência da Curso de Bacharelado em Ciência da ComputaçãoComputação

Page 2: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

2DSC/CCT/UFCGDSC/CCT/UFCG

Representação do Conhecimento

Tópico

Lógica de Predicados

Page 3: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

3DSC/CCT/UFCGDSC/CCT/UFCG

Representação do Conhecimento

A Inteligência Artificial (IA) deve ter mecanismos para a representação de fatos.

Representação do conhecimento do mundo que um sistema de IA necessita - uso da lógica proposicional.

Representa-se os fatos do mundo real por meio das fórmulas bem formadas ("fbf's") ou proposições lógicas.

A prova de teoremas foi um dos primeiros domínios a explorar as técnicas de IA.

Page 4: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

4DSC/CCT/UFCGDSC/CCT/UFCG

Representação do Conhecimento

É importante lembrar que:

Lógica proposicional - O termo proposição recobre a idéia de asserção formulada seguindo uma certa sintaxe e susceptível de ser avaliado "verdadeiro" ou "falso" por um universo dado.

Lógica de predicados de primeira ordem - pode ser vista como uma extensão da lógica das proposições. Munida de propriedades de base da lógica das proposições,

permite introduzir elementos gerais chamados "variáveis“ (normalmente chamadas u, v, …, z), que podem ser quantificadas pelo quantificador universal (qualquer que seja) ∀ou pelo quantificador existencial (existe).∃

Page 5: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

5DSC/CCT/UFCGDSC/CCT/UFCG

Representação do Conhecimento

É importante lembrar que:

A noção de primeira ordem é associada ao fato das variáveis poderem ser quantificadas, mas não os predicados nem as funções.

Page 6: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

6DSC/CCT/UFCGDSC/CCT/UFCG

Simbologia a ser utilizada:

“” (implicação) “ ” (negação) “ ” (disjunção) “ ” (conjunção) “ ” (quantificação universal = "para todos") “ ” (quantificação existencial = "existe").

Representação do Conhecimento

Page 7: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

7DSC/CCT/UFCGDSC/CCT/UFCG

Representação do Conhecimento

Objetivo: Explorar o uso da lógica de predicados como uma forma para representar o conhecimento.

Considere o seguinte conjunto de sentenças:1. Marco era um homem.2. Marco era um pompeiano.3. Todos os pompeianos eram romanos.4. César era um soberano.5. Todos os romanos ou eram leais a César ou o odiavam.6. Todos são leais a alguém.7. As pessoas somente tentam assassinar soberanos aos

quais elas não são leais.8. Marco tentou assassinar César.

Page 8: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

8DSC/CCT/UFCGDSC/CCT/UFCG

Representação do Conhecimento Representação dos fatos descritos por estas sentenças

a partir de um conjunto de fbf's na lógica de predicados:

1. Marco era um homem.

homem(Marco)

2. Marco era um pompeiano.

pompeiano(Marco)

3. Todos os pompeianos eram romanos.

4. César era um soberano.

soberano(Cesar)

romano(X)no(X) X: pompeia

Page 9: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

9DSC/CCT/UFCGDSC/CCT/UFCG

Representação do Conhecimento

5. Todos os romanos ou eram leais a César ou o odiavam.

6. Todos são leais a alguém.

7. As pessoas somente tentam assassinar soberanos aos quais elas não são leais.

8. Marco tentou assassinar César.

esar) odiar(X,Csar) leal(X,CeX) X: romano(

Y)Y: leal(X,X:

leal(X,Y)(X,Y) ssinartentarassa X) Y: pessoa(X:

Cesar)co,ssinar(Martentarassa

Page 10: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

10DSC/CCT/UFCGDSC/CCT/UFCG

Representação do Conhecimento

Deste exemplo simples, é possível perceber três pontos importantes na conversão de sentenças do português em fórmulas da lógica: Muitas sentenças do português são ambíguas (por exemplo, 5, 6

e 7). A escolha da interpretação correta pode ser difícil.

Existe freqüentemente uma escolha de como representar o conhecimento. Representações simples são desejáveis mas elas podem impedir certos tipos de raciocínio.

Mesmo em situações muito simples, um conjunto de sentenças não parece conter toda a informação necessária para raciocinar sobre o tópico em questão.

Para ser capaz de usar um conjunto de fórmulas efetivamente, é muitas vezes necessário ter acesso a um outro conjunto de fórmulas que representam fatos considerados óbvios demais para mencionar (senso comum).

Page 11: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

11DSC/CCT/UFCGDSC/CCT/UFCG

Representação do Conhecimento

Como responder à questão:

“Marco era leal a César?”

Page 12: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

12DSC/CCT/UFCGDSC/CCT/UFCG

Representação do Conhecimento

Parece que usando 7 e 8, dá para concluir que Marco não era leal a César (ignorando a distinção entre passado e presente).

Há a necessidade de inclusão de conhecimento de senso comum:

9. Todos os homens são pessoas.pessoa(X)) (homem(X) X

Page 13: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

13DSC/CCT/UFCGDSC/CCT/UFCG

Engenharia de Conhecimento em Lógica de Primeira Ordem

O processo de engenharia de conhecimento

1. Identificar a tarefa

2. Agregar o conhecimento relevante

3. Definir um vocabulário de predicados, funções e constantes

4. Codificar o conhecimento geral sobre o domínio

5. Codificar uma descrição da instância específica do problema

6. Formular consultas ao procedimento de inferência e obter respostas

7. Depurar a base de conhecimento

Page 14: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

14DSC/CCT/UFCGDSC/CCT/UFCG

Engenharia de Conhecimento em Lógica de Primeira Ordem

Exemplo: O domínio dos circuitos eletrônicos

Adaptado do livro Artificial Intelligence: A Modern Approach by Stuart Russell and Peter Norvig, 2003.

Page 15: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

15DSC/CCT/UFCGDSC/CCT/UFCG

Engenharia de Conhecimento em Lógica de Primeira Ordem

O domínio dos circuitos eletrônicos

1. Identificar a tarefa O circuito realmente efetua soma de modo apropriado? Se todas as entradas estão em nível alto, qual será a

saída da porta A2? O circuito contém laços de realimentação?

2. Agregar conhecimento relevante Os sinais fluem pelos fios até os terminais de entrada das

portas, e cada porta produz um sinal no terminal de saída que flui por outro fio.

Como funcionam as portas AND, OR, XOR ...

Page 16: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

16DSC/CCT/UFCGDSC/CCT/UFCG

Engenharia de Conhecimento em Lógica de Primeira Ordem

O domínio dos circuitos eletrônicos

3. Definir um vocabulário Portas: X1, X2, ...

Tipo(X1) = XOR, ...

Entrada(1, X1)

Conectados(Saída(1, X1), Entrada(1, X2)), ...

Page 17: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

17DSC/CCT/UFCGDSC/CCT/UFCG

Engenharia de Conhecimento em Lógica de Primeira Ordem

O domínio dos circuitos eletrônicos

4. Codificar o conhecimento geral do domínio

Se dois terminais estão conectados, eles têm o mesmo sinal:

O sinal em todo terminal é 1 ou 0 (mas não ambos):

Conectados é um predicado comutativo:

)()(),(, 212121 tSinaltSinalttConectados tt

01

0)(1)(

tSinal tSinal t

),(),(, 122121 ttConectadosttConectados tt

Page 18: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

18DSC/CCT/UFCGDSC/CCT/UFCG

Engenharia de Conhecimento em Lógica de Primeira Ordem

O domínio dos circuitos eletrônicos

4. Codificar o conhecimento geral do domínio

A saída de uma porta OR é 1 se e somente se qualquer de suas entradas é 1:

A saída de uma porta AND é 0 se e somente se qualquer de suas entradas é 0:

1)),((1)),1((

)(

gnEntradaSinal ngSaídaSinal

ORgTipo g

0)),((0)),1((

)(

gnEntradaSinal ngSaídaSinal

ANDgTipo g

Page 19: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

19DSC/CCT/UFCGDSC/CCT/UFCG

Engenharia de Conhecimento em Lógica de Primeira Ordem

O domínio dos circuitos eletrônicos

4. Codificar o conhecimento geral do domínio

A saída de uma porta XOR é 1 se e somente se suas entradas são diferentes:

A saída de uma porta NOT é diferente de sua entrada:

)),2(()),1((1)),1((

)(

gEntradaSinalgEntradaSinalgSaídaSinal

XORgTipo g

)),1(()),1(())( gEntradaSinal gSaídaSinalNOTgTipo( g

Page 20: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

20DSC/CCT/UFCGDSC/CCT/UFCG

Engenharia de Conhecimento em Lógica de Primeira Ordem

O domínio dos circuitos eletrônicos

5. Codificar a instância específica do problema

OROTipo

ANDATipoANDATipo

XORXTipoXORXTipo

)(

)( )(

)( )(

1

21

21

Categoria das portas:

Page 21: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

21DSC/CCT/UFCGDSC/CCT/UFCG

Engenharia de Conhecimento em Lógica de Primeira Ordem

O domínio dos circuitos eletrônicos

5. Codificar a instância específica do problema

Conexões entre as portas:

)),1(),,3(( )),2(),,1((

)),2(),,3(( )),1(),,1((

)),2(),,2(( )),2(),,1((

)),2(),,2(( )),1(),,1((

)),1(),,1(( )),2(),,1((

)),1(),,1(( )),1(),,1((

2111

2112

1111

1112

1121

1121

AEntradaCEntradaConectadosCSaidaOSaídaConectados

XEntradaCEntradaConectadosCSaidaXSaídaConectados

AEntradaCEntradaConectadosOEntradaASaídaConectados

XEntradaCEntradaConectadosOEntradaASaídaConectados

AEntradaCEntradaConectadosAEntradaXSaídaConectados

XEntradaCEntradaConectadosXEntradaXSaídaConectados

Page 22: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

22DSC/CCT/UFCGDSC/CCT/UFCG

Engenharia de Conhecimento em Lógica de Primeira Ordem

O domínio dos circuitos eletrônicos

6. Formular consultas ao procedimento de inferência

Que combinações de entradas fariam a primeira saída de C1 (o bit de soma) ser 0 e a segunda saída de C1 (o bit de transporte) ser 1?

1)),2(( 0)),1(( )),3((

)),2(( )),1(( i,,

1131

2111321

CSaídaSinalCSaídaSinaliCEntradaSinal

iCEntradaSinaliCEntradaSinalii

Page 23: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

23DSC/CCT/UFCGDSC/CCT/UFCG

Engenharia de Conhecimento em Lógica de Primeira Ordem

O domínio dos circuitos eletrônicos

6. Formular consultas ao procedimento de inferência

As respostas são substituições para as variáveis i1, i2, i3, tais que a sentença resultante é conseqüência lógica da base de conhecimento. Existem três substituições desse tipo:

1/,1/,0/1/,0/,1/0/,1/,1/ 321321321 iii iii iii

Page 24: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

24DSC/CCT/UFCGDSC/CCT/UFCG

Engenharia de Conhecimento em Lógica de Primeira Ordem

O domínio dos circuitos eletrônicos

6. Formular consultas ao procedimento de inferência

Quais são os conjuntos de valores possíveis de todos os terminais para o circuito somador?

211131

211121321

)),2(( )),1(( )),3((

)),2(( )),1(( o ,o ,i,,

oCSaídaSinaloCSaídaSinaliCEntradaSinal

iCEntradaSinaliCEntradaSinalii

Page 25: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

25DSC/CCT/UFCGDSC/CCT/UFCG

Engenharia de Conhecimento em Lógica de Primeira Ordem

O domínio dos circuitos eletrônicos

7. Depurar a base de conhecimento

Podemos perturbar a base de conhecimento de várias maneiras, a fim de verificar que tipos de comportamentos errôneos emergem.

Por exemplo, suponha que omitimos a asserção de que

O sistema será incapaz de provar diversas saídas para o circuito.

01

Page 26: DSC/CCT/UFC G Inteligência Artificial I Representação do Conhecimento (Parte II) Prof. a Joseana Macêdo Fechine Prof. a Joseana Macêdo Fechine joseana@dsc.ufcg.edu.br

26DSC/CCT/UFCGDSC/CCT/UFCG

Engenharia de Conhecimento em Lógica de Primeira Ordem

O desenvolvimento de uma base de conhecimento em lógica de primeira ordem exige um processo cuidadoso de análise do domínio, escolha de um vocabulário e codificação dos axiomas necessários para dar suporte às inferências desejadas.