1 agentes que raciocinam com base na lógica de primeira ordem engajamentos, sintaxe e semântica da...

36
1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação ao mundo do Wumpus Representando mudanças no mundo Deduzindo propriedades escondidas do mundo

Upload: joao-nunes-vilarinho

Post on 07-Apr-2016

218 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

1

Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPOUso da LPO em agentes baseados em conhecimentoAplicação ao mundo do WumpusRepresentando mudanças no mundo Deduzindo propriedades escondidas do mundo

Page 2: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

2

Lógica de Primeira Ordem - LPOÉ um formalismo de referência para representação de conhecimento o mais estudado e o melhor formalizado

Satisfaz em grande parte os seguintes critérios: adequação representacional

permite representar o mundo (expressividade) adequação inferencial

permite inferência eficiência aquisicional

facilidade de adicionar conhecimento modularidade

Page 3: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

3

Engajamento Ontológico Natureza da realidade, descrição do mundo

Na Lógica Proposicional, o mundo consiste em fatos.Na Lógica de Primeira Ordem, o mundo consiste em: objetos: “coisas” com identidade própria

ex. pessoas, casas, Wumpus, caverna, etc. relações entre esses objetos

ex. irmão-de, tem-cor, parte-de, adjacente, etc. propriedades (que distinguem esses objetos)

ex. vermelho, redondo, fundo, fedorento, etc. funções: um ou mais objetos se relacionam com um

único objeto ex. dobro, distância, pai_de, etc.

Page 4: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

4

Engajamento OntológicoAlém disso, a LPO exprime: fatos sobre todos objetos do universo () fatos sobre objetos particulares ()

Exemplos: 1 + 1 = 2

objetos: 1, 2; relação: =; função: +. Todas as Cavernas adjacentes ao Wumpus são

fedorentas. objetos: cavernas, Wumpus; propriedade: fedorentas;

relação: adjacente.A LPO não faz engajamentos ontológicos para tempo, categorias e eventos... neutralidade favorece flexibilidade

Page 5: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

5

Engajamento Epistemológico

Estados do conhecimento (crenças)A LPO tem o mesmo engajamento epistemológico que a lógica proposicional tudo é verdadeiro ou falso

Para tratar incerteza, usamos Outras lógicas (de n-valoradas, fuzzy, para-

consistente, etc.) Probabilidade

Page 6: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

6

ResumoLinguagem Engajamento

Ontológico Engajamento

Epistemológico L. Proposicional Fatos V, F, ?

LPO Fatos, objetos, relações

V, F, ?

L. Temporal Fatos, objetos, relações, tempo

V, F, ?

Probabilidade Fatos Grau de crença: 0-1

L. Difusa Grau de verdade sobre fatos,

objetos, relações

Grau de crença: 0-1

Page 7: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

Sistema Formal em LPO

Cálculo = Cálculo de Predicados

Teoria

Linguagem= LPO

Regras de derivação= regras de inferência

sintaxe + semântica

Teoremas = fatos derivados(axiomas + regras de derivação)

Axiomas= fatos + regras

diacrônicassíncronas

causais de diagnóstico

Base de Conhecimento = fatos e regras básicos (só axiomas!)Memória de Trabalho = fatos particulares à instância do problema e fatos derivadosMáquina de Inferência = regras de inferência

Page 8: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

8

LPO: SintaxeSentença SentençaAtômica | Sentença Conectivo Sentença

| Quantificador Variável,... Sentença | Sentença | (Sentença)

SentençaAtômica Predicado(Termo,...) | Termo = Termo | Verdade | Falso

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

Quantificador

Constante A | X | João | ...Variável a | x | s | ... (letras minúsculas)Predicado Vermelho | Tem-cor | IrmãoDe | ...Função Mãe | MelhorAmigo | ...

Page 9: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

9

LPO: SemânticaConstantes e Variáveis denotam Objetos: ex. Caetano, aluno, cadeira, estrela... uma interpretação especifica a que objeto no

mundo cada constante e cada variável livre se refere.

o mesmo objeto pode ser referenciado por mais de um símbolo: ex. “Vênus” e “A estrela Dalva” referem-se ao

mesmo objeto (planeta) no universo.

OBS.: Ocultei os outros slides sobre semântica...

Page 10: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

17

LPO em agentes baseados em conhecimento

No mundo :Pedro possui um cachorro.Todo dono de cachorro é um protetor dos animais.Nenhum protetor dos animais mata um animal.

Na Lógica:x cachorro(x) possui(Pedro,x)x y (cachorro(y) possui(x,y)) protetorAnimais(x)x protetorAnimais(x) y animal(y) mata(x,y)

Representaçãodo mundo

Representaçãológica inicial

Representaçãológica atualizada

Mecanismo Mecanismo de inferênciade inferência

Conhecimento de Conhecimento de lógicalógica

Page 11: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

18

Propriedades da Inferência Lógica

Corretude gera apenas sentenças válidas

Composicionalidade: o significado de uma sentença é função do de suas partes

Monotonicidade Tudo que era verdade continua sendo depois de uma

inferênciaLocalidade inferência apenas com comparações locais (porção da BC).

Localidade e composicionalidade ---> modularidade ---> reusabilidade e extensibilidade

Page 12: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

19

Uso de LPO em agentes baseados em conhecimento

função Agente-BC(percepção) retorna uma açãoTellTell(BC, Percepções-SentençaPercepções-Sentença(percepção,t))ação AskAsk(BC Pergunta-AçãoPergunta-Ação(t))TellTell(BC, Ação-SentençaAção-Sentença(ação,t))t t + 1retorna ação

Onde... função Pergunta-Ação Pergunta-Ação cria uma query tal como: a

Ação(a,6) função ASKASK devolve uma lista de instanciações:

{a / Pegar} - Pegar é atribuída à variável ação. TELLTELL gravar a ação escolhida na BC.

Page 13: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

20

LPO em agentes baseados em conhecimento

Axiomas = fatos e regras básicos e fatos do problemaTeoremas = fatos derivadosPesquisa = ASK Quantificador : a resposta é booleana Quantificador : a resposta é uma lista de

instanciações/substituições de variáveis - binding ASK (BC, x Irmã(x,Caetano)) -> {x/Betânia,x/Irene} ASK (BC, x (Irmã(x,Caetano) Cantora(x))) ->

{x/Betânia}

Page 14: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

21

Hipótese do Mundo FechadoTudo que não estiver presente na base é considerado falsoIsto simplifica (reduz) a BC Ex. Para dizer que os países Nova Zelândia,

África do Sul, Irlanda e França gostam do jogo Rugby, não precisa explicitamente dizer que os outros não gostam...

Page 15: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

22

Um Agente LPO para o Mundo do Wumpus

Interface entre o agente e o ambiente: sentença de percepções, que inclui as percepções e o

tempo (passo) em que elas ocorreram, e.g.: Percepção ([Fedor, Brisa, Luz, nada, nada], 6)

Ações do agente: Girar(Direita), Girar(Esquerda), Avançar, Atirar, Pegar,

Soltar e Sair das cavernasTrês arquiteturas de Agentes baseados em LPO: Agente reativo Agente com Modelo do Mundo Agente baseado em Objetivo

Page 16: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

23

Agente reativo baseado em LPOPossui regras ligando as seqüências de percepções a ações Essas regras assemelham-se a reações f,b,c,g,t Percepção([f,b,Luz,c,g], t) Ação(Pegar, t)

Essas regras dividem-se entre Regras de (interpretação) da percepçãob,l,c,g,t Percepção([Fedor,b,l,c,g], t) Fedor (t)f,l,c,g,t Percepção([f,Brisa,l,c,g], t) Brisa (t)f,b,c,g,t Percepção([f,b,Luz,c,g], t) Junto-do-Ouro (t)

. . . Regras de açãot Junto-do-Ouro (t) Ação(Pegar, t)

Page 17: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

24

Limitações do agente reativo puro

Como já vimos, um agente reativo puro nunca sabe quando parar estar com o ouro e estar na caverna (1,1) não

fazem parte da sua percepção (se pegou, esqueceu).

esses agentes podem entrar em laços infinitos.Para ter essas informações, o agente precisa guardar uma representação do mundo.

Page 18: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

25

Agentes LPO com Estado InternoGuardando modelo interno do mundo sentenças sobre como o mundo está agora

“agente está com o ouro” as sentenças serão atualizadas quando:

O agente receber novas percepções e realizar ações

ex. o agente pegou o ouro,..Questão Como manter, com simplicidade, o modelo do

mundo corretamente atualizado?

Page 19: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

26

Representando Mudanças no Mundo

Como representar as mudanças? Ex., “O agente foi de [1,1] para [1,2]”1. Apagar da BC sentenças que já não são verdade

ruim: perdemos o conhecimento sobre o passado, o que impossibilita previsões de diferentes futuros.

2. Cada estado é representado por uma BC diferente: ruim: pode explorar situações hipotéticas, porém não

pode raciocinar sobre mais de uma situação ao mesmo tempo. ex. “existiam buracos em (1,2) e (3,2)?”

Page 20: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

27

Cálculo Situacional Solução: Cálculo situacional ! uma maneira de escrever mudanças no tempo em

LPO Permite a representação de diferentes situações na

mesma BCO mundo consiste em uma seqüência de situações situação N ===ação===> situação N+1

Utiliza uma função Resultado para representar as mudanças no mundo: Resultado (ação,situação N) = situação N+1

Page 21: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

28

Cálculo SituacionalPredicados que mudam com o tempo têm um argumento de situação adicional Ao invés de Em(Agente,local) teremos

(Em(Agente,[1,1],S0) Em(Agente,[1,2],S1))

Predicados que denotam propriedades que não mudam com o tempo não necessitam de argumentos de situação Parede(0,1) e Parede(1,0)

Page 22: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

29

Exemplo de cálculo situacional

Result(Forward,S0) = S1

Result(Turn(Right),S1) = S2

Result(Forward,S2) = S3

Page 23: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

30

Descrição completa de como o mundo evolui uma coisa é verdade depois

[uma ação acabou de torná-la verdadeela já era verdade e nenhuma ação a tornou falsa ]

Ex. a,x,s Segurando(x, Resultado(a,s)) (a = Pegar Presente (x, s) Portável(x)) (Segurando (x,s) (a Soltar)]

É necessário escrever uma axioma estado-sucessor para cada predicado que pode mudar seu valor no tempo.O que muda no mundo do Wumpus? Pegar ouro, localização e direcionamento do agente

Representando Mudanças no Mundo Axiomas estado-sucessor

Page 24: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

31

O agente precisa lembrar por onde andou e o que viu para poder deduzir onde estão os buracos e o Wumpus, para garantir uma exploração completa das cavernas

O agente precisa saber: localização inicial = onde o agente está

Em (Agente,[1,1],S0 ) orientação: a direção do agente (em graus)

Orientação (Agente,S0 ) = 0 localização um passo à frente: função de locais e orientações

x,y PróximaLocalização ([x,y ],0) = [x+1,y ] x,y PróximaLocalização ([x,y ],90) = [x,y+1 ]x,y PróximaLocalização ([x,y ],180) = [x-1,y ]x,y PróximaLocalização ([x,y ],270) = [x,y-1 ]

Guardando localizações

Page 25: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

32

A partir desses axiomas, pode-se deduzir que quadrado está em frente ao agente “ag” que está na localização “l”:ag,l,s Em (ag,l,s )

localizaçãoEmFrente (ag,s) = PróximaLocalização (l,Orientação (ag,s))

Podemos também definir adjacência:l1,l2 Adjacente (l1,l2 ) d l1 = PróximaLocalização (l2,d

)

E detalhes geográficos do mapa:x,y Parede([x,y ]) (x =0 x =5 y =0 y =5)

Guardando localizações

Page 26: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

33

Resultado das ações sobre a localização do agente: Axioma Estado-Sucessor: avançar é a única ação que muda a

localização do agente (a menos que haja uma parede)a,l,ag,s Em(ag,l,Resultado(a,s)) [(a = Avançar l = localizaçãoEmFrente(ag,s) Parede(l))

(Em(ag,l,s) a Avançar)]

Efeito das ações sobre a orientação do agente: Axioma ES: girar é a única ação que muda a direção do agentea,d,ag,s Orientação(ag,Resultado(a,s)) = d

[(a = Girar(Direita) d = Mod(Orientação(ag,s) - 90, 360) (a = Girar(Esquerda) d = Mod(Orientação(ag,s) + 90, 360) (Orientação(ag,s) = d (a = Girar(Direita) a = Girar(Esquerda))]

Guardando localizações

Page 27: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

34

Agora que o agente sabe onde está, ele pode associar propriedades aos locais: l,s Em(Agente,l,s) Brisa(s) Ventilado(l) l,s Em(Agente,l,s) Fedor(s) Fedorento(l) Observem que os predicados Ventilado e

Fedorento não necessitam do argumento de situação

Sabendo isto, o agente pode deduzir: onde estão os buracos e o Wumpus, e quais são as cavernas seguras (predicado OK).

Deduzindo Propriedades do Mundo

Page 28: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

35

Regras Diacrônicas (do grego “através do tempo”) descrevem como o mundo evolui (muda ou não) com

o tempox,s Presente(x,s) Portável(x) Segurando(x,Resultado(Pegar,s))

Regras Síncronas: relacionam propriedades na mesma situação

(tempo). o,s Em(Agente,l,s) Brisa(s) Ventilado(l) possibilitam deduzir propriedades escondidas no

mundo Existem dois tipos principais de regras síncronas:

Regras Causais e Regras de Diagnóstico.

Tipos de regras

Page 29: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

36

Regras Causais assumem causalidade algumas propriedades escondidas no mundo

causam a geração de certas percepções. Exemplos

as cavernas adjacentes ao Wumpus são fedorentas :

l1, l2,s Em (Wumpus,l1,s) Adjacente (l1,l2) Fedorento (l2)

Se choveu, a grama está molhada Sistemas que raciocinam com regras causais são

conhecidos como Sistemas Baseados em Modelos.

Tipos de regras

Page 30: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

37

Regras de Diagnóstico: Raciocínio abdutivo: supõe a presença de propriedades

escondidas a partir das percepções do agente. Ex., a ausência de fedor ou brisa implica que esse local e

os adjacentes estão OK. x,y,g,u,c,s Percepção ([nada, nada, g,u,c],t)

Em (Agente,x,s) Adjacente(x,y) OK(y) se a grama está molhada, então é porque o aguador ficou

ligado Sistemas que raciocinam com regras de diagnóstico são

conhecidos como Sistemas de DiagnósticoÉ perigoso misturar numa mesma BC regras causaias e de diagnóstico!!! se choveu é porque o aguador estava ligado...

Tipos de regras

Page 31: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

38

As regras que definimos até agora não são modulares: mudanças nas crenças do agente sobre algum aspecto do

mundo requerem mudanças nas regras que lidam com outros aspectos que não mudaram.

Para tornar essas regras mais modulares, separamos fatos sobre ações de fatos sobre objetivos:

assim, o agente pode ser “reprogramado” mudando-se o seu objetivo.

Ações descrevem como alcançar resultados. Objetivos descrevem a adequação (desirability) de

estados resultado, não importando como foram alcançados.

Descrevemos a adequação das regras e deixamos que a máquina de inferência escolha a ação mais adequada.

Modularidade das Regras

Page 32: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

39

Escala, em ordem decrescente de adequação: ações podem ser: ótimas, boas, médias, arriscadas e mortais. O agente escolhe a mais adequada a,s Ótima(a,s) Ação(a,s) a,s Boa(a,s) ( b Ótima(b,s)) Ação(a,s) a,s Média(a,s) ( b (Ótima(b,s) Boa(b,s) )) Ação(a,s) a,s Arriscada(a,s) ( b (Ótima(b,s) Boa(b,s) Média(a,s) ))

Ação(a,s)Essas regras são gerais, podem ser usadas em situações diferentes: uma ação arriscada na situação S0 (onde o Wumpus está vivo)

pode ser ótima na situação S2, quando o Wumpus já está morto.

Modularidade: Adequação das Regras

Page 33: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

40

Sistema baseado em regras de adequação Não se refere ao que a ação faz, mas a quão desejável ela é.

Prioridades do agente até encontrar o ouro: ações ótimas: pegar o ouro quando ele é encontrado, e

sair das cavernas. ações boas: mover-se para uma caverna que está OK e

ainda não foi visitada. ações médias: mover-se para uma caverna que está OK e

já foi visitada. ações arriscadas:mover-se para uma caverna que não se

sabe com certeza que não é mortal, mas também não é OK ações mortais: mover-se para cavernas que sabidamente

contêm buracos ou o Wumpus vivo.

Sistema de Ação-Valor

Page 34: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

41

O conjunto de ações-valores é suficiente para prescrever uma boa estratégia de exploração inteligente das cavernas. quando houver uma seqüência segura de ações , ele acha o

ouro Porém... isso é tudo o que um agente baseado em LPO pode

fazer.Depois de encontrar o ouro, a estratégia deve mudar... novo objetivo: estar na caverna (1,1) e sair.

s Segurando(Ouro,s) LocalObjetivo ([1,1],s)A presença de um objetivo explícito permite que o agente encontre uma seqüência de ações que alcançam esse objetivo.

Agentes Baseados em Objetivos

Page 35: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

42

(1) Busca: Usar Busca pela Melhor Escolha para encontrar um

caminho até o objetivo. Nem sempre é fácil traduzir conhecimento em um

conjunto de operadores, e representar o problema (ambiente) em estados para poder aplicar o algoritmo.

(2) Inferência: Idéia: escrever axiomas que perguntam à BC uma

seqüência de ações que com certeza alcança o objetivo. Porém: para um mundo mais complexo isto se torna

muito caro como distinguir entre boas soluções e soluções mais

dispendiosas (onde o agente anda “à toa” pelas cavernas)?

Como encontrar seqüências de ações

Page 36: 1 Agentes que raciocinam com base na lógica de primeira ordem Engajamentos, sintaxe e semântica da LPO Uso da LPO em agentes baseados em conhecimento Aplicação

43

(3) Planejamento: envolve o uso de um sistema de raciocínio dedicado,

projetado para raciocinar sobre ações e conseqüências para objetivos diferentes.

ficar rico e feliz

pegar o ouro

ações e conseqüênciasações e conseqüências ações e conseqüênciasações e conseqüências

sair das cavernas

Agentes Baseados em Objetivos