Neuro

Fyzzy
Methods
for
Modeling and Identification
Part 2 : Examples
Presented by:
Ali Maleki
Presentation Agenda
Introduction
Tools for Fuzzy Identification and Modelling
MATLAB
–
Fuzzy Logic Toolbox
–
ANFIS
Fuzzy Modeling and Identification Toolbox
Examples :
Example 1: Hair Dryer
Example 2: Static Function
Example 3: Neutralization Process
Introduction
Control Systems
Competion
Environment requirements
Energy and material costs
Demand for robust, fault

tolerant systems
Extra needs for Effective process modeling techniques
Conventional modeling?
Lack precise and formal knowledg about the system
Strongly nonlinear behavior,
High degree of uncertainty,
Time varying characteristics
Introduction (cont.)
Solution: Neuro

fuzzy modeling
A powerful to
ol which can facilitate the effective
development of models by combining information from
different source:
Empirical
models
Heuristics
Data
Neuro

fuzzy models
Describe systems by means of fuzzy if

then rules
Represented in a network structure
Apply algorithms from the area of Neural Networks
Zero

order TS fuzzy model
Typical membership function
Input

output equation
Introduction
(cont.)
Introduction (cont.)
System identification
steps:
•
Structure identification
•
Parameter estimation
•
choice of the model’s structure determines the
flexibility of
the model in the approximation of (unknown) systems
•
model with a rich structure can approximate more
complicated functions, but, will have worse generalization
properties
•
Good generalization means that a model fitted to one
data set will also perform well on another data set from
the same process.
Tools for Fuzzy Model
ing & Identification
Fuzz
y Modelling and Identification Toolbox
•
Develped by R. Babuska
•
http://Lcewww.et.tudelft.nl/~Babuska
•
Installation
•
Version 3.03 , April 2001
Fuzzy Logic Toolbox for M
ATLAB
•
www.Mathworks.com/products/fuzzylogic
•
Version 2.1.3 , June 2004
Fuzzy Model
ing and Identification Toolbox
Fuzzy Model
ing and Identification Toolbox (cont.)
FMSIM function:
Simulate a MIMO input

output fuzzy model
Fuzzy Model
ing and Identification Toolbox (cont.)
Structure of FM (fmstruct f
unction)
:
Fuzzy Model
ing and Identification Toolbox (cont.)
Structure of FM (fmstruct f
unction)
:
Fuzzy Model
ing and Identification Toolbox (cont.)
plot
mfs
function:
Plot membership functions
rms
function:
Root mean square between two signals
vaf
function:
Percentile variance accounted for (VAF) between two signals
Fuzzy Model
ing and Identification Toolbox (cont.)
MATLAB

Fuzzy Toolbox
anfis
f
unction:
Training routine for Sugeno

type FIS
anfis
edit
function:
Open the ANFIS Editor GUI
genfis1
function:
Generate an FIS structure from data without data clustering
genfis2
function:
Generate an FIS structure from data using subtractive clustering
MATLAB

Fuzzy Toolbox (cont.)
ANFIS Editor GUI
Exa
mple 1 :
Hair Dryer
(Fuzzy Logic Toolbox)
Nonlinear dynamical system identification
With u
se of
ANFIS
function in the
Fuzzy Logic Toolbox
Data set
was obtained from a laboratory device called
Feedback's Process Trainer PT 326,
L. Ljung
,
"System Identification, Theory for the User", Prentice

Hall, 1987
–
Chapter 17
The d
evice's function is like a hair dryer:
Input u(k) : Voltage over
t
he mesh of resistor wires
Output y(k) : Outlet air temperature
Input u(k) : Binary random signal shifting between 3.41 and 6.41 V
Output y(k) : Outlet air temperature
Sampling Time : 0.08 sec
Exa
mple 1 :
Hair Dryer
(Fuzzy Logic Toolbox)
(cont.)
Linear
ARX
model:
y(k)+a
1
*y(k

1)+...+a
m
*y(k

m)=b
1
*u(k

d)+...+b
n
*u(k

d

n+1)
a
i
and b
j
are linear parameters to be determined by
least

squares
methods
This structure is exactly specified by three integers [
m
,
n
,
d
]
Remind:
System Identification :
structure selection
+
parameter estimation
Exa
mple 1 :
Hair Dryer
(Fuzzy Logic Toolbox)
(cont.)
Remove the means from the data
T
he data set was divided into a training set and a checking set
Training data set
: (k = 1 to 300)
Checking data set
:
(k = 301 to 600)
An exhaustive search was performed to find the best combination [m, n, d]
each of the integer is allowed to changed from 1 to 10 independently
Run through all different models:
V = arxstruc(ze, zv, struc(1:10, 1:10, 1:10));
Find the best model:
nn = selstruc(V, 0);
The best ARX model : [m, n, d] = [
5
,
10
,
2
]
Exa
mple 1 :
Hair Dryer
(Fuzzy Logic Toolbox)
(cont.)
Training RMSE =
0.1122
Checking RMSE =
0.0749
Exa
mple 1 :
Hair Dryer
(Fuzzy Logic Toolbox)
(cont.)
Advantage of ARX model:
Rapid
model structure selection
Rapid
parameter identificatio
n
The
performance
in the above plots appear to be satisfactory.
If a
better performance
level is desired, we might want to resort to a
nonlinear model
.
Neuro

fuzzy modeling approach,
ANFIS
Exa
mple 1 :
Hair Dryer
(Fuzzy Logic Toolbox)
(cont.)
U
se ANFIS for system identification
:
First step:
input selection
T
o determine which variables should be the input arguments to an ANFIS
model.
For simplicity, we suppose that there are 10 input candidates
y(k

1), y(k

2), y(k

3), y(k

4), u(k

1), u(k

2), u(k

3), u(k

4), u(k

5), u(k

6)
Two approaches for input selection:
Sequential search
Exhaustive search
Exa
mple 1 :
Hair Dryer
(Fuzzy Logic Toolbox)
(cont.)
Sequential search
for input selection:
can be done by the function
seqsrch
10 + 9 + 8
=27
Selected
inputs : y(k

1), u(k

3), and u(k

4)
Training RMSE
=
0.0609 Checking RMSE = 0.0604.
Exa
mple 1 :
Hair Dryer
(Fuzzy Logic Toolbox)
(cont.)
Exhaustive search
on all possible combinations of the input candidates
Can be done by function
exhsrch
We want to
selects 3 inputs from 10 candidates
, therefore,
the total number
of ANFIS models is
Fortunately, for
dynamical system
identification, we do know that the inputs
should not come from either of the following two sets of input candidates
exclusively:
Y = {y(k

1), y(k

2), y(k

3), y(k

4)}
U = {u(k

1), u(k

2), u(k

3), u(k

4), u(k

5), u(k

6)}
A reasonable guess: two inputs from Y and one from U
120
7!
3!
10!
36
6
*
2
2
4
!
!
!
Exa
mple 1 :
Hair Dryer
(Fuzzy Logic Toolbox)
(cont.)
Exhaustive search
Selected inputs : y(k

1), y(k

2) , u(k

3)
Training RMSE = 0.0474 Checking RMSE = 0.0485
Exa
mple 1 :
Hair Dryer
(Fuzzy Logic Toolbox)
(cont.)
A
RX model
Exa
mple 1 :
Hair Dryer
(Fuzzy Logic Toolbox)
(cont.)
ANFIS
model
Exa
mple 1 :
Hair Dryer
(Fuzzy Logic Toolbox)
(cont.)
Comparision
If
fast modeling
is the goal, then
ARX
is the right choice
,
If
precision
is the utmost concern, then we can go for
ANFIS
that is
designed for nonlinear modeling and higher precision
Exa
mple 1 :
Hair Dryer
(Fuzzy Logic Toolbox)
(cont.)
Example 2

Static Function
ANFIS model with linear consequent function
Number of rules: five rules
Construction of initial model:
Gustafson

Kessel algorithm
Fit of the function with initial model
–
local models

membership functions
Example 2

Static Function (cont.)
this initial model can easily be interpreted in terms of the local behavior
It is reasonably accurate (RMS= 0.0258)
ANFIS method, 100 learning epochs
anfis
function of the
MATLAB
Fuzzy Logic Toolbox
Fit of the function with
fine

tuned model
, local models, membership functions
RMS error is about 23 times better than the initial model
Initial model
Fine

tuned model
RMS error = 0.0258
RM
S error = 0.0011
Example 2

Static Function (cont.)
after learning, the local models are much further from the true local
description of the function
Initial model
Fine

tuned model
Fine

tuned model are thus less accurate in describing the system locally
Example 2

Static Function (cont.)
Example 3
–
pH Neutralization Process
Neutralization
tank
Effluent stream
Acid
Buffer
Base
Influent streams
Neutralization
tank
pH in the tank
Acid flowrate = cte
Buffer flowrate = cte
Base stream flowrate
Example 3

pH Neutralization Process (cont.)
Identification and validation data sets:
•
Simulating the
model by Hall and Seborg
for random change of the
influent base str
eam flow rate
•
N = 499 samples with the sampling time of 15 s.
The process is approximated as a
first
–
order
discrete

time
NARX
model
Membership functions
Befor training
After training
Example 3

pH Neutralization Process (cont.)
Rules:
Initial Rules
:
Fine Tuned Rules
: a
fter 1000 epochs of hybrid learning using the ANFIS
function of the MATLAB Fuzzy Logic Toolbo
x
Example 3

pH Neutralization Process (cont.)
Overtraining Problem:
•
Comparision of
RMS ERROR
befor and after training
•
Prediction
befor and after training
Example 3

pH Neutralization Process (cont.)
References
[1] Robert Babuska,
“Neuro

Fuzzy Methods for Modeling and Identification”
,
Recent Advances in Intelligent Paradigms and Application, Springer

Verilag, 2002
[2] Robert Babuska,
“Fuzzy Modeling and Identification Toolbox User’s Guide

For Use with MATLAB”
, 1998.
[3] MathWorks Inc.,
“Fuzzy Logic Toolbox
–
Users Guide
–
Version 2
”
, 2004.
[4] L. Ljung,
“System Identification, Theory for the User”
, Prentice

Hall, 1987.
THANK YOU VERY MUCH
For your
Attention
Presented by:
Ali Maleki
Introduction

appendix
Types of fuzzy models:
(depending on the structure of if

then rules)
Mamdani Model
IF
D
1
is
low
and D
2
is
high
THEN
D is
medium
Takagi

Sugeno Model
IF
D
1
is
low
and D
2
is
high
THEN
D=k
(zero

order)
IF
D
1
is
low
and D
2
is
high
THEN
D=0.7D
1
+0.2D
2
+0.1
(first

order)
Comments 0
Log in to post a comment