lógica de 1ª ordemnoel/ia/log1ordem.pdf1 1 lógica de 1ª ordem oo mundo é representado em termos...

23
1 Lógica de 1ª ordem o O mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros objectos. o Entre os vários objectos existem relações . o Quando numa relação existe apenas um “valor” para uma dada “entrada” esta é designada por função. 2 Exemplo o Objectos : pessoas, casas, números, teorias, cores, jogos de futebol, séculos ... o Relações : irmão de, maior que, dentro, parte de, tem a cor, ocorreu depois de, possui ... o Propriedades : vermelho, redondo, primo ... o Funções : pai de, melhor amigo ... 3 Lógica de 1ª ordem o A lógica de primeira ordem permite expressar factos acerca de todos os objectos no universo. o Isto permite-nos representar leis gerais ou regras tais como “Nas caves adjacentes ao WUMPUS ouvem-se ruídos”. 4 Lógica de 1ª ordem o A lógica de primeira ordem tem frases tal como a lógica proposicional, mas também tem termos que representam objectos.

Upload: others

Post on 24-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

1

1

Lógica de 1ª ordem

o O mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros objectos.

o Entre os vários objectos existem relações.

o Quando numa relação existe apenas um “valor” para uma dada “entrada” esta é designada por função.

2

Exemplo

o Objectos : pessoas, casas, números, teorias, cores, jogos de futebol, séculos ...

o Relações : irmão de, maior que, dentro, parte de, tem a cor, ocorreu depois de, possui ...

o Propriedades : vermelho, redondo, primo ...

o Funções : pai de, melhor amigo ...

3

Lógica de 1ª ordem

o A lógica de primeira ordem permite expressar factos acerca de todos os objectos no universo.

o Isto permite-nos representar leis gerais ou regras tais como “Nas caves adjacentes ao WUMPUS ouvem-se ruídos”.

4

Lógica de 1ª ordem

o A lógica de primeira ordem tem frases tal como a lógica proposicional, mas também tem termos que representam objectos.

Page 2: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

2

5

Sintaxe da lógica de 1ª ordem

Frase ? FraseAtómica |Frase Conector Frase |Quantificador Variavel, ... Frase |¬Frase |(Frase)

FraseAtómica ? Predicado(Termo, ...) | Termo = Termo

Termo ? Função(Termo, ...) |Constante |Variável

6

Sintaxe da lógica de 1ª ordem

Conector ? ∧ | ∨ | ⇒ | ⇔Quantificador ? ∀ | ∃

Constante ? A | X1 | Joaquim | ...

Variável ? a | x | s | ...

Predicado ? Antes | TemCor | EstaChover | ...

Função ? Mae | BracoEsquerdoDo | ...

7

Constantes

o Cada constante refere-se a um e um só objecto.

o Nem todos os objectos necessitam de nomes.

o Alguns objectos têm mais de um nome.

8

Predicadoso Referem-se a relações.o As relações mantêm-se (hold) ou falham

em manter-se.o Num dado modelo, uma relação é definida

por um conjunto de tuplos de objectos que a satisfazem. Um tuplo é uma colecção de objectos organizados numa dada ordem que são escritos entre < >.n Relação entre dois irmãos é definida por :

{ <João, Ricardo>, <Ricardo, João> }

Page 3: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

3

9

Termos

o Um termo é uma expressão lógica que se refere a um objecto. Símbolos constantes são termos.

o Ex : Um termo que é em simultâneo uma função : BI(João)

o Podemos raciocinar sobre os BI sem nunca definir o que é um BI.n Se dissermos que o João é Português e que

todos os Portugueses têm BI, poderemos deduzir que o João tem um BI.

10

Frases atómicas

o Afirmam factosn Irmão(Ricardo, João)n Casado(Pai(Ricardo), Mãe(João))

o Usualmente P(x, y) tem o significado de x é P de (com) y.

11

Frases complexas

o Podemos usar conexões lógicas para construir frases mais complicadas (da mesma forma que na lógica proposicional)

o Exemplos :Irmão(Ricardo, João) ∧ Irmão(João, Ricardo)MaisVelho(João, 30) ∨ MaisNovo(João, 30)MaisVelho(João, 30) ⇒ ¬MaisNovo(João, 30)¬Irmão(Ricardo, Ana)

12

Quantificador Universal

∀x Gato(x) ⇒ Mamífero(x)

Gato(Garfield) ⇒ Mamífero(Garfield) ∧Gato(Felix) ⇒ Mamífero(Felix) ∧Gato(João) ⇒ Mamífero(João) ∧

Gato(Ricardo) ⇒ Mamífero(Ricardo)

Page 4: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

4

13

Quantificador Universal

∀x Gato(x) ∧ Mamífero(x)

Gato(Garfield) ∧ Mamífero(Garfield) ∧Gato(Felix) ∧ Mamífero(Felix) ∧Gato(João) ∧ Mamífero(João) ∧

Gato(Ricardo) ∧ Mamífero(Ricardo)

14

Variáveis

o Como convenção todas as variáveis começam por minúsculas e todas as constantes por uma letra maiúscula.

o Uma variável é um termo por si só.o Um termo sem varáveis é chamado

um termo base (ground term).

15

Quantificador Existencial

∃x Irmão(x, Garfield) ∧ Gato(x)

(Irmão(Garfield, Garfield) ∧Gato(Garfield)) ∨

(Irmão(Felix, Garfield) ∧ Gato(Felix)) ∨(Irmão(João, Garfield) ∧ Gato(João)) ∨

(Irmão(Ricardo, Garfield) ∧Gato(Ricardo))

16

Quantificador Existencial

∃x Irmão(x, Garfield) ⇒ Gato(x)

(Irmão(Garfield, Garfield) ⇒Gato(Garfield)) ∨

(Irmão(Felix, Garfield) ⇒ Gato(Felix)) ∨(Irmão(João, Garfield) ⇒ Gato(João)) ∨

(Irmão(Ricardo, Garfield) ⇒Gato(Ricardo))

Page 5: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

5

17

Quantificadores de quantificadores

o ∀x,y Pai(x, y) ⇒ Filho(y, x)o ∀x,y é equivalente a ∀x ∀yo Toda a gente gosta de alguém:n ∀x ∃y Gosta(x, y)

o Existe alguém de quem toda a gente gosta:n ∃y ∀x Gosta(x, y)

o A ordem em que os quantificadoresaparecem é muito importante.

18

Quantificadores de quantificadores

∀x Gato(x) ∨ (∃x Irmão(Ricardo, x))

é idêntico a

∀x Gato(x) ∨ (∃z Irmão(Ricardo, z))

19

Relações entre ∀ e ∃

∀x ¬Gosta(x, Exame)

é equivalente a

¬∃x Gosta(x, Exame)

20

Relações entre ∀ e ∃

∀x Gosta(x, Gelado)

é equivalente a

¬∃x ¬Gosta(x, Gelado)

Page 6: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

6

21

Regras de Morgan

∀x ¬P ≡ ¬∃x P¬∀x P ≡ ∃x ¬P∀x P ≡ ¬∃x ¬P∃x P ≡ ¬∀x ¬P¬P ∧ ¬Q ≡ ¬(P ∨ Q)¬(P ∧ Q) ≡ ¬P ∨ ¬QP ∧ Q ≡ ¬(¬P ∨ ¬Q)P ∨ Q ≡ ¬(¬P ∧ ¬Q)

22

Relações entre ∀ e ∃

o Na verdade não necessitamos de ∀ ede ∃ em simultâneo, da mesma

forma que não necessitamos de ∧ e ∨. Mas o uso dos dois aumenta a clareza e facilidade de leitura.

23

Igualdade

o Pai(João) = Henriqueo Para dizermos que o Garfield tem

pelo menos dois irmãos, fazemos:∀x, y Irmão(Garfield, x) ∧ Irmão(Garfield , y) ∧

¬(x = y)

o Nalguns livros ¬(x = y) é substituído por x ≠ y

24

Lógicas de ordem mais elevada

o O nome lógica de 1ª ordem deriva do facto de podermos quantificar apenas sobre os objectos (as entidades de 1ª ordem que existem no mundo).

o Em lógicas de ordem mais elevada, podemos quantificar também sobre relações ou funções.

Page 7: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

7

25

Lógicas de ordem mais elevada

o Numa lógica de maior ordem podemos por exemplo dizer que dois objectos são iguais se e só se todas as suas propriedades são equivalentes :

∀x, y (x = y) ⇔ (∀p p(x) ⇔ p(y))

26

Lógicas de ordem mais elevada

o Poderíamos também dizer que duas funções são iguais se têm o mesmo valor para todos os argumentos :

∀f, g (f = g) ⇔ (∀x f(x) ⇔ g(x))o Lógicas de maior ordem têm mais poder de

expressividade. No entanto ainda existem poucos conhecimentos sobre a forma de raciocinar de forma efectiva sobre as frases destas lógicas.

27

∃!

∃!x Rei(x)

equivale a

∃x Rei(x) ∧ ∀y Rei(y) ⇒ x = y

o Claro que se soubessemos de ínicio quehavia apenas um rei poderiamos definir

28

∃!

o Claro que se soubessemos de ínicio quehavia apenas um rei poderiamos definiruma constante Rei em vez de utilizarmos o predicado Rei(x)

o Um exemplo mais complexo seria :

∀p País(p) ⇒ ∃!x Dirigente(x, p)

Page 8: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

8

29

Outras notações

30

Domínio

o Um domínio é uma secção do mundo sobre a qual desejamos expressar algum conhecimento.

o Antes de nos debruçarmos outra vez sobre o mundo do WUMPUS vamos debruçar-nos sobre problemas com domínios mais simples.

31

Domínio familiar

o Predicados unários:n Homem, Mulher

o Funções :n Pai, Mãe

o Predicados binários:n UmDosPais, Irmão, Irmã, UmDosIrmãos,

Filho, Filha, UmDosFilhos, Esposo, Esposa, Casado, Avó, Avô, Neto, Primo, Tio, Tia

∀m, c Mãe(c) = m ⇔ Mulher(m) ∧ UmDosPais(m, c)

∀m, h Esposo(h, m) ⇔ Homem(h) ∧ Casado(h, m)

∀x Homem(x) ⇔ ¬Mulher(x)

∀p, f UmDosPais(p, f) = m ⇔ UmDosFilhos(f, p)

∀x Homem(x) ⇔ ¬Mulher(x)

∀a, n Avô(a, n) ⇔ ∃p Pai(a, p) ∧ Pai(p, n)

∀x, y UmDosIrmãos(x, y) ⇔ (x ≠ y) ∧ ∃p UmDosPais(p, x) ∧UmDosPais(p, y)

Page 9: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

9

33

Axiomaso As frases iniciais da base de conhecimentos

são designadas por axiomas.o Como é que sabemos se escrevemos

axiomas suficientes para especificar o domínio?

o Uma das formas é identificar os predicados básicos, através dos quais os outros possam ser definidos.n No caso do domínio familiar UmDosFilhos,

Casado, Homem e Mulher são candidatos razoáveis a predicados básicos.

34

Axiomas

o Importa também considerar o problema da convergência. Teremos axiomas a mais ?n Ex: Será que necessitamos de um axioma do tipo:n ∀x, y UmDosIrmãos(x, y) ⇔ UmDosIrmãos(y, x)n Neste caso, por exemplo não necessitamos, a

partir de UmDosIrmãos(João, Ricardo) podemos inferir que:

n ∃p UmDosPais (p, João) ⇔ UmDosPais(p, Ricardo)n A partir daí podemos inferir que:n UmDosIrmãos(Ricardo, João)

35

Axiomas independentes

o Um axioma independente é uma axioma que não pode ser derivado de todos os outros axiomas.

36

Axiomas independentes

o A base de conhecimentos normalmente para além do conjunto mínimo de axiomas independentes, contém ainda usualmente axiomas redundantes, com o objectivo de aumentar a eficiência do processo de prova.

Page 10: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

10

37

O domínio dos conjuntos

o Constantesn ConjuntoVazio

o Predicadosn Membro, SubConjunto, Conjunto

o Funçõesn Intercessão, Reunião, Adiciona

38

O domínio dos conjuntos

o Os únicos conjuntos que existem são os vazios e aqueles que se obtêm ao adicionar elementos a outros conjuntos

∀c Conjunto(c) ⇔ (c = ConjuntoVazio) ∨(∃x, c2 Conjunto(c2) ∧ c = Adiciona(x,

c2))

39

O domínio dos conjuntos

¬∃x, c Adiciona(x, c) = ConjuntoVazio

∀x, c Membro(x, c) ⇔ c = Adiciona(x, c)

∀x, c Membro(x, c) ⇔(∃y, c2 c = Adiciona(y, c2) ∧

(x=y c ∨ Membro(x, c2))

40

O domínio dos conjuntos

∀c1, c2 SubConjunto(c1, c2) ⇔∀x Membro(x, c1) ⇒ Membro(x, c2)

∀c1, c2 (c1 = c2) ⇔(SubConjunto(c1, c2) ∧SubConjunto(c2, c1))

Page 11: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

11

41

O domínio dos conjuntos

∀x, c1, c2 Membro(x, Intercessão(c1, c2)) ⇔ Membro(x, c1) ∧

Membro(x, c2)

∀x, c1, c2 Membro(x, Reunião(c1, c2)) ⇔ Membro(x, c1) ∨

Membro(x, c2)

42

Questionar a base de conhecimentos

TELL(KB, (∀m, c Mãe(c) = m ⇔Mulher(m) ∧ UmDosPais(m, c))

TELL(KB, (Mulher(Ana) ∧UmDosPais(Ana, João) ∧UmDosPais(João, Carla))

ASK(KB, Avô(Ana, Carla))

43

Questionar a base de conhecimentoso Pode dizer-me as horas ?n Sim.

o Uma base de conhecimentos é mais cooperativa. Quando fazemos uma questão que é quantificada existencialmente , tal como :

ASK(KB, ∃x Filha(x, João))

o Recebemos uma mensagem dizendo que a Carla é filha do João.

44

Questionar a base de conhecimentos

o Dependendo da implementação do ASK, poderiamos, no caso do João ter mais filhas, receber uma mensagem com todas as suas filhas.

Page 12: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

12

45

Agente baseado numa base de conhecimentos

function AgenteKB(percepção) returns acçãostatic : KB, uma base de conhecimentos

t, um contador inicialmente a zero, que indica o tempo

TELL(KB, CriaFraseAPartirPercepcao(percepção, t))acção ← ASK(KB, CriaPerguntaAccao(t))TELL(KB, CriaFraseAPartirAcção(Acção, t))t ← t + 1

return acção

46

Mundo WUMPUS

o Percepções :n Percepção([Ruído, Brisa, Brilho, nada, nada], 5)

o Acções :n Virar(Direita), Virar(Esquerda), IrFrente ,

Disparar, Apanhar, Largar, Subir

o Para determinar a melhor acção, fazemos uma pergunta do tipo :n ASK(KB, ∃a Acção(a, 5))

47

Agente de Reflexos

∀r, b, c, g, tPercepção([r, b, Brilho, c, g], t) ⇒

Acção(Apanhar, t)

48

Agente de Reflexos

∀r, b, c, g, t Percepção([r, b, Brilho, c, g], t) ⇒ OuroPresente(t)

∀b, o, c, g, t Percepção([Ruído, b, o, c, g], t) ⇒ Barulho(t)

∀r, o, c, g, t Percepção([r, Brisa, o, c, g], t)

⇒ Vento(t)

Page 13: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

13

49

Agente de Reflexos

∀t OuroPresente(t) ⇒ Acção(Apanhar, t)

50

Modelo Interno

o Qualquer sistema que toma decisões com base nas suas percepções anteriores pode ser alterado de forma a usar um conjunto de frases sobre o estado do mundo actual, desde que essas frases sejam alteradas à medida que cada nova percepção é recebida e à medida que cada acção é tomada.

51

Cálculo situacional

o O cálculo situacional é o nome dado a uma forma particular de descrever na lógica de 1ª ordem a mudança.

o Concebe o mundo como sendo constituído por uma sequência de situações.

o As situações são geradas a partir de situações anteriores por via de acções.

52

Cálculo situacional

o Para lidarmos com a mudança em cada relação ou propriedade que muda ao longo do tempo é adicionado um argumento que especifica a situação. Por convenção o argumento que especifica a situação é sempre o último e as situações são representadas por Si.

Page 14: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

14

53

Cálculo situacional

o Ex: Em vez de termos EstaEm(Agente, Posição), passamos a ter EstaEm(Agente, Posição, Si).

o Poderemos assim ter frase do tipo :n EstaEm(Agente, [1, 1], S0) ∧

EstaEm(Agente, [1, 2], S1)

54

Cálculo situacional

o A função Resultado(Acção, Situação) é utilizada para identificar a situação resultante da aplicação de uma dada acção numa dada situação (original).

! % R

�↑ R

R

S0

! %

�↑

R

R

R

S1

Frente

Resultado(Frente, S0) = S1

! %

�→

R

R

R

S1

! %

�↑

R

R

R

S2

Resultado(Virar(Direita), S1) = S2

Virar(Direita)

Page 15: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

15

57

Cálculo situacional

o As acções são especificadas através dos seus efeitos. Isto é, especificamos as propriedades das situações que resultam da tomada de uma acção.

58

Axiomas de efeito

Transportável(Ouro)

∀s OuroPresente (s) ⇒ EstaPresente (Ouro, s)

∀x, s EstaPresente (x, s) ∧ Transportável(x) ⇒Carregar(x, Resultado(Apanhar, s))

∀x, s ¬Carregar(x, Resultado(Largar, s))

59

Axiomas de janela temporal (frame)

∀x, s, a Carregar(x, s) ∧ a ≠ Largar ⇒Carregar(x, Resultado(a, s))

∀x, s, a ¬Carregar(x, s) ∧ (a ≠ Apanhar ∨ ¬(EstaPresente(x, s) ∧

Transportável(x))) ⇒ ¬Carregar(x, Resultado(a, s))

Descrição completa de como o mundo evolui em resposta

às acções do agente=

Axiomas de efeito+

Axiomas de janela temporal(frame)

Page 16: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

16

61

Axiomas de sucessor do estado

<X é Verdadeiro> ⇔(<Uma acção que torna X verdade> ∨

(<X já era verdade ∧<Não houve uma acção que tornou X

falso>)

62

Axiomas de sucessor do estado

∀x, s, a Carregar(x, Resultado(a,s)) ⇔[(a = Apanhar ∧ EstaPresente(x, s) ∧Transportável(x)) ∨ (Carregar(x, s) ∧

a ≠ Largar)]

63

Axiomas de sucessor do estado

o São necessários para cada predicado que pode mudar ao longo do tempo.

o Deve listar todas as formas em que o predicado se pode tornar verdadeiro e todas as formas em que se pode tornar falso.

64

Mundo do WUMPUS

o No mundo do WUMPUS a localização actual do agente é talvez uma das coisas mais importantes com que nos devemos preocupar.

o A localização não pode ser percebida directamente, mas o agente necessita de se lembrar onde esteve e o que viu.

Page 17: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

17

65

Mundo do WUMPUS

o Isso permite- lhe deduzir onde está o WUMPUS e onde estão os poços de forma a ter a certeza que faz uma exploração completa.

66

Localização no mundo do WUMPUS

o Posição do agente :n EstaEm(Agente, [1, 1], S0)

o Orientação do agente (ângulo (em graus) em relação ao eixo x) :n Orientação(Agente, S0) = 0

67

Localização no mundo do WUMPUS

o Posição do agente se este for em frente:∀x, y PosicaoFrente ([x, y], 0) = [x+1, y]

∀x, y PosicaoFrente ([x, y], 90) = [x, y+1]∀x, y PosicaoFrente ([x, y], 180) = [x-1, y]∀x, y PosicaoFrente ([x, y], 270) = [x, y-1]

∀a, p, s EstaEm (a, p, s) ⇒ PosicaoFrenteAgente (p, s) = PosicaoFrente (p, Orientação(a, s)

68

Localização no mundo do WUMPUS

o Adjacência:∀p1, p2 Adjacente(p1, p2) ⇔∃a p1 = PosicaoFrente(p2, a)

o Paredes :∀x, y Parede([x, y]) ⇔

(x = 0 ∨ x = 5 ∨ y = 0 ∨ y = 5)

Page 18: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

18

69

Axioma de sucessor do estado da localização

∀x, p, a, s EstaEm(x, p, Resultado(a, s)) ⇔

[(a = IrFrente ∧ p = PosicaoFrenteAgente(x, s) ∧

¬Parede(p)) ∨ (EstaEm(x, p, s) ∧(a ≠ IrFrente ∨

Parede(PosicaoFrenteAgente(x, s)))]

70

Axioma de sucessor do estado da orientação

∀x, o, a, s Orientação(x, Resultado(a, s)) = o ⇔ [(a = Rodar(Direita) ∧ o = Mod(Orientação(x, s))-90, 360)) ∨ (a

= Rodar(Esquerda) ∧ o = Mod(Orientação(x, s))+90, 360)) ∨ (a

≠ Rodar(Esquerda) ∧ a ≠Rodar(Direita) ∧ Orientação(x, s) =

o)]

71

Dedução das propriedades escondidas do mundo

∀p, s EstaEm(Agente, p, s) ∧ Barulho(s) ⇒ Barulhenta(p)

∀p, s EstaEm(Agente, p, s) ∧ Vento(s) ⇒ Ventoso(p)

72

Dedução das propriedades escondidas do mundo

o Depois de descobrir os locai barulhentos e ventosos (e, muito importante, os locais não barulhentos e não ventosos) o agente pode deduzir a localização do WUMPUS e dos poços.

o Pode ainda deduzir quais as localizações que são seguras e utilizar essa informação para recolher o ouro.

Page 19: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

19

73

Regras de sincronismo

o Os axiomas que capturam a informação necessária para essas deduções são chamados regras de sincronismo.

o Existem dois tipos de regras de sincronismo:n Causais;n Diagnóstico.

74

Regras causais∀p1, p2, s EstaEm(WUMPUS, p1, s) ∧

Adjacente(p1 , p2) ⇒ Barulhenta(p2)

∀p1, p2, s EstaEm(poço, p1, s) ∧ Adjacente(p1 , p2) ⇒ Ventoso(p2)

o Os sistemas que raciocinam com base em regras causais são chamados sistemas de raciocínio baseados em modelos.

75

Regras de diagnósticoo Inferem a presença de propriedades

escondidas directamente da informação contida nas percepções.

∀p, s EstaEm(Agente, p, s) ∧ Barulho(s) ⇒Barulhenta(p)

∀p, s EstaEm(Agente, p, s) ∧ Vento(s) ⇒Ventoso(p)

76

Regras de diagnóstico

o Para deduzir a presença de WUMPUS uma regra de diagnóstico pode apenas tirar conclusões “fracas”.

∀p1, s Barulhenta(p1) ⇒ (∃ p2EstaEm(WUMPUS, p2, s) ∧ (p1 = p2 ∨

Adjacente(p1, p2)))

Page 20: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

20

77

Regras de diagnóstico

o Embora pareça que as regras de diagnóstico disponibilizam a informação desejada mais directamente, é muito difícil de assegurar que a partir da informação disponível se derivem as conclusões mais “fortes” disponíveis.

∀p1, p2, s EstaEm(Agente, p1, s) ∧ ¬Barulho(s) ∧ ¬Vento(s) ∧ Adjacente(p1, p2) ⇒

Segura(p2)

78

Sistemas de raciocínio baseados em modelos

o Mas mesmo quando existe vento ou barulho uma dada cave pode ser segura

∀p, s (¬EstaEm(WUMPUS, p, s) ∧¬Poço(p)) ⇔ Seguro(p)

79

Regras

o Regra geral é boa ideia explorar as caves indo para quadrados seguros, mas não quando existe uma percepção de brilho. Neste caso deveríamos parar de explorar e apanhar o ouro. Assim as nossas regras de exploração deveriam mencionar o brilho.

80

Regras

o Ao faze-lo as nossas regras deixavam de ser modulares.

o Uma regra não é modular se alterações nas crenças do agente acerca de certos aspectos do mundo requerem alterações nas regras relacionadas com outros aspectos.

Page 21: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

21

81

Regras modulares

o É mais modular separar os factos acerca das acções dos factos acerca dos objectivos. Desta forma o agente pode ser reprogramado, simplesmente dizendo-lhe para atingir outro objectivo.

82

Objectivoso Os objectivos descrevem o quão desejável

é um dado estado independentemente de como estes são obtidos.

o Escala das acções para o mundo do WUMPUS:n Óptiman Boan Médian Arriscada

83

Escala das acções∀a, s Óptima(a, s) ⇒ Acção(a, s)

∀a, s Boa(a, s) ∧ (¬∃b Óptima(b, s)) ⇒Acção(a, s)

∀a, s Media(a, s) ∧ (¬∃b Boa(b, s) ∨ Óptimo(b, s)) ⇒ Acção(a, s)

∀a, s Arriscada(a, s) ∧ (¬∃b Media(b, s) ∨Boa(b, s) ∨ Óptimo(b, s)) ⇒ Acção(a, s)

84

Objectivos

o Depois de apanhar o ouro é desejável que o agente deduza que o seu objectivo passa a ser ir para a localização [1,1].

∀s Carregar(Ouro, s) ⇒ObjectivoIrPara([1,1], s)

Page 22: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

22

85

Objectivos

o A presença de um objectivo explicito permite ao nosso agente definir uma sequência de acções que lhe permitem atingir o objectivo.

o Existem várias maneiras de determinar essa sequência :n Inferência;n Procura;n Planeamento.

86

Engenharia do conhecimento

o O processo de criação de uma base de conhecimentos é designado por Engenharia do Conhecimento.

o Um engenheiro do conhecimento é alguém que investiga um domínio em particular, determina quais os conceitos importantes nesse domínio e cria uma representação formal dos objectos e relações do domínio.

87

Aquisição do conhecimento

o Levada a cabo antes e/ou durante a criação da representação formal.

o Entrevistas a peritos.

88

Base de conhecimentos

o Deve ser clara e correcta.o As relações importantes devem ser

definidas e os detalhes irrelevantes retirados.

o Por vezes podemos fazer simplificações sacrificando alguma precisão de forma a ganhar clareza e legibilidade (trade-off).

Page 23: Lógica de 1ª ordemnoel/IA/log1Ordem.pdf1 1 Lógica de 1ª ordem oO mundo é representado em termos de objectos (entidades individuais) e propriedades que os distinguem de outros

23

89

Engenheiro do conhecimentoo Deve perceber o suficiente do domínio em

questão para representar os objectos importantes e as suas relações.

o Deve perceber o suficiente da linguagem de representação de modo a codificar os factos de forma correcta.

o Deve perceber o suficiente sobre a forma em como o motor de inferência está implementado, de forma a que as questões sejam respondidas num tempo razoável.

90

Metodologia para desenvolver uma base de conhecimentoso Decidir sobre o que falar;o Decidir sobre o vocabulário de predicados,

funções e constantes;o Codificar o conhecimento geral acerca do

domínio (axiomas);o Codificar uma descrição de uma instância

especifica do problema.o Obter respostas, questionando a base de

conhecimentos, através do motor de inferência.

91