Notas de la versión 3.5

Cambios en la versión 3.5_b03

  • Nueva Funcionalidad:
    1. La herramienta de síntesis hardware xfsg ha sido actualizada para adaptar la sintaxis del modelo Simulink a las versiones de Matlab compatibles con Vivado 2018.2 y para mejorar el trazado de las líneas de conexión que aparecen en este modelo.

  • Cambios en la versión 3.5 con respecto a la 3.3

  • Nueva Funcionalidad:
    1. La interfaz gráfica de Xfuzzy muestra ahora las especificaciones mediante estructuras desplegables, de forma que es posible seleccionar el sistema completo o cualquiera de sus bases de reglas como la especificación activa sobre la que actuarán las distintas herramientas.

    2. Se ha integrado en el entorno la herramienta de predicción de series temporales, xftsp, a la que puede accederse a través del menú Tuning de la ventana principal de Xfuzzy.

    3. Se ha añadido en el menú File de xfplot la opción Save image, que permite guardar la representación grafica en un fichero JPEG.

    4. La herramienta de síntesis hardware xfvhdl ha sido actualizada para que genere ficheros de síntesis para los entornos de diseño de FPGAs ISE y Vivado de Xilinx.

    5. Todas las herramientas del entorno Xfuzzy pueden ser invocadas desde la línea de comandos.

  • Documentación y material didáctico:
    1. Se ha actualizado y completado la documentación del entorno Xfuzzy, de forma que describa la funcionalidad de todas las herramientas que lo integran.

    2. Se han incluido, como parte de la distribución de Xfuzzy, ejemplos de uso de las distintas facilidades del entorno de forma independiente (Tools), así como en combinación con otras herramientas informáticas para desarrollar diferentes aplicaciones (Apps).

    3. En la página web de Xfuzzy se encuentran disponibles asimismo una serie de tutoriales que detallan el uso de las herramientas de sistesis hardware del entorno para aplicar distintas metodologías de desarrollo de controladores difusos sobre FPGAs de Xilinx.

  • Problemas corregidos:
    1. Se ha unificado el idioma de las ventanas del sistema utilizadas para localizar archivos y directorios, de forma que todas las leyendas aparezcan en inglés.

    2. Se ha corregido un fallo que impedía editar paquetes de funciones con la herramienta xfpkg.

    3. Se han depurado varios errores en la ejecución de determinados algoritmos de identificación utilizados por la herramienta xfdm.

    4. Se han eliminado las directivas de configuración de la herramienta xftsp que no tenían uso.

    5. Se ha corregido un error que presentaba la herramienta xfsim al cargar el modelo de la planta por problemas con el camino de búsqueda del fichero.

    6. Se ha modificado el código c++ generado por la herramienta xfcpp para hacerlo compatible con los compiladores gcc disponibles en distintas distribuciones de Linux y con el compilador de Visual Studio para Windows.


  • Cambios en la versión 3.3 con respecto a la 3.0

  • Se han incluido en el entorno dos nuevas herramientas de síntesis hardware:
    1. Xfvhd traslada la especificación de un sistema difuso escrita en XFL3 en una descripción VHDL que puede ser sintetizada e implementada sobre un dispositivo programable o como un circuito integrado para aplicaciones específicas.

      Comparada con las versiones previas de las herramientas de síntesis hardware incluidas en Xfuzzy, las principales novedades de la nueva versión de xfvhdl son:

      • Permite la implementación directa de sistemas difusos jerárquicos.

      • Se ha mejorado la funcionalidad de muchos de los componentes de la librería XHDL incluida en esta nueva versión. Los circuitos aritméticos han sido modificados para que generen las regiones de saturación para funciones de pertenencia de tipo "Z" y "S". Se ha introducido un nuevo bloque que implementa el método de defuzzificación Takagi-Sugeno de primer orden. La librería incluye también nuevos bloques crisp que implementan funciones aritméticas de propósito general (suma, resta, multiplicación y división) y operaciones lógicas (selector).

      • Las descripciones VHDL de la librería de componentes han sido parametrizadas mediante sentencias VHDL de tipo "generic" con objeto de facilitar la automatización del proceso de diseño.

      • Se ha desarrollado una interfaz gráfica mejorada para incluir la nueva funcionalidad de la herramienta.

    2. Xfsg traslada la especificación XFL de un sistema difuso en un modelo Simulink que incluye componentes de la librería XfuzzyLib. En combinación con las herramientas de implementación de FPGAs de Xilinx y las facilidades de simulación de Matlab, esta herramienta proporciona un potente entorno para la síntesis de sistemas de inferencia difusos sobre FPGAs de Xilinx.


    Cambios en la versión 3.0 con respecto a la 2.X

    1. El entorno ha sido completamente reprogramado usando Java.

    2. Se ha definido un nuevo lenguaje de especificación de sistemas difusos, XFL3. Algunas de las mejoras con respecto a XFL son las siguientes:

      1. Se ha incorporado una nueva clase de objeto, llamado "operator set", para asignar funciones diferentes a los operadores difusos.

      2. Se han incluido también modificadores lingüísticos (Linguistic hedges) que permiten describir relaciones más complejas entre variables lingüísticas.

      3. El usuario puede ahora extender no sólo las funciones asignadas a los conectivos difusos y a los métodos de defuzzificación sino también las funciones de pertenencia y los modificadores lingüísticos.

    3. La herramienta de edición permite ahora definir bases de reglas jerárquicas.

    4. Las herramients de representación en 2-D y 3-D no requieren el uso de gnuplot.

    5. Se ha incorporado una  nueva herramienta de monitorización para estudiar el comportamiento del sistema.

    6. La herramienta de ajuste incluye muchos nuevos algoritmos de aprendizaje.


    Problemas detectados en la versión 3.0

    1. La ventana de selección de ficheros provoca una excepción al ejecutar Xfuzzy sobre MS-Windows con la versión 1.4 de Java. (Este error puede evitarse utilizando versiones  más antiguas del entorno Java, como la 1.2 o 1.3)

    2. (xfedit) La edición de funciones de pertenencia provoca a veces el error "Label already exists".

    3. (xfedit) La edición de bases de reglas da error al aplicar las modificaciones dos veces.

    4. (xfedit, xfmt) La estructura jerárquica del sistema no se dibuja correctamente cuando una variable interna se utiliza como entrada de una base de reglas y como variable de salida.

    5. (xfsim) Las condiciones de fin sobre las variables de entrada del sistema no se verifican correctamente.

    6. (tools) La ejecución en modo comando de las distintas herramientas no admite caminos absolutos para identificar los ficheros.

    7. (XFL3) La utilización de un método de defuzzificación no verifica la cláusula "definedfor".

    8. (xfcpp) Algunos compiladores no admiten que los métodos de la clase Operatorset se denominen "and", "or" o "not".

    9. (xfsl) El proceso de clustering a veces genera nuevas funciones de pertenencia cuyos parámetros no cumplen las restricciones por errores de redondeo.

    10. (tools) En ocasiones algunas ventanas de las herramientas no se dibujan correctamente y es necesario modificar el tamaño de estas ventanas para forzar una representación correcta.

  •  

    Para comentarios, sugerencias, notificación de bugs, etc. contacte con nosotros en:   xfuzzy-team@imse-cnm.csic.es

    ©IMSE-CNM 2020