INTELIGENCIA EN REDES DE COMUNICACIONES Prácticas de la asignatura Curso 06-07 Departamento de Ingeniería Telemática Universidad Carlos III de Madrid Inteligencia en Redes de Comunicaciones Prácticas de la asignatura Curso 06/07 Julio Villena Román Ingeniería Telemática Universidad Carlos III de Madrid jvillena@it.uc3m.es ÍNDICE SESIÓN 1a: Ingeniería Lingüística [Lunes 15, 17-18] 1. Clasificador lingüístico de textos en java ........................................................................................5 Oscar Alberto García Pérez, Ignacio Martínez Fernández El documento presenta un sistema de clasificación automática de textos en función del idioma en el que estén escritos. Se proponen dos algoritmos diferentes, uno tradicional de diccionario y uno novedoso que se basa en la frecuencia de aparición de cada una de las letras del abecedario en el texto. Se comparan las ventajas y desventajas de cada algoritmo. 2. Reconocimiento Digital del Habla .................................................................................................13 José María Arriero García, Rosana Zarapuz Puertas Visión general de las tecnologías del habla: Procesado de habla-voz, procesado del lenguaje natural y sistemas de diálogo. Se trata la síntesis de voz, pero profundiza un poco más en el Reconocimiento de voz. 3. OPENTRAD ....................................................................................................................................18 Ainhoa Bengoetxea Iriondo Estudio breve sobre el traductor automático Opentrad, primer traductor entre el castellano y todas las lenguas oficiales del estado español (catalán, gallego y euskera) de código abierto y gratuito. 4. Olivia - Un generador creativo de cuentos en CLIPS ..................................................................27 Estrella María García Lozano Una de las metas de la Inteligencia Artificial es conseguir que un ordenador sea creativo. Esto quiere decir que debe crear una obra correcta e inédita de forma independiente, no guiada. Yendo más allá, se podría pretender llegar a cierto grado de belleza en la creación. En este sentido, se plantea la generación creativa de textos literarios. Puesto que es un campo muy amplio, en este caso se limitará a la generación de minicuentos. SESIÓN 1b: Resolución de Problemas [Lunes 15, 17-18] 5. Algoritmos Genéticos ......................................................................................................................35 Antonio Parra Truyol, Jorge Arranz de la Peña Análisis de los algoritmos genéticos. Vemos en detenimiento como funcionan y se ve de forma práctica con unos applets. 6. Algoritmos genéticos. Aplicación al juego de las N reinas ..........................................................43 Juan Carlos Pozas Bustos, Nieves Vázquez Vázquez 7. Evaluación de clasificadores basados en redes RBF ....................................................................53 Jaime Martín Jiménez, Carlos Muñoz Gahete En este documento se describe el análisis de un clasificador basado en redes de Función de Base Radial (RBF) implementado en el software Weka. 8. Teoría de Juegos y Aplicaciones: El Dilema del Prisionero ........................................................61 María de Gracia Blázquez Vallejo, Carmen Virginia Gámez Jiménez Introducción a la Teoría de Juegos y en particular al Dilema del Prisionero. Aplicación de este dilema a distintos casos de la vida real. SESIÓN 2: Sistemas basados en conocimiento/Sistemas expertos [Lunes 15, 18-19] 9. Solución óptima de un laberinto ....................................................................................................69 Gunter Calvo Atance, Alberto Corisco Nieto Resolvemos un laberinto de forma óptima utilizando backtracking como algoritmo de resolución. 10. Sistema experto: vendedor de coches ............................................................................................77 Pablo Prieto Canela Sistema experto de concesionario de coches que se basa en el algoritmo del vecino más cercano (k-NN), calculando la distancia del modelo solicitado a cada uno de los modelos de la base de datos, y presentando los k primeros modelos más cercanos. 11. Kinematic Solver .............................................................................................................................81 Adrián Hurtado González, Cristóbal Miranda Puente 12. Cásate con Inteligencia ...................................................................................................................93 Elia Moreno Catalán, Anastasia Sotelsek Margalef En el presente trabajo se presenta un sistema experto en CLIPS, usando la versión de CLIPS en java llamada JESS. Este sistema responde a la conflictiva tarea de colocar los invitados de una boda en las distintas mesas. Se expone una breve introducción de CLIPS y JESS y se explica en detalle los criterios utilizados para el desarrollo del sistema. Por último se muestran simulaciones de distintas ejecuciones así como la programación del código. 13. Sistema Experto para la construcción de mazos de “Magic the Gathering” ............................99 Rubén Hidalgo López, Carlos Navarro del Dujo El propósito principal de este trabajo es la obtención de un herramienta de completado de barajas dado un cierto número de cartas a priori. Es por ello un problema de optimización abordable con técnicas de IA pues debemos encontrar las mejores cartas que completan una serie de cartas dadas a partir de los conocimientos sobre el tema que tenga un experto. 14. Reconocimiento automático de matrículas .................................................................................107 Carlos Parra Ramos, David Regajo Rodríguez Reconoce de forma automática matrículas a partir de entrenamiento supervisado (se deben etiquetar las matrículas con una cadena de caracteres completa). Las matrículas que no segmentan bien no se entrena con ellas. 15. Armonizador de melodías ............................................................................................................116 Raquel Aparicio Morenilla, Lorena Cuadrado Gutiérrez Para una melodía de entrada dada genera una secuencia de armonías y asigna las tres voces que acompañaran a la melodía SESIÓN 3: Sistemas basados en conocimiento/Juegos [Miércoles 17, 16-17] 16. Entorno de simulación de carreras de coches: rars ...................................................................124 Cristina Romero Barbado, Antonio Aldea Gómez Este proyecto está planteado desde el punto de vista de un sistema experto. Utilizando el simulador gráfico RARS, hemos desarrollado un coche de ejemplo que en base a un conocimiento es capaz de recorrer distintos escenarios. 17. Cubo de Rubik...............................................................................................................................139 Ignacio Alonso Muñoz, Jose Maximino Arévalo Garbayo, Víctor Collado Negro Trabajo que explica dos de los algoritmos de resolución del famoso Cubo de Rubik, así como las curiosidades que a lo largo de la historia de uno de los "juguetes" más famosos de la historia se derivan. 18. Dominó ...........................................................................................................................................150 Daniel Taveira Monteiro, Rodrigo Gómez Rodriguez, David Toledo Navarro Se ha implementado el juego del dominó con el lenguaje java utilizando la estrategia del minimax para su resolución. 19. Mortal Sudoku ..............................................................................................................................159 Alejandro Jiménez Horas, Gerson Rodríguez de los Santos López La aplicación consta de un servidor y un cliente RMI para permitir jugar en dos máquinas distintas a los dos participantes. 20. Jugador de Parchís .......................................................................................................................167 Javier Diez Bermúdez de Castro He implementado en Java un jugador de parchís. El objetivo es ser capaz de identificar la jugada óptima en cada momento de manera que juegue de forma "inteligente". 21. Desarrollo de un juego de naipes en JESS ..................................................................................174 Paloma Fuentes Gutiérrez Diseño de un sistema experto usando JESS. Se implementará el juego “Seises”, en una versión simplificada, con dos palos nada más y cuatro jugadores. SESIÓN 4a: Minería de datos [Lunes 22, 17-18] 22. Minería de datos y aplicaciones ...................................................................................................182 Fernando Virseda Benito, Javier Román Carrillo Aplicaciones de la minería de datos en diversos ámbitos: deportes, medicina, espaciales, gubernamentales… 23. Minería de datos sobre las pruebas de selectividad ...................................................................189 Vanessa Tejada Muñoz, Alicia Moreno Miguel Se ha realizado un análisis sobre un conjunto de datos, en concreto 18000 datos. Se han estudiado las relaciones que guardan estos datos en base a unos atributos y los casos curiosos que se dan en la relación. 24. Análisis de Conducta Mediante Minería de Datos.....................................................................201 Blanca Galego Pascual, Elena Rábanos Iruela Analizar modelos de conducta de las personas a partir de datos fisiológicos recogidos mediante la medida de sensores. 25. Evaluación de Modelos en la Predicción de la Bolsa .................................................................210 Humberto Hernández Ansorena, Rico Hario Hardjono Estudio de distintos modelos que nos permitirán obtener predicciones sobre el crecimiento de los valores en la bolsa de Nueva York. 26. Realización de un Estimador de Quinielas con un Perceptrón.................................................217 Iñigo Ucero Aristu, Raúl Sesmero Ramos Mediante la técnica de minería de datos pretendemos realizar un programa que sea capaz de estimar los resultados de una quiniela. Para simplificar el proyecto, vamos a tener en cuenta tan sólo los resultados de primera división. 27. Análisis de datos electorales .........................................................................................................225 Javier Jiménez Dorado, Rubén Gómez-Chacón Camuñas En este artículo vamos a tratar un problema de minería de datos mediante técnicas de aprendizaje supervisado y no supervisado. Se estudia un conjunto de muestras donde están representados los datos electorales de las elecciones de octubre de 2003 a la Asamblea Legislativa de la Comunidad de Madrid. El problema se divide en dos partes bien diferenciadas: Selección de mesas representativas y Análisis de la distribución del voto. Los algoritmos de aprendizaje supervisado que hemos usado han sido los árboles de decisión (decisionStump, j48 y LMT) y perceptrón multicapa. Los algoritmos no supervisados han sido EM (Expectation Maximization) y K-Medias. Al final del artículo hacemos un breve repaso teórico de los mismos. La herramienta utilizada ha sido Weka, un programa de código abierto y que implementa gran variedad de algoritmos de aprendizaje muy útiles en tareas de minería de datos. SESIÓN 4b: Minería de datos [Lunes 22, 18-19] 28. Análisis de datos en WEKA - Pruebas de selectividad ..............................................................234 María García Jiménez, Aránzazu Álvarez Sierra En este trabajo vamos a utilizar la herramienta de minería de datos WEKA para analizar el contenido de un fichero .arff, que contiene las muestras correspondientes a 18802 alumnos presentados a las pruebas de selectividad y los resultados obtenidos en las pruebas. 29. Minería de Datos aplicada a un Sitio Web .................................................................................243 Cristina Núñez Domínguez, Daniel García Arenas En este documento se hace un análisis sobre la minería de datos de uso web y su utilidad en la actualidad, siendo un proceso muy aplicado en empresas (sobre todo) debido a que con la magnitud de datos que se manejan en actualidad es importante disponer de una herramienta que extraiga información oculta de esos datos para que sean de utilidad. En un principio, este documento hace un análisis sobre la minería de datos de uso web, y en una segunda parte se hace un análisis sobre una aplicación específica de minería de datos de uso web, llamada lawerinto.com, poniendo algún ejemplo de su utilidad y funcionamiento. 30. Clasificación jerárquica de contenidos Web ..............................................................................253 Miguel María Rodríguez Aparicio, Álvaro Gascón y Marín de la Puente 31. Filtrado colaborativo y Sistemas de recomendación .................................................................261 Sergio Galán Nieto Los sistemas de recomendación basados en algoritmos de filtrado colaborativo utilizan las valoraciones de los usuarios sobre ciertos elementos del conjunto total para predecir valoraciones en el resto de los elementos y recomendar los de mayor valoración predicha. Este documento ofrece una descripción de los sistemas de filtrado colaborativo. Intenta cubrir los múltiples aspectos que comprenden: Las diversas aproximaciones estadísticas: Basados en modelo, basados en datos. También algunos métodos de evaluación, y los problemas relativos a la implementación. Ademas se presenta información acerca del uso de la librería de filtrado "Taste" que contiene implementaciones de varios algoritmos de filtrado colaborativo. Fuera de programa 32. Máquinas conscientes ...................................................................................................................269 Fernando Ortigosa Barbero, Iñaki Ayensa Posibilidad de conseguir máquinas conscientes, los requisitos que tendrían que cumplir y los avances que se han realizado hasta ahora en este campo. 33. Estudio mediante SVM, Boosting y Bootstrap de la relevancia de las regiones funcionales en la activación cerebral ....................................................................................................................277 Miguel Ángel Rodríguez Jiménez En este Trabajo se ha abordado un problema de minería de datos, en el que se realiza un aprendizaje utilizando algoritmos de búsqueda sobre un conjunto de observaciones empíricas. El objetivo se ha centrado en estudiar la relación que existe entre las activaciones cerebrales visual, motora, cognitiva y auditiva y las diferentes regiones funcionales del cerebro: cerebelo, frontal, occipital, parietal, subcortical y temporal. 34. El problema del agua y la inteligencia artificial .........................................................................292 Inés María Bebea González Las alteraciones del clima y los cambios inducidos por la acción humana afectan y afectarán los recursos de agua dulce a nivel mundial. A su vez, el acceso a los recursos hídricos en determinados territorios es sumamente difícil, llegando a causar la muerte de millones de personas. El agua es además un derecho fundamental, previo a la consecución de otros derechos y al desarrollo de los pueblos. La ingeniería civil actual y las últimas técnicas de la inteligencia artificial son herramientas conocidas y probadas en la gestión de los recursos hídricos como son las redes neuronales (NN) y la lógica difusa (fuzzy logic). ¿Por qué no aplicar la inteligencia artificial al desarrollo? 35. Sistemas basados en conocimiento con Robocode: Smarty.......................................................298 Javier Jiménez Dorado, Rubén Gómez-Chacón Camuñas En este artículo vamos a tratar un sistema de representación del conocimiento sencillo. Para ello utilizaremos la plataforma gratuita Robocode [1] El objetivo del trabajo realizado es presentar un esquema de un diseño para un robot que, partiendo de un conocimiento aprendido más la información que va adquiriendo durante el combate, sea capaz de tomar decisiones de cual es la estrategia más conveniente a utilizar en un combate individual, no por equipos. Finalmente se mostrará la explicación de una versión reducida del esquema propuesto así como los resultados. 36. Solitario ..........................................................................................................................................305 Daniel Taveira Monteiro, Rodrigo Gómez Rodriguez, David Toledo Navarro Nuestra práctica complementaria consiste en la realización de un juego, el solitario. El solitario es un juego determinista (no interviene el azar), en el que para su resolución se ha utilizado un algoritmo de búsqueda con retroceso (racktracking). Para el desarrollo del mismo se ha utilizado el lenguaje de programación java.