1 / 22

Blackbox

Blackbox. Ferramenta de Planejamento em IA Jairson Vitorino, 06 de maio de 2005 jv@cin.ufpe.br. Roteiro. Blackbox SATPLAN versus Graphplan Blackbox Blackbox : Funcionamento Prática Referências. Blackbox. Satplan + Graphplan. Satplan versus Graphplan.

therese
Download Presentation

Blackbox

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. Blackbox Ferramenta de Planejamento em IA Jairson Vitorino, 06 de maio de 2005 jv@cin.ufpe.br

  2. Roteiro • Blackbox • SATPLAN versus Graphplan • Blackbox • Blackbox : Funcionamento • Prática • Referências

  3. Blackbox Satplan + Graphplan

  4. Satplan versus Graphplan • De acordo com [Kautz e Selman], comparações entre o SATPLAN e o Graphplan mostram que nenhum deles é estritamente superior. • SATPLAN é mais rápido no domínio de logística complexa, os dois algoritmos têm desempenho igual no problema do mundo dos blocos. • Graphplan é mais rápido em outros domínios.

  5. Arquitetura Blackbox PDDL Camada STRIPS Construtor do Grafo Plano PDDL Tradutor Fórmula Lógica Plano PDDL WalkSAT SATz RelSAT Compact

  6. Satplan versus Graphplan • Os dois algoritmos possuem uma importante semelhança • Ambos trabalham em duas fases: • Primeiro criam um estrutura proposicional (no Graphplan um grafo de planejamento, no SATPLAN uma fórmula bem formada CNF) • Em seguida fazem uma busca sobre essa estrutura, instanciando as variáveis da formulação do problema de planejamento

  7. Blackbox • Converte problemas especificados usando a camada básica de PDDL correspondendo a STRIPS para problemas de satisfatibilidade. • O front-end usa graphplan. • Flexibilidade no uso de vários algoritmos (WalkSAT, SATz e o algoritmo original de Graphplan) • Linguagem STRIPS-style em PDDL (Planning Domain Definition Language)

  8. Blackbox • Com o Blackbox é possível usar o algoritmo walksat (Selman, Kautz, and Cohen 1994) por 60 segundos, e se isso falhar, o algoritmo satz (Li and Anbulagan 1997) for 1000 segundo.

  9. Blackbox: Funcionamento • Um problema de planejamento especificado em STRIPS é convertido em grafo de planejamento • O grafo de planejamento é convertido em uma CNF bem formada • A CNF bem formada é resolvida por um das SAT engines disponíveis.

  10. Blackbox: Funcionamento • A sentença bem formada CNF gerada pelo grafo de planejamento pode ser bem menor do que a gerada diretamente a partir de sentenças em STRIPS • Introduz o uso do "randomized complete search methods" (adicionando um fator aleatório na busca heurística e reiniciando o algoritmo após um determinado número de backtrackings)

  11. Prática • Copie para o mesmo diretório os seguintes arquivos: • www.cin.ufpe.br/~jv/blackbox.exe • www.cin.ufpe.br/~jv/cygwin1.dll • www.cin.ufpe.br/~jv/domain.pddl • www.cin.ufpe.br/~jv/prob004-log-a.pddl

  12. Prática • O Blackbox trabalha com um arquivo de operações e um arquivo de fatos. • Abra o arquivo domain.pddl (Este é o arquivo de definição de domínio e operações)

  13. Domain.pddl • Tipado: (:types PACKAGE TRUCK LOCATION AIRPLANE CITY AIRPORT) • Predicados e Variáveis: • (:predicates (at ?obj ?loc) ... • Ações com parâmetros, pré-condições e efeitos: (:action LOAD-TRUCK :parameters(?obj – PACKAGE ...

  14. Domain.pddl • Ações: • LOAD-TRUCK ; LOAD-AIRPLANE ; UNLOAD-TRUCK ; UNLOAD-AIRPLANE ; DRIVE-TRUCK ; FLY-AIRPLANE ; • Exemplo completo: (:action FLY-AIRPLANE :parameters (?airplane - AIRPLANE ?loc-from - AIRPORT ?loc-to - AIRPORT) :precondition (at ?airplane ?loc-from) :effect (and (not (at ?airplane ?loc-from)) (at ?airplane ?loc-to)))

  15. O arquivo de fatos • O Blackbox trabalha com um arquivo de operações e um arquivo de fatos. • Abra o arquivo prob004-log-a.pddl (Este é o arquivo de fatos)

  16. Prob004-log-a.pddl • Define a situação inicial • 8 objetos do tipo PACKAGE • 2 aviões • 3 cidades • 3 caminhões • 3 locais • 3 aeroportos/locais  • (either LOCATION AIRPORT)

  17. Prob004-log-a.pddl • Define a situação inicial: • (:init (in-city pgh-po pgh)... • Define o objetivo (:goal (and (at package1 bos-po) (at package2 bos-airport) ...

  18. Algumas opções do Blackbox • -t <integer> especifica um número fixo de unidades de tempo • -step<n> incrementa grafo de planejamento para tamanho <n> • -noskip não pula o graphplan solver • -noopt pára assim que uma solução é encontrada

  19. Opções avançadas do Blackbox • BLACKBOX -solver <SPEC> { -then <SPEC> }* sequência de resolvedores, onde: • <SPEC> { -maxit N } { -maxsec F } <COMMAND> {solver specific options}, onde • <COMMAND> == graphplan || satz || walksat || relsat || compact • maxsec F == executa o resolvedor por F segundos • maxit N = = executa o resolvedor N iterações

  20. Executando o planejador • O Blackbox trabalha com um arquivo de operações e um arquivo de fatos. • Digite na linha de comando: • blackbox -o domain.pddl -f  prob004-log-a.pddl • A opção -o indica o arquivo de operações e a opção -f o arquivo de fatos. • Lembre-se! Todos os arquivos que você copiou devem estar em um mesmo diretório.

  21. Executando o Blackbox • Examinando o arquivo de saída: • blackbox -o domain.pddl -f  prob004-log-a.pddl > out.txt

  22. Referências • [Kautz e Selman], Unifying STRIPS and SAT with BLACKBOX. Disponível para download em: http://citeseer.ist.psu.edu/kautz99unifying.html AIMA capítulos 11 e 12 (livro texto da disciplina) • Site do Blackbox http://www.cs.washington.edu/homes/kautz/satplan/blackbox/

More Related