cin-ufpe 1 planejamento e ação planejando e agindo em ambientes incertos

43
1 CIn-UFPE Planejamento e Ação Planejando e agindo em ambientes incertos

Upload: internet

Post on 19-Apr-2015

108 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

1CIn-UFPE

Planejamento e Ação

Planejando e agindo em ambientes incertos

Page 2: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

2CIn-UFPE

Roteiro

Indeterminação do ambiente e suas soluções

Planejamento Condicional

Monitoramento da execução com replanejamento

Planejamento contínuo (situado)

Page 3: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

CIn-UFPE

Ambientes: 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 (POP+tempo+otimização)

Page 4: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

CIn-UFPE

Ambientes: 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

Page 5: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

5CIn-UFPE

Ambientes: 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

Page 6: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

6CIn-UFPE

Ambientes: 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

Page 7: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

7CIn-UFPE

Soluçõ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!!!

Page 8: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

8CIn-UFPE

Soluçõ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

Page 9: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

9CIn-UFPE

Exemplos...

Cadeira+Mesa• 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 => {2,4,6,8}, Sugar => {4,8},...• Solução: [dir, suga, esq, suga]

Page 10: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

10CIn-UFPE

Soluções para indeterminação limitada

Caso do Problema Contingencial (cap. 3 AIMA)• o ambiente parcialmente observável ou efeito das ações

desconhecido => 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 Cadeira+MesaPercebe as cores da cadeira e da mesaSe 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 outroCaso contrário, pinta ambos com a mesma cor.

Page 11: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

11CIn-UFPE

Soluçõ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 Cadeira+Mesa?

Plano• Se por acaso a pintura deixou alguma cor antiga

aparecendo, repintar a mobília em questão

Page 12: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

12CIn-UFPE

Soluçõ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 Cadeira+Mesa• Se alguém está jantando, adia a pintura para o outro dia!

Page 13: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

13CIn-UFPE

Planejamento Condicional

Ambientes completamente observáveis + efeitos imprevisíveis das ações

Ambientes parcialmente observáveis

Page 14: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

14CIn-UFPE

Planejamento 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 <AtL> CleanL then Right else Suck

Page 15: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

15CIn-UFPE

Exemplo do aspirador tabajara 2.0

Estados (totalmente acessível)• Inicial: AtR CleanL CleanR• Final (objetivo): AtL CleanL CleanR

Segundo passo• Como aninhar condições => plano = árvore...• Buscar uma solução• Mas que tipo de árvore?

Page 16: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

And-Or Tree State nodes (agente)

Chance nodes (natureza)

OR

OR OR

ANDAND

AND ANDAND AND

Page 17: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

17CIn-UFPE

Soluçã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]

Page 18: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

18CIn-UFPE

Similaridade 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

Page 19: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

19CIn-UFPE

Planejamento 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

Page 20: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

Exemplo 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 suja

Acreditava que esq estava limpa

Page 21: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

21CIn-UFPE

Ainda 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)

Page 22: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

22CIn-UFPE

Monitoramento da execução e replanejamento

Para lidar com ambientes mais realistas!

Page 23: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

CIn-UFPE

Monitoramento+replanejamento

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

Page 24: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

CIn-UFPE

Monitoramento+replanejamento

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...

?

Page 25: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

25CIn-UFPE

Monitoramento+replanejamento

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

Page 26: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

26CIn-UFPE

Exemplo 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]

Page 27: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

27CIn-UFPE

Exemplo 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

Page 28: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

28CIn-UFPE

Monitoramento+replanejamento

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

Page 29: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

29CIn-UFPE

Monitoramento+replanejamento

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!

Page 30: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

30CIn-UFPE

Outras limitações de monit+replan

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

Page 31: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

31CIn-UFPE

Planejamento Contínuo (Situado)

Page 32: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

CIn-UFPE

Agente 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

Page 33: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

33CIn-UFPE

Exemplo

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

Estado Inicial

ABE

CF

DG

Objetivo

ABE G

CD

F

Page 34: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

Plano Inicial

Início

Mover (C,D)

Estado Inicial

ABE

CF

DG

Mover (D,B)

Fim

NaMesa (A)EmCima (B,E)EmCima (C,F)EmCima (D,G)Limpo (A)Limpo (C)Limpo (D)Limpo (B)

EmCima (D,G)Limpo (D)Limpo (B)

EmCima (C,F)Limpo (C)Limpo (D)

EmCima (C,D)EmCima (D,B)

Objetivo

ABE G

CD

F

Supondo que nada acontece enquanto se planeja, o plano é rapidamente encontrado com POP... Ele será executado em seguida!

Page 35: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

Mas eis que de repente... antes da execução.. a natureza intervém

Início

Mover (C,D)

Mover (D,B)

Fim

NaMesa (A)EmCima (B,E)EmCima (C,F)EmCima (D,B)Limpo (A)Limpo (C)Limpo (D)Limpo (G) EmCima (D,y)

Limpo (D)Limpo (B)

EmCima (C,F)Limpo (C)Limpo (D)

EmCima (C,D)EmCima (D,B)

Um agente externo

Estado Inicial

ABE

CF

DG

Plano incompleto!

A

BE

CF G

D

Novo Estado Inicial

Page 36: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

Início

Mover (C,D)

Mover (D,B)

Fim

NaMesa (A)EmCima (B,E)EmCima (C,F)EmCima (D,B)Limpo (A)Limpo (C)Limpo (D)Limpo (G) EmCima (D,y)

Limpo (D)Limpo (B)

EmCima (C,F)Limpo (C)Limpo (D)

EmCima (C,D)EmCima (D,B)

Estendendo um link causal

Plano completo mas redundante!

A

BE

CF G

D

Estado Inicial Objetivo

ABE G

CD

F

Page 37: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

Início

Mover (C,D)

Fim

NaMesa (A)EmCima (B,E)EmCima (C,F)EmCima (D,B)Limpo (A)Limpo (C)Limpo (D)Limpo (G)

EmCima (C,F)Limpo (C)Limpo (D)

EmCima (C,D)EmCima (D,B)

A

BE

CF G

D

Estado Inicial Objetivo

ABE G

CD

F

Eliminando passos redundantes

Page 38: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

Início Fim

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)

Mas o agente é desastrado...

A

BE

CF G

D

Estado Inicial

Coloca C em cima de A ao invés de D

ABE F G

DC

Novo Estado Inicial Objetivo

ABE G

CD

F

Page 39: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

CIn-UFPE

Início

Mover (C,D)

Fim

NaMesa (A)EmCima (B,E)EmCima (C,A)EmCima (D,B)Limpo (F)Limpo (C)Limpo (D)Limpo (G)

EmCima (C,A)Limpo (C)Limpo (D)

EmCima (C,D)EmCima (D,B)

Adicinando um novo passo...

ABE F G

DC

Novo Estado Inicial Objetivo

ABE G

CD

F

Page 40: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

CIn-UFPE

Início Fim

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)

Finalmente, o agente situado pode buscar um novo objetivo

Estado inicial

ABE G

CD

F

Page 41: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

CIn-UFPE

No mundo real...

Combina-se várias abordagens de planejamento• Ex. Fabricantes de carro -> pneu estepe e air bag =

planos condicionais de furos e batidas• Para motoristas, são possibilidades => 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???

Page 42: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

CIn-UFPE

No 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

Page 43: CIn-UFPE 1 Planejamento e Ação Planejando e agindo em ambientes incertos

43CIn-UFPE

Bibliografia

Livro AIMA cap. 12