cambiar a curso:   2019-20   2021-22


Grado en Ingeniería Informática


TRABAJOS FIN DE GRADO
curso: 2020-21

DISEÑO INCREMENTAL AUTOMÁTICO DE CONECTIVOS DIFUSOS SOBRE EL ENTORNO LATSIMMAKER


Tecnologías Específicas

Computación
 


Descripcion y Objetivos

FLOPER y LATSIMMAKER son, respectivamente, un entorno de programación lógica difusa y un editor gráfico de relaciones de similitud y retículos difusos que han sido desarrollados en la UCLM a partir de otros 11 proyectos fin de carrera y/o trabajos fin de grado que preceden al que proponemos ahora. Mientras FLOPER es capaz de ejecutar, depurar, calibrar y optimizar programas difusos (mediante un pre-proceso de los mismos que los traduce a código Prolog estándar) sobre cualquier plataforma Prolog, LATSIMMAKER extiende la interfaz gráfica de FLOPER para poder diseñar y manipular gráficamente distintas definiciones de "relaciones de similitud" y "grados de verdad" más allá del caso clásico de cierto y falso, tal y como exige el nuevo contexto de programación basado en lógica difusa.

Recientemente se ha incorporado sobre esta herramienta, totalmente implementada con SWI-Prolog, la posibilidad de verificar automáticamente diversas propiedades formales sobre los valores que componen estos retículos, así como sobre los operadores o conectivos difusos que los manipulan (carácter completo, monotonía, adjunción, etc.), incluyendo opciones de clasificación y generación automática de los mismos. Esta última capacidad del sistema todavía es muy limitada en tanto en cuanto la complejidad computacional del algoritmo subyacente es exponencial y actualmente no es posible trabajar de forma eficiente con más de 4 valores de verdad. 

En la presente propuesta pretendemos mejorar la generación automática de nuevos conectivos difusos a partir de otros conocidos tal que su combinación les permita verificar propiedades complejas (y muy útiles en el marco de los lenguajes lógicos difusos) como son las de distributividad, adjunción o permutabilidad, entre otras. Para ello, el proceso de generación se realizará de forma incremental almacenando parcialmente las tablas de verdad de los nuevos conectivos sobre estructuras de datos arborescentes (en vez de lineales) cuyas ramas podrán podarse de forma prematura en cuanto se detecte que alguna de las propiedades formales requeridas deje de satisfacerse, lo que incrementará notablemente la eficienca y el ahorro de memoria del sistema para poder manipular retículos realistas con varias decenas de nodos.  

 


Metodología y Competencias

Metodología:

Se deberán tener conocimientos de programación en Prolog y se aconseja haber cursado las asignaturas de Lógica y Programación Declarativa. El proyecto se iniciará con una revisión de la bibliografía más relevante sobre el tema y se continuará con la fase de implementación sobre las plataformas FLOPER y/o LATSIMMAKER.

Más concretamente, la metodología y plan de trabajo común que se empleará en éste y otros TFG que se desarrollen de forma simultánea sobre los entornos FLOPER y LATSIMMAKER, se basará en las siguientes fases de actuación:

• Fase de análisis. Cada tarea comienza por un estudio de los requisitos que impone su desarrollo, en base al conocimiento previo y análisis de nuevas informaciones, evitando solapamientos entre las actividades.

• Fase de modelado y desarrollo. Se investiga en los modelos que configuran el soporte de cada una de las herramientas de partida, se ponen a punto cada uno de los desarrollos parciales de cada actividad y se revisa la definición inicial respecto a los resultados obtenidos.

• Fase de implementación. Para acercarse al resultado final, se incorporan los resultados obtenidos en tareas relacionadas y a continuación se procede a la implementación de prototipos que finalmente se integrarán sobre  FLOPER y/o LATSIMMAKER, incluyendo su versión on-line. Esta fase se completa con el ensayo de diferentes casos de prueba que permitan evaluar empíricamente las prestaciones de la aplicación resultante.

 

Competencias:

Se trabajarán, con distinta profundidad, las siguientes competencias de la intensificación de computación:

  • [CM2] Capacidad para conocer los fundamentos teóricos de los lenguajes de programación y las técnicas de procesamiento léxico, sintáctico y semántico asociadas, y saber aplicarlas para la creación, diseño y procesamiento de lenguajes.
  • [CM3] Capacidad para evaluar la complejidad computacional de un problema, conocer estrategias algorítmicas que puedan conducir a su resolución y recomendar, desarrollar e implementar aquella que garantice el mejor rendimiento de acuerdo con los requisitos establecidos.
  • [CM5] Capacidad para adquirir, obtener, formalizar y representar el conocimiento humano en una forma computable para la resolución de problemas mediante un sistema informático en cualquier ámbito de aplicación, particularmente los relacionados con aspectos de computación, percepción y actuación en ambientes o entornos inteligentes.
  • [CM7] Capacidad para conocer y desarrollar técnicas de aprendizaje computacional y diseñar e implementar aplicaciones y sistemas que las utilicen, incluyendo las dedicadas a extracción automática de información y conocimiento a partir de grandes volúmenes de datos.

 

 

 

 

 


Medios a utilizar

Todo el material y medios necesarios para ejecutar el TFG se encuentra disponible en la ESIIAB. Hardware: PC. Software: Compiladores y entornos de programación de Prolog y Java.

 


Bibliografía

Artículos especializados en el tema abordado, todos disponible en la ESIIAB y/o en internet. Libros y manuales de programación declarativa,  lenguajes de programación y librerías específicas. Proyectos fin de carrera y trabajos fin de grado precedentes a éste (relativos al desarrollo de los entornos FLOPER y LATSIMMAKER) y realizados por José Manuel Abietar, Pedro José Morcillo, Gustavo Valiente, Carlos Vázquez, Maria del Señor Martínez, Ramón Luján, José Antonio Riaza, Félix Mendieta, Javier Sánchez, Lorenza Carrasco y Jesús Pérez. Los tutores proporcionarán copias de los mismos al estudiante. Otros documentos:

J. Abiertar, P. Morcillo, G. Moreno. Designing a Software Tool for Fuzzy Logic Programming. Proceedings of the International Conference on Computational Methods in Science and Engineering 2007 (ICCMSE 2007): Volume 2, parts A and B. 2007.

F. Formato, F. Arcelli. A similarity-based resolution rule. Int. J. Intelligent Systems,,17(9):Pages 853-872, 2002.

G. Gerla, F. Arcelli, F. Formato. Similitude-based unication as a foundation of,fuzzy logic programming. Proc. of Int. Workshop of Logic Programming and Soft,Computing, 1996.

J.A. Guerrero, M.S. Martínez, G. Moreno, C. Vázquez. Designing Lattices of Truth Degrees for Fuzzy Logic Programming Environments. Proc. of 2015 IEEE Symposium Series on Computational Intelligence: Symposium on Foundations of Computational Intelligence (2015 IEEE-SSCI-FOCI), Cape Town, South Africa, December 7-10, 2015. Pages 995--1004, IEEE. Available: http://dx.doi.org/10.1109/SSCI.2015.145. 2015.

J.A. Guerrero, F. Mendieta, G. Moreno, J. Penabad, J.A. Riaza. Testing Properties of Fuzzy Connectives and Truth Degrees with the LatticeMaker Tool. Proc. of 2017 IEEE Symposium Series on Computational Intelligence: Symposium on Foundations of Computational Intelligence (2017 IEEE-SSCI-FOCI), Hawai, USA, December 7-10, 2015. Pages 995--1004, IEEE. Available: http://dx.doi.org/10.1109/SSCI.2015.145. 2015.

J.A. Guerrero, G. Moreno, J.A. Riaza, J. Sánchez. Smart Design of Similarity Relations for Fuzzy Logic Programming Environments. Proc. of the 2018 IEEE Symposium Series on Computational Intelligence,  Symposium on Foundations of Computational Intelligence, (2018 IEEE-SSCI-FOCI), Bangalore, India, November 18-21, 2018. Pages 1-8, IEEE (in Press). 2018

P. Julian, G. Moreno, J. Penabad. On Fuzzy Unfolding: A Multi-adjoint Approach. Fuzzy Sets and Systems, Volume 154, Pages 16-33. Elsevier Science(Amsterdam). Available doi 10.1016/j.fss.2005.03.013. 2005.

P. Julián, G. Moreno, J. Penabad. Operacional/Interpretive Unfolding of Multi-Adjoint Logia Programs. Journal of Universal Computer Science. Vol: 12, Nº 11, pp. 1679-1699. Graz ( Austria ). ISSN: 0948-69X, Online Edition: ISSN 0948-6968. Available doi 10.3217/jucs-012-11-1679. 2006.

P. Julián, G. Moreno, J. Penabad, C. Vázquez. A Fuzzy Logic Programming Environment for Managing Similarity and Truth Degrees. Proc. of eedings XIV Jornadas sobre Programación y Lenguajes, PROLE'14, Cadiz, Spain, September 16-19. Electronic Proceedings in Theoretical Computer Science, Pages 71-86. Available doi 10.4204/EPTCS.173.6 2014.

P. Julián, G. Moreno, J. Penabad, C. Vázquez. A Declarative Semantics for a Fuzzy Logic Language Managing Similarities and Truth Degrees. Proc. of the 10th International Symposium on Rule Technologies: Research, Tools, and Applications, RuleML 2016, Stony Brook, NY, USA, July 6-9. Lecture Notes in Computer Sciences 9718, pp 68-82. Springer-Verlag. Available doi 10.1007/978-3-319-42019-6_5 2016.

P. Julián-Iranzo, G. Moreno, J. Penabad. Thresholded Declarative and Fixpoint Semantics for a Fully Integrated Fuzzy Logic Language. Journal of Log. and Alg. Methods in Programming, Volume 93, Pages 42-67. Elsevier. 2017.

P. Julián, G. Moreno, C. Vázquez. Similarity-Based Strict Equality in a Fully Integrated Fuzzy Logic Language. Proc. of 9th International Symposium on Rule Technologies: Foundations, Tools, and Applications, RuleML 2015, Berlin, Germany, August 2-5. Lecture Notes in Computer Sciences 9202, pp 193-207. Springer-Verlag. Available doi 10.1007/978-3-319-21542-6_13. 2015.

J. Lloyd, Foundations of Logic Programming, Springer-Verlag, Berlin, 1987, second edition.

R. Luján, G. Moreno, C. Vázquez. Towards a Fuzzy Logic Environment for Android. Proc. of the Eighth  International Conference on Future Computational Technologies and Applications, Future Computing 2016, Rome, Italy, March 20-24. Pages 21-27. ISSN: 2308-3735. ISBN: 978-1-61208-461-9 2016.

J. Medina, M. Ojeda-Aciego, and P. Vojtáš. Similarity-based Unification: a multi-adjoint approach. Fuzzy Sets and Systems, Elsevier, 146:43–62, 2004.

P. Morcillo, G. Moreno. Programming with Fuzzy Logic Rules by Using the FLOPER Tool. Proc. of 2nd Intl Symposium on rule Interchange and aplications, (RuleML'08), Orlando, U.S.A. October 30-31. Lecture Notes in Computer Sciences 5321, pp 119-126. Springer-Verlag. 2008.

P. Morcillo, G. Moreno, J. Penabad, C. Vázquez. A practical management of fuzzy truth-degrees using FLOPER. LNCS Lecture Notes in Computer Science ("Semantic Web Rules"). Volume 6403. Pages 119-126. ISSN: 0302-9743, ISBN: 978-3-642-16288-6. Springer-Verlag. 2010.

G. Moreno, C. Vázquez. Fuzzy Logic Programming in Action with FLOPER. Journal of Software Engineering and Applications, April 2014, Volume 7 (N. 4), Pages 273-298. Scientific Research. ISSN print 1945-3116, ISSN Online: 1945-3124. Available doi 10.4236/jsea.2014.74028 2014.

M.I. Sessa . Approximate reasoning by similarity-based sld resolution. Theoretical Computer Science, 275(1-2): Pages 389-426. Elsevier. 2002.

M.I. Sessa, F. Formato, G. Gerla. Similarity-based unication. Fundamenta Informaticae, 41(4):Pages 393-414, 2000.

M.I. Sessa V. Loia, S. Senatore. Similarity-based sld resolution and its implementation in an extended prolog system. Proc. of 10th IEEE Int. Conference on Fuzzy Systems (FUZZ-IEEE'01). Pages 650-653, 2001.

P. Vojtáš and L. Paulík. Soundness and completeness of non-classical extended SLD-resolution. In R. Dyckhoff et al, editor, Proc. ELP’96 Leipzig, pages 289–301. LNCS 1050, Springer Verlag, 1996.

 


Tutores


MORENO VALVERDE, GINES DAMIAN
GUERRERO ABENZA, JUAN ANTONIO
 

Alumno


ALFARO MARTÍNEZ, JUAN ANTONIO