Title: Planejamento e A
1Planejamento e Ação
- Planejando e agindo em ambientes incertos
2Roteiro
- Indeterminação do ambiente e suas soluções
- Planejamento Condicional
- Monitoramento da execução com replanejamento
- Planejamento contínuo (situado)
3Ambientes Informação
- Ambientes observáveis, estáticos e deterministas
- Como se planeja nestes casos?
- Planejar e depois executar de olhos vendados
- Que técnicas se aplicam?
- Busca em espaço de estados...
- POP
- Planejamento hierárquico (inclui POP)
- Escalonamento (POPtempootimização)
4Ambientes Informação
- Que incerteza há em ambientes não observáveis,
dinâmicos ou não deterministas? - Informação incompleta
- Parcialmente observável, não determinista ou
ambos - Modelo do mundo fraco, mas correto!
- Ex. a porta do banheiro está aberta ou fechada?
Minhas chaves podem abrí-la ou não? - Informação incorreta
- O mundo não casa com o modelo dele
- Ex. Eu acredito que minhas chaves vão abra porta,
mas ela está com ferrolho
5Ambientes Graus de Indeterminação
- Indeterminação Limitada (bounded indeterminacy)
- Percepções são parciais e/ou ações têm efeitos
imprevisíveis mas as conseqüências podem ser
listadas - Ex. jogar a moeda (cara ou coroa)
- Soluções
- Planejamento/busca sem sensor (sensorless)
- Planejamento condicional
6Ambientes Graus de Indeterminação
- Indeterminação ilimitada (unbounded
indeterminacy) - Conjunto de pré-condições ou efeitos
desconhecidos ou grande demais - Domínios dinâmicos como economia, estratégia
militar,... - Soluções
- Monitoramento da execução com replanejamento
- Planejamento contínuo
7Soluções visão intuitiva
- Exemplo para comparar soluções
- Estado inicial uma cadeira, uma mesa e algumas
latas de tinta, tudo com cores desconhecidas - Estado final cadeira e mesa com a mesma cor
- Possível de ser resolvido com planejamento
clássico?
Não!!!
8Soluções para indeterminação limitada
- Caso do Sensorless problem (cap 3 do AIMA)
agente sem sensores! - Planejamento sem sensor (sensorless planning)
- Constrói planos seqüenciais normais (execução sem
percepção), mas considera todas as circunstâncias
independentemente do estado inicial - Ex. Médico ao dar antibiótico de largo espectro
- Noção importante Coerção!
- Agir para forçar o mundo para estados desejáveis
9Exemplos...
- CadeiraMesa
- Abrir uma lata e pintar cadeira e mesa com ela
(mesmo que algum dos móveis já esteja com esta
cor) - Aspirador tabajara versão 1.0 sem sensor
- Início 1,2,3,4,5,6,7,8
- Direita gt 2,4,6,8, Sugar gt 4,8,...
- Solução dir, suga, esq, suga
10Soluções para indeterminação limitada
- Caso do Problema Contingencial (cap. 3 AIMA)
- o ambiente parcialmente observável ou efeito das
ações desconhecido gt nova informação após cada
ação - Planejamento conditional
- Constrói, a priori, um plano (fixo) com
diferentes ramificações para diferentes
contingentes. - Percebe o ambiente para saber que ramo seguir
- Plano CadeiraMesa
- Percebe as cores da cadeira e da mesa
- Se iguais, então termina
- senão,
- percebe rótulos das latas
- se houver alguma com a mesma cor de um dos
mobiliários, então aplica-a ao outro - Caso contrário, pinta ambos com a mesma cor.
11Soluções para indeterminação ilimitada
- Monitoramento da execução com replanejamento
- Usa qualquer uma das técnicas precedentes para
construir o plano, mas - Monitora a execução para ver se o plano pode ter
sucesso no atual estado ou precisa ser revisto - Replaneja no caso de algo estar errado
- Como se aplica ao exemplo da CadeiraMesa?
- Plano
- Se por acaso a pintura deixou alguma cor antiga
aparecendo, repintar a mobília em questão
12Soluções para indeterminação ilimitada
- Planejamento contínuo (situado)
- Capaz de abandonar e formular objetivos, pois, em
vez de alcançar o objetivo e parar, deve
persistir vivendo!!! - Capaz de tratar eventos inesperados, mesmo
durante a construção do plano - Exemplo CadeiraMesa
- Se alguém está jantando, adia a pintura para o
outro dia!
13Planejamento Condicional
- Ambientes completamente observáveis efeitos
imprevisíveis das ações - Ambientes parcialmente observáveis
14Planejamento Condicional
- Ambientes completamente observáveis
- O agente sabe seu estado atual, mas se o ambiente
for não determinista, ela não saberá o efeito de
suas ações - Ex. Aspirador Tabajara versão 2.0
- às vezes... suja o destino quando se move para lá
- às vezes... suja se sugar em um local limpo
- Plano condicional Como construí-lo?
- Primeiro passo estender STRIPS...
- Efeitos disjuntivos ação com um ou mais efeitos
- Action(Left, Precond AtR, Effect AtL ? AtR)
- Efeitos condicionais efeito depende do estado
onde a ação foi executada - Action(Suck, Precond, Effect (when AtLeft
CleanL) ? (when AtRight, CleanR) - Passos condicionais para testar na execução
- If ltAtLgt ? CleanL then Right else Suck
15Exemplo do aspirador tabajara 2.0
- Estados (totalmente acessível)
- Inicial AtR ? CleanL ? CleanR
- Final (objetivo) AtL ? CleanL ? CleanR
- Segundo passo
- Como aninhar condições gt plano árvore...
- Buscar uma solução
- Mas que tipo de árvore?
16And-Or Tree
State nodes (agente)
Chance nodes (natureza)
17Solução em uma And-Or tree
- A solução é uma sub-árvore
- Cujas folhas são todas iguais ao objetivo
- Que especifica uma ação a cada nó de estado
- Que inclui todas as conseqüências dos nós de
azar - A solução no caso seria o plano...
- Left, if AtL ? CleanL ? CleanR then else
Suck - Ou, no caso de planejar no espaço de planos
- descrição parcial do estado por linguagem mais
expressiva - Left, if CleanL then else Suck
18Similaridade com Jogos
- Jogos contra um adversário (no caso, a natureza)
jogos contra a natureza - Ganhar independente do que a natureza aprontar...
- Solução Min-Max, mas
- Max OR qualquer ação
- Min AND todas as conseqüências
- Retorno plano condicional
19Planejamento Condicional
- Ambientes parcialmente observáveis e não
deterministas - Os testes condicionais (percepções) nem sempre
funcionam... - Ex. aspirador só sabe se tem sujeira no quarto em
que está - Belief state (estado de crença)
- Ao invés de estado único, deve-se lidar
explicitamente com a ignorância para sempre estar
consciente do que se sabe (ou do que não se
sabe)! - Representado como um conjunto de estados
(possíveis) - Solução
- Grafos And-Or em estados de crença
- Combina planejamento condicional com sersorless
planning
20Exemplo
Estado de crença
- Aspirador Tabajara alternativo
- Deixa, as vezes, sujeira quando sai de uma
posição limpa - Não sabe se há sujeira no quadrado ao lado
Acreditava que esq estava limpa
Acreditava que esq estava suja
21Ainda algumas questões...
- Representação dos estados de crença
- descrição completa
- Crença A (atR ? CleanR ? CleanL), (atR ?
CleanR ? ?CleanL) - descrição incompleta...
- Crença A atR ? CleanR
- Mundo fechado...
- Como perceber um ambiente
- Sensores automáticos (olha tudo o tempo todo) ou
sensores ativos (só quando é decidido)
22Monitoramento da execução e replanejamento
- Para lidar com ambientes mais realistas!
23Monitoramentoreplanejamento
- Monitoramento da execução
- Checar as percepções para ver se tudo está indo
de acordo com o plano (pois sempre há imprevistos
-) - Dois tipos de monitoramento
- Monitoramento da ação para ver se a próxima é
aplicável - Ex. a porta está fechada
- Monitoramento do plano ver se o plano ainda é
viável - Ex. não tem mais suficiente
- Replanejamento
- Se algo inesperado acontece, pedir ao planejador
um novo plano ou tentar reparar o plano antigo
24Monitoramentoreplanejamento
?
- Exemplo
- aspirador que quando se desloca para lugar limpo
suja-o - basta não se preocupar com isto...
- Plano Left
- Se não dá para executar Finish (tem sujeira),
replaneja e encontra o plano Suck - A estratégia monitoramento replanejamento pode
ser aplicada em tudo - Ambiente total ou parcialmente acessível
- Espaço de estados ou de planos
- Planos condicionais ou não...
25Monitoramentoreplanejamento
- Reparo e continuação (Repair and continuation)
- Em vez de replanejar tudo, encontrar um
conserto... - Exemplo (planejamento em estado de espaço)
- Whole plan plano inteiro (inicial), S start, G
goal - Plan plano que resta
- O agente deveria chegar em E mas foi para O
(action monitoring) - Então tenta encontrar um plano que leve de O a
qualquer ponto de WholePlan
26Exemplo Pintura
- De cadeira azul, mesa verde, lata de tinta azul e
lata de tinta vermelha para tudo pintado da mesma
cor - Formalmente
- Init (Color(Chair,Blue) ? Color(Table,Green) ?
PaintCan(BC), ContainsColor(BC,Blue),
PaintCan(RC), ContainsColor(RC,Red)) - Goal (Color(Chair, x) ? Color(Table, x))
- Action (Paint (object,color) PRECOND
HavePaint(color) EFFECT Color(object,color)) - Action (Open (can) PRECOND PaintCan(can) ?
ContainsColor(can,color) EFFECT
HavePaint(color)) - A solução seria
- Start Open(BC) Paint(Table,Blue) Finish
27Exemplo Pintura
- Execução/reparo
- Agente executa Start Open(BC) Paint(Table,Blue)
- Mas, antes de executar Finish, ele verifica que
esqueceu uma mancha verde na mesa... - Neste caso, Repair (já que não conhece a
ação pinta mancha), e retoma plano inteiro
(inicial) em Paint(Table,Blue), Finish - Obs
- Funciona naturalmente como um laço que verifica
se ficou ok e caso contrário refaz
28Monitoramentoreplanejamento
- Porém, ...as vezes monitoramento de ação não é o
bastante - Só detecta a falha tarde demais porque verifica,
a cada passo, somente se o próximo é executável - Exemplo decidir pintar tudo de vermelho
- depois de pintar a cadeira, descobrir que não tem
tinta suficiente para a mesa - É preciso, em qualquer estado, detectar falhas
que inviabilizem o resto do plano
29Monitoramentoreplanejamento
- Monitorando plano
- Verifica, a cada passo, as pré-condições para o
sucesso do plano inteiro - Exceto as pré-condições que serão alcançadas por
outros passos do plano remanescente - Com isto, corta a execução de planos
amaldiçoados o mais cedo possível - Entretanto, problemático em ambientes
parcialmente acessíveis - Agente pode não detectar coisas que estão dando
errado - Pode-se perder mais tempo verificando todas as
condições do futuro plano do que agindo - Solução escolher as verificações relevantes e
torcer para tudo dar certo - mantendo monitoramento das ações sempre!
30Outras limitações de monitreplan
- Não há garantias formais
- que o plano será concebido e executado com
sucesso - Dificuldade em distinguir problemas difíceis de
fúteis (s/ solução)? - O agente ficar bloqueado
- Ex. tentando abrir a porta do quarto com a chave
errada - Soluções
- Tentar aleatoriamente reparos diferentes para ver
se dá sorte - Aprendizagem por reforço
- Não funciona em tempo real
- Na há limites para o tempo gasto em replanejar
- Não pode formular novos objetivos
31Planejamento Contínuo (Situado)
32Agente de Planejamento Situado
- Não é um mero resolvedor de problemas
- O plano é viver...
- Diferenças básicas
- Cria plano incrementalmente (dentro de limites de
tempo) - Pode começar a executar um plano mesmo incompleto
- Continua planejando durante a execução
- Pode mudar de objetivo
- Ou seja, é capaz de intercalar continuamente
- Execução de passos (de percepção e efetivação)
- Monitoramento
- Replanejamento
33Exemplo
- Mundo dos blocos
- Plano POP condicional
- Mundo observável (mas funciona igual)
- Action Mover (x, y), mover x para cima de y
- PRECOND Limpo(x) ? Limpo(y) ? EmCima(x,z)
- EFFECT EmCima (x,y) ? Limpo(z) ?
?EmCima(x,z) ? ?Limpo(y) - O agente escolheu o objetivo abaixo
34Plano Inicial
Supondo que nada acontece enquanto se planeja, o
plano é rapidamente encontrado com POP... Ele
será executado em seguida!
EmCima (C,F) Limpo (C) Limpo (D)
Mover (C,D)
NaMesa (A) EmCima (B,E) EmCima (C,F) EmCima
(D,G) Limpo (A) Limpo (C) Limpo (D) Limpo (B)
EmCima (C,D) EmCima (D,B)
Início
Fim
EmCima (D,G) Limpo (D) Limpo (B)
Mover (D,B)
35 Mas eis que de repente... antes da execução.. a
natureza intervém
Um agente externo
EmCima (C,F) Limpo (C) Limpo (D)
Mover (C,D)
NaMesa (A) EmCima (B,E) EmCima (C,F) EmCima
(D,B) Limpo (A) Limpo (C) Limpo (D) Limpo (G)
EmCima (C,D) EmCima (D,B)
Início
Fim
EmCima (D,y) Limpo (D) Limpo (B)
Mover (D,B)
Plano incompleto!
36Estendendo um link causal
EmCima (C,F) Limpo (C) Limpo (D)
Mover (C,D)
NaMesa (A) EmCima (B,E) EmCima (C,F) EmCima
(D,B) Limpo (A) Limpo (C) Limpo (D) Limpo (G)
EmCima (C,D) EmCima (D,B)
Início
Fim
EmCima (D,y) Limpo (D) Limpo (B)
Mover (D,B)
Plano completo mas redundante!
37Eliminando passos redundantes
EmCima (C,F) Limpo (C) Limpo (D)
Mover (C,D)
NaMesa (A) EmCima (B,E) EmCima (C,F) EmCima
(D,B) Limpo (A) Limpo (C) Limpo (D) Limpo (G)
EmCima (C,D) EmCima (D,B)
Início
Fim
38Mas o agente é desastrado...
Coloca C em cima de A ao invés de D
NaMesa (A) EmCima (B,E) EmCima (C,A) EmCima
(D,B) Limpo (F) Limpo (C) Limpo (D) Limpo (G)
EmCima (C,D) EmCima (D,B)
Início
Fim
39Adicinando um novo passo...
EmCima (C,A) Limpo (C) Limpo (D)
Mover (C,D)
NaMesa (A) EmCima (B,E) EmCima (C,A) EmCima
(D,B) Limpo (F) Limpo (C) Limpo (D) Limpo (G)
EmCima (C,D) EmCima (D,B)
Início
Fim
40Finalmente, o agente situado pode buscar um novo
objetivo
NaMesa (A) EmCima (B,E) EmCima (C,D) EmCima
(D,B) Limpo (A) Limpo (C) Limpo (D) Limpo (G)
EmCima (C,D) EmCima (D,B)
Início
Fim
41No mundo real...
- Combina-se várias abordagens de planejamento
- Ex. Fabricantes de carro -gt pneu estepe e air bag
planos condicionais de furos e batidas - Para motoristas, são possibilidades gt
replanejamento - Cria-se planos condicionais só para as
contigências que trazem graves conseqüências - Ex. Em um Rally, vale a pena assegurar o estepe e
air bag - Mesmo este super-agente, tem ainda defeitos???
42No mundo real...
- Sim... os agentes estudados não sabem encontrar
um compromisso entre probabilidade de sucesso e
custo da construção de um plano - Decision-theoretical Agents
43Bibliografia