Ferramentas de Planejamento em IA

14
Ferramentas de Planejamento em IA Blackbox Planner

description

Ferramentas de Planejamento em IA. Blackbox Planner. Exemplos de Ferramentas. CI Space Planning Modelagem do problema em STRIPS Demonstração no domínio dos blocos http://www.cs.ubc.ca/labs/lci/CIspace/Version4/planning/index.html O-Plan: Arquitetura de Planejamento - PowerPoint PPT Presentation

Transcript of Ferramentas de Planejamento em IA

Page 1: Ferramentas de Planejamento em IA

Ferramentas de Planejamento em IA

Blackbox Planner

Page 2: Ferramentas de Planejamento em IA

Exemplos de Ferramentas

• CI Space Planning– Modelagem do problema em STRIPS– Demonstração no domínio dos blocos– http://www.cs.ubc.ca/labs/lci/CIspace/Version4/planning/index.html

• O-Plan: Arquitetura de Planejamento– Modelagem do problema em TF (Task Formalism)– Demonstração em um domínio de busca e salvamento– http://oplan.aiai.ed.ac.uk/oplan/web-demo/index.html

• Paradocs: planejamento temporal– Planejamento baseado em restrições temporais (paper)– Demonstração no domínio de veículos não tripulados (vídeo)

Page 3: Ferramentas de Planejamento em IA

Blackbox - Funcionamento

Representação em PDDL

Camada STRIPS

Grafo de planejamento

CNF

Construtor do grafo

Tradutor Fórmula Lógica

WalkSAT SATz SATz Compact

Possíveis algoritmos de satisfatibilidade

Page 4: Ferramentas de Planejamento em IA

PDDL

• Planning Domain Description Language• Define duas partes: domínio e problema

– Definição do domínioRequirements: strips, equality, typing, ADL;Predicades: PREDICATE_NAME [? A1 ? A2 … ?An];

Action: parameters, precondition, effect;

– Definição do problemaObjects; Init;Goal;

Page 5: Ferramentas de Planejamento em IA

Grafo de Planejamento

• Usa um algoritmo polinomial para construir um grafo representando todos os possíveis caminhos de um problema de planejamento;

• Não é um grafo de espaço de busca– Os nós representam proposições e ações organizados de forma

alternada.

Page 6: Ferramentas de Planejamento em IA

C N F

• Conjunctive Normal Form– Uma fórmula lógica está em CNF se ela é uma conjunção de

cláusulas, onde cada cláusula é uma disjunção de literais A B A (B C) (A B) (B C B D) (D E) (B C)

– Algoritmos de satisfabilidade buscam encontrar atribuições (T/F) para as variáveis booleanas da fórmula expressa em CNF de modo que toda a fórmula seja verdadeira.

Page 7: Ferramentas de Planejamento em IA

Prática

• Copie para o mesmo diretório os seguintes arquivos:

– www.cin.ufpe.br/~cas/classes/blackbox/blackbox.exe– www.cin.ufpe.br/~cas/classes/blackbox/cygwin1.dll– www.cin.ufpe.br/~cas/classes/blackbox/domain.pddl – www.cin.ufpe.br/~cas/classes/blackbox/prob004-log-a.pddl

Page 8: Ferramentas de Planejamento em IA

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)

Page 9: Ferramentas de Planejamento em IA

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

Domain.pddl

Page 10: Ferramentas de Planejamento em IA

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

Page 11: Ferramentas de Planejamento em IA

O arquivo de fatos: Prob004-log-a.pddl

• Abra o arquivo prob004-log-a.pddl (Este é o arquivo de fatos)

• Define a situação inicial– 8 objetos do tipo PACKAGE– 2 aeroportos– 3 cidades– 3 caminhões– 3 locais

Page 12: Ferramentas de Planejamento em IA

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

Page 13: Ferramentas de Planejamento em IA

Executando o Blackbox

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

Page 14: Ferramentas de Planejamento em IA

Executando o Blackbox

• Examinando o arquivo de saída:

– blackbox -o domain.pddl -f  prob004-log-a.pddl > out.txt – Ou: – blackbox -o domain.pddl -f  prob004-log-a.pddl –g saida.txt

– Página do Blackbox

http://www.cs.washington.edu/homes/kautz/blackbox/