The "Father of Fuzzy " Lotfi A Zadhe"
Fuzzy logic was introduced by Lotfi A Zadhe. His idea was that fuzzy would model the irregularities of the natural language. He based the fuzzy theory on statistics and called it 'fuzzification'. This means that any theory could be taken from its discrete form to a continuous form looking at intervals.
Fuzzy logic is taking conventional (Boolean) logic beyond its normal scope. Conventional logic uses Boolean like methods; yes/no, on/off, truth/false to evaluate options. This could be seen as black and white. Fuzzy Logic is the answer to the grey area, which is the uncertainty between black and white.
There are many instances where computers can't match reality, this is why Fuzzy was born. It was only inevitable that this would happen. The more pressures humans place on computers to think for them selves the more the computers design will be changed to match the trains of thought of humans.
"A typical fuzzy system consists of a set of if-then rules, membership functions, and an inference procedure." (20/04/03, Pranaya)
Membership functions: (Fuzzy Subsets)
Just as there I a strong relationship between the logic of Boolean and subsets, with fuzzy logic exists a strong relationship between fuzzy logic and fuzzy subsets theory. http://www-2.cs.cmu.edu/Groups/AI/html/faqs/ai/fuzzy/part1/faq-doc-2.html
The difference with the fuzzy subsets is when testing truth and falsity of any given argument, there is the option of not only testing whether the argument is true or false as in Boolean logic, but also the ability to check to which degree of truth the argument is true. It must just be mentioned that Membership functions have the ability to be used with two-dimensional array's as opposed to one-dimensional arrays. Membership functions are set-up in two different ways either by knowledgeable people in a certain field or from sample data. http://www-2.cs.cmu.edu/Groups/AI/html/faqs/ai/fuzzy/part1/faq-doc-2.html, (1995, George j. Klir and Bo Yuan)
The standard definitions in fuzzy logic are:
truth (not x) = 1.0 - truth (x)
truth (x and y) = minimum (truth(x), truth(y))
truth (x or y) = maximum (truth(x), truth(y)) http://www-2.cs.cmu.edu/Groups/AI/html/faqs/ai/fuzzy/part1/faq-doc-2.html
As we are trying to follow human decision making with the use of fuzzy. There have been some improvements on operators and it was found that gamma is the best fit. They are easily modified to meet your goals. To improve your gamma results. The use of the Avg.-Max family will improve accuracy. http://www.fuzzytech.com/.
Inferences will be explained in Fuzzy Expert System.
There are many Applications in the world of information systems where fuzzy logic has been incorporated to improve the way some of our present systems operate. Here are a few real world examples of the influences of fuzzy.
fuzzy expert system?
This is an expert system that uses Fuzzy to aid it with its reasoning capabilities. It takes into account the membership Functions and rules as opposed to Boolean logic. These sets of rules are known as a knowledge base. With the aid of certain tools fuzzy expert systems are able to draw more then one conclusion. Inferencing is a common step within expert systems http://www-2.cs.cmu.edu/Groups/AI/html/faqs/ai/fuzzy/part1/faq-doc-2.html, (1995, George j. Klir and Bo Yuan)
3 - 4 steps to inferences.
1. Fuzzification = The apply membership functions are set against the actual data, to find out the values degree of truth. http://www-2.cs.cmu.edu/Groups/AI/html/faqs/ai/fuzzy/part1/faq-doc-4.htm
2. Inference methods = this deals with the output variable and the allocation of fuzzy subsets into these variables. 2 popular rules:
Min works to a height that equals the membership function any thing beyond this is disregarded.
Product works with the output set against the rule premise. . http://www-2.cs.cmu.edu/Groups/AI/html/faqs/ai/fuzzy/part1/faq-doc-4.htm, (1995, George j. Klir and Bo Yuan)
3. Compositions = the general formation of a new fuzzy subset with outputs after inferencing. http://ww2.cs.cmu.edu/Groups/AI/html/faqs/ai/fuzzy/part1/faq-doc-4.htm, (1995, George j. Klir and Bo Yuan)
3. Defuzzification = (optional) able to transfer the fuzzy output to Boolean like number. . http://ww2.cs.cmu.edu/Groups/AI/html/faqs/ai/fuzzy/part1/faq-doc-4.htm
To note that in most literature these steps are seen as the same thing.
There has been some advancement in inferencing. One such advancement is Fuzzy Associative Map (FAM). F.A.M was born out Neuro-fuzzy (knowledge based procedure). F.A.M just simple allows fine-tuning of the knowledge base. http://www.fuzzytech.com/, (1995,Prof green)
Example Expert System and tools for Expert System:
C Language Integrated Production System (CLIPS) was produced by NASA. FuzzyCLIPS is an extension of CLIPS, which includes fuzzy logic capabilities. It encourages development of fuzzy applications. The current version is 6.10c. http://ai.iit.nrc.ca/IR_public/fuzzy/
FuzzJ (Toolkit for Java platform)
FuzzJ is a set of Java classes that is used to develop fuzzy logic. It is capable of running on its own to set up fuzzy logic as well as working with expert systems i.e. Jess (Sandia National Laboratories). http://ai.iit.nrc.ca/IR_public/fuzzy/
Knowledge Discovery :
The definition of Knowledge Discovery
Knowledge discovery is the nontrivial extraction of implicit, previously unknown and potentially useful information from data. (William J. Frawley 1991, Gregory Piatetsky-Shapiro 1991, Christopher J. Matheus 1991)
It was already noted more then ten years ago that relevant, reliable information from data is a necessity. Michie (1990) was an expert on machine reading predicted "the next area to explode is the use of machine learning tools as a component of large-scale data analysis". He was right on the money here as Knowledge base, expert systems and Data mining are prominent features in information systems today.
Varity Search Engine
Varity is a search engine that has a unique approach to making online information available to the public. They use a very well developed Query language, which they call Varity Query Language (VQL). VQL incorporates fuzzy Search to build complex results from one-worded queries. This search engine was designed largely for the business environment. Fuzzy helps Varity to combat human err. http://www.verity.com.br/pdf/MK0366%20WP%20K2.pdf, http://www.fe.up.pt/~mgi00010/beyond.pdf
Fuzzy Search (Capabilities)
Spelling and Typographical Errors
Sounds-likes and Phonetic Searches
Stemming and Synonym Expansion
Wildcard Searches. http://www.verity.com.br/pdf/MK0366%20WP%20K2.pdf
Network Query language (NQL)
With some limitations in certain fields with the present Query languages, a Query language was needed to deal with these limitations, hence Network Query language was born. Applications with such limitations are bots and Spiders in the field of Engineering, middleware and web applications in Information Systems. Network Query Language uses fuzzy to form a sort of Artificial Intelligence. http://www.mobilein.com/NQLWhitepaper.pdf, http://www.nqltech.com/nql_datasheet.pdf,
Is Fuzzy Logic the answer to information systems, in trying to match real world scenarios or is it just another phase that shall be passed.
To answer this question one must first look at the predecessors of fuzzy logic and see if there is a practical improvement in information systems. This seems easier at first but in the world of information systems fuzzy logic is fairly new kid on the block. Fuzzy has been around for about forty odd years but at first it was just a theory of Lotfi A Zadhe. Then fuzzy logic found it self predominantly in the Engineering world and only recently moved into the business/information system sectors.
Boolean logic has been around since the beginning of computer applications development and computers themselves. The reason why is that its design is the bases of the computer. The computer operates on Binary code that is the same as Boolean logic. This means that there are two states on or off. There is no room for any half measures. Fuzzy extends Boolean here to include these half measures with the use of membership functions. The immediate idea here is to say that fuzzy is superior then Boolean and so should over and above Boolean wherever possible. This is not the case as it is proven that Fuzzy is only efficient in certain cases. In cases where there are only two options for the allocation of two arguments then Boolean logic is the right candidate.
Here is simple case study to explain fuzzy logic and impact it could have on information systems.
Objective: There is a company called AAA. AAA faces a problem, based on the amount of users and network traffic they have to allocate a certain amount of bandwidth. Use fuzzy logic to show how much bandwidth is required for AAA.
Use Appendices A
1. When a value of the 'x' axes corresponds with the membership functions of a particular graph then that rule base will be fired.
2. Membership functions for Number of Users is LOW, MED and HIGH
3. Membership functions for Amount of Network Traffic is LOW, MED and HIGH
4. Membership functions for Required Bandwidth is LITTLE, MED and LOTS
5. IF the antecedent clause of a rule contains an AND joining two sub-clauses, each is checked then the combined result of the activation is the minimum of the activations of the individual clauses.
6. IF Defuzzification is used then the centroid method will be used.
7. If rules 1,2,3 are fired simultaneously then specify outputs e1,e2 and e3 with relative activations s1,s2 and s3 then final out put would be
(e1*s1 + e2*s2 + e3*s3) / (e1+e2+e3)
1. If users are LOW then bandwidth is LOW.
2. If users are LOW and Network traffic is HIGH then bandwidth is LOTS.
3. If users are MED and Network traffic is MED then bandwidth is MED.
4. If users are HIGH then bandwidth is HIGH
Evaluation of the Required Bandwidth:
In graph A AAA has measured that presently they have 45 users on their network. 45 users have a membership on both the MED and HIGH membership. 45 users has a strong membership on MED at 0.8 and a weak membership on HIGH at 0.2.
In graph B AAA has measured that presently they have 45Mbps of Network traffic on their network. 45Mbps have a membership on both the MED and HIGH membership. 45 users has a strong membership on MED at 0.6 and a weak membership on HIGH at 0.3
These conditions fire both rules 3 and 4. Note that in rule two both sub-clauses have to be true for that rule to be fired. In this case only the second sub-clause is true so the entire rule is disregarded.