Java and C Code for MATLAB FIS Files
Have you ever wanted to develop an embedded application of
fuzzy logic system using MATLAB Fuzzy Logic Toolbox? You can
do this using one of the two solutions below.
Java Wrapper and C Implementation of FIS Inference
The code in FIS.tar is a Java/C implementation of
the FIS inference in MATLAB Fuzzy Logic
Toolbox.
This enables you to (1) use the GUI of MATLAB Fuzzy
Logic Toolbox for designing, adjusting, and visualizing membership functions
and fuzzy rules, and (2) use the wrapper to embed your fuzzy systems in
a C/Java application.
- Download the FIS.tar file.
It includes C code for running MATLAB FIS file developed by Cary
Butler along with Java wrapper developed by
Buck Surdu.
- The file FISTest.java shows how to
create an FISClass object and how to run the .fis file.
- To test the FIS stuff with the acceleration.fis file, use the
following command line:
java FISTest acceleration.fis 100.0 3000.0
Java Implementation of FIS Inference (SAM Model)
Alternatively, you can download a Java
implementation of FIS inference in Fuzzy.tar, which
contains java package, Fuzzy, as well as the
documentation (as html files, created with javadoc) for interpreting
FIS files. It supports Trapzoid and Triangular membership functions.
It also implemented Gaussian membership functions.
-
This implementation uses the SAM inference
to do rule combination and defuzzification. If only
supports FIS files with single output nodes.
-
To create new membership functions, you only need to create the new
membership function class which inherits from MembershipFunction.java.
Then in the readFile() method of FISDatabase, you have to add an if
statement to support the new type of membership function. If anyone
writes a new membership function, please e-mail to Buck
Surdu (surdu@cs.tamu.edu) so that he can modify the
FISDatabase file and send it back out.
-
This Java implementation fixed a memory leak problem of the C implementation
in FIS.tar.