Sie sind auf Seite 1von 49

1

EE699 (06790)

ADAPTIVE NEUROFUZZY CONTROL


Instructor: Dr. YuMing Zhang
223 CRMS Building
Phone: 257-6262 Ext. 223
245-4518 (Home)
Email: ymzhang@engr.uky.edu

Adaptive control and neurofuzzy control are two advanced methods for time-varying and non-
linear processes. This course will begin with adaptive control of linear systems. Nonlinear
systems and related control issues will be then briefly reviewed. Neural network and fuzzy
model will be described as general structures for approximating non-linear functions and
dynamic processes. Based on the comparison of the two methods, neurofuzzy model will be
proposed as a promising technology for the control and adaptive control of nonlinear processes.

This course will emphasize basic concepts, design procedures, and practical examples. The
assignments include two design projects: adaptive control of a linear system and neurofuzzy
method based modeling and adaptive control of a nonlinear system. A presentation on a selected
subject is required.


TR 03:30 PM-04:45 PM Funkhouser 313


2


ADAPTIVE NEUROFUZZY CONTROL


Introduction (1-2): Actually 3 including 2 for the example

Adaptive Control of Linear Systems (3-5)

Identification of Linear Models (2-3)

Project 1

Control of Nonlinear Systems (1-2)

Neural and Fuzzy Control (1-2)

Neural and Fuzzy Modeling (4-6)

Project 2: Modeling

Adaptive Neurofuzzy Control Design (7-9) & Project 2: Control

Design Examples (2)

Presentation (2)

Final Examination (1)

Projects:

1. Adaptive control of a linear system
2. Neurofuzzy modeling and control of a non-linear system


3

CHAPTER I: INTRODUCTION

Primary References:

Y. M. Zhang and R. Kovacevic, Neurofuzzy model based control of weld fusion zone
geometry," IEEE Transactions on Fuzzy Systems, 6(3): 389-401.

R. Kovacevic and Y. M. Zhang, "Neurofuzzy model-based weld fusion state estimation," IEEE
Control Systems, 17(2): 30-42, 1997.

1. Linear Systems

- Classical Control, Linear Control (LQG, Optimal Control)

- Model Mismatch between the process and the nominal model.

Reasons:
-Substantial range of physical conditions, modeling error (actual model is fixed, but different
with the nominal model) Robust control or adaptive control
-Time-varying model: Varying physical condition Robust control or adaptive control

- Adaptive Control: Identify the real parameters of the model to minimize the mismatch
- Robust Control: Allow the mismatch

2. Non-linear Systems

- Lack of unified models, a variety of models and design methods

- Unified model structure for non-linear systems: neural network models and fuzzy models

- Comparison
Modeling: Disadvantage: large number of parameters
Advantages: adequate accuracy, simplicity
Control: Disadvantages: performance evaluation
Advantage: unified methods
- Neural network and fuzzy methods
Modeling:
Neural networks: large number of parameters, but automated algorithm
Fuzzy models: moderate number of parameters, lack of automated algorithm
Control design:
Neural networks: large number of parameters
Fuzzy models: moderate number of parameters, time consuming

- Neurofuzzy Control

4
Compared with Fuzzy Logic: automated identification algorithm, easier design
Compared with Neural Networks: less number of parameters, faster adaptation

3. Adaptive Non-Linear Control

Acceptable convergence speed (number of parameters), general model

4. Example: Neurofuzzy Control of Arc Welding Process


5
CHAPTER 2: ADAPTIVE CONTROL

Primary Reference:
D. W. Clarke, Self-tuning control, in The Control Handbook edited by W. S. Levine. IEEE
Press, 1996.


1. Introduction

- Most Control Theory: assuming (1) time-invariant, known (nominal) model,
(2) no difference between the nominal and actual model
- Problems: initial model uncertainties (a difference between the nominal and actual model),
actual model varies during process
Examples:
- Solutions
Robust fixed controller
Adaptive controller (self-tuning controller)
- For unknown but constant dynamics, identify the model during initial period (auto-tuning or
self-tuning).
- For time-varying system, identify and update the model all the time (adaptive control).
- Structure of self-tuning control system

2. Simple Methods

- Industrial Processes G s e
K
sT
sT
d
( ) =
+

1
parameters: T K T
d
, ,

y t KU e t T
u t U t
u t t
t T T
d
d
( ) ( ) (
( ) ( )
( ) ( )
( )/
= >
= >
= <

1
0
0 0
)




Identify parameters from the step response
6

T K T ond
d
= = = 0 5 5 , , sec





T K T ond
d
= = = 0 5 1 , , sec







Time (sec.)
A
m
p
l
i
t
u
d
e
Step Response
0 1 2 3 4 5 6
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5

Time (sec.)
A
m
p
l
i
t
u
d
e
Step Response
0 5 10 15 20 25 30
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5

7

T
dy
dt
y Ku t
T
dy
dt
y dt Ku t dt
T y t y t y t dt K u t dt
t jh t kh h
a y t y t
a y t dt h y ih
b u t dt h u ih
a T
t t
t
t t
t
t t
t
t t
t
i j
k
t t
t
t t
t
i j
k
+ =
+ =
+ =
= =
=
= ~
= ~
= =
= =
=

=
=
=

} }
} }

}
}

( )
( ) ( )
[ ( ) ( )] ( ) ( )
, ( :
( ) ( )
( ) ( )
( ) ( )
1
2
1
2
2 1
1
2
1
2
1 2
1 2 1
2
1
1
2
1
1
2
1
1
sampling period)
Denote


Then
+


a Kb
a T b K a
a l T b l K a l l
2 1
1 2
1 2
1
1
=
=

= =
( )
( ) ( ) ( ) ( ,2,... )


- Control of a plant with unknown gain

-Plant: y t Ku t ( ) ( ) + = 1
-Set point: w t ( )
-Control Problem: At t instant, for the known y t y t u t u t ( ), ( ),..., ( ), ( ) 1 1 2 , determine u t ( )
such that y t ( ) +1 approaches w t ( ) +1 .
-Controller:

y t y t Ku t Ku t
y t K u t y t y t y t u t u t u t
e t w t y t
Desired y t e t
K u t e t
u t u t e t K
u t u t e t K
( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ), ( ) ( ) ( ) )
( ) ( ) ( )
( ) ( )
( ) ( )
( ) ( ) ( ) /
( ) ( ) ( ) /
+ =
+ = + = + =
=
+ =
=
= +
= +
1 1
1 1 1 1
1
1
1
A A A A
A
A
(

Control Algorithm

-On-line Identification

At t 1 instant: the estimate of the gain is

( ) K t 1
Predicted output ( / )

( ) ( ) y t t K t u t = 1 1 1

8
At t instant: y t ( ) becomes available
The prediction error

( ) K t 1 generated: c( ) ( ) ( / ) t y t y t t = 1
In order to eliminate the prediction error,

u t K t u t K t K t t
K t K t t u t
( )

( ) ( )(

( )

( )) ( )

( )

( ) ( ) / ( )
= =
= +
1 1 1
1 1
A c
c

On-line estimator:

( )

( ) ( ) / ( ) K t K t t u t = + 1 1 c

9
3. Plant Model

- Model Structure, Parameterization, and Parameter Set

First-order system
M
b
a s a
a a b
( )
{ , , )
u
u
=
+
=
0
1 0
0 1 0


Second-order system
M
b s b
a s a s a
a a a b b
( )
{ , , , , )
u
u
=
+
+ +
=
1 0
2
2
1 0
0 1 2 0 1


- Uniqueness of Parameterization and Parameter Set

First-order system
M
b
s a
a b
( )
{ , )
u
u
=
+
=
0
0
0 0
or
M K
a s
K a
( )
{ , )
u
u
=
+
=
1
1
1
1


Second-order system
M
b s b
s a s a
a a b b
( )
{ , , , )
u
u
=
+
+ +
=
1 0
2
1 0
0 1 0 1
or
M K
b s
a s a s
K a a b
( )
{ , , , )
u
u
=
+
+ +
=
1
2
2
1
1 2 1
1
1

- Selection of Model Structure
Criteria: - Sufficiency
- Uniqueness
- Simplicity, Realization, Robustness

- Linear System: a general model structure

Continuous time: y t
B s
A s
u t T d t
d
( )
( )
( )
( ) ( ) = +
Dead time T
d
: mass transport, approximation of complex dynamics
Disturbance d t ( ) :
measurement noise, unmodeled dynamics, nonlinear effects, disturbance (load)
On-line identification:
Faster faster tracking of the changed dynamics, less robust to noise
(easier to be affected by noise)
Slower slower tracking of the changed dynamics, more robust to noise
- Pulse Response
Discrete-Time: y t h u t i
i
i
( ) ( ) =
=

1
(for open-loop stable system)
Why not y t h u t i
i
i
( ) ( ) =
=

0
? How to handle a dead time?
10

Truncation: y t h u t i
i
i
N
( ) ( ) =
=

1

Advantage: simplicity in algorithm design and computation
Disadvantage: large number of parameters
y t ay t bu t y t ba u t i
i
i
( ) ( ) ( ) ( ) ( ) = =

1 1
1
1

1%: a = 0 5 . i=7; a = 0 9 . i=44

- DARMA (deterministic autoregressive and moving average) difference equation

y t a y t a y t a y t na b u t b u t b u t nb
na nb
( ) ( ) ( ) ... ( ) ( ) ( ) ... ( ) + + + + = + + +
1 2 1 2
1 2 1 2

y t a y t j b u t j
j
j
na
j
j
nb
( ) ( ) ( ) = +
= =

1 1

Backward-shift operator z
1
:
z y j y j z y j y j n
z u j u j z u j u j n
n
n


= =
= =
1
1
1
1
( ) ( ), ( ) ( )
( ) ( ), ( ) ( )




A z y t B z u t ( ) ( ) ( ) ( )

=
1 1

y t
B z
A z
u t ( )
( )
( )
( ) =

1
1

- Disturbance Modeling: zero-mean disturbance
Additive disturbance y t
B z
A z
u t d t ( )
( )
( )
( ) ( ) = +

1
1

Modeling of disturbance: d t
C z
D z
e t ( )
( )
( )
( ) =

1
1
1
1
(stationary random sequence)
Uncorrelated Random Sequence e t ( ) (while noise):

c c
c o c
c
c
(
1
(
1
( positive or negative integer
(
1
e t e t
t t
e t
e t e t
t t
e t
e t e t j j j
e t e t j
t t
e t e t j
t t
t
e
t t
t
t t
t
( ) ( ) ( ))
( ) ( ) ( ))
( ) ( ) , : )
( ) ( ) ( ) ( ))
= =
+
= =
+
+ = =
+ =
+
+
=
=
=

0
2 1 1
2 1 1
0 0
2 1 1
1
2
2 2 2 2
1
2
1
2

Random Sequence: partially predictable
Uncorrelated Random Sequence: unpredictable

CARMA (controlled autoregressive and moving average) difference equation
A z y t B z u t C z e t ( ) ( ) ( ) ( ) ( ) ( )

= +
1 1 1

11
y t a y t j b u t j c e t j
j
j
na
j
j
nb
j
j
nc
( ) ( ) ( ) ( ) = + +
= = =

1 1 0

( ) c
0
1 =
- Disturbance Modeling: non zero-mean disturbance

q( ) ( )
( )
( )
( ) t d t c
C z
D z
e t c = + = +

1
1
1
1
( : c unknown constant or slowly changing)
A A A q( ) ( )
( ) ( )
( )
( ) t d t c
z C z
D z
e t = + =

1
1
1
1
1
1
(Difference operator A =

1
1
z )
CARIMA model: A z y t B z u t C z e t ( ) ( ) ( ) ( ) ( ) ( )

= +
1 1 1
A A

4A. Least Squares Method

Model:
y t a y t a y t a y t na b u t b u t b u t nb e t
na nb
( ) ( ) ( ) ... ( ) ( ) ( ) ... ( ) ( ) + + + + = + + + +
1 2 1 2
1 2 1 2


y t a y t j b u t j e t x t e t
j
j
na
j
j
nb
T
( ) ( ) ( ) ( ) ( ) ( ) = + + = +
= =

1 1
u

x t y t y t y t na u t u t u t nb
a a a b b b
T
na nb
T
( ) ( ( ), ( ),... ( ), ( ), ( ),..., ( ))
( , ,..., , , ,..., )
=
=

1 2 1 2
1 2 1 2
u


e t y t x t
T
( ) ( ) ( ) = u


( ) ( ) ( )

e t y t x t
T
= u

For t t t na nb t t t N = > + + +
0 0 0 0 0
2 3 +1 ( max( , )), , ,..., :


( ) ( ) ( )

( ) ( ) ( )

.......
( ) ( ) ( )

e t y t x t
e t y t x t
e t N y t N x t N
T
T
T
0 0 0
0 0 0
0 0 0
1 1 1
2 2 2
+ = + +
+ = + +
+ = + +
u
u
u





E Y X = u


12

( ( ), ( ),..., ( ))
( ( ), ( ),..., ( ))
( )
( )
......
( )
( )
E e t e t e t N
Y y t y t y t N
X
x t
x t
x t N
T
T
T
T
T
N na nb
= + + +
= + + +
=
+
+
+

(
(
(
(
(
+
0 0 0
0 0 0
0
0
0
1 2
1 2
1
2


Cost Function J e t j E E Y X Y X
j
N
T T
= + = =
=

( )

(

) (

)
2
0
1
u u

Criterion for determining the optimal estimate

: min
*
( )
u
u

e
+
R
na nb
J

dJ
d
X Y X X
T T

u
u = + 2 2

X Y X X
T T
=

*
u

( )
*
u =

X X X Y
T T 1


13
4. Recursive Prediction Error Estimators

Recursive Estimators: why

- Principle

( / ) ( )

( ) y t t x t t
T
= 1 1 u

y t x t e t
T
( ) ( ) ( ) = + u

Prediction Error: c u u ( ) ( ) ( / ) ( )(

( )) ( ) t y t y t t x t t e t
T
= = + 1 1
e t zero mean ( ): and unpredictable
c u u ( ) ( )(

( )) t x t t
T
1

( ) u u t
x t t x t x t t t
T
( ) ( ) ( ) ( )(

( )

( )) c u u 1
( ( ) ( )) ( ) ( )

( )

( ) x t x t x t t t t
T

1
1 c u u
(This is for illustration. Det ( ( ) ( )) ) x t x t
T
= 0

( )

( ) ( ( ) ( )) ( ) ( ) u u c t t x t x t x t t
T
+

1
1

Recursive Estimator:

( )

( ) ( ) ( ) ( ) ( ) u u c t t a t M t x t t = + 1
a t ( ) : large, small estimation speed, noise sensitivity

- A Recursive Estimator

- Cost Function J t t S t y i x i t
T T
i
t
( ) (

( )

( )) ( )(

( )

( )) ( ( ) ( )

( )) = +
=

u u u u u 0 0 0
2
1

Function of the first term:
The role of the first term ~ time

- Recursive Form


S t S t x t x t
t t S t x t t
T
( ) ( ) ( ) ( )

( )

( ) ( ) ( ) ( )
= +
= +

1
1
1
u u c


Initials: S( ) 0 ,

( ) u 0
Effects of S( ) 0 ,

( ) u 0 : S t t S S t S ( )

( ) ( )

( ) [ ( ) ( )] u u u = + 0 0 0
-
Gain vector: k t
P t x t
x t P t x t
T
( )
( ) ( )
( ) ( ) ( )
=

+
1
1 1

Parameter Update:

( )

( ) ( ) ( ) u u c t t k t t = + 1

14
Covariance Update: P t I k t x t P t
T
( ) [ ( ) ( )] ( ) = 1

Initials: P I ( ) 0
2
= and

( ) u 0

- Forgetting Factor

Why? Filter effect
Solution: ( ( ) ( )

( )) ( ( ) ( )

( ))
( )
y x t d e y x t d
T
t
t T
t
u u
o

} }
2
0
2
0

( ( ) ( )

( )) { ( ( ) ( )

( )} y i x i t y i x i t
T
i
t
t i T
i
t

=

=

u u
2
1
2
1

Recursive Equations:

Gain vector: k t
P t x t
x t P t x t
T
( )
( ) ( )
( ) ( ) ( )
=

+
1
1 |

Parameter Update:

( )

( ) ( ) ( ) u u c t t k t t = + 1

Covariance Update: P t I k t x t P t
T
( ) [ ( ) ( )] ( ) / = 1 |
( ) 0 1
2
< = s |
15
5. Predictive Models

- Consider y t y t e t ( ) . ( ) ( ) = + 0 9 1


y t
z
e t z e t
e t j e t e t e t e t
j j
j
j
j
( )
( . )
( ) ( . ) ( )
. ( ) ( ) . ( ) . ( ) . ( ) ...
=

=
= = + + + +

1
1 0 9
0 9
0 9 0 9 1 0 9 2 0 9 3
1
1
1
2 3



- k -step-ahead prediction:

Model: y t k e t k e t k e t k e t k ( ) ( ) . ( ) . ( ) . ( ) ... + = + + + + + + + + 0 9 1 0 9 2 0 9 3
2 3

Prediction:

( / ) . ( ) . ( ) . ( )...
. { ( ) . ( ) . ( ) ...}
.
( )
.
. ( )
y t k t e t e t e t
e t e t e t
e t
z
y t
k k k
k
k k
+ = + +
= + + +
=

=
+ +

0 9 0 9 1 0 9 2
0 9 0 9 1 0 9 2
0 9
1 0 9
0 9
1 2
2
1



Prediction Error:

~
( ) ( ) ( / ) . ( ) y t k y t k y t k t e t k j
j
j
k
+ = + + = +
=

0 9
0
1

Variance of Prediction Error: 0 9
1 0 9
1 0 9
2 2
0
1
2
2
2
.
.
.
j
j
k
k
o o
=


Variance of y :
1
1 0 9
2
2
.
o

Variance of prediction Error/Variance of y = 1 0 9
2
.
k


- MA Model: y t N z e t ( ) ( ) ( ) =
1



N z n z n z n z n z
n z n z z n n z n z
N z z N z
k
k
k
k
k
k
k
k k
k k k j
j
k
k
k
( ) ...
{ ... } { ... ..}
( ) ( )
( (
(
*


+
+


+

+


= + + + + + +
= + + + + + + + +
= +
1
1
1
1
1)
1
1)
1
1
1
1)
1
1
1 1
1
1



Model: y t k N z e t k N z e t k N z e t
k k
( ) ( ) ( ) ( ) ( ) ( ) ( )
*
+ = + = + +
1 1 1

k-Step-Ahead Prediction: ( / ) ( ) ( )
( )
( )
( ) y t k t N z e t
N z
N z
y t
k
k
+ = =

1
1
1



16
- ARMA Model: y t
C z
A z
e t ( )
( )
( )
( ) =

1
1



C z
A z
E z z
F z
A z
N z z N z
k
k k
( )
( )
( )
( )
( )
( ) ( )
*


= + = +
1
1
1
1
1
1 1 1



E z N z e e z e z
F z f f z
k k
k
( ) ( ) ...
( ) ...
* (



= = + + +
= + +
1 1
0 1
1
1
1)
1
0 1
1


Diophantine Identity: C z A z E z z F z
k
( ) ( ) ( ) ( )

= +
1 1 1 1

{ : , : , : : max( , ( )) } C nc A na E ne k F nf nc na k k = s + 1 1

k-step-ahead prediction

( / )
( )
( )
( )
( )
( )
( )
( )
( )
( ) y t k t
C z
A z
e t k
F z
A z
e t
F z
C z
y t + = + = =

1
1
1
1
1
1

Prediction error


~
( / ) ( ) ( / ) ( ) ( ) y t k t y t k y t k t E z e t k + = + + = +
1


Example:
A z z
C z z
k
( ) .
( ) .


=
= +
=

1 1
1 1
1 0 9
1 0 7
2

na nc ne nf = = = = 1 1 1 0 , , ,
Diophantine Identity:

1 0 7 1 0 9
1 0 7 0 9 0 9
1 1
0 1
1 2
0
1
0 1 0
1
1 0
2
+ = + +
+ = + + +


. ( . )( )
. ( . ) ( . )
z z e e z z f
z e e e z e f z

Solution: e e e f e
0 1 0 0 1
1 0 9 0 7 16 0 9 1 = = + = = = , . . . , . .44
Two-step-ahead prediction:
( / )
( )
( )
( )
.44
.
( ) y t t
F z
C z
y t
z
y t + = =
+


2
1
1 0 7
1
1 1


17
6. Minimum-Variance (MV) Control


Model: A z y t B z u t k C z e t ( ) ( ) ( ) ( ) ( ) ( )

= +
1 1 1

Set-Point: y
0
0 =
- Prediction Equation:

y t k
B z
A z
u t
C z
A z
e t k ( )
( )
( )
( )
( )
( )
( ) + = + +

1
1
1
1

Diophantine Identity: EA C z F
k
=



EAy t k Cy t k z Fy t k EBu t ECe t k
k
( ) ( ) ( ) ( ) ( ) + = + + = + +



y t k
F
C
y t
EB
C
u t Ee t k ( ) ( ) ( ) ( ) + = + + +
Prediction: ( / ) ( ) ( ) y t k t
F
C
y t
EB
C
u t + = +
Prediction Error:
~
( / ) ( ) ( ) y t k t E z e t k + = +
1


- MV Control: u t
F z
E z B z
y t ( )
( )
( ) ( )
( ) =


1
1 1

Potential Problem: nonminimum-phase system

- Example: ( . ) ( ) . ( ) ( . ) ( ) 1 0 9 0 5 2 1 0 7
1 1
= + +

z y t u t z e t

k E z F B = = + = =

2 1 16 1 0 5
1
, . , .44, .
MV Controller: u t
z
y t ( )
.44 / .
( . )
( ) =
+

1 0 5
1 16
1

u t u t y t ( ) . ( ) . ( ) = 16 1 2 88
18

7. Minimum-Variance Self-Tuning

Direct Adaptive Control: identify control model
Indirect Adaptive Control: identify process model design controller

- Indirect Adaptive Control: closed-loop identification
- Direct Adaptive MV:
MV: u t
F z
E z B z
y t F z y t G z u t ( )
( )
( ) ( )
( ) ( ) ( ) ( ) ( ) = + =



1
1 1
1 1
0

{ ( ) ( ) ( ) ...
( ) ... ( max( , ( )) )
(
{ }

}
G z E z B z g g z g z
F z f f z f z nf nc na k k
k nb
k nb
nf
nf

+
+

= = + + +
= + + + = +
1 1 1
0 1
1
1)
1
1
0 1
1
1


Adaptive MV:

( ) ( )

( ) ( ) F z y t G z u t

+ =
1 1
0
Direct Estimation of F and G :

( / ) ( ) ( ) y t k t
F
C
y t
G
C
u t + = +
C z y t k t F z y t G z u t ( ) ( / ) ( ) ( ) ( ) ( )

+ = +
1 1 1


C z y t t k F z y t k G z u t k ( ) ( / ) ( ) ( ) ( ) ( )

= +
1 1 1


( / ) ( ) ( ) ( ) ( ) ( / ) y t t k F z y t k G z u t k c y t t k
j
= +

1 1

( / ) ( ) ( ) ( ) ( ) y t t k F z y t k G z u t k = +
1 1



y t F z y t k G z u t k E z e t
x t t
T
( ) ( ) ( ) ( ) ( ) ( ) ( )
( ) ( )
= + +
= +
1 1 1
LS u c


19
8. Pole-Placement (PP) Self-Tuning


9. Long-Range Predictive Control

- Problems of MV:
(1) non-minimum phase
u t
F z
E z B z
y t ( )
( )
( ) ( )
( ) =


1
1 1

(2) Nominal delay < Actual Delay

Cause: control of output at a single instant
- Long-Range Predictive Control
Simultaneous control of y k j s ( ) +
- Principle:
Future output = Free response + Forced response
Free response: function of known data
Forced response: function of control actions to be determined.
- A z y t B z u t ( ) ( ) ( ) ( )

=
1 1
A A
y t y t a y t j b u t j
j
j
na
j
j
nb
( ) ( ) ( ) ( ) = +
= =

1
1 1
A A
Free Response:


p t y t
y t a y t j b u t b u t j
y t a y t j b u t j
u t j j
j
j
na
j
j
nb
j
j
na
j
j
nb
( ) ( )
( ) ( ) ( ) ( )
( ) ( ) ( )
( ) ( , , ...)
+ = +
= + + + +
= + + +
+ = =
= =
= =


1 1
1 1
1 1
0 0 1 2
1
1 2
1 2
A
A A A
A A

p t p t a p t a y t j b u t j
j
j
na
j
j
nb
( ) ( ) ( ) ( ) ( ) + = + + + + +
= =

2 1 1 1 1
1
2 3
A A A
......
p t i p t i a p t i a p t i i nb ( ) ( ) ( ) ( ) ..... ( ) + = + + + > 1 1 2
1 2
A A
Prediction

y t s u t p t
y t s u t s u t p t
y t i s u t i s u t i s u t p t i
i
( ) ( ) ( )
( ) ( ) ( ) ( )
.......
( ) ( ) ( ) ... ( ) ( )
+ = + +
+ = + + + +
+ = + + + + + + +
1 1
2 1 2
1 2
1
1 2
1 2
A
A A
A A A


Simultaneous control of y t y t y t N ( ), ( ),..., ( ) + + + 1 2
20

Y y t y t y t N
U u t u t u t N
P p t p t p t N
W w t w t w t N
E e t e t e t N
w t y t w t w t w t N y t N
T
T
T
T
T
= + + +
= + +
= + + +
= + + +
= + + +
+ + + + + +
( ( ), ( ),..., ( ))
( ( ), ( ),..., ( ))
( ( ), ( ),..., ( ))
( ( ), ( ),..., ( ))
( ( ), ( ),..., ( ))
( ) ( ), ( ) ( ),..., ( ) ( ))
1 2
1 1
1 2
1 2
1 2
1 1 2 2
A A A A
= (
T




G=





Y G U P = + A

min
AU R
T
N
E E
e


AU G G G W P
T T
=

( ) ( )
1


Problems: excessive controls, delay system

- Solutions: less number of free control actions
A A A u t u t u t NU ( ), ( ),..., ( ) + + 1 1
NU N <



21
ADAPTIVE CONTROL SYSTEM DESIGN

EE 699 Project I


Consider the following process

( )( ) ( ) ( ) ( ) ( ) 1 1 3 4
1
1
2
1
3 4
+ + = + +

o o z z y t b u t b u t e t

The parameters of the process are time-varying:

o
o
1
2
3
4
2
0 3 0 0002
0 9 0 0002
1 0 0005
0 5 0 0002
0 01
1000
= +
= +
= +
=

s
. .
. .
.
. .
~ ( , . )
( )
t
t
b t
b t
e N
t



Design an adaptive system to control y t ( ) ( ) 0 1000 < s t for set-point y
0
1 = .

Report Requirements:

(1) Method selection
(2) System Design
(3) Program
(4) Simulation Results
(5) Results Analysis
(6) Conclusions

Report Due: Nov. 22, 1998

22
CHAPTER 3 FUZZY LOGIC SYSTEMS

Primary Reference: J. M. Mendel, "Fuzzy Logic Systems for Engineering: A Tutorial," IEEE
Proceedings, 83(3): 345-377, 1995.

I. INTRODUCTION

A. Problem Knowledge


Objective Knowledge (mathematical models)
Subjective knowledge: linguistic information,
difficult to quantify using traditional mathematics

Importance of Subjective Knowledge: idea development, high level
decision making and overall design

Coordination of Two Forms of Knowledge
- Model based approach: Objective information: mathematical models
Subjective information:
linguistic statement Rules FL based Quantification
- Model-free approach: Numerical data rules + linguistic information.

B. Purpose of the Chapter

Basic Parts for synthesis of FLS

FLS: numbers to numbers mapping: fuzzifier, defuzzifier
(inputs: numbers, output: numbers, mechanism: fuzzy logic)

C. What is a Fuzzy Logic System

Input-output characteristic: nonlinear mapping of an input vector into a scalar output
Mechanism: linguistic statement based IF-THEN inference or its mathematical variants

D. Potential of FLS's

E. Rationale for FL in Engineering

Lotfi Zadeh, 1965: imprecisely defined "classes" play an important role in human thinking
(fuzzy logic)
Lotfi Zadeh, 1973: Principle of Incompatibility
(engineering application)

F. Fuzzy Concepts in Engineering: examples

23


G. Fuzzy Logic System: A High-Level Introduction

Crisp inputs to crisp outputs mapping: y=f(x)
Four Components: Fuzzifier, rules, inference engine, defuzzifier

Rules (Collection of IF-THEN statements):
provided by experts or extracted from numerical data
Understanding of (1) linguistic variables ~ numerical values
(2) Quantification of linguistic variables: terms
(3) Logical connections: "or" "and"
(4) Implications: "IF A Then B"
(5) Combination of rules
Fuzzifier: crisp numbers fuzzy sets that will be used to activate rules

Inference Engine: maps fuzzy sets into fuzzy sets based on the rules

Defuzzifier: fuzzy sets crisp output

24
II. SHORT PRIMER ON FUZZY SETS

A. Crisp Sets

- Crisp set A in a universe of discourse U:
Defined by: listing all of its members, or
specifying a condition by which x A e
Notation: A x x ={ meet some condition}
Membership function
A
x ( ):

A
A
x x A
x x A
( )
( )
= e
= e
1
0




Equivalence: Set A x
A
( ) membership function

Example 1: Cars: color, domestic/foreign, cylinders

B. Fuzzy Sets

Membership function
A
x ( ) [ , ] e 0 1 : a measurement of the degree of similarity

Example 1 (contd.): domestic/foreign
an element can resides in more than one fuzzy sets with
different degrees of similarity (membership function)

Representation of fuzzy set
- F x x x U
F
= e {( , ( )) ) (pairs of element and membership function)
- F x x
F
U
=
}
( ) / (continuous discourse U), or
F x x
F U
=

( ) /
Example 2: F = integers close to 10
F= 0.1/7+0.5/8+0.8/9+1/10+0.8/11+0.5/12+0.1/13
(Elements with zero
A
x ( ) , subjectiveness of
A
x ( ) , symmetry)

C. Linguistic Variables

Linguistic Variables: variables when their values are not given by numbers but by words or
sentences

u: name of a (linguistic) variable
x: numerical value of a (linguistic) variable x U e
(often interchangeable with u when u is a single letter)
Set of Terms T(u): linguistic values of a (linguistic) variable
Specification of terms: fuzzy sets (names of the terms and membership functions)

Example 3: Pressure
- Name of the variable: pressure
25
- Terms: T(pressure)={week, low, okay, strong, high}
- Universe of discourse U=[100 psi, 2300 psi]
- Week: below 200 psi, low: close to 700 psi, okay: close to 1050 psi,
strong: close to 1500 psi, high: above 2200 psi
linguistic descriptions membership functions

D. Membership Functions

F
x ( )

Examples

Number of membership functions (terms) Resolution Computational Complexity

Overlap (glass can be partially full and partially empty at the same time)

E. Some Terminology

The support of a fuzzy set

Crossover point

Fuzzy singleton: a fuzzy set whose support is a single point with unity membership function.

F. Set Theoretic Operations

F1. Crisp Sets

A and B: subsets of U

Union of A and B: A B


A B
x
x A x B
x A x B

( ) =
e e
e e

1
0
if or
if and


Intersection of A and B: A B


A B
x
x A x B
x A x B

( ) =
e e
e e

1
0
if and
if or


Complement of A: A

A
x
x
x A
( ) =
e
e

1
0
if
if


26

A B x x x
A B x x x
x x
A B A B
A B A B
A
A

=
=
=



( ) max[ ( ), ( )]
( ) min[ ( ), ( )]
( ) ( )


1



Union and intersection: commutative, associative, and distributive
De Morgan's Laws: A B A B =
A B A B =

The two fundamental (Aristotelian) laws of crisp set theory:
- Law of Contradiction: A A U =
- Law of Excluded Middle: A A = |

F2. Fuzzy Sets

Fuzzy set A:
A
x ( )
Fuzzy set B:
B
x ( )

Operation of fuzzy sets:




A B A B
A B A B
A
A
x x x
x x x
x x

( ) max[ ( ), ( )]
( ) min[ ( ), ( )]
( ) ( )
=
=
=


1


Law of Contradiction? A A U = ?
Law of Excluded Middle? A A = | ?


Multiple definitions:

- Fuzzy union: maximum and algebraic sum
A B A B A B
x x x x x

( ) ( ) ( ) ( ) ( ) = +
Fuzzy intersection: minimum and algebraic product
A B A B
x x x

( ) ( ) ( ) =
- Fuzzy union: t-conorm (s-norm)
Fuzzy intersection: t-norm -

Examples:
t-conorm
Bounded sum:
A B A B
= + min( , ) 1
Drastic sum:



A B
A B
B A
A B

=
=
=
>

if
if
if > 0 and
0
0
1 0

27


t-norm
Bounded product:
A B A B -
= + max( , ) 0 1
Drastic product:



A B
A B
B A
A B
-
=
=
=
<

if
if
if <1 and
1
1
0 1


Generalization of De Morgan's Laws
s x x c t c x c x
A B A B
[ ( ), ( )] {[ ( ( )), ( ( ))]} =
t x x c s c x c x
A B A B
[ ( ), ( )] { [ ( ( )), ( ( ))]} =

28

III. SHORT PRIMER ON FUZZY LOGIC

A. Crisp Logic

Rules: a form of propositions
Proposition: an ordinary statement involving terms which have been defined

Example: IF the damping ratio is low, THEN the system's impulse response oscillates a long
time before it dies.

Proposition: true, false

Logical reasoning: the process of combining given propositions into other propositions, ....

Combination:
- Conjunction p q . (simultaneous truth)
- Disjunction p q v (truth of either or both)
- Implication p q (IF-THEN rule). Antecedent, consequent
- Operation of Negation ~ p
- Equivalence Relation p q (both true or false)

Truth Table

The fundamental axioms of traditional propositional logic:
- Every proposition is either true or false
- The expression given by defined terms are propositions
- The true table for conjunction, disjunction, implication, negation, and equivalence

Tautology: a proposition formed by combining other propositions (p, q, r,...) which is true
regardless of the truth or falsehood of p, q, r,...
Example: ( ) ~ [ (~ )] p q p q .
( ) (~ ) p q p q v
Membership function for p q :

p q p q p q
x y x y x y

= = ( , ) ( , ) min[ ( ), ( )] 1 1 1



p q p q p q
x y x y x y

= = ( , ) ( , ) max[ ( ), ( )]

1


p q p q
x y x y

= ( , ) ( )( ( )) 1 1

p q p q
x y x y

= + ( , ) min[ , ( ) ( )] 11
Inference Rules:
- Modus Ponens: Premise 1: "x is A"; Premise 2: "IF x is A THEN y is B"
Consequence: "y is B" ( ) A B
( ( )) ) p p q q .
- Modus Tollens: Premise 1: "y is not B"; Premise 2: "IF x is A THEN y is B"
29
Consequence: "x is A"
( ( )) ) q p q p .

B. Fuzzy Logic


Membership function of the IF-THEN statement: "IF u is A, THEN v is B" ( , ) u U v V e e

A B
x y

( , ) : truth degree of the implication relation between x and y



B1. Crisp Logic Fuzzy Logic ?

From crisp logic:

A B A B
x y x y

= ( , ) min[ ( ), ( )] 1 1

A B A B
x y x y

= ( , ) max[ ( ), ( )] 1


A B A B
x y x y

= ( , ) ( )( ( )) 1 1
Do they make sense in fuzzy logic?

Generalized Modus Ponens- Premise 1: "u is A*"; Premise 2: "IF u is A THEN v is B"
Consequence: "v is B*"
Example: "IF a man is short, THEN he will make a very
good professional basketball player"
A: short man, B: not a very good player
- "This man is under 5 feet tall" A*: man under 5 feet tall
- "He will make a poor professional basketball player" B*: poor player
Crisp logic( ( )) ) A A B B . (composition of relations)

B
x A
A
A B
y x x y
*
( ) sup[ ( ) ( , )]
*
*
= -
e



Examine
B
x A
A
A B
y x x y
*
( ) sup[ ( ) ( , )]
*
*
= -
e


using
A B
x y

( , ) borrowed from crisp logic


and singleton fuzzifier
A A
x x x
* *
( ) & ( )
' '
= = = 1 0





B
x A
A
A B
A
A B
A B A B
A B A B
y x x y
x x y
x y x y
x y x y
*
' '
' '
'
( ) sup[ ( ) ( , )]
( ) ( , )
( , ) min[ , ( , )]
( , ) min[ ( ' ), ( )]
*
*
*
= -
= -
- =
=
e


=1
= 1-
1
1

If x x = '
B A B
y x y
*
( ) min[ ( ' ), ( )] = 1 1-
If x x = '
B A B
y x y
*
( ) min[ ( ' ), ( )] = = = 1 1 0 1 1-
30
B2. Engineering Implications of Fuzzy Logic

Minimum implication:
A B A B
x y x y

= ( , ) min[ ( ), ( )]
A

Product implication:
A B A B
x y x y

= ( , ) ( ) ( )
A


Disagreement with propositional logic

IV. FUZZINESS AND OTHER MODELS

V. FUZZY LOGIC SYSTEMS

A. Rules
:
) (l
R IF
1
u is
l
F
1
and
2
u is
l
F
2
and
p
u is
l
p
F , THEN v is
l
G

M l ..., , 2 , 1 =

l
i
F s: fuzzy sets in R U
i
e

l
G : fuzzy set in R V e

p p
U U U u u u u ... ) ..., , , ( col
2 1 2 1
e =
Multiple Antecedents

Example 18: Ball on beam
Objective: to drive the ball to the origin and maintain it at origin
Control variable:
2
2
dt
d u

Nonlinear system, states:
dt
d
dt
dr
r
u
u , , ,
Rules:

) 1 (
R : IF r is positive and
dt
dr
is near zero andu is positive and
dt
du
is near zero,
THEN u is negative

) 2 (
R : IF r is negative and
dt
dr
is near zero andu is negative and
dt
du
is near zero,
THEN u is positive

) 3 (
R : IF r is positive and
dt
dr
is near zero andu is negative and
dt
du
is near zero,
THEN u is positive big

) 4 (
R : IF r is negative and
dt
dr
is near zero andu is positive and
dt
du
is near zero,
THEN u is negative big

Example 19: Truck Backing Up Problem
Objective: x=10,

90 = | ( ]) 270 , [-90 ], 20 , 0 [

e e | x
31
Control Variable: ] 40 , 40 [

e u

Rules: relational matrix (fuzzy associative memory)

Membership functions:
Example 20: A nonlinear dynamical system
Rough knowledge (qualitative information):
Nonlinearity f(*): y(k) and y(k-1)
f(*) is close to zero when y(k) is close to zero or -4
f(*) is close to zero when y(k-1) is close zero

Rules:

Example 21: Time Series x(k), k=1, 2,
Problem: x(k-n+1), x(k-n+2),.x(k) (predict) x(k+1)

Given: x(1), x(2),, x(D)

D-n training pairs:

) 1 (
x : [x(1), x(2),, x(n): x(n+1)]

) 2 (
x : [x(2), x(3),, x(n+1): x(n+2)]


) ( n D
x

:[x(D-n), x(D-n+1),, x(D-1): x(D)]

n antecedents in each rule:
n
u u u ,..., ,
2 1

D-n rules

Extract rules from numerical data:
First method: data establish the fuzzy sets (identify or optimize the parameters in the
membership functions for these fuzzy sets) in the antecedents and the
consequents (first)
Second method: prespecify fuzzy sets in the antecedents and the consequents and then
associate the data with these fuzzy sets

Second method:
Establish domain intervals for all input and output variables: ] , [
+
X X
Divide each domain interval into a prespecified number of overlapping regions
Label and assign a membership function to each region
Generate fuzzy rules from the data: consider data pair
) ( j
x
- Determine the degrees (membership functions) of each element of
) ( j
x to all
possible
fuzzy sets
- Select the fuzzy set corresponding to the maximum degree for each element
- Obtain a rule from the combination of the selected fuzzy set for the data pair
) ( j
x

32
D-n rules
Conflicting rules: same antecedents, different consequents
Solution: select the rule with the maximum degree in the group

A
= ) (
) ( j
R D ) ( ) ( ).... ( ) (
) ( ) ( ) (
2
) (
1
j
X
j
n X
j
X
j
X
y x x x

Nonobvious Rules:


33
B. Fuzzy Inference Engine

Uses fuzzy logic principles to combine fuzzy IF-THEN rules from the fuzzy
rule base into a mapping from fuzzy input sets to fuzzy output sets.

:
) (l
R IF
1
u is
l
F
1
and
2
u is
l
F
2
and
p
u is
l
p
F , THEN v is
l
G

( ...
)
Input Sets: defined on
Output Set: defiend on
U U U U
V
n
=
1 2

F F F A
l l
n
l
1 2
= ...
A
G B
l
=
A

R A B
l ( )
:

R
A B
F F F
p
G
l l l
p
l l
y y x x x y
( )
( , ) ( , ) ( ) * ( ) * ... ( ) * ( ) x x = =

1 2
1 2


Input to :
) (l
R fuzzy set A
x
, the output of the fuzzifier

A X X X p
x p
x x x ( ) ( ) * ( ) * ... ( ) x =
1 2
1 2
*
X s
k
: fuzzy sets describing the inputs
R
l ( )
: determines a fuzzy set B A R
l
x
l
=
( )


B A R
A A A B
l
x
l
x x
y y y ( ) ( ) sup [ ( ) * ( , )]
( )
= =
e

X
x x

Combining Rules:

Final fuzzy set: B A R R R A R B
x
M
l
M
x
l
l
M l
= = =
= =
[ , ,..., ]
( ( ) ( ) ( ) 1) 2
1 1

Using t-conorm: B B B B
M
=
1 2
...
Additive combiner: weights
Example 22: Truck backing up

|
|
( ) , ( )
( ): ,
( ): ,
t x t
t B B
x t S S
i i
i
i
= = 140 6
1 2
1 2
0





C. Fuzzification
Maps a crisp point x = e col x x x U
n
( , ,..., )
1 2
into a fuzzy set A
*
defined in U

Singleton fuzzifier:
A
*
( ) x'
x = x'
x x'
1
0

=




B A R
A A A B A B
l
x
l
x x
y y y y ( ) ( ) sup [ ( ) * ( , )] ( , )
( )
= = =
e

X
x x x'
Nonsingleton fuzzifier:
A
*
( ) x' x= x' =1 ,

A
*
( ) x' decreases when x- x' increases

34




B A R
A A A B
x U
X X X p
F F F
p
G
G
x U
X X X p
F F F
p
G
x U
l
x
l
x x
p
l l
p
l l
l
p
l l
p
l
l
y y
y
x x x x x x y
y x x x x x x
y
( ) ( )
sup [ ( ) * ( , )]
( ) * ( )*...* ( ) * ( ) * ( )*...* ( ) * ( )
( ) ( ) * ( )*...* ( ) * ( ) * ( )*...* ( )
( )
( )
sup
sup
sup
=
=
=
=
=
e
e
e
e

X
x x
1 2
1 2
1 2
1 2
1 2 1 2
1 2 1 2
[ ( ) * ( )]*[ ( ) * ( )]*...*[ ( ) * ( )]
X
F
X
F
X p
F
p
x x x x x x
l l
p
p
l
1
1
2
2
1 1 2 2


Example 23: t-norm: product
membership functions: Gaussian
k-th input fuzzy set: o
X k k X X
k k k
x x m ( ) exp{ / [( ) / ] } = 1 2
2

k-th antecedent fuzzy set: o
F
k k
F F
k
l
k
l
k
l
x x m ( ) exp{ / [( ) / ] } = 1 2
2


Q
k
X
k
F
k
k
l
k k
l
x x x ( ) ( ) ( ) =
A

maximized at x m m
k X
F F
X X
F k
k
l
k
l
k k
k
l
,max
( ) / ( ) = + + o o o o
2 2 2 2


o o
X X
k
k
2 2
=
m x
X k
k
=
'

x m x
k X
F F
X
F
k
l
k
l
k
l
,max
( ' ) / ( ) = + + o o o o
2 2 2 2

Fuzzier: prefilter


B G Q
k
k
p
l l
k
l
y y x ( ) ( ) ( )
,max
=
=
[
1

o
X
2
0 = : zero uncertainty of input x x
k k ,max
' =

D. Defuzzifier
1) Maximum Defuzzifier
2) Mean of Maximum Defuzzifier
3) Centroid Defuzzifier
4) Height Defuzzifier
5) Modified Defuzzifier

E. Possibilities
35

F. Formulas for Specific FLS's: Fuzzy Basis Functions

Geometric Interpretation
y f = ( ) x : for specific choices of fuzzifier, membership functions,
composition, inference and defuzzifier

Example 24: singleton fuzzifier, height defuzzification

max-product composition, product inference,

y f y x x
s
l
F
i
i
p
l
M
F
i
i
p
l
M
i
l
i
l
= =
= = = =
[ [
( ) [ ( )] / [ ( )] x
1 1 1 1





B
l
A B
l
F
i
i
p
G
l
G
l
G
l
i
l l
l l
y y x y
y y
( ) ( , ) [ ( ' )] ( )
( ) max ( )
= =
= =


=
[
x'
1
1


max-min composition, minimum inference
y f y x x
s
l
i p
F
i
l
M
i p
F
i
l
M
i
l
i
l
= =
=
=
=
=

( ) [ min { ( )}] / [ min { ( )}]
,..., ,...,
x
1
1
1
1


Example 25: nonsingleton fuzzifier, height defuzzification
max-product composition, product inference,
Gaussian membership functions for
X k
k
x ( ) ,
F
k
k
l
x ( ) , and
G
l
y ( )
(max
G
l
y ( ) =1)

B
l
Q
k
k
p
l
k
l
y x ( ) ( )
,max
=
=
[
1

y f y x x
ns
l
Q
k
k
p
l
M
Q
k
k
p
l
M
k
l
k
l
= =
= = = =
[ [
( ) [ ( )] / [ ( )]
,max , max
x
1 1 1 1


Fuzzy basis functions
y f y
l
l
l
M
= =
=

( ) ( ) x x |
1

FBF |
l
( ) x (l=1,...,M):
|

l
F
k
k
p
F
k
k
p
j
M
k
l
k
j
x
x
( )
( )
( )
x =
=
= =
[
[
1
1 1
(singleton)

36
|

l
Q
k
k
p
Q
k
k
p
j
M
k
l
k
j
x
x
( )
( )
( )
,max
,max
x =
=
= =
[
[
1
1 1
(nonsingleton, Gaussian)
FBFs: depend on fuzzifier, membership functions,
composition, inference, defuzzifier, and number of the rules

Combining rules from numerical data and expert linguistic knowledge

y f y y y
j
j
j
M
N
i
N i
i
M
L
k
L k
k
M
N L
= = = +
= = =

( ) ( ) ( ) ( )
, ,
x x x x | | |
1 1 1


FBFs from the numerical data
|
N i
F
s
s
p
F
s
s
p
j
M
N
s
i
s
ji
x x i M
,
( ) ( ) / [ ( )] ,..., x = =
= = =
[ [
1 1 1
1
|
L k
F
s
s
p
F
s
s
p
j
M
L
s
ki
s
ji
x x k M
,
( ) ( ) / [ ( )] ,..., x = =
= = =
[ [
1 1 1
1

VI. DESIGNING FUZZY LOGIC SYSTEMS

Linguistic rules

Numerical data
Tune the parameters in the FLS
Training data


x
x
x
( (
( ) ( )
( ) ( )
:
:
:
1) 1)
2 2
y
y
y
N N


Parameter Set u

y f = ( , ) u x

Minimize the amplitude of y f
i ( )
( , ) u x
(i)


Non-linear optimization of cost function
min ( ) [ ( , )]
( )
u
u u J y f
i
N
i
=
=

1
2
x
(i)


37
CHAPTER 4 Neuro-Fuzzy Modeling and Control

Primary Reference: J.-S. R. Jang and C.-T. Sun, "Neuro-fuzzy modeling and control," IEEE
Proceedings, 83(3): 378-406, 1995.

I. INTRODUCTION
II. FUZZY SETS, FUZZY RULES, FUZZY REASONING, AND FUZZY MODELS
III. ADAPTIVE NETWORKS

H. Architecture


Feedforward adaptive network & Recurrent adaptive network

Fixed nodes & Adaptive nodes

Layered representation & Topological ordering representation (no links from node i to j, i j > )

Example 3: An adaptive network with a single linear node

x f x x a a a a x a x a
3 3 1 2 1 2 3 1 1 2 2 3
= = + + ( , ; , , )

Example 4: A building block for the perceptron or the back-propagation neural network
x f x x a a a a x a x a
3 3 1 2 1 2 3 1 1 2 2 3
= = + + ( , ; , , )
x f x
x
x
4 4 3
3
3
1 0
0 0
= =
>
<

( )
if
if

Linear Classifier
Building block of the classical perceptron

Step function: discontinuous gradient
Sigmoid function: continuous gradient
x f x
e
x 4 4 3
1
1
3
= =
+

( )

Composition of f
3
and f
4
: building block for the back-propagation neural networks

Example 5 A back-propagation neural network

x
w x w x w x t
7
4 7 4 5 7 5 6 7 6 7
1
1
=
+ + + + exp[ ( )]
, , ,


38

I. Back-Propagation Learning Rule


Recursively obtain the gradient vector: derivatives of the error with respect to parameters

Back-propagation learning rule: gradient vector is calculated in the direction opposite to the
flow of the output of each node

Layer l (l=0, 1, ..., L) l=0: input layer
Node i (i=1, 2, ..., N(l))
Output of node i in layer l: x
l i ,

Function of node i in layer l: f
l i ,

No jumping links

x f x x
l i l i l l N l , , , , (
( ,..., , , ,...) =
1 1 1 1),
o |

Measurements of the outputs of the network: d d d
N L 1 2
, ,...,
( )

Calculated outputs of the network: x x x
L L L N L , , , ( )
, ,...,
1 2

Entries of the training data set (sample size): P
Using entry p (p=1,...,P) generates error
E d x
p k L k
k
N L
=
=

( )
,
( )
2
1

Cost Function for Training E E
p
p
P
=
=

1


Ordered derivative c
c
c
l i
p
l i
E
x
,
,
=
+

The derivative of E
p
with respect to x
l i ,
, taking both
direct and indirect paths into consideration.

Example 6: Ordinary partial derivative
c
c
E
x
p
l i ,
and the ordered derivative c
c
c
l i
p
l i
E
x
,
,
=
+


y f x
z g x y
=
=

( )
( , )


c
c
c
c
z
x
g x y
x
=
( , )


c
c
c
c
c
c
c
c
c
c
+
=
=
= = +
z
x
g x f x
x
g x y
x
g x y
y
f x
x
y f x
y f x
( , ( )) ( , ) ( , ) ( )
( )
( )

39

y f x x
z g x y x y
= =
= = +

( )
( , )
2
5 2

c
c
c
c
z
x
g x y
x
= =
( , )
5
c
c
+
= +
z
x
5 2 2


Back-Propagation Equation:
c
c
c
c
c
L i
p
L i
p
L i
E
x
E
x
,
, ,
= =
+

c
c
c
c
c
c
c
c
c
c
l i
p
l i
p
l m
m
N l
l m
l i
l m
m
N l
l m
l i
E
x
E
x
f
x
f
x
,
, ,
(
,
,
,
(
,
,
= = =
+ +
+
=
+
+
+
=
+
+

1
1
1)
1
1
1
1)
1
( ) 0 1 s s l L


o
c
o o c
c
=
c
c
c
c
=
c
c
+ +
i l
i l
i l
i l
p p
f f
x
E E
,
,
,
,

or
o o c
c
c
c
=
c
c
+
e
+

*
*
*
f
x
E E
p
S x
p

(S: the set of nodes containing o as a parameter)


The derivative of the overall error measure

=
=
P
p
p
E E
1
will be

=
+
+
c
c
=
c
c
P
p
p
E
E
1
o o

Update formula:


o
q o
c
c
= A
+
E
: q learning rate
: q can be determined by

c
c
=
+
o
o
k
q
2
) (
E

: k step size (changing the speed of the convergence)

Off-line learning & On-line learning

Recurrent network: transform into an equivalent feedforward
network by using unfolding of time technique

J. Hybrid Learning Rule: Combining BP and LSE

Off-Line Learning

40
On-Line Learning

Different Ways of Combining GD and LSE

K. Neural Networks as Special Cases of Adaptive Networks

D1. Back Propagation Neural Networks (BPNN's)

Node function: composition of weighted sum and a nonlinear
function (activation function or transfer function)

Activation function: differentiable sigmoidal or hyper-tangent type function
which approximates the step function

Four types of activation functions
Step function f x
x
x
( ) =
>
<

1 0
0 0
if
if

Sigmoidal function f x
e
x
( ) =
+

1
1

Hyper-tangent function f x
e
e
x
x
( ) =

+

1
1


Identity function f x x ( ) =

Example: three inputs node
Inputs: x x x
1 2 3
, ,
Output of the node: x
4

Weighted sum: x w x t
i i
i
4 4 4
1
3
= +
=


Sigmoid function: x
e
x 4
1
1
4
=
+


w
i 4
:
t
4
:
Example: two-layer BPNN with 3 inputs and 2 outputs

D2. The Radial Basis Function Networks (RBFN's)

Radial basis function approximation: local receptive fields

Example: An RBFN with five receptive field units

Activation level of the ith receptive filed:
w R x R x c i H
i i i i i
= = = ( ) ( / ) ,2,...,

o 1
41

Gaussian function R x
x c
i
i
i
( ) exp( )


=

2
2
o

or
Logistic function R x
x c
i
i
i
( )
exp{ }


=
+

1
1
2
2
o

Maximized at the center

x c
i
=
Final output:

f x f w f R x
i i
i
H
i i
i
H
( ) ( )

= =
= =

1 1

or
f x
f w
w
f R x
R x
i i
i
H
i
i
H
i i
i
H
i
i
H
( )
( )
( )

= =
=
=
=
=

1
1
1
1

Parameters:

c f
i i i
, , o nonlinear:

c
i i
,o linear: f
i

Identification:

c s
i
: clustering techniques
o
i
s : heuristic
then
f a x b
i i i
= +

least squares method

IV. ANFIS: ADAPTIVE NEURO-FUZZY INFERENCE SYSTEMS

A. ANFIS Architecture

Example: A two inputs (x and y) and one output (z) ANFIS

Rule 1 : IF x is A
1
and y is B
1
, then f p x q y r
1 1 1 1
= + +
Rule 2 : IF x is A
2
and y is B
2
, then f p x q y r
2 2 2 2
= + +


ANFIS architecture
Layer 1: adaptive nodes

O x i
O x i
i A
i B
i
i
1
1
1 2
3
2
,
,
( ) ,
( ) ,
= =
= =


4


A
i
x ( ) and
B
i
x ( ) : any appropriate parameterized membership functions
42

A
i
i
b
i
i
x
x c
a
( )
[
( )
]
=
+

1
1
2
2

{ , , a b c
i i i
} premise parameters
Layer 2: fixed nodes with function of multiplication
O w x x i
i i A B
i i
2
1 2
,
( ) ( ) , = = = (firing strength of a rule)

Layer 3: fixed nodes with function of normalization
O w
w
w w
i
i i
i
3,
1 2
1 2 = =
+
= , (normalized firing strength)
Layer 4: adaptive nodes
O w f w p x q y r
i i i i i i i 4,
( ) = = + +

{ , , } p q t
i i i
consequent parameters
Layer 5: a fixed node with function of summation
O overall output w f
i i
i
5 1 ,
= =



Example: A two-input first-order Sugeno fuzzy model with nine rules

B. Hybrid Learning Algorithm

When the premise parameters are fixed:

f
w
w w
f
w
w w
f
w f w f
w x p w y q w r
w x q w y q w r
=
+
+
+
= +
= + +
+ +
1
1 2
1
2
1 2
2
1 1 2 2
1 1 1 1 1 1
2 2 2 2 2 2


+
( ) ( ) ( )
( ) ( ) ( )
linear function of consequent parameters
Hybrid learning scheme

C. Application to Chaotic Time Series Prediction

Example: Mackey Glass differential delay
( )
. ( )
( )
. ( ) x t
x t
x t
x t =

+

0 2
1
01
10
t
t

Prediction problem
x t D x t x t ( ( ) ),..., ( ), ( ) 1 A A x t P ( ) +
D P = = = 4 6 , , A 1000 data pairs
x t x t x t x t ( ), ( ), ( ), ( ) 18 12 6 A x t ( ) + 6
500 pairs for training, 500 for verification

Input partition: 2 Rules: 16 number of parameters: 104
43
(premise: 24, consequent: 80)

Prediction results:
no significant difference in prediction error for training and validating

44
Reasons for excellence


45

V. NEURO-FUZZY CONTROL

Dynamic Model: ( ( ), ( )) x = f x t t u
Desired Trajectory: x
d
t ( )
Control Law: u( ) ( ( )) t t = g x

Discrete System
Dynamic Model: x = f x ( ) ( ( ), ( )) k k k +1 u
Desired Trajectory: x
d
k ( )
Control Law: u( ) ( ( )) k k = g x

A. Mimicking Another Working Controller

Skilled human operators
Nonlinear approximation ability
Refining the membership functions

B. Inverse Control

Minimizing the control error

C. Specialized Learning

Minimizing the output error: needs the model of the process

D. Back-Propagation Through Time and Real Time Recurrent Learning

Principle
Computation and Implementation: Off-Line On-line


L. Feedback Linearization and Sliding Control

M. Gain Scheduling

Sugeno fuzzy controller
If pole is short, then f k k k z k z
1 11 12 13 14
= + + + u u


If pole is medium, then f k k k z k z
2 21 22 23 24
= + + + u u


If pole is long, then f k k k z k z
3 31 32 33 34
= + + + u u


Operating Points linear controllers fuzzy control rules

G. Analytic Design

46


Project 2: Neuro-Fuzzy Non-Linear Control System Design

1. Given Process
is described by the following fuzzy model

A. Rules:
Rule 1: IF u k ( ) 1 is VERY SMALL, then y k a u k b u k
1 1 1
1 2 ( ) ( ) ( ) = +
Rule 2: IF u k ( ) 1 is SMALL, then y k a u k b u k
2 2 2
1 2 ( ) ( ) ( ) = +
Rule 3: IF u k ( ) 1 is MEDIUM, then y k a u k b u k
3 3 3
1 2 ( ) ( ) ( ) = +
Rule 4: IF u k ( ) 1 is LARGE, then y k a u k b u k
4 4 4
1 2 ( ) ( ) ( ) = +
Rule 5: IF u k ( ) 1 is VERY LARGE, then y k a u k b u k
5 5 5
1 2 ( ) ( ) ( ) = +

where u is the input, y i
i
( , , ..., ) =1 2 5 is the output from Rule i, and a
1
0 5 = . , a
2
0 = .4,
a
3
0 3 = . , a
4
0 2 = . , a
5
01 = . , b
1
1 = , b
2
0 9 = . , b
3
0 8 = . , b
4
0 7 = . , and b
5
0 6 = . are the
consequent parameters.

B. Membership functions:

VerySmall
( ) exp(
( )
.
) u
u
=
0
0 5
2
2

Small
( ) exp(
( )
.
) u
u
=
1
0 5
2
2

Medium
( ) exp(
( )
.
) u
u
=
2
0 5
2
2

Large
( ) exp(
( )
.
) u
u
=
3
0 5
2
2

VeryLarge
( ) exp(
( )
.
) u
u
=
4
0 5
2
2


C. System output

y w y
w
w
y
i
i
i
i
i
j
j
i
= =
= =
=

1
5
1
5
1
5


where w i
i
( , , , , ) =1 2 3 4 5 is the firing strength of Rule i.
47

2. The desired trajectory of the system output is:


y k k
y k k
y k k
0
0
0
0 5 0 400
1 400 700
15 700 1000
( ) . ( )
( ) ( )
( ) . ( )
= < s
= < s
= < s






3. Assume that the consequent parameters a s
j
' and b s
j
' are unknown. Design an adaptive
control system for the given system to achieve the desired trajectory of the output under the
constraint 0 4 s s u . (Off-line identification procedure may be used to obtain the initials of
the premise parameters.)


Report Requirements:

(1) Method selection
(2) System Design
(3) Program
(4) Simulation Results
(5) Results Analysis
(6) Conclusions


Due: 12/14/98
48
EE 699 Final Examination
Fall 1998

Name:
Grade:

1. What are the major elements of a fuzzy logic system? What are their functions? (20%)
2. Describe an approach which can be used to extract fuzzy rules from numerical data. (20%)
3. The system is described by a Takagi and Sugeno's fuzzy model with the following rules and
membership functions,

Rules:
Rule 1: IF u k ( ) 1 is VERY SMALL, then y k a u k b u k
1 1 1
1 2 ( ) ( ) ( ) = +
Rule 2: IF u k ( ) 1 is SMALL, then y k a u k b u k
2 2 2
1 2 ( ) ( ) ( ) = +
Rule 3: IF u k ( ) 1 is MEDIUM, then y k a u k b u k
3 3 3
1 2 ( ) ( ) ( ) = +
Rule 4: IF u k ( ) 1 is LARGE, then y k a u k b u k
4 4 4
1 2 ( ) ( ) ( ) = +
Rule 5: IF u k ( ) 1 is VERY LARGE, then y k a u k b u k
5 5 5
1 2 ( ) ( ) ( ) = +
where u is the input, y i
i
( , , ..., ) =1 2 5 is the output from Rule i,

Membership functions:

VerySmall
( ) exp(
( )
.
) u
u
=
0
0 5
2
2

Small
( ) exp(
( )
.
) u
u
=
1
0 5
2
2

Medium
( ) exp(
( )
.
) u
u
=
2
0 5
2
2

Large
( ) exp(
( )
.
) u
u
=
3
0 5
2
2

VeryLarge
( ) exp(
( )
.
) u
u
=
4
0 5
2
2

If the output of the system is given by
y w y
i
i
i
=
=

1
5
,

explain the role of w i
i
( , , , , ) =1 2 3 4 5 and give a way to determine w i
i
( , , , , ) =1 2 3 4 5 .
(20%)

4. The system is
y ay bu
k k k k
= + +
1 1
c
where
a and b : parameters of the system
y
k
and u
k
: output and input at instant k, and
49
c
k
: system's noise at instant k, E
k
( ) c = 0 ( ) k , and E k j
k j
( ) ( )) c c = = 0 .

Given data pairs { , } u y
k k
s ( k N =1 2 , , ..., ), determine the Least Squares estimates of the
parameters a and b ? (20%)

5. The system is

y a y a y b u b u
k k k k k k
= + + + +
1 1 2 2 3 3 4 4
c

where y
k
: output at instant k,
u
k
: input at instant k,
c
k
: noise at instant k, E
k
( ) c = 0 ( ) k , and E k j
k j
( ) ( )) c c = = 0 ,
a a b b
1 2 3 4
, , :
,
parameters of the system.
At instant t, { , } u y
k k
s ( k t = 1 2 1 , , ..., ) and y
t
are known. Give an equation which predicts
y
t +10
. (20%)

Das könnte Ihnen auch gefallen