Alexander Mathews Yuki Osada Perry Brown 1 Fuzzy Logic
Slide 2
Outline 2 Fundamental fuzzy concepts Fuzzy propositional and
predicate logic Fuzzification Defuzzification Fuzzy control systems
Types of fuzzy algorithms Applications of fuzzy logic
Slide 3
Introduction 3 Fuzzy concepts first introduced by Zadeh in the
1960s and 70s Traditional computational logic and set theory is all
about true or false zero or one in or out (in terms of set
membership) black or white (no grey) Not the case with fuzzy logic
and fuzzy sets!
Slide 4
Basic Concepts 4 Approximation (granulation) A colour can be
described precisely using RGB values, or it can be approximately
described as red, blue, etc. Degree (graduation) Two different
colours may both be described as red, but one is considered to be
more red than the other Fuzzy logic attempts to reflect the human
way of thinking
Slide 5
Terminology 5 Fuzzy set A set X in which each element y has a
grade of membership X (y) in the range 0 to 1, i.e. set membership
may be partial e.g. if cold is a fuzzy set, exact temperature
values might be mapped to the fuzzy set as follows: 15 degrees 0.2
(slightly cold) 10 degrees 0.5 (quite cold) 0 degrees 1 (totally
cold) Fuzzy relation Relationships can also be expressed on a scale
of 0 to 1 e.g. degree of resemblance between two people
Slide 6
Terminology (contd) 6 Fuzzy variable Variable with (labels of)
fuzzy sets as its values Linguistic variable Fuzzy variable with
values that are words or sentences in a language e.g. variable
colour with values red, blue, yellow, green Linguistic hedge Term
used as a modifier for basic terms in linguistic values e.g. words
such as very, a bit, rather, somewhat, etc.
Slide 7
Formal Fuzzy Logic 7 Fuzzy logic can be seen as an extension of
ordinary logic, where the main difference is that we use fuzzy sets
for the membership of a variable We can have fuzzy propositional
logic and fuzzy predicate logic Fuzzy logic can have many
advantages over ordinary logic in areas like artificial
intelligence where a simple true/false statement is
insufficient
Slide 8
Traditional Logic 8 Propositional logic: Propositional logic is
a formal system that uses true statements to form or prove other
true statements There are two types of sentences: simple sentences
and compound sentences Simple sentences are propositional
constants; statements that are either true or false Compound
sentences are formed from simpler sentences by using negations ,
conjunctions , disjunctions , implications , reductions , and
equivalences Predicate logic: Onto propositional logic, this adds
the ability to quantify variables, so we can manipulate statements
about all or some things Two common quantifiers are the existential
and universal quantifiers
Slide 9
Formal Fuzzy Logic 9 Fuzzy Propositional Logic Like ordinary
propositional logic, we introduce propositional variables, truth-
functional connectives, and a propositional constant 0 Some of
these include: Monoidal t-norm-based propositional fuzzy logic
Basic propositional fuzzy logic ukasiewicz fuzzy logic Gdel fuzzy
logic Product fuzzy logic Rational Pavelka logic Fuzzy Predicate
Logic These extend fuzzy propositional logic by adding universal
and existential quantifiers in a manner similar to the way that
predicate logic is created from propositional logic
Slide 10
Simple Fuzzy Operators 10 As described by Zadeh (1973) NOT X =
1 - X (y) e.g. 0.8 cold (1 0.8) = 0.2 NOT cold X OR Y (union) =
max( X (y), Y (y)) e.g. 0.8 cold, 0.5 rainy 0.8 cold OR rainy X AND
Y (intersection) = min( X (y), Y (y)) e.g. 0.9 hot, 0.7 humid 0.7
hot AND humid
Slide 11
Alternative Interpretations of AND and OR 11 Zadehs definition
of AND used the Gdel t-norm, but other definitions are possible
using different t-norms Common examples: Product t-norm: X (y) * Y
(y) e.g. 0.9 hot, 0.7 humid 0.63 hot AND humid Lukasiewicz t-norm:
max( X (y) + Y (y) - 1, 0) e.g. 0.9 hot, 0.7 humid 0.6 hot AND
humid Similar possibilities for OR using corresponding t-conorms:
Product t-conorm: X (y) + Y (y) - X (y) * Y (y) e.g. 0.8 cold, 0.5
rainy 0.9 cold OR rainy Lukasiewicz t-conorm: min( X (y) + Y (y),
1) e.g. 0.8 cold, 0.5 rainy 1 cold OR rainy
Slide 12
Fuzzy System Overview 12 When making inferences, we want to
clump the continuous numerical values into sets Unlike Boolean
logic, fuzzy logic uses fuzzy sets rather than crisp sets to
determine the membership of a variable This allows values to have a
degree of membership with a set, which denotes the extent to which
a proposition is true The membership function may be triangular,
trapezoidal, Gaussian or any other shape
Slide 13
Fuzzification 13 To apply fuzzy inference, we need our input to
be in linguistic values These linguistic values are represented by
the degree of membership in the fuzzy sets The process of
translating the measured numerical values into fuzzy linguistic
values is called fuzzification In other words, fuzzification is
where membership functions are applied, and the degree of
membership is determined
Slide 14
Membership Functions 14 There are largely three types of
fuzzifiers: singleton fuzzifier, Gaussian fuzzifier, and
trapezoidal or triangular fuzzifier GaussianTrapezoidal
Slide 15
Defuzzification 15 Defuzzification is the process of producing
a quantifiable result in fuzzy logic The fuzzy inference will
output a fuzzy result, described in terms of degrees of membership
of the fuzzy sets Defuzzification interprets the membership degrees
in the fuzzy sets into a specific action or real-value
Slide 16
Methods of Defuzzification 16 There are many methods for
defuzzification One of the more common types of defuzzification
technique is the maximum defuzzification techniques. These select
the output with the highest membership function They include: First
of maximum Middle of maximum Last of maximum Mean of maxima Random
choice of maximum
Slide 17
Methods of Defuzzification 17 Given the fuzzy output: The first
of maximum, middle of maximum, and last of maximum would be -2, -5,
and -8 respectively as seen in the diagram The mean would give the
same result as middle unless there is more than one plateau with
the maximum value Image Source:
http://www.mathworks.com.au/products/fuzzy-
logic/examples.html?file=/products/demos/shipping/fuzzy/defuzzdm.html
Slide 18
Methods of Defuzzification 18 Two other common methods are:
Centre of gravity: Calculates the centre of gravity for the area
under the curve Bisector method: Finds the value where the area on
one side of that value is equal to the area on the other side Image
Source: http://www.mathworks.com.au/products/fuzzy-
logic/examples.html?file=/products/demos/shipping/fuzzy/defuzzdm.html
Slide 19
Fuzzy Control Systems 19 A simple example application: an
automated cooling fan that can adjust its speed according to the
room temperature Temperature values are mapped to the fuzzy sets
cold, warm and hot based on the following mapping functions for
each: Image:
http://en.wikipedia.org/w/index.php?title=File:Fuzzy_logic_temperature_en.svg&page=1
Slide 20
Fuzzy Control Systems 20 The inference engine in a fuzzy system
consists of linguistic rules The linguistic rules consist of two
parts: an antecedent block (the conditions), which consists of the
linguistic variables a consequent block (the output) Fuzzy
algorithm Algorithm that includes at least some fuzzy instructions,
such as conditional or unconditional action statements Fuzzy
conditional statement (A B) Conditional statement in which A and/or
B are fuzzy sets e.g. IF temperature is hot THEN fan speed is high
Defined in terms of a fuzzy relation between the respective
universes of discourse of A and B (compositional rule of inference)
e.g. relation between temperature groupings and fan speeds
Slide 21
A Simple Fuzzy Algorithm Example 21 The algorithm used by our
cooling fan controller might look like this: WHILE fan is switched
on IF cold THEN stop fan IF warm AND NOT cooling down THEN increase
fan speed slightly IF hot THEN increase fan speed substantially
etc
Slide 22
Types of Fuzzy Algorithms 22 Definitional algorithms Define a
fuzzy set or calculate grades of membership of elements, e.g.:
handwritten characters (what could an M look like?) measures of
proximity (what counts as close?) Generational algorithms Generate
a fuzzy set e.g. an arbitrary sentence in some natural language
that needs to be grammatically valid according to various
rules
Slide 23
Types of Fuzzy Algorithms (contd) 23 Relational algorithms
Describe a relation between fuzzy variables Can be used to
approximately describe behaviour of a system e.g. in our cooling
fan example, describing the relation between the input variable
(temperature) and output variable (fan speed) Decisional algorithms
Approximately describe a strategy for performing some task, e.g.:
approaching a set of traffic lights (should we slow down, stop or
proceed at current speed?) navigating a robot towards a goal while
avoiding obstacles
Slide 24
Applications of Fuzzy Logic 24 Control Systems Consumer systems
automatic transmissions washing machines camera autofocus
Industrial systems aircraft engines power supply regulation steam
turbine start-up A commercial tool for building embedded fuzzy
systems Image source:
http://www.bytecraft.com/Fuzz-C__Fuzzy_Logic_Preprocessor
Slide 25
Applications of Fuzzy Logic 25 Artificial Intelligence Robot
motion planning Image segmentation Medical diagnosis systems
Slide 26
Fuzzy Logic Control Systems 26 Why use fuzzy logic for control?
Simple systems: Low development costs Low maintenance costs Complex
systems: Reduced run-time Reduced search space for efficient
optimisation How can fuzzy logic achieve this?
Slide 27
Fuzzy Control System Development 27 Fuzzy logic: Is used to
quickly translate from expert knowledge to code Expert knowledge
reduces the search space when optimising the system
Slide 28
Fuzzy Control System Development 28 1. Identify performance
measure 2. Select input/output variables 3. Determine fuzzy rules
Talking to an expert Data mining 4. Decide on membership functions
for the fuzzy variables 5. Tune membership functions and/or
rules
Slide 29
Aircraft Engine Control 29 Engine: General Electric's LV100
Turboshaft engine Existing solution: 10 low level controllers Only
one controller runs at a time The controller is selected based on
current conditions (a crisp mode selector) Problem: Abrupt changes
when switching controllers Poor fuel economy High peak operating
temperature Top Image Source: Bonissone et al. 1995 Bottom Image
Source: http://en.wikipedia.org/wiki/Honeywell_AGT1500 An AGT1500
Turboshaft engine being installed into a tank. The AGT1500 is the
predecessor to the LV100. Schematic of the LV100 engine.
Slide 30
Engine Control: Solution 30 Replace the crisp mode selector
with: A Fuzzy Supervisor 24 operation modes 24 operation rules
Blend outputs of existing controllers Result (from simulation):
Significantly reduced fuel consumption Did not achieve desired
reduction in operating temperature
Slide 31
Engine Control: Solution 2 31 Hierarchical fuzzy control system
Use a fuzzy supervisor Replace the low level controllers with fuzzy
controllers 6 fuzzy controllers used, 49 rules each Controllers
govern: fuel flow, turbine nozzle area Fuzzy controllers act on
small time scales Fuzzy supervisor acts on large time scales
Slide 32
Engine Control: Results 32 Reduced fuel consumption Lower
maximum temperature Increased component life Improved performance
Development time was of the time taken to develop the existing
control system
Slide 33
Image Segmentation 33 Decompose an image into regions Regions
have similar properties Colour, Texture Can be a clustering problem
or a classification problem Top Image Source:
http://en.wikipedia.org/wiki/Automatic_number_plate_recognition
Bottom Image Source:
www.cs.toronto.edu/~jepson/csc2503/segmentation.pdf An example of
image segmentation. The input image is on the left. The output
image is on the right. An example of licence plate
segmentation.
Slide 34
Neuro-Fuzzy Image Segmentation 34 1. Decide on the number of
fuzzy variables (number of regions) 2. Calculate the grey-scale
histogram 3. Apply fuzzy c-Means (FCM) to get membership functions
a) a grey scale histogram b) three fuzzy membership functions for
(a) Image Source: Boskovitz & Guterman 2002
Slide 35
Neuro-Fuzzy Image Segmentation 35 4. Pass the MxN image through
an LP with layers of size MxN 5. Fuzzify the pixels in the output
layer The structure of the neural network. Circles are neurons.
Arrows are connections between neurons. Image Source: Boskovitz
& Guterman 2002
Slide 36
Neuro-Fuzzy Image Segmentation 36 6. Calculate the total
fuzziness (entropy) of the output 7. Using fuzzy entropy as the
error function, train the MLP with back-propagation b) three fuzzy
membership functions for histogram (a) d) the fuzziness of each
possible grey-scale value Image Source: Boskovitz & Guterman
2002
Slide 37
Neuro-Fuzzy Image Segmentation 37 Image Source: Boskovitz &
Guterman 2002 Input panda image Output panda image
Slide 38
References General 38 Zadeh, L.A., Outline of a New Approach to
the Analysis of Complex Systems and Decision Processes, Systems,
Man, and Cybernetics, IEEE Transactions on, 1973 Volume 3, Number
1, 28--44. M. Navara. (2007). Triangular norms and conorms
Scholarpedia [Online]. Available:
http://www.scholarpedia.org/article/Triangular_norms_and_conorms
http://www.scholarpedia.org/article/Triangular_norms_and_conorms
Unknown author. (2010). Fuzzy Logic Example [Online]. Available:
http://petro.tanrei.ca/fuzzylogic/index.html
http://petro.tanrei.ca/fuzzylogic/index.html
Slide 39
References Applications 39 Bonissone, P.P. and Badami, V. and
Chiang, K.H. and Khedkar, P.S. and Marcelle, K.W. and Schutten,
M.J., Industrial applications of fuzzy logic at General Electric,
Proceedings of the IEEE, 1995, Volume 83, 450--465 Boskovitz, V.
and Guterman, H., An adaptive neuro-fuzzy system for automatic
image segmentation and edge detection, Fuzzy Systems, IEEE
Transactions on, 2002, Volume 10, 247--262 Klement, E.P. and Slany,
W., Fuzzy logic in artificial intelligence, Christian Doppler
Laboratory Technical Reports, 1994, Volume 67