PRÁCTICA 2: PLANIFICACIÓN CON STRIPS

Transcripción

PRÁCTICA 2: PLANIFICACIÓN CON STRIPS
CURSO ACADÉMICO 2010-2011 - GRADO EN INGENIERÍA INFORMÁTICA
ASIGNATURA: INTELIGENCIA ARTIFICIAL
PRÁCTICA 2: PLANIFICACIÓN
CON STRIPS
Profesor: Miguel García Remesal
EJERCICIO 1: El robot mensajero (2.5 puntos)
Se desea construir un planificador que controle el comportamiento de un robot mensajero que sea
capaz de mover paquetes entre los diferentes edificios (bloques) de nuestra facultad. Se asumirá que
el robot puede llevar un número ilimitado de paquetes, y que las únicas localizaciones relevantes
son los bloques 1, 2, 3, 4, 5 y 6 de la facultad.
Como puede observarse en la figura, hay varios bloques que están conectados entre sí, y por tanto,
es posible transitar entre ellos desde el interior de los mismos. Por ejemplo, el robot puede ir del
bloque 2 al bloque 4 pasando por el bloque 3 (y viceversa). También es posible ir por el interior de
los edificios desde el bloque 5 hasta el bloque 6 (y viceversa). Por contra, para transitar entre
bloques sin conexión será necesario que el robot salga fuera del edificio en el que se encuentra. Si el
robot sale fuera cuando está lloviendo, entonces se mojará a no ser que disponga de un paraguas. El
robot puede obtener un paraguas bien en el bloque 1 o bien en el bloque 6.
Se pide:
•
•
•
Formalizar el dominio descrito en el enunciado utilizando STRIPS. Explicar
CLARAMENTE el significado de cada constante, predicado y operador utilizado.
Formalizar al menos dos problemas de planificación que involucren el dominio definido en
el apartado anterior. Tener en cuenta que los diferentes estados objetivo pueden involucrar
diferentes condiciones, tales como la ubicación final de los diferentes paquetes, la ubicación
del robot o el estado del robot (e.g. seco, mojado).
Discutir la adecuación del formalismo STRIPS para resolver este supuesto. En caso de no
considerarse adecuado, sugerir posibles mejoras en el formalismo de representación.
EJERCICIO 2: Misión en Marte (7.5 puntos)
La NASA desea diseñar un planificador que permita a un grupo de rovers llevar a cabo una misión
de recopilación de datos sobre la composición del suelo marciano. Cada rover posee varios
instrumentos, y cada instrumento puede ser utilizado para llevar a cabo diferentes operaciones de
recolección de datos. Por ejemplo, un instrumento de toma de imágenes puede ser utilizado para
adquirir bien imágenes espectrográficas, o bien imágenes termográficas de una roca de interés.
Antes de llevar a cabo una operación, el rover debe adoptar una orientación específica con respecto
al sol. En otras palabras, debe rotar a voluntad bien para alinearse con el sol, o bien para ocluirlo.
Esto es así dado que la orientación del rover con respecto al sol puede influir en gran medida en el
resultado de una operación debido a los diferentes grados de variación de luminosidad, calor y
radiación. Además, debido a que los rovers tienen una fuente de alimentación limitada, estos
solamente pueden tener encendido un instrumento a la vez. Una vez que uno de los instrumentos se
enciende, es necesario que este se caliente para poder ser utilizado. De nuevo, debido a la limitación
de la fuente de alimentación, para que la operación de calentamiento tenga éxito es necesario que el
rover esté orientado hacia el sol, ya que el robot aprovechará la energía proviniente del sol para
llevar a cabo el calentamiento del instrumento. Una vez caliente, el instrumento permanece así hasta
que se apague. Un rover puede ejecutar una operación específica de recolección de datos siempre y
cuando disponga del instrumento necesario. Asimismo, dicho instrumento deberá estar encendido,
caliente y alineado correctamente con respecto al sol. En general, un estado objetivo requerirá que
se hayan realizado una serie de operaciones de recolección de datos, cada una de ellas en una
orientación específica. Por ejemplo, en el estado final podríamos requerir una imagen
espectrográfica de una roca mientras que el rover está orientado hacia el sol, y una imagen
termográfica de otra roca mientras el rover está ocluyendo el sol.
Se pide:
•
•
•
•
Formalizar el dominio descrito en el enunciado utilizando STRIPS. Explicar
CLARAMENTE el significado de cada constante, predicado y operador utilizado.
Formalizar al menos dos problemas de planificación que involucren el dominio definido en
el apartado anterior.
Resolver los problemas planteados en el punto anterior utilizando la herramienta de
implementación de planificadores STRIPS que puede descargarse en la siguiente dirección
web: http://www.lsi.upc.es/~bejar/apren/docum/Strips.zip. El archivo .ZIP que puede
descargarse de esa dirección contiene el fichero JAR con las clases Java
correspondientes al planificador junto con unas breves instrucciones de uso y una serie de
ejemplos de modelización de dominios y problemas STRIPS.
Discutir la adecuación del formalismo STRIPS para resolver este supuesto. En caso de no
considerarse adecuado, sugerir posibles mejoras en el formalismo de representación.
Consideraciones y consejos: Nótese que el dominio anterior está descrito de una manera abstracta.
Esto puede dar la impresión de que este dominio no está descrito de una manera lo suficientemente
precisa para que el alumno pueda formalizarlo. Sin embargo, este no es el caso. Para resolver el
problema correctamente, el alumno debe ponerse en lugar de un ingeniero —que es al fin y al cabo
lo que será una vez terminada la carrera— que debe formalizar el dominio basándose en una
descripción abstracta del mismo proporcionada por un experto que no está familiarizado con ningún
formalismo de planificación. El alumno debe usar sus habilidades de formalización para discernir
qué es relevante para las tareas de planificación y como diseñarlas y codificarlas. Existen muchas
maneras de formalizar correctamente el dominio. En lo que respecta a las diferentes operaciones de
recopilación de datos, las proporcionadas en el enunciado son solamente un ejemplo. Conviene que
el alumno investigue un poco por su cuenta e introduzca otras operaciones no contempladas en el
enunciado. Esto será tenido muy en cuenta a la hora de calificar.
Normas de presentación
Se deberá entregar una memoria EN PAPEL de no más de 25 páginas, describiendo tanto
el desarrollo como los resultados obtenidos en cada uno de los ejercicios que componen la práctica.
También es necesario incluir un comentario personal sobre la práctica, indicando claramente el
número de horas de trabajo que le ha llevado al alumno la realización de la práctica. La memoria
impresa puede entregarse personalmente al profesor Miguel García Remesal (despacho D‐ 2206) o
puede dejarse a su nombre en la secretaría del DIA. Será necesario también enviar una copia de
la memoria en formato PDF, así como los ficheros de definición de dominios, problemas y
resultados obtenidos en el ejercicio 2, por correo electrónico a la dirección [email protected]
con el siguiente asunto “IA PRACTICA STRIPS 1011 – SEGUNDO SEMESTRE”. Todos los
archivos deben empaquetarse dentro de un archivo RAR o ZIP y deben nombrarse según el
siguiente formato:
1011‐IA‐2C-[APELLIDOS_NOMBRE].RAR
Los nombres compuestos y apellidos múltiples deben unirse mediante un guión (‐).
Ejemplos:
Martin Wheeler: 1011‐IA‐2C-[Wheeler_Martin].rar
Marcos Ángel Martínez Díaz: 1011‐IA‐2C-[Martinez‐Diaz_Marcos‐Angel].zip
Composición del grupo de prácticas
La práctica debe realizarse de forma individual.
¡IMPORTANTE!
Tanto las normas de nombrado como el asunto del e‐mail deben seguirse al pie de la letra, ya que
de otro modo, no puede garantizarse la recepción correcta de la práctica.
Plagios
El plagio —ya sea copia de la práctica de otro compañero o copia de trabajos similares en Internet,
Google y similares— es una cuestión muy seria y en caso de detectarse, se sancionará severamente
al que lo cometa. La sanción mínima a aplicar será el suspenso directo en ambas convocatorias de
este curso académico.
Fecha tope de entrega:
Se comunicará en clase.

Documentos relacionados