Planejamento Situado Jacques Robin (CIn-UFPE) Fernanda Marques Simone Correia Introdução POP e HPOP: • Funcionam quando: Ambiente acessível, estático, determinístico Conhecimento completo e correto • Só perceber, depois só planejar, depois agir cegamente Em ambientes mais desafiadores: • Abordagens: 1. Planejamento condicional 2. Monitoriamento da execução 3. Planejamento situado • Perceber, depois juntamente planejar, perceber e agir Abordagens para planejamento em ambiente dinâmicos ou não-determinista Planejamento Condicional • Execução e geração de um plano condicional. • Extensão da linguagem Replanejamento • Monitoramento: ação x execução • Planejamento situado Extensões e Discussões • Planejamento condicional x replanejamento • Coerção e abstração. Planejamento condicional Plano condicional: • representa conjunto de planos, • um para cada possível situação de execução Ações de Efetuação x Ações de Percepção: • objetivo ação de efetuação: alterar ambiente • objetivo ação de percepção: alterar conhecimento do ambiente (ex, checar o preço de algum objeto). • Ação de percepção pode: ter efeitos colaterais no ambiente desencadear sub-plano com ações de efetuação Monitoramento da execução Começar execução com plano completo e correto dados conhecimento e suposições inicialmente disponíveis Usar percepções durante a execução para adquirir conhecimento complementar e verificar suposições Replanejar fim do plano para se adequar as situações não antecipadas. Ex., o agente descobre não ter $ suficiente para comprar todos os itens. E se as coisas não saírem como planejadas? Monitoramento da Ação: • Verificação, com percepção, das pre-condições do próximo passo Monitoramento da Execução: • Verificação, com percepção, das pré-condições do segmento de plano restante. Condições de lidar com pré-condições: • não planejadas • já satisfeitas Ex., robô dirigindo carro Detecção das falhas do plano 2 tipos de causas de falhas: • Não determinismo ou inacessibilidade enumerável ex., abrir lata de tinta (normal, vazia, derrame) pode usar C-POP-D • Não determinismo ou inacessibilidade não enumerável ex., dirigir, planejamento econômico requer replanejamento Replanejamento Q A R P Início Agora Fim Escolher a melhor continuação Verificar as precondições Executar Replanejamento Q R A P A’ P’ Início Agora Fim Escolher a melhor continuação Verificar as precondições Executar Replanejamento Q A R A’ P P’ Q’ Início Agora Fim Q = R + P ( Plano inicial ) Q’= R + P’ ( Plano Final ) Escolher a melhor continuação Verificar as precondições Executar Planejamento Situado Gera um plano inicial Logo começa a executá-lo mesmo incompleto Continua planejando durante a execução, intercalando: • execução de passos (de percepção e efetuação) • refinamento e ajuste do plano diante de defeitos e mudanças não antecipadas no ambiente. Ex: Mundo dos blocos A B E C F D G Estado Inicial A C D B E F G Objetivo Op(Ação: Mover(x, y), Precond: Limpo(x)^Limpo(y)^EmCima(x, z) Efeito: EmCima(x,y)^Limpo(z)^~EmCima(x, z)^~Limpo(y) A B E C F D G Plano Inicial Estado Inicial EmCima (C,F) Limpo (C) Limpo (D) Início NaMesa (A) EmCima (B,E) EmCima (C,F) EmCima (D,G) Limpo (A) Limpo (C) Limpo (D) Limpo (B) Mover (C,D) EmCima (C,D) EmCima (D,B) EmCima (D,G) Limpo (D) Limpo (B) Mover (D,B) Fim Eis que de repente... A D B E C F G A próxima ação seria: Mover (D, B), mas as pré-condições Limpo (B) ^ EmCima (D,G) não são mais válidas EmCima (C,F) Limpo (C) Limpo (D) Início NaMesa (A) EmCima (B,E) EmCima (C,F) EmCima (D,B) Limpo (A) Limpo (C) Limpo (D) Limpo (G) Mover (C,D) EmCima (C,D) EmCima (D,B) EmCima (D,y) Limpo (D) Limpo (B) Mover (D,B) Fim A D B E C F Extendendo um link causal G EmCima (C,F) Limpo (C) Limpo (D) Início NaMesa (A) EmCima (B,E) EmCima (C,F) EmCima (D,B) Limpo (A) Limpo (C) Limpo (D) Limpo (G) Mover (C,D) EmCima (C,D) EmCima (D,B) EmCima (D,Y) Limpo (D) Limpo (B) Mover (D,B) Fim A D B E C F Eleminando passos redundantes G EmCima (C,F) Limpo (C) Limpo (D) Início NaMesa (A) EmCima (B,E) EmCima (C,F) EmCima (D,B) Limpo (A) Limpo (C) Limpo (D) Limpo (G) Mover (C,D) EmCima (C,D) EmCima (D,B) Fim C A Início D B E F Um Agente Aloprado... G 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) Fim C A D B E F Adicinando um novo passo... G EmCima (C,A) Limpo (C) Limpo (D) Início NaMesa (A) EmCima (B,E) EmCima (C,A) EmCima (D,B) Limpo (F) Limpo (C) Limpo (D) Limpo (G) Mover (C,D) EmCima (C,D) EmCima (D,B) Fim A Início C D B E Finalmente: • plano revisado final completo e correto • agente situado procura novo objetivo F G 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) Fim Planejamento condicional x replanejamento (# passos) Planejamento Condicional: # condições = e Replanejamento: planos frágeis nem sempre podem ser completados Um sistema híbrido Conclusão: deve-se considerar probabilidades e custos dos resultados. Outros métodos para contornar a incerteza: coerção e agregação Coerção: • forçar o mundo a um estado conhecido. • ex., Objetivo: Color(Chair,c)^Color(Table,c) • Solução: pintar a cadeira e a mesa com mesma tinta Objetivo de manutenção: • proibir coerção de algumas propriedades de alguns objetos • ex., Color(Chair,c)^Color(Table,c)^Maintain(Color(Table,x)) Agregação: • agrupar objetos de comportamento individual não determinístico • em classes de comportamento global determinístico Abstração, arquitetura híbridas e multi-agentes Ambiente Determinístico Agente Planejador Simbólico Declarativo Grau de Abstração Ambiente Não-Determinístico Agente Reativo Simbólico Procedimental ou Sub-Simbólico