Esta es una colección de proyectos que desarrollé para los cursos de Sistemas Inteligentes y Representación del Conocimiento y Razonamiento Automático en el segundo y tercer año de mi Licenciatura en Informática en la UDC (España). Los proyectos son los siguientes:
Compositor canónico automatizado con múltiples voces que utiliza la programación de conjuntos de respuestas que tiene en cuenta muchas restricciones y preferencias melódicas. Utiliza las herramientas gringo, broche, python y lilypond. Se proporciona un breve archivo de audio de ejemplo, creado con uno de los archivos de preferencias proporcionados. Usando Python, broche, gringo y lilypond.
Sokoban solver mediante búsqueda heurística que resuelve el juego de sokoban. Con la ayuda de un código extraído directamente del libro de Russell&Norvig03, mi socio y yo desarrollamos el dominio específico y una heurística adecuada. Se pueden utilizar Greedy, BSF, DSF y A* para realizar la búsqueda. El objetivo es mover al jugador (@) ARRIBA, ABAJO, IZQUIERDA y DERECHA para recoger los goles (.). Las paredes (#) no se pueden mover pero los objetos ($) sí. La heurística seleccionada es la de distancias mínimas a las porterías.
Hitori Puzzle Solver que transforma una versión simplificada del rompecabezas Hitori en un conjunto de cláusulas booleanas CNF basadas en las reglas del juego, llama a un solucionador de satisfacibilidad proposicional (SAT) y crea la solución. Usando Python y picosat.
Razonamiento probabilístico con conjuntos de respuestas que calcula las probabilidades de que sucedan diferentes cosas en el juego de Big Bang Theory Piedra, papel, tijera, lagarto, Spock. Usando P-log.
Proyecto de demostración de teoremas que comprueba si una conclusión se deriva de las premisas utilizando un demostrador de teoremas para cálculo de predicados llamado Prover9. Este software acepta una lista de fórmulas en lógica de primer orden y decide si una fórmula es válida o no mediante refutación mediante resolución.
8 solucionador de acertijos mediante búsqueda heurística que encuentra una solución para el juego. Con la ayuda de un código extraído directamente del libro de Russell&Norvig03, desarrollamos el dominio específico y una heurística adecuada. Se pueden utilizar Greedy, BSF, DSF y A* para realizar la búsqueda. La mejor heurística probada fue la distancia en taxi.
Rumania Roadmap Search que encuentra una ruta a Bucarest desde Arad (preferiblemente la más corta). Con la ayuda de un código extraído directamente del libro de Russell&Norvig03, desarrollamos el dominio específico y una heurística adecuada. Se pueden utilizar Greedy, BSF, DSF y A* para realizar la búsqueda. La heurística utilizada fue la distancia recta.
Comuníquese con Daniel Ruiz Pérez para solicitudes, informes de errores y buenos chistes.
El software de este repositorio está disponible bajo la Licencia Pública General GNU, versión 3. Consulte el archivo de LICENCIA para obtener más información.