Changes in version 3.5_b03
The hardware synthesis tool xfsg has been updated in order to adapt Simulink model syntax
to Matlab versions compatible with Vivado 2018.2, as well as to improve the routing of connection lines
appearing in this model.
Changes in version 3.5 with respect to 3.3
The graphical user interface of Xfuzzy now shows the specifications by means of
drop-down structures, so that it is possible to select the complete system or any of its rule
bases as the active specification on which the different tools will act.
The time series prediction tool, xftsp, has been integrated into the environment, and can
be accessed through the Tuning menu of the Xfuzzy's main window.
A Save Image option, which allows to save the graphic representation in a JPEG file,
has been added in the File menu of xfplot.
The hardware synthesis tool xfvhdl has been updated to generate synthesis files for Xilinx's
ISE and Vivado FPGA design environments.
All tools in the Xfuzzy environment can be invoked from the command line.
Documentation and teaching material:
The Xfuzzy documentation has been updated and completed, so that it describes the
functionality of all the tools that make up the environment.
As part of the distribution of Xfuzzy, examples have been included illustrating the
use of the different facilities in the environment independently (Tools), as well as in
combination with other IT tools for the development of different applications (Apps).
In the Xfuzzy website there is also a series of tutorials that detail the use of
the hardware tools provided by the environment to apply different methodologies for the
development of fuzzy controllers on Xilinx FPGAs.
The language of the system windows used to locate files and directories has been unified,
so that all the legends appear in English.
Fixed a bug that prevented editing function packages with the xfpkg tool.
Several errors in the execution of certain identification algorithms used by the xfdm tool
have been debugged.
The configuration directives for xftsp tool that had no use have been removed.
Fixed an error that presented the xfsim tool when loading the model of the plant due to
problems with the search path of the file.
The c ++ code generated by the xfcpp tool has been modified to make it compatible with gcc
compilers available in different Linux distributions and with Windows Visual Studio compiler
Changes in version 3.3 with respect to 3.0
Two new hardware synthesis tools have been included into the environment:
Xfvhdl translates the specification of a fuzzy system written in XFL3 into a VHDL description
that can be synthesized and implemented on a programmable device or an application specific
Compared to previous releases of hardware synthesis tools included in Xfuzzy, the major
novelties of the new version of xfvhdl are:
It allows direct implementation of hierarchical fuzzy systems.
An improved functionality in many components of the VHDL library has been included in this new
version. The arithmetic circuits have been modified to generate the saturation regions for membership
functions shapes of type "Z" and "S". A new block that implements the first-order Takagi-Sugeno
defuzzification method has been introduced. The library also contains a set of new crisp blocks
that implement general purpose arithmetic (addition, subtraction, multiplication or division
functions) and logic operations (selector).
VHDL descriptions of library components have been parameterized by "generic" VHDL statements to
facilitate the design process automation.
An improved graphical interface has been developed to include the new functionality of the tool.
Xfsg translates the XFL3 specification of a fuzzy system into a Simulink model that includes
components of the XfuzzyLib library. In combination with FPGA implementation tools
from Xilinx and simulation facilities from Matlab, this tool provides a powerful design
environment for synthesis of fuzzy inference systems on Xilinx's FPGAs.
Changes in version 3.0 with respect to 2.X
The environment has been completely reprogrammed using Java.
A new specification language, called XFL3, has been defined.
Some of the improvements with respect to XFL are the following:
A new kind of object, called
operator set, has been
incorporated to assign different functions to the fuzzy operators.
which describe more complex relationships
among the linguistic variables, have also been included.
User can now extend not only the functions assigned to
fuzzy connectives and defuzzification methods, but also to membership functions
and linguistic hedges.
The edition tool can now define hierarchical rule bases.
The 2-D and 3-D representation tools
do not require gnuplot.
A new monitor tool has been added to study the system
The learning tool includes many new learning algorithms.
Known bugs in version 3.0
The file selection window throws
a NullPointerException when executing Xfuzzy under Ms-Windows and Java 1.4.
(This bug can be avoided using an older version of the Java environment, like
1.2 or 1.3)
(xfedit) Membership functions edition sometimes provokes the error "Label already exists".
(xfedit) Rules bases edition produces an error upon applying the modifications twice.
(xfedit, xfmt) The hierarchical structure of the system is not drawn correctly when an internal variable is used both
as input to the rulebase and as output variable.
(xfsim) The end conditions upon the system input variables are not correctly verified.
(tools) The command-mode execution of the different tools does not admit absolute path to identify files.
(XFL3) The "definedfor" clause is not verified by the defuzzification methods.
(xfcpp) Some compilers do not admit that the methods of the class Operatorset be called "and", "or" or "not".
(xfsl) The clustering process may generate new membership functions whose parameters do not comply with the
restrictions due to rounding errors.
(tools) Sometimes some windows of the tools are not drawn correctly and it is necessary to modify the size of
these windows to force a correct representation.