A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Planejamento e Execução Jacques Robin (DI-UFPE) Fernanda Marques Simone Correia.

Apresentações semelhantes


Apresentação em tema: "Planejamento e Execução Jacques Robin (DI-UFPE) Fernanda Marques Simone Correia."— Transcrição da apresentação:

1 Planejamento e Execução Jacques Robin (DI-UFPE) Fernanda Marques Simone Correia

2 Conteúdo * 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.

3 Introdução * POP e POP-TIRC-HAD-DUNC: Funcionam quando: t Ambiente acessível, estático, determinístico t Conhecimento completo e correto Só perceber, depois só planejar, depois agir cegamente * Em ambientes mais desafiadores: Abordagens: t 1. Planejamento condicional t 2. Monitoriamento da execução t 3. Planejamento situado Perceber, depois juntamente planejar, perceber e agir

4 1. 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: t ter efeitos colaterais no ambiente t desencadear sub-plano com ações de efetuação

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

6 Conserto de um pneu vazio: operadores, objetivo, condições iniciais * Operadores: - Op(Action: Remove(x), Precond: On(x), Effect: Off(x)^ClearHub(x)^notOn(x)) - Op(Action: PutOn(x), Precond: Off(x)^ClearHub(x), Effect: On(x)^notClearHub(x)^not Off(x)) - Op(Action: Inflate(x), Precond: Intact(x)^ Flat(x), Effect: Inflated(x)^notFlat(x)) * Objetivo: On(x)^Inflated(x) * Condições iniciais: Inflated(Spare)^Intact(Spare)^Off(Spare)^On(Tire1)^ Flat(Tire1)

7 Concerto de um pneu vazio: planos * POP: [Remove(Tire1). PutOn(Spare)] * Conhecimento incompleto: Intact(Tire1) * Planejador condicional (CPOP): If(Intact(Tire1), [Inflate(Tire1)], [Remove(Tire1), PutOn(Spare)]) Mais eficiente do que POP

8 Execução de um plano condicional * Condição é verificada na BC e deve ser conhecida naquele ponto do plano * Conhecimento = BC inicial + deduções a partir das seqüências de percepções e ações * Para plano condicional ser executável: inserção de ações de percepção testando as condições * Ex,: Ação de percepção = CheckTire (x) Novo Operador : Op(Action: CheckTire(x), Precond: Tire(x), Effect: KnowsWhether(Intact(x)))

9 Construir um plano condicional * Contexto = condições necessárias para executar os passos condicionais * Inflate(Tire1), contexto: Intact(Tire1) * Propagação de contexto * Passos condicionais e links condicionais * Contexto x Precondição: precondição: associada a uma ação contexto: associado a uma possível instanciação do plano condicional

10 StartFinish On(Tire1) Flat(Tire1) Inflated(Spare) On(x) Inflated(x) ( true ) Start On(Tire1) Flat(Tire1) Inflated(Spare) Finish (true) On(Tire1) Inflate(Tire1) Flat(Tire1) Intact(Tire1) Inflated(Tire1) Geração do Plano

11 Start On(Tire1) Flat(Tire1) Inflated(Spare) Finish Intact(Tire1) On(Tire1) Check(Tire1) Inflate(Tire1) Intact(Tire1) Flat(Tire1) Intact(Tire1) Inflated(Tire1) Finish Not Intact(Tire1) On(x) Inflated(x) Start On(Tire1) Flat(Tire1) Inflated(Spare) Check(Tire1) Iflate(Tire1) Flat(Tire1) Intact(Tire1) Finish On(Tire1) Intact(Tire1) Finish NotIntact(Tire1) On(Spare) Inflated(Spare)

12 Plano completo: alguma ameaça? Start Finish (Intact(Tire1)) On(Tire1) Flat(Tire1) Inflated(Spare) On(Tire1) Inflated(Tire1) Inflate(Tire1) Check(Tire1) Flat(Tire1) Intact(Tire1) Remove(Tire1) (NotIntact(Tire1)) PutOn(Spare) (NotIntact(Tire1)) Finish (NotIntact(Tire1)) On(Spare) Inflated(Spare) NotIntact(Tire1) (Intact(Tire1))

13 Estendendo a linguagem de planejamento * Percepção não binária, ex.: Color(x,c) * Planos parametrizados com variável de execução. ex., [SenseColor(table), KnowsWhat(Color(table, c)), GetPaint(c), Paint(Chair,c)]. * Variáveis de execução Não se unificam entre si, nem com constantes, apenas com variáveis de planejamento * Loops: ex,: While (Knows(UnevenColor(chair)), [Paint(chair, c), CheckColor(chair)]) * Planejamento condicional e programação automática

14 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

15 Detecção das falhas do plano * 2 tipos de causas de falhas: Não determinismo ou inacessibilidade enumerável t ex., abrir lata de tinta (normal, vazia, derrame) t pode usar C-POP-D Não determinismo ou inacessibilidade não enumerável t ex., dirigir, planejamento econômico t requer replanejamento

16 Replanejamento * Escolher a melhor continuação * Verificar as precondições * Executar R PA InícioAgora Fim Q

17 Replanejamento * Escolher a melhor continuação * Verificar as precondições * Executar R P PA A InícioAgora Fim Q

18 Replanejamento * Escolher a melhor continuação * Verificar as precondições * Executar R P PA A InícioAgora Fim Q Q Q = R + P ( Plano inicial ) Q= R + P ( Plano Final )

19 Ex: Pintar cadeira da mesma cor da mesa Pega( Tinta) n/ Tem ( tinta )

20 Ex: Pintar cadeira da mesma cor da mesa Pega( Tinta) Pinta n/ Tem ( tinta ) Cor ( cadeira ) <> Cor ( mesa) e Tem (tinta)

21 Ex: Pintar cadeira da mesma cor da mesa Pega( Tinta) Pinta Fim n/ Tem ( tinta ) Cor ( cadeira ) <> Cor ( mesa) e Tem (tinta) Cor (cadeira) = Cor (mesa) (100%) Verifica

22 Ex: Pintar cadeira da mesma cor da mesa * Comportamento de loop emergente da interação (re)planejador-ambiente sem conceito de loop da linguagem de planejamento pode servir de base para aprendizagem Pega( Tinta) Pinta Fim n/ Tem ( tinta ) Cor ( cadeira ) <> Cor ( mesa) e Tem (tinta) Cor (cadeira) = Cor (mesa) (100%) Verifica

23 n/ Tem ( tinta ) Pega( Tinta) Pinta Fim Cor ( cadeira ) <> Cor ( mesa) e Tem (tinta) Cor (cadeira) = Cor (mesa) (100%) Verifica Ex: Pintar cadeira da mesma cor da mesa * Replaneja: P = {fim} --> P = {pinta,verifica,fim} P = {pinta,verifica,fim} --> P = {pega(tinta),pinta, verifica,fim}

24 Agente de 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.

25 Ex: Mundo dos blocos 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) Estado InicialObjetivo A BEBE CFCF DGDG A BEBEG CDCD F

26 Plano Inicial Início Mover (C,D) Estado Inicial A BEBE CFCF DGDG 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)

27 Eis que de repente... 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) A BEBE CFCFG D 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

28 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) A BEBE CFCFG D * Extendendo um link causal

29 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 BEBE CFCFG D * Eleminando passos redundantes

30 InícioFim 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) A BEBEFG D * Um Agente Aloprado... C

31 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) A BEBEFG D * Adicinando um novo passo... C

32 InícioFim 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) A BEBEFG D * Finalmente: plano revisado final completo e correto agente situado procura ovo objetivo C

33 (# passos) Planejamento condicional x replanejamento * 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.

34 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

35 Grau de Abstração Ambiente Determinístico Agente Planejador Simbólico Declarativo Ambiente Não-Determinístico Agente Reativo Simbólico Procedimental ou Sub-Simbólico Abstração, arquitetura híbridas e multi-agentes


Carregar ppt "Planejamento e Execução Jacques Robin (DI-UFPE) Fernanda Marques Simone Correia."

Apresentações semelhantes


Anúncios Google