1 / 22

Planejamento Clássico – Parte 1

Planejamento Clássico – Parte 1. Sergio Queiroz *. *Baseado nos slides de Alan Fern ( Oregon State University ), que por sua vez foram parcialmente baseados em slides por Daniel Weld. Alguns problemas de planejamento em IA. Paciência. Planejamento para resposta a Incêndio , Resgate.

kalona
Télécharger la présentation

Planejamento Clássico – Parte 1

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PlanejamentoClássico – Parte 1 Sergio Queiroz* *Baseado nos slides de Alan Fern (OregonStateUniversity), que por sua vez foram parcialmente baseados em slides por Daniel Weld.

  2. Algunsproblemas de planejamentoem IA Paciência Planejamentopararesposta a Incêndio, Resgate Jogos de Estratégia Controle de robôs Segurança/Controle de Redes Controle de Helicóptero

  3. Elementoscomuns • Nóstemos um sistemacontrolávelquemuda de estado com o tempo (de alguma forma previsível) • O estadodescreveinformaçõesessenciaissobre o sistema (as informaçõesvisíveissobre as cartas no jogo de paciência…) • Nóstemos um objetivoqueespecificaquaisestados, ousequências de estados, sãomais/menosdesejados • Pode-se (parcialmente) controlar a transição dos estados do sistemaatravésdatomada de ações • Problema: A cadamomentodeve-se selecionarumaaçãoqueotimiza o objetivogeral • Produzir as sequências de estadosmaisdesejáveis

  4. Premissas do PlanejamentoClássico Ações Percepções Mundo únicafonte demudança perfeito ???? determinístico totalmenteobservável instantâneo Objetivoalcançar as condiçõesdo objetivo

  5. Premissas do PlanejamentoClássico Ações Percepções Mundo únicafonte demudança perfeito ???? determinístico totalmenteobservável instantâneo Objetivoalcançar as condiçõesdo objetivo Principais limitantes para muitas aplicações práticas

  6. Porque se importar com planejamentoclássico? • Ênfaseemanalisar a estruturacombinatória de problemas • Desenvolveumuitasideiaspoderosasnestadireção • Pesquisas “modernas” emplanejamento, comoMarkov Decision Processes (MDP), praticamenteignoraramestetipo de análise (emboratambémenfrentemestetipo de problema) • Planejadoresclássicoscostumam ser capazes de escalarmelhorparaespaços de estadosgrandesgraças à utilizaçãodessasideias. • Replanejamento:muitosambienteestáveissatisfazemaproximadamenteessaspremissas (e.g. robôpara mover caixas) • É possíveltratarviolaçõespequenas das premissasatravés de replanejamento e monitoramentodaexecução • O mundofrequentementenão é tãoaleatório e pode ser pensado de forma efetivamente de forma determinística

  7. Porque se importar com planejamentoclássico? • Ideiasoriundas de técnicas de planejamentoclássicofrequentementesão a base paradesenvolvertécnicas de planejamentonão-clássicas • Uso de planejadoresclássicoscomo um componente de planejamentoprobabilístico [Yoon et. al. 2008](i.e. redução de planejamentoprobabilísticoparaplanejamentoclássico) • Técnicaspoderosas de análise de domínio do planejamentoclássicoforamintegradasemplanejadores MDP

  8. RepresentandoEstados Estados do mundosãorepresentadoscomoconjuntos de fatos Fatostambémserãochamados de proposições. A A B B C C Closed World Assumption (CWA):Fatosnãolistadosem um estadosãoconsideradosfalsos. Sob CWA estamosassumindoque o mundo é totalmenteobservável.

  9. RepresentandoEstados Objetivostambémsãorepresentadoscomoconjuntos de fatos. Porexemplo, { on(A,B) }, é um objetivo no mundo dos blocos. Um estadoobjetivo é qualquerestadoquecontenhatodososestadosobjetivo A A B B C C Estado 1 é um estadoobjetivopara o objetivo{ on(A,B) }. Estado 2 não é um estadoobjetivopara{ on(A,B) }.

  10. RepresentandoumaAçãoemSTRIPS PutDown(A,B) A A B B C C Umadefinição STRIPS de açãoespecifica: 1) um conjuntoPRE de fatosquesãopré-condições 2) um conjuntoADD de fatos-efeitoquesãoadicionados 3) um conjuntoDEL de fatos-efeitoquesãoapagados PutDown(A,B): PRE: { holding(A), clear(B) }ADD: { on(A,B), handEmpty, clear(A) }DEL: { holding(A), clear(B) } STRIPS = Stanford Research InstituteProblem Solver

  11. Semântica de Ações STRIPS PutDown(A,B) A A B B C C • UmaaçãoSTRIPS é aplicável(oupermitida) em um estadoquandosuaspré-condiçõesestãocontidas no estado. • Tomarumaaçãoem um estadoSresultaem um novo estado: • S  ADD – DEL(i.e. adicionarosefeitos ADD e remover osefeitosDEL) PutDown(A,B): PRE: { holding(A), clear(B) }ADD: { on(A,B), handEmpty, clear(A)}DEL: { holding(A), clear(B) }

  12. Problema de Planejamento STRIPS Um problema de planejamento STRIPS especifica: 1) um estadoinicialS 2) um objetivoG 3) um conjunto de ações STRIPS Objetivo: encontrarumasequência de açõesquechegue a um estadoobjetivo, ouretornarque o objetivo é inalcançável. Problema-Exemplo: Solução: (PutDown(A,B)) A B PutDown(B,A): PRE: { holding(B), clear(A) }ADD: { on(B,A), handEmpty, clear(B) }DEL: { holding(B), clear(A) } PutDown(A,B): PRE: { holding(A), clear(B) }ADD: { on(A,B), handEmpty, clear(A)}DEL: { holding(A), clear(B) } Ações STRIPS

  13. PlanejadoresProposicionais • Porrazões de clarezaescrevemosproposiçõestaiscomoon(A,B) emfunção de objetos(e.g. A e B) e predicados(e.g. on). • No entanto, osplanejadoresqueiremosconsiderarignoram a estruturainterna de proposiçõestaiscomo on(A,B). • Taisplanejadoressãochamadosplanejadoresproposicionaisemoposição a planejadores de primeiraordem, ourelacionais • Portantonãofarádiferençapara o planejador se nóssubstituíssemostodaocorrência de “on(A,B)” em um problemapor“prop1” (e assimpordianteparaoutrasproposições) • Pareceerradoignorar a existência de objetos. Masatualmenteplanejadoresproposicionaissão o estado-da-arte.

  14. Esquemas de ações STRIPS Porconveniêncianóstipicamenteespecificamosproblemas via esquemas de açõesaoinvés de escreverações STRIPS individuais. PutDown(B,A): PRE: { holding(B), clear(A) }ADD: { on(B,A), handEmpty, clear(B) }DEL: { holding(B), clear(A) } Esquema de Ações: (x e y sãovariáveis) PutDown(x,y): PRE: { holding(x), clear(y) }ADD: { on(x,y), handEmpty, clear(x) }DEL: { holding(x), clear(y) } . . . . PutDown(A,B): PRE: { holding(A), clear(B) }ADD: { on(A,B), handEmpty, clear(A) }DEL: { holding(A), clear(B) } • Cada forma de substituirvariáveisporobjetos a partir do estadoinicial e objetivogeraumaação STRIPS “ground” (instanciada – semvariáveislivres). • Dado um conjunto de esquemas, um estadoinicial, e um objetivo, planejadoresproposicionaiscompilamesquemasemações ground e entãoignoram a existência de objetosdestepontoemdiante.

  15. STRIPS Versus PDDL • O AIMA fazreferência à PDDL paradefinição de problemas de planejamentoaoinvés de STRIPS • A Planning Domain Description Language (PDDL)foidefinidaporpesquisadoresemplanejamentocomoumalinguagempadrãoparadefinirproblemas de planejamento • IncluiSTRIPS comocaso especial juntamente com característicasmaisavançadas • Algumascaracterísticasadicionais simples incluem: especificação de tipoparaobjetos, pré-condiçõesnegadas, efeitos add/del condicionais • Algumascaracterísticasmaisavançadasincluem a introdução de variáveisnuméricas e açõesduráveis • A maioria dos planejadoresquevocêpodebaixarrecebe PDDL comoentrada (vejahttp://fai.cs.uni-saarland.de/hoffmann/ff.html ) • A maioriasuportaapenas as característicasmais simples de PDDL (essencialmenteSTRIPS) • A sintaxe PDDL é fácil de aprender a partir dos exemplosqueacompanhamosplanejadores, masumadefinição formal pode ser encontrada: http://www.informatik.uni-ulm.de/ki/Edu/Vorlesungen/GdKI/WS0203/pddl.pdf

  16. Propriedades de Planejadores • Um planejador é correto (sound)se todasequência de açõesqueeleretorna é de fatoumasoluçãoverdadeira • Um planejador é completo (complete) se eleretornaumasequência de açõesou “nãoexistesolução” paraqualquerproblema de entrada • Um planejador é ótimo (optimal) se elesempreretorna a soluçãomenorpossível O ótimo é um requisitoimportante? É um requisitorazoável?

  17. PlanejamentocomoBuscaemGrafos • É fácilverplanejamentocomo um problema de buscaemgrafos • Nós/vértices= estadospossíveis • Arestasdirecionadas= ações STRIPS • Solução: caminho de um estadoinicial(i.e. vértice) para um estado/vérticequesatisfaz o objetivo

  18. Espaço de Busca: Mundo dos Blocos Grafo é finito Estado Inicial Estado Objetivo

  19. PlanejamentocomoBuscaemGrafos • Planejamento é simplesmenteencontrar um caminhoem um grafo • Porquenãosimplesmenteusaralgoritmospadrãode grafosparaencontrarcaminhos? • Resposta:grafossãoexponencialmentegrandes no tamanho de codificação dos problemas(i.e. tamanho dos problemas STRIPS). • Mas, algoritmospadrãosãopolinomiais no tamanho do grafo • Entãoalgoritmospadrãonecessitariam de tempo exponencial • É possívelfazermelhor do queisso?

  20. Complexidade de Planejamento STRIPS PlanSATEntrada: um problema de planejamento STRIPSSaída: “sim” se o problema tem solução, casocontrário “não” • PlanSATé decidível. • Porque? (o número de estados é finito) • EmgeralPlanSATé PSPACE-completo! Simplesmenteencontrar um plano é difícil no piorcaso. • Mesmo com açõeslimitadaspara 2 pré-condições e 2 efeitos Issosignificaquedeve-se desistir de planejamentoem IA? NOTA: PSPACE é o conjunto de todososproblemasquesãodecidíveisemespaçopolinomial.Acredita-se que PSPACE-completocontémestritamenteNP.

  21. ? Satisficing vs. Optimality • Enquantosimplesmenteencontrar um plano é difícil no piorcaso, paramuitosdomínios de planejamento, encontrar um plano é fácil. • No entanto, encontrarsoluçõesótimaspodeainda ser difícil nesses domínios. • Porexemplo, planejamentoótimo no mundo dos blocos é NP-completo. • Na prática, é frequentementesuficienteencontrar “boas” soluções “rapidamente”, mesmoqueelasnãosejamótimas. • Isso é frequentementechamado de um objetivo do tipo “satisficing”. • Porexemplo, no mundo dos blocos é possívelproduzirsoluçõesaproximadamenteótimasem tempo linear. Como?

  22. Satisficing • Mesmoassim, encontrarplanossatisficingparaproblemas STRIPS arbitráriosnão é fácil. • Ainda é precisolidar com o tamanhoesponencial do espaço de estados • Porque é possívelfazermelhor do quealgoritmosgenéricos de grafos? • Resposta:nóstemosumadescrição STRIPS compacta e estruturada dos problemas • Tentartomarproveitodaestruturapresentenessasdescriçõesparaprocurarporsoluções de forma inteligente • A seguirveremosexemplo de comoissopode ser feito.

More Related