PRÁCTICA I: TÉCNICAS DE BÚSQUEDA
Objetivo:
Esta práctica pretende que el alumno se
familiarice con la implementación de los algoritmos de
búsqueda
estudiados en los temas 3 y 4 del programa propuesto.
Medios:
Se recomienda que se utilice la
especificación de los métodos contenida en el texto base.
Enunciado:
Implementar en el lenguaje de programación que se prefiera los
siguientes algoritmos de búsqueda: amplitud, profundidad, A* y
primero el mejor. Los requisitos son:
- La especificación del domino (problema a resolver
representado como espacio de estados) deberá poder pasarse como
argumento. Por ejemplo, puede pasarse como un fichero XML (al estilo
del applet AISpace) o bien si se utiliza LISP puede cargarse el dominio
previamente mediante la función load.
- La llamada al algoritmo deberá contener el estado inicial
y el estado final referidos al dominio donde se está ejecutando
el algoritmo.
- La salida del algoritmo deberá dar: camino
solución, los nodos explorados, orden de exploración de
los nodos y tiempo de ejecución.
- Realizar pruebas para al menos dos de los dominios que se
relacionan a continuación y razonar los resultados que se
obtengan: 8-puzzle, misioneros y caníbales, tres en raya,
viajante de comercio, mapas de carretera o torres de Hanoi.
Esta práctica debe servir para que el alumno
realice pequeños modelos de representación del
conocimiento e
inferencia con reglas, reglas y marcos, y mops. Con ello
pretendemos ilustrar las facilidades aportadas por cada modelo
para cada tipo de problema.
Se pueden utilizar diferentes programas disponibles
en la Web, como por ejemplo:
- PROLOG (SWI-Prolog disponible en:
http://www.swi-prolog.org/)
- LISP (CLISP disponible en http://clisp.cons.org/)
- Herramientas para el desarrollo de sistemas expertos. Como por
ejemplo, CLIPS (disponible en http://clipsrules.sourceforge.net/)
o
MIKE (disponible en http://kmi.open.ac.uk/people/marc/mike_text.html).
Enunciado:
En la práctica propuesta se pide
implementar en CLIPS un sistema experto en turismo. Se tratará
de un sistema de recomendación de una ciudad, aconsejando
qué sitios visitar según la ubicación del usuario,
sus preferencias, sus posibilidades (presupuesto, medios de
locomoción, ...) o su experiencia previa (por ejemplo, idiomas,
ciudades que ya conoce, ...). La realización de la
práctica consistirá en analizar, y definir la(s) base(s)
de conocimiento del sistema en forma de reglas, hechos, etc.