lunes, 14 de marzo de 2011

Planificacion


Ir de Compras




El mundo de Shakey

Shakey es un robot cuya función consiste en dejar arreglado y acomodado un conjunto de salones que se encuentran en el mismo piso, conectados por un corredor. El trabajo de Shakey consiste en asegurarse que todos los salones tengan la luz apagada. Como Shakey es pequeño, necesita subirse a una caja para poder alcanzar el apagador.
Para ayudar a Shakey a realizar su tarea, se han dejado varias cajas por los salones. De esta forma, Shakey solo puede apagar la luz de un salón si en ese mismo salón hay una caja. Shakey, además, puede llevar cajas de un salón a otro, pero solamente una a la vez.
El estado inicial de este problema es una configuración cualquiera de salones, cajas y Shakey.

ESTADO INICIAL

 
1.       Salir(x)
2.       Entrar(x)
3.       Sacar_caja(x)
4.       meter_caja(x)
5.       Subir(x)
6.       Bajar(x)
7.       turnOff(x)
8.       on(shakey,x)
9.       pushable(x)
10.   climbable(x)
11.   turnOn(ls_1)

shakey(x)
box(x)
ls_1(x)
ls_2(x)
ls_3(x)
ls_4(x)
room_1(x)
room_2(x)
room_3(x)
room_4(x)


salir(room_3)
entrar(room_1)
subir(box) pre: climbable(box) effect: on(shakey,box)
TurnOff(ls_1) pre: on(shakey,box) effect: ¬turnOn(ls_1)
Bajar(box) pre: on(shakey,box) effect: ¬on(shakey,box)
Sacar_caja(room_1) pre: pushable(box) and ¬on(shakey,box)
Meter_caja(room_3) pre: ¬on(shakey,box)
subir(box) pre: climbable(box) effect: on(shakey,box)
TurnOff(ls_3) pre: on(shakey,box) effect: ¬turnOn(ls_3)
Bajar(box) pre: on(shakey,box) effect: ¬on(shakey,box)
Sacar_caja(room_3) pre: pushable(box) and ¬on(shakey,box)
Meter_caja(room_2) pre: ¬on(shakey,box)
subir(box) pre: climbable(box) effect: on(shakey,box)
TurnOff(ls_2) pre: on(shakey,box) effect: ¬turnOn(ls_2)
Bajar(box) pre: on(shakey,box) effect: ¬on(shakey,box)
Sacar_caja(room_2) pre: pushable(box) and ¬on(shakey,box)
Meter_caja(room_4) pre: ¬on(shakey,box)
subir(box) pre: climbable(box) effect: on(shakey,box)
TurnOff(ls_4) pre: on(shakey,box) effect: ¬turnOn(ls_4)
Bajar(box) pre: on(shakey,box) effect: ¬on(shakey,box)
Sacar_caja(room_4) pre: pushable(box) and ¬on(shakey,box)
Meter_caja(room_1) pre: ¬on(shakey,box)

ESTADO OBJETIVO


El estado objetivo es que todas las cajas y Shakey estén en el salón 1, todos los salones tengan las luces apagadas. Para simplificar la tarea suponemos que el pasillo es un “pasillo cuántico” ya que no hay necesidad de caminar por él, simplemente salimos al pasillo en el salón X y podemos entrar del pasillo a cualquier otro salón. También suponemos que no hay necesidad de trasladar cajas dentro de los salones, Shakey puede apagar la luz si en el mismo salón donde está él hay una caja (si no hay ninguna, tiene que traerla).


-----------------------------------------------------------------------------------------------------------------------
Problema 2: Los Cubos



Predicados
At, have, on the table, move cube (x) on the table, move cube (x) on the cube (y), cube (x) on the cube (y), here cube
Objetos
Los cubos:  A,B,C,I,J