Fuzzy Control – Configuration – Design choices – Takagi-Sugeno controller
Dec 28, 2015
Fuzzy Control
– Configuration – Design choices– Takagi-Sugeno controller
Direct Control
Deviations Actions OutputsRef
Controller
End-user
Inferenceengine
Rulebase
Plant
Building Blocks
Fuzzy controller
Inferenceengine
Rulebase Defuzzi
-ficationPostpro-cessing
Fuzzi-fication
Prepro-cessing
Nonlinear Input Scaling
-5 0 5
-100
-50
0
50
100
measured input
sca
led
inp
ut
If-Then Rule Base
1. If error is Neg and change in error is Neg then output is NB
2. If error is Neg and change in error is Zero then output is NM
3. If error is Neg and change in error is Pos then output is Zero
4. If error is Zero and change in error is Neg then output is NM
5. If error is Zero and change in error is Zero then output is Zero
6. If error is Zero and change in error is Pos then output is PM
7. If error is Pos and change in error is Neg then output is Zero
8. If error is Pos and change in error is Zero then output is PM
9. If error is Pos and change in error is Pos then output is PB
Relational Rule Format
Error Change in error Control
Pos Pos PB
Pos Zero PM
Pos Neg Zero
Zero Pos PM
Zero Zero Zero
Zero Neg NM
Neg Pos Zero
Neg Zero NM
Neg Neg NB
Tabular Rule Format
Change in error
Neg Zero Pos
Neg NB NM Zero
Error Zero NM Zero PM
Pos Zero PM PB
Connectives
)(),(max
)(),(min
xxBA
xxBA
BA
BA
)()()()(
)()(
xxxxBA
xxBA
BABA
BA
minimum
maximum
algebraic product
probabilistic sum
FLS I/O Families
-1 -0.5 0 0.5 10
0.5
1
Input
Mem
bers
hip
-1 -0.5 0 0.5 10
0.5
1
Output
Mem
bers
hip
NegZero
Pos
Examples Of Primary Sets
-100 0 1000
0.5
1
(a)-100 0 1000
0.5
1
(d)-100 0 1000
0.5
1
(g)-100 0 1000
0.5
1
(j)-100 0 1000
0.5
1
(m)
-100 0 1000
0.5
1
(b)-100 0 1000
0.5
1
(e)-100 0 1000
0.5
1
(h)-100 0 1000
0.5
1
(k)-100 0 1000
0.5
1
(n)
-100 0 1000
0.5
1
(c)-100 0 1000
0.5
1
(f)-100 0 1000
0.5
1
(i)-100 0 1000
0.5
1
(l)-100 0 1000
0.5
1
(o)
Inference And Terminology
AND
Aggregation
Accumulation
Defuzzification
Activation
4
5
Defuzzification
0 50 100
0
0.5
1
RM
BOACO
G
MOM
LM
Rule Based Controllers
1. If error is Neg then control is Neg
2. If error is Zero then control is Zero
3. If error is Pos then control is Pos
Mamdani Inference
-100 0 1000
0.5
1error
-100 0 1000
0.5
1control
-100 0 1000
0.5
1
-100 0 1000
0.5
1
-100 0 1000
0.5
1
-100 0 1000
0.5
1
-100 0 1000
0.5
1
u = -25.7
FLS Inference
-100 0 1000
0.5
1error
-100 0 1000
0.5
1control
-100 0 1000
0.5
1
-100 0 1000
0.5
1
-100 0 1000
0.5
1
-100 0 1000
0.5
1
-100 0 1000
0.5
1
u = -29.7
Sugeno Inference
-100 0 1000
0.5
1error
-100 0 1000
0.5
1control
-100 0 1000
0.5
1
-100 0 1000
0.5
1
-100 0 1000
0.5
1
-100 0 1000
0.5
1
-100 0 1000
0.5
1
u = -36.3
Singleton Output
1. If error is Pos then control is 10
2. If error is Zero then control is 0
3. If error is Neg then control is -10
First Order Output
1. If error is Pos then control is a2*error + b2
2. If error is Neg then control is a1*error + b1
Interpolation (Takagi-Sugeno)
0 50 1000
50
100
150
(a)
outp
ut
1
2
0 50 1000
0.5
1
(b)
mem
bers
hip
Rule Base To Table
Look-Up Table
Change in error
-100 -50 0 50 100
Error
100 0 40 100 100 200
50 -40 0 61 121 160
0 -100 -61 0 61 100
-50 -100 -121 -61 0 40
-100 -200 -160 -100 -40 0
Control Surface
-100
0
100
-100
0
100-200
0
200
ECE
u
-100 -50 0 50 1000
0.2
0.4
0.6
0.8
1
input family
me
mb
ers
hip
Linear Controller
-100
0
100
-100
0
100-200
0
200
ECE
u
-100 -50 0 50 1000
0.2
0.4
0.6
0.8
1
input family
me
mb
ers
hip
Linear Rule Base
Conditions For Linearity
• Triangular sets, crossing at = 0.5• Rules: complete -combination• Define as *• Use conclusion singletons, positioned at sum of input
peak positions• Use sum-accumulation and COGS defuzzification
Simplification of 4 rules
1. If error is Neg and change in error is Neg then control is NB3. If error is Neg and change in error is Pos then control is Zero7. If error is Pos and change in error is Neg then control is Zero9. If error is Pos and change in error is Pos then control is PB
PBPosPos CEEu )1(
is
Simplification of 9 rules1. If error is Neg and change in error is Neg then output is NB2. If error is Neg and change in error is Zero then output is NM3. If error is Neg and change in error is Pos then output is Zero4. If error is Zero and change in error is Neg then output is NM5. If error is Zero and change in error is Zero then output is Zero6. If error is Zero and change in error is Pos then output is PM7. If error is Pos and change in error is Neg then output is Zero8. If error is Pos and change in error is Zero then output is PM9. If error is Pos and change in error is Pos then output is PB
is
PBNegPosNegPos CECEEEu 2
1
Summary Of Choices
• Rule-base related choices: # of inputs and outputs, rules, universes, continuous or discrete, # of membership functions, their overlap and width, singleton conclusions
• Inference engine choices: Connectives, modifiers, activation operation, aggregation operation, accumulation operation
• Defuzzification method: COG, COGS, BOA, MOM, LM, RM
• Pre- and postprocessing: Scaling, quantization, sampling time