Title: Introdu
1Introdução aos Agentes Inteligentes
- Aula Agentes Baseados em Lógica
- Flávia Barros
2Plano 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
3Bem-vindos ao Mundo do Wumpus
4O 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
5O 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
6O 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
7Codificação do Mundo do Wumpus
A - Agente W - Wumpus B - Buraco O - Ouro
Vetor de Percepções fedor,vento,brilho,
choque,grito
8Raciocinando 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
CV - caverna visitada
9Raciocinando e Agindo no Mundo do Wumpus
- Estando em (2,2), o agente move-se para (2,3) e
encontra o ouro!!!
CV - caverna visitada
10Mundo de WumpusTipo do ambiente
- Parcialmente observável
- Determinista
- Não-Episódico
- Estático
- Discreto
11Mundo de Wumpus Arquiteturas do agente
- Agente puramente reativo
- Agente reativo com estado interno (autômato)
- Agente cognitivo (baseado em objetivos)
- Agente otimizador
- Agente adaptativo
12Mundo 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.
13Mundo 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...
14Agente 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
15Mundo de Wumpus Agente reativo com estado interno
- Regras percepção ? modelo ? modelo
- IF percepçãoVisual no tempo T brilhoAND
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)
16Mundo 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 T1
17Mundo 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
18Agente cognitivo (baseado em objetivo)
Ambiente
Modelo dos ambientespassados e atual
Interpretador de percepção
Sensores
Atualizador do modelodo ambiente
Atualizador do objetivos
Objetivos
Preditorde ambientesfuturos
Modelo de ambientes futuros hipotéticos
Escolhedor de ação
Atuadores
19Agente 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)
20Agente 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...)
21Agente 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)
22Agente 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,Y1) no tempo T AND sabe que o agente tem
uma flecha no tempo TTHEN escolha ação Vá-para
(X,Y)
23Agente 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 TN AND agente está com o ouro no
tempo T1 THEN atualize o objetivo do agente no
tempo T1 para objetivo (1,1) no
tempo TM
24Lógica de Primeira Ordem
25Sistema Formal em LPO
Cálculo Cálculo de Predicados
Teoria
Teoremas fatos derivados
Axiomas fatos regras do problema
Linguagem LPO
Regras de derivação regras de inferência
síncronas
diacrônicas
sintaxe semântica
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
derivados Máquina de Inferência regras de
inferência
26LPO Sintaxe
- Sentenç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ável - Conectivo Ù Ú Þ Û
- 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 ...
27Como Raciocinar ?
- (1) Construindo a Tabela-Verdade
- (para mundos muito pequenos)
- (2) Usando regras de inferência!
28Regras 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
a/b diz que a sentença b pode ser derivada de a
por inferência.
29Propriedades 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 ---gt modularidade
---gt reusabilidade e extensibilidade
30Agentes baseados em LPO
31Agentes 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)
32Agentes 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
33Hipó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...
34Agentes LPO para o Mundo do Wumpus
35Um 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
36Um 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
37Agente 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ção
- " t Junto-do-Ouro (t) Þ Ação(Pegar, t)
38Limitaçõ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.
39Agentes 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?
40Representando 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)?
41Cá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
42Cá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)
43Cálculo Situacional
- O mundo consiste em uma seqüência de situações
- situação N açãogt situação N1
- Utiliza uma função Resultado para representar as
mudanças no mundo - Resultado (ação,situação N) situação N1
44Exemplo de cálculo situacional
Resultado(Forward,S0) S1 Resultado(Turn(Right),
S1) S2 Resultado(Forward,S2) S3
45Representando Mudanças no Mundo Axiomas
estado-sucessor
- Descrição completa de como o mundo evolui
- uma coisa é verdade depois Û uma ação
acabou de torná-la verdade - Ú ela 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) s1
- É necessário escrever uma axioma estado-sucessor
para cada predicado que pode mudar seu valor no
tempo.
46Representando Mudanças no Mundo do Wumpus
Axiomas estado-sucessor
- 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
47Representando Mudanças no Mundo do Wumpus
- 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) x1,y
- " x,y PróximaLocalização (x,y ,90) x,y1
- " x,y PróximaLocalização (x,y ,180) x-1,y
- " x,y PróximaLocalização (x,y ,270) x,y-1
48Representando Mudanças no Mundo do Wumpus
- 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
49Representando Mudanças no Mundo do Wumpus
- 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
50Resultado das ações do agente sobre sua
localização
- 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)
51Resultado das ações do agente sobre sua
orientação
- 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))
52Resultado das ações do agente sobre sua
orientação
- 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))
53Deduzindo Propriedades do Mundo
- 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).
54Mais tipos de regras
- Que definem o tipo de sistema construído...
55Tipos de regras
- Regras Diacrônicas (do grego através do tempo)
- descrevem como o mundo evolui (muda ou não) com o
tempo - " x,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.
56Regras síncronas causais
- 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.
57Regras síncronas de diagnóstico
- 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
58Tipos de regras
- Atenção
- Não se deve misturar numa mesma BC regras causais
e de diagnóstico!!! - se choveu é porque o aguador estava ligado...
59Sistema de Ação-Valor
- Modularidade das Regras
- Adequação das regras
60Modularidade das Regras
- 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
61Modularidade das Regras
- 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
62Adequação das Regras
- 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)
63Adequação das Regras
- 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 é.
64Sistema de Ação-Valor
- 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 arriscadasmover-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.
65Agentes Baseados em Objetivos
- 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
66Como encontrar seqüências de ações
- (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)?
67Como encontrar seqüências de ações
- (2) Planejamento
- utiliza um sistema de raciocínio dedicado,
projetado para raciocinar sobre ações e
conseqüências para objetivos diferentes.