Upload
brac
View
47
Download
0
Embed Size (px)
DESCRIPTION
Introdução aos Agentes Inteligentes. Aula: Agentes Baseados em Lógica Flávia Barros. Plano de Aula. Mundo do Wumpus Formulação do problema Descrição do Ambiente Arquiteturas dos Agentes Tipos de regras Agente Baseado em Lógica Regras de inferência Transformando conhecimento em ação. - PowerPoint PPT Presentation
Citation preview
1
Introdução aos Agentes Inteligentes
Aula: Agentes Baseados em Lógica
Flávia Barros
2
Plano de Aula
Mundo do Wumpus Formulação do problema Descrição do Ambiente Arquiteturas dos Agentes
Tipos de regras
Agente Baseado em Lógica Regras de inferência Transformando conhecimento em ação
3
Bem-vindos ao “Mundo do Wumpus”
Wumpus
Agente caçador de tesouros
4
O Mundo do Wumpus: formulação do problema
Ambiente: paredes, Wumpus, cavernas, buracos, ouro
Estado inicial: agente na caverna (1,1) com apenas uma flecha Wumpus e buracos em cavernas quaisquer
Objetivos: pegar a barra de ouro & voltar à caverna (1,1) com vida
5
O Mundo do Wumpus: formulação do problema
Percepções: fedor ao redor do Wumpus vento ao redor dos buracos brilho do ouro - apenas na caverna onde ele está choque contra a parede da caverna grito do Wumpus quando ele morre
6
O Mundo do Wumpus: formulação do problema
Ações do agente: avançar para próxima caverna girar 90 graus à direita ou à esquerda pegar o ouro na mesma caverna onde o agente
está atirar na direção para onde está olhando
a flecha pára quando encontra uma parede ou mata o Wumpus
sair da caverna
8
Raciocinando e Agindo no Mundo do Wumpus
Conhecimento do agente: (a) no início do jogo, depois de receber sua primeira percepção , e (b) depois do 1o movimento, com a seqüência de percepções
[nada,vento,nada,nada,nada]
1
2
3
41 2 3
4
ok
ok
okA 1
2
3
41 2 3
4
okA
ok
CV vok
B?
B?
CV - caverna visitada
9
Raciocinando e Agindo no Mundo do Wumpus
Estando em (2,2), o agente move-se para (2,3) e encontra o ouro!!!
1
2
3
41 2 3
4
ok
Afok
CV CVvok
B!
W!
ok
1
2
3
41 2 3
4
ok
A
fok
CV CV
v okB!
W!
CVok
CV
f v bB?
B?
CV - caverna visitada
Mundo de WumpusTipo do ambiente
Parcialmente observável
Determinista
Não-Episódico
Estático
Discreto
10
11
Mundo de Wumpus Arquiteturas do agente
Agente puramente reativo
Agente reativo com estado interno (autômato)
Agente cognitivo (baseado em objetivos)
Agente otimizador
Agente adaptativo
12
Mundo de Wumpus Agente puramente reativo
Exemplo de regra de reação IF percepção = brilho THEN ação = pegar-o-ouro
Limitações do agente reativo puro um agente ótimo deveria:
recuperar o ouro ou determinar que é muito perigoso pegar o ouro e em qualquer dos casos acima, voltar para (1,1) e sair da
caverna. Um agente reativo 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.
13
Mundo de Wumpus Agente reativo com estado interno
Regras associando indiretamente percepção com ação pela manutenção de um modelo do ambiente Ação a realizar agora depende da percepção atual +
anteriores + ações anteriores...
Motivação para guardar estado do ambiente O ambiente inteiro não é acessível no mesmo
momento O agente só vê o interior da caverna quando esta dentro
dela Percepções instantâneas iguais podem corresponder
a estados diferentes ex. o agente sem estado interno não sabe quais são as
cavernas já visitadas...
14
Agente reativo com estado internoTipos de regras – geral...
Além das regras de reação Sempre precisamos delas...
Precisamos de novas regras para atualização do modelo do ambiente percepção modelo modelo’ modelo’ modelo’’
só quando o modelo se atualiza sozinho (via inferência)
modelo’’ ação ação modelo’’ modelo’’’
15
Mundo de Wumpus Agente reativo com estado interno
Regras percepção modelo modelo’ IF percepçãoVisual no tempo T = brilho
AND localização do agente no tempo T = (X,Y)THEN localização do ouro no tempo T = (X,Y)
Regras modelo modelo’ IF agente está com o ouro no tempo T
AND localização do agente no tempo T = (X,Y)THEN localização do ouro no tempo T = (X,Y)
16
Mundo de Wumpus Agente reativo com estado interno
Regras modelo ação IF localização do agente no tempo T = (X,Y)
AND localização do ouro no tempo T = (X,Y) THEN ação escolhida no tempo T = pegar
Regras ação modelo modelo IF ação escolhida no tempo T = pegar
THEN agente está com o ouro no tempo T+1
17
Mundo de Wumpus Agente reativo com estado interno
Desvantagens desta arquitetura: Oferece autonomia, mas não muita Não tem objetivo explicito Não pensa no futuro (além da ação imediata)
Ex. pode entrar em loop se as regras não forem bem projetadas
18
Agente cognitivo (baseado em objetivo)
Am
bie
nte
Sensores
Atuadores
Modelo dos ambientespassados e atual
Interpretadorde percepção
Escolhedor de ação
Atualizadordo modelo
do ambiente
Preditorde ambientes
futuros
Modelo de ambientesfuturos hipotéticos
ObjetivosAtualizadordo objetivos
19
Agente Baseado em Objetivo Funcionamento geral
Associação entre percepção e ação Mediada por modelo do ambiente e objetivo do
agente
Pode envolver encadear regras para construir plano multi-passo necessário para atingir objetivo a partir de modelo Ex. matar o Wumpus para poder atravessar a
caverna onde ele esta e então pegar o ouro (objetivo)
20
Agente Baseado em Objetivo Funcionamento geral
Capaz de lidar com os 5 tipos de regras do agente reativo com estado interno, além de 2 novos tipos de regras: Regras: objetivo modelo ação Regras: objetivo modelo objetivo’
Trata o objetivo explicitamente e pode pensar no futuro!!!!
Porém... não trata objetivos conflitantes ex. pegar o ouro pelo caminho mais curto, seguro,
rápido Agente baseado em utilidade (próximos capítulos...)
21
Agente Baseado em Objetivo Regras objetivo modelo ação - I
O agente escolhe um caminho para o objetivo IF objetivo do agente no tempo T é estar na
localidade (X,Y) AND agente está em (X-1, Y-1) no tempo T-N AND sabe que localidade (X,Y-1) é segura no tempo T-NAND sabe que localidade (X,Y) é segura no tempo T-NTHEN escolha ação Vá-para (X,Y) via (X,Y-1)
22
Agente Baseado em Objetivo Regras objetivo modelo ação - II
O agente pode variar a escolha conforme o objetivo, como não matar o wumpus para pegar logo o ouro IF objetivo do agente é pegar o ouro
AND agente está em (X-1, Y) no tempo T AND sabe que o ouro está na localidade (X,Y)
AND sabe que localidade (X,Y) é segura no tempo T AND sabe que o Wumpus está na localidade (X-1,Y+1) no tempo T AND sabe que o agente tem uma flecha no tempo TTHEN escolha ação Vá-para (X,Y)
23
Agente Baseado em Objetivo Regras objetivo modelo objetivo’
Se o agente queria estar com o ouro e conseguiu, atualizar objetivo para “ir para (1,1)” IF objetivo do agente no tempo T é estar com o
ouro no tempo T+N AND agente está com o ouro no tempo T+1 THEN atualize o objetivo do agente no tempo T+1 para objetivo = (1,1) no tempo T+M
24
Lógica de Primeira Ordem
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= fatos + regras do problema
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
27
Como Raciocinar ?
(1) Construindo a Tabela-Verdade (para mundos muito pequenos)
(2) Usando regras de inferência!
28
Regras de Inferência
Modus Ponens:
E-eliminação:
E-introdução:
Ou-introdução:
Eliminação de dupla negação:
Resolução unitária:
Resolução:
,
i
n
...21
n
n
...
,...,,
21
21
n
i
...21
,,
,
diz que a sentença pode ser derivada de por inferência.
29
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ência
Localidade inferência apenas com comparações locais (porção da BC).
Localidade e composicionalidade ---> modularidade ---> reusabilidade e extensibilidade
30
Agentes baseados em LPO
31
Agentes baseados em LPO
Representando sentenças no mundo:Pedro possui um cachorro.Todo dono de cachorro é um protetor dos animais.Nenhum protetor dos animais mata um animal.
Representando sentenças 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)
32
Agentes baseados em LPO
Base de Conhecimento fatos e regras básicos, gerais, permanentes (só
axiomas!) (x,z) Avó(x,z) (y) Mãe(x,y) (Mãe(y,z) Pai(y,z))
Memória de Trabalho fatos particulares à instância do problema (axiomas)
Pai(Caetano,Zeca), Mãe(Canô, Caetano) e fatos derivados (teoremas)
Avó(Canô, Zeca)
Máquina de Inferência regras de inferência
33
Hipótese do Mundo Fechado
Tudo que não estiver presente na base é considerado falso
Isto simplifica (reduz) a BC Ex. Para dizer que os brasileiros e
argentinos gostam de futebol, não precisa explicitamente dizer que os outros não gostam...
34
Agentes LPO para o Mundo do Wumpus
35
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, Vento, Brilho, nada(~choque),
nada(~grito)], 6)
Ações do agente: Girar(Direita), Girar(Esquerda), Avançar, Atirar,
Pegar, Soltar e Sair das cavernas
36
Um Agente LPO para o Mundo do Wumpus
Três arquiteturas de Agentes baseados em LPO: Agente reativo Agente com Modelo do Mundo Agente baseado em Objetivo
37
Agente reativo baseado em LPO
Possui regras ligando as seqüências de percepções a ações Essas regras assemelham-se a reações f,v,c,g,t Percepção([f,v, Brilho,c,g], t) Ação(Pegar, t)
Essas regras dividem-se entre Regras de (interpretação) da percepção
v,b,c,g,t Percepção([Fedor,v,b,c,g], t) Fedor (t)f,b,c,g,t Percepção([f,Vento,b,c,g], t) Vento (t)f,v,c,g,t Percepção([f,v,Brilho,c,g], t) Junto-do-Ouro (t)
. . . Regras de açãot Junto-do-Ouro (t) Ação(Pegar, t)
38
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.
39
Agentes LPO com Estado Interno
Guardando modelo interno do mundo (MT) sentenças sobre o estado atual do mundo
“agente está com o ouro” O modelo será atualizado 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?
40
Representando Mudanças no Mundo
Como representar as mudanças? Ex., “O agente foi de [1,1] para [1,2]”1. Apagar da MT 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/MT 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)?”
41
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 BC/MT
Cap 10, pag. 329 do livro novo
42
Cálculo Situacional
Predicados que mudam com o tempo têm um argumento adicional de situação (tempo, turno) 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)
43
Cálculo Situacional
O 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
44
Exemplo de cálculo situacional
Resultado(Forward,S0) = S1
Resultado(Turn(Right),S1) = S2
Resultado(Forward,S2) = S3
45
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 –ação-,o –ouro-,sit Segurando(o, Resultado(a,s))
(a = Pegar Junto-do-ouro(s)) .: R (Segurando (o,s) (a Soltar)]Obsesultado(a,s) = s+1
É necessário escrever uma axioma estado-sucessor para cada predicado que pode mudar seu valor no tempo.
Representando Mudanças no Mundo Axiomas estado-sucessor
46
O que muda com o tempo no mundo do Wumpus? Pegar ouro, localização e orientação do agente
Guardando localizações O agente precisa lembrar por onde andou e o que viu para poder deduzir onde estão os buracos e o
Wumpus, e para garantir uma exploração completa das cavernas
Representando Mudanças no Mundo do Wumpus
Axiomas estado-sucessor
47
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çõesx,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]
Representando Mudanças no Mundo do Wumpus
48
A partir desses axiomas, pode-se deduzir que caverna está em frente ao agente “ag” que está na localização “loc”:
ag,loc,s Em (ag,loc,s) localizaçãoEmFrente (ag,s) =
PróximaLocalização (loc,Orientação (ag,s))
Assim, a informação sobre a localização em frente ao agente em cada situação fica diretamente disponível na MT
Representando Mudanças no Mundo do Wumpus
49
Podemos também definir adjacência:loc1,loc2 Adjacente (loc1,loc2 ) d loc1 = PróximaLocalização (loc2,d )
E detalhes geográficos do mapa:x,y Parede([x,y]) (x =0 x =5 y =0 y =5)
Assim, informações sobre o mapa do ambiente ficam disponível na BC/MT
Representando Mudanças no Mundo do Wumpus
50
Axioma Estado-Sucessor avançar é a única ação que muda a
localização do agente (a menos que haja uma parede)
a,loc,ag,s Em(ag,loc,Resultado(a,s))
[(a = Avançar loc = localizaçãoEmFrente(ag,s) Parede(loc))
(Em(ag,loc,s) a Avançar)]
Resultado das ações do agente sobre sua localização
51
Axioma Estado-Sucessor girar é a única ação que muda a direção do
agente
a,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))]
Resultado das ações do agente sobre sua orientação
52
Axioma Estado-Sucessor girar é a única ação que muda a direção do
agente
a,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))]
Resultado das ações do agente sobre sua orientação
53
Agora que o agente sabe onde está em cada situação, ele pode associar propriedades aos locais: ag,loc,s Em(ag,loc,s) Vento(s) Ventilado(loc) ag,loc,s Em(ag,loc,s) Fedor(s) Fedorento(loc) 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
54
Mais tipos de regras
Que definem o tipo de sistema construído...
55
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). loc,s Em(Agente,loc,s) Vento(s) Ventilado(loc) possibilitam deduzir propriedades escondidas no mundo
Existem dois tipos principais de regras síncronas: Regras Causais e Regras de Diagnóstico.
Tipos de regras
56
Regras Causais assumem causalidade algumas propriedades no mundo causam
certas percepções. Exemplos
as cavernas adjacentes ao Wumpus são fedorentas : loc1, loc2,s Em (Wumpus,loc1,s) Adjacente(loc1,loc2)
Fedorento (loc2) Se choveu, a grama está molhada
Sistemas que raciocinam com regras causais são conhecidos como Sistemas Baseados em Modelos.
Regras síncronas causais
57
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 Vento implica que esse
local e os adjacentes estão OK loc1,loc2,b,g,c,s Percepção ([nada, nada, b,g,c],s)
Em (Agente,loc1,s) Adjacente(loc1,loc2) OK(loc2)
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
Regras síncronas de diagnóstico
58
Atenção: Não se deve misturar numa mesma BC
regras causais e de diagnóstico!!! se choveu é porque o aguador estava
ligado...
Tipos de regras
59
Sistema de Ação-Valor
Modularidade das Regras
Adequação das regras
60
As regras que definimos até agora não são totalmente 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 e regras sobre ações de fatos e regras sobre objetivos assim, o agente pode ser “reprogramado” mudando-
se o seu objetivo quando necessário
Modularidade das Regras
61
Ações descrevem como alcançar resultados.
Objetivos descrevem a adequação (desirability) de estados resultado não importando como foram alcançados.
Assim, descrevemos a adequação das regras e deixamos que a máquina de inferência escolha a ação mais adequada
Modularidade das Regras
62
Ações podem ser ótimas, boas, médias, arriscadas ou mortais. Escala, em ordem decrescente de adequação
Assim, pode-se escolher a ação mais adequada para a situação atual
meta regras que determinam a prioridade de execução das regras – desempate
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)
Adequação das Regras
63
Essas regras são gerais, e 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
Sistema de Ação-Valor Sistema baseado em regras de adequação Não se refere ao que a ação faz, mas a quão
desejável ela é.
Adequação das Regras
64
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
65
O conjunto de regras de adequação (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
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
66
(1) Inferência: Idéia: escrever axiomas que perguntam à
BC/MT 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
67
(2) Planejamento utiliza 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
Como encontrar seqüências de ações