February 27 , 2008
1  Outline of Topics  
Formal Languages & Their Ontological and Epistemological Commitments  
Fuzzy Logic Overview  
Fuzzy Set Theory  
IFTHEN Rules / Fuzzy Inference  
Fuzzy Controler Example  
Example Computation  
Fuzzy Logic: Pros and Cons  
2  Formal Languages & Their Ontological and Epistemological
Commitments (see pp. 166 & 463 in your textbook) 

LANGUAGE  ONTOLOGICAL COMMITMENT (types of entities in the world) 
EPISTEMOLOGICAL COMMITMENT (types of beliefs about entities) 

Propositional logic  facts  true/false/unknown  
Firstorder logic  facts, objects, relations  true/false/unknown  
Temporal logic  facts, objects, relations, times  true/false/unknown  
Probability theory  facts  degree of belief [0, 1] (probability)  
Fuzzy logic  degree of truth  degree of belief [0, 1]  
3  Fuzzy Logic Overview  
What it is  A method for classification and decision making
using a continuous scale of truthness/membership. An alternative to traditional notions of set membership. Superset of standard Boolean logic. 

History 


What it is composed of 


Usage  Gained popularity in the late 1980s, esp. in Japan, as Japanese manufacturers started applying it to various kinds of control tasks in products such as cameras, washing machines and automobiles.  
4 
Fuzzy Set Theory  
What it is  A means of specifying how well an object satisfies a vague description, using a range from 0 to 1.  
Historically  Extensions of mathematical set theory as first studied by Cantor (18451918).  
Fuzzy membership  The proposition "the Sinclair Z80 is a powerful computer " refers to an object (computer of type Z80) and classifies it into a set with other objects that can be considered/labeled "powerful".  
Notation  mPOWERFUL(Z80) = 0.1  
Examples 


Membership functions can be drawn in various
ways. In the case of computer CPU speed, for example,
the low end of the xaxis would represent kHz and the high end GHz.
5  IFTHEN Rules  
IF speed is HIGH & distance to next car is SMALL  THEN brake HARD  
IF speed is HIGH & distance to next car is MEDIUM  THEN apply MEDIUM force to brake  
IF speed is MEDIUM & distance to next car is MEDIUM  THEN apply MEDIUM force to brake  
Table representing permutations of measured variables' states 

6  Fuzzy Controler Example  
Control task  Given that we are driving and we want to maintain a safe distance between us and the cars in front, how can we determine brake force based on our own speed and the distance to the car in front?  
Create matrix / ruleset describing conditions and actions  
Represented in a Matrix 

Martix representing action to be taken in a fuzzy controller: Applied
brake force (0, 1, 2). 

Written As Rules 

1 
IF Speed is {LOW  MEDIUM} & Distance is LARGE THEN brake force = 0 

2 
IF Speed is HIGH & Distance is LARGE THEN brake force = 1 

3 
IF Speed is LOW & Distance is MEDIUM THEN brake force = 0 

4 
IF Speed is MEDIUM & Distance is MEDIUM THEN brake force = 1 

5 
IF Speed is HIGH & Distance is MEDIUM THEN brake force = 2 

6 
IF Speed is LOW & Distance is SMALL THEN brake force = 1 

7 
IF Speed is {MEDIUM  HIGH} & Distance is SMALL THEN brake force = 2 

7  Fuzzy Inference  
T(A ∧ B)  = MIN(T(A), T(B))  
T(A ∨ B)  = MAX(T(A), T(B))  
T(¬A)  = 1  T(A)  
...where T returns degree of truth (fuzzy membership)  
Mnemonic  AND = MIN , OR = MAX  
8  Example Computation (see tables below) 

Control task  specific case  Given that we are driving at 100 km/hr and there are 4 meters between us and the car in front, how hard should we hit the brakes?  
Given 


Use rules to derive fuzzy membership and pick action 


WRITTEN AS RULES  FUZZY MEMBERSHIP (see graphs below)  
1 
IF Speed is {LOW  MEDIUM} &
Distance is LARGE THEN brake force = 0 
min( (max[0, 0.6] = 0.6), 0 ) = 0 
2 
IF Speed is HIGH & Distance is LARGE THEN brake force = 1 
min[0.3, 0] = 0 
3 
IF Speed is LOW & Distance is MEDIUM THEN brake force = 0 
min[0, 0.2] = 0 
4 
IF Speed is MEDIUM & Distance is MEDIUM THEN brake force = 1 
min[0.6, 0.2] = 0.2 
5 
IF Speed is HIGH & Distance is MEDIUM THEN brake force = 2 
min[0.6, 0.2] = 0.2 
6 
IF Speed is LOW & Distance
is SMALL THEN brake force = 1 
min[0, 0.7] = 0 
7 
IF Speed is {MEDIUM  HIGH} &
Distance is SMALL THEN brake force = 2 
min( (max[0.6, 0.3] = 0.6 ), 0.7 ) = 0.6 
Pick the rule with the highest membership value  RULE 7: Brake force 2  
9  Fuzzy Logic: Pros and Cons  
Pros  Simpler to use than most alternatives for solving complex control tasks (and often performs better). Very successful industrial applications:


Cons  Need to be crafted by hand (although parameters can be subsequently tuned later by automatic learning techniques). May not scale well to large rulesets (i.e. same limitation as other kinds of rulebased knowledgebases). 

10  Recent Usage of Fuzzy Logic  
Measuring the pulse and respiration of seniors 
Researchers in the United Kingdom and the United States are developing prototype systems that incorporates fuzzy logic techniques into sensor technology for monitoring the movements, capturing the sleep patterns, or measuring the pulse and respiration of people.  
Benefits  Fuzzy logic would enable such systems to reach better conclusions about the vague information that is picked up by sensors. For example, the system would be capable of determining that a sound is actually a door slamming and not someone falling, as a result of the computational mathematics of fuzzy logic, and would ultimately generate fewer false alarms.  
The project began in January 2008  Dr. Simon Coupland, research fellow at the De Montfort University Center for Computational Intelligence in Leicester, will spend the next four months working in the United States with Jim Keller, a fuzzy logic expert at the University of Missouri's Center for Eldercare and Rehabilitation Technology. Such a system could still be five years away, due to the extensive trials it must undergo and the approval that will be needed.  
News article in silicon.com  Fuzzy Logic Tech Project to Help the Elderly,(01/03/08) by Tim Ferguson  