0% found this document useful (0 votes)
52 views8 pages

Introduction to Fuzzy Logic Concepts

This document provides an introduction to fuzzy logic and how it can be used for control systems. It discusses: 1) The origins of fuzzy logic and how it aims to mimic human decision making by allowing partial set membership rather than crisp values. 2) Some key advantages of fuzzy logic systems, including their robustness to noise, ease of modification, and ability to control non-linear systems. 3) The basic structure of a fuzzy logic control system, including defining linguistic rules and membership functions to map inputs to outputs based on a system of "if-then" statements.

Uploaded by

dvarsastry
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
52 views8 pages

Introduction to Fuzzy Logic Concepts

This document provides an introduction to fuzzy logic and how it can be used for control systems. It discusses: 1) The origins of fuzzy logic and how it aims to mimic human decision making by allowing partial set membership rather than crisp values. 2) Some key advantages of fuzzy logic systems, including their robustness to noise, ease of modification, and ability to control non-linear systems. 3) The basic structure of a fuzzy logic control system, including defining linguistic rules and membership functions to map inputs to outputs based on a system of "if-then" statements.

Uploaded by

dvarsastry
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 8

FUZZY LOGIC - AN INTRODUCTION

http://www.seattlerobotics.org/Encoder/mar98/fuz/flindex.html
PART 1
by Steven . !aehler
"#$%&'($"&#
$his is the first in a series of six articles intended to share information and experience in the
realm of fuzzy logic )*+, and its application. $his article will introduce *+. $hrough the course
of this article series- a simple implementation will be explained in detail. Each article will
include additional outside resource references for interested readers.
./E%E " *'001 +&2"( (&3E *%&34
$he concept of *uzzy +ogic )*+, was conceived by +otfi 0adeh- a professor at the 'niversity of
(alifornia at 5er6ley- and presented not as a control methodology- but as a way of processing
data by allowing partial set membership rather than crisp set membership or non7membership.
$his approach to set theory was not applied to control systems until the 89:s due to insufficient
small7computer capability prior to that time. ;rofessor 0adeh reasoned that people do not re<uire
precise- numerical information input- and yet they are capable of highly adaptive control. "f
feedbac6 controllers could be programmed to accept noisy- imprecise input- they would be much
more effective and perhaps easier to implement. 'nfortunately- '.S. manufacturers have not
been so <uic6 to embrace this technology while the Europeans and =apanese have been
aggressively building real products around it.
./>$ "S *'001 +&2"(4
"n this context- *+ is a problem7solving control system methodology that lends itself to
implementation in systems ranging from simple- small- embedded micro7controllers to large-
networ6ed- multi7channel ;( or wor6station7based data ac<uisition and control systems. "t can
be implemented in hardware- software- or a combination of both. *+ provides a simple way to
arrive at a definite conclusion based upon vague- ambiguous- imprecise- noisy- or missing input
information. *+:s approach to control problems mimics how a person would ma6e decisions-
only much faster.
/&. "S *+ "**E%E#$ *%&3 (&#?E#$"&#>+ (&#$%&+ 3E$/&S4
*+ incorporates a simple- rule7based "* @ ># 1 $/E# 0 approach to a solving control
problem rather than attempting to model a system mathematically. $he *+ model is empirically7
based- relying on an operator:s experience rather than their technical understanding of the
system. *or example- rather than dealing with temperature control in terms such as AS; BC99*A-
A$ DE999*A- or AFE9( D$E3; DFF9(A- terms li6e A"* )process is too cool, ># )process is
getting colder, $/E# )add heat to the process,A or A"* )process is too hot, ># )process is
heating rapidly, $/E# )cool the process <uic6ly,A are used. $hese terms are imprecise and yet
very descriptive of what must actually happen. (onsider what you do in the shower if the
temperature is too cold: you will ma6e the water comfortable very <uic6ly with little trouble. *+
is capable of mimic6ing this type of behavior but at very high rate.
/&. &ES *+ .&%!4
*+ re<uires some numerical parameters in order to operate such as what is considered significant
error and significant rate7of7change7of7error- but exact values of these numbers are usually not
critical unless very responsive performance is re<uired in which case empirical tuning would
determine them. *or example- a simple temperature control system could use a single
temperature feedbac6 sensor whose data is subtracted from the command signal to compute
AerrorA and then time7differentiated to yield the error slope or rate7of7change7of7error- hereafter
called Aerror7dotA. Error might have units of degs * and a small error considered to be F* while a
large error is C*. $he Aerror7dotA might then have units of degs/min with a small error7dot being
C*/min and a large one being EC*/min. $hese values don:t have to be symmetrical and can be
Atwea6edA once the system is operating in order to optimize performance. 2enerally- *+ is so
forgiving that the system will probably wor6 the first time without any twea6ing.
S'33>%1
*+ was conceived as a better method for sorting and handling data but has proven to be a
excellent choice for many control system applications since it mimics human control logic. "t can
be built into anything from small- hand7held products to large computerized process control
systems. "t uses an imprecise but very descriptive language to deal with input data more li6e a
human operator. "t is very robust and forgiving of operator and data input and often wor6s when
first implemented with little or no tuning.
%E*E%E#(ES
GEH AEurope 2ets into *uzzy +ogicA )Electronics Engineering $imes- #ov. EE- E99E,.
GFH A*uzzy Sets and >pplications: Selected ;apers by +.>. 0adehA- ed. %.%. 1ager et al. )=ohn
.iley- #ew 1or6- E988,.
GIH A'.S. +oses *ocus on *uzzy +ogicA )3achine esign- =une FE- E999,.
GJH A.hy the =apanese are 2oing in for this :*uzzy +ogic:A by Emily $. Smith )5usiness .ee6-
*eb. F9- E99I- pp. I9
FUZZY LOGIC - AN INTRODUCTION
PART 2
by Steven . !aehler
"#$%&'($"&#
$his is the second in a series of six articles intended to share information and experience in the
realm of fuzzy logic )*+, and its application. $his article will continue the introduction with a
more detailed loo6 at how one might use *+. > simple implementation will be explained in detail
beginning in the next article. >ccompanying outside references are included for interested
readers.
"n the last article- *+ was introduced and the thrust of this article series presented. $he origin of
*+ was shared and an introduction to some of the basic concepts of *+ was presented. .e will
now loo6 a little deeper.
./1 'SE *+4
*+ offers several uni<ue features that ma6e it a particularly good choice for many control
problems.
E, "t is inherently robust since it does not re<uire precise- noise7free inputs and can be
programmed to fail safely if a feedbac6 sensor <uits or is destroyed. $he output control is a
smooth control function despite a wide range of input variations.
F, Since the *+ controller processes user7defined rules governing the target control system- it can
be modified and twea6ed easily to improve or drastically alter system performance. #ew sensors
can easily be incorporated into the system simply by generating appropriate governing rules.
I, *+ is not limited to a few feedbac6 inputs and one or two control outputs- nor is it necessary to
measure or compute rate7of7change parameters in order for it to be implemented. >ny sensor
data that provides some indication of a system:s actions and reactions is sufficient. $his allows
the sensors to be inexpensive and imprecise thus 6eeping the overall system cost and complexity
low.
J, 5ecause of the rule7based operation- any reasonable number of inputs can be processed )E78 or
more, and numerous outputs )E7J or more, generated- although defining the rulebase <uic6ly
becomes complex if too many inputs and outputs are chosen for a single implementation since
rules defining their interrelations must also be defined. "t would be better to brea6 the control
system into smaller chun6s and use several smaller *+ controllers distributed on the system- each
with more limited responsibilities.
C, *+ can control nonlinear systems that would be difficult or impossible to model
mathematically. $his opens doors for control systems that would normally be deemed unfeasible
for automation.
/&. "S *+ 'SE4
E, efine the control obKectives and criteria: .hat am " trying to control4 .hat do " have to do
to control the system4 .hat 6ind of response do " need4 .hat are the possible )probable, system
failure modes4
F, etermine the input and output relationships and choose a minimum number of variables for
input to the *+ engine )typically error and rate7of7change7of7error,.
I, 'sing the rule7based structure of *+- brea6 the control problem down into a series of "* @
># 1 $/E# 0 rules that define the desired system output response for given system input
conditions. $he number and complexity of rules depends on the number of input parameters that
are to be processed and the number fuzzy variables associated with each parameter. "f possible-
use at least one variable and its time derivative. >lthough it is possible to use a single-
instantaneous error parameter without 6nowing its rate of change- this cripples the system:s
ability to minimize overshoot for a step inputs.
J, (reate *+ membership functions that define the meaning )values, of "nput/&utput terms used
in the rules.
C, (reate the necessary pre7 and post7processing *+ routines if implementing in S/.- otherwise
program the rules into the *+ //. engine.
L, $est the system- evaluate the results- tune the rules and membership functions- and retest until
satisfactory results are obtained.
+"#2'"S$"( ?>%">5+ES
"n E98I- ;rofessor +otfi 0adeh proposed the concept of linguistic or AfuzzyA variables. $hin6 of
them as linguistic obKects or words- rather than numbers. $he sensor input is a noun- e.g.
AtemperatureA- AdisplacementA- AvelocityA- AflowA- ApressureA- etc. Since error is Kust the
difference- it can be thought of the same way. $he fuzzy variables themselves are adKectives that
modify the variable )e.g. Alarge positiveA error- Asmall positiveA error -AzeroA error- Asmall
negativeA error- and Alarge negativeA error,. >s a minimum- one could simply have ApositiveA-
AzeroA- and AnegativeA variables for each of the parameters. >dditional ranges such as Avery
largeA and Avery smallA could also be added to extend the responsiveness to exceptional or very
nonlinear conditions- but aren:t necessary in a basic system.
S'33>%1
*+ does not re<uire precise inputs- is inherently robust- and can process any reasonable number
of inputs but system complexity increases rapidly with more inputs and outputs. istributed
processors would probably be easier to implement. Simple- plain7language "* @ ># 1 $/E#
0 rules are used to describe the desired system response in terms of linguistic variables rather
than mathematical formulas. $he number of these is dependent on the number of inputs- outputs-
and the designer:s control response goals.
%E*E%E#(ES
GCH A(lear $hin6ing on *uzzy +ogicA by +.>. 5ernardinis )3achine esign- >pril FI- E99I,.
GLH A*uzzy *undamentalsA by E. (ox )"EEE Spectrum- &ctober E99F- pp. C87LE,.
G8H A*uzzy +ogic in (ontrol SystemsA by (.(. +ee )"EEE $rans. on Systems- 3an- and
(ybernetics- S3(- ?ol. F9- #o. F- E999- pp. J9J7IC,.
G8H A*uzzy SetsA by "vars ;eterson )Science #ews- ?ol. EJJ- =uly FJ- E99I- pp. CC,.
FUZZY LOGIC - AN INTRODUCTION
PART 3
by Steven . !aehler
"#$%&'($"&#
$his is the third in a series of six articles intended to share information and experience in the
realm of fuzzy logic )*+, and its application. $his article and the three to follow will ta6e a more
detailed loo6 at how *+ wor6s by wal6ing through a simple example. "nformational references
are included at the end of this article for interested readers.
$/E %'+E 3>$%"@
"n the last article the concept of linguistic variables was presented. $he fuzzy parameters of error
)command7feedbac6, and error7dot )rate7of7change7of7error, were modified by the adKectives
AnegativeA- AzeroA- and ApositiveA. $o picture this- imagine the simplest practical implementation-
a I7by7I matrix. $he columns represent Anegative errorA- Azero errorA- and Apositive errorA inputs
from left to right. $he rows represent AnegativeA- AzeroA- and ApositiveA Aerror7dotA input from
top to bottom. $his planar construct is called a rule matrix. "t has two input conditions- AerrorA
and Aerror7dotA- and one output response conclusion )at the intersection of each row and
column,. "n this case there are nine possible logical product )>#, output response conclusions.
>lthough not absolutely necessary- rule matrices usually have an odd number of rows and
columns to accommodate a AzeroA center row and column region. $his may not be needed as
long as the functions on either side of the center overlap somewhat and continuous dithering of
the output is acceptable since the AzeroA regions correspond to Ano changeA output responses the
lac6 of this region will cause the system to continually hunt for AzeroA. "t is also possible to have
a different number of rows than columns. $his occurs when numerous degrees of inputs are
needed. $he maximum number of possible rules is simply the product of the number of rows and
columns- but definition of all of these rules may not be necessary since some input conditions
may never occur in practical operation. $he primary obKective of this construct is to map out the
universe of possible inputs while 6eeping the system sufficiently under control.
S$>%$"#2 $/E ;%&(ESS
$he first step in implementing *+ is to decide exactly what is to be controlled and how. *or
example- suppose we want to design a simple proportional temperature controller with an electric
heating element and a variable7speed cooling fan. > positive signal output calls for 97E99 percent
heat while a negative signal output calls for 97E99 percent cooling. (ontrol is achieved through
proper balance and control of these two active devices.
*igure E 7 > simple bloc6 diagram of the control system.
"t is necessary to establish a meaningful system for representing the linguistic variables in
the matrix. *or this example- the following will be used:
A#A B AnegativeA error or error7dot input level
A0A B AzeroA error or error7dot input level
A;A B ApositiveA error or error7dot input level
A/A B A/eatA output response
A7A B A#o (hangeA to current output
A(A B A(oolA output response
efine the minimum number of possible input product combinations and corresponding
output response conclusions using these terms. *or a three7by7three matrix with heating
and cooling output responses- all nine rules will need to be defined. $he conclusions to
the rules with the linguistic variables associated with the output response for each rule are
transferred to the matrix.
./>$ "S 5E"#2 (&#$%&++E ># /&.:
*igure F 7 $ypical control system response
*igure F shows what command and error loo6 li6e in a typical control system relative to
the command setpoint as the system hunts for stability. efinitions are also shown for this
example.
E*"#"$"&#S:
"#;'$ME: )AErrorA- positive );,- zero )0,- negative )#,,
"#;'$MF: )AError7dotA- positive );,- zero )0,- negative )#,,
(&#(+'S"&#: )A&utputA- /eat )/,- #o (hange )7,- (ool )(,,
"#;'$ME System Status
Error B (ommand7*eedbac6
;B$oo cold- 0B=ust right- #B$oo hot
"#;'$MF System Status
Error7dot B d)Error,/dt
;B2etting hotter 0B#ot changing #B2etting colder
&'$;'$ (onclusion N System %esponse
&utput / B (all for heating 7 B on:t change anything ( B (all for cooling
S1S$E3 &;E%>$"#2 %'+ES
+inguistic rules describing the control system consist of two partsO an antecedent bloc6
)between the "* and $/E#, and a conse<uent bloc6 )following $/E#,. epending on
the system- it may not be necessary to evaluate every possible input combination )for C7
by7C N up matrices, since some may rarely or never occur. 5y ma6ing this type of
evaluation- usually done by an experienced operator- fewer rules can be evaluated- thus
simplifying the processing logic and perhaps even improving the *+ system performance.
*igures I N J 7 $he rule structure.
>fter transferring the conclusions from the nine rules to the matrix there is a noticeable
symmetry to the matrix. $his suggests )but doesn:t guarantee, a reasonably well7behaved
)linear, system. $his implementation may prove to be too simplistic for some control
problems- however it does illustrate the process. >dditional degrees of error and error7dot
may be included if the desired system response calls for this. $his will increase the
rulebase size and complexity but may also increase the <uality of the control. *igure J
shows the rule matrix derived from the previous rules.
S'33>%1
+inguistic variables are used to represent an *+ system:s operating parameters. $he rule
matrix is a simple graphical tool for mapping the *+ control system rules. "t
accommodates two input variables and expresses their logical product )>#, as one
output response variable. $o use- define the system using plain7English rules based upon
the inputs- decide appropriate output response conclusions- and load these into the rule
matrix.
%E*E%E#(ES
G9H A*undamentals of *uzzy +ogic: ;arts E-F-IA by 2. >nderson )SE#S&%S- 3arch73ay
E99I,.
GE9H A*uzzy +ogic *lowers in =apanA by .2. Schartz N 2.=. !lir )"EEE Spectrum- =uly
E99F- pp. IF7IC,.
GEEH A*uzzy +ogic 3a6es 2uesswor6 of (omputer (ontrolA by 2ail 3. %obinson
)esign #ews- ?ol. J8- #ov. F8- E99E- pp. FE,.
GEFH A*uzzy +ogic &utperforms ;" (ontrollerA by ;. 5asehore );("3- 3arch E99I,.

You might also like