Unidad No. 3 - Planificadores Modernos

100
INTELIGENCIA ARTIFICIAL - ICIF0021 Unidad 3 - Planificadores Modernos Docente: Milton A. Ram´ ırez Klapp [email protected] Universidad San Sebasti´ an Facultad de Ingenier´ ıa y Tecnolog´ ıa Primer Semestre 2011 M. Ram´ ırez K. (USS) Apunte curso IA Primer Semestre 2011 1 / 100

Transcript of Unidad No. 3 - Planificadores Modernos

Page 1: Unidad No. 3 - Planificadores Modernos

INTELIGENCIA ARTIFICIAL - ICIF0021Unidad 3 - Planificadores Modernos

Docente: Milton A. Ramırez [email protected]

Universidad San SebastianFacultad de Ingenierıa y Tecnologıa

Primer Semestre 2011

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 1 / 100

Page 2: Unidad No. 3 - Planificadores Modernos

Objetivos de la Unidad

Identifican la problematica asociada con los metodos de busqueda estudiados en laUnidad II.

Identifican las componentes de los lenguajes de planificacion modernos.

Conocen la tecnica STRIPS para modelar algebraicamente problemas de acuerdoal esquema (Estados, Acciones, Operaciones).

Resuelven problemas de planificacion usando las tecnicas forward-chaining ybackward-chaining.

Reconocen las diferencias entre la planificacion lineal y de orden parcial.

Identifican los elementos que componen un planificador de orden parcial (POP).

Resuelven problemas que involucran el uso de POP.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 2 / 100

Page 3: Unidad No. 3 - Planificadores Modernos

Contenidos

1 Lenguaje de Planificadores: representacion STRIPS y ADL.

2 Planificacion hacia adelante y hacia atras.

3 Planificadores de orden parcial (POP).

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 3 / 100

Page 4: Unidad No. 3 - Planificadores Modernos

Introduccion

Planificar significa encontrar una secuencia de acciones que permitenalcanzar un determinado objetivo a partir de un estado inicial:

X a esta serie de acciones la denominaremos planX un planificador sera la entidad de software que lo implemente.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 4 / 100

Page 5: Unidad No. 3 - Planificadores Modernos

Introduccion

¿Que pasa si realizamos una busqueda tradicional en entornos reales?

La posibilidad mas evidente es que el buscador de soluciones seadesbordado por acciones completamente irrelevantes:

X pensemos en la tarea de adquirir un libro en una tienda online cuyoISBN sea igual a 0137903952

X si tenemos representada la accion de comprar cada libro con ISBN de10 dıgitos , esta nos generarıa un universo no despreciable de 1010 =10billones de acciones para satisfacer el objetivo a conseguir.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 5 / 100

Page 6: Unidad No. 3 - Planificadores Modernos

Introduccion

Un planificador razonable debiera ser capaz de trabajar con expresiones deobjetivos explıcitas tales como Tener(ISBN 0137903952) y generarautomaticamente la accion Comprar(ISBN 0137903952) directamente.

El planificador debiera tener un conocimiento general del tipo

Comprar(x) se reduce a Tener(x)

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 6 / 100

Page 7: Unidad No. 3 - Planificadores Modernos

Introduccion

De poseerlo, el planificador puede decidir en un unico paso quecomprar(ISBN 0137903952) es la accion correcta.

Otra dificultad que surge si optamos por una busqueda tradicional esencontrar una heurıstica apropiada.

Supongamos que el objetivo se redefine a comprar cuatro libros en lamisma tienda:

X esto significa que tenemos un total de ¡1040 planes posibles con 4etapas!

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 7 / 100

Page 8: Unidad No. 3 - Planificadores Modernos

Introduccion

El uso de una heurıstica es innegable.

Para un ser humano, una heurıstica podrıa ser la cantidad de librosque quedan por comprar.

X para un planificador esto no es evidente puesto que cada subobjetivolo evalua como verdadero o falso.

Si el planificador tiene acceso al objetivo como una conjuncion logicade subobjetivos, este se puede representar como

Tener(A) ∧Tener(B) ∧Tener(C) ∧Tener(D)

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 8 / 100

Page 9: Unidad No. 3 - Planificadores Modernos

Introduccion

Otro aspecto a considerar de un planificador es que permitadescomponer un problema en subproblemas:

X se puede demostrar que la estrategia dividir para conquistar mejora laeficiencia de los algoritmos de planificacion.

En un aeropuerto, trasladar maletas de viajes a sus destinos:

X una estrategia logica de descomposicion es encontrar el aeropuerto mascercano a cada destino y ası hacer que cada subproblema se reduzca allegar a cada aeropuerto intermedio.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 9 / 100

Page 10: Unidad No. 3 - Planificadores Modernos

Lenguaje de Planificadores

Los aspectos que se consideren en la planificacion son: estados,acciones y objetivos

X esto, para que los algoritmos aprovechen la estructura logica delproblema.

Necesidad de contar con un lenguaje que sea expresivo y restrictivoa la vez.

El lenguaje que ocuparemos en esta unidad recibe el nombre STRIPS:

STanford Research Institute Problem Solver

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 10 / 100

Page 11: Unidad No. 3 - Planificadores Modernos

Representacion STRIPSElementos

Elemento Descripcion EjemplosConstantes Seran los objetos del mundo y

por convencion las denotare-mos con mayuscula.

BLOQUE-A

RUEDA-DE-REPUESTO

VariablesSe usaran pararepresentar cualquierobjeto.

Su nombre va conminuscula.

Usaremos las ultimasletras del alfabeto pararepresentarlas.

x, x1, x2

y

z

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 11 / 100

Page 12: Unidad No. 3 - Planificadores Modernos

Representacion STRIPS

Elemento Descripcion EjemplosSımbolos de predicados Se usan para representar las

propiedades de los objetos. Susemantica debe ser explicitada.No necesariamente contienenvariables o constantes.

mayor(x, y)

sobre(x1, x2)

Sımbolos de acciones Se usan para designar los ope-radores y las denotaremos conVersalitas.

Comprar(x)

MoverHaciaDerecha(z)

Intercambiar(x, y)

Atomos Formulas de la forma

P (o1, . . . , on)

donde oi representa una cons-tante o una variable y P un pre-dicado.

sobre (x,A)

volandoHacia(x, y)

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 12 / 100

Page 13: Unidad No. 3 - Planificadores Modernos

Representacion STRIPS

Elemento Descripcion Ejemplos

Literales Atomos o negacion deatomos. p(o1, . . . , on)

¬padreDe(PEDRO,ANA)

Literales cerrados Sin variables, solo cons-tantes. Un literal cerrado sedice que es positivo cuandono esta negado.

sobre(SILLA, SUELO)

volarHacia(LA815, LA)

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 13 / 100

Page 14: Unidad No. 3 - Planificadores Modernos

Representacion de Estados

Los estados de E se representan mediante una conjuncion de literalespositivos cerrados.

Deben ser simples y sin dependencias funcionales.

X No esta permitido definir un estado como

en(casaDe(x), y)colorDe(x,RGB(#c86400))etc.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 14 / 100

Page 15: Unidad No. 3 - Planificadores Modernos

Representacion de Estados

ImportanteAsumiremos un supuesto conocido como Mundo Cerrado, en el cuallas condiciones que no se mencionan se deben tomar como falsas.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 15 / 100

Page 16: Unidad No. 3 - Planificadores Modernos

Representacion de Estados

Algunos estados validos pueden ser:

adinerado ∧ miserable para representar a alguien desafortunado.

en(AIRPLANE1, CCP ) ∧ en(AIRPLANE2, SCL) pararepresentar una situacion del problema de las maletas.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 16 / 100

Page 17: Unidad No. 3 - Planificadores Modernos

Representacion de EstadosEjemplo: Mundo de los Bloques

Los elementos que intervienen son:

una superficie planauna serie de bloques cubicos que los denotaremos por A,B,C,. . .un brazo robotizado que puede tomar un cubo a la vez

En cualquier instante, un bloque puede estar sobre la mesa o apiladosobre otro bloque o colgando del brazo robotizado.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 17 / 100

Page 18: Unidad No. 3 - Planificadores Modernos

Representacion de Estados

Los predicados que consideraremos son:

despejado(x): el bloque x esta despejado.brazoLibre: el brazo robotizado no esta tomando algun bloque.sobreLaMesa(x): el bloque x esta sobre la mesa.sobre(x, y): el bloque x esta sobre el bloque y.agarrado(x): el bloque x esta tomado por el brazo robotizado.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 18 / 100

Page 19: Unidad No. 3 - Planificadores Modernos

Representacion de Estados

El estado E de la figura

AB

C D

E

se puede describir ası

E : despejado(B) ∧ despejado(C) ∧ despejado(D)

∧ brazoLibre ∧ sobreLaMesa(A) ∧ sobreLaMesa(C)

∧ sobreLaMesa(D) ∧ sobre(B,A) �

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 19 / 100

Page 20: Unidad No. 3 - Planificadores Modernos

Representacion de Objetivos

Cada objetivo del conjunto M se representa como una conjuncion deliterales, que pueden contener variables.

Se dice que un estado satisface un objetivo si es posible sustituir lasvariables del objetivo por objetos del mundo de manera que losliterales esten incluidos en la descripcion del estado.

Un estado es final cuando satisface el estado objetivo.

Las variables que intervengan en el estado final se asumen comoexistencialmente cuantificadas.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 20 / 100

Page 21: Unidad No. 3 - Planificadores Modernos

Representacion de Objetivos

Sean los estados E1 y E2 descritos en la figura

AB

C D ABC

D

E E1 2

y los estados finales

O1 : sobre(B,A) ∧ sobreLaMesa(A)

O2 : sobre(x,A) ∧ despejado(x) ∧ brazoLibreO3 : sobre(x,A) ∧ sobre(y, x)

Estudiar la satisfacibilidad de cada estado Oi por parte de E1 y E2.M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 21 / 100

Page 22: Unidad No. 3 - Planificadores Modernos

Representacion de Objetivos

Solucion

En primer lugar, obtengamos la descripcion algebraica para E1 y E2

en base a los predicados ya vistos:

E1 : despejado(B) ∧ despejado(C) ∧ despejado(D)

∧ brazoLibre ∧ sobreLaMesa(A) ∧ sobreLaMesa(C)

∧ sobreLaMesa(D) ∧ sobre(B,A)

E2 : despejado(C) ∧ sobreLaMesa(A)

∧ sobre(B,A) ∧ sobre(C,B) ∧ agarrado(D)

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 22 / 100

Page 23: Unidad No. 3 - Planificadores Modernos

Representacion de Objetivos

Caso O1

Como los literales sobre(B,A) y sobreLaMesa(A) aparecen en ladescripcion de estados de E1, este claramente satisface a O1.

X La misma explicacion y conclusion es valida para E2.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 23 / 100

Page 24: Unidad No. 3 - Planificadores Modernos

Representacion de Objetivos

Caso O2

La satisfacibilidad de E1 se puede garantizar si es posible encontraralgun valor de x para el cual sobre(x,A) y despejado(x) esten enE1.

X Si intentamos con x = A vemos que las condiciones sobre(A,A) ydespejado(A) no son ciertas ya que esos literales no estan en E1.

X Si x = B vemos que sı se cumple sobre(B,A) y despejado(B)por lo que E1 sı satisface a O2.

Como al menos para un valor de x se cumple,no es necesario probarcon los restantes, que son C y D.

E2 es mas sencillo puesto que, al no aparecer brazoLibre en sudescripcion algebraica se deduce que esta condicion no se tiene envirtud del supuesto del mundo cerrado:

X por lo tanto, E2 no satisface O2.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 24 / 100

Page 25: Unidad No. 3 - Planificadores Modernos

Representacion de Objetivos

Caso O3

En E1, el unico valor de x para el cual el predicado sobre(x,A) sesatisface es con x = B

X pero no es posible encontrar algun valor de y en el conjunto{A,B,C,D} tal que sobre(y, x = B) se haga presente en E1.

X Luego, E1 no satisface a O3.

E2 sı cumple con las exigencias de O3 ya que es posible encontrarvalores x = B, y = C tales que sobre(x = B,A) ysobre(y = C, x = B) esten en E2. �

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 25 / 100

Page 26: Unidad No. 3 - Planificadores Modernos

¿Que vimos la clase pasada?

Concepto de plan y planificacion.

Introduccion al lenguaje de planificadores usando como paradigmainicial la representacion STRIPS y sus elementos.

Representacion de estados y objetivos.

Satisfacibilidad.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 26 / 100

Page 27: Unidad No. 3 - Planificadores Modernos

Hoy veremos

Representacion de acciones, para ası terminar con el tridenteP =< E ,Φ,M >.

ADL como extension valida a STRIPS.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 27 / 100

Page 28: Unidad No. 3 - Planificadores Modernos

Representacion de Acciones

Las acciones del conjunto Φ se componen de cuatro partes:

1 El nombre de la accion, con sus parametros.

2 Las precondiciones que tienen que satisfacerse para que la accion se ejecute.

X Se describen como una conjuncion de literales.X Esta lista la denotaremos por Precondicion .

3 La lista de borrado, que contiene la lista de atomos y literales – escrita comoconjuncion – que dejan de ser ciertos una vez que se ha aplicado eloperador.

X La llamaremos Borrado .

4 La lista de efectos, que contiene la conjuncion de aquellos atomos y literalesque pasan a ser verdaderos una vez que se ha aplicado el operador.

X La llamaremos Efectos .

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 28 / 100

Page 29: Unidad No. 3 - Planificadores Modernos

Representacion de Acciones

Es comun fusionar en Efectos las conjunciones de Borrado conEfectos , haciendo que las primeras aparezcan negadas.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 29 / 100

Page 30: Unidad No. 3 - Planificadores Modernos

Representacion de Acciones¿Que pasa en el mundo de los bloques?

1. Colocar el bloque x sobre el bloque y:Apilar(x, y)

• Precondicion : despejado(y) ∧ agarrado(x)• Borrado : despejado(y) ∧ agarrado(x)• Efectos : brazoLibre ∧ sobre(x, y) ∧ despejado(x)

2. Remover el bloque x que esta sobre el bloque y:Desapilar(x, y)

• Precondicion : sobre(x, y) ∧ despejado(x) ∧ brazoLibre• Borrado : sobre(x, y) ∧ despejado(x) ∧ brazoLibre• Efectos : agarrado(x) ∧ despejado(y)

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 30 / 100

Page 31: Unidad No. 3 - Planificadores Modernos

Representacion de Acciones¿Que pasa en el mundo de los bloques?

3. Tomar un bloque x con el brazo robotizado:Agarrar(x)

• Precondicion :despejado(x) ∧ sobreLaMesa(x) ∧ brazoLibre

• Borrado : despejado(x) ∧ sobreLaMesa(x) ∧ brazoLibre• Efectos : agarrado(x)

4. Dejar un bloque x en la mesa:Bajar(x)

• Precondicion : agarrado(x)• Borrado : agarrado(x)• Efectos : despejado(x) �

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 31 / 100

Page 32: Unidad No. 3 - Planificadores Modernos

Representacion de Acciones

Un operador es aplicable a un estado cuando satisface susprecondiciones:

X si aparecen variables en Precondicion , la aplicabilidad se define conrespecto de la sustitucion Θ usada para satisfacer la precondicion.

Para simplificar, en algunos casos la sustitucion vendra implıcitacuando se hable del operador:

X Desapilar(A,B) se refiere a la accion Desapilar(x, y) aplicando lasustitucion Θ = {x/A, y/B}.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 32 / 100

Page 33: Unidad No. 3 - Planificadores Modernos

Representacion de Acciones

El resultado de aplicar un operador aplicable a un estado E lodenotaremos por E′. La construccion de E′ se hace siguiendo esteesquema:

1 Hacemos E′ = E.2 Eliminando de E′ los atomos instanciados con Θ y los literales

(cerrados o no) de la lista Borrado (si estuvieran) y3 agregando a E′ los atomos y literales (cerrados o no) instanciados con

Θ de la lista Efectos (los que no esten).

La solucion (plan) consiste en una secuencia de operadoresaplicables, completamente instanciados, desde el estado inicial alobjetivo cuando este se encuentre satisfecho.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 33 / 100

Page 34: Unidad No. 3 - Planificadores Modernos

Representacion de AccionesEjemplo de aplicabilidad de operador

Consideremos aplicar la accion Apilar(A,D) al estado descrito en lafigura

BC

D

E

A

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 34 / 100

Page 35: Unidad No. 3 - Planificadores Modernos

Representacion de AccionesEjemplo de aplicabilidad de operador

Solucion

La descripcion algebraica de E viene dada por

E : despejado(C) ∧ despejado(D) ∧ sobreLaMesa(B)

∧ sobreLaMesa(D) ∧ sobre(C,B) ∧ agarrado(A)

Para hallar el valor de Apilar(x, y) debemos ver si E satisface lasprecondiciones de este operador aplicando la sustitucionΘ = {x/A, y/D}:X Esto implica que despejado(D) y agarrado(A) deben estar en la

descripcion de E, lo cual ası ocurre.X Por lo tanto, el operador es aplicable a este estado.

Veamos como se genera el resultado de esta operacionE′ = Apilar(A,D).

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 35 / 100

Page 36: Unidad No. 3 - Planificadores Modernos

Representacion de AccionesEjemplo de aplicabilidad de operador

Los atomos instanciados con Θ de la lista Borrado sondespejado(D) y agarrado(A), y se tienen que eliminar de E′:

Hasta el momento:

E′ : despejado(C) ∧((((((((despejado(D) ∧ sobreLaMesa(B)

∧ sobreLaMesa(D) ∧ sobre(C,B) ∧(((((((agarrado(A)

Por lo tanto:

E′ : despejado(C) ∧ sobreLaMesa(B)

∧ sobreLaMesa(D) ∧ sobre(C,B)

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 36 / 100

Page 37: Unidad No. 3 - Planificadores Modernos

Representacion de AccionesEjemplo de aplicabilidad de operador

Por otro lado, los atomos y literales cerrados que no estan en E son:

X brazoLibreX sobre(A,D)X despejado(A).

Ahora hay que agregarlos a E′. Por lo tanto:

E′ : despejado(C) ∧ despejado(A) ∧ brazoLibre∧ sobreLaMesa(B) ∧ sobreLaMesa(D) ∧∧ sobre(C,B) ∧ sobre(A,D)

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 37 / 100

Page 38: Unidad No. 3 - Planificadores Modernos

Representacion de AccionesEjemplo de aplicabilidad de operador

Ası, el resultado de la operacion es:

BC

D

E

ABC

D

E

A

'

APILAR(A,D)

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 38 / 100

Page 39: Unidad No. 3 - Planificadores Modernos

Extensiones a STRIPS

STRIPS presenta restricciones para simplificar y generar algoritmosmas eficientes.

Una de las mas emblematicas es que los literales no permitendependencias funcionales, lo que significa en la practica que todoproblema tenga una cantidad finita de representaciones para susacciones:

X si se admite la inclusion de sımbolos funcionales, la cantidad de estadosy acciones puede ser infinita.

En los ultimos anos, se ha mostrado claramente que STRIPS noposee expresividad suficiente para ciertos dominios reales.

Entonces, muchos lenguajes han sido desarrollados. Entre ellos: ADL

Action Description Language

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 39 / 100

Page 40: Unidad No. 3 - Planificadores Modernos

Comparacion entre STRIPS y ADL

Lenguaje STRIPS Lenguaje ADL

Solo literales positivos en estados: Literales positivos y negativos en esta-dos:

pobre ∧ desconocido ¬rico ∧ ¬desconocido

Hipotesis del Mundo Cerrado: Hipotesis del Mundo Abierto:los literales no mencionados son falsos. los literales no mencionados son des-

conocidos.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 40 / 100

Page 41: Unidad No. 3 - Planificadores Modernos

Comparacion entre STRIPS y ADL

Lenguaje STRIPS Lenguaje ADL

Los objetivos son conjunciones: Se permiten conjunciones y disyuncionesen los objetivos:

pobre ∧ desconocido. pobre ∧ (desconocido ∨inteligente).

Los efectos son conjunciones. Se permiten efectos condicionales:cuando P : E se interpreta como que Ees un efecto solo si P se satisface.

No soporta igualdades. Predicados de igualdad (x = y) son ad-mitidos.

No soporta tipos. Las variables pueden tener tipos, comox :entero.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 41 / 100

Page 42: Unidad No. 3 - Planificadores Modernos

¿Que vimos la clase pasada?

Algoritmos para encontrar sucesores y predecesores de estados.

Busqueda hacia adelante y hacia atras:

X definicionesX diferencias entre un enfoque y otro.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 42 / 100

Page 43: Unidad No. 3 - Planificadores Modernos

Hoy veremos

Planificadores de Orden Parcial (POP)

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 43 / 100

Page 44: Unidad No. 3 - Planificadores Modernos

Planificadores de orden parcial

Tanto la busqueda de planes hacia adelante como la busqueda deplanes hacia atras son ejemplos de algoritmos de planificacion lineal.

En un planificador lineal, el espacio de busqueda lo forman secuenciastotalmente ordenadas de acciones:

X desde el inicio hacia adelanteX desde el objetivo hacia atras.X Por lo tanto, no se saca provecho de la posible descomposicion que

tenga el problema.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 44 / 100

Page 45: Unidad No. 3 - Planificadores Modernos

Planificadores de orden parcial

ImportanteEn lugar de trabajar con cada subproblema, nos enfocaremos en elorden de las acciones mediante un esquema que

trabaje en varios subojetivos de manera independiente

los soluciones mediante subplanes

para finalizar con la combinacion de los subplanes utilizados.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 45 / 100

Page 46: Unidad No. 3 - Planificadores Modernos

Planificadores de orden parcial

La ventaja que ofrece este enfoque es que permite flexibilizar el ordenen que se generen las acciones:

X ası, el planificador puede trabajar sobre decisiones de distintaimportancia en lugar de cenirse por un orden cronologico o espacial delas mismas.

Ejemplo

Un planificador para una persona que se encuentre en el aeropuerto dePunta Arenas y desee llegar al aeropuerto de Iquique. Primero podrıaintentar encontrar un vuelo de Concepcion a Santiago en lugar de partirbuscando un vuelo de Punta Arenas a Puerto Montt y seguir el ordengeografico sur-norte. �

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 46 / 100

Page 47: Unidad No. 3 - Planificadores Modernos

Planificadores de orden parcial

Para graficar los conceptos que vendran mas adelante, vamos a tomarcomo referencia el ejemplo de ponerse un par de zapatos.

Los predicados que vamos a considerar son:

1 CDP: Calcetın derecho puesto.

2 CIP: Calcetın izquierdo puesto.

3 ZDP: Zapato derecho puesto.

4 ZIP: Zapato izquierdo puesto.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 47 / 100

Page 48: Unidad No. 3 - Planificadores Modernos

Planificadores de orden parcialacciones para el ejemplo de ponerse zapatos

CalcetınDerecho()

• Precondicion : —

• Borrado : —

• Efectos : CDP

CalcetınIzquierdo()

• Precondicion : —

• Borrado : —

• Efectos : CIP

ZapatoDerecho()

• Precondicion : CDP

• Borrado : —

• Efectos : ZDP

ZapatoIzquierdo()

• Precondicion : CIP

• Borrado : —

• Efectos : ZIP

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 48 / 100

Page 49: Unidad No. 3 - Planificadores Modernos

Planificadores de orden parcialProblema de ponerse los zapatos

El estado inicial es vacıo y el estado final es ZDP ∧ ZIP.

Aca es posible apreciar dos subobjetivos:

X ponerse el zapato derechoX ponerse el zapato izquierdoX ambos se pueden combinar para conseguir el objetivo del problema.

El planificador que se construya manipula la secuencia de acciones demanera independiente sin importar a que secuencia corresponda unaaccion concreta.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 49 / 100

Page 50: Unidad No. 3 - Planificadores Modernos

Planificadores de orden parcialProblema de ponerse los zapatos

Cualquier algoritmo de planificacion que pueda combinar dos accionesdentro del mismo plan sin importar cual de ellas va primero se le conocecomo planificador de primer orden.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 50 / 100

Page 51: Unidad No. 3 - Planificadores Modernos

Planificadores de orden parcialPOP para el problema de los calcetines

INICIO

CalcetínIzquierdo CalcetínDerecho

ZapatoIzquierdo ZapatoDerecho

FIN

CIP CDP

ZIP ZDP

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 51 / 100

Page 52: Unidad No. 3 - Planificadores Modernos

Planificadores de orden parcialPOP para el problema de los calcetines

Observaciones

Esta solucion se debe interpretar como un grafo de acciones y nocomo una secuencia lineal de acciones.

Inicio y Fin las tomaremos como acciones para que cada etapa delplan sea una accion.

Para el ejemplo, la solucion de orden parcial tiene correspondenciacon seis posibles planes de orden total, cada uno de los cuales recibeel nombre de linealizacion del plan de orden parcial.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 52 / 100

Page 53: Unidad No. 3 - Planificadores Modernos

Planificadores de orden parcialLinealizaciones para el POP de ponerse un par de zapatos

INICIO

CalcetínIzquierdo

ZapatoDerecho

ZapatoIzquierdo

CalcetínDerecho

FIN

INICIO

CalcetínDerecho

ZapatoIzquierdo

ZapatoDerecho

CalcetínIzquierdo

FIN

INICIO

CalcetínIzquierdo

ZapatoDerecho

CalcetínDerecho

ZapatoIzquierdo

FIN

INICIO

CalcetínIzquierdo

ZapatoIzquierdo

CalcetínDerecho

ZapatoDerecho

FIN

INICIO

CalcetínDerecho

ZapatoDerecho

CalcetínIzquierdo

ZapatoIzquierdo

FIN

INICIO

CalcetínDerecho

ZapatoIzquierdo

CalcetínIzquierdo

ZapatoDerecho

FIN

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 53 / 100

Page 54: Unidad No. 3 - Planificadores Modernos

Construccion de un Plan Parcialmente Ordenado (POP)

El POP se puede implementar como una busqueda en el espacio deplanes:

X cada estado del plan parcial es a su vez un plan en lugar de unasituacion particular del mundo, como ocurre en los planificadoreslineales.

Se parte con un plan vacıo y posteriormente se consideraran formasde ir refinando el plan hasta que tengamos uno completo queresuelva el problema.

Las acciones no afectan al mundo, sino que operan directamentesobre el plan:

X agregar alguna etapaX imponer alguna ordenacion particular.

Para evitar confusiones, se hablara mas de planes que de estados.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 54 / 100

Page 55: Unidad No. 3 - Planificadores Modernos

Construccion de un Plan Parcialmente Ordenado (POP)Componentes

1. Acciones

Las acciones constituyen los pasos que el plan lleva a caboconsiderando los operadores del problema, sus precondiciones yefectos.

Hay dos acciones distinguidas:

1 Inicio, que no tiene precondiciones y cuyo efecto es el estado inicialdel problema.

2 Fin, que no tiene efectos y cuyas precondiciones corresponden alestado final.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 55 / 100

Page 56: Unidad No. 3 - Planificadores Modernos

Construccion de un Plan Parcialmente Ordenado (POP)Componentes

2. Restricciones de Orden

Son de la forma A ≺ B:

X A esta antes que B

A B

La accion A tiene que ejecutarse en algun momento antes que laaccion B,pero no necesariamente en el estado inmediatamenteanterior.

En la generacion de un plan solucion no pueden haber ciclos, por lo queuna situacion del tipo A ≺ B y B ≺ A no puede darse.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 56 / 100

Page 57: Unidad No. 3 - Planificadores Modernos

Construccion de un Plan Parcialmente Ordenado (POP)Componentes

3. Relaciones Causales

Un enlace causal entre dos acciones A y B en un plan lo escribimos

como Ap−→ B y se debe interpretar ası:

X A alcanza a B a traves del predicado p:

A Bp

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 57 / 100

Page 58: Unidad No. 3 - Planificadores Modernos

Construccion de un Plan Parcialmente Ordenado (POP)Componentes

Ejemplo

El enlace causal

CalcetınDerechoCDP−−→ ZapatoDerecho

nos dice que CDP es un efecto de la accion CalcetınDerechoy que a su vez es una precondicion para el operadorZapatoDerecho.

Tambien indica que CDP debe ser cierto durante el tiempo deejecucion que transcurre entre las acciones CalcetınDerechoy ZapatoDerecho. �

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 58 / 100

Page 59: Unidad No. 3 - Planificadores Modernos

Construccion de un Plan Parcialmente Ordenado (POP)Componentes

Una accion C entra en conflicto con el enlace causal Ap−→ B si:

X C tiene a ¬p dentro de su lista de efectosX C pudiera estar despues de A y antes de B (A ≺ C ∧C ≺ B).

El plan no puede verse extendido por la adicion de una accion C que

creara un conflicto con el enlace causal Ap−→ B:

X este enlace se conoce con el nombre de intervalo de proteccionporque el link que hay entre A y B protege a p de ser falsa a lo largodel intervalo que va de A a B.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 59 / 100

Page 60: Unidad No. 3 - Planificadores Modernos

Construccion de un Plan Parcialmente Ordenado (POP)Componentes

4. Precondiciones Abiertas

Son aquellas que aun no han sido alcanzadas por alguna accion enel plan.

El objetivo apunta a reducir las precondiciones abiertas a vacıo.

ImportanteUn plan se dice que es consistente si:

No hay ciclos con las restricciones ordenadas.

No hay conflictos con los enlaces causales.

No tiene precondiciones abiertas.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 60 / 100

Page 61: Unidad No. 3 - Planificadores Modernos

Construccion de un Plan Parcialmente Ordenado (POP)

La evaluacion del objetivo verifica que en cada paso no quedenprecondiciones abiertas por analizar.Se ha demostrado que este esquemasiempre genera planes consistentes.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 61 / 100

Page 62: Unidad No. 3 - Planificadores Modernos

Construccion de un Plan Parcialmente Ordenado (POP)Acciones

Por cada precondicion abierta p de alguna accion B del plan y porcada accion A que tenga a p como efecto se puede obtener unplan sucesor (refinamiento).Hay dos operaciones disponibles:X resolver la precondicion abiertaX resolver los conflictos con los nuevos enlaces causales.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 62 / 100

Page 63: Unidad No. 3 - Planificadores Modernos

Construccion de un Plan Parcialmente Ordenado (POP)Acciones

Paso 1: Resolver la precondicion abierta.

1 Si la accion A ya esta en el plan, se agrega la restriccion A ≺ B y el

enlace causal Ap−→ B:

X esta tecnica se conoce como establecimiento simple.

2 Si la accion A no esta en el plan, se agregan:

X AX las restricciones A ≺ BX Inicio ≺ A,A ≺ Fin

X el enlace causal Ap−→ B.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 63 / 100

Page 64: Unidad No. 3 - Planificadores Modernos

Construccion de un Plan Parcialmente Ordenado (POP)Acciones

Paso 2: Resolver los conflictos entre el nuevo enlace causal y las accionesdefinidas en el plan.

Si el conflicto es de la forma Ap−→ B, tenemos dos alternativas para

resolverlo:

1 agregando la restriccion B ≺ C (promocion) o bien2 agregando la restriccion C ≺ A, conocida como degradacion.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 64 / 100

Page 65: Unidad No. 3 - Planificadores Modernos

Anteriormente. . . construccion de un POP

El POP se puede implementar como una busqueda en el espacio deplanes:

X cada estado del plan parcial es a su vez un plan en lugar de unasituacion particular del mundo, como ocurre en los planificadoreslineales.

Se parte con un plan vacıo y posteriormente se consideraran formasde ir refinando el plan hasta que tengamos uno completo que resuelvael problema.

Las acciones no afectan al mundo, sino que operan directamentesobre el plan:

X agregar alguna etapaX imponer alguna ordenacion particular.

Para evitar confusiones, se hablara mas de planes que de estados.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 65 / 100

Page 66: Unidad No. 3 - Planificadores Modernos

Anteriormente. . . construccion de un POPComponentes

1. Acciones

Las acciones constituyen los pasos que el plan lleva a caboconsiderando los operadores del problema, sus precondiciones yefectos.

Hay dos acciones distinguidas:

1 Inicio, que no tiene precondiciones y cuyo efecto es el estado inicialdel problema.

2 Fin, que no tiene efectos y cuyas precondiciones corresponden alestado final.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 66 / 100

Page 67: Unidad No. 3 - Planificadores Modernos

Anteriormente. . . construccion de un POPComponentes

2. Restricciones de Orden

Son de la forma A ≺ B:

X A esta antes que B

A B

La accion A tiene que ejecutarse en algun momento antes que laaccion B, pero no necesariamente en el estado inmediatamenteanterior.

En la generacion de un plan solucion no pueden haber ciclos, por lo queuna situacion del tipo A ≺ B y B ≺ A no puede darse.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 67 / 100

Page 68: Unidad No. 3 - Planificadores Modernos

Anteriormente. . . construccion de un POPComponentes

3. Relaciones Causales

Un enlace causal entre dos acciones A y B en un plan lo escribimos

como Ap−→ B y se debe interpretar ası:

X A alcanza a B a traves del predicado p:

A Bp

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 68 / 100

Page 69: Unidad No. 3 - Planificadores Modernos

Anteriormente. . . construccion de un POPComponentes

Ejemplo

El enlace causal

CalcetınDerechoCDP−−→ ZapatoDerecho

nos dice que CDP es un efecto de la accion CalcetınDerechoy que a su vez es una precondicion para el operadorZapatoDerecho.

Tambien indica que CDP debe ser cierto durante el tiempo deejecucion que transcurre entre las acciones CalcetınDerechoy ZapatoDerecho. �

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 69 / 100

Page 70: Unidad No. 3 - Planificadores Modernos

Anteriormente. . . construccion de un POPComponentes

Una accion C entra en conflicto con el enlace causal Ap−→ B si:

X C tiene a ¬p dentro de su lista de efectosX C pudiera estar despues de A y antes de B (A ≺ C ∧C ≺ B).

El plan no puede verse extendido por la adicion de una accion C que

creara un conflicto con el enlace causal Ap−→ B:

X este enlace se conoce con el nombre de intervalo de proteccionporque el link que hay entre A y B protege a p de ser falsa a lo largodel intervalo que va de A a B.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 70 / 100

Page 71: Unidad No. 3 - Planificadores Modernos

Anteriormente. . . construccion de un POPComponentes

4. Precondiciones Abiertas

Son aquellas que aun no han sido alcanzadas por alguna accion enel plan.

El objetivo apunta a reducir las precondiciones abiertas a cero.

ImportanteUn plan se dice que es consistente si:

No hay ciclos con las restricciones ordenadas.

No hay conflictos con los enlaces causales.

No tiene precondiciones abiertas.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 71 / 100

Page 72: Unidad No. 3 - Planificadores Modernos

Anteriormente. . . construccion de un POP

La evaluacion del objetivo verifica que en cada paso no quedenprecondiciones abiertas por analizar. Se ha demostrado que este esquemasiempre genera planes consistentes.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 72 / 100

Page 73: Unidad No. 3 - Planificadores Modernos

Anteriormente. . . construccion de un POPAcciones

Por cada precondicion abierta p de alguna accion B del plan y porcada accion A que tenga a p como efecto se puede obtener unplan sucesor (refinamiento).Hay dos operaciones disponibles:X resolver la precondicion abiertaX resolver los conflictos con los nuevos enlaces causales.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 73 / 100

Page 74: Unidad No. 3 - Planificadores Modernos

Anteriormente. . . construccion de un POPAcciones

Paso 1: Resolver la precondicion abierta.

1 Si la accion A ya esta en el plan, se agrega la restriccion A ≺ B y el

enlace causal Ap−→ B:

X esta tecnica se conoce como establecimiento simple.

2 Si la accion A no esta en el plan, se agregan:

X AX las restricciones A ≺ BX Inicio ≺ A,A ≺ Fin

X el enlace causal Ap−→ B.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 74 / 100

Page 75: Unidad No. 3 - Planificadores Modernos

Anteriormente. . . construccion de un POPAcciones

Paso 2: Resolver los conflictos entre el nuevo enlace causal y las accionesdefinidas en el plan.

Si el conflicto es de la forma Ap−→ B, tenemos dos alternativas para

resolverlo:

1 agregando la restriccion B ≺ C (promocion) o bien2 agregando la restriccion C ≺ A, conocida como degradacion.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 75 / 100

Page 76: Unidad No. 3 - Planificadores Modernos

Hoy veremos

Ejemplo completo de un planificador de orden parcial (POP)

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 76 / 100

Page 77: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

Constantes

RUEDA− PINCHADA

RUEDA−REPUESTO

EJE

MALETERO

SUELO

Predicado

en: para indicar el lugar que ocupa un elemento en un momentodeterminado.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 77 / 100

Page 78: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

Estado Inicial

en(RUEDA−PINCHADA,EJE)∧en(RUEDA−REPUESTO,MALETERO)

Objetivo

en(RUEDA−REPUESTO,EJE)

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 78 / 100

Page 79: Unidad No. 3 - Planificadores Modernos

Ejemplo: Definicion de acciones (con lenguaje ADL) Ipara cambiar la rueda de repuesto de un vehıculo

Acciones

1 Remover(RUEDA-REPUESTO,MALETERO)

• Precondicion : en(RUEDA−REPUESTO,MALETERO)

• Efectos : ¬en(RUEDA−REPUESTO,MALETERO) ∧en(RUEDA−REPUESTO, SUELO)

2 Remover(RUEDA-PINCHADA,EJE)

• Precondicion : en(RUEDA− PINCHADA,EJE)

• Efectos : ¬en(RUEDA− PINCHADA,EJE) ∧ en(RUEDA−PINCHADA,SUELO)

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 79 / 100

Page 80: Unidad No. 3 - Planificadores Modernos

Ejemplo: Definicion de acciones (con lenguaje ADL) IIpara cambiar la rueda de repuesto de un vehıculo

3 ColocarSobre(RUEDA-REPUESTO,EJE)

• Precondicion : en(RUEDA−REPUESTO, SUELO) ∧¬en(RUEDA− PINCHADA,EJE)

• Efectos : ¬en(RUEDA−REPUESTO, SUELO) ∧en(RUEDA−REPUESTO,EJE)

4 DejarPorLaNoche(—)

• Precondicion : —• Efectos : ¬en(RUEDA−REPUESTO, SUELO) ∧¬en(RUEDA−REPUESTO,EJE) ∧ ¬en(RUEDA−REPUESTO,MALETERO) ∧ ¬en(RUEDA−PINCHADA,SUELO) ∧ ¬en(RUEDA− PINCHADA,EJE)

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 80 / 100

Page 81: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

La busqueda de la solucion parte con un plan vacıo, cuyas accionesiniciales seran Inicio y Fin.

El efecto de Inicio es el estado inicial:en(RUEDA− PINCHADA,EJE) ∧ en(RUEDA−REPUESTO,MALETERO)

Las precondiciones de Fin son el objetivo:en(RUEDA−REPUESTO,EJE).

La idea es no dejar precondiciones abiertas, y como la unica quetenemos es la del final, tenemos que resolverla.

Para eso buscamos las acciones cuyo efecto seaen(RUEDA−REPUESTO,EJE).

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 81 / 100

Page 82: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

La unica eleccion posible es ColocarSobre.

Las precondiciones de este operador son

en(RUEDA−REPUESTO, SUELO)∧¬en(RUEDA−PINCHADA,EJE)

Elegimos cualquiera de ella al azar.

Las imagenes que iran apareciendo van mostrando como vaevolucionando la creacion del POP. Aquellas acciones que no estenpintadas de blanco es porque tienen sus precondiciones abiertas yaresueltas.

Inicio FinColocarSobre(RR,Eje)

en(RR,eje)en(RR,Suelo)en(RP, Eje)

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 82 / 100

Page 83: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

Nuestra eleccion va a ser en(RUEDA−REPUESTO, SUELO).

El unico operador que tiene aen(RUEDA−REPUESTO, SUELO) en su lista de efectos esRemover con parametros RUEDA-REPUESTO y MALETERO.

Lo agregamos al plan parcial que estamos generando.

Inicio FinColocarSobre(RR,Eje)

en(RR,eje)en(RR,Suelo)en(RP,Eje)

Remover ( RR,Maletero )

en( RR, Maletero )

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 83 / 100

Page 84: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

Actualizando lo que llevamos hasta el momento, tenemos dosprecondiciones que aun no se han analizado:

1 en(RUEDA−REPUESTO,MALETERO)2 ¬en(RUEDA− PINCHADA,EJE)

¿Cual elegimos?. Cualquiera.

Si nos quedamos con ¬en(RUEDA− PINCHADA,EJE) , esfacil advertir que tanto Remover como DejarPorLaNoche latienen dentro de su lista de efectos.

X Una de ellas se tiene que escoger para construir el plan.X Veamos que pasa si trabajamos con DejarPorLaNoche.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 84 / 100

Page 85: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

Presenta el inconveniente que uno de sus efectos es¬en(RUEDA−REPUESTO, SUELO) , el que entra en conflictocon una de las precondiciones que tenemos abiertas:en(RUEDA−REPUESTO, SUELO).

Con esto, el link

Remover(R-REP,MALETERO)en(R-REP,SUELO)−−−−−−−−−−−−−→ ColocarSobre(R-REP,EJE)

es el que se ve afectado.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 85 / 100

Page 86: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

La unica manera de solucionar esto es mediante degradacion, es deciragregando la relacion de orden

DejarPorLaNoche ≺ Remover(RUEDA−REPUESTO,MALETERO)

Inicio FinColocarSobre(RR,Eje)

en(RR,eje)en(RR,Suelo)en( RP,Eje)

Remover ( RR,Maletero )

DejarPorLaNoche()

en( RR, Maletero )

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 86 / 100

Page 87: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

¿Por queDejarPorLaNoche nopuede ir despues deColocarSobre(RUEDA-REPUESTO,EJE)?

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 87 / 100

Page 88: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

La unica precondicion abierta que va quedando esen(RUEDA−REPUESTO,MALETERO).

La unica accion que la tiene dentro de sus efectos es Inicio.

El problema es que el link

Inicioen(R-REP,MALETERO)−−−−−−−−−−−−−−−−→ Remover(R-REP,MALETERO)

entra en conflicto con la accion DejarPorLaNoche

X porque ¬en(RUEDA−REPUESTO,MALETERO) esta en sulista de efectos.

¿Como se puede resolver el problema?

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 88 / 100

Page 89: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

Por una parte, no podemos introducir el orden

DejarPorLaNoche ≺ Inicio

Ninguna accion esta antes que Inicio ni tampoco podemos ponerDejarPorLaNoche despues deRemover(RUEDA-REPUESTO,MALETERO) porque esto viola larelacion de orden impuesta anteriormente, que era

DejarPorLaNoche ≺ Remover(RUEDA−REPUESTO,MALETERO)

lo que ademas genera un ciclo.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 89 / 100

Page 90: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

Inicio FinColocarSobre(RR,Eje)en(RR,eje )en(RR,Suelo)

en(RP,Eje)

Remover( RR,Maletero )

DejarPorLaNoche()

en( RR,Maletero )

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 90 / 100

Page 91: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

Por lo tanto, como no podemos resolver el conflicto de enlace la unicaalternativa que nos queda es desechar la opcion de incorporar la accionDejarPorLaNoche junto a los enlaces causales y de orden que sehayan generado.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 91 / 100

Page 92: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

Todo vuelve atras:

Inicio FinColocarSobre(RR,Eje)

en(RR,eje)en(RR,Suelo)en(RP,Eje)

Remover ( RR,Maletero )

en( RR, Maletero )

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 92 / 100

Page 93: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

Si volvemos a considerar ¬en(RUEDA− PINCHADA,EJE) vamos aelegir Remover con parametros (RUEDA− PINCHADA,EJE).

Inicio FinColocarSobre(RR,Eje)en(RR,eje )en(RR,Suelo)

en(RP,Eje)

Remover( RR,Maletero )

en( RR,Maletero )

Remover( RP, Eje )en(RP, Eje )

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 93 / 100

Page 94: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

Nos quedan dos precondiciones abiertas:

1 en(RUEDA− PINCHADA,EJE)2 en(RUEDA−REPUESTO,MALETERO)

Nos quedamos en(RUEDA− PINCHADA,EJE) y elegimos Inicio pararesolverla.

Es facil advertir que este movimiento no genera conflictos.

Inicio FinColocarSobre(RR,Eje)

en(RR,eje)en(RR,Suelo)en(RP,Eje)

Remover ( RR,Maletero )

en( RR, Maletero )

Remover ( RP, Eje )en( RR, Eje )

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 94 / 100

Page 95: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

Finalmente, resolvemos la precondicionen(RUEDA−REPUESTO,MALETERO) con Inicio,quedandonos un plan consistente y completo:

Inicio FinColocarSobre(RR,Eje)en(RR,eje )en(RR,Suelo)

en(RP,Eje)

Remover( RR,Maletero )

en( RR,Maletero )

Remover( RP, Eje )en( RR,Eje )

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 95 / 100

Page 96: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

Tenemos dos linealizaciones posibles:

Inicio FinColocarSobre(RR,Eje)Remover ( RR,Maletero ) Remover ( RP, Eje )

Inicio FinColocarSobre(RR,Eje)Remover ( RP, Eje ) Remover ( RR,Maletero )

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 96 / 100

Page 97: Unidad No. 3 - Planificadores Modernos

Ejemplo:cambiar la rueda de repuesto de un vehıculo

El ejemplo que acabamos de revisar tiene la fortaleza que permiteexhibir todos los problemas que podemos enfrentar cuando hay queelaborar un POP.

El hecho que los predicados y las acciones operen solo con constantesfacilita la eleccion del operador a elegir.

Podemos querer generar un planificador de orden parcial sobreproblemas donde todo esta especificado en torno a variables como elmundo de los bloques.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 97 / 100

Page 98: Unidad No. 3 - Planificadores Modernos

Ejercicios para desarrollar

1 Confeccione un plan de orden parcial para el problema de cambiar larueda de repuesto que sea distinto al propuesto en clases.

Indique todas las linealizaciones posibles que se desprendan de su plan.Explique paso a paso como su grupo genero la solucion.

2 Complete el mapa conceptual que resuma todo lo visto en la Unidad3: Planificacion.

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 98 / 100

Page 99: Unidad No. 3 - Planificadores Modernos

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 99 / 100

Page 100: Unidad No. 3 - Planificadores Modernos

Fin de la Unidad 3

M. Ramırez K. (USS) Apunte curso IA Primer Semestre 2011 100 / 100