Topologia de espa¸
cos de estados em planejamento com
vari´
aveis num´
ericas
Aldebaran Perseke
Disserta¸c˜ao apresentada ao Instituto de Matem´atica e Estat´ıstica da
Universidade de S˜ao Paulo para Obten¸c˜ao do Grau de Mestre em Ciˆencia da Computa¸c˜ao
Curso: Mestrado em Ciˆencia da Computa¸c˜ao ´
Area de concentra¸c˜ao: Inteligˆencia Artificial Orientadora: Prof. Dra. Leliane Nunes de Barros
Objetivos
• Apresentar um estudo sobre a ´area de planejamento em IA enfocando proble-mas que envolvam recursos e vari´aveis num´ericas, aspectos t´ıpicos de problemas de escalonamento;
• Apresentar a teoria de Hoffmann para classifica¸c˜ao de dom´ınios STRIPS segundo as propriedades topol´ogicas dos espa¸cos de busca;
• Estender a teoria de Hoffmann para problemas envolvendo vari´aveis num´ericas;
• An´alise, segundo a teoria de Hoffmann estendida, de dois dom´ınios com vari´aveis num´ericas da competi¸c˜ao internacional de planejamento IPC-2002 ;
Planejamento em IA
• A tarefa de planejamento envolve o racioc´ınio sobre a escolha de a¸c˜oes e a ordem em que elas devem ser executadas para a satisfa¸c˜ao dos objetivos de um problema;
• Pesquisas na ´area de planejamento em IA envolvem:
1. modelos para definir os algoritmos e estabelecer classes de problemas e tipos de solu¸c˜ao;
2. linguagens para representa¸c˜ao de problemas; 3. algoritmos para resolver os problemas.
Modelo de estados
• Modelos de estados s˜ao caracterizados por:
? Um espa¸co de estados S, finito e discreto
? Um estado inicial s0 ∈ S
? Um conjunto de estados objetivo SG ⊂ S
? Um conjunto de a¸c˜oes A(s) ⊂ A, aplic´aveis em um estado s ∈ S
? Uma fun¸c˜ao f de transi¸c˜ao de estados, que mapeia um estado s em um estado s0 = f (s, a) para s, s0 ∈ S e a ∈ A(s)
Espa¸
co de estados
Um modelo de estados pode ser representado por um grafo orientado definindo assim um espa¸co de estados a partir do estado inicial.
O problema de planejamento
• O problema de planejamento pode ser formalmente descrito por uma tupla < ∆, Σ, Γ >, onde:
1. ∆ representa a descri¸c˜ao do conjunto de a¸c˜oes que podem ser escolhidas, chamado de teoria do dom´ınio;
2. Σ representa a descri¸c˜ao do estado inicial do mundo; 3. Γ representa a descri¸c˜ao do objetivo.
• Suposi¸c˜oes do planejamento cl´assico:
Linguagem STRIPS
Est.Inicial: SobreMesa(A) ∧ SobreMesa(B) ∧ Sobre(C,A) ∧ Limpo(B) ∧ Limpo(C) ∧ BracoLivre
Objetivo: SobreMesa(C) ∧ Sobre(B,C) ∧ Sobre(A,B)
Teoria do Dom´ınio:
Op1: Pegar(x) Op2: Soltar(x)
Pr´e-cond.: Limpo(x) ∧ SobreMesa(x) ∧ BracoLivre Pr´e-cond.: Segurando(x)
Adi¸c˜ao: { Segurando(x) } Adi¸c˜ao: { SobreMesa(x), Limpo(x), BracoLivre } Remo¸c˜ao: { SobreMesa(x), Limpo(x), BracoLivre } Remo¸c˜ao: { Segurando(x) }
Op3: Desempilhar(x,y) Op4: Empilhar(x,y)
Pr´e-cond.: Sobre(x,y) ∧ Limpo(x) ∧ BracoLivre Pr´e-cond.: Segurando(x) ∧ Limpo(y)
Adi¸c˜ao: { Segurando(x), Limpo(y) } Adi¸c˜ao: { Limpo(x), Sobre(x,y), BracoLivre } Remo¸c˜ao: { Limpo(x), Sobre(x,y), BracoLivre } Remo¸c˜ao: { Segurando(x), Limpo(y) }
Planejamento como busca heur´ıstica
• At´e o final dos anos 90 as pesquisas se concentravam em planejamento como busca pelo espa¸co de planos. Planejadores POP, SNLP, Prodigy;
• No final dos anos 90 o planejador HSP resgatou a busca pelo espa¸co de estados guiado por uma fun¸c˜ao heur´ıstica;
• Uso de heur´ısticas baseadas na solu¸c˜ao de uma tarefa relaxada exploram o conhecimento acumulado em pesquisas passadas;
O grafo de planejamento
• O planejador Graphplan introduziu o conceito do grafo de planejamento;
• O grafo de planejamento ´e um grafo orientado de n´ıveis, ou camadas. Esse grafo tem alternadamente n´ıveis de proposi¸c˜oes e n´ıveis de a¸c˜oes;
• O planejador Graphplan alterna entre duas fases: a constru¸c˜ao de um grafo de planejamento e a extra¸c˜ao de uma solu¸c˜ao desse grafo;
• Durante a constru¸c˜ao do grafo de planejamento, ap´os a adi¸c˜ao de cada par de n´ıveis de a¸c˜oes e proposi¸c˜oes, Graphplan efetua uma an´alise de rela¸c˜oes de exclus˜ao m´utua entre todas as combina¸c˜oes de dois v´ertices de um mesmo n´ıvel do grafo.
O grafo de planejamento
A figura a seguir apresenta o grafo de planejamento para o problema do jantar surpresa:
O planejador FF
• O planejador FF ´e baseado na id´eia da heur´ıstica do planejador HSP, que estima as distˆancias para o estado objetivo pelo comprimento de uma solu¸c˜ao aproximada para uma tarefa de planejamento relaxada;
• Dada uma tarefa de planejamento P =< ∆, Σ, Γ >, a tarefa relaxada P0 obtida a partir de P ´e definida como P0 =< ∆0, Σ, Γ >, onde ∆0 ´e dado por:
∆0 = {(pre(δ), add(δ), ∅)|(pre(δ), add(δ), del(δ)) ∈ ∆}
• A heur´ıstica do planejador FF emprega o grafo de planejamento para resolver a tarefa relaxada em tempo polinomial;
• O algoritmo de busca empregado pelo FF utiliza a t´ecnica de busca Hill-Climbing refor¸cado, combinando busca local e sistem´atica.
Planejamento & Escalonamento
• Pesquisadores de planejamento em IA buscam formas de representa¸c˜ao e algoritmos independentes dos dom´ınios de aplica¸c˜ao;
• Pesquisadores de escalonamento buscam formas de classifica¸c˜ao dos problemas e algoritmos para a resolu¸c˜ao de classes espec´ıficas de problemas;
• Muitos problemas reais apresentam aspectos t´ıpicos tanto de planejamento quanto de escalonamento;
• Com a inten¸c˜ao de atrair o maior n´umero poss´ıvel de pesquisadores, a com-peti¸c˜ao IPC-2002 teve como objetivo apresentar problemas de planejamento que envolvessem racioc´ınio sobre tempo e vari´aveis num´ericas.
Aspectos de escalonamento
Recursos restringem o n´umero de a¸c˜oes que podem ser executadas em paralelo;
Vari´aveis Num´ericas restringem o n´umero de a¸c˜oes que podem ser livremente executadas durante todo o ciclo de vida de um plano, e podem ser consum´ıveis ou produz´ıveis;
Tempo caracteriza a dura¸c˜ao de cada a¸c˜ao, a ordena¸c˜ao entre elas e instantes (no in´ıcio, durante ou no fim da a¸c˜ao) em que proposi¸c˜oes s˜ao satisfeitas;
Uma linguagem restrita para problemas com vari´
aveis
num´
ericas
• Um estado do mundo ´e descrito por:
S = {(α, β)|α : VP → {⊥, >}, β : VN → Q}
• Um formalismo num´erico de planejamento ´e uma tripla F = (G, P, E ), onde G, P, E ⊆ S
n≥1(Q n
→ Q) s˜ao conjuntos de fun¸c˜oes racionais em uma ou mais vari´aveis;
• As vers˜oes num´ericas dos dom´ınios do Sat´elite e do Robˆo de Explora¸c˜ao utilizam o formalismo num´erico F = (∅, {x 7→ x − c | c ∈ Q}, {x 7→ x + c | c ∈ Q}).
Planejamento com vari´
aveis num´
ericas
O problema do telesc´opio espacial batizado de Satellite, o problema consiste de um conjunto de sat´elites de observa¸c˜ao, cada qual com um conjunto de instrumentos que suportam alguns modos de observa¸c˜ao, como fotogr´afico, raios-X, infravermelho, etc. Os objetivos do problema s˜ao descritos como uma quantidade de observa¸c˜oes a serem realizadas de fenˆomenos espaciais, como planetas, galaxias, supernovas, etc.
O problema do robˆo de explora¸c˜ao conhecido como Rovers, esse problema consiste de um ou mais robˆos equipados com instrumentos para an´alise de solo, an´alise de rocha, e obten¸c˜ao de imagens. Os objetivos dos problemas nesse dom´ınio s˜ao descritos como uma s´erie de an´alises e imagens a serem obtidas
Exemplo de descri¸
c˜
ao de a¸
c˜
oes - A linguagem PDDL
( :action turn_to
:parameters ( ?s - satellite ?d_new - direction ?d_prev - direction ) :precondition ( and ( pointing ?s ?d_prev )
( not ( = ?d_new ?d_prev ) )
( >= ( fuel ?s ) ( slew_time ?d_new ?d_prev ) ) )
:effect ( and ( pointing ?s ?d_new ) ( not ( pointing ?s ?d_prev ) ) ( decrease ( fuel ?s ) ( slew_time ?d_new ?d_prev ) )
( increase ( fuel-used ) ( slew_time ?d_new ?d_prev ) ) ) )
( :action take_image
:parameters ( ?s - satellite ?d - direction ?i - instrument ?m - mode ) :precondition ( and ( calibrated ?i ) ( on_board ?i ?s ) ( supports ?i ?m )
( power_on ?i ) ( pointing ?s ?d )
( >= ( data_capacity ?s ) ( data ?d ?m ) ) ) :effect ( and ( have_image ?d ?m )
( decrease ( data_capacity ?s ) ( data ?d ?m ) ) ( increase ( data-stored ) ( data ?d ?m ) ) ) )
O planejador MetricFF
• Estende a fun¸c˜ao heur´ıstica do FF, introduzindo restri¸c˜oes e efeitos num´ericos;
• A fun¸c˜ao heur´ıstica do FF ´e monotˆonica no n´umero de proposi¸c˜oes, pois ignora as listas de remo¸c˜ao. A fun¸c˜ao heur´ıstica para o MetricFF estende o conceito de monotonicidade para as vari´aveis num´ericas: os efeitos que decrementam as vari´aveis num´ericas s˜ao ignorados;
• Como a linguagem num´erica utilizada ´e restrita, a monotonicidade nas res-tri¸c˜oes ´e garantida pela existˆencia apenas dos operadores + = ,≥ e >;
O planejador implementado - GMetricFF
• O planejador GMetricFF implementado ´e uma extens˜ao do MetricFF;
• O planejador GMetricFF possui duas formas de controle da busca em largura, al´em do uso de um crit´erio de otimiza¸c˜ao:
1. velocidade - tem o mesmo comportamento do MetricFF;
2. qualidade - faz uma escolha apenas quando expande todos os n´os para uma profundidade da busca em largura. Desempates s˜ao resolvidos por uma avalia¸c˜ao gulosa do crit´erio de otimiza¸c˜ao.
• Utiliza um processo externo para parsing da especifica¸c˜ao PDDL e avalia¸c˜ao de todas as instancia¸c˜oes poss´ıveis.
Topologia de espa¸
cos de estados - Becos sem sa´ıda
1. Bidirecional: ∀(s, s0) ∈ E ⇐⇒ (s0, s) ∈ E (1) 2. Inofensivo: ∃(s, s0) ∈ E | (s0, s) /∈ E e ∀s ∈ S gd(s) < ∞ (2) 3. Reconhecido: ∃s ∈ S | gd(s) = ∞ e ∀s ∈ S gd(s) = ∞ =⇒ h+(s) = ∞ (3) 4. N˜ao-Reconhecido: ∃s ∈ S | gd(s) = ∞ e h+(s) < ∞ (4)Topologia de espa¸
cos de estados - Platˆ
os
1. beco sem sa´ıda: ´e um platˆo de n´ıvel h+ = ∞;
2. m´ınimo local: ´e um platˆo de n´ıvel 0 < h+ < ∞ que n˜ao tem sa´ıdas;
3. plan´ıcie: ´e um platˆo de n´ıvel 0 < h+ < ∞ que possui pelo menos uma sa´ıda, mas nenhuma sa´ıda aprimoradora;
4. sela: ´e um platˆo de n´ıvel 0 < h+ < ∞ que possui pelo menos uma sa´ıda aprimoradora, e pelo menos um estado que n˜ao ´e uma sa´ıda aprimoradora;
Teoria de Hoffmann
• Permite identificar algumas das caracter´ısticas topol´ogicas de um dom´ınio STRIPS por meio da an´alise dos seus operadores;
• Propriedades identificadas em a¸c˜oes: invers´ıvel, minimamente invers´ıvel, com efeitos de adi¸c˜ao est´aticos, com efeitos de remo¸c˜ao irrelevantes, minimamente invers´ıvel relaxada, respeitada pela relaxa¸c˜ao;
• Ex: turn to( x, y ) ´e invertida por turn to( y, x )
• Foi utilizada por Hoffmann para justificar os resultados obtidos pelos planeja-dores de busca local nas competi¸c˜oes do AIPS;
Exemplo da aplica¸
c˜
ao da Teoria de Hoffmann
O operador calibrate(s, i, x) do dom´ınio do sat´elite ´e minimamente invers´ıvel (defini¸c˜ao 20) a s´ı mesmo.
( :action calibrate
:parameters ( ?s - satellite ?i - instrument ?d - direction ) :precondition ( and ( on_board ?i ?s )
( calibration_target ?i ?d ) ( pointing ?s ?d ) ( power_on ?i ) ) :effect ( calibrated ?i ) )
Teoria de Hoffmann e sua extens˜
ao
• A extens˜ao proposta permite identificar a ausˆencia de becos sem sa´ıda em dom´ınios num´ericos;
• A extens˜ao proposta identifica efeitos num´ericos irrelevantes nas a¸c˜oes. Efeitos num´ericos irrelavantes n˜ao afetam a aplicabilidade de outras a¸c˜oes, portanto n˜ao levam a becos sem sa´ıda
Conclus˜
oes
• Constata¸c˜ao te´orica e emp´ırica de que os novos problemas propostos na competi¸c˜ao IPC-2002 que envolvem vari´aveis num´ericas representam um grande desafio aos planejadores.
• Utiliza¸c˜ao da extens˜ao da teoria de Hoffmann para analisar e classificar os dom´ınios do Sat´elite e do Robˆo de Explora¸c˜ao com vari´aveis num´ericas;
• Ainda s˜ao poucos os sistemas capazes de tratar dos aspectos num´ericos existentes para essas novas classes de problemas, e com certeza ainda h´a muito o que ser estudado e aperfei¸coado na ´area de planejamento em IA a fim de superar esses novos desafios.
Trabalhos futuros
• Problemas que envolvam a¸c˜oes durativas e tempo cont´ınuo;
• Novas extens˜oes `a teoria de Hoffmann;