Reformulacion polinomial de problemas de planificacion con objetivos temporales

53
Reformulaci´ on polinomial de problemas de planificaci´on con objetivos temporales Jorge Torres Villarrubia Profesor Supervisor: Jorge Baier Universidad Cat´olica de Chile 12 de septiembre de 2014 Jorge Torres Villarrubia 1 / 38

Transcript of Reformulacion polinomial de problemas de planificacion con objetivos temporales

Reformulacion polinomial de problemas deplanificacion con objetivos temporales

Jorge Torres Villarrubia

Profesor Supervisor: Jorge Baier

Universidad Catolica de Chile

12 de septiembre de 2014

Jorge Torres Villarrubia 1 / 38

Contenidos

1 Motivacion y Marco Teorico

2 Pregunta de Investigacion

3 Solucion Propuesta

4 Limitaciones de la solucion

5 Estado de la investigacion

Jorge Torres Villarrubia 2 / 38

Contenidos

1 Motivacion y Marco Teorico

2 Pregunta de Investigacion

3 Solucion Propuesta

4 Limitaciones de la solucion

5 Estado de la investigacion

Jorge Torres Villarrubia Motivacion y Marco Teorico 3 / 38

Motivacion

Estado inicial

Estado final

¿Como se puede terminar el cubo Rubik?

Jorge Torres Villarrubia Motivacion y Marco Teorico 4 / 38

Motivacion

Estado inicial Estado final

¿Como se puede terminar el cubo Rubik?

Jorge Torres Villarrubia Motivacion y Marco Teorico 4 / 38

Motivacion

Estado inicial Estado final

¿Como se puede terminar el cubo Rubik?

Jorge Torres Villarrubia Motivacion y Marco Teorico 4 / 38

Motivacion

Usar Planificacion Clasica:

Objetos: Interactuan con el mundo

Fluentes: Predicados que indican el estado de los objetos y delmundo

Acciones: Afectan el mundo

Precondiciones: Condicion para que la accion se pueda ejecutarEfectos: Modifican el valor de verdad de los fluentes

Planners son programas que resuelven problemas de planificacionclasica.

Existen muy buenas implementaciones de Planners

Jorge Torres Villarrubia Motivacion y Marco Teorico 5 / 38

Motivacion

Usar Planificacion Clasica:

Objetos: Interactuan con el mundo

Fluentes: Predicados que indican el estado de los objetos y delmundo

Acciones: Afectan el mundo

Precondiciones: Condicion para que la accion se pueda ejecutarEfectos: Modifican el valor de verdad de los fluentes

Planners son programas que resuelven problemas de planificacionclasica.

Existen muy buenas implementaciones de Planners

Jorge Torres Villarrubia Motivacion y Marco Teorico 5 / 38

Motivacion

Espacio de busqueda: Mundo de bloques1

1Fuente: http://homepage.cs.uiowa.edu/∼hzhang/c145/notes/10-Planning-6p.pdf

Jorge Torres Villarrubia Motivacion y Marco Teorico 6 / 38

Motivacion

Ejemplo: Mundo de bloques (Formalizacion)

Objetos: A, B, C , Mesa

Fluentes: on(x , y); x esta sobre y

Acciones: move(x , y , z); (mover x desde y hasta z)

Precondicion:on(x , y) ∧ ∀w(¬on(w , x)) ∧ (z 6= Mesa→ (∀u(¬on(u, z))))Efecto: > → (¬on(x , y) ∧ on(x , z))

Estado inicial: on(C ,A) ∧ on(A,Mesa) ∧ on(B,Mesa)

Estado objetivo: on(A,B) ∧ on(B,C ) ∧ on(C ,Mesa)

Jorge Torres Villarrubia Motivacion y Marco Teorico 7 / 38

Motivacion

Hay un detalle con problemas de Planificacion Clasica:

¿Podemos garantizar que el plan eventualmente arme la pila“A C B” antes de armar la pila “A B C”?

Si tuviesemos que generar un plan para que un auto viaje deSantiago a Valparaıso:

¿Podemos garantizar que el auto eventualmente llegue a unaestacion de bencina y que siempre tenga al menos 1/4 delestanque lleno?

No es posible garantizar que el plan cumpla las restriccionesque deseamos

¿Que debemos hacer con los problemas de planificacion?

Jorge Torres Villarrubia Motivacion y Marco Teorico 8 / 38

Motivacion

Hay un detalle con problemas de Planificacion Clasica:

¿Podemos garantizar que el plan eventualmente arme la pila“A C B” antes de armar la pila “A B C”?

Si tuviesemos que generar un plan para que un auto viaje deSantiago a Valparaıso:

¿Podemos garantizar que el auto eventualmente llegue a unaestacion de bencina y que siempre tenga al menos 1/4 delestanque lleno?

No es posible garantizar que el plan cumpla las restriccionesque deseamos

¿Que debemos hacer con los problemas de planificacion?

Jorge Torres Villarrubia Motivacion y Marco Teorico 8 / 38

Motivacion

Hay un detalle con problemas de Planificacion Clasica:

¿Podemos garantizar que el plan eventualmente arme la pila“A C B” antes de armar la pila “A B C”?

Si tuviesemos que generar un plan para que un auto viaje deSantiago a Valparaıso:

¿Podemos garantizar que el auto eventualmente llegue a unaestacion de bencina y que siempre tenga al menos 1/4 delestanque lleno?

No es posible garantizar que el plan cumpla las restriccionesque deseamos

¿Que debemos hacer con los problemas de planificacion?

Jorge Torres Villarrubia Motivacion y Marco Teorico 8 / 38

Motivacion

Hay un detalle con problemas de Planificacion Clasica:

¿Podemos garantizar que el plan eventualmente arme la pila“A C B” antes de armar la pila “A B C”?

Si tuviesemos que generar un plan para que un auto viaje deSantiago a Valparaıso:

¿Podemos garantizar que el auto eventualmente llegue a unaestacion de bencina y que siempre tenga al menos 1/4 delestanque lleno?

No es posible garantizar que el plan cumpla las restriccionesque deseamos

¿Que debemos hacer con los problemas de planificacion?

Jorge Torres Villarrubia Motivacion y Marco Teorico 8 / 38

Motivacion

Usamos Logicas temporales2 para expresar los objetivos

Logicas temporales = Logica proposicional (Variables,∨,∧,¬)+ Operadores temporales (©,�,♦,U)

©ϕ: Next ϕ�ϕ: Always ϕ♦ϕ: Eventually ϕϕUψ: ϕ until ψ

Evaluar con Secuencias de subconjuntos de variables

2Logicas temporales lineales sobre secuencias finitas (f-LTL)Jorge Torres Villarrubia Motivacion y Marco Teorico 9 / 38

Motivacion

Usamos Logicas temporales2 para expresar los objetivos

Logicas temporales = Logica proposicional (Variables,∨,∧,¬)+ Operadores temporales (©,�,♦,U)

©ϕ: Next ϕ�ϕ: Always ϕ♦ϕ: Eventually ϕϕUψ: ϕ until ψ

Evaluar con Secuencias de subconjuntos de variables

2Logicas temporales lineales sobre secuencias finitas (f-LTL)Jorge Torres Villarrubia Motivacion y Marco Teorico 9 / 38

Motivacion

Ejemplo: Secuencia que satisface ♦(on(A,C ) ∧ on(C ,B) ∧ on(B,Mesa))

Jorge Torres Villarrubia Motivacion y Marco Teorico 10 / 38

Motivacion

Ejemplo: Secuencia que satisface �(on(B,Mesa) ∨ on(B,C ))

Jorge Torres Villarrubia Motivacion y Marco Teorico 11 / 38

Motivacion

Un teorema importante:

Teorema (Baier,McIlraith,2006)

Es posible reformular un problema de planificacion con objetivostemporales a otro problema de planificacion clasica.

¡No es necesario implementar planners!

Podemos usar uno ya existente

¿Cual es la clave de la reformulacion?

Teorema (Baier, 2010)

Existe un algoritmo que verifica si una formula temporal essatisfacible usando automatas no deterministas

Jorge Torres Villarrubia Motivacion y Marco Teorico 12 / 38

Motivacion

Un teorema importante:

Teorema (Baier,McIlraith,2006)

Es posible reformular un problema de planificacion con objetivostemporales a otro problema de planificacion clasica.

¡No es necesario implementar planners!

Podemos usar uno ya existente

¿Cual es la clave de la reformulacion?

Teorema (Baier, 2010)

Existe un algoritmo que verifica si una formula temporal essatisfacible usando automatas no deterministas

Jorge Torres Villarrubia Motivacion y Marco Teorico 12 / 38

Motivacion

Un teorema importante:

Teorema (Baier,McIlraith,2006)

Es posible reformular un problema de planificacion con objetivostemporales a otro problema de planificacion clasica.

¡No es necesario implementar planners!

Podemos usar uno ya existente

¿Cual es la clave de la reformulacion?

Teorema (Baier, 2010)

Existe un algoritmo que verifica si una formula temporal essatisfacible usando automatas no deterministas

Jorge Torres Villarrubia Motivacion y Marco Teorico 12 / 38

Motivacion

Un teorema importante:

Teorema (Baier,McIlraith,2006)

Es posible reformular un problema de planificacion con objetivostemporales a otro problema de planificacion clasica.

¡No es necesario implementar planners!

Podemos usar uno ya existente

¿Cual es la clave de la reformulacion?

Teorema (Baier, 2010)

Existe un algoritmo que verifica si una formula temporal essatisfacible usando automatas no deterministas

Jorge Torres Villarrubia Motivacion y Marco Teorico 12 / 38

Motivacion

Un ejemplo

Ejemplo

Automata para ♦p

q0start q1{p}

∅ ∅, {p}

Transiciones del automata son simuladas con acciones delproblema

Estados pueden ser simulados como fluentes

Jorge Torres Villarrubia Motivacion y Marco Teorico 13 / 38

Motivacion

Otro Ejemplo

Automata para ♦p1 ∧ ♦p2

q0start

q1

q2

q3

{p1}

{p2}

{p1, p2}

∅, {p1}

{p2}, {p1, p2}

∅, {p2}

{p1}, {p1, p2}

∅, {p1}, {p2},{p1, p2}

Jorge Torres Villarrubia Motivacion y Marco Teorico 14 / 38

Motivacion

¿Que pasarıa si la formula es de la forma ♦p1 ∧ ♦p2 ∧ . . . ∧ ♦pn?

¡El automata alcanza a tener 2n estados!

Para este caso, esta cantidad no se puede disminuir

Necesitamos otra manera de resolver problemas de planificacioncon objetivos temporales

Jorge Torres Villarrubia Motivacion y Marco Teorico 15 / 38

Motivacion

¿Que pasarıa si la formula es de la forma ♦p1 ∧ ♦p2 ∧ . . . ∧ ♦pn?

¡El automata alcanza a tener 2n estados!

Para este caso, esta cantidad no se puede disminuir

Necesitamos otra manera de resolver problemas de planificacioncon objetivos temporales

Jorge Torres Villarrubia Motivacion y Marco Teorico 15 / 38

Contenidos

1 Motivacion y Marco Teorico

2 Pregunta de Investigacion

3 Solucion Propuesta

4 Limitaciones de la solucion

5 Estado de la investigacion

Jorge Torres Villarrubia Pregunta de Investigacion 16 / 38

Pregunta de Investigacion

¿Como es posible reformular problemas de

planificacion con objetivos temporales a

problemas de planificacion clasica en forma

efectiva y eficiente?

Jorge Torres Villarrubia Pregunta de Investigacion 17 / 38

Contenidos

1 Motivacion y Marco Teorico

2 Pregunta de Investigacion

3 Solucion Propuesta

4 Limitaciones de la solucion

5 Estado de la investigacion

Jorge Torres Villarrubia Solucion Propuesta 18 / 38

Solucion Propuesta

Utilizar otro tipo de automatas: Automatas alternantes(AA)

Introducir fluentes y acciones nuevas para simular lastransiciones de dicho automata

Jorge Torres Villarrubia Solucion Propuesta 19 / 38

Solucion Propuesta

Considere el siguiente automata no determinista:

Ejemplo

q0start q1 q21

0, 1

0

δ(q1, 0) = q1 ∨ q2

NFA: Disyunciones

AA: Disyunciones + Conjunciones

Jorge Torres Villarrubia Solucion Propuesta 20 / 38

Solucion Propuesta

Considere el siguiente automata no determinista:

Ejemplo

q0start q1 q21

0, 1

0

δ(q1, 0) = q1 ∨ q2

NFA: Disyunciones

AA: Disyunciones + Conjunciones

Jorge Torres Villarrubia Solucion Propuesta 20 / 38

Solucion Propuesta

Considere el siguiente automata no determinista:

Ejemplo

q0start q1 q21

0, 1

0

δ(q1, 0) = q1 ∨ q2

NFA: Disyunciones

AA: Disyunciones + Conjunciones

Jorge Torres Villarrubia Solucion Propuesta 20 / 38

Solucion Propuesta

Ejemplo

Queremos procesar la palabra w = 101 en el automata alternante:

q0start

q1 q2

q3 q4

1

1

0, 1

0

0, 1

0, 1

1

Jorge Torres Villarrubia Solucion Propuesta 21 / 38

Solucion Propuesta

Ejemplo

w = 101

q0start

q1 q2

q3 q4

1

1

0, 1

0

0, 1

0, 1

1

Jorge Torres Villarrubia Solucion Propuesta 22 / 38

Solucion Propuesta

Ejemplo

w = 101

q0start

q1 q2

q3 q4

1

1

0, 1

0

0, 1

0, 1

1

Jorge Torres Villarrubia Solucion Propuesta 23 / 38

Solucion Propuesta

Ejemplo

w = 101

q0start

q1 q2

q3 q4

1

1

0, 1

0

0,1

0, 1

1

Jorge Torres Villarrubia Solucion Propuesta 24 / 38

Solucion Propuesta

Ejemplo

w = 101

q0start

q1 q2

q3 q4

1

1

0, 1

0

0, 1

0, 1

1

Jorge Torres Villarrubia Solucion Propuesta 25 / 38

Solucion Propuesta

¡Podemos usar automatas alternantes para verificar si una formulatemporal es satisfacible!

¿Como construir los estados?

Calcular las subformulas de ϕ

Ejemplo

sub(♦(p ∧ q)) = {♦(p ∧ q), p ∧ q, p, q}

Teorema

Toda formula temporal tiene una cantidad lineal de subformulas

Jorge Torres Villarrubia Solucion Propuesta 26 / 38

Solucion Propuesta

¡Podemos usar automatas alternantes para verificar si una formulatemporal es satisfacible!

¿Como construir los estados?

Calcular las subformulas de ϕ

Ejemplo

sub(♦(p ∧ q)) = {♦(p ∧ q), p ∧ q, p, q}

Teorema

Toda formula temporal tiene una cantidad lineal de subformulas

Jorge Torres Villarrubia Solucion Propuesta 26 / 38

Solucion Propuesta

¡Podemos usar automatas alternantes para verificar si una formulatemporal es satisfacible!

¿Como construir los estados?

Calcular las subformulas de ϕ

Ejemplo

sub(♦(p ∧ q)) = {♦(p ∧ q), p ∧ q, p, q}

Teorema

Toda formula temporal tiene una cantidad lineal de subformulas

Jorge Torres Villarrubia Solucion Propuesta 26 / 38

Solucion Propuesta

¿Como reformular el problema con objetivos temporales?

Jorge Torres Villarrubia Solucion Propuesta 27 / 38

Solucion Propuesta

¿Que acciones usar?

Jorge Torres Villarrubia Solucion Propuesta 28 / 38

Solucion Propuesta

¿Como implementamos la reformulacion?

Problemas de planificacion especificados en un formatoestandar: PDDL

Convertir un archivo en PDDL a otro en PDDL usando Prolog

¿Que hacemos con el problema reformulado?

Usamos un planner : Fast Forward3

3Creado por Jorg Hoffmann en el ano 2000Jorge Torres Villarrubia Solucion Propuesta 29 / 38

Resultados Preliminares

Usamos diferentes reformulaciones considerando lo siguiente:

Usar literales positivos o negativos en el objetivo auxiliar (LPo LN)

Forzar o no forzar orden de los estados a sincronizar (F o NF)

4 tipos de reformulaciones diferentes

LN LPNF Tipo 1 Tipo 3

F Tipo 2 Tipo 4

Jorge Torres Villarrubia Solucion Propuesta 30 / 38

Resultados Preliminares

Usamos diferentes reformulaciones considerando lo siguiente:

Usar literales positivos o negativos en el objetivo auxiliar (LPo LN)

Forzar o no forzar orden de los estados a sincronizar (F o NF)

4 tipos de reformulaciones diferentes

LN LPNF Tipo 1 Tipo 3

F Tipo 2 Tipo 4

Tipos 3 y 4 tienen mejor desempeno.

Jorge Torres Villarrubia Solucion Propuesta 31 / 38

Resultados Preliminares

Objetivos de la forma:n∧

i=1

♦(pi ∧ qi )

n Tipo 1 Tipo 2 Tipo 3 Tipo 4

LN+NF LN+F LP+NF LP+F

1 139 144 49 78

2 719 758 353 370

3 3351 3211 750 841

4 15575 11051 2461 1987

Cuadro: Numero de estados explorados por objetivo y reformulacion(Mundo de bloques)

Jorge Torres Villarrubia Solucion Propuesta 32 / 38

Contenidos

1 Motivacion y Marco Teorico

2 Pregunta de Investigacion

3 Solucion Propuesta

4 Limitaciones de la solucion

5 Estado de la investigacion

Jorge Torres Villarrubia Limitaciones de la solucion 33 / 38

Limitaciones de la solucion

Hay ciertas limitaciones:

Ciertas reformulaciones son mejores para ciertos planners ypueden generar pobre desempeno para otros

Requiere conocer muy bien las propiedades del planner

Planes encontrados en el problema auxiliar son mas largos

Jorge Torres Villarrubia Limitaciones de la solucion 34 / 38

Contenidos

1 Motivacion y Marco Teorico

2 Pregunta de Investigacion

3 Solucion Propuesta

4 Limitaciones de la solucion

5 Estado de la investigacion

Jorge Torres Villarrubia Estado de la investigacion 35 / 38

Estado de la investigacion

Finalizando demostracion de teorema de correctitud ycompletitud

Haciendo mas pruebas con distintos dominios, objetivos ycondiciones iniciales

Buscando y probando otras reformulaciones

Jorge Torres Villarrubia Estado de la investigacion 36 / 38

Trabajo a futuro

Utilizar otros planners

Hacer comparaciones experimentales con antiguo traductor

Trabajar en paper

Redactar tesis

Posibilidad de trabajar en un planner especializado

Jorge Torres Villarrubia Estado de la investigacion 37 / 38

¡Gracias!

Jorge Torres Villarrubia Estado de la investigacion 38 / 38