83
Sesiones de Planificaci´on Planificaci´on Grupo de Planificaci´on y Aprendizaje (PLG) Departamento de Inform´ atica Escuela Polit´ ecnica Superior Universidad Carlos III de Madrid 22 de diciembre de 2008 Planificaci´on

Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Sesiones de Planificacion

Planificacion

Grupo de Planificacion y Aprendizaje (PLG)Departamento de InformaticaEscuela Politecnica Superior

Universidad Carlos III de Madrid

22 de diciembre de 2008

Planificacion

Page 2: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Sesiones de PlanificacionRepresentacion y ModelizacionMetodos de Planificacion

Resumen de las Sesiones de Planificacion

Planificacion

Grupo de Planificacion y Aprendizaje (PLG)Departamento de InformaticaEscuela Politecnica Superior

Universidad Carlos III de Madrid

22 de diciembre de 2008

Planificacion

Page 3: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Sesiones de PlanificacionRepresentacion y ModelizacionMetodos de Planificacion

En Esta Seccion:

Representacion y ModelizacionMetodos de Planificacion

Planificacion

Page 4: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Sesiones de PlanificacionRepresentacion y ModelizacionMetodos de Planificacion

Representacion y Modelizacion de Problemas dePlanificacion

1 Introduccion a la Planificacion de TareasDefinicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

2 Representacion y BusquedaRepresentacionBusqueda

Planificacion

Page 5: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Sesiones de PlanificacionRepresentacion y ModelizacionMetodos de Planificacion

Representacion y Modelizacion de Problemas dePlanificacion

1 Introduccion a la Planificacion de TareasDefinicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

2 Representacion y BusquedaRepresentacionBusqueda

Planificacion

Page 6: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Sesiones de PlanificacionRepresentacion y ModelizacionMetodos de Planificacion

Metodos de Planificacion

3 Planificacion Lineal y No LinealPlanificacion Lineal: STRIPSPlanificacion No Lineal

4 Planificacion Basada en Estados

Planificacion

Page 7: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Sesiones de PlanificacionRepresentacion y ModelizacionMetodos de Planificacion

Metodos de Planificacion

3 Planificacion Lineal y No LinealPlanificacion Lineal: STRIPSPlanificacion No Lineal

4 Planificacion Basada en Estados

Planificacion

Page 8: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Parte I

Representacion y Modelizacion de Problemas deBusqueda

Planificacion

Page 9: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

Introduccion a la Planificacion de Tareas

Planificacion

Grupo de Planificacion y Aprendizaje (PLG)Departamento de InformaticaEscuela Politecnica Superior

Universidad Carlos III de Madrid

22 de diciembre de 2008

Planificacion

Page 10: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

En Esta Seccion:

1 Introduccion a la Planificacion de TareasDefinicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

2 Representacion y BusquedaRepresentacionBusqueda

Planificacion

Page 11: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

¿Que es planificacion?

Empresarios: establecimiento de planes de la empresa

Abogados: establecimiento de planes de defensa del cliente

Industriales: establecimiento de planes de movimiento derobots

Arquitectos: establecimiento de planes de diseno de edificios

Informaticos: establecimiento de planes de desarrollo delsistema

Telecomunicaciones: establecimiento de planes de conexion

Ejercito: establecimiento de planes de ataque/defensa

Logıstica de transportes: establecimiento de planes para llevarobjetos/sujetos de un sitio a otro

Planificacion

Page 12: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

¿Que tienen en comun?

Busqueda en un espacio de problemas

Estado o situacion: descripcion instantanea

Accion u Operador: transformacion de un estado en otro

Estado inicial: situacion de partida

Objetivo o meta: descripcion de condiciones que se tienen quedar para considerar por terminado el proceso

Plan: secuencia de operadores que permiten pasar del estadoinicial a un estado en el que se cumplan los objetivos

Heurısticas: conocimiento que permite obtener eficientementeel plan

Planificacion

Page 13: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

Ejemplo en turismo

Estado:

situacion de una persona, restricciones de precio, tiempo, . . .precios, horarios y disponibilidad de los billetes de avion, tren,barco, autobus, hoteles, etc. . . de diferentes companıas,

Operadores: volar en un determinado vuelo, viajar en undeterminado tren, coger un taxi, ir en coche, alojarse en unhotel, alojarse en una casa rural,. . .

Estado inicial: estamos en Madrid (nuestra casa)

Meta: quiero pasar una semana en San Francisco

Planificacion

Page 14: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

Ejemplo en turismo

Plan:

coger taxi(Casa,AeropuertoBarajas)coger un vuelo(Mad,JFK,. . . )coger un vuelo(JFK,SFO,. . . )coger limusina(Aeropuerto,SFO,HotelSheraton)estar en hotel(HotelSheraton,. . . )

Heurısticas: para ir a San Francisco utilizar avion, utilizar lascompanıas aereas en las que se tienen millas,. . .

Planificacion

Page 15: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

¿Como planificamos?

De multiples formas

En funcion de los fines (metas) y los medios (operadores)

Descomponiendo problemas en subproblemas

Jerarquicamente

Basado en la experiencia

Reactivamente

Entre varios agentes

Estableciendo prioridades

Planificacion

Page 16: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

Aproximaciones a la planificacion

Manual: herramientas que facilitan la labor (Imendio,Project)

Dependiente del dominio: programar para cada dominio unplanificador

Independiente del dominio: funcionan en todos los dominios

Ventajas e inconvenientes

Planificacion

Page 17: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

Sistemas de transicion de estados

Σ = (S ,A,E , γ)

donde

S es el conjunto finito (o recursivamente enumerable) deestados

A es el conjunto finito (o recursivamente enumerable) deacciones

E es el conjunto finito (o recursivamente enumerable) deeventos

γ : S × A× E → 2S es la funcion de transicion de estados

Planificacion

Page 18: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

Algunas consideraciones

Son representables por un grafo: estados como nodos,acciones y eventos como arcos

Pueden ser deterministas o no deterministas

Formas de definir objetivos

subconjunto de metasmetas que no pueden ser ciertas en ningun momento y otrasque deben ser ciertas siemprefuncion de utilidad con recompensas y pagos (maximizacion ominimizacion)tareas que debe conseguir el sistema (se pueden definirrecursivamente)

Planificacion

Page 19: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

Arquitectura clasica

Entorno

actuadoressensores

Controlador

Reacción

Planificacion

Page 20: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

Arquitectura clasica

Entorno

actuadoressensores

Controlador

Reacción

Planificación

Planificacion

Page 21: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

Arquitectura clasica

Entorno

actuadoressensores

Controlador

Reacción

Planificación

Sentimientos

Planificacion

Page 22: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

Arquitectura clasica

Entorno

actuadoressensores

Controlador

Reacción

Planificación

Sentimientos

Comportamiento social

Planificacion

Page 23: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

Arquitectura clasica

Entorno

actuadoressensores

Controlador

Reacción

Planificación

Sentimientos

Comportamiento social

Aprendizaje

Localización yplanificación de

Comunicación

trayectorias

Planificacion

Page 24: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

Suposiciones iniciales

Conjunto de estados finito

Completamente observable

Determinista

Estatico

Metas restringidas

Planes secuenciales

Tiempo implıcito

Planificacion off-line

Planificacion

Page 25: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

Algunas cuestiones difıciles

Nuestra vision del mundo es incompleta: racionalidad limitada

El mundo cambia constantemente: dinamismo

Las acciones tardan en ejecutarse: razonamiento temporal

Nuestras metas son contradictorias: dependencia entre metas

Nuestro modelo del mundo falla muchas veces: incertidumbre

Los planes no siempre son validos: ejecucion y replanificacion

No todos los planes son buenos: calidad

Nos adaptamos al mundo: aprendizaje

Tardamos mucho en aprender: aprendizaje

La planificacion y la filosofıa: creencias, intenciones y deseos

Planificacion

Page 26: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

El mundo de los bloques

Un conjunto de bloques, una mesa, y un brazo de un robotTodos los bloques son iguales de tamano, forma y color,diferenciandose en el nombreLa mesa tiene extension ilimitadaCada bloque puede estar encima de la mesa, encima de unsolo bloque, o sujeto por el brazo del robotEl brazo de robot solo puede sujetar un bloque cada vezResolver problemas supone pasar de una configuracion(estado) inicial a un estado en el que sean ciertas unas metas

C

BC

B

A

D A

Estado inicial MetasPlanificacion

Page 27: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

La logıstica de transportes

Conjunto de ciudades, con aeropuertos y oficinas de correosConjunto de aviones que pueden volar entre los aeropuertosConjunto de camiones que solo pueden llevar paquetes dentrode las ciudadesConjunto de paquetes que deben ir de un sitio a otro,posiblemente situados en diferentes ciudades

Planificacion

Page 28: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

Definicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

Otros dominios

Competiciones de planificacion (1998, 2000, 2002, 2004,2006)

http://icaps-conference.org

Aplicaciones reales: DeepSpace One, Spirit+Opportunity,Gestion de ascensores, UAV de vigilancia (WITAS), Bridge,Gestion de viajes, Proveedores de informacion

Planificacion

Page 29: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Representacion y Busqueda

Planificacion

Grupo de Planificacion y Aprendizaje (PLG)Departamento de InformaticaEscuela Politecnica Superior

Universidad Carlos III de Madrid

22 de diciembre de 2008

Planificacion

Page 30: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

En Esta Seccion:

1 Introduccion a la Planificacion de TareasDefinicion de Planificacion Automatica de TareasMetodos de PlanificacionModelo Formal del Problema de PlanificacionArquitectura de un Sistema de Planificacion AutomaticaPlanificacion Clasica

2 Representacion y BusquedaRepresentacionBusqueda

Planificacion

Page 31: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Representacion en planificacion

Para que el ordenador pueda resolver problemas, hace faltadecirle que tiene que resolver en algun lenguaje (al igual que anosotros)

Existen muchas formas de suministrar esa informacion

La mas empleada en planificacion automatica es la logica depredicados

Ası se representan los estados y los operadores

La logica de predicados permite representar las cuestionesciertas o falsas del mundo mediante: terminos, predicados,conectivas, y cuantificadores

No hay una representacion unica y valida; cada personarepresenta los dominios de forma diferente

Planificacion

Page 32: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Representacion de los estados

Los estados se representan definiendo un conjunto de predicados

en(objeto/vehıculo,lugar), dentro(objeto,vehıculo),en-ciudad(lugar,ciudad)

y tipos

objeto(x), vehıculo(x)={avion(x),camion(x)},lugar(x)={aeropuerto(x),oficina-correos(x)}, ciudad(x)

Cada estado se representa por una conjuncion de predicadosinstanciados

en(objeto1,aeropuerto1),en(avion1,aeropuerto1),en(camion1,aeropuerto1),en(camion2,oficina-correos2),. . .

Normalmente, se supone que lo que no aparece explıcitamenterepresentado en un estado es falso: suposicion del mundo cerrado

en(objeto1,x) ∀x 6=aeropuerto1

Planificacion

Page 33: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Representacion de los operadores

Se deben representar los cambios que ocurren en el mundopor la aplicacion del operador: suposicion stripsSe definen por tres listas:

precondiciones: condiciones que se tienen que cumplir en unestado para poder ejecutar el operadoranadidos: cosas que pasan a ser ciertas por la ejecucion deloperador(hay que anadirlas al estado)borrados: cosas que dejan de ser ciertas por la ejecucion deloperador(hay que borrarlas del estado)

cargar-avion(objeto,avion,aeropuerto)precondiciones: en(objeto,aeropuerto),en(avion,aeropuerto)anadidos: dentro(objeto,avion)borrados: en(objeto,aeropuerto)

Planificacion

Page 34: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Representacion de los operadores

Se deben representar los cambios que ocurren en el mundopor la aplicacion del operador: suposicion stripsSe definen por tres listas:

precondiciones: condiciones que se tienen que cumplir en unestado para poder ejecutar el operadoranadidos: cosas que pasan a ser ciertas por la ejecucion deloperador(hay que anadirlas al estado)borrados: cosas que dejan de ser ciertas por la ejecucion deloperador(hay que borrarlas del estado)

cargar-avion(objeto,avion,aeropuerto)precondiciones: en(objeto,aeropuerto),en(avion,aeropuerto)anadidos: dentro(objeto,avion)borrados: en(objeto,aeropuerto)

Planificacion

Page 35: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Estados en el mundo de los bloques

Se podrıan utilizar los siguientes predicados:

encima(x,y): el bloque x esta encima del yen-mesa(x): el bloque x esta encima de la mesalibre(x): el bloque x no tiene ningun bloque encimasujeto(x): el brazo del robot tiene cogido al bloque xbrazo-libre: el brazo del robot no tiene cogido a ningun bloque

Ejemplo:

Estado inicial:encima(A,B),encima(B,D),en-mesa(D),en-mesa(C),libre(A),libre(C),brazo-libre

C

BC

B

A

D A

Estado inicial MetasMetas: en-mesa(A),encima(C,B)

Planificacion

Page 36: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Representacion de operadores

QUITAR(x , y)precondiciones: encima(x , y),libre(x),brazo-libreanadidos: sujeto(x),libre(y)borrados: encima(x , y),brazo-libre,libre(x)

LEVANTAR(x)precondiciones: en-mesa(x),libre(x),brazo-libreanadidos: sujeto(x)borrados: en-mesa(x),brazo-libre,libre(x)

Planificacion

Page 37: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Representacion de operadores

PONER(x , y)precondiciones: sujeto(x),libre(y)anadidos: encima(x , y),libre(x),brazo-libreborrados: sujeto(x),libre(y)

DEJAR(x)precondiciones: sujeto(x)anadidos: en-mesa(x),libre(x),brazo-libreborrados: sujeto(x)

Planificacion

Page 38: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Ejemplos de operadores en logıstica

cargar-avion(objeto,avion,aeropuerto)precondiciones: en(objeto,aeropuerto),en(avion,aeropuerto)anadidos: dentro(objeto,avion)borrados: en(objeto,aeropuerto)

descargar-avion(objeto,avion,aeropuerto)precondiciones: dentro(objeto,aeropuerto),en(avion,aeropuerto)anadidos: en(objeto,aeropuerto)borrados: dentro(objeto,avion)

cargar-camion(objeto,camion,lugar)precondiciones: en(objeto,lugar),en(camion,lugar)anadidos: dentro(objeto,camion)borrados: en(objeto,lugar)

Planificacion

Page 39: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Ejemplos de operadores en logıstica

volar-avion(avion,aeropuerto1,aeropuerto2)precondiciones: en(avion,aeropuerto1)anadidos: en(avion,aeropuerto2)borrados: en(avion,aeropuerto1)

conducir-camion(camion,lugar1,lugar2,ciudad)precondiciones: en(camion,lugar1),en-ciudad(lugar1,ciudad),en-ciudad(lugar2,ciudad)anadidos: en(camion,lugar2)borrados: en(camion,lugar1)

Planificacion

Page 40: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Desde strips hasta pddl

El lenguaje de strips es muy simple

Se amplio el lenguaje, generando adl, que incorpora, entre otros:

cuantificacion universal y existencialefectos condicionales

Se necesitaba un lenguaje comun para poder especificar dominios yproblemas de forma comun para todos los planificadores y secreo pddl

Ha tenido varias versiones hasta pddl2.1 (hay posteriores), quepermite, entre otros:

especificacion de costes de ejecucion de operadorestipos para variables de operadoresmodelos no conservativos de acciones

Planificacion

Page 41: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Lenguaje estandar pddl. Dominio de la logıstica

(define (domain logistics)(:requirements :strips :typing)(:types truck airplane - vehicle

package vehicle - physobjairport location - placecity place physobj - object)

(:predicates (in-city ?loc - place ?city - city)(at ?obj - physobj ?loc - place)(in ?pkg - package ?veh - vehicle))

...)

Planificacion

Page 42: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Dominio del mundo de los bloques

(create-problem-space ’bloques :current t)

(ptype-of BLOQUE :top-type)

(OPERATOR levantar(params <bloque1>)(preconds ((<bloque1> BLOQUE))

(and (libre <bloque1>)(en-mesa <bloque1>)(brazo-libre)))

(effects ()((del (en-mesa <bloque1>))(del (libre <bloque1>))(del (brazo-libre))(add (sujeto <bloque1>)))))

Planificacion

Page 43: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Dominio del mundo de los bloques

(OPERATOR dejar ...)(OPERATOR quitar

(params <bloque1> <bloque2>)(preconds ((<bloque1> BLOQUE)

(<bloque2> (and BLOQUE (diff <bloque1> <bloque2>))))(and (libre <bloque1>)

(encima <bloque1> <bloque2>)(brazo-libre)))

(effects ()((del (encima <bloque1> <bloque2>))(del (libre <bloque1>))(del (brazo-libre))(add (sujeto <bloque1>))(add (libre <bloque2>)))))

(OPERATOR poner ...)

Planificacion

Page 44: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Operadores

(:action load-truck ...)(:action load-airplane ...)(:action unload-truck ...)(:action unload-airplane ...)(:action drive-truck ...)(:action fly-airplane

:parameters (?p - airplane ?s - airport ?d - airport):precondition (and (at ?p ?s)

(not (= ?s ?d))):effect (and (at ?p ?d)

(not (at ?p ?s))))

Planificacion

Page 45: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Definicion del problema

(define (problem log1) (:domain logistics)(:objects (ob0 ob1 ob2 - package)

(c2 c1 c0 - city)(po2 po1 po0 - location)(a2 a1 a0 - airport)(tr2 tr1 tr0 - truck)(pl1 pl2 - airplane))

(:init (in-city a2 c2) (in-city po2 c2) (at tr2 po2)(in-city a1 c1) (in-city po1 c1) (at tr1 po1)(in-city a0 c0) (in-city po0 c0) (at tr0 po0)(at ob1 a1) (in ob0 pl0) (in ob2 tr1)(at pl2 a1) (at pl1 a2))

(:goal (at-obj ob1 a2)))

Planificacion

Page 46: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Descripcion del problema

(setf (current-problem)(create-problem (name cambia-torres)

(objects (A B C D bloque))(state (and (en-mesa A)

(en-mesa B)(encima C A)(encima D B)(libre C)(libre D)(brazo-libre)))

(goal (and (encima C B)(encima D A)))))

Planificacion

Page 47: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Operadores mas ricos

(:action zoom:parameters (?a - aircraft ?c1 ?c2 - city):precondition (and (at ?a ?c1)

(>= (fuel ?a)(* (distance ?c1 ?c2) (fast-burn ?a)))

(<= (onboard ?a) (zoom-limit ?a))):effect (and (not (at ?a ?c1))

(at ?a ?c2)(increase (total-fuel-used)

(* (distance ?c1 ?c2) (fast-burn ?a)))(decrease (fuel ?a)

(* (distance ?c1 ?c2) (fast-burn ?a)))))

Planificacion

Page 48: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Busqueda

Busqueda hacia adelante (progresion): se ejecutan operadoreshasta que se encuentre la solucion

Ejemplos: soar, ff, TlPlan

Busqueda hacia atras (regresion): se comienza desde lasmetas, se seleccionan operadores que las anadan y se anadenlas precondiciones de los mismos al conjunto de metas

Ejemplos: strips, ucpop, prodigy

Planificacion

Page 49: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Busqueda

Busqueda hacia adelante (progresion): se ejecutan operadoreshasta que se encuentre la solucion

Ejemplos: soar, ff, TlPlan

Busqueda hacia atras (regresion): se comienza desde lasmetas, se seleccionan operadores que las anadan y se anadenlas precondiciones de los mismos al conjunto de metas

Ejemplos: strips, ucpop, prodigy

Planificacion

Page 50: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Busqueda hacia adelante

C

B

A

D

B C

C

B

A

D

C

BA

A

D

Metas:

QUITAR(A,B) LEVANTAR(C)

Planificacion

Page 51: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Busqueda hacia adelante

C

B

A

D

B C

C

B

A

D

C

BA

A

D

Metas:

QUITAR(A,B) LEVANTAR(C)

C

B

C

B

C

B

A

A

AD D D

... ...

DEJAR(A)PONER(A,C)

PONER(A,B)

...

Planificacion

Page 52: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Busqueda hacia atras

B

C

B

A

D

C

B

...

AC

Estado inicial:

A

DEJAR(A) PONER(C,B)

Planificacion

Page 53: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Busqueda hacia atras

B

C

B

A

D

C

B

...

AC

Estado inicial:

A

DEJAR(A) PONER(C,B)

A

D

...

A

B

...

A

C

...

A

QUITAR(A,D)QUITAR(A,C)QUITAR(A,B)LEVANTAR(A)

Planificacion

Page 54: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Busqueda sin conocimiento

(:action a-1:parameters (?p - type-x ?s - type-y ?d - type-z):precondition (and (p-1 ?p ?s) (not (= ?s ?d))):effect (and (p-1 ?p ?d)

(not (p-1 ?p ?s))))(:action a-2

:parameters (?p - type-x ?s - type-y ?d - type-z):precondition (and (p-1 ?p ?d) (p-1 ?s ?d)):effect (and (p-2 ?p ?s)

(not (p-1 ?p ?d))))(:action a-3

:parameters (?p - type-x ?s - type-y ?d - type-z):precondition (and (p-2 ?p ?s) (p-1 ?s ?d)):effect (and (p-1 ?p ?d)

(not (p-2 ?p ?s))))

Planificacion

Page 55: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Busqueda sin conocimiento

Amplitud vs. Profundidad

Hacia adelante vs. hacia atras vs. bidireccional

Con costes vs. sin costes

Uno vs. multiples agentes

Planificacion

Page 56: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Busqueda con conocimiento

Escalada, en Haz

A∗, IDA∗, . . .

Alfa-beta

Planificacion

Page 57: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

IntroduccionRepresentacion y Busqueda

RepresentacionBusqueda

Caracterısticas

Complejidad en tiempo y espacio

Completud

Optimalidad

Decidibilidad

Planificacion

Page 58: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Parte II

Metodos de Planificacion

Planificacion

Page 59: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

Planificacion Lineal y No Lineal

Planificacion

Grupo de Planificacion y Aprendizaje (PLG)Departamento de InformaticaEscuela Politecnica Superior

Universidad Carlos III de Madrid

22 de diciembre de 2008

Planificacion

Page 60: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

En Esta Seccion:

3 Planificacion Lineal y No LinealPlanificacion Lineal: STRIPSPlanificacion No Lineal

4 Planificacion Basada en Estados

Planificacion

Page 61: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

strips

Objetivo: construccion de un sistema de control para el robot Shakey

Planificacion

Page 62: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

Representacion de operadores

Problema del marco: ¿que ocurre con el contexto del mundocuando se ejecuta una accion?

Solucion (hipotesis strips): solo cambian las cosas queaparecen en las post-condiciones de cada operador

Busqueda:Nodos: estado actual y pila de metas-operadoresNodo raız: estado inicial y conjuncion de metasHeurıstica: seleccionar siempre alguno de los sucesores de cadanodo

Idea:Meter en la pila las metas por conseguir y los operadores queconsiguen dichas metasSacar de la pila las metas que sean ciertas en el estado actualy los operadores que se ejecuten

Planificacion

Page 63: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

Algoritmo de strips

Repetir hasta que pila=φ OR no se puedan expandir mas nodos• Si la cima de la pila del nodo es una conjuncion de metas

Si la conjuncion es cierta en el estado Entonces se elimina de la pilaSi no, generar como sucesores todas las posibles combinaciones de las metas

seleccionar una de ellas• Si la cima de la pila del nodo es una meta

Si la meta es cierta en el estado Entonces se elimina de la pilaSi no, Si hay bucle de meta Entonces retroceder

Si no, generar un sucesor por cada instanciacion de operadorque anade dicha meta

Si hay sucesores Entonces elegir unoSi no, retroceder

• Si la cima de la pila del nodo es un operador instanciadoSi el operador instanciado se puede ejecutarEntonces ejecutar operador, quitarlo de la pila y anadirlo al planSi no, se introducen sus precondiciones en la pila

Planificacion

Page 64: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

Representacion de operadores

QUITAR(x , y)precondiciones: encima(x , y),libre(x),brazo-libreanadidos: sujeto(x),libre(y)borrados: encima(x , y),brazo-libre,libre(x)

LEVANTAR(x)precondiciones: en-mesa(x),libre(x),brazo-libreanadidos: sujeto(x)borrados: en-mesa(x),brazo-libre,libre(x)

PONER(x , y)precondiciones: sujeto(x),libre(y)anadidos: encima(x , y),libre(x),brazo-libreborrados: sujeto(x),libre(y)

DEJAR(x)precondiciones: sujeto(x)anadidos: en-mesa(x),libre(x),brazo-libreborrados: sujeto(x)

Planificacion

Page 65: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

Ejemplo de strips

A

AB

Estado inicial (E )0

Metas

en−mesa(A) E0

Planificacion

Page 66: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

Ejemplo de strips

A

AB

Estado inicial (E )0

Metas

en−mesa(A) E0

en−mesa(A)DEJAR(A) E0

Planificacion

Page 67: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

Ejemplo de strips

A

AB

Estado inicial (E )0

Metas

en−mesa(A) E0

en−mesa(A)DEJAR(A) E0

sujeto(A)DEJAR(A)en−mesa(A)

E0

Planificacion

Page 68: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

Ejemplo de strips

A

AB

Estado inicial (E )0

Metas

en−mesa(A) E0

en−mesa(A)DEJAR(A) E0

sujeto(A)DEJAR(A)en−mesa(A)

E0

E0

en−mesa(A)

sujeto(A)DEJAR(A)

QUITAR(A,A)

QUITAR(A,B)

en−mesa(A)

sujeto(A)DEJAR(A)

E0E

sujeto(A)DEJAR(A)en−mesa(A)

0

LEVANTAR(A)

Planificacion

Page 69: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

Ejemplo de strips

A

AB

Estado inicial (E )0

Metas

en−mesa(A) E0

en−mesa(A)DEJAR(A) E0

sujeto(A)DEJAR(A)en−mesa(A)

E0

E0

en−mesa(A)

sujeto(A)DEJAR(A)

QUITAR(A,A)

QUITAR(A,B)

en−mesa(A)

sujeto(A)DEJAR(A)

E0E

sujeto(A)DEJAR(A)en−mesa(A)

0

LEVANTAR(A)

LEVANTAR(A)

en−mesa(A)DEJAR(A)sujeto(A) E0

LEVANTAR(A)

en−mesa(A)DEJAR(A)sujeto(A)

E0

metabucle de

X

brazo−libreen−mesa(A) libre(A)

en−mesa(A) libre(A)brazo−librebrazo−libre

X

X X

X X

en−mesa(A)libre(A)

...

Planificacion

Page 70: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

Ejemplo de strips

A

AB

Estado inicial (E )0

Metas

en−mesa(A) E0

en−mesa(A)DEJAR(A) E0

sujeto(A)DEJAR(A)en−mesa(A)

E0

E0

en−mesa(A)

sujeto(A)DEJAR(A)

QUITAR(A,A)

QUITAR(A,B)

en−mesa(A)

sujeto(A)DEJAR(A)

E0E

sujeto(A)DEJAR(A)en−mesa(A)

0

LEVANTAR(A)

LEVANTAR(A)

en−mesa(A)DEJAR(A)sujeto(A) E0

LEVANTAR(A)

en−mesa(A)DEJAR(A)sujeto(A)

E0

metabucle de

X

brazo−libreen−mesa(A) libre(A)

en−mesa(A) libre(A)brazo−librebrazo−libre

X

X X

X X

en−mesa(A)libre(A)

...

libre(A) brazo−libreencima(A,B)QUITAR(A,B)sujeto(A)DEJAR(A)en−mesa(A)

E0

Planificacion

Page 71: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

Ejemplo de strips

A

AB

Estado inicial (E )0

Metas

en−mesa(A) E0

en−mesa(A)DEJAR(A) E0

sujeto(A)DEJAR(A)en−mesa(A)

E0

E0

en−mesa(A)

sujeto(A)DEJAR(A)

QUITAR(A,A)

QUITAR(A,B)

en−mesa(A)

sujeto(A)DEJAR(A)

E0E

sujeto(A)DEJAR(A)en−mesa(A)

0

LEVANTAR(A)

LEVANTAR(A)

en−mesa(A)DEJAR(A)sujeto(A) E0

LEVANTAR(A)

en−mesa(A)DEJAR(A)sujeto(A)

E0

metabucle de

X

brazo−libreen−mesa(A) libre(A)

en−mesa(A) libre(A)brazo−librebrazo−libre

X

X X

X X

en−mesa(A)libre(A)

...

libre(A) brazo−libreencima(A,B)QUITAR(A,B)sujeto(A)DEJAR(A)en−mesa(A)

E0

E1sujeto(A)DEJAR(A)en−mesa(A) B

A

E1

Planificacion

Page 72: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

Ejemplo de strips

A

AB

Estado inicial (E )0

Metas

en−mesa(A) E0

en−mesa(A)DEJAR(A) E0

sujeto(A)DEJAR(A)en−mesa(A)

E0

E0

en−mesa(A)

sujeto(A)DEJAR(A)

QUITAR(A,A)

QUITAR(A,B)

en−mesa(A)

sujeto(A)DEJAR(A)

E0E

sujeto(A)DEJAR(A)en−mesa(A)

0

LEVANTAR(A)

LEVANTAR(A)

en−mesa(A)DEJAR(A)sujeto(A) E0

LEVANTAR(A)

en−mesa(A)DEJAR(A)sujeto(A)

E0

metabucle de

X

brazo−libreen−mesa(A) libre(A)

en−mesa(A) libre(A)brazo−librebrazo−libre

X

X X

X X

en−mesa(A)libre(A)

...

libre(A) brazo−libreencima(A,B)QUITAR(A,B)sujeto(A)DEJAR(A)en−mesa(A)

E0

E1sujeto(A)DEJAR(A)en−mesa(A) B

A

E1E2en−mesa(A)

B A

E2

Planificacion

Page 73: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

Problema: linealidad

strips asume independencia entre las metas, por lo que las tratalinealmente: hasta que no encuentra un plan para obtener una meta,no pasa a las siguientes metas

No funciona cuando hay recursos limitados, por lo que es:

incompleta: existe solucion, pero no la encuentra

Problema del cohete chinoBA A B

C

MarteTierra

Estado inicial

Marte

Metas

no optima: no encuentra la solucion optima

Anomalıa de Sussman

Estado inicial Metas

A

C

B

A

B

C

Planificacion

Page 74: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

Planificacion no lineal

Consideracion de varias metas al mismo tiempo

Pensar con un conjunto de metas: no es necesario generarcompletamente un plan de una meta para estudiar al mismotiempo el resto

...

en−aeropuerto(Pepe,Barajas)

coger−taxi(Pepe,Casa−Pepe,Barajas)

en−aeropuerto(Maletas−Pepe,Barajas)

descargar−maletas(Maletas−Pepe,x,Barajas)

Expandir un grafo en el que las metas (y los operadores) sonnodos y se pueden seleccionar las metas en cualquier orden

en(Maletas−Pepe,Casa−Pepe)

en(Pepe,Casa−Pepe)

coger−taxi(Pepe,Casa−Pepe,Barajas)

descargar−maletas(Maletas−Pepe,x,Barajas)

en−aeropuerto(Maletas−Pepe,Barajas)

en−aeropuerto(Pepe,Barajas)Estado inicial Metas

Planificacion

Page 75: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Lineal: STRIPSPlanificacion No Lineal

Planificacion no lineal

Segun espacio de problemas:

Estados (strips, prodigy): nodos del arbol representanestadosPlanes (noah, tweak, ucpop, snlp, o-plan): nodos delarbol representan planes

Segun plan generado:

Orden total: secuencia unica de operadoresOrden parcial: multiples secuencias posibles

Segun toma de decisiones:

Compromiso casual: toman decisiones contınuamenteMınimo compromiso: solo toman decisiones cuando se venforzados

No hay una tecnica mejor que otra

Planificacion

Page 76: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Planificacion Basada en Estados

Planificacion

Grupo de Planificacion y Aprendizaje (PLG)Departamento de InformaticaEscuela Politecnica Superior

Universidad Carlos III de Madrid

22 de diciembre de 2008

Planificacion

Page 77: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

En Esta Seccion:

3 Planificacion Lineal y No LinealPlanificacion Lineal: STRIPSPlanificacion No Lineal

4 Planificacion Basada en Estados

Planificacion

Page 78: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

prodigy

Analisis medios-fines con busqueda hacia atras (bidireccional)

Las metas se tratan como un conjunto

Decisiones:

Meta: que meta escogerOperador: que operador utilizar para obtener una metaInstanciacion de operador: que valores asignar a las variablesdel operadorEjecutar un operador o trabajar en alguna submeta

Se puede definir conocimiento de control explıcito para tomarlas decisiones

Planificacion

Page 79: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Arbol de busqueda generico de prodigy

operador o trabajar enuna submeta

1 g

1

1 b

1 g

4 3

2

1

o

meta meta

meta meta

metaElige una

Elige unoperador

Elige unainstanciación

Decide si ejecutar un

ejecutar operador submeta

submetaejecutar operador

operador

instanciacióninstanciación

operador

Planificacion

Page 80: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Algunas definiciones

Una meta esta pendiente si es una precondicion de unoperador seleccionado (incluyendo las metas iniciales) que noes cierta en el estado actual

Un operador es aplicable cuando todas sus precondiciones sonciertas en el estado actual

Operadores relevantes a una meta son aquellos que, si seejecutara una de sus instanciaciones, conseguirıa que la metafuera cierta en el estado

Camino sin salida

Bucle de metaTodas las opciones han sido caminos sin salidaNo hay ninguna opcionSe ha sobrepasado el lımite de profundidad o tiempo

Planificacion

Page 81: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Algoritmo de planificacion de Prodigy4.0

Prodigy (E ,M,O, C)

Mientras que las metas M no sean ciertas en el estado E Yno se hayan sobrepasado los recursos lımite (tiempo o nodos) Yno se hayan explorado todos los posibles nodos

Si hay un camino sin salida, entonces retrocederSi no, Calcular el conjunto de operadores aplicables, A

Elegir una meta M ∈M o un operador A ∈ A de acuerdo a CSi se ha seleccionado M, entonces:

Generar el conjunto O′ ∈ O de los operadores relevantesElegir un operador O ∈ O′, de acuerdo a CGenerar el conjunto de instanciaciones del operador O, Oi

Elegir un operador instanciado Oi ∈ Oi , de acuerdo a CSi no, (se ha seleccionado un A):

Asignar E al estado despues de Ejecutar ACalcular el conjunto de metas pendientes M

Planificacion

Page 82: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Ejemplo de prodigy

A

B

B

A

MetasEstado inicial

done

*finish*

en−mesa(A) encima(B,A)

dejar

dejar(A)

sujeto(A)

levantar

encima(B,A)

quitar

QUITAR(A,B)

encima(B,A)DEJAR(A)

encima(B,A)

poner

sujeto(B)

poner(B,A)libre(A)

quitarlevantar

LEVANTAR(B)

PONER(B,A)

*finish*()

*FINISH*()

encima(B,A)

levantar(A)

en−mesa(A)

brazo−librelibre(A),

encima(B,A)

quitar(A,B) brazo−libre

libre(B) levantar(B)

encima(A,B),libre(A),

en−mesa(B),brazo−libre,

Planificacion

Page 83: Plani caci on - UC3Mocw.uc3m.es/.../material-de-clase-1/planificacion.pdf1 Introducci on a la Plani caci on de Tareas De nici on de Plani caci on Autom atica de Tareas M etodos de

Planificacion Lineal y No LinealPlanificacion Basada en Estados

Arquitectura de prodigy

Aprendizaje de conocimientode dominio

Aprendizaje de conocimientode control para mejorar la

calidad

Aprendizaje de conocimientode control para mejorar la eficiencia

Planificador

ApprenticeExperiment

Observe Hamlet

Quality

Prodigy/EBL Static Dynamic Alpine Prodigy/Analogy

Planificacion