Você está na página 1de 19

Planejamento

INTELIGÊNCIA ARTIFICIAL
Planejamento
2

 Segundo Ghallab et al.:


 “Processo de deliberação explícita que escolhe e organiza
ações, antecipando os resultados esperados. Esta deliberação
visa atingir da melhor forma possível, alguns objetivos. ”

 Segundo Russell et al.:


 “A tarefa de apresentar uma sequência de ações que alcançarão
um objetivo.”
Aplicações
3

 Logística
 Planejamento operacional
 Robótica
 Escalonamento de Processos
 Dentre outros.
Exemplo – Mundo dos Blocos
4

Estado Inicial Objetivo


Mundo dos Blocos - Representação
Conhecimento
5

 Estados
 Exemplo: Livre B

 Objetivos
 Exemplo: Sobre(B,C) ^ Sobre(A,B)

 Ações
 Exemplos:
 Ação(Mover(bloco,origem,destino)
 Pré-Condição: Sobre(bloco,origem) ^ Livre(bloco) ^ Livre(destino),
 Efeito: Sobre(bloco,destino) ^ Livre(origem) ^ ¬Sobre(bloco,origem)
Planejamento - Ferramentas
6

 STRIPS (Stanford Research Institute Problem


Solver) .

 ADL (Action Description Language).

 PDDL (Planning Domain Definition Language).


STRIPS
7

 Richard Fikes e Nils Nilsson (1971).

 Derivada do cálculo proposicional


 modelo formal para representar ações e estados do mundo +
 algoritmo de busca em espaço de estados.

 Usa uma representação de literais de primeira ordem,


que devem ser básicos e livre de funções.

 Planejamento em STRIPS é dividido em: descrição do


domínio e descrição do problema;
STRIPS – Domínio do Problema
8

 Contém o conjunto de literais e a descrição das


ações.

 Descrição da Ação é composta por:


 Nome.

 Pré-condição.

 Efeito.
STRIPS – Descrição do Problema
9

 Problema descrito por:


 conjunto de constantes.
 estado inicial;
 estado objetivo.

 Estados representados por conjunções de literais


instanciados.
 sobre (x,y) – indica que o bloco x está em cima do bloco y;
 sobre-a-mesa(x) – indica que o bloco x está em cima da mesa;
 livre(x) – indica que não há nada em cima do bloco x.

 Baseia-se na hipótese do mundo fechado, ou seja, estado de


variáveis não mencionados são assumidos como falsos.
STRIPS – Mundos dos Blocos
10

 Exemplo - representação da ação desempilhar:


 desempilhar(x,y)
 pre: sobre(x,y) ∧ livre(x)
 add: livre(y) ∧ sobre-a-mesa(x)
 del: sobre(x,y)

 Exemplo: representação do estado inicial:


 sobre(C,A) ∧ sobre-a-mesa(A) ∧ sobre-a-mesa(B) ∧ livre(B) ∧ livre(C)

 Exemplo: representação do estado final:


 sobre(A,B) ∧ sobre(B,C)
STRIPS - Limitações
11

 Simplicidade restringe a sua utilização. Há situações


onde o formalismo de STRIPS não é suficiente.

 A linguagem STRIPS não suporta predicados de


igualdade e não é uma linguagem tipada.
ADL
12

 Surgiu na tentativa de suprir as limitações da


linguagem STRIPS.

 Através da linguagem ADL é possível representar


uma gama maior de problemas.
STRIPS vs ADL
13
PDDL
14

 Combinação das linguagens STRIPS e ADL.

 Especificação padrão para representar os problemas


de planejamento.

 Para a representação de um problema de


planejamento em PDDL são necessários dois
arquivos: arquivo de domínio e arquivo de problema.
PDDL - Arquivo domínio
15
PDDL –Arquivo Descrição do Problema
16
Grafos de Planos
17

 Estrutura de representação do espaço de estados que


permite a obtenção de soluções de ordem parcial
para o problema.

 Reduz significativamente as redundâncias presentes


na árvore de busca proposta por Blum e Furst em
1995.
Exemplo – Grafo de Planos
18

 Constituído de duas fases: expansão do grafo de planos e extração da solução.

 Si : estado
 Ai : Ação
 Exemplo construído até o nível S2
 Retângulos indicam ações
 Pequenos quadrados indicam ações de persistência (inação)
 Linhas na cor preta indicam precondições e efeitos
 Linhas na cor cinza indicam vínculos de exclusão mútua.
Grafos de Planos
19

 O grafo é expandido com novos níveis Si e Ai até


dois níveis consecutivos sejam idênticos.

 Para a extração do plano o algoritmo busca


retrocedendo (backwards) no grafo usando busca
gulosa e alguma heurística.

Você também pode gostar