How to use the Adaptive Fuzzy System========================================= 1. Introduction 2. Starting the program 3. Membership functions 4. Configuration file 5. Pattern files 6. Working with the tool 7. Training, verification and results 8. Local search ========================================= 1. IntroductionFuzzySys is a fuzzy rule-based modeling tool that is equipped with adaptive capabilities. It is a standalone Windows based application having the necessary user interface.
2. Starting the programThe program can be started in the same way as any Windows based application by double clicking at the executable file wherever it is using Windows explorer or My computer.
3. Membership functionsThe system uses LR-membership functions. A membership function is represented using four numbers in one line as shown below: a- a1 a+ TypIndx The range [a-, a+] is the support and a1 is the kernel of the membership function. TypIndx is an integer index that specifies the shape of the function among those that are hard-coded in the modeling system. The indices corresponding to the functions are shown in the table below: =========|===================== TypIndx | Shape =========|===================== 0 | Triangular 1 | Bell-shaped 2 | Dome-shaped 3 | Inverted-Cycloid 4 | Top-hat ===============================
4. Configuration fileFuzzySys needs a configuration file (*.cfg) as a first requirement. The structure of the configuration file is shown in the following example: *********************************************************************** ***Fuzzy System Configration File*** C:\fuzzy\test\test.cfg The Test Problem C:\fuzzy\test\test.pat C:\fuzzy\test\Testver.pat 2 Number Of Inputs 5 3 Number Of Input Regions 0.0000 0.0000 2.5000 0 0.0000 2.5000 5.0000 0 2.5000 5.0000 7.5000 0 5.0000 7.5000 10.0000 0 7.5000 10.0000 10.0000 0 0.0000 0.0000 5.0000 0 0.0000 5.0000 10.0000 0 5.0000 10.0000 10.0000 0 2 Minimum Required Data for Training One Rule 0.2000 Minimum Treshold for Degree Of Fulifillment 0 Inference Index (0 = Product, anyother = Minimum) 0 Output Signal Index (0 = Crisp, anyother = Fuzzy) 0 Middle Number for inpMembfuncs (0=UseInput, anyother=Calculate) 0 AutoStartLocalSearch (0 = Off, anyother = On) 1 TrainingMethod (0 = WeightedCounting, 1 = LeastSquares) 0 Defuzzification (0 = Centroid, 1 = Maximum) 0.050 ToleranceTarget ***********************************************************************
The information on each line must be consistent with the required format. The information on some of the lines is explained below: Line1 --> anything can be written for identification Line2 --> the title of the problem Line3 --> [path +] filename for training pattern Line4 --> [path +] filename for verification pattern Line5 --> number of input parameters Line6 --> number of membership functions on the domain of each input Line7 to --- The input membership functions each on one line (their number must be consistent with the numbers specified on line 6) Below the input membership functions all the parameters are self explanatory.
If there is no already prepared configuration file, a template can be generated using the menu command File/Save CFG file as. This template can then be edited as required using another menu command Edit/CFG file (Shift+F1). The parameters can also be altered during run time using the edit fields and combo-boxes on the main form. Two things, however, must be kept in mind: - Any modification in the configuration during runtime is not available for later use until it is saved using the menu command File/Save CFG file as. - A configuration file that is edited using the memo (or Shift+F1) is not loaded to the FuzzySys system unless it is reopened using the function key F1 or the Open button or the menu command File/Open Cfg File.
5. Pattern filesIn the most general case that involves automatic learning of rules and verification, two pattern files are needed: training and verification patterns. The files containing both patterns have the same format. The first line of a pattern file should contain the number of examples (and optionally the number of inputs and output). The rest of the lines should contain the inputs and then the corresponding output separated by space/s. The pattern file that is to be used for training or verification can be specified in the configuration file (as shown above) or can be selected using the runtime browser in the main form. To be completed soon: 6. Working with the tool7. Training, verification and results8. Local search
Comments to: abebe@ihe.nl <Abebe Andualem Jemberie> OR sol@ihe.nl <Dimitri P. Solomatine> Subject: FuzzySys |