Вы находитесь на странице: 1из 7

Ejemplos de planificación 1

EJEMPLOS DE PLANIFICACIÓN
1. DOMINIO DEL MUNDO DE LOS BLOQUES

DESCRIPCIÓN DEL PROBLEMA: Se dispone de un conjunto de bloques situados encima de una


mesa con la posibilidad de que haya bloques sobre otros. Partiendo de una situación inicial, es decir,
determinados bloques situados de una forma específica (por ejemplo: bloque A sobre el B), se
quiere llegar a la situación final en la que los bloques estén dispuestos de otra forma. Para ello se
dispone de los siguientes operadores.

OPERADORES:

Acción: DESAPILAR(x, y)
Precondiciones: libre(x)  encima(x,y)
Añadidos: encima(x, mesa)  libre(y)
Eliminados: encima(x,y)
El bloque x que está situado encima del y, se va a colocar encima de la mesa.

Acción: APILAR(x, y)
Precondiciones: encima(x, mesa)  libre(x)  libre(y)
Añadidos: encima (x, y)
Eliminados: libre(y)  encima(x, mesa)
El bloque x, situado encima de la mesa, se va a colocar encima del y.

Acción: MOVER-BLOQUE-SOBRE-BLOQUE(x, y, z)
Precondiciones: encima(x, y)  libre(x)  libre(y)
Añadidos: encima(x, z)  libre(y)
Eliminados: encima(x, y)  libre(z)
El bloque x, situado encima del y, se va a colocar encima del z.

libre(x) indica que el bloque x no tiene ningún bloque encima suyo.


encima(x,y) indica que el bloque x está sobre el y. Si y es la mesa, el bloque x estaría situado
encima de la mesa.

Ejemplos de situaciones iniciales y metas:


a) Anomalía de Sussman
Situación inicial: libre(C)  encima(C, A)  encima(A, mesa)  libre(B) encima(B, mesa)
Situación final: libre(A)  encima(A, B)  encima(B, C)  encima(C, mesa)

b) Situación inicial: libre(A)  encima(A, B)  encima(B, mesa)  libre(C)  encima(C, D) 


encima(D, mesa)
Situación final: encima(A, C)  encima(B, D)
Ejemplos de planificación 2

2. DOMINIO DEL PROBLEMA DE INTERCAMBIO DEL CONTENIDO ENTRE DOS


REGISTROS

DESCRIPCIÓN DEL PROBLEMA: Se quiere intercambiar el contenido de dos registros. Por


ejemplo, el registro A que tiene como contenido el valor 1 tomará el contenido del registro B cuyo
contenido es 2. A su vez, el registro B terminará con el contenido del registro A. En este caso sólo
se necesita un único operador que representa la acción de asignar.

OPERADOR:

Acción: ASIGNAR(R1, R2, V1, V2)


Precondiciones: contenido(R1, V1)  contenido(R2, V2)
Añadidos: contenido(R2, V1)
Eliminados: contenido(R2, V2)
El valor contenido en el registro R1, V1, va a ser asignado al registro R2 cuyo contenido es
V2.

contenido (R, V) indica que el contenido del registro R es V.

Ejemplos de situación inicial y meta:


Situación inicial: contenido(A, 1)  contenido(B, 2)  contenido(C, 0)
Situación final: contenido(A, 2)  contenido(B, 1)

3. DOMINIO DEL PROBLEMA DE LAS TORRES DE HANOI

DESCRIPCIÓN DEL PROBLEMA: Se dispone de un conjunto de discos de distintos tamaños, de


forma que dos de ellos no tengan el mismo tamaño y de un conjunto de barras sobre las que se
pueden apilar dichos discos con la restricción de que no se puede apilar un disco mayor sobre uno
menor.

OPERADOR:

Acción: MOVER-DISCO(x, y, z)
Precondiciones: libre(x)  encima(x, y)  libre(z)  menor(x, z)  disco(x)
Añadidos: encima(x, z)  libre(y)
Eliminados: encima(x, y)  libre(z)
Mover el disco x, desde la barra y ó de encima del disco y, encima del disco z ó a la barra z.

libre(x) Si x es un disco indica que no tiene ningún disco encima suyo. Si es una barra, indica que
no hay ningún disco apilado en ella.
encima(x,y) indica que el bloque x está sobre el disco y o en la barra y.

Ejemplos de situación inicial y meta:


Situación inicial: disco(A)  disco (B)  disco (C)  menor (C, barra1)  menor (C, barra2) 
menor (C, barra3)  menor (B, barra1)  menor (B, barra2)  menor (B, barra3)  menor (A,
barra1)  menor(A, barra2)  menor (A, barra3)  menor (B, C)  menor (A, C)  menor (A, B) 
libre (A)  encima (A, B)  encima (B, C)  encima (C, barra1)  libre (barra2)  libre (barra3)
Situación final: encima (A, B)  encima (B, C)  encima (C, barra2)
Ejemplos de planificación 3

4. DOMINIO DEL PROBLEMA DEL TECHO Y LA ESCALERA

DESCRIPCIÓN DEL PROBLEMA: Se trata de pintar el techo de una habitación y la escalera que
nos permite pintar el techo. Para pintar el techo, es necesario que la escalera no esté pintada. Sin
embargo, para pintar la escalera da igual si el techo está pintado o no.

OPERADORES:

Acción: PINTAR-TECHO
Precondiciones: no-pintada-escalera  no-pintado-techo
Añadidos: pintado-techo
Eliminados: no-pintado-techo

Acción: PINTAR-ESCALERA
Precondiciones: no-pintada-escalera
Añadidos: pintada-escalera
Eliminados: no-pintada-escalera

Ejemplos de situación inicial y meta:


Situación inicial: no-pintada-esclarera  no-pintado-techo
Situación final: pintada-escalera  pintado-techo

5. DOMINIO DEL MONO Y LOS PLÁTANOS

DESCRIPCIÓN DEL PROBLEMA: Situados en un espacio se hallan un mono, plátanos, un


cuchillo, un vaso, una fuente y una caja. El mono y el resto de objetos no tienen porque estar en la
misma posición dentro del espacio. El objetivo del mono puede ser coger los plátanos, coger el
agua, o coger los plátanos y el agua. El mono necesita subirse a la caja para alcanzar los plátanos y
el agua de la fuente. Además para tener los plátanos antes tiene que tener el cuchillo y para coger
agua antes debe tener el vaso.

OPERADORES:

Acción: IR-A(x)
Precondiciones: en-suelo  posición(mono, y)
Añadidos: posición (mono, x)
Eliminados: posición(mono, y)
El mono va desde la posición y a la x.

Acción: SUBIR
Precondiciones: posición(caja, x)  posición(mono, x)
Añadidos: encima-caja(x)
Eliminados: en-suelo
El mono se sube encima de la caja en la posición x.

Acción: EMPUJAR-CAJA(x, y)
Precondiciones: posición(caja, x)  posición(mono, x)  en-suelo
Añadidos: posición(mono, y)  posición(caja, y)
Ejemplos de planificación 4

Eliminados: posición(caja, x)  posición(mono, x)


Empuja la caja desde la posición x a la y.

Acción: COGER-CUCHILLO
Precondiciones: posición(cuchillo, x)  posición(mono, x)
Añadidos: tener-cuchillo
Eliminados: posición(cuchillo, x)
El mono coge el cuchillo en la posición x.

Acción: COGER-PLÁTANOS
Precondiciones: tener-cuchillo  posición(plátanos, x)  encima-caja(x)
Añadidos: tener-plátanos
Coge los plátanos en la posición x.

Acción: COGER-VASO(x)
Precondiciones: posición(vaso, x)  posición(mono, x)
Añadidos: tener-vaso
Eliminados: posición(vaso, x)
Coge el vaso en la posición x.

Acción: COGER-AGUA(x)
Precondiciones: tener-vaso  posición(fuente, x)  posición(mono, x)  encima-caja(x)
Añadidos: tener-agua
Coge el agua en la posición x.

posición(obj, x) indica que obj está en la posición x.

Ejemplos de situaciones iniciales y metas:


a) Situación inicial: posición(mono, P1)  en-suelo  posición(caja, P2)  posición(plátanos, P3)
 posición(cuchillo, P4)
Situación final: tener-plátanos

b) Situación inicial: posición(mono, P1)  en-suelo  posición(caja, P2)  posición(plátanos, P3)


 posición(cuchillo, P4)  posición(fuente, P3)  posición(vaso, P6)
Situación final: tener-plátanos  tener-agua

c) Situación inicial: posición(mono, P1)  en-suelo  posición(caja, P2)  posición(plátanos, P3)


 posición(cuchillo, P4)  posición(fuente, P5)  posición(vaso, P6)
Situación final: tener-plátanos  tener-agua

6. DOMINO DE UN PROBLEMA DE VIAJES

DESCRIPCIÓN DEL PROBLEMA: Dadas las situaciones de unas calles y de unos puentes
determinadas por dos posiciones, se pretende que partiendo de una posición y de un vehículo se
llegue a otra posición.

OPERADORES:
Ejemplos de planificación 5

Acción: CONDUCIR(vehículo, posición1, posición2)


Precondiciones: posición(vehículo, posición1)  calle(posición1, posición2)
Añadidos: posición(vehículo, posición2)
Eliminados: posición(vehículo, posición1)

Acción: CRUZAR(vehículo, posición1, posición2)


Precondiciones: posición(vehículo, posición1)  puente(posición1, posición2)
Añadidos: posición(vehículo, posición2)
Eliminados: posición(vehículo, posición1)

posición(vehículo, x) indica que el vehículo está en la posición x.


calle (posición1, posición2) indica que existe una calle definida por posición1 y posición2 .
puente (posición1, posición2) indica que existe un puente determinado por posición1 y posición2.

Ejemplos de situación inicial y meta:


Situación inicial: calle(G, D)  calle(D, G)  puente(D, A)  puente(A, D)  posición(coche1, A)
 posición(coche2, A)
Situación final: posición(coche1, G)  posición(cohe2, G)

7. DOMINIO DE UN PROBLEMA DE IMPRESIÓN

DESCRIPCIÓN DEL PROBLEMA: Se quiere imprimir un fichero, para ello hay que tener en
cuenta que tanto el ordenador como la impresora deben existir, estar enchufados y encendidos.

OPERADORES:

Acción: IMPRIMIR(fichero, ordenador, impresora)


Precondiciones: encendido(ordenador)  encendido(impresora)  es-ordenador(ordenador)  es-
impresora(impresora)  cargado(fichero, ordenador)
Añadidos: impreso(fichero)

Acción: ENCENDER(dispositivo)
Precondiciones: enchufado(dispositivo)  funciona(dispositivo)
Añadidos: encendido(dispositivo)

Acción: ENCHUFAR(dispositivo, enchufe)


Precondiciones: es-enchufe(enchufe)  alcanza-cable(dispositivo, enchufe)
Añadidos: enchufado(dispositivo)

Acción: CARGAR(fichero, ordenador)


Precondiciones: es-ordenador(ordenador)  encendido(ordenador)
Añadidos: cargado(fichero, ordenador)

encendido(dispositivo) indica que el dispositivo se encuentra encendido.


es-ordenador(dispositivo) indica que el dispositivo es un ordenador.
es-impresora(dispositivo) indica que el dispositivo es una impresora.
cargado(fichero, ordenador) indica que el fichero está cargado en ordenador.
enchufado(dispositivo) indica que el dispositivo está enchufado
Ejemplos de planificación 6

funciona(dispositivo) indica que el dispositivo funciona.


es-enchufe(dispositivo) indica que el dispositivo es un enchufe.
alcanza-cable(dispositivo, enchufe) indica que el cable del dispositivo se puede enchufar en ese
determinado enchufe.

Ejemplo de situación inicial y meta:


Situación inicial: funciona(ord1)  es-ordenador(ord1)  alcanza-cable(ord1, enchufe1) 
funciona(sun1)  es-ordenador(sun1)  funciona(impresora-laser1)  es-impresora(impresora-
laser1)  alcanza-cable(impresora-laser1, enchufe1)  es-enchufe(enchufe1)
Situación final: impreso(ejemplo.lisp)

8. DOMINIO DE UN ROBOT

DESCRIPCIÓN DEL PROBLEMA: Un robot mueve objetos desde una habitación a otra. Las
habitaciones deben estar conectadas. El robot puede coger, dejar y transportar el objeto desde un
sitio a otro o también puede desplazarse sin tener ningún objeto en la pinza. Para coger un objeto, la
pinza del robot ha de estar vacía.

OPERADORES:

Acción: COGER(obj)
Precondiciones: posición(obj, pos)  posición(robot, pos)  pinza-vacía
Añadidos: agarrar(robot, obj)
Eliminados: pinza-vacía

Acción: DEJAR(obj)
Precondiciones: agarrar(robot, obj)
Añadidos: pinza-vacía
Eliminados: agarrar(robot, obj)

Acción: MOVER-PINZA-VACIA(origen, destino)


Precondiciones: conectada(origen, destino)  posición(robot, origen)  pinza-vacía
Añadidos: posición(robot, destino)
Eliminados: posición(robot, origen)

Acción: MOVER-OBJETO(origen, destino)


Precondiciones: conectada(origen, destino)  posición(robot, origen)  agarrar(robot, obj)
Añadidos: posición(obj, destino)  posición(robot, destino)
Eliminados: posición(robot, origen)  posición(obj, origen)

posición(obj, x) indica que obj está en la posición x.


agarrar(robot, obj) indica que el robot tiene obj en la pinza.
pinza-vacía indica que el robot no tiene nada en la pinza.
conectada(origen, destino) indica que la habitación origen está comunicada con la habitación
destino.
Ejemplos de planificación 7

Ejemplo de situación inicial y meta:


Situación inicial: conectada(HABITACIÓN1, HABITACIÓN2)  conectada(HABITACIÓN2,
HABITACIÓN1)  posición(CAJA1, HABITACIÓN2)  posición(CAJA2, HABITACIÓN2) 
pinza-vacía  posición(ROBOT, HABITACIÓN1)
Situación final: posición(CAJA1, HABITACIÓN1)  posición(CAJA2, HABITACIÓN1)

Вам также может понравиться