• No se han encontrado resultados

Planificaci ´on Autom ´atica

N/A
N/A
Protected

Academic year: 2019

Share "Planificaci ´on Autom ´atica"

Copied!
71
0
0

Texto completo

(1)

Introducci ´on

Planificaci ´on Autom ´atica

Grupo PLG

Universidad Carlos III de Madrid

(2)

Introducci ´on

Indice

1 Introducci ´on

Concepto de Planificaci ´on Aplicaciones

Representaci ´on B ´usqueda

(3)

Introducci ´on

Indice

1 Introducci ´on

Concepto de Planificaci ´on Aplicaciones

(4)

Introducci ´on

Concepto de Planificaci ´on

¿Qu ´e es planificaci ´on?

Empresarios: establecimiento de planes de la empresa Abogados: establecimiento de planes de defensa del cliente

Industriales: establecimiento de planes de movimiento de robots

Arquitectos: establecimiento de planes de dise ˜no de edificios

Inform ´aticos: establecimiento de planes de desarrollo del sistema

Telecomunicaciones: establecimiento de planes de conexi ´on

Ej ´ercito: establecimiento de planes de ataque/defensa Log´ıstica de transportes: establecimiento de planes para llevar objetos/sujetos de un sitio a otro

(5)

Introducci ´on

Concepto de Planificaci ´on

¿Qu ´e tienen en com ´un?

B ´usqueda en un espacio de problemas

Estado o situaci ´on: descripci ´on instant ´anea

Acci ´on u Operador: transformaci ´on de un estado en otro

Estado inicial: situaci ´on de partida

Objetivo o meta: descripci ´on de condiciones que se tienen que dar para considerar por terminado el proceso

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

(6)

Introducci ´on

Concepto de Planificaci ´on

¿Qu ´e es la planificaci ´on?

Planificaci ´on

Dados:

un modelo del dominio (lenguaje PDDL): conjunto de acciones

un problema: un estado inicial, un conjunto de metas, una m ´etrica

Obtener: un conjunto ordenado de acciones que consigue las metas desde el estado inicial

(intentando optimizar la m ´etrica)

(7)

Introducci ´on

Concepto de Planificaci ´on

Planificaci ´on autom ´atica

G1, G2 ... Gi

I1,I2...Im A1, A2 ..Aj

Sn

An A1

SO

G1, G2 ... Gi

SOLUTION Plan=A1, A2, ...An

ARTIFICIAL INTELLIGENCE PLANNING

PROBLEM DOMAIN

Initial State Goals Actions and states

S1

I1, I2 ... Im ...

PSPACE-COMPLETE

(8)

Introducci ´on

Concepto de Planificaci ´on

Planificaci ´on autom ´atica

G1, G2 ... Gi

I1,I2...Im A1, A2 ..Aj

Sn

An A1

SO

G1, G2 ... Gi

SOLUTION Plan=A1, A2, ...An

ARTIFICIAL INTELLIGENCE PLANNING

PROBLEM DOMAIN

Initial State Goals Actions and states

S1

I1, I2 ... Im ...

PSPACE-COMPLETE

HEURISTICS

(9)

Introducci ´on

Concepto de Planificaci ´on

Planificaci ´on autom ´atica

G1, G2 ... Gi

I1,I2...Im A1, A2 ..Aj

Sn

An A1

SO

G1, G2 ... Gi

SOLUTION Plan=A1, A2, ...An

ARTIFICIAL INTELLIGENCE PLANNING

PROBLEM DOMAIN

Initial State Goals Actions and states

S1

I1, I2 ... Im ...

PSPACE-COMPLETE

(10)

Introducci ´on

Concepto de Planificaci ´on

Acciones en el dominio de los Rovers

(:action navigate

:parameters (?x - rover ?y - waypoint ?z - waypoint) :precondition (and (can_traverse ?x ?y ?z)

(available ?x) (at ?x ?y) (visible ?y ?z) (>= (energy ?x) 8)) :effect (and (decrease (energy ?x) 8)

(not (at ?x ?y)) (at ?x ?z)))

(11)

Introducci ´on

Concepto de Planificaci ´on

Ejemplo de soluci ´on

Solution:

1: (navigate rover1 waypoint2 waypoint1) [1] 2: (sample_soil rover0 rover0store waypoint3) [1] 3: (sample_rock rover1 rover1store waypoint1) [1] 4: (calibrate rover1 camera0 objective0 waypoint1) [1]

5: (take_image rover1 waypoint1 objective0 camera0 high_res) [1] 6: (communicate_soil_data rover0 general waypoint3

waypoint3 waypoint2) [1] 7: (communicate_rock_data rover1 general waypoint1 waypoint1 waypoint2) [1]

(12)

Introducci ´on

Concepto de Planificaci ´on

¿Qu ´e es planificaci ´on?

Scheduling

Dados:

un conjunto de actividades (acciones)

algunas restricciones sobre la precedencia, aspectos temporales o de utilizaci ´on de recursos

Obtener: una asignaci ´on temporal y de recursos a las actividades

(13)

Introducci ´on

Concepto de Planificaci ´on

Ejemplo de salida

[0,5] (navigate rover1 waypoint2 waypoint1) [10,40] [10,45] (sample_soil rover0 rover0store waypoint3) [5,10] [10,45] (sample_rock rover1 rover1store waypoint1) [10,20] [20,65] (calibrate rover1 camera0 objective0 waypoint1) [2,5] [22,70] (take_image rover1 waypoint1 objective0

camera0 high_res) [2,5] [24,75] (communicate_soil_data rover0 general waypoint3

waypoint3 waypoint2) [5,20] [24,75] (communicate_rock_data rover1 general waypoint1

waypoint1 waypoint2) [5,20]

(14)

Introducci ´on

Concepto de Planificaci ´on

Una historia de la planificaci ´on

1950 1960 1970 19801980 1990 2000 Planners

Learning Applications

(15)

Introducci ´on

Concepto de Planificaci ´on

¿C ´omo planificamos?

De m ´ultiples formas

En funci ´on de los fines (metas) y los medios (operadores) Descomponiendo problemas en subproblemas

Basado en la experiencia

Reactivamente

Entre varios agentes

(16)

Introducci ´on

Concepto de Planificaci ´on

Aproximaciones a la planificaci ´on

Manual: herramientas que facilitan la labor (IMENDIO,

PROJECT)

Dependiente del dominio: programar para cada dominio un planificador

Independiente del dominio: funcionan en todos los dominios

(17)

Introducci ´on

Concepto de Planificaci ´on

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 metas

metas que no pueden ser ciertas en ning ´un momento y otras que deben ser ciertas siempre

funci ´on de utilidad con recompensas y pagos (maximizaci ´on o minimizaci ´on)

(18)

Introducci ´on

Concepto de Planificaci ´on

Arquitectura cl ´asica

Entorno

actuadores sensores

Controlador Reacción

Planificación Sentimientos Comportamiento social

Aprendizaje

Localización y planificación de

Comunicación

trayectorias

(19)

Introducci ´on

Concepto de Planificaci ´on

Arquitectura cl ´asica

Entorno

actuadores sensores

Controlador Reacción Planificación

Sentimientos Comportamiento social

Aprendizaje

Localización y planificación de

Comunicación

(20)

Introducci ´on

Concepto de Planificaci ´on

Arquitectura cl ´asica

Entorno

actuadores sensores

Controlador Reacción Planificación Sentimientos

Comportamiento social

Aprendizaje

Localización y planificación de

Comunicación

trayectorias

(21)

Introducci ´on

Concepto de Planificaci ´on

Arquitectura cl ´asica

Entorno

actuadores sensores

Controlador Reacción Planificación Sentimientos Comportamiento social

Aprendizaje

Localización y planificación de

Comunicación

(22)

Introducci ´on

Concepto de Planificaci ´on

Arquitectura cl ´asica

Entorno

actuadores sensores

Controlador Reacción Planificación Sentimientos Comportamiento social

Aprendizaje

Localización y planificación de

Comunicación

trayectorias

(23)

Introducci ´on

Concepto de Planificaci ´on

Suposiciones iniciales

Conjunto de estados finito

Completamente observable

Determinista

Est ´atico

Metas restringidas

Planes secuenciales

Tiempo impl´ıcito

(24)

Introducci ´on

Concepto de Planificaci ´on

Algunas cuestiones dif´ıciles

Nuestra visi ´on 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 v ´alidos:ejecuci ´on y replanificaci ´on

No todos los planes sonbuenos:calidad

Nos adaptamos al mundo: aprendizaje Tardamos mucho en aprender: aprendizaje

La planificaci ´on y la filosof´ıa: creencias, intenciones y deseos

(25)

Introducci ´on

Concepto de Planificaci ´on

Clasificaci ´on de t ´ecnicas de planificaci ´on

Planificaci ´on determinista:

entorno completamente conocido

no hay realimentaci ´on sobre ejecuci ´on de acciones Enfoques: planificaci ´on cl ´asica

Planificaci ´on probabil´ıstica:

entorno completamente, donde acciones pueden producir diferentes estados determinados por una distribuci ´on probabil´ıstica

Enfoques: combinaci ´on de planificaci ´on determinista y replanificaci ´on, extender planificaci ´on cl ´asica y resolver Markov Decision Processes (MDPs)

(26)

Introducci ´on

Concepto de Planificaci ´on

El mundo de los bloques

Un conjunto de bloques, una mesa, y un brazo de un robot

Todos los bloques son iguales de tama ˜no, forma y color, diferenci ´andose en el nombre

La mesa tiene extensi ´on ilimitada

Cada bloque puede estar encima de la mesa, encima de un s ´olo bloque, o sujeto por el brazo del robot

El brazo de robot s ´olo puede sujetar un bloque cada vez

Resolver problemas supone pasar de una configuraci ´on (estado) inicial a un estado en el que sean ciertas unas metas

C B

C

B A

D A

Estado inicial Metas

(27)

Introducci ´on

Concepto de Planificaci ´on

La log´ıstica de transportes

Ciudades, con aeropuertos y oficinas de correos Aviones que pueden volar entre los aeropuertos

Camiones que s ´olo pueden llevar paquetes dentro de las ciudades

(28)

Introducci ´on

Concepto de Planificaci ´on

Otros dominios

Competiciones de planificaci ´on: desde 1998:

http://icaps-conference.org Aplicaciones reales:

DeepSpace One Spirit+Opportunity Gesti ´on de incendios Gesti ´on de ascensores UAV de vigilancia (WITAS) Bridge

(29)

Introducci ´on

Aplicaciones

(30)

Introducci ´on

Aplicaciones

Ahora (Kanna Rajan, NASA)

GS,SITURN,490UA,BOTH,96-355/03:42:00.000;

CMD,7GYON, 490UA412A4A,BOTH, 96-355/03:47:00:000, ON; CMD,7MODE, 490UA412A4B,BOTH, 96-355/03:47:02:000, INT; CMD,6SVPM, 490UA412A6A,BOTH, 96-355/03:48:30:000, 2; CMD,7ALRT, 490UA412A4C,BOTH, 96-355/03:50:32:000, 6;

CMD,7SAFE, 490UA412A4D,BOTH, 96-355/03:52:00:000, UNSTOW; CMD,6ASSAN,490UA412A6B,BOTH, 96-355/03:56:08:000, GV,153,IMM,231,

GV,153; CMD,7VECT, 490UA412A4E,BOTH, 96-355/03:56:10.000, 0,191.5,6.5,

0.0,0.0,0.0, 96-350/

00:00:00.000,MVR; SEB,SCTEST, 490UA412A23A,BOTH,96-355/03:56:12.000, SYS1,NPERR; CMD,7TURN, 490UA412A4F,BOTH, 96-355/03:56:14.000, 1,MVR;

MISC,NOTE, 490UA412A99A,, 96-355/04:00:00.000, ,START OF TURN;

(31)

Introducci ´on

Aplicaciones

Sat ´elites

Hispasat: mantenaince operations

DS1: operations planning

Future: constellations of satellites Galileo

(32)

Introducci ´on

Aplicaciones

Operaciones militares

(33)

Introducci ´on

Aplicaciones

(34)

Introducci ´on

Aplicaciones

Secuencias de control en plantas industriales

(35)

Introducci ´on

Aplicaciones

(36)

Introducci ´on

Aplicaciones

Servicios Web

Web Metas

Estado inicial

Preferencias

Dominio

(37)

Introducci ´on

Aplicaciones

(38)

Introducci ´on

Aplicaciones

Educaci ´on.

ADAPTAPLAN

ADAPTAPLAN Planificador IMS-LD Sdnsald fdsfds Dsjadkfdsfds Dsadsafsdfds Sdnsaldfdsfds Dsjadkdfsfds dsadsacdcdsfdsfd Sdnsald fdsfds Dsjadkfdsfds Dsadsafsdfds Sdnsaldfdsfds Dsjadkdfsfds dsadsacdcdsfdsfd Sdnsald fdsfds Dsjadkfdsfds Dsadsafsdfds Sdnsaldfdsfds Dsjadkdfsfds dsadsacdcdsfdsfd IMS-MD,... IMS-MD,... Objetos de Aprendizaje, Metas, Recursos, ...

(39)

Introducci ´on

Aplicaciones

(40)

Introducci ´on

Aplicaciones

Juegos de ordenador

(41)

Introducci ´on

Aplicaciones

(42)

Introducci ´on

Aplicaciones

Y tambi ´en en los juegos

(43)

Introducci ´on

Aplicaciones

(44)

Introducci ´on

Representaci ´on

Representaci ´on en planificaci ´on

Para que el ordenador pueda resolver problemas, hace falta decirle qu ´e tiene que resolver en alg ´unlenguaje(al igual que a nosotros)

Existen muchas formas de suministrar esa informaci ´on

La m ´as empleada en planificaci ´on autom ´atica es lal ´ogica de predicados

As´ı se representan los estados y los operadores

La l ´ogica de predicados permite representar las

cuestiones ciertas o falsas del mundo mediante: t ´erminos,

predicados,conectivas, ycuantificadores

No hay una representaci ´on ´unica y v ´alida; cada persona representa los dominios de forma diferente

(45)

Introducci ´on

Representaci ´on

Representaci ´on 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)={avi´on(x),cami´on(x)},

(46)

Introducci ´on

Representaci ´on

Representaci ´on de los estados

Cada estado se representa por unaconjunci ´on de predicados instanciados

en(objeto1,aeropuerto1),en(avi´on1,aeropuerto1),

en(cami´on1,aeropuerto1),en(cami´on2,oficina-correos2),...

Normalmente, se supone que lo que no aparece expl´ıcitamente representado en un estado es falso:

suposici ´on del mundo cerrado

en(objeto1,x) ∀x 6=aeropuerto1

(47)

Introducci ´on

Representaci ´on

Estados en el mundo de los bloques

Se podr´ıan utilizar los siguientes predicados:

encima(x,y): el bloquexest ´a encima dely

en-mesa(x): el bloquexest ´a encima de la mesa libre(x): el bloquexno tiene ning ´un bloque encima sujeto(x): el brazo del robot tiene cogido al bloquex

brazo-libre: el brazo del robot no tiene cogido a ning ´un bloque

Estado inicial:

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

Metas: en-mesa(A),encima(C,B)

C B C B A D A

(48)

Introducci ´on

Representaci ´on

Estados en el mundo de los bloques

Se podr´ıan utilizar los siguientes predicados:

encima(x,y): el bloquexest ´a encima dely

en-mesa(x): el bloquexest ´a encima de la mesa libre(x): el bloquexno tiene ning ´un bloque encima sujeto(x): el brazo del robot tiene cogido al bloquex

brazo-libre: el brazo del robot no tiene cogido a ning ´un bloque

Estado inicial:

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

Metas: en-mesa(A),encima(C,B)

C B C B A D A

Estado inicial Metas

(49)

Introducci ´on

Representaci ´on

Representaci ´on de los operadores

Se deben representar los cambios que ocurren en el mundo por la aplicaci ´on del operador: suposici ´onSTRIPS Se definen por tres listas:

precondiciones: condiciones que se tienen que cumplir en un estado para poder ejecutar el operador

a ˜nadidos: cosas que pasan a ser ciertas por la ejecuci ´on del operador(hay quea ˜nadirlasal estado)

borrados: cosas que dejan de ser ciertas por la ejecuci ´on del operador(hay queborrarlasdel estado)

cargar-avi ´on(objeto,avi ´on,aeropuerto)

precondiciones:en(objeto,aeropuerto),en(avi ´on,aeropuerto)

(50)

Introducci ´on

Representaci ´on

Representaci ´on de los operadores

Se deben representar los cambios que ocurren en el mundo por la aplicaci ´on del operador: suposici ´onSTRIPS Se definen por tres listas:

precondiciones: condiciones que se tienen que cumplir en un estado para poder ejecutar el operador

a ˜nadidos: cosas que pasan a ser ciertas por la ejecuci ´on del operador(hay quea ˜nadirlasal estado)

borrados: cosas que dejan de ser ciertas por la ejecuci ´on del operador(hay queborrarlasdel estado)

cargar-avi ´on(objeto,avi ´on,aeropuerto)

precondiciones:en(objeto,aeropuerto),en(avi ´on,aeropuerto) a ˜nadidos: dentro(objeto,avi ´on)

borrados: en(objeto,aeropuerto)

(51)

Introducci ´on

Representaci ´on

Ejemplo: Mundo de los bloques

Operators

pickup(?x):(ontable ?x) (clear ?x) (arm-empty)

(holding ?x)

¬(ontable ?x)¬(clear ?x)¬(arm-empty)

putdown(?x):(holding ?x)

(ontable ?x) (clear ?x) (arm-empty)

¬(holding ?x)

stack(?x ?y):(holding ?x) (clear ?y)

(on ?x ?y) (clear ?x) (arm-empty)¬(. . . )¬(. . . )

unstack(?x ?y):

(on ?x ?y) (clear ?x) (arm-empty)

(holding ?x) (clear ?y)¬(. . . )¬(. . . )¬(. . . )

C B C B A D A

(52)

Introducci ´on

Representaci ´on

Ejemplos de operadores en log´ıstica

cargar-avi ´on(objeto,avi ´on,aeropuerto)

precondiciones:en(objeto,aeropuerto),en(avi ´on,aeropuerto)

a ˜nadidos:dentro(objeto,avi ´on)

borrados:en(objeto,aeropuerto)

descargar-avi ´on(objeto,avi ´on,aeropuerto)

precondiciones:dentro(objeto,aeropuerto),en(avi ´on,aeropuerto)

a ˜nadidos:en(objeto,aeropuerto)

borrados:dentro(objeto,avi ´on)

cargar-cami ´on(objeto,cami ´on,lugar)

precondiciones:en(objeto,lugar),en(cami ´on,lugar)

a ˜nadidos:dentro(objeto,cami ´on)

borrados:en(objeto,lugar)

descargar-cami ´on(objeto,cami ´on,lugar) volar-avi ´on(avi ´on,aeropuerto1,aeropuerto2) precondiciones:en(avi ´on,aeropuerto1)

a ˜nadidos:en(avi ´on,aeropuerto2)

borrados:en(avi ´on,aeropuerto1)

conducir-cami ´on(cami ´on,lugar1,lugar2,ciudad)

precondiciones:en(cami ´on,lugar1),en-ciudad(lugar1,ciudad),en-ciudad(lugar2,ciudad)

a ˜nadidos:en(cami ´on,lugar2)

borrados:en(cami ´on,lugar1)

(53)

Introducci ´on

Representaci ´on

Desde

STRIPS

hasta

PDDL

El lenguaje deSTRIPSes muy simple

Se ampli ´o el lenguaje, generando ADL, que incorpora, entre otros:

cuantificaci ´on universal y existencial efectos condicionales

Desde 1998 se ha venido organizando una competici ´on de planificadores, IPC (“International Planning Competition”) Se necesitaba un lenguaje com ´un: PDDL

Ha tenido varias versiones, que permiten, entre otros:

especificaci ´on de costes de ejecuci ´on de operadores tipos para variables de operadores

(54)

Introducci ´on

Representaci ´on

Lenguaje est ´andar

PDDL

. Dominio de la log´ıstica

(define (domain logistics)

(:requirements :strips :typing) (:types truck airplane - vehicle

package vehicle - physobj

airport location - place city place physobj - object)

(:predicates (in-city ?loc - place ?city - city) (at ?obj - physobj ?loc - place)

(in ?pkg - package ?veh - vehicle)) ...)

(55)

Introducci ´on

Representaci ´on

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)

(56)

Introducci ´on

Representaci ´on

Definici ´on 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)))

(57)

Introducci ´on

Representaci ´on

Operadores m ´as 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)

(58)

Introducci ´on

B ´usqueda

B ´usqueda

B ´usqueda hacia adelante (progresi ´on): se ejecutan operadores hasta que se encuentre la soluci ´on

Ejemplos: SOAR[Lairdet al., 1986],FF[Hoffmann and

Nebel, 2001], TLPLAN[Bacchus and Kabanza, 2000]

B ´usqueda hacia atr ´as (regresi ´on): se comienza desde las metas, se seleccionan operadores que las a ˜nadan y se a ˜naden las precondiciones de los mismos al conjunto de metas

Ejemplos: STRIPS[Fikes and Nilsson, 1971],

UCPOP[Penberthy and Weld, 1992], PRODIGY[Velosoet

al., 1995]

(59)

Introducci ´on

B ´usqueda

B ´usqueda

B ´usqueda hacia adelante (progresi ´on): se ejecutan operadores hasta que se encuentre la soluci ´on

Ejemplos: SOAR[Lairdet al., 1986],FF[Hoffmann and

Nebel, 2001], TLPLAN[Bacchus and Kabanza, 2000]

B ´usqueda hacia atr ´as (regresi ´on): se comienza desde las metas, se seleccionan operadores que las a ˜nadan y se a ˜naden las precondiciones de los mismos al conjunto de metas

Ejemplos: STRIPS[Fikes and Nilsson, 1971],

UCPOP[Penberthy and Weld, 1992], PRODIGY[Velosoet

(60)

Introducci ´on

B ´usqueda

B ´usqueda hacia adelante

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

D D D

... ...

DEJAR(A) PONER(A,C)

PONER(A,B)

...

(61)

Introducci ´on

B ´usqueda

B ´usqueda hacia adelante

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

D D D

DEJAR(A) PONER(A,C)

PONER(A,B)

(62)

Introducci ´on

B ´usqueda

B ´usqueda hacia atr ´as

B C B A D C B ... A C 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)

(63)

Introducci ´on

B ´usqueda

B ´usqueda hacia atr ´as

(64)

Introducci ´on

B ´usqueda

B ´usqueda 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))))

(65)

Introducci ´on

B ´usqueda

B ´usqueda

Sin conocimiento

Amplitud vs. Profundidad

Hacia adelante vs. hacia atr ´as vs. bidireccional

Con costes vs. sin costes

Uno vs. m ´ultiples agentes

B ´usqueda con conocimiento

B ´usqueda local y avara (greedy) vs. b ´usqueda global

Escalada, en Haz

(66)

Introducci ´on

B ´usqueda

Caracter´ısticas

Complejidad en tiempo y espacio

Completud Optimalidad

Decidibilidad

(67)

Introducci ´on

B ´usqueda

M ´as informaci ´on en

Libro reciente: [Ghallabet al., 2004]

Otras referencias: [Nilsson, 1987, Borrajoet al., 1993,

Rich and Knight, 1994, Russell and Norvig, 1995, Allenet al., 1990,

(68)

Introducci ´on

B ´usqueda

Referencias

James F. Allen, James Hendler, and Austin Tate (eds.).

Readings in Planning.

Morgan Kaufmann, 1990.

Fahiem Bacchus and Froduald Kabanza.

Using temporal logics to express search control knowledge for planning.

Artificial Intelligence, 116:123–191, 2000.

Daniel Borrajo, Natalia Juristo, Vicente Mart´ınez, and Juan Pazos.

Inteligencia Artificial. M ´etodos y T ´ecnicas.

Centro de Estudios Ram ´on Areces, Madrid, 1993.

Richard E. Fikes and Nils J. Nilsson.

Strips: A new approach to the application of theorem proving to problem solving.

(69)

Introducci ´on

B ´usqueda

Artificial Intelligence, 2:189–208, 1971.

Malik Ghallab, Dana Nau, and Paolo Traverso.

Automated Task Planning. Theory & Practice.

Morgan Kaufmann, 2004.

J ¨org Hoffmann and Bernhard Nebel.

The FF planning system: Fast plan generation through heuristic search.

Journal of Artificial Intelligence Research, 14:253–302, 2001.

John E. Laird, Paul S. Rosenbloom, and Allen Newell.

Chunking in SOAR: The anatomy of a general learning mechanism.

(70)

Introducci ´on

B ´usqueda

Ediciones D´ıaz de Santos, Madrid, 1987.

J. S. Penberthy and D. S. Weld.

UCPOP: A sound, complete, partial order planner for ADL.

InProceedings of KR-92, pages 103–114, 1992.

Elaine Rich and Kevin Knight.

Inteligencia Artificial.

McGraw-Hill, Inc., 1994. Segunda edici ´on.

Stuart Russell and Peter Norvig.

Artificial Intelligence: A Modern Approach.

Prentice Hall, 1995.

Manuela Veloso, Jaime Carbonell, Alicia P ´erez, Daniel Borrajo, Eugene Fink, and Jim Blythe.

Integrating planning and learning: ThePRODIGYarchitecture.

(71)

Introducci ´on

B ´usqueda

Journal of Experimental and Theoretical AI, 7:81–120, 1995.

Daniel S. Weld.

An introduction to least commitment planning.

Referencias

Documento similar

Los elementos de la lista se definen mediante la etiqueta &lt;li&gt;, la misma que se utiliza en las listas no ordenadas3. • LISTAS

Aunque los cambios que ocurren no son tan vertiginosos como los cambios que se observan en el periodo embrionario, son importantes, y se caracterizan por la lentitud relativa

Son aquellas transformaciones o cambios que no afectan la composición de la materia. En los cambios físicos no se forman nuevas sustancias. Se dan cambios físicos cuando

Al igual que en el caso del operador de recombinaci´ on o crossover, tras la mutaci´ on de los individuos en el flujo general del algoritmo gen´ etico se proceder´ a a aplicar

Se definen los diferentes tipos de fuego forestal que ocurren en esta zona (apoyado en el apartado siguiente “incendios históricos”). Según criterios establecidos por la Unidad

En la actualidad también se sabe mucho sobre los cambios que ocurren en el ciclo sueño/vigilia durante la vida y las diferencias individuales que ocurren en ese proceso; además,

También se sabe que estos cambios no ocurren en las neuronas per se, estos cambios hemodinámicas se dan en el lecho vascular capilar y las venas

Traducci ´on autom ´atica estad´ıstica basada en palabras El modelo de traducci ´on y el modelo de lengua se combinan para mejorar la calidad de las traducciones. p translation