lecture opnet
TRANSCRIPT
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 1/22
Dynamical Systems Analysis II:
Evaluating Stability, Eigenvalues
By Peter Woolf ([email protected])
University of Michigan
Michigan Chemical Process
Dynamics and Controls
Open Textbook
version 1.0
Creative commons
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 2/22
Problem: Given a large and complex system
of ODEs describing the dynamics and
control of your process, you want to know:
(1)Where will it go?
(2)What will it do?Is there anything fundamental you can say
about it?
E.g. With my control architecture, this processwill always ________.
Solution: Stability Analysis
Steady state from last lecture.
Topic for today!
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 3/22
Exponential increase Increase w/ oscillation
Stable oscillation
Periodic solution Non-periodic solution
(chaotic)
Only possible for
nonlinear systems
Decay w/ oscillationExponential decay
What will your system do?
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 4/22
How can we know where the
system will go?
Possible approaches:
1. Simulate system and observe
Disadvantages:• Can’t provide guaranteed behavior, just samples of
possible trajectories.
• Requires simulations starting from many points
• Assumes we have all variables defined, thus hard to
use to design controllers.
Advantages:
• Works for any system you can simulate
• Intuitive--you see the results
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 5/22
How can we know where the
system will go?
Possible approaches:
1. Simulate system and observe
2. Stability Analysis (this class)
Disadvantages:
• Only works for linear models
• Linear approximations of nonlinear models
break down away from the point of
linearization
Advantages:
• Provides strong guarantees for linear systems
• General
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 6/22
dA
dt = 3 A " A
2
" AB
dB
dt = 2 B " AB " 2 B
2
Nonlinear model Linear approximation at A=0, B=0
JacobianOr in a
different
format
dA
dt = 3 A
dB
dt
= 2 B
From last class…
"
A" B
#
$ % &
' ( = 3 0
0 2#
$ % &
' ( A B#
$ % &
' ( + 0
0#
$ % &
' (
Intuitively, what will the linear system do if A is perturbed slightly from 0?
dA
dt = 3(0+ ")
Increase in A above 0
yields a positive
derivative
Increase
in A
Increase in
slope of A
Exponential increase
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 7/22
But what if our model is more complex?
" A
" B
#
$ %
&
' ( =
3 )22 )2#
$ %
&
' ( A
B
#
$ %
&
' ( +
3
4
#
$ %
&
' (
E.g. (note: example below is made up)
Or in adifferent
format
dA
dt = 3 A " 2 B + 3
dB
dt = 2 A " 2 B + 4
What will happen if A or B are increased slightly
from the steady state value of A=1, B=3?
Result : increase A, A and B
increase!
Result : increase B, A and B
decrease!
dA
dt = 3(1+ ") # 2(3)+ 3 = +3"
dB
dt = 2(1+ ") # 2(3)+ 4 = +2"
Increase A by !:
dA
dt = 3(1) " 2(3+ #) + 3 = "2#
dB
dt = 2(1)" 2(3+ #) + 4 = "2#
Increase B by !:
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 8/22
Observations:
1. It is easy to predict where a linear system will go if the
variables are decoupled
2. Coupling between variables makes it harder to predict
what will happen
3. Coupling is determined by the Jacobian
dA
dt = 3 A
dB
dt
= 2 B
A only influences A, B only influences B.
-> Variables are decoupled
dA
dt = 3 A " 2 B + 3
dB
dt = 2 A " 2 B + 4
Changes in A influence changes in A
and B. Changes in B influence
changes in A and B.
--> Variables are coupled
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 9/22
Is it possible to change a coupled system to a decoupled one?
" A
" B
#
$ %
&
' ( =
k 11
k 12
k 21
k 22
#
$ %
&
' (
A
B
#
$ %
&
' ( +
k 13
k 23
#
$ %
&
' (
k 11
k 12
k 21 k 22
"
#
$ %
&
' A
B
"
#
$ %
&
' " 1 0
0 1
#
$
%
&
'
(
A
B
#
$
%
&
'
(
??
Can we find a ! value that satisfies this relationship?
k 11
k 12
k 21
k 22
"
# $
%
& '
()
1 0
0 1
"
# $
%
& '
*
+ ,
-
. /
A
B
"
# $
%
& ' = 0
k 11 " # k
12
k 21
k 22 " #
$
% &
'
( )
*
+
, -
.
/ A
B
$
% &
'
( ) = 0
k 11
" # ( ) A + k 12 B = 0
k 21 A + k 22 " # ( ) B = 0
Written
differently..
This is aneigenvalue
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 10/22
k 11
" # ( ) A + k 12 B = 0
k 21
A + k 22
" #
( ) B = 0
k 11 A " # A + k
12 B = 0
k 21 A + Bk
22 " # B = 0
expand
B =
"k 11 A + # A
k 12
k 21 A + "k 11 A + # A
k 12
$
% & '
( ) k 22 " # "k 11 A + # A
k 12
$
% & '
( ) = 0
Solve for B
k 21 A "
k 11 Ak
22
k 12
+
# Ak 22
k 12
+
# k 11 A
k 12
+
# 2 A
k 12
= 0
A k 21 "
k 11
k 22
k 12
+
# k 22
k 12
+
# k 11
k 12
+
# 2
k 12
$
% &
'
( ) = 0
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 11/22
A k 21 "
k 11
k 22
k 12
+
# k 22
k 12
+
# k 11
k 12
+
# 2
k 12
$
%
& '
(
) = 0
Solve for !
" =1
2k 11+ k
22± k
11
2
+ 4k 12
k 21# 2k
11k 22+ k
22
2[ ]
Observations:
1) Yes! There is always a way decouple a coupled linear
system
2) Direct approach involves lots of algebra
There is an easier way..
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 12/22
A bit of linear algebra background
Goal: solve this system for !
k 11 " # k
12
k 21
k 22 "
#
$
%
& '
(
) *
+
, -
.
/ A
B
$
%
& '
(
) = 0
Determinant : a property of any square matrix that
describes the degree of coupling between the equations.
Determinant equals zero when the system is not linearly
independent, meaning one of the equations can be cast as
a linear combination of the others.
Det
a b c
d e f
g h i
"
#
$ $
$
%
&
' '
'
= a * Det e f
h i
"
# $
%
& ' ( b* Det
d f
g i
"
# $
%
& ' + c * Det
d e
g h
"
# $
%
& '
Det a b
c d "
# $ %
& ' = a* d ( b*c
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 13/22
A bit of linear algebra background
Goal: solve this system for !
k 11 " # k
12
k 21
k 22 "
#
$
%
& '
(
) *
+
, -
.
/ A
B
$
%
& '
(
) = 0
Determinant : a property of any square matrix that
describes the degree of coupling between the equations.
Determinant equals zero when the system is not linearly
independent, meaning one of the equations can be cast as
a linear combination of the others.
Det k 11 " # k
12
k 21
k 22 " #
$
% &
'
( ) = 0
Revised Goal: find!
that satisfies
k 11
" # ( ) k 22 " # ( ) " k
12k 21
= 0
" =1
2
k 11+ k
22± k
11
2
+ 4k 12
k 21# 2k
11k 22+ k
22
2
[ ]
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 14/22
Similar Analysis can be done in Mathematica:
Det[{a,b},{c,d}] :Find the determinant of a matrix
Solve [{eqn1, eqn2,..},{var1, var2,..} ] : Solve algebraically
Eigenvalues[{a,b},{c,d}] : Automatically find the eigenvalues
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 15/22
What do eigenvalues tell us
about stability?Eigenvalues tell us the exponential part of the
solution of the differential equation system
Three possible values for an eigenvalue
1) Positive value: system will increaseexponentially
2) Negative value: system will decayexponentially
3) Imaginary value: system will oscillate
(note combinations of the above are possible)
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 16/22
What do eigenvalues tell us
about stability?
Effect: If any eigenvalue has a positive real part, the system
will tend to move away from the fixed point
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 17/22
Marble Analogy
Small perturbations
left or right will
cause the marble to
decay back to the
steady state position
Negative real
eigenvalue
Small perturbations
left or right will
cause the marble to
decay away from
the steady stateposition (xss)
Positive real
eigenvalue
Small perturbations
in y are stable, while
perturbations in x
are unstable (saddle
point), thus overallpoint is unstable!
Positive and
negative real
eigenvalues
xssx
Case I: stablexss
x
Case II: unstable
xss,,yss
x
y
Case III: Saddle point
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 18/22
" A
" B
#
$ %
&
' ( =
3 )2
2 )2
#
$ %
&
' ( A
B
#
$ %
&
' ( +
3
4
#
$ %
&
' (
Revisit our example: What will happen here?
1) Calculate eigenvalues
Eigenvalues: ! 1=2, ! 2 = -1
2) Classify stability:
At least one eigenvalue is positive,
so the point is unstable and a
saddle point.
Exponential increase
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 19/22
" A
" B
" C
#
$
%
% %
&
'
(
( (
=
3 )2 1
2 2 )2
)1 2 0
#
$
%
% %
&
'
(
( (
A
B
C
#
$
%
% %
&
'
(
( (
+
8
)2
4
#
$
%
% %
&
'
(
( (
A more complex example: What will happen here?
1) Calculate eigenvalues
Force Mathematica to find a numerical value using N[ ]
Using the Eigenvalue[ ] function in Mathematica
Given these eigenvalues what will it do?
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 20/22
" A
" B
" C
#
$
%
% %
&
'
(
( (
=
3 )2 1
2 2 )2
)1 2 0
#
$
%
% %
&
'
(
( (
A
B
C
#
$
%
% %
&
'
(
( (
+
8
)2
4
#
$
%
% %
&
'
(
( (
2) Classify stability:
• The real component of at least
one eigenvalue is positive, so
the system is unstable.
• There are imaginary eigenvalue
components, so the response
will oscillate.Increase w/ oscillation
A more complex example: What will happen here?
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 21/22
Exponential increase Increase w/ oscillation
Stable oscillation
Decay w/ oscillationExponential decay
What will your system do?
(according to eigenvalues)
All ! s are real and
negative
All ! s are real and
at least one positive
All ! s have negative
real parts, some
imaginary parts
At least one ! has
positive real parts,
some imaginary parts
All ! s have zero
real parts and
nonzero
imaginary parts
8/10/2019 Lecture Opnet
http://slidepdf.com/reader/full/lecture-opnet 22/22
Take Home Messages
• Stability of linear dynamical systemscan be determined from eigenvalues
• Complicated sounding terms like
eigenvalues and determinant can bederived from algebra alone--fear not!
• Stability of nonlinear dynamical systemscan be locally evaluated using
eigenvalues