FuzzyLib - Library Functions for Fuzzy Controller
- Fuzzy library functions for Borland C++ applications on a PC
running with DOS and Windows
- Algorithms for fuzzification, inference and defuzzification in
double precision
- The number of fuzzy variables and rules is nearly unlimited
- Fuzzy objects are combinable arbitrarily
- Configuration of a fuzzy object is performed by a fuzzy
description file in text format
FuzzyLib offers an efficient programming of flexible fuzzy
operations, i.e. for control, supervision or decision, with a PC in
between the shortest possible time. Your "C++" project is
extended by a fuzzy library and a few lines of source code to
achieve the complete functionalism of the FuzzyLib. The fuzzy sets,
the fuzzy linguistic variables as well as the fuzzy rules are read
from a description file in an ASCII format only during the run time
of your program. With this the simplest possible handling together
with a maximum of flexibility is guaranteed.The result of each
description file is a fuzzy object created dynamically.
FuzzyLib makes use of the "Min/Max"- and
"Max/Prod"- operators for the inference as well as a
modified "center-of-area"- method for the defuzzification.
Alternative operators are in preparation. The fuzzy object can
handle an arbitrary number of input and output variables. The fuzzy
sets are adjustable by polygonal lines with a maximum of 32000 base
points. Restrictions are only defined by the available memory of
your computer and by the desired execution time. All the numerical
operations are carried out using double precision. A typical
execution time for a fuzzy knowledge base with 3 linguistic
variables and 9 rules is approximately 1 ms in case a PC 486DX2-66
is used.
Besides the FuzzyLib library the standard shipment includes a
Windows program supporting a mouse oriented graphic editor to design
a fuzzy description file (demo version of FCTool).
The library is created with the "Borland C++"
development system. Up to now the FuzzyLib was successfully applied
on a PC running with either DOS or MS-Windows. It requires at least
a PC 386 with numeric coprocessor.
Using DOS and the "Borland C++" development system a
3-dimensional graphic representation of two input variables and one
output variable is available on the screen. Two rotation angles are
adjustable either interactively by the user or by the calling
program. A version of this graphic module running with MS-Windows is
in preparation. |