Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Unidad No. 3 - Planificadores Modernos
1. INTELIGENCIA ARTIFICIAL - ICIF0021
Unidad 3 - Planificadores Modernos
Docente: Milton A. Ram´ Klapp
ırez
miramire@gmail.com
Universidad San Sebasti´n
a
Facultad de Ingenier´ y Tecnolog´
ıa ıa
Primer Semestre 2011
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 1 / 100
2. Objetivos de la Unidad
Identifican la problem´tica asociada con los m´todos de b´squeda estudiados en la
a e u
Unidad II.
Identifican las componentes de los lenguajes de planificaci´n modernos.
o
Conocen la t´cnica STRIPS para modelar algebraicamente problemas de acuerdo
e
al esquema (Estados, Acciones, Operaciones).
Resuelven problemas de planificaci´n usando las t´cnicas forward-chaining y
o e
backward-chaining.
Reconocen las diferencias entre la planificaci´n lineal y de orden parcial.
o
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
3. Contenidos
1 Lenguaje de Planificadores: representaci´n STRIPS y ADL.
o
2 Planificaci´n hacia adelante y hacia atr´s.
o a
3 Planificadores de orden parcial (POP).
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 3 / 100
4. Introducci´n
o
Planificar significa encontrar una secuencia de acciones que permiten
alcanzar un determinado objetivo a partir de un estado inicial:
a esta serie de acciones la denominaremos plan
un planificador ser´ la entidad de software que lo implemente.
a
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 4 / 100
5. Introducci´n
o
¿Qu´ pasa si realizamos una b´squeda tradicional en entornos reales?
e u
La posibilidad m´s evidente es que el buscador de soluciones sea
a
desbordado por acciones completamente irrelevantes:
pensemos en la tarea de adquirir un libro en una tienda online cuyo
ISBN sea igual a 0137903952
si tenemos representada la acci´n de comprar cada libro con ISBN de
o
10 d´ıgitos , ´sta nos generar´ un universo no despreciable de 1010 =10
e ıa
billones de acciones para satisfacer el objetivo a conseguir.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 5 / 100
6. Introducci´n
o
Un planificador razonable debiera ser capaz de trabajar con expresiones de
objetivos expl´
ıcitas tales como Tener(ISBN 0137903952) y generar
autom´ticamente la acci´n Comprar(ISBN 0137903952) directamente.
a o
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
7. Introducci´n
o
De poseerlo, el planificador puede decidir en un unico paso que
´
comprar(ISBN 0137903952) es la acci´n correcta.
o
Otra dificultad que surge si optamos por una b´squeda tradicional es
u
encontrar una heur´ıstica apropiada.
Supongamos que el objetivo se redefine a comprar cuatro libros en la
misma tienda:
esto significa que tenemos un total de ¡1040 planes posibles con 4
etapas!
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 7 / 100
8. Introducci´n
o
El uso de una heur´
ıstica es innegable.
Para un ser humano, una heur´
ıstica podr´ ser la cantidad de libros
ıa
que quedan por comprar.
para un planificador esto no es evidente puesto que cada subobjetivo
lo eval´a como verdadero o falso.
u
Si el planificador tiene acceso al objetivo como una conjunci´n l´gica
o o
de subobjetivos, ´ste se puede representar como
e
Tener(A) ∧ Tener(B) ∧ Tener(C) ∧ Tener(D)
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 8 / 100
9. Introducci´n
o
Otro aspecto a considerar de un planificador es que permita
descomponer un problema en subproblemas:
se puede demostrar que la estrategia dividir para conquistar mejora la
eficiencia de los algoritmos de planificaci´n.
o
En un aeropuerto, trasladar maletas de viajes a sus destinos:
una estrategia l´gica de descomposici´n es encontrar el aeropuerto m´s
o o a
cercano a cada destino y as´ hacer que cada subproblema se reduzca a
ı
llegar a cada aeropuerto intermedio.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 9 / 100
10. Lenguaje de Planificadores
Los aspectos que se consideren en la planificaci´n son: estados,
o
acciones y objetivos
esto, para que los algoritmos aprovechen la estructura l´gica del
o
problema.
Necesidad de contar con un lenguaje que sea expresivo y restrictivo
a 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
11. Representaci´n STRIPS
o
Elementos
Elemento Descripci´n
o Ejemplos
Constantes Ser´n los objetos del mundo y
a
por convenci´n las denotare-
o BLOQUE-A
mos con may´scula.
u RUEDA-DE-REPUESTO
Variables
Se usar´n para
a x, x1 , x2
representar cualquier y
objeto.
z
Su nombre va con
min´scula.
u
Usaremos las ultimas
´
letras del alfabeto para
representarlas.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 11 / 100
12. Representaci´n STRIPS
o
Elemento Descripci´n
o Ejemplos
S´
ımbolos de predicados Se usan para representar las
propiedades de los objetos. Su mayor(x, y)
sem´ntica debe ser explicitada.
a sobre(x1 , x2 )
No necesariamente contienen
variables o constantes.
S´
ımbolos de acciones Se usan para designar los ope-
radores y las denotaremos con Comprar(x)
Versalitas. MoverHaciaDerecha(z)
Intercambiar(x, y)
´
Atomos F´rmulas de la forma
o
sobre (x, A)
P (o1 , . . . , on ) volandoHacia(x, y)
donde oi representa una cons-
tante o una variable y P un pre-
dicado.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 12 / 100
13. Representaci´n STRIPS
o
Elemento Descripci´n
o Ejemplos
Literales ´
Atomos o negaci´n
o de
´tomos.
a p(o1 , . . . , on )
¬padreDe(P EDRO, AN A)
Literales cerrados Sin variables, s´lo cons-
o
tantes. Un literal cerrado se sobre(SILLA, SU ELO)
dice que es positivo cuando volarHacia(LA815, LA)
no est´ negado.
a
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 13 / 100
14. Representaci´n de Estados
o
Los estados de E se representan mediante una conjunci´n de literales
o
positivos cerrados.
Deben ser simples y sin dependencias funcionales.
No est´ permitido definir un estado como
a
en(casaDe(x), y)
colorDe(x, RGB(#c86400))
etc.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 14 / 100
15. Representaci´n de Estados
o
Importante
Asumiremos un supuesto conocido como Mundo Cerrado, en el cual
las condiciones que no se mencionan se deben tomar como falsas.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 15 / 100
16. Representaci´n de Estados
o
Algunos estados v´lidos pueden ser:
a
adinerado ∧ miserable para representar a alguien desafortunado.
en(AIRP LAN E1 , CCP ) ∧ en(AIRP LAN E2 , SCL) para
representar una situaci´n del problema de las maletas.
o
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 16 / 100
17. Representaci´n de Estados
o
Ejemplo: Mundo de los Bloques
Los elementos que intervienen son:
una superficie plana
una serie de bloques c´bicos que los denotaremos por A,B,C,. . .
u
un brazo robotizado que puede tomar un cubo a la vez
En cualquier instante, un bloque puede estar sobre la mesa o apilado
sobre otro bloque o colgando del brazo robotizado.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 17 / 100
18. Representaci´n de Estados
o
Los predicados que consideraremos son:
despejado(x): el bloque x est´ despejado.
a
brazoLibre: el brazo robotizado no est´ tomando alg´n bloque.
a u
sobreLaMesa(x): el bloque x est´ sobre la mesa.
a
sobre(x, y): el bloque x est´ sobre el bloque y.
a
agarrado(x): el bloque x est´ tomado por el brazo robotizado.
a
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 18 / 100
19. Representaci´n de Estados
o
El estado E de la figura
B
C A 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
20. Representaci´n de Objetivos
o
Cada objetivo del conjunto M se representa como una conjunci´n de
o
literales, que pueden contener variables.
Se dice que un estado satisface un objetivo si es posible sustituir las
variables del objetivo por objetos del mundo de manera que los
literales est´n incluidos en la descripci´n del estado.
e o
Un estado es final cuando satisface el estado objetivo.
Las variables que intervengan en el estado final se asumen como
existencialmente cuantificadas.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 20 / 100
21. Representaci´n de Objetivos
o
Sean los estados E1 y E2 descritos en la figura
C
B D B
C A D A
E1 E2
y los estados finales
O1 : sobre(B, A) ∧ sobreLaMesa(A)
O2 : sobre(x, A) ∧ despejado(x) ∧ brazoLibre
O3 : 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
22. Representaci´n de Objetivos
o
Soluci´n
o
En primer lugar, obtengamos la descripci´n algebraica para E1 y E2
o
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
23. Representaci´n de Objetivos
o
Caso O1
Como los literales sobre(B, A) y sobreLaMesa(A) aparecen en la
descripci´n de estados de E1 , ´ste claramente satisface a O1 .
o e
La misma explicaci´n y conclusi´n es v´lida para E2 .
o o a
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 23 / 100
24. Representaci´n de Objetivos
o
Caso O2
La satisfacibilidad de E1 se puede garantizar si es posible encontrar
alg´n valor de x para el cual sobre(x, A) y despejado(x) est´n en
u e
E1 .
Si intentamos con x = A vemos que las condiciones sobre(A, A) y
despejado(A) no son ciertas ya que esos literales no est´n en E1 .
a
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 probar
con los restantes, que son C y D.
E2 es m´s sencillo puesto que, al no aparecer brazoLibre en su
a
descripci´n algebraica se deduce que esta condici´n no se tiene en
o o
virtud del supuesto del mundo cerrado:
por lo tanto, E2 no satisface O2 .
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 24 / 100
25. Representaci´n de Objetivos
o
Caso O3
En E1 , el unico valor de x para el cual el predicado sobre(x, A) se
´
satisface es con x = B
pero no es posible encontrar alg´n valor de y en el conjunto
u
{A, B, C, D} tal que sobre(y, x = B) se haga presente en E1 .
Luego, E1 no satisface a O3 .
E2 s´ cumple con las exigencias de O3 ya que es posible encontrar
ı
valores x = B, y = C tales que sobre(x = B, A) y
sobre(y = C, x = B) est´n en E2 .
e
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 25 / 100
26. ¿Qu´ vimos la clase pasada?
e
Concepto de plan y planificaci´n.
o
Introducci´n al lenguaje de planificadores usando como paradigma
o
inicial la representaci´n STRIPS y sus elementos.
o
Representaci´n de estados y objetivos.
o
Satisfacibilidad.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 26 / 100
27. Hoy veremos
Representaci´n de acciones, para as´ terminar con el tridente
o ı
P =< E, Φ, M >.
ADL como extensi´n v´lida a STRIPS.
o a
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 27 / 100
28. Representaci´n de Acciones
o
Las acciones del conjunto Φ se componen de cuatro partes:
1 El nombre de la acci´n, con sus par´metros.
o a
2 Las precondiciones que tienen que satisfacerse para que la acci´n se ejecute.
o
Se describen como una conjunci´n de literales.
o
Esta lista la denotaremos por Precondicion .
´
3 La lista de borrado, que contiene la lista de ´tomos y literales – escrita como
a
conjunci´n – que dejan de ser ciertos una vez que se ha aplicado el
o
operador.
La llamaremos Borrado .
4 La lista de efectos, que contiene la conjunci´n de aquellos ´tomos y literales
o a
que pasan a ser verdaderos una vez que se ha aplicado el operador.
La llamaremos Efectos .
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 28 / 100
29. Representaci´n de Acciones
o
Es com´n fusionar en Efectos las conjunciones de Borrado con
u
Efectos , haciendo que las primeras aparezcan negadas.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 29 / 100
30. Representaci´n de Acciones
o
¿Qu´ pasa en el mundo de los bloques?
e
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 est´ sobre el bloque y:
a
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
31. Representaci´n de Acciones
o
¿Qu´ pasa en el mundo de los bloques?
e
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
32. Representaci´n de Acciones
o
Un operador es aplicable a un estado cuando satisface sus
precondiciones:
si aparecen variables en Precondicion , la aplicabilidad se define con
´
respecto de la sustituci´n Θ usada para satisfacer la precondici´n.
o o
Para simplificar, en algunos casos la sustituci´n vendr´ impl´
o a ıcita
cuando se hable del operador:
Desapilar(A, B) se refiere a la acci´n Desapilar(x, y) aplicando la
o
sustituci´n Θ = {x/A, y/B}.
o
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 32 / 100
33. Representaci´n de Acciones
o
El resultado de aplicar un operador aplicable a un estado E lo
denotaremos por E . La construcci´n de E se hace siguiendo este
o
esquema:
1 Hacemos E = E.
2 Eliminando de E los ´tomos instanciados con Θ y los literales
a
(cerrados o no) de la lista Borrado (si estuvieran) y
3 agregando a E los ´tomos y literales (cerrados o no) instanciados con
a
Θ de la lista Efectos (los que no est´n).
e
La soluci´n (plan) consiste en una secuencia de operadores
o
aplicables, completamente instanciados, desde el estado inicial al
objetivo cuando ´ste se encuentre satisfecho.
e
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 33 / 100
34. Representaci´n de Acciones
o
Ejemplo de aplicabilidad de operador
Consideremos aplicar la acci´n Apilar(A, D) al estado descrito en la
o
figura
A C
B D
E
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 34 / 100
35. Representaci´n de Acciones
o
Ejemplo de aplicabilidad de operador
Soluci´n
o
La descripci´n algebraica de E viene dada por
o
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 las
precondiciones de este operador aplicando la sustituci´n
o
Θ = {x/A, y/D}:
Esto implica que despejado(D) y agarrado(A) deben estar en la
descripci´n de E, lo cual as´ ocurre.
o ı
Por lo tanto, el operador es aplicable a este estado.
Veamos c´mo se genera el resultado de esta operaci´n
o o
E = Apilar(A, D).
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 35 / 100
36. Representaci´n de Acciones
o
Ejemplo de aplicabilidad de operador
Los ´tomos instanciados con Θ de la lista Borrado son
a
despejado(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
37. Representaci´n de Acciones
o
Ejemplo de aplicabilidad de operador
Por otro lado, los ´tomos y literales cerrados que no est´n en E son:
a a
brazoLibre
sobre(A, D)
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
38. Representaci´n de Acciones
o
Ejemplo de aplicabilidad de operador
As´ el resultado de la operaci´n es:
ı, o
A PILAR (A,D)
A C C A
B D B D
E E'
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 38 / 100
39. Extensiones a STRIPS
STRIPS presenta restricciones para simplificar y generar algoritmos
m´s eficientes.
a
Una de las m´s emblem´ticas es que los literales no permiten
a a
dependencias funcionales, lo que significa en la pr´ctica que todo
a
problema tenga una cantidad finita de representaciones para sus
acciones:
si se admite la inclusi´n de s´
o ımbolos funcionales, la cantidad de estados
y acciones puede ser infinita.
En los ultimos a˜os, se ha mostrado claramente que STRIPS no
´ n
posee 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
40. Comparaci´n entre STRIPS y ADL
o
Lenguaje STRIPS Lenguaje ADL
S´lo literales positivos en estados:
o Literales positivos y negativos en esta-
dos:
pobre ∧ desconocido ¬rico ∧ ¬desconocido
Hip´tesis del Mundo Cerrado:
o Hip´tesis del Mundo Abierto:
o
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
41. Comparaci´n entre STRIPS y ADL
o
Lenguaje STRIPS Lenguaje ADL
Los objetivos son conjunciones: Se permiten conjunciones y disyunciones
en los objetivos:
pobre ∧ desconocido. pobre ∧ (desconocido ∨
inteligente).
Los efectos son conjunciones. Se permiten efectos condicionales:
cuando P : E se interpreta como que E
es un efecto s´lo si P se satisface.
o
No soporta igualdades. Predicados de igualdad (x = y) son ad-
mitidos.
No soporta tipos. Las variables pueden tener tipos, como
x :entero.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 41 / 100
42. ¿Qu´ vimos la clase pasada?
e
Algoritmos para encontrar sucesores y predecesores de estados.
B´squeda hacia adelante y hacia atr´s:
u a
definiciones
diferencias entre un enfoque y otro.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 42 / 100
43. Hoy veremos
Planificadores de Orden Parcial (POP)
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 43 / 100
44. Planificadores de orden parcial
Tanto la b´squeda de planes hacia adelante como la b´squeda de
u u
planes hacia atr´s son ejemplos de algoritmos de planificaci´n lineal.
a o
En un planificador lineal, el espacio de b´squeda lo forman secuencias
u
totalmente ordenadas de acciones:
desde el inicio hacia adelante
desde el objetivo hacia atr´s.
a
Por lo tanto, no se saca provecho de la posible descomposici´n que
o
tenga el problema.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 44 / 100
45. Planificadores de orden parcial
Importante
En lugar de trabajar con cada subproblema, nos enfocaremos en el
orden de las acciones mediante un esquema que
trabaje en varios subojetivos de manera independiente
los soluciones mediante subplanes
para finalizar con la combinaci´n de los subplanes utilizados.
o
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 45 / 100
46. Planificadores de orden parcial
La ventaja que ofrece este enfoque es que permite flexibilizar el orden
en que se generen las acciones:
as´ el planificador puede trabajar sobre decisiones de distinta
ı,
importancia en lugar de ce˜irse por un orden cronol´gico o espacial de
n o
las mismas.
Ejemplo
Un planificador para una persona que se encuentre en el aeropuerto de
Punta Arenas y desee llegar al aeropuerto de Iquique. Primero podr´
ıa
intentar encontrar un vuelo de Concepci´n a Santiago en lugar de partir
o
buscando un vuelo de Punta Arenas a Puerto Montt y seguir el orden
geogr´fico sur-norte.
a
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 46 / 100
47. Planificadores de orden parcial
Para graficar los conceptos que vendr´n m´s adelante, vamos a tomar
a a
como referencia el ejemplo de ponerse un par de zapatos.
Los predicados que vamos a considerar son:
1 CDP: Calcet´ derecho puesto.
ın
2 CIP: Calcet´ izquierdo puesto.
ın
3 ZDP: Zapato derecho puesto.
4 ZIP: Zapato izquierdo puesto.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 47 / 100
48. Planificadores de orden parcial
acciones para el ejemplo de ponerse zapatos
Calcet´
ınDerecho()
ZapatoDerecho()
• Precondicion : —
´
• Precondicion : CDP
´
• Borrado : — • Borrado : —
• Efectos : CDP • Efectos : ZDP
Calcet´
ınIzquierdo() ZapatoIzquierdo()
• Precondicion : —
´ • Precondicion : CIP
´
• Borrado : — • Borrado : —
• Efectos : CIP • Efectos : ZIP
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 48 / 100
49. Planificadores de orden parcial
Problema de ponerse los zapatos
El estado inicial es vac´ y el estado final es ZDP ∧ ZIP.
ıo
Ac´ es posible apreciar dos subobjetivos:
a
ponerse el zapato derecho
ponerse el zapato izquierdo
ambos se pueden combinar para conseguir el objetivo del problema.
El planificador que se construya manipula la secuencia de acciones de
manera independiente sin importar a qu´ secuencia corresponda una
e
acci´n concreta.
o
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 49 / 100
50. Planificadores de orden parcial
Problema de ponerse los zapatos
Cualquier algoritmo de planificaci´n que pueda combinar dos acciones
o
dentro del mismo plan sin importar cu´l de ellas va primero se le conoce
a
como planificador de primer orden.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 50 / 100
51. Planificadores de orden parcial
POP para el problema de los calcetines
INICIO
CalcetínIzquierdo CalcetínDerecho
CIP CDP
ZapatoIzquierdo ZapatoDerecho
ZIP ZDP
FIN
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 51 / 100
52. Planificadores de orden parcial
POP para el problema de los calcetines
Observaciones
Esta soluci´n se debe interpretar como un grafo de acciones y no
o
como una secuencia lineal de acciones.
Inicio y Fin las tomaremos como acciones para que cada etapa del
plan sea una acci´n.
o
Para el ejemplo, la soluci´n de orden parcial tiene correspondencia
o
con seis posibles planes de orden total, cada uno de los cuales recibe
el nombre de linealizaci´n del plan de orden parcial.
o
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 52 / 100
53. Planificadores de orden parcial
Linealizaciones para el POP de ponerse un par de zapatos
INICIO INICIO INICIO INICIO INICIO INICIO
CalcetínIzquierdo CalcetínDerecho CalcetínIzquierdo CalcetínIzquierdo CalcetínDerecho CalcetínDerecho
ZapatoIzquierdo ZapatoDerecho CalcetínDerecho CalcetínDerecho CalcetínIzquierdo CalcetínIzquierdo
CalcetínDerecho CalcetínIzquierdo ZapatoIzquierdo ZapatoDerecho ZapatoIzquierdo ZapatoDerecho
ZapatoDerecho ZapatoIzquierdo ZapatoDerecho ZapatoIzquierdo ZapatoDerecho ZapatoIzquierdo
FIN FIN FIN FIN FIN FIN
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 53 / 100
54. Construcci´n de un Plan Parcialmente Ordenado (POP)
o
El POP se puede implementar como una b´squeda en el espacio de
u
planes:
cada estado del plan parcial es a su vez un plan en lugar de una
situaci´n particular del mundo, como ocurre en los planificadores
o
lineales.
Se parte con un plan vac´ y posteriormente se considerar´n formas
ıo a
de ir refinando el plan hasta que tengamos uno completo que
resuelva el problema.
Las acciones no afectan al mundo, sino que operan directamente
sobre el plan:
agregar alguna etapa
imponer alguna ordenaci´n particular.
o
Para evitar confusiones, se hablar´ m´s de planes que de estados.
a a
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 54 / 100
55. Construcci´n de un Plan Parcialmente Ordenado (POP)
o
Componentes
1. Acciones
Las acciones constituyen los pasos que el plan lleva a cabo
considerando los operadores del problema, sus precondiciones y
efectos.
Hay dos acciones distinguidas:
1 Inicio, que no tiene precondiciones y cuyo efecto es el estado inicial
del problema.
2 Fin, que no tiene efectos y cuyas precondiciones corresponden al
estado final.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 55 / 100
56. Construcci´n de un Plan Parcialmente Ordenado (POP)
o
Componentes
2. Restricciones de Orden
Son de la forma A B:
A est´ antes que B
a
A B
La acci´n A tiene que ejecutarse en alg´n momento antes que la
o u
acci´n B,pero no necesariamente en el estado inmediatamente
o
anterior.
En la generaci´n de un plan soluci´n no pueden haber ciclos, por lo que
o o
una situaci´n del tipo A B y B A no puede darse.
o
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 56 / 100
57. Construcci´n de un Plan Parcialmente Ordenado (POP)
o
Componentes
3. Relaciones Causales
Un enlace causal entre dos acciones A y B en un plan lo escribimos
p
como A → B y se debe interpretar as´
− ı:
A alcanza a B a trav´s del predicado
e p:
p
A B
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 57 / 100
58. Construcci´n de un Plan Parcialmente Ordenado (POP)
o
Componentes
Ejemplo
El enlace causal
CDP
ınDerecho −→ ZapatoDerecho
Calcet´ −
nos dice que CDP es un efecto de la acci´n Calcet´
o ınDerecho
y que a su vez es una precondici´n para el operador
o
ZapatoDerecho.
Tambi´n indica que CDP debe ser cierto durante el tiempo de
e
ejecuci´n que transcurre entre las acciones Calcet´
o ınDerecho
y ZapatoDerecho.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 58 / 100
59. Construcci´n de un Plan Parcialmente Ordenado (POP)
o
Componentes
p
Una acci´n C entra en conflicto con el enlace causal A → B si:
o −
C tiene a ¬p dentro de su lista de efectos
C pudiera estar despu´s de A y antes de B (A
e C∧C B).
El plan no puede verse extendido por la adici´n de una acci´n C que
o o
p
creara un conflicto con el enlace causal A → B:
−
este enlace se conoce con el nombre de intervalo de protecci´no
porque el link que hay entre A y B protege a p de ser falsa a lo largo
del intervalo que va de A a B.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 59 / 100
60. Construcci´n de un Plan Parcialmente Ordenado (POP)
o
Componentes
4. Precondiciones Abiertas
Son aquellas que a´n no han sido alcanzadas por alguna acci´n en
u o
el plan.
El objetivo apunta a reducir las precondiciones abiertas a vac´
ıo.
Importante
Un 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
61. Construcci´n de un Plan Parcialmente Ordenado (POP)
o
La evaluaci´n del objetivo verifica que en cada paso no queden
o
precondiciones abiertas por analizar.Se ha demostrado que este esquema
siempre genera planes consistentes.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 61 / 100
62. Construcci´n de un Plan Parcialmente Ordenado (POP)
o
Acciones
Por cada precondici´n abierta p de alguna acci´n B del plan y por
o o
cada acci´n A que tenga a p como efecto se puede obtener un
o
plan sucesor (refinamiento).
Hay dos operaciones disponibles:
resolver la precondici´n abierta
o
resolver los conflictos con los nuevos enlaces causales.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 62 / 100
63. Construcci´n de un Plan Parcialmente Ordenado (POP)
o
Acciones
Paso 1: Resolver la precondici´n abierta.
o
1 Si la acci´n A ya est´ en el plan, se agrega la restricci´n A
o a o B y el
p
enlace causal A → B:
−
esta t´cnica se conoce como establecimiento simple.
e
2 Si la acci´n A no est´ en el plan, se agregan:
o a
A
las restricciones A B
Inicio A, A Fin
p
el enlace causal A − B.
→
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 63 / 100
64. Construcci´n de un Plan Parcialmente Ordenado (POP)
o
Acciones
Paso 2: Resolver los conflictos entre el nuevo enlace causal y las acciones
definidas en el plan.
p
Si el conflicto es de la forma A → B, tenemos dos alternativas para
−
resolverlo:
1 agregando la restricci´n B
o C (promoci´n) o bien
o
2 agregando la restricci´n C
o A, conocida como degradaci´n.
o
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 64 / 100
65. Anteriormente. . . construcci´n de un POP
o
El POP se puede implementar como una b´squeda en el espacio de
u
planes:
cada estado del plan parcial es a su vez un plan en lugar de una
situaci´n particular del mundo, como ocurre en los planificadores
o
lineales.
Se parte con un plan vac´ y posteriormente se considerar´n formas
ıo a
de ir refinando el plan hasta que tengamos uno completo que resuelva
el problema.
Las acciones no afectan al mundo, sino que operan directamente
sobre el plan:
agregar alguna etapa
imponer alguna ordenaci´n particular.
o
Para evitar confusiones, se hablar´ m´s de planes que de estados.
a a
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 65 / 100
66. Anteriormente. . . construcci´n de un POP
o
Componentes
1. Acciones
Las acciones constituyen los pasos que el plan lleva a cabo
considerando los operadores del problema, sus precondiciones y
efectos.
Hay dos acciones distinguidas:
1 Inicio, que no tiene precondiciones y cuyo efecto es el estado inicial
del problema.
2 Fin, que no tiene efectos y cuyas precondiciones corresponden al
estado final.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 66 / 100
67. Anteriormente. . . construcci´n de un POP
o
Componentes
2. Restricciones de Orden
Son de la forma A B:
A est´ antes que B
a
A B
La acci´n A tiene que ejecutarse en alg´n momento antes que la
o u
acci´n B, pero no necesariamente en el estado inmediatamente
o
anterior.
En la generaci´n de un plan soluci´n no pueden haber ciclos, por lo que
o o
una situaci´n del tipo A B y B A no puede darse.
o
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 67 / 100
68. Anteriormente. . . construcci´n de un POP
o
Componentes
3. Relaciones Causales
Un enlace causal entre dos acciones A y B en un plan lo escribimos
p
como A → B y se debe interpretar as´
− ı:
A alcanza a B a trav´s del predicado
e p:
p
A B
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 68 / 100
69. Anteriormente. . . construcci´n de un POP
o
Componentes
Ejemplo
El enlace causal
CDP
ınDerecho −→ ZapatoDerecho
Calcet´ −
nos dice que CDP es un efecto de la acci´n Calcet´
o ınDerecho
y que a su vez es una precondici´n para el operador
o
ZapatoDerecho.
Tambi´n indica que CDP debe ser cierto durante el tiempo de
e
ejecuci´n que transcurre entre las acciones Calcet´
o ınDerecho
y ZapatoDerecho.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 69 / 100
70. Anteriormente. . . construcci´n de un POP
o
Componentes
p
Una acci´n C entra en conflicto con el enlace causal A → B si:
o −
C tiene a ¬p dentro de su lista de efectos
C pudiera estar despu´s de A y antes de B (A
e C∧C B).
El plan no puede verse extendido por la adici´n de una acci´n C que
o o
p
creara un conflicto con el enlace causal A → B:
−
este enlace se conoce con el nombre de intervalo de protecci´no
porque el link que hay entre A y B protege a p de ser falsa a lo largo
del intervalo que va de A a B.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 70 / 100
71. Anteriormente. . . construcci´n de un POP
o
Componentes
4. Precondiciones Abiertas
Son aquellas que a´n no han sido alcanzadas por alguna acci´n en
u o
el plan.
El objetivo apunta a reducir las precondiciones abiertas a cero.
Importante
Un 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
72. Anteriormente. . . construcci´n de un POP
o
La evaluaci´n del objetivo verifica que en cada paso no queden
o
precondiciones abiertas por analizar. Se ha demostrado que este esquema
siempre genera planes consistentes.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 72 / 100
73. Anteriormente. . . construcci´n de un POP
o
Acciones
Por cada precondici´n abierta p de alguna acci´n B del plan y por
o o
cada acci´n A que tenga a p como efecto se puede obtener un
o
plan sucesor (refinamiento).
Hay dos operaciones disponibles:
resolver la precondici´n abierta
o
resolver los conflictos con los nuevos enlaces causales.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 73 / 100
74. Anteriormente. . . construcci´n de un POP
o
Acciones
Paso 1: Resolver la precondici´n abierta.
o
1 Si la acci´n A ya est´ en el plan, se agrega la restricci´n A
o a o B y el
p
enlace causal A → B:
−
esta t´cnica se conoce como establecimiento simple.
e
2 Si la acci´n A no est´ en el plan, se agregan:
o a
A
las restricciones A B
Inicio A, A Fin
p
el enlace causal A − B.
→
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 74 / 100
75. Anteriormente. . . construcci´n de un POP
o
Acciones
Paso 2: Resolver los conflictos entre el nuevo enlace causal y las acciones
definidas en el plan.
p
Si el conflicto es de la forma A → B, tenemos dos alternativas para
−
resolverlo:
1 agregando la restricci´n B
o C (promoci´n) o bien
o
2 agregando la restricci´n C
o A, conocida como degradaci´n.
o
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 75 / 100
76. Hoy veremos
Ejemplo completo de un planificador de orden parcial (POP)
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 76 / 100
77. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
Constantes
RU EDA − P IN CHADA
RU EDA − REP U EST O
EJE
M ALET ERO
SU ELO
Predicado
en: para indicar el lugar que ocupa un elemento en un momento
determinado.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 77 / 100
78. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
Estado Inicial
en(RU EDA − P IN CHADA, EJE) ∧ en(RU EDA − REP U EST O, M ALET ERO)
Objetivo
en(RU EDA − REP U EST O, EJE)
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 78 / 100
79. Ejemplo: Definici´n de acciones (con lenguaje ADL) I
o
para cambiar la rueda de repuesto de un veh´
ıculo
Acciones
1 Remover(RUEDA-REPUESTO,MALETERO)
• Precondicion : en(RU EDA − REP U EST O, M ALET ERO)
´
• Efectos : ¬en(RU EDA − REP U EST O, M ALET ERO) ∧
en(RU EDA − REP U EST O, SU ELO)
2 Remover(RUEDA-PINCHADA,EJE)
• Precondicion : en(RU EDA − P IN CHADA, EJE)
´
• Efectos : ¬en(RU EDA − P IN CHADA, EJE) ∧ en(RU EDA −
P IN CHADA, SU ELO)
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 79 / 100
80. Ejemplo: Definici´n de acciones (con lenguaje ADL) II
o
para cambiar la rueda de repuesto de un veh´
ıculo
3 ColocarSobre(RUEDA-REPUESTO,EJE)
• Precondicion : en(RU EDA − REP U EST O, SU ELO) ∧
´
¬en(RU EDA − P IN CHADA, EJE)
• Efectos : ¬en(RU EDA − REP U EST O, SU ELO) ∧
en(RU EDA − REP U EST O, EJE)
4 DejarPorLaNoche(—)
• Precondicion : —
´
• Efectos : ¬en(RU EDA − REP U EST O, SU ELO) ∧
¬en(RU EDA − REP U EST O, EJE) ∧ ¬en(RU EDA −
REP U EST O, M ALET ERO) ∧ ¬en(RU EDA −
P IN CHADA, SU ELO) ∧ ¬en(RU EDA − P IN CHADA, EJE)
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 80 / 100
81. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
La b´squeda de la soluci´n parte con un plan vac´ cuyas acciones
u o ıo,
iniciales ser´n Inicio y Fin.
a
El efecto de Inicio es el estado inicial:
en(RU EDA − P IN CHADA, EJE) ∧ en(RU EDA −
REP U EST O, M ALET ERO)
Las precondiciones de Fin son el objetivo:
en(RU EDA − REP U EST O, EJE).
La idea es no dejar precondiciones abiertas, y como la unica que
´
tenemos es la del final, tenemos que resolverla.
Para eso buscamos las acciones cuyo efecto sea
en(RU EDA − REP U EST O, EJE).
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 81 / 100
82. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
La unica elecci´n posible es ColocarSobre.
´ o
Las precondiciones de este operador son
en(RU EDA−REP U EST O, SU ELO)∧¬en(RU EDA−P IN CHADA, EJE)
Elegimos cualquiera de ella al azar.
Las im´genes que ir´n apareciendo van mostrando c´mo va
a a o
evolucionando la creaci´n del POP. Aquellas acciones que no est´n
o e
pintadas de blanco es porque tienen sus precondiciones abiertas ya
resueltas.
en(RR, Suelo) ColocarSobre(RR, en(RR,eje)
Inicio en(RP, Eje) Eje) Fin
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 82 / 100
83. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
Nuestra elecci´n va a ser en(RU EDA − REP U EST O, SU ELO).
o
El unico operador que tiene a
´
en(RU EDA − REP U EST O, SU ELO) en su lista de efectos es
Remover con par´metros RUEDA-REPUESTO y MALETERO.
a
Lo agregamos al plan parcial que estamos generando.
en( RR, Maletero ) Remover ( RR,
Maletero )
en(RR, Suelo) ColocarSobre(RR, en(RR,eje)
Inicio en(RP,Eje)
Eje) Fin
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 83 / 100
84. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
Actualizando lo que llevamos hasta el momento, tenemos dos
precondiciones que a´n no se han analizado:
u
1 en(RU EDA − REP U EST O, M ALET ERO)
2 ¬en(RU EDA − P IN CHADA, EJE)
¿Cu´l elegimos?. Cualquiera.
a
Si nos quedamos con ¬en(RU EDA − P IN CHADA, EJE) , es
f´cil advertir que tanto Remover como DejarPorLaNoche la
a
tienen dentro de su lista de efectos.
Una de ellas se tiene que escoger para construir el plan.
Veamos qu´ pasa si trabajamos con DejarPorLaNoche.
e
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 84 / 100
85. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
Presenta el inconveniente que uno de sus efectos es
¬en(RU EDA − REP U EST O, SU ELO) , el que entra en conflicto
con una de las precondiciones que tenemos abiertas:
en(RU EDA − REP U EST O, SU ELO).
Con esto, el link
en(R-REP,SUELO)
Remover(R-REP,MALETERO) − − − − − − − ColocarSobre(R-REP,EJE)
−−−−−−→
es el que se ve afectado.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 85 / 100
86. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
La unica manera de solucionar esto es mediante degradaci´n, es decir
´ o
agregando la relaci´n de orden
o
DejarPorLaNoche Remover(RU EDA − REP U EST O, M ALET ERO)
en( RR, Maletero ) Remover ( RR,
Maletero )
en(RR, Suelo) ColocarSobre(RR, en(RR,eje)
Inicio en( RP,Eje)
Eje) Fin
DejarPorLaNoche()
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 86 / 100
87. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
¿Por qu´e
DejarPorLaNoche no
puede ir despu´s de
e
ColocarSobre(RUEDA-
REPUESTO,EJE)?
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 87 / 100
88. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
La unica precondici´n abierta que va quedando es
´ o
en(RU EDA − REP U EST O, M ALET ERO).
La unica acci´n que la tiene dentro de sus efectos es Inicio.
´ o
El problema es que el link
en(R-REP,MALETERO)
Inicio − − − − − − − − → Remover(R-REP,MALETERO)
−−−−−−−−
entra en conflicto con la acci´n DejarPorLaNoche
o
porque ¬en(RU EDA − REP U EST O, M ALET ERO) est´ en su
a
lista de efectos.
¿C´mo se puede resolver el problema?
o
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 88 / 100
89. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
Por una parte, no podemos introducir el orden
DejarPorLaNoche Inicio
Ninguna acci´n est´ antes que Inicio ni tampoco podemos poner
o a
DejarPorLaNoche despu´s de e
Remover(RUEDA-REPUESTO,MALETERO) porque esto viola la
relaci´n de orden impuesta anteriormente, que era
o
DejarPorLaNoche Remover(RU EDA − REP U EST O, M ALET ERO)
lo que adem´s genera un ciclo.
a
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 89 / 100
90. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
en( RR,Maletero ) Remover( RR,
Maletero )
en(RR,Suelo) en(RR,eje )
Inicio en(RP,Eje) ColocarSobre(RR,Eje ) Fin
DejarPorLaNoche()
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 90 / 100
91. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
Por lo tanto, como no podemos resolver el conflicto de enlace la unica
´
alternativa que nos queda es desechar la opci´n de incorporar la acci´n
o o
DejarPorLaNoche junto a los enlaces causales y de orden que se
hayan generado.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 91 / 100
92. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
Todo vuelve atr´s:
a
en( RR, Maletero ) Remover ( RR,
Maletero )
en(RR, Suelo) ColocarSobre(RR, en(RR,eje)
Inicio en(RP,Eje)
Eje) Fin
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 92 / 100
93. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
Si volvemos a considerar ¬en(RU EDA − P IN CHADA, EJE) vamos a
elegir Remover con par´metros (RU EDA − P IN CHADA, EJE).
a
en( RR,Maletero ) Remover( RR,
Maletero )
en(RR,Suelo) en(RR,eje )
Inicio en(RP,Eje) ColocarSobre(RR,Eje ) Fin
en(RP, Eje ) Remover( RP, Eje )
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 93 / 100
94. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
Nos quedan dos precondiciones abiertas:
1 en(RU EDA − P IN CHADA, EJE)
2 en(RU EDA − REP U EST O, M ALET ERO)
Nos quedamos en(RU EDA − P IN CHADA, EJE) y elegimos Inicio para
resolverla.
Es f´cil advertir que este movimiento no genera conflictos.
a
en( RR, Maletero ) Remover ( RR,
Maletero )
en(RR, Suelo) ColocarSobre(RR, en(RR,eje)
Inicio en(RP,Eje)
Eje) Fin
en( RR, Eje ) Remover ( RP, Eje )
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 94 / 100
95. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
Finalmente, resolvemos la precondici´n
o
en(RU EDA − REP U EST O, M ALET ERO) con Inicio,
qued´ndonos un plan consistente y completo:
a
en( RR,Maletero ) Remover( RR,
Maletero )
en(RR,Suelo) en(RR,eje )
Inicio en(RP,Eje) ColocarSobre(RR,Eje ) Fin
en( RR,Eje ) Remover( RP, Eje )
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 95 / 100
96. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
Tenemos dos linealizaciones posibles:
Inicio Remover ( RR, Maletero ) Remover ( RP, Eje ) ColocarSobre(RR,Eje) Fin
Inicio Remover ( RP, Eje ) Remover ( RR, Maletero ) ColocarSobre(RR,Eje) Fin
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 96 / 100
97. Ejemplo:
cambiar la rueda de repuesto de un veh´
ıculo
El ejemplo que acabamos de revisar tiene la fortaleza que permite
exhibir todos los problemas que podemos enfrentar cuando hay que
elaborar un POP.
El hecho que los predicados y las acciones operen s´lo con constantes
o
facilita la elecci´n del operador a elegir.
o
Podemos querer generar un planificador de orden parcial sobre
problemas donde todo est´ especificado en torno a variables como el
a
mundo de los bloques.
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 97 / 100
98. Ejercicios para desarrollar
1 Confeccione un plan de orden parcial para el problema de cambiar la
rueda de repuesto que sea distinto al propuesto en clases.
Indique todas las linealizaciones posibles que se desprendan de su plan.
Explique paso a paso c´mo su grupo gener´ la soluci´n.
o o o
2 Complete el mapa conceptual que resuma todo lo visto en la Unidad
3: Planificaci´n.
o
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 98 / 100
99. M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 99 / 100
100. Fin de la Unidad 3
M. Ram´
ırez K. (USS) Apunte curso IA Primer Semestre 2011 100 / 100