I'd like to know about the best method to defined a fuzzy rule base for fuzzy logic controllers, most of references said experience knowledge is the best way, but what are the other parameters?
There are many methods reported in the literature to create a fuzzy model from the input–output data. The first method to create fuzzy systems from input/output data is a simple loop-up table method where each input/output data pair generates one fuzzy rule. Other methods use gradient descent, least square, PSO, or other optimization algorithms to calibrate the parameters in the fuzzy system.
You said correctly, but you know fuzzy logic controller is not reliable and one of the most important factor in this challenge is rule base. How we can reduce this challenge to design a more reliable fuzzy controller?
ANFIS in Matlab is really the best. To construct the base system, you use genfis1 (using a grid partition on the data) or genfis2 (using subtractive clustering), but try various radii and bounds to give a good start up for the neural training.
Thank's for your answer, You said correctly experience knowledge has an important role but I also would like to find the other way to design rule base with the higher reliability.
Basic question is - do you have sample vectors (patterns) of proper input-output ? If you have, then there are at least 2 techniques:
(1) Define fuzzy sets to cover the range of each input/output variable. Convert each input-output pattern vector to a rule. Then merge these rules to get a smaller set.
(2) Construct a fuzzy neural network. E.g. classic fuzzy computational structure, with parameters tuned by training in a way known from neural networks.
BTW you can also combine (1) and (2).
If these ideas suit your needs I can point to some references.
If you don't have samples, the expert knowledge sounds like the only solution.
I confirm that the best way to generate a fuzzy system is the gained experience. Moreover you can select different shapes of sets (triangular, trapezoidal, gaussian). The triangular and trapezoidal shapes have sharp course, but the most real systems show a smooth behavior. Most natural phenomena are not sharp. So it is proper and would be more natural in the first steps to select shapes with smooth course. On the other hand if you want to implement the fuzzy algorithm as a microprocessor program, it is easier to use triangular or trapezoidal sets in order to save computational time rather to use more complicated shapes.
uzzy logic was initiated in 1965 by Lotfi A. Zadeh, professor in computer science at the University of California in Berkeley. Since then Fuzzy logic has emerged as a powerful technique for the controlling industrial processes, household and entertainment electronics, diagnosis systems and other expert systems. Rapid growth of this technology has actually started from Japan and then spread to the USA and Europe. Most applications of Fuzzy logic are in the area of control.
Fuzzy logic controller system is a system that examines the desired response (input), process this input and attempt to acheive a good output response. A fuzzy controller can be broken down into three main processes. The first of these is the fuzzification, this uses defined membership functions to process the inputs and to fuzzify them. These fuzzified inputs are then used in the second part, the rule-based inference system. This system uses previously defined linguistic rules to generate a fuzzy response. The fuzzy response is then defuzzified in the final process: defuzzification. This process will provide a real number as an output.